diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000..e69de29bb diff --git a/404.html b/404.html new file mode 100644 index 000000000..daa995a91 --- /dev/null +++ b/404.html @@ -0,0 +1,28 @@ + + + + + +Page Not Found | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+
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/assets/css/styles.8be63572.css b/assets/css/styles.8be63572.css new file mode 100644 index 000000000..9326e7572 --- /dev/null +++ b/assets/css/styles.8be63572.css @@ -0,0 +1 @@ +.col,.container{padding:0 var(--ifm-spacing-horizontal);width:100%}.markdown>h2,.markdown>h3,.markdown>h4,.markdown>h5,.markdown>h6{margin-bottom:calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading))}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button--outline.button--active,.button--outline:active,.button--outline:hover,:root{--ifm-button-color:var(--ifm-font-color-base-inverse)}.menu__link:hover,a{transition:color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.navbar--dark,:root{--ifm-navbar-link-hover-color:var(--ifm-color-primary)}.menu,.navbar-sidebar{overflow-x:hidden}:root,html[data-theme=dark]{--ifm-color-emphasis-500:var(--ifm-color-gray-500)}*,:after,:before{box-sizing:border-box}.markdown li,body{word-wrap:break-word}pre,table{overflow:auto}progress,sub,sup{vertical-align:initial}.button,code{vertical-align:middle}.text-blue-500,.text-blue-600,.text-gray-100,.text-gray-200,.text-gray-50,.text-gray-500,.text-gray-600,.text-gray-800,.text-red-900{--tw-text-opacity:1}.bg-blue-600,.bg-gray-100,.bg-gray-300,.bg-gray-50,.bg-red-100,.bg-slate-100,.hover\:bg-blue-700:hover{--tw-bg-opacity:1}.toggleButton_gllP,html{-webkit-tap-highlight-color:transparent}.clean-list,.containsTaskList_mC6p,.details_lb9f>summary,.dropdown__menu,.menu__list,menu,ol,ul{list-style:none}:root{--ifm-color-scheme:light;--ifm-dark-value:10%;--ifm-darker-value:15%;--ifm-darkest-value:30%;--ifm-light-value:15%;--ifm-lighter-value:30%;--ifm-lightest-value:50%;--ifm-contrast-background-value:90%;--ifm-contrast-foreground-value:70%;--ifm-contrast-background-dark-value:70%;--ifm-contrast-foreground-dark-value:90%;--ifm-color-primary:#3578e5;--ifm-color-secondary:#ebedf0;--ifm-color-success:#00a400;--ifm-color-info:#54c7ec;--ifm-color-warning:#ffba00;--ifm-color-danger:#fa383e;--ifm-color-primary-dark:#306cce;--ifm-color-primary-darker:#2d66c3;--ifm-color-primary-darkest:#2554a0;--ifm-color-primary-light:#538ce9;--ifm-color-primary-lighter:#72a1ed;--ifm-color-primary-lightest:#9abcf2;--ifm-color-primary-contrast-background:#ebf2fc;--ifm-color-primary-contrast-foreground:#102445;--ifm-color-secondary-dark:#d4d5d8;--ifm-color-secondary-darker:#c8c9cc;--ifm-color-secondary-darkest:#a4a6a8;--ifm-color-secondary-light:#eef0f2;--ifm-color-secondary-lighter:#f1f2f5;--ifm-color-secondary-lightest:#f5f6f8;--ifm-color-secondary-contrast-background:#fdfdfe;--ifm-color-secondary-contrast-foreground:#474748;--ifm-color-success-dark:#009400;--ifm-color-success-darker:#008b00;--ifm-color-success-darkest:#007300;--ifm-color-success-light:#26b226;--ifm-color-success-lighter:#4dbf4d;--ifm-color-success-lightest:#80d280;--ifm-color-success-contrast-background:#e6f6e6;--ifm-color-success-contrast-foreground:#003100;--ifm-color-info-dark:#4cb3d4;--ifm-color-info-darker:#47a9c9;--ifm-color-info-darkest:#3b8ba5;--ifm-color-info-light:#6ecfef;--ifm-color-info-lighter:#87d8f2;--ifm-color-info-lightest:#aae3f6;--ifm-color-info-contrast-background:#eef9fd;--ifm-color-info-contrast-foreground:#193c47;--ifm-color-warning-dark:#e6a700;--ifm-color-warning-darker:#d99e00;--ifm-color-warning-darkest:#b38200;--ifm-color-warning-light:#ffc426;--ifm-color-warning-lighter:#ffcf4d;--ifm-color-warning-lightest:#ffdd80;--ifm-color-warning-contrast-background:#fff8e6;--ifm-color-warning-contrast-foreground:#4d3800;--ifm-color-danger-dark:#e13238;--ifm-color-danger-darker:#d53035;--ifm-color-danger-darkest:#af272b;--ifm-color-danger-light:#fb565b;--ifm-color-danger-lighter:#fb7478;--ifm-color-danger-lightest:#fd9c9f;--ifm-color-danger-contrast-background:#ffebec;--ifm-color-danger-contrast-foreground:#4b1113;--ifm-color-white:#fff;--ifm-color-black:#000;--ifm-color-gray-0:var(--ifm-color-white);--ifm-color-gray-100:#f5f6f7;--ifm-color-gray-200:#ebedf0;--ifm-color-gray-300:#dadde1;--ifm-color-gray-400:#ccd0d5;--ifm-color-gray-500:#bec3c9;--ifm-color-gray-600:#8d949e;--ifm-color-gray-700:#606770;--ifm-color-gray-800:#444950;--ifm-color-gray-900:#1c1e21;--ifm-color-gray-1000:var(--ifm-color-black);--ifm-color-emphasis-0:var(--ifm-color-gray-0);--ifm-color-emphasis-100:var(--ifm-color-gray-100);--ifm-color-emphasis-200:var(--ifm-color-gray-200);--ifm-color-emphasis-300:var(--ifm-color-gray-300);--ifm-color-emphasis-400:var(--ifm-color-gray-400);--ifm-color-emphasis-600:var(--ifm-color-gray-600);--ifm-color-emphasis-700:var(--ifm-color-gray-700);--ifm-color-emphasis-800:var(--ifm-color-gray-800);--ifm-color-emphasis-900:var(--ifm-color-gray-900);--ifm-color-emphasis-1000:var(--ifm-color-gray-1000);--ifm-color-content:var(--ifm-color-emphasis-900);--ifm-color-content-inverse:var(--ifm-color-emphasis-0);--ifm-color-content-secondary:#525860;--ifm-background-color:#0000;--ifm-background-surface-color:var(--ifm-color-content-inverse);--ifm-global-border-width:1px;--ifm-global-radius:0.4rem;--ifm-hover-overlay:#0000000d;--ifm-font-color-base:var(--ifm-color-content);--ifm-font-color-base-inverse:var(--ifm-color-content-inverse);--ifm-font-color-secondary:var(--ifm-color-content-secondary);--ifm-font-family-base:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--ifm-font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-size-base:100%;--ifm-font-weight-light:300;--ifm-font-weight-normal:400;--ifm-font-weight-semibold:500;--ifm-font-weight-bold:700;--ifm-font-weight-base:var(--ifm-font-weight-normal);--ifm-line-height-base:1.65;--ifm-global-spacing:1rem;--ifm-spacing-vertical:var(--ifm-global-spacing);--ifm-spacing-horizontal:var(--ifm-global-spacing);--ifm-transition-fast:200ms;--ifm-transition-slow:400ms;--ifm-transition-timing-default:cubic-bezier(0.08,0.52,0.52,1);--ifm-global-shadow-lw:0 1px 2px 0 #0000001a;--ifm-global-shadow-md:0 5px 40px #0003;--ifm-global-shadow-tl:0 12px 28px 0 #0003,0 2px 4px 0 #0000001a;--ifm-z-index-dropdown:100;--ifm-z-index-fixed:200;--ifm-z-index-overlay:400;--ifm-container-width:1140px;--ifm-container-width-xl:1320px;--ifm-code-background:#f6f7f8;--ifm-code-border-radius:var(--ifm-global-radius);--ifm-code-font-size:90%;--ifm-code-padding-horizontal:0.1rem;--ifm-code-padding-vertical:0.1rem;--ifm-pre-background:var(--ifm-code-background);--ifm-pre-border-radius:var(--ifm-code-border-radius);--ifm-pre-color:inherit;--ifm-pre-line-height:1.45;--ifm-pre-padding:1rem;--ifm-heading-color:inherit;--ifm-heading-margin-top:0;--ifm-heading-margin-bottom:var(--ifm-spacing-vertical);--ifm-heading-font-family:var(--ifm-font-family-base);--ifm-heading-font-weight:var(--ifm-font-weight-bold);--ifm-heading-line-height:1.25;--ifm-h1-font-size:2rem;--ifm-h2-font-size:1.5rem;--ifm-h3-font-size:1.25rem;--ifm-h4-font-size:1rem;--ifm-h5-font-size:0.875rem;--ifm-h6-font-size:0.85rem;--ifm-image-alignment-padding:1.25rem;--ifm-leading-desktop:1.25;--ifm-leading:calc(var(--ifm-leading-desktop)*1rem);--ifm-list-left-padding:2rem;--ifm-list-margin:1rem;--ifm-list-item-margin:0.25rem;--ifm-list-paragraph-margin:1rem;--ifm-table-cell-padding:0.75rem;--ifm-table-background:#0000;--ifm-table-stripe-background:#00000008;--ifm-table-border-width:1px;--ifm-table-border-color:var(--ifm-color-emphasis-300);--ifm-table-head-background:inherit;--ifm-table-head-color:inherit;--ifm-table-head-font-weight:var(--ifm-font-weight-bold);--ifm-table-cell-color:inherit;--ifm-link-color:var(--ifm-color-primary);--ifm-link-decoration:none;--ifm-link-hover-color:var(--ifm-link-color);--ifm-link-hover-decoration:underline;--ifm-paragraph-margin-bottom:var(--ifm-leading);--ifm-blockquote-font-size:var(--ifm-font-size-base);--ifm-blockquote-border-left-width:2px;--ifm-blockquote-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-blockquote-padding-vertical:0;--ifm-blockquote-shadow:none;--ifm-blockquote-color:var(--ifm-color-emphasis-800);--ifm-blockquote-border-color:var(--ifm-color-emphasis-300);--ifm-hr-background-color:var(--ifm-color-emphasis-500);--ifm-hr-height:1px;--ifm-hr-margin-vertical:1.5rem;--ifm-scrollbar-size:7px;--ifm-scrollbar-track-background-color:#f1f1f1;--ifm-scrollbar-thumb-background-color:silver;--ifm-scrollbar-thumb-hover-background-color:#a7a7a7;--ifm-alert-background-color:inherit;--ifm-alert-border-color:inherit;--ifm-alert-border-radius:var(--ifm-global-radius);--ifm-alert-border-width:0px;--ifm-alert-border-left-width:5px;--ifm-alert-color:var(--ifm-font-color-base);--ifm-alert-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-alert-padding-vertical:var(--ifm-spacing-vertical);--ifm-alert-shadow:var(--ifm-global-shadow-lw);--ifm-avatar-intro-margin:1rem;--ifm-avatar-intro-alignment:inherit;--ifm-avatar-photo-size:3rem;--ifm-badge-background-color:inherit;--ifm-badge-border-color:inherit;--ifm-badge-border-radius:var(--ifm-global-radius);--ifm-badge-border-width:var(--ifm-global-border-width);--ifm-badge-color:var(--ifm-color-white);--ifm-badge-padding-horizontal:calc(var(--ifm-spacing-horizontal)*0.5);--ifm-badge-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-breadcrumb-border-radius:1.5rem;--ifm-breadcrumb-spacing:0.5rem;--ifm-breadcrumb-color-active:var(--ifm-color-primary);--ifm-breadcrumb-item-background-active:var(--ifm-hover-overlay);--ifm-breadcrumb-padding-horizontal:0.8rem;--ifm-breadcrumb-padding-vertical:0.4rem;--ifm-breadcrumb-size-multiplier:1;--ifm-breadcrumb-separator:url('data:image/svg+xml;utf8,');--ifm-breadcrumb-separator-filter:none;--ifm-breadcrumb-separator-size:0.5rem;--ifm-breadcrumb-separator-size-multiplier:1.25;--ifm-button-background-color:inherit;--ifm-button-border-color:var(--ifm-button-background-color);--ifm-button-border-width:var(--ifm-global-border-width);--ifm-button-font-weight:var(--ifm-font-weight-bold);--ifm-button-padding-horizontal:1.5rem;--ifm-button-padding-vertical:0.375rem;--ifm-button-size-multiplier:1;--ifm-button-transition-duration:var(--ifm-transition-fast);--ifm-button-border-radius:calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));--ifm-button-group-spacing:2px;--ifm-card-background-color:var(--ifm-background-surface-color);--ifm-card-border-radius:calc(var(--ifm-global-radius)*2);--ifm-card-horizontal-spacing:var(--ifm-global-spacing);--ifm-card-vertical-spacing:var(--ifm-global-spacing);--ifm-toc-border-color:var(--ifm-color-emphasis-300);--ifm-toc-link-color:var(--ifm-color-content-secondary);--ifm-toc-padding-vertical:0.5rem;--ifm-toc-padding-horizontal:0.5rem;--ifm-dropdown-background-color:var(--ifm-background-surface-color);--ifm-dropdown-font-weight:var(--ifm-font-weight-semibold);--ifm-dropdown-link-color:var(--ifm-font-color-base);--ifm-dropdown-hover-background-color:var(--ifm-hover-overlay);--ifm-footer-background-color:var(--ifm-color-emphasis-100);--ifm-footer-color:inherit;--ifm-footer-link-color:var(--ifm-color-emphasis-700);--ifm-footer-link-hover-color:var(--ifm-color-primary);--ifm-footer-link-horizontal-spacing:0.5rem;--ifm-footer-padding-horizontal:calc(var(--ifm-spacing-horizontal)*2);--ifm-footer-padding-vertical:calc(var(--ifm-spacing-vertical)*2);--ifm-footer-title-color:inherit;--ifm-footer-logo-max-width:min(30rem,90vw);--ifm-hero-background-color:var(--ifm-background-surface-color);--ifm-hero-text-color:var(--ifm-color-emphasis-800);--ifm-menu-color:var(--ifm-color-emphasis-700);--ifm-menu-color-active:var(--ifm-color-primary);--ifm-menu-color-background-active:var(--ifm-hover-overlay);--ifm-menu-color-background-hover:var(--ifm-hover-overlay);--ifm-menu-link-padding-horizontal:0.75rem;--ifm-menu-link-padding-vertical:0.375rem;--ifm-menu-link-sublist-icon:url('data:image/svg+xml;utf8,');--ifm-menu-link-sublist-icon-filter:none;--ifm-navbar-background-color:var(--ifm-background-surface-color);--ifm-navbar-height:3.75rem;--ifm-navbar-item-padding-horizontal:0.75rem;--ifm-navbar-item-padding-vertical:0.25rem;--ifm-navbar-link-color:var(--ifm-font-color-base);--ifm-navbar-link-active-color:var(--ifm-link-color);--ifm-navbar-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-navbar-padding-vertical:calc(var(--ifm-spacing-vertical)*0.5);--ifm-navbar-shadow:var(--ifm-global-shadow-lw);--ifm-navbar-search-input-background-color:var(--ifm-color-emphasis-200);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-800);--ifm-navbar-search-input-placeholder-color:var(--ifm-color-emphasis-500);--ifm-navbar-search-input-icon:url('data:image/svg+xml;utf8,');--ifm-navbar-sidebar-width:83vw;--ifm-pagination-border-radius:var(--ifm-global-radius);--ifm-pagination-color-active:var(--ifm-color-primary);--ifm-pagination-font-size:1rem;--ifm-pagination-item-active-background:var(--ifm-hover-overlay);--ifm-pagination-page-spacing:0.2em;--ifm-pagination-padding-horizontal:calc(var(--ifm-spacing-horizontal)*1);--ifm-pagination-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-pagination-nav-border-radius:var(--ifm-global-radius);--ifm-pagination-nav-color-hover:var(--ifm-color-primary);--ifm-pills-color-active:var(--ifm-color-primary);--ifm-pills-color-background-active:var(--ifm-hover-overlay);--ifm-pills-spacing:0.125rem;--ifm-tabs-color:var(--ifm-font-color-secondary);--ifm-tabs-color-active:var(--ifm-color-primary);--ifm-tabs-color-active-border:var(--ifm-tabs-color-active);--ifm-tabs-padding-horizontal:1rem;--ifm-tabs-padding-vertical:1rem;--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#006bcd;--ifm-color-primary-dark:#0057a8;--ifm-color-primary-darker:#003e77;--ifm-color-primary-darkest:#002f5b;--ifm-color-primary-light:#097eec;--ifm-color-primary-lighter:#198efb;--ifm-color-primary-lightest:#a2d2ff;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#0000001a;--ifm-font-family-base:"Segoe UI",sans-serif;--docusaurus-announcement-bar-height:auto;--docusaurus-collapse-button-bg:#0000;--docusaurus-collapse-button-bg-hover:#0000001a;--doc-sidebar-width:300px;--doc-sidebar-hidden-width:30px;--docusaurus-tag-list-border:var(--ifm-color-emphasis-300)}.badge--danger,.badge--info,.badge--primary,.badge--secondary,.badge--success,.badge--warning{--ifm-badge-border-color:var(--ifm-badge-background-color)}.button--link,.button--outline{--ifm-button-background-color:#0000}html{-webkit-font-smoothing:antialiased;text-size-adjust:100%;background-color:var(--ifm-background-color);color:var(--ifm-font-color-base);color-scheme:var(--ifm-color-scheme);font:var(--ifm-font-size-base)/var(--ifm-line-height-base) var(--ifm-font-family-base);text-rendering:optimizelegibility}iframe{border:0;color-scheme:auto}.container{margin:0 auto;max-width:var(--ifm-container-width)}.container--fluid{max-width:inherit}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--ifm-spacing-horizontal)*-1)}.margin-bottom--none,.margin-vert--none,.markdown>:last-child{margin-bottom:0!important}.margin-top--none,.margin-vert--none{margin-top:0!important}.row--no-gutters{margin-left:0;margin-right:0}.margin-horiz--none,.margin-right--none{margin-right:0!important}.row--no-gutters>.col{padding-left:0;padding-right:0}.row--align-top{align-items:flex-start}.items-end,.row--align-bottom{align-items:flex-end}.items-center,.menuExternalLink_NmtK,.row--align-center{align-items:center}.row--align-stretch{align-items:stretch}.row--align-baseline{align-items:baseline}.col{--ifm-col-width:100%;flex:1 0;margin-left:0;max-width:var(--ifm-col-width)}.padding-bottom--none,.padding-vert--none{padding-bottom:0!important}.padding-top--none,.padding-vert--none{padding-top:0!important}.padding-horiz--none,.padding-left--none{padding-left:0!important}.padding-horiz--none,.padding-right--none{padding-right:0!important}.col[class*=col--]{flex:0 0 var(--ifm-col-width)}.col--1{--ifm-col-width:8.33333%}.col--offset-1{margin-left:8.33333%}.col--2{--ifm-col-width:16.66667%}.col--offset-2{margin-left:16.66667%}.col--3{--ifm-col-width:25%}.col--offset-3{margin-left:25%}.col--4{--ifm-col-width:33.33333%}.col--offset-4{margin-left:33.33333%}.col--5{--ifm-col-width:41.66667%}.col--offset-5{margin-left:41.66667%}.col--6{--ifm-col-width:50%}.col--offset-6{margin-left:50%}.col--7{--ifm-col-width:58.33333%}.col--offset-7{margin-left:58.33333%}.col--8{--ifm-col-width:66.66667%}.col--offset-8{margin-left:66.66667%}.col--9{--ifm-col-width:75%}.col--offset-9{margin-left:75%}.col--10{--ifm-col-width:83.33333%}.col--offset-10{margin-left:83.33333%}.col--11{--ifm-col-width:91.66667%}.col--offset-11{margin-left:91.66667%}.col--12{--ifm-col-width:100%}.col--offset-12{margin-left:100%}.margin-horiz--none,.margin-left--none{margin-left:0!important}.margin--none{margin:0!important}.margin-bottom--xs,.margin-vert--xs{margin-bottom:.25rem!important}.margin-top--xs,.margin-vert--xs{margin-top:.25rem!important}.margin-horiz--xs,.margin-left--xs{margin-left:.25rem!important}.margin-horiz--xs,.margin-right--xs{margin-right:.25rem!important}.margin--xs{margin:.25rem!important}.margin-bottom--sm,.margin-vert--sm{margin-bottom:.5rem!important}.margin-top--sm,.margin-vert--sm{margin-top:.5rem!important}.margin-horiz--sm,.margin-left--sm{margin-left:.5rem!important}.margin-horiz--sm,.margin-right--sm{margin-right:.5rem!important}.margin--sm{margin:.5rem!important}.margin-bottom--md,.margin-vert--md{margin-bottom:1rem!important}.margin-top--md,.margin-vert--md{margin-top:1rem!important}.margin-horiz--md,.margin-left--md{margin-left:1rem!important}.margin-horiz--md,.margin-right--md{margin-right:1rem!important}.margin--md{margin:1rem!important}.margin-bottom--lg,.margin-vert--lg{margin-bottom:2rem!important}.margin-top--lg,.margin-vert--lg{margin-top:2rem!important}.margin-horiz--lg,.margin-left--lg{margin-left:2rem!important}.margin-horiz--lg,.margin-right--lg{margin-right:2rem!important}.margin--lg{margin:2rem!important}.margin-bottom--xl,.margin-vert--xl{margin-bottom:5rem!important}.margin-top--xl,.margin-vert--xl{margin-top:5rem!important}.margin-horiz--xl,.margin-left--xl{margin-left:5rem!important}.margin-horiz--xl,.margin-right--xl{margin-right:5rem!important}.margin--xl{margin:5rem!important}.padding--none{padding:0!important}.padding-bottom--xs,.padding-vert--xs{padding-bottom:.25rem!important}.padding-top--xs,.padding-vert--xs{padding-top:.25rem!important}.padding-horiz--xs,.padding-left--xs{padding-left:.25rem!important}.padding-horiz--xs,.padding-right--xs{padding-right:.25rem!important}.padding--xs{padding:.25rem!important}.padding-bottom--sm,.padding-vert--sm{padding-bottom:.5rem!important}.padding-top--sm,.padding-vert--sm{padding-top:.5rem!important}.padding-horiz--sm,.padding-left--sm{padding-left:.5rem!important}.padding-horiz--sm,.padding-right--sm{padding-right:.5rem!important}.padding--sm{padding:.5rem!important}.padding-bottom--md,.padding-vert--md{padding-bottom:1rem!important}.padding-top--md,.padding-vert--md{padding-top:1rem!important}.padding-horiz--md,.padding-left--md{padding-left:1rem!important}.padding-horiz--md,.padding-right--md{padding-right:1rem!important}.padding--md{padding:1rem!important}.padding-bottom--lg,.padding-vert--lg{padding-bottom:2rem!important}.padding-top--lg,.padding-vert--lg{padding-top:2rem!important}.padding-horiz--lg,.padding-left--lg{padding-left:2rem!important}.padding-horiz--lg,.padding-right--lg{padding-right:2rem!important}.padding--lg{padding:2rem!important}.padding-bottom--xl,.padding-vert--xl{padding-bottom:5rem!important}.padding-top--xl,.padding-vert--xl{padding-top:5rem!important}.padding-horiz--xl,.padding-left--xl{padding-left:5rem!important}.padding-horiz--xl,.padding-right--xl{padding-right:5rem!important}.padding--xl{padding:5rem!important}code{background-color:var(--ifm-code-background);border:.1rem solid #0000001a;border-radius:var(--ifm-code-border-radius);font-family:var(--ifm-font-family-monospace);font-size:var(--ifm-code-font-size);padding:var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal);background-color:#0000}a code,a:hover{color:inherit}pre{background-color:var(--ifm-pre-background);border-radius:var(--ifm-pre-border-radius);color:var(--ifm-pre-color);font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace);padding:var(--ifm-pre-padding)}pre code{background-color:initial;border:none;font-size:100%;line-height:inherit;padding:0}kbd{background-color:var(--ifm-color-emphasis-0);border:1px solid var(--ifm-color-emphasis-400);border-radius:.2rem;box-shadow:inset 0 -1px 0 var(--ifm-color-emphasis-400);color:var(--ifm-color-emphasis-800);font:80% var(--ifm-font-family-monospace);padding:.15rem .3rem}h1,h2,h3,h4,h5,h6{color:var(--ifm-heading-color);font-family:var(--ifm-heading-font-family);font-weight:var(--ifm-heading-font-weight);line-height:var(--ifm-heading-line-height);margin:var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0}h1{font-size:var(--ifm-h1-font-size)}h2{font-size:var(--ifm-h2-font-size)}h3{font-size:var(--ifm-h3-font-size)}h4{font-size:var(--ifm-h4-font-size)}h5{font-size:var(--ifm-h5-font-size)}h6{font-size:var(--ifm-h6-font-size)}img[align=right]{padding-left:var(--image-alignment-padding)}img[align=left]{padding-right:var(--image-alignment-padding)}.markdown{--ifm-h1-vertical-rhythm-top:3;--ifm-h2-vertical-rhythm-top:2;--ifm-h3-vertical-rhythm-top:1.5;--ifm-heading-vertical-rhythm-top:1.25;--ifm-h1-vertical-rhythm-bottom:1.25;--ifm-heading-vertical-rhythm-bottom:1}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown h1:first-child{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown>h2{--ifm-h2-font-size:2rem;margin-top:calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h3{--ifm-h3-font-size:1.5rem;margin-top:calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h4,.markdown>h5,.markdown>h6{margin-top:calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))}.markdown>p,.markdown>pre,.markdown>ul{margin-bottom:var(--ifm-leading)}.markdown li>p{margin-top:var(--ifm-list-paragraph-margin)}.markdown li+li{margin-top:var(--ifm-list-item-margin)}ol,ul{margin:0 0 var(--ifm-list-margin);padding-left:var(--ifm-list-left-padding)}ol ol,ul ol{list-style-type:lower-roman}ol ol,ol ul,ul ol,ul ul{margin:0}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table thead tr{border-bottom:2px solid var(--ifm-table-border-color)}table thead,table tr:nth-child(2n){background-color:var(--ifm-table-stripe-background)}table tr{background-color:var(--ifm-table-background);border-top:var(--ifm-table-border-width) solid var(--ifm-table-border-color)}table td,table th{border:var(--ifm-table-border-width) solid var(--ifm-table-border-color);padding:var(--ifm-table-cell-padding)}table th{background-color:var(--ifm-table-head-background);color:var(--ifm-table-head-color);font-weight:var(--ifm-table-head-font-weight)}table td{color:var(--ifm-table-cell-color)}strong{font-weight:var(--ifm-font-weight-bold)}a{color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration);color:inherit}a:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button:hover,.text--no-decoration,.text--no-decoration:hover,a:not([href]){text-decoration:none}p{margin:0 0 var(--ifm-paragraph-margin-bottom)}blockquote{border-left:var(--ifm-blockquote-border-left-width) solid var(--ifm-blockquote-border-color);box-shadow:var(--ifm-blockquote-shadow);color:var(--ifm-blockquote-color);font-size:var(--ifm-blockquote-font-size);padding:var(--ifm-blockquote-padding-vertical) var(--ifm-blockquote-padding-horizontal)}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{background-color:var(--ifm-hr-background-color);border:0;height:var(--ifm-hr-height);margin:var(--ifm-hr-margin-vertical) 0}.shadow--lw{box-shadow:var(--ifm-global-shadow-lw)!important}.shadow--md{box-shadow:var(--ifm-global-shadow-md)!important}.shadow--tl{box-shadow:var(--ifm-global-shadow-tl)!important}.text--primary,.wordWrapButtonEnabled_EoeP .wordWrapButtonIcon_Bwma{color:var(--ifm-color-primary)}.text--secondary{color:var(--ifm-color-secondary)}.text--success{color:var(--ifm-color-success)}.text--info{color:var(--ifm-color-info)}.text--warning{color:var(--ifm-color-warning)}.text--danger{color:var(--ifm-color-danger)}.clean-btn,hr{color:inherit}.text--center{text-align:center}.text--left{text-align:left}.text--justify{text-align:justify}.text--right{text-align:right}.text--capitalize{text-transform:capitalize}.text--lowercase{text-transform:lowercase}.admonitionHeading_tbUL,.alert__heading,.text--uppercase{text-transform:uppercase}.text--light{font-weight:var(--ifm-font-weight-light)}.text--normal{font-weight:var(--ifm-font-weight-normal)}.text--semibold{font-weight:var(--ifm-font-weight-semibold)}.text--bold{font-weight:var(--ifm-font-weight-bold)}.text--italic{font-style:italic}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--break{word-wrap:break-word!important;word-break:break-word!important}.clean-btn{background:none;border:none;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{padding-left:0}.alert--primary{--ifm-alert-background-color:var(--ifm-color-primary-contrast-background);--ifm-alert-background-color-highlight:#3578e526;--ifm-alert-foreground-color:var(--ifm-color-primary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-primary-dark)}.alert--secondary{--ifm-alert-background-color:var(--ifm-color-secondary-contrast-background);--ifm-alert-background-color-highlight:#ebedf026;--ifm-alert-foreground-color:var(--ifm-color-secondary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-secondary-dark)}.alert--success{--ifm-alert-background-color:var(--ifm-color-success-contrast-background);--ifm-alert-background-color-highlight:#00a40026;--ifm-alert-foreground-color:var(--ifm-color-success-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-success-dark)}.alert--info{--ifm-alert-background-color:var(--ifm-color-info-contrast-background);--ifm-alert-background-color-highlight:#54c7ec26;--ifm-alert-foreground-color:var(--ifm-color-info-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-info-dark)}.alert--warning{--ifm-alert-background-color:var(--ifm-color-warning-contrast-background);--ifm-alert-background-color-highlight:#ffba0026;--ifm-alert-foreground-color:var(--ifm-color-warning-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-warning-dark)}.alert--danger{--ifm-alert-background-color:var(--ifm-color-danger-contrast-background);--ifm-alert-background-color-highlight:#fa383e26;--ifm-alert-foreground-color:var(--ifm-color-danger-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-danger-dark)}.alert{--ifm-code-background:var(--ifm-alert-background-color-highlight);--ifm-link-color:var(--ifm-alert-foreground-color);--ifm-link-hover-color:var(--ifm-alert-foreground-color);--ifm-link-decoration:underline;--ifm-tabs-color:var(--ifm-alert-foreground-color);--ifm-tabs-color-active:var(--ifm-alert-foreground-color);--ifm-tabs-color-active-border:var(--ifm-alert-border-color);background-color:var(--ifm-alert-background-color);border:var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);border-left-width:var(--ifm-alert-border-left-width);border-radius:var(--ifm-alert-border-radius);box-shadow:var(--ifm-alert-shadow);padding:var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal)}.alert__heading{align-items:center;display:flex;font:700 var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.5rem}.alert__icon{display:inline-flex;margin-right:.4em}.alert__icon svg{fill:var(--ifm-alert-foreground-color);stroke:var(--ifm-alert-foreground-color);stroke-width:0}.alert .close{margin:calc(var(--ifm-alert-padding-vertical)*-1) calc(var(--ifm-alert-padding-horizontal)*-1) 0 0;opacity:.75}.alert .close:focus,.alert .close:hover{opacity:1}.alert a{text-decoration-color:var(--ifm-alert-border-color)}.alert a:hover{text-decoration-thickness:2px}.avatar{column-gap:var(--ifm-avatar-intro-margin);display:flex}.avatar__photo{border-radius:50%;display:block;height:var(--ifm-avatar-photo-size);overflow:hidden;width:var(--ifm-avatar-photo-size)}.avatar__photo--sm{--ifm-avatar-photo-size:2rem}.avatar__photo--lg{--ifm-avatar-photo-size:4rem}.avatar__photo--xl{--ifm-avatar-photo-size:6rem}.avatar__intro{display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:var(--ifm-avatar-intro-alignment)}.badge,.breadcrumbs__item,.breadcrumbs__link,.button,.dropdown>.navbar__link:after{display:inline-block}.avatar__name{font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base)}.avatar__subtitle{margin-top:.25rem}.avatar--vertical{--ifm-avatar-intro-alignment:center;--ifm-avatar-intro-margin:0.5rem;align-items:center;flex-direction:column}.badge{background-color:var(--ifm-badge-background-color);border:var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);border-radius:var(--ifm-badge-border-radius);color:var(--ifm-badge-color);font-size:75%;font-weight:var(--ifm-font-weight-bold);line-height:1;padding:var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal)}.badge--primary{--ifm-badge-background-color:var(--ifm-color-primary)}.badge--secondary{--ifm-badge-background-color:var(--ifm-color-secondary);color:var(--ifm-color-black)}.breadcrumbs__link,.button.button--secondary.button--outline:not(.button--active):not(:hover){color:var(--ifm-font-color-base)}.badge--success{--ifm-badge-background-color:var(--ifm-color-success)}.badge--info{--ifm-badge-background-color:var(--ifm-color-info)}.badge--warning{--ifm-badge-background-color:var(--ifm-color-warning)}.badge--danger{--ifm-badge-background-color:var(--ifm-color-danger)}.breadcrumbs{margin-bottom:0;padding-left:0}.breadcrumbs__item:not(:last-child):after{background:var(--ifm-breadcrumb-separator) center;content:" ";display:inline-block;filter:var(--ifm-breadcrumb-separator-filter);height:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));margin:0 var(--ifm-breadcrumb-spacing);opacity:.5;width:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier))}.breadcrumbs__item--active .breadcrumbs__link{background:var(--ifm-breadcrumb-item-background-active);color:var(--ifm-breadcrumb-color-active)}.breadcrumbs__link{border-radius:var(--ifm-breadcrumb-border-radius);font-size:calc(1rem*var(--ifm-breadcrumb-size-multiplier));padding:calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier)) calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));transition-duration:var(--ifm-transition-fast);transition-property:background,color}.breadcrumbs__link:any-link:hover,.breadcrumbs__link:link:hover,.breadcrumbs__link:visited:hover,area.breadcrumbs__link[href]:hover{background:var(--ifm-breadcrumb-item-background-active);text-decoration:none}.breadcrumbs--sm{--ifm-breadcrumb-size-multiplier:0.8}.breadcrumbs--lg{--ifm-breadcrumb-size-multiplier:1.2}.button{background-color:var(--ifm-button-background-color);border:var(--ifm-button-border-width) solid var(--ifm-button-border-color);border-radius:var(--ifm-button-border-radius);cursor:pointer;font-size:calc(.875rem*var(--ifm-button-size-multiplier));font-weight:var(--ifm-button-font-weight);line-height:1.5;padding:calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier)) calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));text-align:center;transition-duration:var(--ifm-button-transition-duration);transition-property:color,background,border-color;-webkit-user-select:none;user-select:none;white-space:nowrap}.button,.button:hover{color:var(--ifm-button-color)}.button--outline{--ifm-button-color:var(--ifm-button-border-color)}.button--outline:hover{--ifm-button-background-color:var(--ifm-button-border-color)}.button--link{--ifm-button-border-color:#0000;color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}.button--link.button--active,.button--link:active,.button--link:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button.disabled,.button:disabled,.button[disabled]{opacity:.65;pointer-events:none}.button--sm{--ifm-button-size-multiplier:0.8}.button--lg{--ifm-button-size-multiplier:1.35}.button--block{display:block;width:100%}.button.button--secondary{color:var(--ifm-color-gray-900)}:where(.button--primary){--ifm-button-background-color:var(--ifm-color-primary);--ifm-button-border-color:var(--ifm-color-primary)}:where(.button--primary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-primary-dark);--ifm-button-border-color:var(--ifm-color-primary-dark)}.button--primary.button--active,.button--primary:active{--ifm-button-background-color:var(--ifm-color-primary-darker);--ifm-button-border-color:var(--ifm-color-primary-darker)}:where(.button--secondary){--ifm-button-background-color:var(--ifm-color-secondary);--ifm-button-border-color:var(--ifm-color-secondary)}:where(.button--secondary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-secondary-dark);--ifm-button-border-color:var(--ifm-color-secondary-dark)}.button--secondary.button--active,.button--secondary:active{--ifm-button-background-color:var(--ifm-color-secondary-darker);--ifm-button-border-color:var(--ifm-color-secondary-darker)}:where(.button--success){--ifm-button-background-color:var(--ifm-color-success);--ifm-button-border-color:var(--ifm-color-success)}:where(.button--success):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-success-dark);--ifm-button-border-color:var(--ifm-color-success-dark)}.button--success.button--active,.button--success:active{--ifm-button-background-color:var(--ifm-color-success-darker);--ifm-button-border-color:var(--ifm-color-success-darker)}:where(.button--info){--ifm-button-background-color:var(--ifm-color-info);--ifm-button-border-color:var(--ifm-color-info)}:where(.button--info):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-info-dark);--ifm-button-border-color:var(--ifm-color-info-dark)}.button--info.button--active,.button--info:active{--ifm-button-background-color:var(--ifm-color-info-darker);--ifm-button-border-color:var(--ifm-color-info-darker)}:where(.button--warning){--ifm-button-background-color:var(--ifm-color-warning);--ifm-button-border-color:var(--ifm-color-warning)}:where(.button--warning):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-warning-dark);--ifm-button-border-color:var(--ifm-color-warning-dark)}.button--warning.button--active,.button--warning:active{--ifm-button-background-color:var(--ifm-color-warning-darker);--ifm-button-border-color:var(--ifm-color-warning-darker)}:where(.button--danger){--ifm-button-background-color:var(--ifm-color-danger);--ifm-button-border-color:var(--ifm-color-danger)}:where(.button--danger):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-danger-dark);--ifm-button-border-color:var(--ifm-color-danger-dark)}.button--danger.button--active,.button--danger:active{--ifm-button-background-color:var(--ifm-color-danger-darker);--ifm-button-border-color:var(--ifm-color-danger-darker)}.button-group{display:inline-flex;gap:var(--ifm-button-group-spacing)}.button-group>.button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.button-group>.button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.button-group--block{display:flex;justify-content:stretch}.button-group--block>.button{flex-grow:1}.card{background-color:var(--ifm-card-background-color);border-radius:var(--ifm-card-border-radius);box-shadow:var(--ifm-global-shadow-lw);display:flex;flex-direction:column;overflow:hidden}.card--full-height,body,html{height:100%}.card__image{padding-top:var(--ifm-card-vertical-spacing)}.card__image:first-child{padding-top:0}.card__body,.card__footer,.card__header{padding:var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing)}.card__body:not(:last-child),.card__footer:not(:last-child),.card__header:not(:last-child){padding-bottom:0}.card__body>:last-child,.card__footer>:last-child,.card__header>:last-child{margin-bottom:0}.card__footer{margin-top:auto}.table-of-contents{font-size:.8rem;margin-bottom:0;padding:var(--ifm-toc-padding-vertical) 0}.table-of-contents,.table-of-contents ul{list-style:none;padding-left:var(--ifm-toc-padding-horizontal)}.table-of-contents li{margin:var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal)}.table-of-contents__left-border{border-left:1px solid var(--ifm-toc-border-color)}.table-of-contents__link{color:var(--ifm-toc-link-color);display:block}.table-of-contents__link--active,.table-of-contents__link--active code,.table-of-contents__link:hover,.table-of-contents__link:hover code{color:var(--ifm-color-primary);text-decoration:none}.close{color:var(--ifm-color-black);float:right;font-size:1.5rem;font-weight:var(--ifm-font-weight-bold);line-height:1;opacity:.5;padding:1rem;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.close:hover{opacity:.7}.close:focus,.theme-code-block-highlighted-line .codeLineNumber_Tfdd:before{opacity:.8}.dropdown{display:inline-flex;font-weight:var(--ifm-dropdown-font-weight);position:relative;vertical-align:top}.dropdown--hoverable:hover .dropdown__menu,.dropdown--show .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(-1px);visibility:visible}#nprogress,.dropdown__menu,.navbar__item.dropdown .navbar__link:not([href]){pointer-events:none}.dropdown--right .dropdown__menu{left:inherit;right:0}.dropdown--nocaret .navbar__link:after{content:none!important}.dropdown__menu{background-color:var(--ifm-dropdown-background-color);border-radius:var(--ifm-global-radius);box-shadow:var(--ifm-global-shadow-md);left:0;max-height:80vh;min-width:10rem;opacity:0;overflow-y:auto;padding:.5rem;position:absolute;top:calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);transform:translateY(-.625rem);transition-duration:var(--ifm-transition-fast);transition-property:opacity,transform,visibility;transition-timing-function:var(--ifm-transition-timing-default);visibility:hidden;z-index:var(--ifm-z-index-dropdown)}.menu__caret,.menu__link,.menu__list-item-collapsible{border-radius:.25rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.dropdown__link{border-radius:.25rem;color:var(--ifm-dropdown-link-color);display:block;font-size:.875rem;margin-top:.2rem;padding:.25rem .5rem;white-space:nowrap}.dropdown__link--active,.dropdown__link:hover{background-color:var(--ifm-dropdown-hover-background-color);color:var(--ifm-dropdown-link-color);text-decoration:none}.dropdown__link--active,.dropdown__link--active:hover{--ifm-dropdown-link-color:var(--ifm-link-color)}.dropdown>.navbar__link:after{border-color:currentcolor #0000;border-style:solid;border-width:.4em .4em 0;content:"";margin-left:.3em;position:relative;top:2px;transform:translateY(-50%)}.footer{background-color:var(--ifm-footer-background-color);color:var(--ifm-footer-color);padding:var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal)}.footer--dark{--ifm-footer-background-color:#303846;--ifm-footer-color:var(--ifm-footer-link-color);--ifm-footer-link-color:var(--ifm-color-secondary);--ifm-footer-title-color:var(--ifm-color-white)}.footer__links{margin-bottom:1rem}.footer__link-item{color:var(--ifm-footer-link-color);line-height:2}.footer__link-item:hover{color:var(--ifm-footer-link-hover-color)}.footer__link-separator{margin:0 var(--ifm-footer-link-horizontal-spacing)}.footer__logo{margin-top:1rem;max-width:var(--ifm-footer-logo-max-width)}.footer__title{color:var(--ifm-footer-title-color);font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base);margin-bottom:var(--ifm-heading-margin-bottom)}.menu,.navbar__link{font-weight:var(--ifm-font-weight-semibold)}.docItemContainer_Djhp article>:first-child,.docItemContainer_Djhp header+*,.footer__item,.mt-0{margin-top:0}.admonitionContent_S0QG>:last-child,.collapsibleContent_i85q>:last-child,.footer__items{margin-bottom:0}.codeBlockStandalone_MEMb,[type=checkbox],fieldset,legend{padding:0}.hero{align-items:center;background-color:var(--ifm-hero-background-color);color:var(--ifm-hero-text-color);display:flex;padding:4rem 2rem}.hero--primary{--ifm-hero-background-color:var(--ifm-color-primary);--ifm-hero-text-color:var(--ifm-font-color-base-inverse)}.hero--dark{--ifm-hero-background-color:#303846;--ifm-hero-text-color:var(--ifm-color-white)}.hero__title,.title_f1Hy{font-size:3rem}.hero__subtitle{font-size:1.5rem}.menu__list{margin:0;padding-left:0}.menu__caret,.menu__link{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu__list .menu__list{flex:0 0 100%;margin-top:.25rem;padding-left:var(--ifm-menu-link-padding-horizontal)}.menu__list-item:not(:first-child),.mt-1{margin-top:.25rem}.menu__list-item--collapsed .menu__list{height:0;overflow:hidden}.details_lb9f[data-collapsed=false].isBrowser_bmU9>summary:before,.details_lb9f[open]:not(.isBrowser_bmU9)>summary:before,.menu__list-item--collapsed .menu__caret:before,.menu__list-item--collapsed .menu__link--sublist:after{transform:rotate(90deg)}.menu__list-item-collapsible{display:flex;flex-wrap:wrap;position:relative}.menu__caret:hover,.menu__link:hover,.menu__list-item-collapsible--active,.menu__list-item-collapsible:hover{background:var(--ifm-menu-color-background-hover)}.menu__list-item-collapsible .menu__link--active,.menu__list-item-collapsible .menu__link:hover{background:none!important}.menu__caret,.menu__link{align-items:center;display:flex}.navbar-sidebar,.navbar-sidebar__backdrop{bottom:0;opacity:0;transition-timing-function:ease-in-out;visibility:hidden;left:0;top:0}.menu__link{color:var(--ifm-menu-color);flex:1;line-height:1.25}.menu__link:hover{color:var(--ifm-menu-color);text-decoration:none}.menu__caret:before,.menu__link--sublist-caret:after{content:"";height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast) linear;width:1.25rem;filter:var(--ifm-menu-link-sublist-icon-filter)}.menu__link--sublist-caret:after{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem;margin-left:auto;min-width:1.25rem}.navbar__items--center .navbar__brand,blockquote,body,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,menu,ol,p,pre,ul{margin:0}.menu__link--active,.menu__link--active:hover{color:var(--ifm-menu-color-active)}.navbar__brand,.navbar__link{color:var(--ifm-navbar-link-color)}.menu__link--active:not(.menu__link--sublist){background-color:var(--ifm-menu-color-background-active)}.menu__caret:before{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem}.navbar--dark,html[data-theme=dark]{--ifm-menu-link-sublist-icon-filter:invert(100%) sepia(94%) saturate(17%) hue-rotate(223deg) brightness(104%) contrast(98%)}.navbar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-navbar-shadow);height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.breadcrumbs,.docsWrapper_BCFX,.flex,.navbar,.navbar>.container,.navbar>.container-fluid,.theme-edit-this-page{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.navbar__brand{align-items:center;display:flex;margin-right:1rem;min-width:0}.navbar__brand:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.announcementBarContent_xLdY,.flex-auto,.navbar__title{flex:1 1 auto}.navbar__toggle{display:none;margin-right:.5rem}.navbar__logo{flex:0 0 auto;height:2rem;margin-right:.5rem}.navbar__items{align-items:center;display:flex;flex:1;min-width:0}.navbar__items--center{flex:0 0 auto}.navbar__items--center+.navbar__items--right{flex:1}.navbar__items--right{flex:0 0 auto;justify-content:flex-end}.navbar__items--right>:last-child{padding-right:0}.navbar__item{display:inline-block;padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.navbar__link--active,.navbar__link:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.navbar--dark,.navbar--primary{--ifm-menu-color:var(--ifm-color-gray-300);--ifm-navbar-link-color:var(--ifm-color-gray-100);--ifm-navbar-search-input-background-color:#ffffff1a;--ifm-navbar-search-input-placeholder-color:#ffffff80;color:var(--ifm-color-white)}.navbar--dark{--ifm-navbar-background-color:#242526;--ifm-menu-color-background-active:#ffffff0d;--ifm-navbar-search-input-color:var(--ifm-color-white)}.navbar--primary{--ifm-navbar-background-color:var(--ifm-color-primary);--ifm-navbar-link-hover-color:var(--ifm-color-white);--ifm-menu-color-active:var(--ifm-color-white);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-500)}.navbar__search-input{-webkit-appearance:none;appearance:none;background:var(--ifm-navbar-search-input-background-color) var(--ifm-navbar-search-input-icon) no-repeat .75rem center/1rem 1rem;border:none;border-radius:2rem;color:var(--ifm-navbar-search-input-color);cursor:text;display:inline-block;font-size:.9rem;height:2rem;padding:0 .5rem 0 2.25rem;width:12.5rem}.cursor-pointer,.pills__item,.tabs__item,[role=button],button{cursor:pointer}.navbar__search-input::placeholder{color:var(--ifm-navbar-search-input-placeholder-color)}.navbar-sidebar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-global-shadow-md);position:fixed;transform:translate3d(-100%,0,0);transition-duration:.25s;transition-property:opacity,visibility,transform;width:var(--ifm-navbar-sidebar-width)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar__items{transform:translateZ(0)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar--show .navbar-sidebar__backdrop{opacity:1;visibility:visible}.navbar-sidebar__backdrop{background-color:#0009;position:fixed;right:0;transition-duration:.1s;transition-property:opacity,visibility}.navbar-sidebar__brand{align-items:center;box-shadow:var(--ifm-navbar-shadow);display:flex;flex:1;height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar-sidebar__items{display:flex;height:calc(100% - var(--ifm-navbar-height));transition:transform var(--ifm-transition-fast) ease-in-out}.navbar-sidebar__items--show-secondary{transform:translate3d(calc((var(--ifm-navbar-sidebar-width))*-1),0,0)}.navbar-sidebar__item{flex-shrink:0;padding:.5rem;width:calc(var(--ifm-navbar-sidebar-width))}.navbar-sidebar__back{background:var(--ifm-menu-color-background-active);font-size:15px;font-weight:var(--ifm-button-font-weight);margin:0 0 .2rem -.5rem;padding:.6rem 1.5rem;position:relative;text-align:left;top:-.5rem;width:calc(100% + 1rem)}.navbar-sidebar__close{display:flex;margin-left:auto}.pagination{column-gap:var(--ifm-pagination-page-spacing);display:flex;font-size:var(--ifm-pagination-font-size);padding-left:0}.pagination--sm{--ifm-pagination-font-size:0.8rem;--ifm-pagination-padding-horizontal:0.8rem;--ifm-pagination-padding-vertical:0.2rem}.pagination--lg{--ifm-pagination-font-size:1.2rem;--ifm-pagination-padding-horizontal:1.2rem;--ifm-pagination-padding-vertical:0.3rem}.pagination__item{display:inline-flex}.pagination__item>span{padding:var(--ifm-pagination-padding-vertical)}.pagination__item--active .pagination__link{color:var(--ifm-pagination-color-active)}.pagination__item--active .pagination__link,.pagination__item:not(.pagination__item--active):hover .pagination__link{background:var(--ifm-pagination-item-active-background)}.pagination__item--disabled,.pagination__item[disabled]{opacity:.25;pointer-events:none}.pagination__link{border-radius:var(--ifm-pagination-border-radius);color:var(--ifm-font-color-base);display:inline-block;padding:var(--ifm-pagination-padding-vertical) var(--ifm-pagination-padding-horizontal);transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination__link:hover,.sidebarItemLink_mo7H:hover,a,a:hover{text-decoration:none}.pagination-nav{grid-gap:var(--ifm-spacing-horizontal);display:grid;gap:var(--ifm-spacing-horizontal);grid-template-columns:repeat(2,1fr)}.pagination-nav__link{border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-pagination-nav-border-radius);display:block;height:100%;line-height:var(--ifm-heading-line-height);padding:var(--ifm-global-spacing);transition:border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination-nav__link:hover{border-color:var(--ifm-pagination-nav-color-hover);text-decoration:none}.pagination-nav__link--next{grid-column:2/3;text-align:right}.pagination-nav__label{font-size:var(--ifm-h4-font-size);font-weight:var(--ifm-heading-font-weight);word-break:break-word}.pagination-nav__link--prev .pagination-nav__label:before{content:"« "}.pagination-nav__link--next .pagination-nav__label:after{content:" »"}.pagination-nav__sublabel{color:var(--ifm-color-content-secondary);font-size:var(--ifm-h5-font-size);font-weight:var(--ifm-font-weight-semibold);margin-bottom:.25rem}.pills__item,.tabs{font-weight:var(--ifm-font-weight-bold)}.pills{display:flex;gap:var(--ifm-pills-spacing);padding-left:0}.pills__item{border-radius:.5rem;display:inline-block;padding:.25rem 1rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs,:not(.containsTaskList_mC6p>li)>.containsTaskList_mC6p{padding-left:0}.pills__item--active{color:var(--ifm-pills-color-active)}.pills__item--active,.pills__item:not(.pills__item--active):hover{background:var(--ifm-pills-color-background-active)}.pills--block{justify-content:stretch}.pills--block .pills__item{flex-grow:1;text-align:center}.tabs{color:var(--ifm-tabs-color);display:flex;margin-bottom:0;overflow-x:auto}.tabs__item{border-bottom:3px solid #0000;border-radius:var(--ifm-global-radius);display:inline-flex;padding:var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);transition:background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs__item--active{border-bottom-color:var(--ifm-tabs-color-active-border);border-bottom-left-radius:0;border-bottom-right-radius:0;color:var(--ifm-tabs-color-active)}.tabs__item:hover{background-color:var(--ifm-hover-overlay)}.tabs--block{justify-content:stretch}.tabs--block .tabs__item{flex-grow:1;justify-content:center}html[data-theme=dark]{--ifm-color-scheme:dark;--ifm-color-emphasis-0:var(--ifm-color-gray-1000);--ifm-color-emphasis-100:var(--ifm-color-gray-900);--ifm-color-emphasis-200:var(--ifm-color-gray-800);--ifm-color-emphasis-300:var(--ifm-color-gray-700);--ifm-color-emphasis-400:var(--ifm-color-gray-600);--ifm-color-emphasis-600:var(--ifm-color-gray-400);--ifm-color-emphasis-700:var(--ifm-color-gray-300);--ifm-color-emphasis-800:var(--ifm-color-gray-200);--ifm-color-emphasis-900:var(--ifm-color-gray-100);--ifm-color-emphasis-1000:var(--ifm-color-gray-0);--ifm-background-color:#1b1b1d;--ifm-background-surface-color:#242526;--ifm-hover-overlay:#ffffff0d;--ifm-color-content:#e3e3e3;--ifm-color-content-secondary:#fff;--ifm-breadcrumb-separator-filter:invert(64%) sepia(11%) saturate(0%) hue-rotate(149deg) brightness(99%) contrast(95%);--ifm-code-background:#ffffff1a;--ifm-scrollbar-track-background-color:#444;--ifm-scrollbar-thumb-background-color:#686868;--ifm-scrollbar-thumb-hover-background-color:#7a7a7a;--ifm-table-stripe-background:#ffffff12;--ifm-toc-border-color:var(--ifm-color-emphasis-200);--ifm-color-primary-contrast-background:#102445;--ifm-color-primary-contrast-foreground:#ebf2fc;--ifm-color-secondary-contrast-background:#474748;--ifm-color-secondary-contrast-foreground:#fdfdfe;--ifm-color-success-contrast-background:#003100;--ifm-color-success-contrast-foreground:#e6f6e6;--ifm-color-info-contrast-background:#193c47;--ifm-color-info-contrast-foreground:#eef9fd;--ifm-color-warning-contrast-background:#4d3800;--ifm-color-warning-contrast-foreground:#fff8e6;--ifm-color-danger-contrast-background:#4b1113;--ifm-color-danger-contrast-foreground:#ffebec}#nprogress .bar{background:var(--docusaurus-progress-bar-color);height:2px;left:0;position:fixed;top:0;width:100%;z-index:1031}#nprogress .peg{box-shadow:0 0 10px var(--docusaurus-progress-bar-color),0 0 5px var(--docusaurus-progress-bar-color);height:100%;opacity:1;position:absolute;right:0;transform:rotate(3deg) translateY(-4px);width:100px}*,:after,:before{border:0 solid #e5e7eb;--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{display:block;margin-bottom:var(--ifm-spacing-vertical);border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;margin:0;padding:0}.admonitionHeading_tbUL code,button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}menu,ol,ul{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.bottom-1\/2{bottom:50%}.-bottom-12{bottom:-3rem}.left-1\/2{left:50%}.top-2{top:.5rem}.left-5{left:1.25rem}.bottom-4{bottom:1rem}.z-50{z-index:50}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.my-4{margin-bottom:1rem;margin-top:1rem}.mt-10{margin-top:2.5rem}.mb-10{margin-bottom:2.5rem}.mb-3{margin-bottom:.75rem}.mb-8{margin-bottom:2rem}.mt-8{margin-top:2rem}.mt-5{margin-top:1.25rem}.mb-2{margin-bottom:.5rem}.mb-1{margin-bottom:.25rem}.mb-5{margin-bottom:1.25rem}.mt-4{margin-top:1rem}.ml-5{margin-left:1.25rem}.docusaurus-mt-lg,.mt-12{margin-top:3rem}.block,.tocCollapsibleContent_vkbj a{display:block}.h-4{height:1rem}.h-12{height:3rem}.h-\[270px\]{height:270px}.h-2{height:.5rem}.h-\[340px\]{height:340px}.h-\[400px\]{height:400px}.h-52{height:13rem}.h-44{height:11rem}.w-screen{width:100vw}.w-12{width:3rem}.w-full{width:100%}.w-\[calc\(100\%\*4\)\]{width:400%}.w-2{width:.5rem}.w-5{width:1.25rem}.w-\[95\%\]{width:95%}.w-1\/2{width:50%}.w-\[90\%\]{width:90%}.max-w-3xl{max-width:48rem}.max-w-full{max-width:100%}.max-w-\[90\%\]{max-width:90%}.translate-y-1\/2{--tw-translate-y:50%}.-translate-x-1\/2,.transform,.translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/2{--tw-translate-x:-50%}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.blogPostFooterDetailsFull_mRVl,.flex-col{flex-direction:column}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-8{gap:2rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-10{gap:2.5rem}.gap-6{gap:1.5rem}.gap-y-2{row-gap:.5rem}.gap-x-6{column-gap:1.5rem}.overflow-hidden{overflow:hidden}.overflow-y-hidden{overflow-y:hidden}.sidebar_re4s,.tableOfContents_bqdL{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem);overflow-y:auto}.overflow-x-scroll{overflow-x:scroll}.rounded-full{border-radius:9999px}.rounded-sm{border-radius:.125rem}.rounded-2xl{border-radius:1rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-gray-50{--tw-border-opacity:1;border-color:rgb(249 250 251/var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity))}.bg-slate-100{background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-gray-50{background-color:rgb(249 250 251/var(--tw-bg-opacity))}.bg-blue-600{background-color:rgb(37 99 235/var(--tw-bg-opacity))}.bg-gray-100{background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-gray-300{background-color:rgb(209 213 219/var(--tw-bg-opacity))}.bg-red-100{background-color:rgb(254 226 226/var(--tw-bg-opacity))}.object-cover{object-fit:cover}.p-2{padding:.5rem}.p-6{padding:1.5rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.px-4{padding-left:1rem;padding-right:1rem}.py-7{padding-bottom:1.75rem;padding-top:1.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-28{padding-bottom:7rem;padding-top:7rem}.pt-2{padding-top:.5rem}.pb-6{padding-bottom:1.5rem}.pr-2{padding-right:.5rem}.pb-2{padding-bottom:.5rem}.pt-3{padding-top:.75rem}.text-center{text-align:center}.font-sans,html{font-family:Segoe UI,sans-serif}.text-5xl{font-size:3rem;line-height:1}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-light{font-weight:300}.leading-3{line-height:.75rem}.leading-5{line-height:1.25rem}.tracking-wider{letter-spacing:.05em}.text-gray-800{color:rgb(31 41 55/var(--tw-text-opacity))}.text-blue-500{color:rgb(59 130 246/var(--tw-text-opacity))}.text-blue-600{color:rgb(37 99 235/var(--tw-text-opacity))}.text-gray-50{color:rgb(249 250 251/var(--tw-text-opacity))}.text-gray-200{color:rgb(229 231 235/var(--tw-text-opacity))}.text-gray-100{color:rgb(243 244 246/var(--tw-text-opacity))}.text-gray-600{color:rgb(75 85 99/var(--tw-text-opacity))}.text-red-900{color:rgb(127 29 29/var(--tw-text-opacity))}.text-gray-500{color:rgb(107 114 128/var(--tw-text-opacity))}.opacity-90{opacity:.9}.opacity-0{opacity:0}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-lg,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.drop-shadow-md{--tw-drop-shadow:drop-shadow(0 4px 3px #00000012) drop-shadow(0 2px 2px #0000000f)}.drop-shadow-md,.drop-shadow-xl,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-xl{--tw-drop-shadow:drop-shadow(0 20px 13px #00000008) drop-shadow(0 8px 5px #00000014)}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}[data-theme=dark]{--ifm-color-primary:#25c2a0;--ifm-color-primary-dark:#21af90;--ifm-color-primary-darker:#1fa588;--ifm-color-primary-darkest:#1a8870;--ifm-color-primary-light:#29d5b0;--ifm-color-primary-lighter:#32d8b4;--ifm-color-primary-lightest:#4fddbf;--docusaurus-highlighted-code-line-bg:#0000004d}.menu__list{font-size:14px}.navbar__logo img{height:24px;padding-top:2px}.navbar__title{border-left:3px solid #222;padding-left:10px}.footer{padding-bottom:10px;padding-right:0;padding-top:10px}.footer__copyright{font-size:small;text-align:right}.pattern-dots-sm{background-image:radial-gradient(#c3c3c3 .5px,#0000 0);background-size:5px 5px}.breadcrumbs__item:not(:last-child):after{margin-bottom:9px}[data-theme=light] .lightIcon{fill:#fff}.icon_inline{fill:currentColor;display:inline-block;height:12px;margin-bottom:4px;margin-left:2px;margin-right:2px;width:12px}.hover\:bg-blue-700:hover{background-color:rgb(29 78 216/var(--tw-bg-opacity))}.hover\:underline:hover{text-decoration-line:underline}.footerLogoLink_BH7S:hover,.hash-link:focus,.hover\:opacity-100:hover,:hover>.hash-link{opacity:1}.active\:bg-gray-200:active{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}#docusaurus-base-url-issue-banner-container,.collapseSidebarButton_PEFL,.docSidebarContainer_b6E3,.sidebarLogo_isFc,.themedImage_ToTc,[data-theme=dark] .lightToggleIcon_pyhR,[data-theme=light] .darkToggleIcon_wfgR,html[data-announcement-bar-initially-dismissed=true] .announcementBar_mb4j{display:none}.skipToContent_fXgn{background-color:var(--ifm-background-surface-color);color:var(--ifm-color-emphasis-900);left:100%;padding:calc(var(--ifm-global-spacing)/2) var(--ifm-global-spacing);position:fixed;top:1rem;z-index:calc(var(--ifm-z-index-fixed) + 1)}.skipToContent_fXgn:focus{box-shadow:var(--ifm-global-shadow-md);left:1rem}.closeButton_CVFx{line-height:0;padding:0}.content_knG7{font-size:85%;padding:5px 0;text-align:center}.content_knG7 a{color:inherit;text-decoration:underline}.announcementBar_mb4j{align-items:center;background-color:var(--ifm-color-white);border-bottom:1px solid var(--ifm-color-emphasis-100);color:var(--ifm-color-black);display:flex;height:var(--docusaurus-announcement-bar-height)}.announcementBarPlaceholder_vyr4{flex:0 0 10px}.announcementBarClose_gvF7{align-self:stretch;flex:0 0 30px}.toggle_vylO{height:2rem;width:2rem}.toggleButton_gllP{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;transition:background var(--ifm-transition-fast);width:100%}.toggleButton_gllP:hover{background:var(--ifm-color-emphasis-200)}.toggleButtonDisabled_aARS{cursor:not-allowed}[data-theme=dark] .themedImage--dark_i4oU,[data-theme=light] .themedImage--light_HNdA{display:initial}.iconExternalLink_nPIU{margin-left:.3rem}.iconLanguage_nlXk{margin-right:5px;vertical-align:text-bottom}.navbarHideable_m1mJ{transition:transform var(--ifm-transition-fast) ease}.navbarHidden_jGov{transform:translate3d(0,calc(-100% - 2px),0)}.footerLogoLink_BH7S{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.mainWrapper_z2l0{flex:1 0 auto}#__docusaurus{display:flex;flex-direction:column;min-height:100%}.backToTopButton_sjWU{background-color:var(--ifm-color-emphasis-200);border-radius:50%;bottom:1.3rem;box-shadow:var(--ifm-global-shadow-lw);height:3rem;opacity:0;position:fixed;right:1.3rem;transform:scale(0);transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default);visibility:hidden;width:3rem;z-index:calc(var(--ifm-z-index-fixed) - 1)}.backToTopButton_sjWU:after{background-color:var(--ifm-color-emphasis-1000);content:" ";display:inline-block;height:100%;-webkit-mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;width:100%}.backToTopButtonShow_xfvO{opacity:1;transform:scale(1);visibility:visible}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.docMainContainer_gTbr,.docPage__5DB{display:flex;width:100%}.carousel_slide_1_4{transform:translate(0)}.carousel_slide_2_4{transform:translate(-25%)}.carousel_slide_3_4{transform:translate(-50%)}.carousel_slide_4_4{transform:translate(-75%)}.sidebar_re4s{position:sticky;top:calc(var(--ifm-navbar-height) + 2rem)}.sidebarItemTitle_pO2u{font-size:var(--ifm-h3-font-size);font-weight:var(--ifm-font-weight-bold)}.container_mt6G,.sidebarItemList_Yudw{font-size:.9rem}.sidebarItem__DBe{margin-top:.7rem}.sidebarItemLink_mo7H{color:var(--ifm-font-color-base);display:block}.sidebarItemLinkActive_I1ZP{color:var(--ifm-color-primary)!important}.buttonGroup__atx button,.codeBlockContainer_Ckt0{background:var(--prism-background-color);color:var(--prism-color)}.authorCol_Hf19{flex-grow:1!important;max-width:inherit!important}.imageOnlyAuthorRow_pa_O{display:flex;flex-flow:row wrap}.imageOnlyAuthorCol_G86a{margin-left:.3rem;margin-right:.3rem}.codeBlockContainer_Ckt0{border-radius:var(--ifm-code-border-radius);box-shadow:var(--ifm-global-shadow-lw);margin-bottom:var(--ifm-leading)}.codeBlockContent_biex{border-radius:inherit;direction:ltr;position:relative}.codeBlockTitle_Ktv7{border-bottom:1px solid var(--ifm-color-emphasis-300);border-top-left-radius:inherit;border-top-right-radius:inherit;font-size:var(--ifm-code-font-size);font-weight:500;padding:.75rem var(--ifm-pre-padding)}.codeBlock_bY9V{--ifm-pre-background:var(--prism-background-color);margin:0;padding:0}.codeBlockTitle_Ktv7+.codeBlockContent_biex .codeBlock_bY9V{border-top-left-radius:0;border-top-right-radius:0}.codeBlockLines_e6Vv{float:left;font:inherit;min-width:100%;padding:var(--ifm-pre-padding)}.codeBlockLinesWithNumbering_o6Pm{display:table;padding:var(--ifm-pre-padding) 0}.buttonGroup__atx{column-gap:.2rem;display:flex;position:absolute;right:calc(var(--ifm-pre-padding)/2);top:calc(var(--ifm-pre-padding)/2)}.buttonGroup__atx button{align-items:center;border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-global-radius);display:flex;line-height:0;opacity:0;padding:.4rem;transition:opacity .2s ease-in-out}.buttonGroup__atx button:focus-visible,.buttonGroup__atx button:hover{opacity:1!important}.theme-code-block:hover .buttonGroup__atx button{opacity:.4}.iconEdit_Z9Sw{margin-right:.3em;vertical-align:sub}:where(:root){--docusaurus-highlighted-code-line-bg:#484d5b}:where([data-theme=dark]){--docusaurus-highlighted-code-line-bg:#646464}.theme-code-block-highlighted-line{background-color:var(--docusaurus-highlighted-code-line-bg);display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.codeLine_lJS_{counter-increment:a;display:table-row}.codeLineNumber_Tfdd{background:var(--ifm-pre-background);display:table-cell;left:0;overflow-wrap:normal;padding:0 var(--ifm-pre-padding);position:sticky;text-align:right;width:1%}.codeLineNumber_Tfdd:before{content:counter(a);opacity:.4}.codeLineContent_feaV{padding-right:var(--ifm-pre-padding)}.tag_zVej{border:1px solid var(--docusaurus-tag-list-border);transition:border var(--ifm-transition-fast)}.tag_zVej:hover{--docusaurus-tag-list-border:var(--ifm-link-color);text-decoration:none}.tagRegular_sFm0{border-radius:var(--ifm-global-radius);font-size:90%;padding:.2rem .5rem .3rem}.tagWithCount_h2kH{align-items:center;border-left:0;display:flex;padding:0 .5rem 0 1rem;position:relative}.tagWithCount_h2kH:after,.tagWithCount_h2kH:before{border:1px solid var(--docusaurus-tag-list-border);content:"";position:absolute;top:50%;transition:inherit}.tagWithCount_h2kH:before{border-bottom:0;border-right:0;height:1.18rem;right:100%;transform:translate(50%,-50%) rotate(-45deg);width:1.18rem}.tagWithCount_h2kH:after{border-radius:50%;height:.5rem;left:0;transform:translateY(-50%);width:.5rem}.tagWithCount_h2kH span{background:var(--ifm-color-secondary);border-radius:var(--ifm-global-radius);color:var(--ifm-color-black);font-size:.7rem;line-height:1.2;margin-left:.3rem;padding:.1rem .4rem}.tag_Nnez{display:inline-block;margin:.5rem .5rem 0 1rem}.theme-code-block:hover .copyButtonCopied_obH4{opacity:1!important}.copyButtonIcons_eSgA{height:1.125rem;position:relative;width:1.125rem}.copyButtonIcon_y97N,.copyButtonSuccessIcon_LjdS{fill:currentColor;height:inherit;left:0;opacity:inherit;position:absolute;top:0;transition:.15s;width:inherit}.copyButtonSuccessIcon_LjdS{color:#00d600;left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) scale(.33)}.copyButtonCopied_obH4 .copyButtonIcon_y97N{opacity:0;transform:scale(.33)}.copyButtonCopied_obH4 .copyButtonSuccessIcon_LjdS{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:75ms}.tags_jXut{display:inline}.tag_QGVx{display:inline-block;margin:0 .4rem .5rem 0}.lastUpdated_vwxv{font-size:smaller;font-style:italic;margin-top:.2rem}.tocCollapsibleButton_TO0P{align-items:center;display:flex;font-size:inherit;justify-content:space-between;padding:.4rem .8rem;width:100%}.tocCollapsibleButton_TO0P:after{background:var(--ifm-menu-link-sublist-icon) 50% 50%/2rem 2rem no-repeat;content:"";filter:var(--ifm-menu-link-sublist-icon-filter);height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast);width:1.25rem}.tocCollapsibleButtonExpanded_MG3E:after,.tocCollapsibleExpanded_sAul{transform:none}.tocCollapsible_ETCw{background-color:var(--ifm-menu-color-background-active);border-radius:var(--ifm-global-radius);margin:1rem 0}.tocCollapsibleContent_vkbj>ul{border-left:none;border-top:1px solid var(--ifm-color-emphasis-300);font-size:15px;padding:.2rem 0}.tocCollapsibleContent_vkbj ul li{margin:.4rem .8rem}.wordWrapButtonIcon_Bwma{height:1.2rem;width:1.2rem}.details_lb9f{--docusaurus-details-summary-arrow-size:0.38rem;--docusaurus-details-transition:transform 200ms ease;--docusaurus-details-decoration-color:grey}.details_lb9f>summary{cursor:pointer;padding-left:1rem;position:relative}.details_lb9f>summary::-webkit-details-marker{display:none}.details_lb9f>summary:before{border-color:#0000 #0000 #0000 var(--docusaurus-details-decoration-color);border-style:solid;border-width:var(--docusaurus-details-summary-arrow-size);content:"";left:0;position:absolute;top:.45rem;transform:rotate(0);transform-origin:calc(var(--docusaurus-details-summary-arrow-size)/2) 50%;transition:var(--docusaurus-details-transition)}.collapsibleContent_i85q{border-top:1px solid var(--docusaurus-details-decoration-color);margin-top:1rem;padding-top:1rem}.details_b_Ee{--docusaurus-details-decoration-color:var(--ifm-alert-border-color);--docusaurus-details-transition:transform var(--ifm-transition-fast) ease;border:1px solid var(--ifm-alert-border-color);margin:0 0 var(--ifm-spacing-vertical)}.anchorWithStickyNavbar_LWe7{scroll-margin-top:calc(var(--ifm-navbar-height) + .5rem)}.anchorWithHideOnScrollNavbar_WYt5{scroll-margin-top:.5rem}.hash-link{opacity:0;padding-left:.5rem;transition:opacity var(--ifm-transition-fast);-webkit-user-select:none;user-select:none}.hash-link:before{content:"#"}.img_ev3q{height:auto}.admonition_LlT9{margin-bottom:1em}.admonitionHeading_tbUL{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.3rem}.admonitionIcon_kALy{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_kALy svg{fill:var(--ifm-alert-foreground-color);display:inline-block;height:1.6em;width:1.6em}.tableOfContents_bqdL{position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.breadcrumbsContainer_Z_bl{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}.breadcrumbHomeIcon_OVgt{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}@media (min-width:768px){.md\:bottom-3{bottom:.75rem}.md\:top-44{top:11rem}.md\:ml-10{margin-left:2.5rem}.md\:block{display:block}.md\:grid{display:grid}.md\:h-\[600px\]{height:600px}.md\:max-w-\[70\%\]{max-width:70%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:text-5xl{font-size:3rem;line-height:1}}@media (min-width:997px){.collapseSidebarButton_PEFL,.expandButton_m80_{background-color:var(--docusaurus-collapse-button-bg);position:sticky}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_gvF7,.announcementBarPlaceholder_vyr4{flex-basis:50px}.searchBox_ZlJk{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.collapseSidebarButton_PEFL{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px}.collapseSidebarButtonIcon_kv0_{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_BlDH,[dir=rtl] .collapseSidebarButtonIcon_kv0_{transform:rotate(0)}.collapseSidebarButton_PEFL:focus,.collapseSidebarButton_PEFL:hover,.expandButton_m80_:focus,.expandButton_m80_:hover{background-color:var(--docusaurus-collapse-button-bg-hover)}.menuHtmlItem_M9Kj{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu_SIkG{flex-grow:1;padding:.5rem}@supports (scrollbar-gutter:stable){.menu_SIkG{padding:.5rem 0 .5rem .5rem;scrollbar-gutter:stable}}.menuWithAnnouncementBar_GW3s{margin-bottom:var(--docusaurus-announcement-bar-height)}.sidebar_njMd{display:flex;flex-direction:column;height:100%;max-height:100vh;padding-top:var(--ifm-navbar-height);position:sticky;top:0;transition:opacity 50ms;width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_wUlq{padding-top:0}.sidebarHidden_VK0M{height:0;opacity:0;overflow:hidden;visibility:hidden}.sidebarLogo_isFc{align-items:center;color:inherit!important;display:flex!important;margin:0 var(--ifm-navbar-padding-horizontal);max-height:var(--ifm-navbar-height);min-height:var(--ifm-navbar-height);text-decoration:none!important}.sidebarLogo_isFc img{height:2rem;margin-right:.5rem}.expandButton_m80_{align-items:center;display:flex;height:100%;justify-content:center;max-height:100vh;top:0;transition:background-color var(--ifm-transition-fast) ease}[dir=rtl] .expandButtonIcon_BlDH{transform:rotate(180deg)}.docSidebarContainer_b6E3{border-right:1px solid var(--ifm-toc-border-color);-webkit-clip-path:inset(0);clip-path:inset(0);display:block;margin-top:calc(var(--ifm-navbar-height)*-1);transition:width var(--ifm-transition-fast) ease;width:var(--doc-sidebar-width);will-change:width}.docSidebarContainerHidden_b3ry{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.docMainContainer_gTbr{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced_Uz_u{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_czyv{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}.lastUpdated_vwxv{text-align:right}.tocMobile_ITEo{display:none}.docItemCol_VOVn{max-width:75%!important}}@media (min-width:1024px){.lg\:top-56{top:14rem}.lg\:ml-14{margin-left:3.5rem}.lg\:max-w-\[60\%\]{max-width:60%}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1280px){.xl\:top-80{top:20rem}.xl\:h-\[750px\]{height:750px}.xl\:h-\[600px\]{height:600px}.xl\:w-2\/3{width:66.666667%}.xl\:max-w-7xl{max-width:80rem}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:flex-row{flex-direction:row}.xl\:items-center{align-items:center}.xl\:justify-around{justify-content:space-around}.xl\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1440px){.container{max-width:var(--ifm-container-width-xl)}}@media (max-width:996px){.col{--ifm-col-width:100%;flex-basis:var(--ifm-col-width);margin-left:0}.footer{--ifm-footer-padding-horizontal:0}.colorModeToggle_DEke,.footer__link-separator,.navbar__item,.sidebar_re4s,.tableOfContents_bqdL{display:none}.footer__col{margin-bottom:calc(var(--ifm-spacing-vertical)*3)}.footer__link-item{display:block}.hero{padding-left:0;padding-right:0}.navbar>.container,.navbar>.container-fluid{padding:0}.navbar__toggle{display:inherit}.navbar__search-input{width:9rem}.pills--block,.tabs--block{flex-direction:column}.searchBox_ZlJk{position:absolute;right:var(--ifm-navbar-padding-horizontal)}.docItemContainer_F8PC{padding:0 .3rem}}@media (max-width:576px){.markdown h1:first-child{--ifm-h1-font-size:2rem}.markdown>h2{--ifm-h2-font-size:1.5rem}.markdown>h3{--ifm-h3-font-size:1.25rem}.title_f1Hy{font-size:2rem}}@media (hover:hover){.backToTopButton_sjWU:hover{background-color:var(--ifm-color-emphasis-300)}}@media (pointer:fine){.thin-scrollbar{scrollbar-width:thin}.thin-scrollbar::-webkit-scrollbar{height:var(--ifm-scrollbar-size);width:var(--ifm-scrollbar-size)}.thin-scrollbar::-webkit-scrollbar-track{background:var(--ifm-scrollbar-track-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--ifm-scrollbar-thumb-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--ifm-scrollbar-thumb-hover-background-color)}}@media print{.announcementBar_mb4j,.footer,.menu,.navbar,.pagination-nav,.table-of-contents,.tocMobile_ITEo{display:none}.tabs{page-break-inside:avoid}.codeBlockLines_e6Vv{white-space:pre-wrap}} \ No newline at end of file diff --git a/assets/images/bidirectional-d4131451fdab99c761d3086d7e7efb70.jpg b/assets/images/bidirectional-d4131451fdab99c761d3086d7e7efb70.jpg new file mode 100644 index 000000000..0e0deae5e Binary files /dev/null and b/assets/images/bidirectional-d4131451fdab99c761d3086d7e7efb70.jpg differ diff --git a/assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg b/assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg new file mode 100644 index 000000000..05d7dc977 Binary files /dev/null and b/assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg differ diff --git a/assets/images/grandma-4f69b67909e231a6b983953601b687c2.jpg b/assets/images/grandma-4f69b67909e231a6b983953601b687c2.jpg new file mode 100644 index 000000000..3eb7f2e47 Binary files /dev/null and b/assets/images/grandma-4f69b67909e231a6b983953601b687c2.jpg differ diff --git a/assets/images/hero_chat-c30cffd17f60e5d4b33354a2ff05203d.jpg b/assets/images/hero_chat-c30cffd17f60e5d4b33354a2ff05203d.jpg new file mode 100644 index 000000000..516c26f4a Binary files /dev/null and b/assets/images/hero_chat-c30cffd17f60e5d4b33354a2ff05203d.jpg differ diff --git a/assets/images/hero_connected_devices-2b938373656ff77e284638a7b84b2eaa.jpg b/assets/images/hero_connected_devices-2b938373656ff77e284638a7b84b2eaa.jpg new file mode 100644 index 000000000..983b0851e Binary files /dev/null and b/assets/images/hero_connected_devices-2b938373656ff77e284638a7b84b2eaa.jpg differ diff --git a/assets/images/hero_serverless-ad3cb31c574eacca0ac862cea9ba807c.jpg b/assets/images/hero_serverless-ad3cb31c574eacca0ac862cea9ba807c.jpg new file mode 100644 index 000000000..ce0f228b2 Binary files /dev/null and b/assets/images/hero_serverless-ad3cb31c574eacca0ac862cea9ba807c.jpg differ diff --git a/assets/images/hero_stock-0deccb201f41d9fa5eea596bed507d3f.jpg b/assets/images/hero_stock-0deccb201f41d9fa5eea596bed507d3f.jpg new file mode 100644 index 000000000..6a2d8b5ed Binary files /dev/null and b/assets/images/hero_stock-0deccb201f41d9fa5eea596bed507d3f.jpg differ diff --git a/assets/images/http-04c681a1ce589e7355f3a2ca430c5082.jpg b/assets/images/http-04c681a1ce589e7355f3a2ca430c5082.jpg new file mode 100644 index 000000000..e55ed1d32 Binary files /dev/null and b/assets/images/http-04c681a1ce589e7355f3a2ca430c5082.jpg differ diff --git a/assets/images/metaverse_scene-ee98b441f38947091d7a20487f08d150.jpg b/assets/images/metaverse_scene-ee98b441f38947091d7a20487f08d150.jpg new file mode 100644 index 000000000..9e757ea6f Binary files /dev/null and b/assets/images/metaverse_scene-ee98b441f38947091d7a20487f08d150.jpg differ diff --git a/assets/images/scenarios-eab60a0b5a645c27b355710a716872ad.jpg b/assets/images/scenarios-eab60a0b5a645c27b355710a716872ad.jpg new file mode 100644 index 000000000..210c182dc Binary files /dev/null and b/assets/images/scenarios-eab60a0b5a645c27b355710a716872ad.jpg differ diff --git a/assets/images/typical-architecture-managed-socketio-467d864b66a7a799cc57abd245587796.jpg b/assets/images/typical-architecture-managed-socketio-467d864b66a7a799cc57abd245587796.jpg new file mode 100644 index 000000000..1ed363f3e Binary files /dev/null and b/assets/images/typical-architecture-managed-socketio-467d864b66a7a799cc57abd245587796.jpg differ diff --git a/assets/images/walkie_talkie-86467d9c47386511657e759425999a3f.jpg b/assets/images/walkie_talkie-86467d9c47386511657e759425999a3f.jpg new file mode 100644 index 000000000..0d75fed17 Binary files /dev/null and b/assets/images/walkie_talkie-86467d9c47386511657e759425999a3f.jpg differ diff --git a/assets/images/websocket-723ad73776e4551687f3c4331aa77e32.jpg b/assets/images/websocket-723ad73776e4551687f3c4331aa77e32.jpg new file mode 100644 index 000000000..f3e9a3313 Binary files /dev/null and b/assets/images/websocket-723ad73776e4551687f3c4331aa77e32.jpg differ diff --git a/assets/js/0d608b87.2c2d2c1e.js b/assets/js/0d608b87.2c2d2c1e.js new file mode 100644 index 000000000..cc788b112 --- /dev/null +++ b/assets/js/0d608b87.2c2d2c1e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2646],{8771:(e,t,a)=>{a.d(t,{Z:()=>o});var l,n=a(7294);function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...o}=e;return n.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2048 2048","aria-labelledby":a},o),t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M1024 25q141 0 272 36t244 104 207 160 161 207 103 245 37 272q0 165-50 318t-143 281-221 224-286 149q-3 1-9 1t-9 1q-24 0-38-14t-14-37v-140q0-69 1-141 0-51-15-103t-54-87q116-13 203-47t146-96 88-150 30-212q0-78-26-147t-79-128q11-28 16-58t5-60q0-39-8-77t-23-76q-5-2-11-2t-11 0q-32 0-67 10t-69 26-67 35-57 36q-125-35-256-35t-256 35q-25-17-57-36t-66-34-70-26-67-11h-11q-6 0-11 2-14 37-22 75t-9 78q0 30 5 60t16 58q-53 58-79 127t-26 148q0 122 29 211t88 150 146 97 203 48q-29 26-44 62t-21 75q-27 13-57 20t-60 7q-64 0-106-30t-75-82q-12-19-29-38t-37-34-43-24-48-10h-12q-8 0-15 3t-14 6-6 10q0 12 14 23t23 18l3 2q22 17 38 32t30 33 23 38 23 47q34 78 95 113t147 36q26 0 52-3t52-9v174q0 24-14 38t-39 14h-8q-5 0-9-2-157-51-286-147t-221-225-142-282-51-318q0-141 36-272t104-244 160-207 207-161T752 62t272-37z"})))}},6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(e){let{text:t,to:a,children:n,openInNewTab:r=!0,tabIndex:o=0,ariaLabel:s=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:r?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:o,"aria-label":s,role:"button"},n&&l.createElement("div",{className:"w-5"},n),l.createElement("div",null,t))}},9301:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294),n=a(5887);const r=function(e){let{lang:t,percent:a}=e,r=n.k.find((e=>e.language===t)).color;return l.createElement("div",{className:"flex items-center gap-1"},l.createElement("div",{className:"h-2 w-2 rounded-full",style:{backgroundColor:r}}),l.createElement("p",{className:"leading-3"},l.createElement("span",{className:"text-xs font-bold"},t)," ",l.createElement("span",{className:"text-xs"},a,"%")))}},8665:(e,t,a)=>{a.d(t,{Z:()=>i});var l,n,r=a(7294);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...s}=e;return r.createElement("svg",o({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},s),void 0===t?r.createElement("title",{id:a},"ExternalLink"):t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),n||(n=r.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const i=function(e){let{to:t,text:a="here",openInNewTab:l=!0}=e;return r.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:l?"_blank":""},a,r.createElement(s,{className:"icon_inline"}))}},7341:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(e){let{imgURL:t,ariaInfo:a="an image"}=e;return l.createElement("div",{className:"overflow-hidden pr-2 pb-2"},l.createElement("img",{src:t,className:"block w-[95%] rounded-2xl border border-gray-100 p-2 shadow-sm","aria-label":a}))}},5887:(e,t,a)=>{a.d(t,{k:()=>l});let l=[{language:"JavaScript",color:"#f1e05a"},{language:"C#",color:"#178600"},{language:"Python",color:"#3572A5"},{language:"Java",color:"#b07219"},{language:"Swift",color:"#F05138"},{language:"Kotlin",color:"#A97BFF"},{language:"Java",color:"#b07219"},{language:"HTML",color:"#e34c26"},{language:"CSS",color:"##563d7c"},{language:"SCSS",color:"#c6538c"}]},6546:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),n=a(1149),r=a(19);const o=function(e){let{overview:t,local:a,deploy:o,resources:s}=e;const[i,c]=l.useState("overview");return l.createElement("div",null,l.createElement("div",{className:"mb-8 w-full overflow-y-hidden overflow-x-scroll"},l.createElement(n.o,{"aria-label":"Details about the demo",selectedKey:i,onLinkClick:e=>{e&&c(e.props.itemKey)},headersOnly:!0},t&&l.createElement(r.M,{headerText:"Overview",itemKey:"overview"}),a&&l.createElement(r.M,{headerText:"Run locally",itemKey:"local"}),o&&l.createElement(r.M,{headerText:"One-click deploy to Azure",itemKey:"deploy"}),s&&l.createElement(r.M,{headerText:"Resources",itemKey:"resources"}))),l.createElement("div",{className:"font-sans font-light"},"overview"===i&&t,"local"===i&&a,"deploy"===i&&o,"resources"===i&&s))}},9014:(e,t,a)=>{a.d(t,{Z:()=>u});var l,n=a(7294);function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...o}=e;return n.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,viewBox:"0 0 18 18","aria-labelledby":a},o),t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M6.268.726h5.49a1.249 1.249 0 0 1 1.183.85l4.742 14.05a1.249 1.249 0 0 1-1.184 1.649h-5.352v-.005a1.284 1.284 0 0 1-.112.005h-.02a1.249 1.249 0 0 1-.745-.247L6.78 14.437l-.671 1.988a1.249 1.249 0 0 1-1.183.85H1.5a1.249 1.249 0 0 1-1.184-1.649L5.06 1.576a1.249 1.249 0 0 1 1.184-.85ZM5.787 12.53l5.041 3.745a.312.312 0 0 0 .187.062h.02a.312.312 0 0 0 .296-.412L8.777 8.358l-1.022 2.644-.116.3H4.152Zm10.712 3.807h-4.254a1.238 1.238 0 0 0-.026-.712L7.506 1.662h4.251a.312.312 0 0 1 .296.213l4.742 14.05a.312.312 0 0 1-.296.413Z",fillRule:"evenodd"})))},s=a.p+"assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg";var i=a(5033),c=a(7341),m=a(7029);const u=function(e){let{to:t}=e;return n.createElement("div",null,n.createElement("h2",{className:"text-4xl"},"One-click deploy to Azure"),n.createElement(m.Z,null,n.createElement("p",null,"Deploy this demo app to Azure with one single click. Note that you will need an Azure account.")),n.createElement(i.Z,{text:"Deploy to Azure",to:t},n.createElement(o,{className:"lightIcon"})),n.createElement("h2",{className:"mt-12 text-4xl"},"Visit your live demo"),n.createElement(m.Z,null,n.createElement("p",null,"Once the resources are provisioned, you can find ",n.createElement("code",null,"Outputs")," on the side bar. Open the link in your browser.")),n.createElement(c.Z,{imgURL:s,ariaInfo:"Blade outputs image",alt:"Blade outputs image"}))}},4043:(e,t,a)=>{a.d(t,{Z:()=>i});var l=a(7294),n=a(7029),r=a(4064);const o=function(e){let{text:t,language:a,title:n}=e;return l.createElement("div",{className:"mb-3"},n&&l.createElement("h5",{className:"font-bold"},n),l.createElement(r.Z1,{text:t,language:a,showLineNumbers:!0,codeBlock:!0,wrapLines:!0,theme:r.cL}))};var s=a(8665);const i=function(e){let{hub:t}=e;return l.createElement("div",null,l.createElement("h2",{className:"text-4xl"},"Prerequisites"),l.createElement(n.Z,{title:"To run this app locally, you will need the following"},l.createElement("ul",{className:"ml-5 list-disc "},l.createElement("li",{className:"mt-0"},"Node.js"),l.createElement("li",{className:"mt-0"},"Create an Azure Web PubSub resource"),l.createElement("li",{className:"mt-0"},l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"})," to tunnel traffic from Web PubSub to your localhost"))),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Install dependencies"),l.createElement(o,{text:"npm install",language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Start the app"),l.createElement(o,{text:'export WebPubSubConnectionString=""\n node server',language:"javascript",title:"Linux"}),l.createElement(o,{text:'set WebPubSubConnectionString=""\n node server',language:"javascript",title:"Windows"}),t&&l.createElement(l.Fragment,null,l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Use ",l.createElement("code",null,"awps-tunnel")," to tunnel traffic from Web PubSub service to localhost"),l.createElement(n.Z,null,l.createElement("p",null,"Install and run ",l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"}),":")),l.createElement(o,{text:`awps-tunnel run --hub ${t} --upstream http://localhost:8080`,language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Configure the event handler"),l.createElement(n.Z,null,l.createElement("p",null,"Event handler can be set from Azure Portal or through Azure CLI.\xa0",l.createElement(s.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler",text:"Here"}),"contains the detailed instructions of how to set it up."))))}},7744:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(){return l.createElement("div",null,"No additional resources for this sample application")}},8372:(e,t,a)=>{a.d(t,{Z:()=>c});var l=a(7294),n=a(9301),r=a(5887);const o=function(e){let{languages:t}=e;return l.createElement("div",{className:"my-4"},l.createElement("div",{className:"flex gap-10"},t.map((e=>l.createElement(n.Z,{lang:e.language,percent:e.percent,key:e.language})))),l.createElement("div",{className:"flex overflow-hidden rounded-full bg-gray-300"},t.map((e=>{let t=r.k.find((t=>t.language===e.language)).color;return l.createElement("div",{style:{backgroundColor:t,width:e.percent+"%"},className:"h-2 flex-auto",key:e.language})}))))};var s=a(5033),i=a(8771);const c=function(e){let{alert:t,leftSrc:a,rightSrc:n,description:r,languages:c,githubURL:m}=e;return l.createElement("div",{className:"pattern-dots-sm mb-10 relative"},t&&l.createElement("p",{className:"bg-red-100 py-2 text-center font-bold text-red-900 "},t),l.createElement("div",{className:`flex flex-col items-center ${a&&n?"gap-6":"w-full"} py-4 drop-shadow-xl xl:flex-row`},a&&l.createElement("iframe",{src:a,title:r,className:"h-[400px] w-[95%] xl:h-[600px]"}),n&&l.createElement("iframe",{src:n,title:r,className:"h-[400px] w-[95%] xl:h-[600px]"})),l.createElement("div",{className:"flex flex-col xl:flex-row xl:items-center xl:justify-around mt-8"},l.createElement(s.Z,{text:"View source",to:m},l.createElement(i.Z,{className:"lightIcon"})),l.createElement("div",{className:"w-[90%] xl:w-2/3"},l.createElement(o,{languages:c}))))}},7029:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(e){let{title:t,children:a}=e;return l.createElement("div",{className:"mt-5 mb-2"},l.createElement("h3",{className:"mb-1 font-sans font-semibold"},t),a)}},9480:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>x,contentTitle:()=>w,default:()=>z,frontMatter:()=>E,metadata:()=>f,toc:()=>y});var l=a(7462),n=a(7294),r=a(3905),o=a(8372),s=a(6546),i=a(7029),c=a(4043),m=a(9014),u=a(7744);const p=a(6694).o.find((e=>"demos/chat"===e.detailURL)),d=p.languages,b=p.githubRepo,h=p.deployLink;function g(){return n.createElement("div",null,n.createElement("h2",{className:"text-4xl"},"Overview"),n.createElement(i.Z,{title:"About the app"},n.createElement("p",null,"A simple real-time chat app demonstrating the use of JavaScript server SDK provided by Azure Web PubSub")),n.createElement(i.Z,{title:"Azure Web PubSub enables"},n.createElement("ul",{className:"ml-5 list-disc leading-5"},n.createElement("li",{className:"mt-0"},"Simple real-time chat between server and client"))),n.createElement("h2",{className:"mt-12 text-4xl"},"How it works?"),n.createElement(i.Z,{title:"Server side"},"Serve a static web page ",n.createElement("code",null,"public/index.html")," A REST API \xa0",n.createElement("code",null,"/negotiate")," which returns a url to connect to Web PubSub",n.createElement("ul",{className:"ml-5 list-disc"},n.createElement("li",{className:"mt-0"},"A simple Express server that serves a static web page ",n.createElement("code",null,"public/index.html")),n.createElement("li",{className:"mt-0"},"A REST API ",n.createElement("code",null,"/negotiate")," which returns a url to connect to Web PubSub"),n.createElement("li",{className:"mt-0"},"Listens for an ",n.createElement("code",null,"onConnected")," event to broadcast the joining of chat participants."),n.createElement("li",{className:"mt-0"},"Listens for an ",n.createElement("code",null,"message")," event to broadcast a use's chat message to all participants in a hub."))),n.createElement(i.Z,{title:"Client side"},n.createElement("li",null,"Using WebSocket API to initiate a WebSocket connection and listen for an ",n.createElement("code",null,"onmessage")," event to render chat messages in the browser.")))}const v=function(){return n.createElement(n.Fragment,null,n.createElement(o.Z,{leftSrc:"https://awps-demos-client-chat.azurewebsites.net/fancy.html",rightSrc:"https://awps-demos-client-chat.azurewebsites.net/fancy.html",description:"Real-time chat app demo",width:"340",languages:d,githubURL:b}),n.createElement("div",{className:"max-w-full overflow-hidden"},n.createElement(s.Z,{overview:n.createElement(g,null),local:n.createElement(c.Z,{hub:"sample_chat"}),resources:n.createElement(u.Z,null),deploy:n.createElement(m.Z,{to:h})})))},E={sidebar_position:1,slug:"/chat",title:"Simple chat app",tags:["JavaScript","Express.js"],description:"A simple chat app",hide_title:!0,custom_edit_url:null},w=void 0,f={unversionedId:"simple_chat_app",id:"simple_chat_app",title:"Simple chat app",description:"A simple chat app",source:"@site/docs/simple_chat_app.mdx",sourceDirName:".",slug:"/chat",permalink:"/azure-webpubsub/demos/chat",draft:!1,editUrl:null,tags:[{label:"JavaScript",permalink:"/azure-webpubsub/demos/tags/java-script"},{label:"Express.js",permalink:"/azure-webpubsub/demos/tags/express-js"}],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1,slug:"/chat",title:"Simple chat app",tags:["JavaScript","Express.js"],description:"A simple chat app",hide_title:!0,custom_edit_url:null},sidebar:"tutorialSidebar",next:{title:"Collaborative whiteboard",permalink:"/azure-webpubsub/demos/whiteboard"}},x={},y=[],N={toc:y};function z(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,l.Z)({},N,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)(v,{mdxType:"SimpleChatApp"}))}z.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/17896441.8e8a22a5.js b/assets/js/17896441.8e8a22a5.js new file mode 100644 index 000000000..94bb8706d --- /dev/null +++ b/assets/js/17896441.8e8a22a5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7918],{9055:(e,t,n)=>{n.r(t),n.d(t,{default:()=>ue});var a=n(7294),l=n(1944),r=n(902);const s=a.createContext(null);function o(e){let{children:t,content:n}=e;const l=function(e){return(0,a.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(n);return a.createElement(s.Provider,{value:l},t)}function c(){const e=(0,a.useContext)(s);if(null===e)throw new r.i6("DocProvider");return e}function i(){const{metadata:e,frontMatter:t,assets:n}=c();return a.createElement(l.d,{title:e.title,description:e.description,keywords:t.keywords,image:n.image??t.image})}var d=n(6010),m=n(7524),u=n(7462),v=n(5999),b=n(2244);function h(e){const{previous:t,next:n}=e;return a.createElement("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,v.I)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages navigation",description:"The ARIA label for the docs pagination"})},t&&a.createElement(b.Z,(0,u.Z)({},t,{subLabel:a.createElement(v.Z,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc"},"Previous")})),n&&a.createElement(b.Z,(0,u.Z)({},n,{subLabel:a.createElement(v.Z,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc"},"Next"),isNext:!0})))}function p(){const{metadata:e}=c();return a.createElement(h,{previous:e.previous,next:e.next})}var f=n(2263),E=n(9960),g=n(143),L=n(5281),N=n(373),k=n(4477);const _={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return a.createElement(v.Z,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:a.createElement("b",null,n.label)}},"This is unreleased documentation for {siteTitle} {versionLabel} version.")},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return a.createElement(v.Z,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:a.createElement("b",null,n.label)}},"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.")}};function Z(e){const t=_[e.versionMetadata.banner];return a.createElement(t,e)}function C(e){let{versionLabel:t,to:n,onClick:l}=e;return a.createElement(v.Z,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:a.createElement("b",null,a.createElement(E.Z,{to:n,onClick:l},a.createElement(v.Z,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label"},"latest version")))}},"For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).")}function x(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:l}}=(0,f.Z)(),{pluginId:r}=(0,g.gA)({failfast:!0}),{savePreferredVersionName:s}=(0,N.J)(r),{latestDocSuggestion:o,latestVersionSuggestion:c}=(0,g.Jo)(r),i=o??(m=c).docs.find((e=>e.id===m.mainDocId));var m;return a.createElement("div",{className:(0,d.Z)(t,L.k.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert"},a.createElement("div",null,a.createElement(Z,{siteTitle:l,versionMetadata:n})),a.createElement("div",{className:"margin-top--md"},a.createElement(C,{versionLabel:c.label,to:i.path,onClick:()=>s(c.name)})))}function T(e){let{className:t}=e;const n=(0,k.E)();return n.banner?a.createElement(x,{className:t,versionMetadata:n}):null}function H(e){let{className:t}=e;const n=(0,k.E)();return n.badge?a.createElement("span",{className:(0,d.Z)(t,L.k.docs.docVersionBadge,"badge badge--secondary")},a.createElement(v.Z,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label}},"Version: {versionLabel}")):null}function U(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:n}=e;return a.createElement(v.Z,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:a.createElement("b",null,a.createElement("time",{dateTime:new Date(1e3*t).toISOString()},n))}}," on {date}")}function y(e){let{lastUpdatedBy:t}=e;return a.createElement(v.Z,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:a.createElement("b",null,t)}}," by {user}")}function A(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:n,lastUpdatedBy:l}=e;return a.createElement("span",{className:L.k.common.lastUpdated},a.createElement(v.Z,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t&&n?a.createElement(U,{lastUpdatedAt:t,formattedLastUpdatedAt:n}):"",byUser:l?a.createElement(y,{lastUpdatedBy:l}):""}},"Last updated{atDate}{byUser}"),!1)}var w=n(4881),M=n(1526);const I="lastUpdated_vwxv";function B(e){return a.createElement("div",{className:(0,d.Z)(L.k.docs.docFooterTagsRow,"row margin-bottom--sm")},a.createElement("div",{className:"col"},a.createElement(M.Z,e)))}function O(e){let{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:l,formattedLastUpdatedAt:r}=e;return a.createElement("div",{className:(0,d.Z)(L.k.docs.docFooterEditMetaRow,"row")},a.createElement("div",{className:"col"},t&&a.createElement(w.Z,{editUrl:t})),a.createElement("div",{className:(0,d.Z)("col",I)},(n||l)&&a.createElement(A,{lastUpdatedAt:n,formattedLastUpdatedAt:r,lastUpdatedBy:l})))}function V(){const{metadata:e}=c(),{editUrl:t,lastUpdatedAt:n,formattedLastUpdatedAt:l,lastUpdatedBy:r,tags:s}=e,o=s.length>0,i=!!(t||n||r);return o||i?a.createElement("footer",{className:(0,d.Z)(L.k.docs.docFooter,"docusaurus-mt-lg")},o&&a.createElement(B,{tags:s}),i&&a.createElement(O,{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:r,formattedLastUpdatedAt:l})):null}var S=n(6043),P=n(3743);const D="tocCollapsibleButton_TO0P",R="tocCollapsibleButtonExpanded_MG3E";function z(e){let{collapsed:t,...n}=e;return a.createElement("button",(0,u.Z)({type:"button"},n,{className:(0,d.Z)("clean-btn",D,!t&&R,n.className)}),a.createElement(v.Z,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component"},"On this page"))}const F="tocCollapsible_ETCw",q="tocCollapsibleContent_vkbj",j="tocCollapsibleExpanded_sAul";function $(e){let{toc:t,className:n,minHeadingLevel:l,maxHeadingLevel:r}=e;const{collapsed:s,toggleCollapsed:o}=(0,S.u)({initialState:!0});return a.createElement("div",{className:(0,d.Z)(F,!s&&j,n)},a.createElement(z,{collapsed:s,onClick:o}),a.createElement(S.z,{lazy:!0,className:q,collapsed:s},a.createElement(P.Z,{toc:t,minHeadingLevel:l,maxHeadingLevel:r})))}const G="tocMobile_ITEo";function J(){const{toc:e,frontMatter:t}=c();return a.createElement($,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,d.Z)(L.k.docs.docTocMobile,G)})}var K=n(9407);function Q(){const{toc:e,frontMatter:t}=c();return a.createElement(K.Z,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:L.k.docs.docTocDesktop})}var W=n(2503),X=n(210);function Y(e){let{children:t}=e;const n=function(){const{metadata:e,frontMatter:t,contentTitle:n}=c();return t.hide_title||void 0!==n?null:e.title}();return a.createElement("div",{className:(0,d.Z)(L.k.docs.docMarkdown,"markdown")},n&&a.createElement("header",null,a.createElement(W.Z,{as:"h1"},n)),a.createElement(X.Z,null,t))}var ee=n(2802),te=n(8596),ne=n(4996);function ae(e){return a.createElement("svg",(0,u.Z)({viewBox:"0 0 24 24"},e),a.createElement("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"}))}const le={breadcrumbsContainer:"breadcrumbsContainer_Z_bl",breadcrumbHomeIcon:"breadcrumbHomeIcon_OVgt"};function re(e){let{children:t,href:n,isLast:l}=e;const r="breadcrumbs__link";return l?a.createElement("span",{className:r,itemProp:"name"},t):n?a.createElement(E.Z,{className:r,href:n,itemProp:"item"},a.createElement("span",{itemProp:"name"},t)):a.createElement("span",{className:r},t)}function se(e){let{children:t,active:n,index:l,addMicrodata:r}=e;return a.createElement("li",(0,u.Z)({},r&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},{className:(0,d.Z)("breadcrumbs__item",{"breadcrumbs__item--active":n})}),t,a.createElement("meta",{itemProp:"position",content:String(l+1)}))}function oe(){const e=(0,ne.Z)("/");return a.createElement("li",{className:"breadcrumbs__item"},a.createElement(E.Z,{"aria-label":(0,v.I)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:(0,d.Z)("breadcrumbs__link",le.breadcrumbsItemLink),href:e},a.createElement(ae,{className:le.breadcrumbHomeIcon})))}function ce(){const e=(0,ee.s1)(),t=(0,te.Ns)();return e?a.createElement("nav",{className:(0,d.Z)(L.k.docs.docBreadcrumbs,le.breadcrumbsContainer),"aria-label":(0,v.I)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"})},a.createElement("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList"},t&&a.createElement(oe,null),e.map(((t,n)=>{const l=n===e.length-1;return a.createElement(se,{key:n,active:l,index:n,addMicrodata:!!t.href},a.createElement(re,{href:t.href,isLast:l},t.label))})))):null}const ie="docItemContainer_Djhp",de="docItemCol_VOVn";function me(e){let{children:t}=e;const n=function(){const{frontMatter:e,toc:t}=c(),n=(0,m.i)(),l=e.hide_table_of_contents,r=!l&&t.length>0;return{hidden:l,mobile:r?a.createElement(J,null):void 0,desktop:!r||"desktop"!==n&&"ssr"!==n?void 0:a.createElement(Q,null)}}();return a.createElement("div",{className:"row"},a.createElement("div",{className:(0,d.Z)("col",!n.hidden&&de)},a.createElement(T,null),a.createElement("div",{className:ie},a.createElement("article",null,a.createElement(ce,null),a.createElement(H,null),n.mobile,a.createElement(Y,null,t),a.createElement(V,null)),a.createElement(p,null))),n.desktop&&a.createElement("div",{className:"col col--3"},n.desktop))}function ue(e){const t=`docs-doc-id-${e.content.metadata.unversionedId}`,n=e.content;return a.createElement(o,{content:e.content},a.createElement(l.FG,{className:t},a.createElement(i,null),a.createElement(me,null,a.createElement(n,null))))}},9407:(e,t,n)=>{n.d(t,{Z:()=>c});var a=n(7462),l=n(7294),r=n(6010),s=n(3743);const o="tableOfContents_bqdL";function c(e){let{className:t,...n}=e;return l.createElement("div",{className:(0,r.Z)(o,"thin-scrollbar",t)},l.createElement(s.Z,(0,a.Z)({},n,{linkClassName:"table-of-contents__link toc-highlight",linkActiveClassName:"table-of-contents__link--active"})))}},3743:(e,t,n)=>{n.d(t,{Z:()=>b});var a=n(7462),l=n(7294),r=n(6668);function s(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const a=n.slice(2,e.level);e.parentIndex=Math.max(...a),n[e.level]=t}));const a=[];return t.forEach((e=>{const{parentIndex:n,...l}=e;n>=0?t[n].children.push(l):a.push(l)})),a}function o(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return t.flatMap((e=>{const t=o({toc:e.children,minHeadingLevel:n,maxHeadingLevel:a});return function(e){return e.level>=n&&e.level<=a}(e)?[{...e,children:t}]:t}))}function c(e){const t=e.getBoundingClientRect();return t.top===t.bottom?c(e.parentNode):t}function i(e,t){let{anchorTopOffset:n}=t;const a=e.find((e=>c(e).top>=n));if(a){return function(e){return e.top>0&&e.bottom{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function m(e){const t=(0,l.useRef)(void 0),n=d();(0,l.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:a,linkActiveClassName:l,minHeadingLevel:r,maxHeadingLevel:s}=e;function o(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(a),o=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const a=[];for(let l=t;l<=n;l+=1)a.push(`h${l}.anchor`);return Array.from(document.querySelectorAll(a.join()))}({minHeadingLevel:r,maxHeadingLevel:s}),c=i(o,{anchorTopOffset:n.current}),d=e.find((e=>c&&c.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(l),e.classList.add(l),t.current=e):e.classList.remove(l)}(e,e===d)}))}return document.addEventListener("scroll",o),document.addEventListener("resize",o),o(),()=>{document.removeEventListener("scroll",o),document.removeEventListener("resize",o)}}),[e,n])}function u(e){let{toc:t,className:n,linkClassName:a,isChild:r}=e;return t.length?l.createElement("ul",{className:r?void 0:n},t.map((e=>l.createElement("li",{key:e.id},l.createElement("a",{href:`#${e.id}`,className:a??void 0,dangerouslySetInnerHTML:{__html:e.value}}),l.createElement(u,{isChild:!0,toc:e.children,className:n,linkClassName:a}))))):null}const v=l.memo(u);function b(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:c="table-of-contents__link",linkActiveClassName:i,minHeadingLevel:d,maxHeadingLevel:u,...b}=e;const h=(0,r.L)(),p=d??h.tableOfContents.minHeadingLevel,f=u??h.tableOfContents.maxHeadingLevel,E=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return(0,l.useMemo)((()=>o({toc:s(t),minHeadingLevel:n,maxHeadingLevel:a})),[t,n,a])}({toc:t,minHeadingLevel:p,maxHeadingLevel:f});return m((0,l.useMemo)((()=>{if(c&&i)return{linkClassName:c,linkActiveClassName:i,minHeadingLevel:p,maxHeadingLevel:f}}),[c,i,p,f])),l.createElement(v,(0,a.Z)({toc:E,className:n,linkClassName:c},b))}},4477:(e,t,n)=>{n.d(t,{E:()=>o,q:()=>s});var a=n(7294),l=n(902);const r=a.createContext(null);function s(e){let{children:t,version:n}=e;return a.createElement(r.Provider,{value:n},t)}function o(){const e=(0,a.useContext)(r);if(null===e)throw new l.i6("DocsVersionProvider");return e}}}]); \ No newline at end of file diff --git a/assets/js/1be78505.433e1c98.js b/assets/js/1be78505.433e1c98.js new file mode 100644 index 000000000..8a2c1ec34 --- /dev/null +++ b/assets/js/1be78505.433e1c98.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9514,4972],{9963:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Ie});var a=n(7294),l=n(6010),o=n(1944),r=n(5281),c=n(3320),i=n(2802),s=n(4477),d=n(1116),m=n(3285),u=n(5999),b=n(2466),p=n(5936);const h="backToTopButton_sjWU",E="backToTopButtonShow_xfvO";function f(){const{shown:e,scrollToTop:t}=function(e){let{threshold:t}=e;const[n,l]=(0,a.useState)(!1),o=(0,a.useRef)(!1),{startScroll:r,cancelScroll:c}=(0,b.Ct)();return(0,b.RF)(((e,n)=>{let{scrollY:a}=e;const r=null==n?void 0:n.scrollY;r&&(o.current?o.current=!1:a>=r?(c(),l(!1)):a{e.location.hash&&(o.current=!0,l(!1))})),{shown:n,scrollToTop:()=>r(0)}}({threshold:300});return a.createElement("button",{"aria-label":(0,u.I)({id:"theme.BackToTopButton.buttonAriaLabel",message:"Scroll back to top",description:"The ARIA label for the back to top button"}),className:(0,l.Z)("clean-btn",r.k.common.backToTopButton,h,e&&E),type:"button",onClick:t})}var g=n(6775),v=n(7524),_=n(6668),k=n(1327),C=n(7462);function I(e){return a.createElement("svg",(0,C.Z)({width:"20",height:"20","aria-hidden":"true"},e),a.createElement("g",{fill:"#7a7a7a"},a.createElement("path",{d:"M9.992 10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.55 0-1-.453-1-1 0-.2.059-.403.168-.551l4.629-6.942L.168 3.078A.939.939 0 010 2.528c0-.548.45-.997 1-.997h2.996c.352 0 .649.18.828.45L9.82 9.472c.11.148.172.347.172.55zm0 0"}),a.createElement("path",{d:"M19.98 10.023c0 .2-.058.399-.168.547l-4.996 7.492a.987.987 0 01-.828.454h-3c-.547 0-.996-.453-.996-1 0-.2.059-.403.168-.551l4.625-6.942-4.625-6.945a.939.939 0 01-.168-.55 1 1 0 01.996-.997h3c.348 0 .649.18.828.45l4.996 7.492c.11.148.168.347.168.55zm0 0"})))}const N="collapseSidebarButton_PEFL",S="collapseSidebarButtonIcon_kv0_";function Z(e){let{onClick:t}=e;return a.createElement("button",{type:"button",title:(0,u.I)({id:"theme.docs.sidebar.collapseButtonTitle",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),"aria-label":(0,u.I)({id:"theme.docs.sidebar.collapseButtonAriaLabel",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),className:(0,l.Z)("button button--secondary button--outline",N),onClick:t},a.createElement(I,{className:S}))}var x=n(9689),y=n(902);const T=Symbol("EmptyContext"),w=a.createContext(T);function L(e){let{children:t}=e;const[n,l]=(0,a.useState)(null),o=(0,a.useMemo)((()=>({expandedItem:n,setExpandedItem:l})),[n]);return a.createElement(w.Provider,{value:o},t)}var M=n(6043),A=n(8596),B=n(9960),F=n(2389);function P(e){let{categoryLabel:t,onClick:n}=e;return a.createElement("button",{"aria-label":(0,u.I)({id:"theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel",message:"Toggle the collapsible sidebar category '{label}'",description:"The ARIA label to toggle the collapsible sidebar category"},{label:t}),type:"button",className:"clean-btn menu__caret",onClick:n})}function H(e){let{item:t,onItemClick:n,activePath:o,level:c,index:s,...d}=e;const{items:m,label:u,collapsible:b,className:p,href:h}=t,{docs:{sidebar:{autoCollapseCategories:E}}}=(0,_.L)(),f=function(e){const t=(0,F.Z)();return(0,a.useMemo)((()=>e.href?e.href:!t&&e.collapsible?(0,i.Wl)(e):void 0),[e,t])}(t),g=(0,i._F)(t,o),v=(0,A.Mg)(h,o),{collapsed:k,setCollapsed:I}=(0,M.u)({initialState:()=>!!b&&(!g&&t.collapsed)}),{expandedItem:N,setExpandedItem:S}=function(){const e=(0,a.useContext)(w);if(e===T)throw new y.i6("DocSidebarItemsExpandedStateProvider");return e}(),Z=function(e){void 0===e&&(e=!k),S(e?null:s),I(e)};return function(e){let{isActive:t,collapsed:n,updateCollapsed:l}=e;const o=(0,y.D9)(t);(0,a.useEffect)((()=>{t&&!o&&n&&l(!1)}),[t,o,n,l])}({isActive:g,collapsed:k,updateCollapsed:Z}),(0,a.useEffect)((()=>{b&&null!=N&&N!==s&&E&&I(!0)}),[b,N,s,I,E]),a.createElement("li",{className:(0,l.Z)(r.k.docs.docSidebarItemCategory,r.k.docs.docSidebarItemCategoryLevel(c),"menu__list-item",{"menu__list-item--collapsed":k},p)},a.createElement("div",{className:(0,l.Z)("menu__list-item-collapsible",{"menu__list-item-collapsible--active":v})},a.createElement(B.Z,(0,C.Z)({className:(0,l.Z)("menu__link",{"menu__link--sublist":b,"menu__link--sublist-caret":!h&&b,"menu__link--active":g}),onClick:b?e=>{null==n||n(t),h?Z(!1):(e.preventDefault(),Z())}:()=>{null==n||n(t)},"aria-current":v?"page":void 0,"aria-expanded":b?!k:void 0,href:b?f??"#":f},d),u),h&&b&&a.createElement(P,{categoryLabel:u,onClick:e=>{e.preventDefault(),Z()}})),a.createElement(M.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:k},a.createElement(q,{items:m,tabIndex:k?-1:0,onItemClick:n,activePath:o,level:c+1})))}var W=n(3919),D=n(9471);const R="menuExternalLink_NmtK";function z(e){let{item:t,onItemClick:n,activePath:o,level:c,index:s,...d}=e;const{href:m,label:u,className:b,autoAddBaseUrl:p}=t,h=(0,i._F)(t,o),E=(0,W.Z)(m);return a.createElement("li",{className:(0,l.Z)(r.k.docs.docSidebarItemLink,r.k.docs.docSidebarItemLinkLevel(c),"menu__list-item",b),key:u},a.createElement(B.Z,(0,C.Z)({className:(0,l.Z)("menu__link",!E&&R,{"menu__link--active":h}),autoAddBaseUrl:p,"aria-current":h?"page":void 0,to:m},E&&{onClick:n?()=>n(t):void 0},d),u,!E&&a.createElement(D.Z,null)))}const U="menuHtmlItem_M9Kj";function V(e){let{item:t,level:n,index:o}=e;const{value:c,defaultStyle:i,className:s}=t;return a.createElement("li",{className:(0,l.Z)(r.k.docs.docSidebarItemLink,r.k.docs.docSidebarItemLinkLevel(n),i&&[U,"menu__list-item"],s),key:o,dangerouslySetInnerHTML:{__html:c}})}function K(e){let{item:t,...n}=e;switch(t.type){case"category":return a.createElement(H,(0,C.Z)({item:t},n));case"html":return a.createElement(V,(0,C.Z)({item:t},n));default:return a.createElement(z,(0,C.Z)({item:t},n))}}function j(e){let{items:t,...n}=e;return a.createElement(L,null,t.map(((e,t)=>a.createElement(K,(0,C.Z)({key:t,item:e,index:t},n)))))}const q=(0,a.memo)(j),G="menu_SIkG",Y="menuWithAnnouncementBar_GW3s";function O(e){let{path:t,sidebar:n,className:o}=e;const c=function(){const{isActive:e}=(0,x.nT)(),[t,n]=(0,a.useState)(e);return(0,b.RF)((t=>{let{scrollY:a}=t;e&&n(0===a)}),[e]),e&&t}();return a.createElement("nav",{className:(0,l.Z)("menu thin-scrollbar",G,c&&Y,o)},a.createElement("ul",{className:(0,l.Z)(r.k.docs.docSidebarMenu,"menu__list")},a.createElement(q,{items:n,activePath:t,level:1})))}const X="sidebar_njMd",J="sidebarWithHideableNavbar_wUlq",Q="sidebarHidden_VK0M",$="sidebarLogo_isFc";function ee(e){let{path:t,sidebar:n,onCollapse:o,isHidden:r}=e;const{navbar:{hideOnScroll:c},docs:{sidebar:{hideable:i}}}=(0,_.L)();return a.createElement("div",{className:(0,l.Z)(X,c&&J,r&&Q)},c&&a.createElement(k.Z,{tabIndex:-1,className:$}),a.createElement(O,{path:t,sidebar:n}),i&&a.createElement(Z,{onClick:o}))}const te=a.memo(ee);var ne=n(3102),ae=n(2961);const le=e=>{let{sidebar:t,path:n}=e;const o=(0,ae.e)();return a.createElement("ul",{className:(0,l.Z)(r.k.docs.docSidebarMenu,"menu__list")},a.createElement(q,{items:t,activePath:n,onItemClick:e=>{"category"===e.type&&e.href&&o.toggle(),"link"===e.type&&o.toggle()},level:1}))};function oe(e){return a.createElement(ne.Zo,{component:le,props:e})}const re=a.memo(oe);function ce(e){const t=(0,v.i)(),n="desktop"===t||"ssr"===t,l="mobile"===t;return a.createElement(a.Fragment,null,n&&a.createElement(te,e),l&&a.createElement(re,e))}const ie="expandButton_m80_",se="expandButtonIcon_BlDH";function de(e){let{toggleSidebar:t}=e;return a.createElement("div",{className:ie,title:(0,u.I)({id:"theme.docs.sidebar.expandButtonTitle",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),"aria-label":(0,u.I)({id:"theme.docs.sidebar.expandButtonAriaLabel",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),tabIndex:0,role:"button",onKeyDown:t,onClick:t},a.createElement(I,{className:se}))}const me="docSidebarContainer_b6E3",ue="docSidebarContainerHidden_b3ry";function be(e){let{children:t}=e;const n=(0,d.V)();return a.createElement(a.Fragment,{key:(null==n?void 0:n.name)??"noSidebar"},t)}function pe(e){let{sidebar:t,hiddenSidebarContainer:n,setHiddenSidebarContainer:o}=e;const{pathname:c}=(0,g.TH)(),[i,s]=(0,a.useState)(!1),d=(0,a.useCallback)((()=>{i&&s(!1),o((e=>!e))}),[o,i]);return a.createElement("aside",{className:(0,l.Z)(r.k.docs.docSidebarContainer,me,n&&ue),onTransitionEnd:e=>{e.currentTarget.classList.contains(me)&&n&&s(!0)}},a.createElement(be,null,a.createElement(ce,{sidebar:t,path:c,onCollapse:d,isHidden:i})),i&&a.createElement(de,{toggleSidebar:d}))}const he={docMainContainer:"docMainContainer_gTbr",docMainContainerEnhanced:"docMainContainerEnhanced_Uz_u",docItemWrapperEnhanced:"docItemWrapperEnhanced_czyv"};function Ee(e){let{hiddenSidebarContainer:t,children:n}=e;const o=(0,d.V)();return a.createElement("main",{className:(0,l.Z)(he.docMainContainer,(t||!o)&&he.docMainContainerEnhanced)},a.createElement("div",{className:(0,l.Z)("container padding-top--md padding-bottom--lg",he.docItemWrapper,t&&he.docItemWrapperEnhanced)},n))}const fe="docPage__5DB",ge="docsWrapper_BCFX";function ve(e){let{children:t}=e;const n=(0,d.V)(),[l,o]=(0,a.useState)(!1);return a.createElement(m.Z,{wrapperClassName:ge},a.createElement(f,null),a.createElement("div",{className:fe},n&&a.createElement(pe,{sidebar:n.items,hiddenSidebarContainer:l,setHiddenSidebarContainer:o}),a.createElement(Ee,{hiddenSidebarContainer:l},t)))}var _e=n(4972),ke=n(197);function Ce(e){const{versionMetadata:t}=e;return a.createElement(a.Fragment,null,a.createElement(ke.Z,{version:t.version,tag:(0,c.os)(t.pluginId,t.version)}),a.createElement(o.d,null,t.noIndex&&a.createElement("meta",{name:"robots",content:"noindex, nofollow"})))}function Ie(e){const{versionMetadata:t}=e,n=(0,i.hI)(e);if(!n)return a.createElement(_e.default,null);const{docElement:c,sidebarName:m,sidebarItems:u}=n;return a.createElement(a.Fragment,null,a.createElement(Ce,e),a.createElement(o.FG,{className:(0,l.Z)(r.k.wrapper.docsPages,r.k.page.docsDocPage,e.versionMetadata.className)},a.createElement(s.q,{version:t},a.createElement(d.b,{name:m,items:u},a.createElement(ve,null,c)))))}},4972:(e,t,n)=>{n.r(t),n.d(t,{default:()=>c});var a=n(7294),l=n(5999),o=n(1944),r=n(3285);function c(){return a.createElement(a.Fragment,null,a.createElement(o.d,{title:(0,l.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),a.createElement(r.Z,null,a.createElement("main",{className:"container margin-vert--xl"},a.createElement("div",{className:"row"},a.createElement("div",{className:"col col--6 col--offset-3"},a.createElement("h1",{className:"hero__title"},a.createElement(l.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),a.createElement("p",null,a.createElement(l.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),a.createElement("p",null,a.createElement(l.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"Please contact the owner of the site that linked you to the original URL and let them know their link is broken.")))))))}},4477:(e,t,n)=>{n.d(t,{E:()=>c,q:()=>r});var a=n(7294),l=n(902);const o=a.createContext(null);function r(e){let{children:t,version:n}=e;return a.createElement(o.Provider,{value:n},t)}function c(){const e=(0,a.useContext)(o);if(null===e)throw new l.i6("DocsVersionProvider");return e}}}]); \ No newline at end of file diff --git a/assets/js/1df93b7f.03fb2257.js b/assets/js/1df93b7f.03fb2257.js new file mode 100644 index 000000000..83c99645c --- /dev/null +++ b/assets/js/1df93b7f.03fb2257.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3237],{6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{text:t,to:a,children:r,openInNewTab:n=!0,tabIndex:i=0,ariaLabel:o=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:n?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:i,"aria-label":o,role:"button"},r&&l.createElement("div",{className:"w-5"},r),l.createElement("div",null,t))}},9301:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294),r=a(5887);const n=function(e){let{lang:t,percent:a}=e,n=r.k.find((e=>e.language===t)).color;return l.createElement("div",{className:"flex items-center gap-1"},l.createElement("div",{className:"h-2 w-2 rounded-full",style:{backgroundColor:n}}),l.createElement("p",{className:"leading-3"},l.createElement("span",{className:"text-xs font-bold"},t)," ",l.createElement("span",{className:"text-xs"},a,"%")))}},5887:(e,t,a)=>{a.d(t,{k:()=>l});let l=[{language:"JavaScript",color:"#f1e05a"},{language:"C#",color:"#178600"},{language:"Python",color:"#3572A5"},{language:"Java",color:"#b07219"},{language:"Swift",color:"#F05138"},{language:"Kotlin",color:"#A97BFF"},{language:"Java",color:"#b07219"},{language:"HTML",color:"#e34c26"},{language:"CSS",color:"##563d7c"},{language:"SCSS",color:"#c6538c"}]},94:(e,t,a)=>{a.r(t),a.d(t,{default:()=>A});var l=a(7294),r=a(2263),n=a(3285);const i=a.p+"assets/images/hero_stock-0deccb201f41d9fa5eea596bed507d3f.jpg",o=a.p+"assets/images/hero_chat-c30cffd17f60e5d4b33354a2ff05203d.jpg",s=a.p+"assets/images/hero_serverless-ad3cb31c574eacca0ac862cea9ba807c.jpg",c=a.p+"assets/images/hero_connected_devices-2b938373656ff77e284638a7b84b2eaa.jpg";const m=function(e){let{title:t,description:a,imageSrc:r}=e;return l.createElement("div",{className:"relative w-full"},l.createElement("section",{className:"absolute top-2 left-5 md:top-44 lg:top-56 xl:top-80"},l.createElement("h1",{className:"max-w-[90%] py-7 text-3xl font-bold text-gray-50 drop-shadow-md md:ml-10 md:max-w-[70%] md:text-5xl lg:ml-14 lg:max-w-[60%] xl:text-6xl"},t),l.createElement("p",{className:"max-w-3xl text-gray-200 md:ml-10 md:block md:max-w-[70%] lg:ml-14"},a)),l.createElement("img",{src:r,className:"h-[340px] w-full object-cover md:h-[600px] xl:h-[750px]","aria-label":a,alt:a}))};var u;function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...r}=e;return l.createElement("svg",d({width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-labelledby":a},r),t?l.createElement("title",{id:a},t):null,u||(u=l.createElement("path",{d:"M15.53 4.22a.75.75 0 0 1 0 1.06L8.81 12l6.72 6.72a.75.75 0 1 1-1.06 1.06l-7.25-7.25a.75.75 0 0 1 0-1.06l7.25-7.25a.75.75 0 0 1 1.06 0Z",fill:"#212121"})))};var b;function g(){return g=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...r}=e;return l.createElement("svg",g({width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-labelledby":a},r),t?l.createElement("title",{id:a},t):null,b||(b=l.createElement("path",{d:"M8.47 4.22a.75.75 0 0 0 0 1.06L15.19 12l-6.72 6.72a.75.75 0 1 0 1.06 1.06l7.25-7.25a.75.75 0 0 0 0-1.06L9.53 4.22a.75.75 0 0 0-1.06 0Z",fill:"#212121"})))};const f=function(e){let{direction:t,onClick:a,isShow:r,ariaLabel:n}=e;return l.createElement("button",{tab:"true",className:""+(r?"bg-gray-50-300 flex h-12 w-12 cursor-pointer items-center justify-center rounded-full bg-gray-50 opacity-90 hover:opacity-100 active:bg-gray-200":"opacity-0"),onClick:a,tabIndex:"0","aria-label":n},"left"===t?l.createElement(p,null):l.createElement(h,null))};function w(e){let{selected:t}=e;return t?l.createElement("div",{className:"h-2 w-2 rounded-full bg-gray-50"}):l.createElement("div",{className:"h-2 w-2 cursor-pointer rounded-full border border-gray-50"})}const v=function(e){let{number:t,currentIndex:a}=e;const r=[];for(let n=0;n{0!==e&&t((e=>e-1))},isShow:0!==e,tabIndex:"0",ariaLabel:"left button"}),l.createElement(f,{direction:"right",onClick:()=>{x.length!==e+1&&t((e=>e+1))},isShow:e!==a-1,tabIndex:"0",ariaLabel:"right button"})),l.createElement("div",{className:"absolute -bottom-12 left-1/2 z-50 flex -translate-x-1/2 transform gap-1 md:bottom-3"},l.createElement(v,{number:a,currentIndex:e})),l.createElement("div",{className:`${r} flex w-[calc(100%*4)] duration-500 ease-in-out`},x.map((e=>l.createElement(m,{title:e.title,description:e.description,imageSrc:e.img,key:e.id})))))}const y=function(){return l.createElement("section",{className:"bg-gray-50 px-4 py-28"},l.createElement("h1",{className:"py-3 text-center text-4xl font-bold"},"Azure Web PubSub"),l.createElement("p",{className:"text-center"},"Easily add real-time capabilities to your apps using your preferred tech stack."),l.createElement("p",{className:"text-center font-semibold"},"Reliable. Secure. Highly scalable."))};var L=a(6694),N=a(4996),k=(a(9301),a(5033));const j=function(e){let{title:t,description:a,imgURL:r,detailURL:n,languages:i,tabIndex:o,ariaLabel:s}=e;return i.slice(0,2),l.createElement("div",{className:"relative mb-5 w-full overflow-hidden rounded-xl shadow-lg"},l.createElement("img",{src:(0,N.Z)(r),className:"h-52 w-full object-cover",alt:a,"aria-label":a}),l.createElement("section",{className:"h-44 px-4 pt-3 pb-6"},l.createElement("h3",{className:"text-xl font-bold"},t),l.createElement("p",{className:"mt-1 mb-5 text-sm leading-5 text-gray-500"},a),l.createElement(k.Z,{text:"View details",to:n,tabIndex:"0",ariaLabel:s})))};const z=function(){return l.createElement("section",{className:"mt-4 "},l.createElement("h2",{className:"py-5 text-center text-2xl font-bold"},"Explore demos"),l.createElement("div",{className:"flex justify-center"},l.createElement("div",{className:"max-w-[90%] gap-y-2 gap-x-6 md:grid md:grid-cols-2 lg:grid-cols-3 xl:max-w-7xl xl:grid-cols-4"},L.o.map((e=>l.createElement(j,{title:e.title,description:e.description,imgURL:e.thumbnailURL,detailURL:e.detailURL,languages:e.languages,key:e.id,ariaLabel:e.buttonAriaLabel}))))))};const R=function(){const[e,t]=(0,l.useState)(!0);return(0,l.useEffect)((()=>{t(window.siteConsent&&window.siteConsent.isConsentRequired)})),l.createElement("footer",{className:"flex justify-center bg-gray-100 py-2 text-xs tracking-wider text-gray-600"},l.createElement("ul",{className:"flex gap-3"},l.createElement("li",null,l.createElement("h6",null,l.createElement("a",{href:"https://privacy.microsoft.com/en-us/privacystatement"},l.createElement("u",null,"Privacy")))),l.createElement("li",null,l.createElement("h6",null,l.createElement("a",{href:"https://www.microsoft.com/en-us/legal/terms-of-use"},l.createElement("u",null,"Terms of Use")))),l.createElement("li",null,l.createElement("h6",null,l.createElement("a",{href:"https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks"},l.createElement("u",null,"Trademarks")))),e&&l.createElement("li",{className:"cursor-pointer",onClick:()=>{window.siteConsent.manageConsent()}},"Manage cookies"),l.createElement("li",null,l.createElement("h6",null,`\xa9 Microsoft ${(new Date).getFullYear()}`))))};function A(){const{siteConfig:e}=(0,r.Z)();return l.createElement("div",null,l.createElement("div",{id:"cookie-banner"}),l.createElement(n.Z,{title:`${e.title}`,description:"Description will go into a meta tag in "},l.createElement("div",{className:"w-screen overflow-hidden"},l.createElement(E,null),l.createElement("main",null,l.createElement(y,null),l.createElement("div",{className:"mb-10 flex justify-center"},l.createElement(z,null))),l.createElement(R,null))))}}}]); \ No newline at end of file diff --git a/assets/js/2252.3fa558ad.js b/assets/js/2252.3fa558ad.js new file mode 100644 index 000000000..b52320b94 --- /dev/null +++ b/assets/js/2252.3fa558ad.js @@ -0,0 +1,2 @@ +/*! For license information please see 2252.3fa558ad.js.LICENSE.txt */ +(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2252],{1149:(e,t,n)=>{"use strict";n.d(t,{o:()=>zs});var r=n(655),o=n(7294);function i(){for(var e=[],t=0;t0){n.subComponentStyles={};var h=n.subComponentStyles,m=function(e){if(o.hasOwnProperty(e)){var t=o[e];h[e]=function(e){return i.apply(void 0,t.map((function(t){return"function"==typeof t?t(e):t})))}}};for(var d in o)m(d)}return n}function a(e){for(var t=[],n=1;n=0)i(s.split(" "));else{var u=o.argsFromClassName(s);u?i(u):-1===n.indexOf(s)&&n.push(s)}else Array.isArray(s)?i(s):"object"==typeof s&&r.push(s)}}return i(e),{classes:n,objects:r}}function B(e){M!==e&&(M=e)}function L(){return void 0===M&&(M="undefined"!=typeof document&&!!document.documentElement&&"rtl"===document.documentElement.getAttribute("dir")),M}function j(){return{rtl:L()}}M=L();var H,z={};var K={"user-select":1};function W(e,t){var n=function(){var e;if(!H){var t="undefined"!=typeof document?document:void 0,n="undefined"!=typeof navigator?navigator:void 0,r=null===(e=null==n?void 0:n.userAgent)||void 0===e?void 0:e.toLowerCase();H=t?{isWebkit:!(!t||!("WebkitAppearance"in t.documentElement.style)),isMoz:!!(r&&r.indexOf("firefox")>-1),isOpera:!!(r&&r.indexOf("opera")>-1),isMs:!(!n||!/rv:11.0/i.test(n.userAgent)&&!/Edge\/\d./i.test(navigator.userAgent))}:{isWebkit:!0,isMoz:!0,isOpera:!0,isMs:!0}}return H}(),r=e[t];if(K[r]){var o=e[t+1];K[r]&&(n.isWebkit&&e.push("-webkit-"+r,o),n.isMoz&&e.push("-moz-"+r,o),n.isMs&&e.push("-ms-"+r,o),n.isOpera&&e.push("-o-"+r,o))}}var q,U=["column-count","font-weight","flex","flex-grow","flex-shrink","fill-opacity","opacity","order","z-index","zoom"];function G(e,t){var n=e[t],r=e[t+1];if("number"==typeof r){var o=U.indexOf(n)>-1,i=n.indexOf("--")>-1,a=o||i?"":"px";e[t+1]=""+r+a}}var V="left",Z="right",Y=((q={}).left=Z,q.right=V,q),$={"w-resize":"e-resize","sw-resize":"se-resize","nw-resize":"ne-resize"};function X(e,t,n){if(e.rtl){var r=t[n];if(!r)return;var o=t[n+1];if("string"==typeof o&&o.indexOf("@noflip")>=0)t[n+1]=o.replace(/\s*(?:\/\*\s*)?\@noflip\b(?:\s*\*\/)?\s*?/g,"");else if(r.indexOf(V)>=0)t[n]=r.replace(V,Z);else if(r.indexOf(Z)>=0)t[n]=r.replace(Z,V);else if(String(o).indexOf(V)>=0)t[n+1]=o.replace(V,Z);else if(String(o).indexOf(Z)>=0)t[n+1]=o.replace(Z,V);else if(Y[r])t[n]=Y[r];else if($[o])t[n+1]=$[o];else switch(r){case"margin":case"padding":t[n+1]=function(e){if("string"==typeof e){var t=e.split(" ");if(4===t.length)return t[0]+" "+t[3]+" "+t[2]+" "+t[1]}return e}(o);break;case"box-shadow":t[n+1]=function(e,t){var n=e.split(" "),r=parseInt(n[t],10);return n[0]=n[0].replace(String(r),String(-1*r)),n.join(" ")}(o,0)}}}function J(e){var t=e&&e["&"];return t?t.displayName:void 0}var Q=/\:global\((.+?)\)/g;function ee(e,t){return e.indexOf(":global(")>=0?e.replace(Q,"$1"):0===e.indexOf(":")?t+e:e.indexOf("&")<0?t+" "+e:e}function te(e,t,n,r){void 0===t&&(t={__order:[]}),0===n.indexOf("@")?ne([r],t,n=n+"{"+e):n.indexOf(",")>-1?function(e){if(!Q.test(e))return e;for(var t=[],n=/\:global\((.+?)\)/g,r=null;r=n.exec(e);)r[1].indexOf(",")>-1&&t.push([r.index,r.index+r[0].length,r[1].split(",").map((function(e){return":global("+e.trim()+")"})).join(", ")]);return t.reverse().reduce((function(e,t){var n=t[0],r=t[1],o=t[2];return e.slice(0,n)+o+e.slice(r)}),e)}(n).split(",").map((function(e){return e.trim()})).forEach((function(n){return ne([r],t,ee(n,e))})):ne([r],t,ee(n,e))}function ne(e,t,n){void 0===t&&(t={__order:[]}),void 0===n&&(n="&");var r=P.getInstance(),o=t[n];o||(o={},t[n]=o,t.__order.push(n));for(var i=0,a=e;in&&t.push(e.substring(n,o)),n=o+1)}return n(e.cacheSize||50)){var f=l();(null===(s=null==f?void 0:f.FabricConfig)||void 0===s?void 0:s.enableClassNameCacheFullWarning)&&(console.warn("Styles are being recalculated too frequently. Cache miss rate is "+n+"/"+r+"."),console.trace()),t.clear(),n=0,e.disableCaching=!0}return u[be]}}function _e(e,t){return t=function(e){switch(e){case void 0:return"__undefined__";case null:return"__null__";default:return e}}(t),e.has(t)||e.set(t,new Map),e.get(t)}function Ce(e,t){if("function"==typeof t)if(t.__cachedInputs__)for(var n=0,r=t.__cachedInputs__;n0&&i>t)&&(o=$e(),i=0,a=Ke),u=o;for(var l=0;l=a&&(!t||s)?(l=n,c&&(r.clearTimeout(c),c=null),o=e.apply(r._parent,i)):null===c&&u&&(c=r.setTimeout(d,f)),o};return function(){for(var e=[],t=0;t=s&&(n=!0),d=t);var o=t-d,a=s-o,h=t-p,g=!1;return null!==c&&(h>=c&&f?g=!0:a=Math.min(a,c-h)),o>=s||g||n?m(t):null!==f&&e||!l||(f=r.setTimeout(v,a)),i},g=function(){return!!f},b=function(){for(var e=[],t=0;t-1)for(var a=n.split(/[ ,]+/),s=0;s1?e[1]:""}return this.__className},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"_disposables",{get:function(){return this.__disposables||(this.__disposables=[]),this.__disposables},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"_async",{get:function(){return this.__async||(this.__async=new it(this),this._disposables.push(this.__async)),this.__async},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"_events",{get:function(){return this.__events||(this.__events=new lt(this),this._disposables.push(this.__events)),this.__events},enumerable:!1,configurable:!0}),t.prototype._resolveRef=function(e){var t=this;return this.__resolves||(this.__resolves={}),this.__resolves[e]||(this.__resolves[e]=function(n){return t[e]=n}),this.__resolves[e]},t.prototype._updateComponentRef=function(e,t){void 0===t&&(t={}),e&&t&&e.componentRef!==t.componentRef&&(this._setComponentRef(e.componentRef,null),this._setComponentRef(t.componentRef,this))},t.prototype._warnDeprecations=function(e){(0,ct.b)(this.className,this.props,e)},t.prototype._warnMutuallyExclusive=function(e){this.className,this.props},t.prototype._warnConditionallyRequiredProps=function(e,t,n){this.className,this.props},t.prototype._setComponentRef=function(e,t){!this._skipComponentRefResolution&&e&&("function"==typeof e&&e(t),"object"==typeof e&&(e.current=t))}}(o.Component);function pt(e,t,n){var r=e[n],o=t[n];(r||o)&&(e[n]=function(){for(var e,t=[],n=0;n0&&t.current.naturalHeight>0||t.current.complete&&Mt.test(a))&&l(Ct.loaded)})),o.useEffect((function(){null==n||n(u)}),[u]);var c=o.useCallback((function(e){null==r||r(e),a&&l(Ct.loaded)}),[a,r]),d=o.useCallback((function(e){null==i||i(e),l(Ct.error)}),[i]);return[u,c,d]}(e,i),s=a[0],u=a[1],l=a[2],c=(0,xe.pq)(e,xe.it,["width","height"]),d=e.src,p=e.alt,f=e.width,h=e.height,m=e.shouldFadeIn,v=void 0===m||m,g=e.shouldStartVisible,b=e.className,y=e.imageFit,_=e.role,C=e.maximizeFrame,k=e.styles,x=e.theme,E=e.loading,w=function(e,t,n,r){var i=o.useRef(t),a=o.useRef();(void 0===a||i.current===Ct.notLoaded&&t===Ct.loaded)&&(a.current=function(e,t,n,r){var o=e.imageFit,i=e.width,a=e.height;if(void 0!==e.coverStyle)return e.coverStyle;if(t===Ct.loaded&&(o===yt.cover||o===yt.contain||o===yt.centerContain||o===yt.centerCover)&&n.current&&r.current){var s=void 0;if(s="number"==typeof i&&"number"==typeof a&&o!==yt.centerContain&&o!==yt.centerCover?i/a:r.current.clientWidth/r.current.clientHeight,n.current.naturalWidth/n.current.naturalHeight>s)return _t.landscape}return _t.portrait}(e,t,n,r));return i.current=t,a.current}(e,s,i,n),I=Tt(k,{theme:x,className:b,width:f,height:h,maximizeFrame:C,shouldFadeIn:v,shouldStartVisible:g,isLoaded:s===Ct.loaded||s===Ct.notLoaded&&e.shouldStartVisible,isLandscape:w===_t.landscape,isCenter:y===yt.center,isCenterContain:y===yt.centerContain,isCenterCover:y===yt.centerCover,isContain:y===yt.contain,isCover:y===yt.cover,isNone:y===yt.none,isError:s===Ct.error,isNotImageFit:void 0===y});return o.createElement("div",{className:I.root,style:{width:f,height:h},ref:n},o.createElement("img",(0,r.pi)({},c,{onLoad:u,onError:l,key:"fabricImage"+e.src||"",className:I.image,ref:Pt(i,t),src:d,alt:p,role:_,loading:E})))}));function Dt(){for(var e=[],t=0;t0&&(!function(e){void 0===e&&(e=3);3!==e&&2!==e||(Vn(qn.registeredStyles),qn.registeredStyles=[]);3!==e&&1!==e||(Vn(qn.registeredThemableStyles),qn.registeredThemableStyles=[])}(1),Un([].concat.apply([],e)))}}()}function Vn(e){e.forEach((function(e){var t=e&&e.styleElement;t&&t.parentElement&&t.parentElement.removeChild(t)}))}function Zn(e){var t=qn.theme,n=!1;return{styleString:(e||[]).map((function(e){var r=e.theme;if(r){n=!0;var o=t?t[r]:void 0,i=e.defaultValue||"inherit";return t&&!o&&console&&!(r in t)&&"undefined"!=typeof DEBUG&&DEBUG&&console.warn('Theming value not provided for "'.concat(r,'". Falling back to "').concat(i,'".')),o||i}return e.rawString})).join(""),themable:n}}var Yn,$n={themeDarker:"#004578",themeDark:"#005a9e",themeDarkAlt:"#106ebe",themePrimary:"#0078d4",themeSecondary:"#2b88d8",themeTertiary:"#71afe5",themeLight:"#c7e0f4",themeLighter:"#deecf9",themeLighterAlt:"#eff6fc",black:"#000000",blackTranslucent40:"rgba(0,0,0,.4)",neutralDark:"#201f1e",neutralPrimary:"#323130",neutralPrimaryAlt:"#3b3a39",neutralSecondary:"#605e5c",neutralSecondaryAlt:"#8a8886",neutralTertiary:"#a19f9d",neutralTertiaryAlt:"#c8c6c4",neutralQuaternary:"#d2d0ce",neutralQuaternaryAlt:"#e1dfdd",neutralLight:"#edebe9",neutralLighter:"#f3f2f1",neutralLighterAlt:"#faf9f8",accent:"#0078d4",white:"#ffffff",whiteTranslucent40:"rgba(255,255,255,.4)",yellowDark:"#d29200",yellow:"#ffb900",yellowLight:"#fff100",orange:"#d83b01",orangeLight:"#ea4300",orangeLighter:"#ff8c00",redDark:"#a4262c",red:"#e81123",magentaDark:"#5c005c",magenta:"#b4009e",magentaLight:"#e3008c",purpleDark:"#32145a",purple:"#5c2d91",purpleLight:"#b4a0ff",blueDark:"#002050",blueMid:"#00188f",blue:"#0078d4",blueLight:"#00bcf2",tealDark:"#004b50",teal:"#008272",tealLight:"#00b294",greenDark:"#004b1c",green:"#107c10",greenLight:"#bad80a"};!function(e){e.depth0="0 0 0 0 transparent",e.depth4="0 1.6px 3.6px 0 rgba(0, 0, 0, 0.132), 0 0.3px 0.9px 0 rgba(0, 0, 0, 0.108)",e.depth8="0 3.2px 7.2px 0 rgba(0, 0, 0, 0.132), 0 0.6px 1.8px 0 rgba(0, 0, 0, 0.108)",e.depth16="0 6.4px 14.4px 0 rgba(0, 0, 0, 0.132), 0 1.2px 3.6px 0 rgba(0, 0, 0, 0.108)",e.depth64="0 25.6px 57.6px 0 rgba(0, 0, 0, 0.22), 0 4.8px 14.4px 0 rgba(0, 0, 0, 0.18)"}(Yn||(Yn={}));var Xn={elevation4:Yn.depth4,elevation8:Yn.depth8,elevation16:Yn.depth16,elevation64:Yn.depth64,roundedCorner2:"2px",roundedCorner4:"4px",roundedCorner6:"6px"};function Jn(e){var t=P.getInstance(),n=ae(j(),e);if(!t.classNameFromKey(n)){var r=t.getClassName();t.insertRule("@font-face{"+n+"}",!0),t.cacheClassName(r,n,[],["font-face",n])}}var Qn,er="'Segoe UI', '"+Sn.WestEuropean+"'",tr={ar:Pn.Arabic,bg:Pn.Cyrillic,cs:Pn.EastEuropean,el:Pn.Greek,et:Pn.EastEuropean,he:Pn.Hebrew,hi:Pn.Hindi,hr:Pn.EastEuropean,hu:Pn.EastEuropean,ja:Pn.Japanese,kk:Pn.EastEuropean,ko:Pn.Korean,lt:Pn.EastEuropean,lv:Pn.EastEuropean,pl:Pn.EastEuropean,ru:Pn.Cyrillic,sk:Pn.EastEuropean,"sr-latn":Pn.EastEuropean,th:Pn.Thai,tr:Pn.EastEuropean,uk:Pn.Cyrillic,vi:Pn.Vietnamese,"zh-hans":Pn.ChineseSimplified,"zh-hant":Pn.ChineseTraditional,hy:Pn.Armenian,ka:Pn.Georgian};function nr(e,t,n){return{fontFamily:n,MozOsxFontSmoothing:"grayscale",WebkitFontSmoothing:"antialiased",fontSize:e,fontWeight:t}}var rr="language";var or,ir,ar=(or=function(e){if(void 0===e&&(e="sessionStorage"),void 0===Qn){var t=de(),n="localStorage"===e?function(e){var t=null;try{var n=l();t=n?n.localStorage.getItem(e):null}catch(Ks){}return t}(rr):"sessionStorage"===e?pe(rr):void 0;n&&(Qn=n),void 0===Qn&&t&&(Qn=t.documentElement.getAttribute("lang")),void 0===Qn&&(Qn="en")}return Qn}(),ir=function(e){for(var t in tr)if(tr.hasOwnProperty(t)&&e&&0===t.indexOf(e))return tr[t];return er}(or)+", 'Segoe UI', -apple-system, BlinkMacSystemFont, 'Roboto', 'Helvetica Neue', sans-serif",{tiny:nr(Tn.mini,Mn.regular,ir),xSmall:nr(Tn.xSmall,Mn.regular,ir),small:nr(Tn.small,Mn.regular,ir),smallPlus:nr(Tn.smallPlus,Mn.regular,ir),medium:nr(Tn.medium,Mn.regular,ir),mediumPlus:nr(Tn.mediumPlus,Mn.regular,ir),large:nr(Tn.large,Mn.regular,ir),xLarge:nr(Tn.xLarge,Mn.semibold,ir),xLargePlus:nr(Tn.xLargePlus,Mn.semibold,ir),xxLarge:nr(Tn.xxLarge,Mn.semibold,ir),xxLargePlus:nr(Tn.xxLargePlus,Mn.semibold,ir),superLarge:nr(Tn.superLarge,Mn.semibold,ir),mega:nr(Tn.mega,Mn.semibold,ir)});function sr(e,t,n,r){Jn({fontFamily:e="'"+e+"'",src:(void 0!==r?"local('"+r+"'),":"")+"url('"+t+".woff2') format('woff2'),url('"+t+".woff') format('woff')",fontWeight:n,fontStyle:"normal",fontDisplay:"swap"})}function ur(e,t,n,r,o){void 0===r&&(r="segoeui");var i=e+"/"+n+"/"+r;sr(t,i+"-light",Mn.light,o&&o+" Light"),sr(t,i+"-semilight",Mn.semilight,o&&o+" SemiLight"),sr(t,i+"-regular",Mn.regular,o),sr(t,i+"-semibold",Mn.semibold,o&&o+" SemiBold"),sr(t,i+"-bold",Mn.bold,o&&o+" Bold")}function lr(e){for(var t=[],n=1;n-1;e[r]=i?o:cr(e[r]||{},o,n)}}return n.pop(),e}function dr(e,t,n,o,i){return void 0===i&&(i=!1),function(e,t){var n="";!0===t&&(n=" /* @deprecated */");return e.listTextColor=e.listText+n,e.menuItemBackgroundChecked+=n,e.warningHighlight+=n,e.warningText=e.messageText+n,e.successText+=n,e}(pr(e,t,(0,r.pi)({primaryButtonBorder:"transparent",errorText:o?"#F1707B":"#a4262c",messageText:o?"#F3F2F1":"#323130",messageLink:o?"#6CB8F6":"#005A9E",messageLinkHovered:o?"#82C7FF":"#004578",infoIcon:o?"#C8C6C4":"#605e5c",errorIcon:o?"#F1707B":"#A80000",blockingIcon:o?"#442726":"#FDE7E9",warningIcon:o?"#C8C6C4":"#797775",severeWarningIcon:o?"#FCE100":"#D83B01",successIcon:o?"#92C353":"#107C10",infoBackground:o?"#323130":"#f3f2f1",errorBackground:o?"#442726":"#FDE7E9",blockingBackground:o?"#442726":"#FDE7E9",warningBackground:o?"#433519":"#FFF4CE",severeWarningBackground:o?"#4F2A0F":"#FED9CC",successBackground:o?"#393D1B":"#DFF6DD",warningHighlight:o?"#fff100":"#ffb900",successText:o?"#92c353":"#107C10"},n),o),i)}function pr(e,t,n,o,i){void 0===i&&(i=!1);var a={},s=e||{},u=s.white,l=s.black,c=s.themePrimary,d=s.themeDark,p=s.themeDarker,f=s.themeDarkAlt,h=s.themeLighter,m=s.neutralLight,v=s.neutralLighter,g=s.neutralDark,b=s.neutralQuaternary,y=s.neutralQuaternaryAlt,_=s.neutralPrimary,C=s.neutralSecondary,k=s.neutralSecondaryAlt,x=s.neutralTertiary,E=s.neutralTertiaryAlt,w=s.neutralLighterAlt,I=s.accent;return u&&(a.bodyBackground=u,a.bodyFrameBackground=u,a.accentButtonText=u,a.buttonBackground=u,a.primaryButtonText=u,a.primaryButtonTextHovered=u,a.primaryButtonTextPressed=u,a.inputBackground=u,a.inputForegroundChecked=u,a.listBackground=u,a.menuBackground=u,a.cardStandoutBackground=u),l&&(a.bodyTextChecked=l,a.buttonTextCheckedHovered=l),c&&(a.link=c,a.primaryButtonBackground=c,a.inputBackgroundChecked=c,a.inputIcon=c,a.inputFocusBorderAlt=c,a.menuIcon=c,a.menuHeader=c,a.accentButtonBackground=c),d&&(a.primaryButtonBackgroundPressed=d,a.inputBackgroundCheckedHovered=d,a.inputIconHovered=d),p&&(a.linkHovered=p),f&&(a.primaryButtonBackgroundHovered=f),h&&(a.inputPlaceholderBackgroundChecked=h),m&&(a.bodyBackgroundChecked=m,a.bodyFrameDivider=m,a.bodyDivider=m,a.variantBorder=m,a.buttonBackgroundCheckedHovered=m,a.buttonBackgroundPressed=m,a.listItemBackgroundChecked=m,a.listHeaderBackgroundPressed=m,a.menuItemBackgroundPressed=m,a.menuItemBackgroundChecked=m),v&&(a.bodyBackgroundHovered=v,a.buttonBackgroundHovered=v,a.buttonBackgroundDisabled=v,a.buttonBorderDisabled=v,a.primaryButtonBackgroundDisabled=v,a.disabledBackground=v,a.listItemBackgroundHovered=v,a.listHeaderBackgroundHovered=v,a.menuItemBackgroundHovered=v),b&&(a.primaryButtonTextDisabled=b,a.disabledSubtext=b),y&&(a.listItemBackgroundCheckedHovered=y),x&&(a.disabledBodyText=x,a.variantBorderHovered=(null==n?void 0:n.variantBorderHovered)||x,a.buttonTextDisabled=x,a.inputIconDisabled=x,a.disabledText=x),_&&(a.bodyText=_,a.actionLink=_,a.buttonText=_,a.inputBorderHovered=_,a.inputText=_,a.listText=_,a.menuItemText=_),w&&(a.bodyStandoutBackground=w,a.defaultStateBackground=w),g&&(a.actionLinkHovered=g,a.buttonTextHovered=g,a.buttonTextChecked=g,a.buttonTextPressed=g,a.inputTextHovered=g,a.menuItemTextHovered=g),C&&(a.bodySubtext=C,a.focusBorder=C,a.inputBorder=C,a.smallInputBorder=C,a.inputPlaceholderText=C),k&&(a.buttonBorder=k),E&&(a.disabledBodySubtext=E,a.disabledBorder=E,a.buttonBackgroundChecked=E,a.menuDivider=E),I&&(a.accentButtonBackground=I),(null==t?void 0:t.elevation4)&&(a.cardShadow=t.elevation4),!o&&(null==t?void 0:t.elevation8)?a.cardShadowHovered=t.elevation8:a.variantBorderHovered&&(a.cardShadowHovered="0 0 1px "+a.variantBorderHovered),a=(0,r.pi)((0,r.pi)({},a),n)}!function(e){if(e){var t=e+"/fonts";ur(t,Sn.Thai,"leelawadeeui-thai","leelawadeeui"),ur(t,Sn.Arabic,"segoeui-arabic"),ur(t,Sn.Cyrillic,"segoeui-cyrillic"),ur(t,Sn.EastEuropean,"segoeui-easteuropean"),ur(t,Sn.Greek,"segoeui-greek"),ur(t,Sn.Hebrew,"segoeui-hebrew"),ur(t,Sn.Vietnamese,"segoeui-vietnamese"),ur(t,Sn.WestEuropean,"segoeui-westeuropean","segoeui","Segoe UI"),ur(t,Pn.Selawik,"selawik","selawik"),ur(t,Sn.Armenian,"segoeui-armenian"),ur(t,Sn.Georgian,"segoeui-georgian"),sr("Leelawadee UI Web",t+"/leelawadeeui-thai/leelawadeeui-semilight",Mn.light),sr("Leelawadee UI Web",t+"/leelawadeeui-thai/leelawadeeui-bold",Mn.semibold)}}(function(){var e,t,n=null===(e=l())||void 0===e?void 0:e.FabricConfig;return null!==(t=null==n?void 0:n.fontBaseUrl)&&void 0!==t?t:"https://static2.sharepointonline.com/files/fabric/assets"}());var fr={s2:"4px",s1:"8px",m:"16px",l1:"20px",l2:"32px"};function hr(e,t){void 0===e&&(e={}),void 0===t&&(t=!1);var n=!!e.isInverted;return function(e,t){var n,r,o;void 0===t&&(t={});var i=lr({},e,t,{semanticColors:pr(t.palette,t.effects,t.semanticColors,void 0===t.isInverted?e.isInverted:t.isInverted)});if((null===(n=t.palette)||void 0===n?void 0:n.themePrimary)&&!(null===(r=t.palette)||void 0===r?void 0:r.accent)&&(i.palette.accent=t.palette.themePrimary),t.defaultFontStyle)for(var a=0,s=Object.keys(i.fonts);a=0,a=!!e&&"false"!==o&&("A"===e.tagName||"BUTTON"===e.tagName||"INPUT"===e.tagName||"TEXTAREA"===e.tagName||"SELECT"===e.tagName||"true"===o||i);return t?-1!==n&&a:a}function so(e){return!!(e&&e.getAttribute&&e.getAttribute("data-focuszone-id"))}function uo(e){return!(!e||!e.getAttribute||"true"!==e.getAttribute("data-is-sub-focuszone"))}function lo(e,t){return"true"!==function(e,t){var n=Je(e,(function(e){return e.hasAttribute(t)}));return n&&n.getAttribute(t)}(e,t)}var co,po=void 0;Dt({overflow:"hidden !important"});var fo="data-is-scrollable";function ho(e){for(var t=e,n=de(e);t&&t!==n.body;){if("true"===t.getAttribute(fo))return t;t=t.parentElement}for(t=e;t&&t!==n.body;){if("false"!==t.getAttribute(fo)){var r=getComputedStyle(t),o=r?r.getPropertyValue("overflow-y"):"";if(o&&("scroll"===o||"auto"===o))return t}t=t.parentElement}return t&&t!==n.body||(t=l(e)),t}var mo,vo="data-is-focusable",go="data-focuszone-id",bo="tabindex",yo="data-no-vertical-wrap",_o="data-no-horizontal-wrap",Co=999999999,ko=-999999999;function xo(e,t){var n;"function"==typeof MouseEvent?n=new MouseEvent("click",{ctrlKey:null==t?void 0:t.ctrlKey,metaKey:null==t?void 0:t.metaKey,shiftKey:null==t?void 0:t.shiftKey,altKey:null==t?void 0:t.altKey,bubbles:null==t?void 0:t.bubbles,cancelable:null==t?void 0:t.cancelable}):(n=document.createEvent("MouseEvents")).initMouseEvent("click",!!t&&t.bubbles,!!t&&t.cancelable,window,0,0,0,0,0,!!t&&t.ctrlKey,!!t&&t.altKey,!!t&&t.shiftKey,!!t&&t.metaKey,0,null),e.dispatchEvent(n)}var Eo,wo={},Io=new Set,So=["text","number","password","email","tel","url","search","textarea"],Po=!1,To=function(e){function t(n){var r,i,a,s,u=e.call(this,n)||this;u._root=o.createRef(),u._mergedRef=He(),u._onFocus=function(e){if(!u._portalContainsElement(e.target)){var t,n=u.props,r=n.onActiveElementChanged,o=n.doNotAllowFocusEventToPropagate,i=n.stopFocusPropagation,a=n.onFocusNotification,s=n.onFocus,l=n.shouldFocusInnerElementWhenReceivedFocus,c=n.defaultTabbableElement,d=u._isImmediateDescendantOfZone(e.target);if(d)t=e.target;else for(var p=e.target;p&&p!==u._root.current;){if(ao(p)&&u._isImmediateDescendantOfZone(p)){t=p;break}p=Xe(p,Po)}if(l&&e.target===u._root.current){var f=c&&"function"==typeof c&&u._root.current&&c(u._root.current);f&&ao(f)?(t=f,f.focus()):(u.focus(!0),u._activeElement&&(t=null))}var h=!u._activeElement;t&&t!==u._activeElement&&((d||h)&&u._setFocusAlignment(t,!0,!0),u._activeElement=t,h&&u._updateTabIndexes()),r&&r(u._activeElement,e),(i||o)&&e.stopPropagation(),s?s(e):a&&a()}},u._onBlur=function(){u._setParkedFocus(!1)},u._onMouseDown=function(e){if(!u._portalContainsElement(e.target)&&!u.props.disabled){for(var t=e.target,n=[];t&&t!==u._root.current;)n.push(t),t=Xe(t,Po);for(;n.length&&((t=n.pop())&&ao(t)&&u._setActiveElement(t,!0),!so(t)););}},u._onKeyDown=function(e,t){if(!u._portalContainsElement(e.target)){var n=u.props,r=n.direction,o=n.disabled,i=n.isInnerZoneKeystroke,a=n.pagingSupportDisabled,s=n.shouldEnterInnerZone;if(!(o||(u.props.onKeyDown&&u.props.onKeyDown(e),e.isDefaultPrevented()||u._getDocument().activeElement===u._root.current&&u._isInnerZone))){if((s&&s(e)||i&&i(e))&&u._isImmediateDescendantOfZone(e.target)){var l=u._getFirstInnerZone();if(l){if(!l.focus(!0))return}else{if(!uo(e.target))return;if(!u.focusElement(oo(e.target,e.target.firstChild,!0)))return}}else{if(e.altKey)return;switch(e.which){case Te:if(u._shouldRaiseClicksOnSpace&&u._tryInvokeClickForFocusable(e.target,e))break;return;case Fe:if(r!==Jr.vertical&&(u._preventDefaultWhenHandled(e),u._moveFocusLeft(t)))break;return;case Oe:if(r!==Jr.vertical&&(u._preventDefaultWhenHandled(e),u._moveFocusRight(t)))break;return;case Re:if(r!==Jr.horizontal&&(u._preventDefaultWhenHandled(e),u._moveFocusUp()))break;return;case Be:if(r!==Jr.horizontal&&(u._preventDefaultWhenHandled(e),u._moveFocusDown()))break;return;case Ne:if(!a&&u._moveFocusPaging(!0))break;return;case Me:if(!a&&u._moveFocusPaging(!1))break;return;case we:if(u.props.allowTabKey||u.props.handleTabKey===Qr||u.props.handleTabKey===eo&&u._isElementInput(e.target)){var c=!1;if(u._processingTabKey=!0,r!==Jr.vertical&&u._shouldWrapFocus(u._activeElement,_o))c=(me(t)?!e.shiftKey:e.shiftKey)?u._moveFocusLeft(t):u._moveFocusRight(t);else c=e.shiftKey?u._moveFocusUp():u._moveFocusDown();if(u._processingTabKey=!1,c)break;u.props.shouldResetActiveElementWhenTabFromZone&&(u._activeElement=null)}return;case Ae:if(u._isContentEditableElement(e.target)||u._isElementInput(e.target)&&!u._shouldInputLoseFocus(e.target,!1))return!1;var d=u._root.current&&u._root.current.firstChild;if(u._root.current&&d&&u.focusElement(oo(u._root.current,d,!0)))break;return;case De:if(u._isContentEditableElement(e.target)||u._isElementInput(e.target)&&!u._shouldInputLoseFocus(e.target,!0))return!1;var p=u._root.current&&u._root.current.lastChild;if(u._root.current&&u.focusElement(ro(u._root.current,p,!0,!0,!0)))break;return;case Ie:if(u._shouldRaiseClicksOnEnter&&u._tryInvokeClickForFocusable(e.target,e))break;return;default:return}}e.preventDefault(),e.stopPropagation()}}},u._getHorizontalDistanceFromCenter=function(e,t,n){var r=u._focusAlignment.left||u._focusAlignment.x||0,o=Math.floor(n.top),i=Math.floor(t.bottom),a=Math.floor(n.bottom),s=Math.floor(t.top);return e&&o>i||!e&&a=n.left&&r<=n.left+n.width?0:Math.abs(n.left+n.width/2-r):u._shouldWrapFocus(u._activeElement,yo)?Co:ko},(0,ot.l)(u),u._id=D("FocusZone"),u._focusAlignment={left:0,top:0},u._processingTabKey=!1;var l=null===(i=null!==(r=n.shouldRaiseClicks)&&void 0!==r?r:t.defaultProps.shouldRaiseClicks)||void 0===i||i;return u._shouldRaiseClicksOnEnter=null!==(a=n.shouldRaiseClicksOnEnter)&&void 0!==a?a:l,u._shouldRaiseClicksOnSpace=null!==(s=n.shouldRaiseClicksOnSpace)&&void 0!==s?s:l,u}return(0,r.ZT)(t,e),t.getOuterZones=function(){return Io.size},t._onKeyDownCapture=function(e){e.which===we&&Io.forEach((function(e){return e._updateTabIndexes()}))},t.prototype.componentDidMount=function(){var e=this._root.current;if(wo[this._id]=this,e){this._windowElement=l(e);for(var n=Xe(e,Po);n&&n!==this._getDocument().body&&1===n.nodeType;){if(so(n)){this._isInnerZone=!0;break}n=Xe(n,Po)}this._isInnerZone||(Io.add(this),this._windowElement&&1===Io.size&&this._windowElement.addEventListener("keydown",t._onKeyDownCapture,!0)),this._root.current&&this._root.current.addEventListener("blur",this._onBlur,!0),this._updateTabIndexes(),this.props.defaultTabbableElement&&"string"==typeof this.props.defaultTabbableElement?this._activeElement=this._getDocument().querySelector(this.props.defaultTabbableElement):this.props.defaultActiveElement&&(this._activeElement=this._getDocument().querySelector(this.props.defaultActiveElement)),this.props.shouldFocusOnMount&&this.focus()}},t.prototype.componentDidUpdate=function(){var e=this._root.current,t=this._getDocument();if((this._activeElement&&!to(this._root.current,this._activeElement,Po)||this._defaultFocusElement&&!to(this._root.current,this._defaultFocusElement,Po))&&(this._activeElement=null,this._defaultFocusElement=null,this._updateTabIndexes()),!this.props.preventFocusRestoration&&t&&this._lastIndexPath&&(t.activeElement===t.body||null===t.activeElement||t.activeElement===e)){var n=function(e,t){for(var n=e,r=0,o=t;r-1&&(-1===i||c=0&&c<0)break}}while(o);if(a&&a!==this._activeElement)s=!0,this.focusElement(a);else if(this.props.isCircularNavigation&&r)return e?this.focusElement(oo(this._root.current,this._root.current.firstElementChild,!0)):this.focusElement(ro(this._root.current,this._root.current.lastElementChild,!0,!0,!0));return s},t.prototype._moveFocusDown=function(){var e=this,t=-1,n=this._focusAlignment.left||this._focusAlignment.x||0;return!!this._moveFocus(!0,(function(r,o){var i=-1,a=Math.floor(o.top),s=Math.floor(r.bottom);return a=s||a===t)&&(t=a,i=n>=o.left&&n<=o.left+o.width?0:Math.abs(o.left+o.width/2-n)),i)}))&&(this._setFocusAlignment(this._activeElement,!1,!0),!0)},t.prototype._moveFocusUp=function(){var e=this,t=-1,n=this._focusAlignment.left||this._focusAlignment.x||0;return!!this._moveFocus(!1,(function(r,o){var i=-1,a=Math.floor(o.bottom),s=Math.floor(o.top),u=Math.floor(r.top);return a>u?e._shouldWrapFocus(e._activeElement,yo)?Co:ko:((-1===t&&a<=u||s===t)&&(t=s,i=n>=o.left&&n<=o.left+o.width?0:Math.abs(o.left+o.width/2-n)),i)}))&&(this._setFocusAlignment(this._activeElement,!1,!0),!0)},t.prototype._moveFocusLeft=function(e){var t=this,n=this._shouldWrapFocus(this._activeElement,_o);return!!this._moveFocus(me(e),(function(r,o){var i=-1;return(me(e)?parseFloat(o.top.toFixed(3))parseFloat(r.top.toFixed(3)))&&o.right<=r.right&&t.props.direction!==Jr.vertical?i=r.right-o.right:n||(i=ko),i}),void 0,n)&&(this._setFocusAlignment(this._activeElement,!0,!1),!0)},t.prototype._moveFocusRight=function(e){var t=this,n=this._shouldWrapFocus(this._activeElement,_o);return!!this._moveFocus(!me(e),(function(r,o){var i=-1;return(me(e)?parseFloat(o.bottom.toFixed(3))>parseFloat(r.top.toFixed(3)):parseFloat(o.top.toFixed(3))=r.left&&t.props.direction!==Jr.vertical?i=o.left-r.left:n||(i=ko),i}),void 0,n)&&(this._setFocusAlignment(this._activeElement,!0,!1),!0)},t.prototype._moveFocusPaging=function(e,t){void 0===t&&(t=!0);var n=this._activeElement;if(!n||!this._root.current)return!1;if(this._isElementInput(n)&&!this._shouldInputLoseFocus(n,e))return!1;var r=ho(n);if(!r)return!1;var o=-1,i=void 0,a=-1,s=-1,u=r.clientHeight,l=n.getBoundingClientRect();do{if(n=e?oo(this._root.current,n):ro(this._root.current,n)){var c=n.getBoundingClientRect(),d=Math.floor(c.top),p=Math.floor(l.bottom),f=Math.floor(c.bottom),h=Math.floor(l.top),m=this._getHorizontalDistanceFromCenter(e,l,c);if(e&&d>p+u||!e&&f-1&&(e&&d>a?(a=d,o=m,i=n):!e&&f-1){var n=e.selectionStart,r=n!==e.selectionEnd,o=e.value,i=e.readOnly;if(r||n>0&&!t&&!i||n!==o.length&&t&&!i||this.props.handleTabKey&&(!this.props.shouldInputLoseFocusOnArrowKey||!this.props.shouldInputLoseFocusOnArrowKey(e)))return!1}return!0},t.prototype._shouldWrapFocus=function(e,t){return!this.props.checkForNoWrap||lo(e,t)},t.prototype._portalContainsElement=function(e){return e&&!!this._root.current&&et(e,this._root.current)},t.prototype._getDocument=function(){return de(this._root.current)},t.defaultProps={isCircularNavigation:!1,direction:Jr.bidirectional,shouldRaiseClicks:!0},t}(o.Component);function Mo(e){var t;if(void 0===Eo||e){var n=l(),r=null===(t=null==n?void 0:n.navigator)||void 0===t?void 0:t.userAgent;Eo=!!r&&-1!==r.indexOf("Macintosh")}return!!Eo}var No,Do,Ao=function(){return!!(window&&window.navigator&&window.navigator.userAgent)&&/iPad|iPhone|iPod/i.test(window.navigator.userAgent)};function Fo(e,t){for(var n=(0,r.pi)({},t),o=0,i=Object.keys(e);ot.bottom)&&(!(e.leftt.right)))}function Uo(e,t){var n=[];return e.topt.bottom&&n.push(No.bottom),e.leftt.right&&n.push(No.right),n}function Go(e,t){return e[No[t]]}function Vo(e,t,n){return e[No[t]]=n,e}function Zo(e,t){var n=ai(t);return(Go(e,n.positiveEdge)+Go(e,n.negativeEdge))/2}function Yo(e,t){return e>0?t:-1*t}function $o(e,t){return Yo(e,Go(t,e))}function Xo(e,t,n){return Yo(n,Go(e,n)-Go(t,n))}function Jo(e,t,n,r){void 0===r&&(r=!0);var o=Go(e,t)-n,i=Vo(e,t,n);return r&&(i=Vo(e,-1*t,Go(e,-1*t)-o)),i}function Qo(e,t,n,r){return void 0===r&&(r=0),Jo(e,n,Go(t,n)+Yo(n,r))}function ei(e,t,n){return $o(n,e)>$o(n,t)}function ti(e,t){for(var n=0,r=0,o=Uo(e,t);r0&&(i.indexOf(-1*u)>-1?u*=-1:(l=u,u=i.slice(-1)[0]),s=ii(e,t,{targetEdge:u,alignmentEdge:l},o))}return{elementRectangle:s=ii(e,t,{targetEdge:c,alignmentEdge:d},o),targetEdge:c,alignmentEdge:d}}(e,t,n,r,o));var c=Uo(l.elementRectangle,n),d=i?-l.targetEdge:void 0;if(c.length>0)if(u)if(l.alignmentEdge&&c.indexOf(-1*l.alignmentEdge)>-1){var p=function(e,t,n,r){var o=e.alignmentEdge,i=e.targetEdge,a=-1*o;return{elementRectangle:ii(e.elementRectangle,t,{targetEdge:i,alignmentEdge:a},n,r),targetEdge:i,alignmentEdge:a}}(l,t,o,a);if(qo(p.elementRectangle,n))return p;l=ri(Uo(p.elementRectangle,n),l,n,d)}else l=ri(c,l,n,d);else l=ri(c,l,n,d);return l}function ri(e,t,n,r){for(var o=0,i=e;oMath.abs(Xo(e,n,-1*t))?-1*t:t}function ui(e,t,n,r,o,i,a,s){var u,l={},c=mi(t),d=i?n:-1*n,p=o||ai(n).positiveEdge;return a&&!function(e,t,n){return void 0!==n&&Go(e,t)===Go(n,t)}(e,(u=p,-1*u),r)||(p=si(e,p,r)),l[No[d]]=Xo(e,c,d),l[No[p]]=Xo(e,c,p),s&&(l[No[-1*d]]=Xo(e,c,-1*d),l[No[-1*p]]=Xo(e,c,-1*p)),l}function li(e){return Math.sqrt(e*e*2)}function ci(e,t,n){if(void 0===e&&(e=Wr),n)return{alignmentEdge:n.alignmentEdge,isAuto:n.isAuto,targetEdge:n.targetEdge};var o=(0,r.pi)({},Wo[e]);return me()?(o.alignmentEdge&&o.alignmentEdge%2==0&&(o.alignmentEdge=-1*o.alignmentEdge),void 0!==t?Wo[t]:o):o}function di(e,t,n){var r=Zo(t,e),o=Zo(n,e),i=ai(e),a=i.positiveEdge,s=i.negativeEdge;return r<=o?a:s}function pi(e,t,n,r,o,i,a){var s=ii(e,t,r,o,a);return qo(s,n)?{elementRectangle:s,targetEdge:r.targetEdge,alignmentEdge:r.alignmentEdge}:ni(s,t,n,r,o,i,a)}function fi(e,t,n){var o=-1*e.targetEdge,i=new zo(0,e.elementRectangle.width,0,e.elementRectangle.height),a={},s=si(e.elementRectangle,e.alignmentEdge?e.alignmentEdge:ai(o).positiveEdge,n),u=Xo(e.elementRectangle,e.targetRectangle,o)>Math.abs(Go(t,o));return a[No[o]]=Go(t,o),a[No[s]]=Xo(t,i,s),{elementPosition:(0,r.pi)({},a),closestEdge:di(e.targetEdge,t,i),targetEdge:o,hideBeak:!u}}function hi(e,t){var n=t.targetRectangle,r=ai(t.targetEdge),o=r.positiveEdge,i=r.negativeEdge,a=Zo(n,t.targetEdge),s=new zo(e/2,t.elementRectangle.width-e/2,e/2,t.elementRectangle.height-e/2),u=new zo(0,e,0,e);return ei(u=oi(u=Jo(u,-1*t.targetEdge,-e/2),-1*t.targetEdge,a-$o(o,t.elementRectangle)),s,o)?ei(u,s,i)||(u=Qo(u,s,i)):u=Qo(u,s,o),u}function mi(e){var t=e.getBoundingClientRect();return new zo(t.left,t.right,t.top,t.bottom)}function vi(e){return new zo(e.left,e.right,e.top,e.bottom)}function gi(e,t,n,o){var i=e.gapSpace?e.gapSpace:0,a=function(e,t){var n;if(t){if(t.preventDefault){var r=t;n=new zo(r.clientX,r.clientX,r.clientY,r.clientY)}else if(t.getBoundingClientRect)n=mi(t);else{var o=t,i=o.left||o.x,a=o.top||o.y,s=o.right||i,u=o.bottom||a;n=new zo(i,s,a,u)}if(!qo(n,e))for(var l=0,c=Uo(n,e);l0&&s>o&&(r=s-o>1)}i!==r&&a(r)}})),function(){return n.dispose()}})),i}(n,i),v=o.useCallback((function(e){if(e.which===Pe)h&&(h(e),e.preventDefault(),e.stopPropagation())}),[h]);return Ei(Ii(),"keydown",v),o.createElement("div",(0,r.pi)({ref:a},(0,xe.pq)(n,xe.n7),{className:u,role:s,"aria-label":l,"aria-labelledby":c,"aria-describedby":d,onKeyDown:v,style:(0,r.pi)({overflowY:m?"scroll":void 0,outline:"none"},p)}),f)}));function Di(e,t){var n=o.useRef(),r=o.useRef(null),i=Ii();if(!e||e!==n.current||"string"==typeof e){var a=null==t?void 0:t.current;if(e)if("string"==typeof e){var s=de(a);r.current=s?s.querySelector(e):null}else r.current="stopPropagation"in e||"getBoundingClientRect"in e?e:"current"in e?e.current:e;n.current=e}return[r,i]}Ni.displayName="Popup";var Ai=((Mi={})[No.top]=Dn.slideUpIn10,Mi[No.bottom]=Dn.slideDownIn10,Mi[No.left]=Dn.slideLeftIn10,Mi[No.right]=Dn.slideRightIn10,Mi),Fi=0,Ri=0,Oi={opacity:0,filter:"opacity(0)",pointerEvents:"none"},Bi=["role","aria-roledescription"],Li={preventDismissOnLostFocus:!1,preventDismissOnScroll:!1,preventDismissOnResize:!1,isBeakVisible:!0,beakWidth:16,gapSpace:0,minPagePadding:8,directionalHint:Wr},ji=ye({disableCaching:!0});function Hi(e,t,n,i,a){var s=o.useState(),u=s[0],l=s[1],c=o.useRef(0),d=o.useRef(),p=xi(),f=e.hidden,h=e.target,m=e.finalHeight,v=e.calloutMaxHeight,g=e.onPositioned,b=e.directionalHint;return o.useEffect((function(){if(!f){var o=p.requestAnimationFrame((function(){var o,s,p,f;if(t.current&&n){var b=(0,r.pi)((0,r.pi)({},e),{target:i.current,bounds:a()}),y=n.cloneNode(!0);y.style.maxHeight=v?""+v:"",y.style.visibility="hidden",null===(o=n.parentElement)||void 0===o||o.appendChild(y);var _=d.current===h?u:void 0,C=m?_i(b,t.current,y,_):function(e,t,n,r){return yi(e,t,n,r)}(b,t.current,y,_);null===(s=n.parentElement)||void 0===s||s.removeChild(y),!u&&C||u&&C&&(f=C,!Wi((p=u).elementPosition,f.elementPosition)||!Wi(p.beakPosition.elementPosition,f.beakPosition.elementPosition))&&c.current<5?(c.current++,l(C)):c.current>0&&(c.current=0,null==g||g(u))}}),n);return d.current=h,function(){p.cancelAnimationFrame(o),d.current=void 0}}l(void 0),c.current=0}),[f,b,p,n,v,t,i,m,a,g,u,e,h]),u}var zi=o.memo(o.forwardRef((function(e,t){var n=Fo(Li,e),i=n.styles,a=n.style,s=n.ariaLabel,u=n.ariaDescribedBy,l=n.ariaLabelledBy,c=n.className,d=n.isBeakVisible,p=n.children,f=n.beakWidth,h=n.calloutWidth,m=n.calloutMaxWidth,v=n.calloutMinWidth,g=n.doNotLayer,b=n.finalHeight,y=n.hideOverflow,_=void 0===y?!!b:y,C=n.backgroundColor,k=n.calloutMaxHeight,x=n.onScroll,E=n.shouldRestoreFocus,w=void 0===E||E,I=n.target,S=n.hidden,P=n.onLayerMounted,T=o.useRef(null),M=o.useState(null),N=M[0],D=M[1],A=o.useCallback((function(e){D(e)}),[]),F=Pt(T,t),O=Di(n.target,{current:N}),B=O[0],L=O[1],j=function(e,t,n){var r=e.bounds,i=e.minPagePadding,a=void 0===i?Li.minPagePadding:i,s=e.target,u=o.useState(!1),l=u[0],c=u[1],d=o.useRef(),p=o.useCallback((function(){if(!d.current||l){var e="function"==typeof r?n?r(s,n):void 0:r;!e&&n&&(e=function(e,t){return function(e,t){var n=void 0;if(t.getWindowSegments&&(n=t.getWindowSegments()),void 0===n||n.length<=1)return{top:0,left:0,right:t.innerWidth,bottom:t.innerHeight,width:t.innerWidth,height:t.innerHeight};var r=0,o=0;if(null!==e&&e.getBoundingClientRect){var i=e.getBoundingClientRect();r=(i.left+i.right)/2,o=(i.top+i.bottom)/2}else null!==e&&(r=e.left||e.x,o=e.top||e.y);for(var a={top:0,left:0,right:0,bottom:0,width:0,height:0},s=0,u=n;s=r&&o&&l.top<=o&&l.bottom>=o&&(a={top:l.top,left:l.left,right:l.right,bottom:l.bottom,width:l.width,height:l.height})}return a}(e,t)}(t.current,n),e={top:e.top+a,left:e.left+a,right:e.right-a,bottom:e.bottom-a,width:e.width-2*a,height:e.height-2*a}),d.current=e,l&&c(!1)}return d.current}),[r,a,s,t,n,l]),f=xi();return Ei(n,"resize",f.debounce((function(){c(!0)}),500,{leading:!0})),p}(n,B,L),H=Hi(n,T,N,B,j),z=function(e,t,n){var r,i=e.calloutMaxHeight,a=e.finalHeight,s=e.directionalHint,u=e.directionalHintFixed,l=e.hidden,c=o.useState(),d=c[0],p=c[1],f=null!==(r=null==n?void 0:n.elementPosition)&&void 0!==r?r:{},h=f.top,m=f.bottom;return o.useEffect((function(){var e,n=null!==(e=t())&&void 0!==e?e:{},r=n.top,o=n.bottom;i||l?p(i||void 0):"number"==typeof h&&o?p(o-h):"number"==typeof m&&"number"==typeof r&&o&&p(o-r-m)}),[m,i,a,s,u,t,l,n,h]),d}(n,j,H),K=function(e,t,n,r,i){var a=e.hidden,s=e.onDismiss,u=e.preventDismissOnScroll,l=e.preventDismissOnResize,c=e.preventDismissOnLostFocus,d=e.dismissOnTargetClick,p=e.shouldDismissOnWindowFocus,f=e.preventDismissOnEvent,h=o.useRef(!1),m=xi(),v=R([function(){h.current=!0},function(){h.current=!1}]),g=!!t;return o.useEffect((function(){var e=function(e){g&&!u&&v(e)},t=function(e){l||f&&f(e)||null==s||s(e)},o=function(e){c||v(e)},v=function(e){var t=e.composedPath?e.composedPath():[],o=t.length>0?t[0]:e.target,a=n.current&&!to(n.current,o);if(a&&h.current)h.current=!1;else if(!r.current&&a||e.target!==i&&a&&(!r.current||"stopPropagation"in r.current||d||o!==r.current&&!to(r.current,o))){if(f&&f(e))return;null==s||s(e)}},b=function(e){p&&((!f||f(e))&&(f||c)||(null==i?void 0:i.document.hasFocus())||null!==e.relatedTarget||null==s||s(e))},y=new Promise((function(n){m.setTimeout((function(){if(!a&&i){var r=[jo(i,"scroll",e,!0),jo(i,"resize",t,!0),jo(i.document.documentElement,"focus",o,!0),jo(i.document.documentElement,"click",o,!0),jo(i,"blur",b,!0)];n((function(){r.forEach((function(e){return e()}))}))}}),0)}));return function(){y.then((function(e){return e()}))}}),[a,m,n,r,i,s,p,d,c,l,u,g,f]),v}(n,H,T,B,L),W=K[0],q=K[1],U=(null==H?void 0:H.elementPosition.top)&&(null==H?void 0:H.elementPosition.bottom),G=(0,r.pi)((0,r.pi)({},null==H?void 0:H.elementPosition),{maxHeight:z});if(U&&(G.bottom=void 0),function(e,t,n){var r=e.hidden,i=e.setInitialFocus,a=xi(),s=!!t;o.useEffect((function(){if(!r&&i&&s&&n){var e=a.requestAnimationFrame((function(){return no(n)}),n);return function(){return a.cancelAnimationFrame(e)}}}),[r,s,a,n,i])}(n,H,N),o.useEffect((function(){S||null==P||P()}),[S]),!L)return null;var V=_,Z=d&&!!I,Y=ji(i,{theme:n.theme,className:c,overflowYHidden:V,calloutWidth:h,positions:H,beakWidth:f,backgroundColor:C,calloutMaxWidth:m,calloutMinWidth:v,doNotLayer:g}),$=(0,r.pi)((0,r.pi)({maxHeight:k||"100%"},a),V&&{overflowY:"hidden"}),X=n.hidden?{visibility:"hidden"}:void 0;return o.createElement("div",{ref:F,className:Y.container,style:X},o.createElement("div",(0,r.pi)({},(0,xe.pq)(n,xe.n7,Bi),{className:Ee(Y.root,H&&H.targetEdge&&Ai[H.targetEdge]),style:H?(0,r.pi)({},G):Oi,tabIndex:-1,ref:A}),Z&&o.createElement("div",{className:Y.beak,style:Ki(H)}),Z&&o.createElement("div",{className:Y.beakCurtain}),o.createElement(Ni,{role:n.role,"aria-roledescription":n["aria-roledescription"],ariaDescribedBy:u,ariaLabel:s,ariaLabelledBy:l,className:Y.calloutMain,onDismiss:n.onDismiss,onMouseDown:W,onMouseUp:q,onRestoreFocus:n.onRestoreFocus,onScroll:x,shouldRestoreFocus:w,style:$},p)))})),(function(e,t){return!(t.shouldUpdateWhenHidden||!e.hidden||!t.hidden)||at(e,t)}));function Ki(e){var t,n,o=(0,r.pi)((0,r.pi)({},null===(t=null==e?void 0:e.beakPosition)||void 0===t?void 0:t.elementPosition),{display:(null===(n=null==e?void 0:e.beakPosition)||void 0===n?void 0:n.hideBeak)?"none":void 0});return o.top||o.bottom||o.left||o.right||(o.left=Ri,o.top=Fi),o}function Wi(e,t){for(var n in t)if(t.hasOwnProperty(n)){var r=e[n],o=t[n];if(void 0===r||void 0===o)return!1;if(r.toFixed(2)!==o.toFixed(2))return!1}return!0}function qi(e){return{height:e,width:e}}zi.displayName="CalloutContentBase";var Ui={container:"ms-Callout-container",root:"ms-Callout",beak:"ms-Callout-beak",beakCurtain:"ms-Callout-beakCurtain",calloutMain:"ms-Callout-main"},Gi=C(zi,(function(e){var t,n=e.theme,r=e.className,o=e.overflowYHidden,i=e.calloutWidth,a=e.beakWidth,s=e.backgroundColor,u=e.calloutMaxWidth,l=e.calloutMinWidth,c=e.doNotLayer,d=Hn(Ui,n),p=n.semanticColors,f=n.effects;return{container:[d.container,{position:"relative"}],root:[d.root,n.fonts.medium,{position:"absolute",display:"flex",zIndex:c?An.Layer:void 0,boxSizing:"border-box",borderRadius:f.roundedCorner2,boxShadow:f.elevation16,selectors:(t={},t[Fn]={borderWidth:1,borderStyle:"solid",borderColor:"WindowText"},t)},{selectors:{"&::-moz-focus-inner":{border:0},"&":{outline:"transparent"}}},r,!!i&&{width:i},!!u&&{maxWidth:u},!!l&&{minWidth:l}],beak:[d.beak,{position:"absolute",backgroundColor:p.menuBackground,boxShadow:"inherit",border:"inherit",boxSizing:"border-box",transform:"rotate(45deg)"},qi(a),s&&{backgroundColor:s}],beakCurtain:[d.beakCurtain,{position:"absolute",top:0,right:0,bottom:0,left:0,backgroundColor:p.menuBackground,borderRadius:f.roundedCorner2}],calloutMain:[d.calloutMain,{backgroundColor:p.menuBackground,overflowX:"hidden",overflowY:"auto",position:"relative",width:"100%",borderRadius:f.roundedCorner2},o&&{overflowY:"hidden"},s&&{backgroundColor:s}]}}),void 0,{scope:"CalloutContent"}),Vi=o.createContext((function(){return function(){}}));Vi.Provider;var Zi=n(3935);function Yi(e,t){void 0===e&&(e={});var n=Xi(t)?t:function(e){return function(t){return e?(0,r.pi)((0,r.pi)({},t),e):t}}(t);return n(e)}function $i(e,t){return void 0===e&&(e={}),(Xi(t)?t:function(e){void 0===e&&(e={});return function(t){var n=(0,r.pi)({},t);for(var o in e)e.hasOwnProperty(o)&&(n[o]=(0,r.pi)((0,r.pi)({},t[o]),e[o]));return n}}(t))(e)}function Xi(e){return"function"==typeof e}var Ji=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._onCustomizationChange=function(){return t.forceUpdate()},t}return(0,r.ZT)(t,e),t.prototype.componentDidMount=function(){g.observe(this._onCustomizationChange)},t.prototype.componentWillUnmount=function(){g.unobserve(this._onCustomizationChange)},t.prototype.render=function(){var e=this,t=this.props.contextTransform;return o.createElement(b.Consumer,null,(function(n){var r=function(e,t){var n=(t||{}).customizations,r=void 0===n?{settings:{},scopedSettings:{}}:n;return{customizations:{settings:Yi(r.settings,e.settings),scopedSettings:$i(r.scopedSettings,e.scopedSettings),inCustomizerContext:!0}}}(e.props,n);return t&&(r=t(r)),o.createElement(b.Provider,{value:r},e.props.children)}))},t}(o.Component),Qi=ye(),ea=Ve((function(e,t){return hr((0,r.pi)((0,r.pi)({},e),{rtl:t}))})),ta=o.forwardRef((function(e,t){var n=e.className,i=e.theme,a=e.applyTheme,s=e.applyThemeToBody,u=e.styles,l=Qi(u,{theme:i,applyTheme:a,className:n}),c=o.useRef(null);return function(e,t,n){var r=t.bodyThemed;o.useEffect((function(){if(e){var t=de(n.current);if(t)return t.body.classList.add(r),function(){t.body.classList.remove(r)}}}),[r,e,n])}(s,l,c),gt(c),o.createElement(o.Fragment,null,function(e,t,n,i){var a=t.root,s=e.as,u=void 0===s?"div":s,l=e.dir,c=e.theme,d=(0,xe.pq)(e,xe.n7,["dir"]),p=function(e){var t=e.theme,n=e.dir,r=me(t)?"rtl":"ltr",o=me()?"rtl":"ltr",i=n||r;return{rootDir:i!==r||i!==o?i:n,needsTheme:i!==r}}(e),f=p.rootDir,h=p.needsTheme,m=o.createElement(u,(0,r.pi)({dir:f},d,{className:a,ref:Pt(n,i)}));h&&(m=o.createElement(Ji,{settings:{theme:ea(c,"rtl"===l)}},m));return m}(e,l,c,t))}));ta.displayName="FabricBase";var na={fontFamily:"inherit"},ra={root:"ms-Fabric",bodyThemed:"ms-Fabric-bodyThemed"},oa=C(ta,(function(e){var t=e.theme,n=e.className,r=e.applyTheme;return{root:[Hn(ra,t).root,t.fonts.medium,{color:t.palette.neutralPrimary,selectors:{"& button":na,"& input":na,"& textarea":na}},r&&{color:t.semanticColors.bodyText,backgroundColor:t.semanticColors.bodyBackground},n],bodyThemed:[{backgroundColor:t.semanticColors.bodyBackground}]}}),void 0,{scope:"Fabric"});var ia={},aa={},sa="fluent-default-layer-host",ua="#"+sa;var la,ca=ye(),da=o.forwardRef((function(e,t){var n=o.useContext(Vi),i=o.useRef(null),a=Pt(i,t),s=o.useRef(),u=o.useState(!1),l=u[0],c=u[1],d=e.eventBubblingEnabled,p=e.styles,f=e.theme,h=e.className,m=e.children,v=e.hostId,g=e.onLayerDidMount,b=void 0===g?function(){}:g,y=e.onLayerMounted,_=void 0===y?function(){}:y,C=e.onLayerWillUnmount,k=e.insertFirst,x=ca(p,{theme:f,className:h,isNotHost:!v}),E=function(e){var t,n;if(v){var r=function(e){var t=aa[e];return t&&t[0]||void 0}(v);return r?null!==(t=r.rootRef.current)&&void 0!==t?t:null:null!==(n=e.getElementById(v))&&void 0!==n?n:null}var o=ua,i=o?e.querySelector(o):null;return i||(i=function(e){var t=e.createElement("div");return t.setAttribute("id",sa),t.style.cssText="position:fixed;z-index:1000000",null==e||e.body.appendChild(t),t}(e)),i},w=function(){null==C||C();var e=s.current;s.current=void 0,e&&e.parentNode&&e.parentNode.removeChild(e)},I=function(){var e,t=de(i.current);if(t){var n=E(t);if(n){w();var r=(null!==(e=n.ownerDocument)&&void 0!==e?e:t).createElement("div");r.className=x.root,r.setAttribute(Qe,"true"),function(e,t){var n=e,r=t;n._virtual||(n._virtual={children:[]});var o=n._virtual.parent;if(o&&o!==t){var i=o._virtual.children.indexOf(n);i>-1&&o._virtual.children.splice(i,1)}n._virtual.parent=r||void 0,r&&(r._virtual||(r._virtual={children:[]}),r._virtual.children.push(n))}(r,i.current),k?n.insertBefore(r,n.firstChild):n.appendChild(r),s.current=r,c(!0)}}};return St((function(){I(),v&&function(e,t){ia[e]||(ia[e]=[]),ia[e].push(t);var n=aa[e];if(n)for(var r=0,o=n;r=0&&(n.splice(r,1),0===n.length&&delete ia[e])}var o=aa[e];if(o)for(var i=0,a=o;i$a[t];)t++}catch(Ks){t=Xa()}Ya=t}else{if(void 0===Za)throw new Error("Content was rendered in a server environment without providing a default responsive mode. Call setResponsiveMode to define what the responsive mode is.");t=Za}return t}var es=o.createContext({}),ts=ye(),ns=ye(),rs={items:[],shouldFocusOnMount:!0,gapSpace:0,directionalHint:Wr,beakWidth:16};function os(e,t){var n=null==t?void 0:t.target,o=e.subMenuProps?e.subMenuProps.items:e.items;if(o){for(var i=[],a=0,s=o;a0?o.createElement("li",{role:"presentation",key:u.key||e.key||"section-"+i},o.createElement("div",(0,r.pi)({},d),o.createElement("ul",{className:n.list,role:"presentation"},u.topDivider&&X(i,t,!0,!0),l&&$(l,e.key||i,t,e.title),u.items.map((function(e,t){return Z(e,t,t,u.items.length,a,s,n)})),u.bottomDivider&&X(i,t,!1,!0)))):void 0}},$=function(e,t,n,r){return o.createElement("li",{role:"presentation",title:r,key:t,className:n.item},e)},X=function(e,t,n,r){return r||e>0?o.createElement("li",{role:"separator",key:"separator-"+e+(void 0===n?"":n?"-top":"-bottom"),className:t.divider,"aria-hidden":"true"}):null},J=function(e,t,n,i,s,u,l){if(e.onRender)return e.onRender((0,r.pi)({"aria-posinset":i+1,"aria-setsize":s},e),d);var c={item:e,classNames:t,index:n,focusableElementIndex:i,totalItemCount:s,hasCheckmarks:u,hasIcons:l,contextualMenuItemAs:a.contextualMenuItemAs,onItemMouseEnter:H,onItemMouseLeave:K,onItemMouseMove:z,onItemMouseDown:ds,executeItemClick:U,onItemKeyDown:L,expandedMenuItemKey:g,openSubMenu:b,dismissSubMenu:_,dismissMenu:d};return e.href?o.createElement(za,(0,r.pi)({},c,{onItemClick:q})):e.split&&Oo(e)?o.createElement(Ga,(0,r.pi)({},c,{onItemClick:W,onItemClickBase:G,onTap:T})):o.createElement(Va,(0,r.pi)({},c,{onItemClick:W,onItemClickBase:G}))},Q=function(e,t,n,i,s,u){var l=a.contextualMenuItemAs,c=void 0===l?Fa:l,d=e.itemProps,p=e.id,f=d&&(0,xe.pq)(d,xe.n7);return o.createElement("div",(0,r.pi)({id:p,className:n.header},f,{style:e.style}),o.createElement(c,(0,r.pi)({item:e,classNames:t,index:i,onCheckmarkClick:s?W:void 0,hasIcons:u},d)))},ee=a.isBeakVisible,te=a.items,ne=a.labelElementId,re=a.id,oe=a.className,ie=a.beakWidth,ae=a.directionalHint,se=a.directionalHintForRTL,ue=a.alignTargetEdge,le=a.gapSpace,ce=a.coverTarget,pe=a.ariaLabel,fe=a.doNotLayer,he=a.target,me=a.bounds,ve=a.useTargetWidth,ge=a.useTargetAsMinWidth,be=a.directionalHintFixed,ye=a.shouldFocusOnMount,_e=a.shouldFocusOnContainer,Ce=a.title,ke=a.styles,we=a.theme,Ie=a.calloutProps,Se=a.onRenderSubMenu,Pe=void 0===Se?ps:Se,Te=a.onRenderMenuList,Me=void 0===Te?function(e,t){return V(e,Ae)}:Te,Ne=a.focusZoneProps,De=a.getMenuClassNames,Ae=De?De(we,oe):ts(ke,{theme:we,className:oe}),Fe=function e(t){for(var n=0,r=t;n0){for(var ze=0,Ke=0,We=te;Ke span":{position:"relative",left:0,top:0}}}],rootDisabled:[On(e,{inset:1,highContrastStyle:l,borderColor:"transparent"}),{backgroundColor:s,borderColor:s,color:u,cursor:"default",selectors:{":hover":Is,":focus":Is}}],iconDisabled:{color:u,selectors:(t={},t[Fn]={color:"GrayText"},t)},menuIconDisabled:{color:u,selectors:(n={},n[Fn]={color:"GrayText"},n)},flexContainer:{display:"flex",height:"100%",flexWrap:"nowrap",justifyContent:"center",alignItems:"center"},description:{display:"block"},textContainer:{flexGrow:1,display:"block"},icon:Ss(i.mediumPlus.fontSize),menuIcon:Ss(i.small.fontSize),label:{margin:"0 4px",lineHeight:"100%",display:"block"},screenReaderText:Ln}})),Ts=Ve((function(e,t){var n,r,o;return i(Ps(e),{root:{padding:"0 4px",height:"40px",color:e.palette.neutralPrimary,backgroundColor:"transparent",border:"1px solid transparent",selectors:(n={},n[Fn]={borderColor:"Window"},n)},rootHovered:{color:e.palette.themePrimary,selectors:(r={},r[Fn]={color:"Highlight"},r)},iconHovered:{color:e.palette.themePrimary},rootPressed:{color:e.palette.black},rootExpanded:{color:e.palette.themePrimary},iconPressed:{color:e.palette.themeDarker},rootDisabled:{color:e.palette.neutralTertiary,backgroundColor:"transparent",borderColor:"transparent",selectors:(o={},o[Fn]={color:"GrayText"},o)},rootChecked:{color:e.palette.black},iconChecked:{color:e.palette.themeDarker},flexContainer:{justifyContent:"flex-start"},icon:{color:e.palette.themeDarkAlt},iconDisabled:{color:"inherit"},menuIcon:{color:e.palette.neutralSecondary},textContainer:{flexGrow:0}},t)})),Ms=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}var n,a,s;return(0,r.ZT)(t,e),t.prototype.render=function(){var e=this.props,t=e.styles,n=e.theme;return o.createElement(ws,(0,r.pi)({},this.props,{variantClassName:"ms-Button--action ms-Button--command",styles:Ts(n,t),onRenderDescription:ft}))},t=(0,r.gn)([(n="ActionButton",a=["theme","styles"],s=!0,function(e){var t,u=((t=function(t){function u(e){var n=t.call(this,e)||this;return n._styleCache={},n._onSettingChanged=n._onSettingChanged.bind(n),n}return(0,r.ZT)(u,t),u.prototype.componentDidMount=function(){g.observe(this._onSettingChanged)},u.prototype.componentWillUnmount=function(){g.unobserve(this._onSettingChanged)},u.prototype.render=function(){var t=this;return o.createElement(b.Consumer,null,(function(u){var l=g.getSettings(a,n,u.customizations),c=t.props;if(l.styles&&"function"==typeof l.styles&&(l.styles=l.styles((0,r.pi)((0,r.pi)({},l),c))),s&&l.styles){if(t._styleCache.default!==l.styles||t._styleCache.component!==c.styles){var d=i(l.styles,c.styles);t._styleCache.default=l.styles,t._styleCache.component=c.styles,t._styleCache.merged=d}return o.createElement(e,(0,r.pi)({},l,c,{styles:t._styleCache.merged}))}return o.createElement(e,(0,r.pi)({},l,c))}))},u.prototype._onSettingChanged=function(){this.forceUpdate()},u}(o.Component)).displayName="Customized"+n,t);return function(e,t){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}(e,u)})],t),t}(o.Component),Ns=Ms;function Ds(e,t){void 0===t&&(t=null);var n,r=o.useRef({ref:(n=function(e){r.ref.current!==e&&(r.cleanup&&(r.cleanup(),r.cleanup=void 0),r.ref.current=e,null!==e&&(r.cleanup=r.callback(e)))},n.current=t,n),callback:e}).current;return r.callback=e,r.ref}var As=function(e){var t=e.onOverflowItemsChanged,n=e.rtl,r=e.pinnedIndex,i=o.useRef(),a=o.useRef(),s=Ds((function(e){var t=function(e,t){if("undefined"!=typeof ResizeObserver){var n=new ResizeObserver(t);return Array.isArray(e)?e.forEach((function(e){return n.observe(e)})):n.observe(e),function(){return n.disconnect()}}var r=function(){return t(void 0)},o=l(Array.isArray(e)?e[0]:e);if(!o)return function(){};var i=o.requestAnimationFrame(r);return o.addEventListener("resize",r,!1),function(){o.cancelAnimationFrame(i),o.removeEventListener("resize",r,!1)}}(e,(function(t){a.current=t?t[0].contentRect.width:e.clientWidth,i.current&&i.current()}));return function(){t(),a.current=void 0}})),u=Ds((function(e){return s(e.parentElement),function(){return s(null)}}));return St((function(){var e=s.current,o=u.current;if(e&&o){for(var c=[],d=0;d=0;t--){if(void 0===f[t]){var i=n?e-c[t].offsetLeft:c[t].offsetLeft+c[t].offsetWidth;t+1f[t])return void v(t+1)}v(0)}};var m=c.length,v=function(e){m!==e&&(m=e,t(e,c.map((function(t,n){return{ele:t,isOverflowing:n>=e&&n!==r}}))))},g=void 0;if(void 0!==a.current){var b=l(e);if(b){var y=b.requestAnimationFrame(i.current);g=function(){return b.cancelAnimationFrame(y)}}}return function(){g&&g(),v(c.length),i.current=void 0}}})),{menuButtonRef:u}},Fs=n(19),Rs=ye(),Os=function(e,t){var n={links:[],keyToIndexMapping:{},keyToTabIdMapping:{}};return o.Children.forEach(o.Children.toArray(e.children),(function(o,i){if(Bs(o)){var a=o.props,s=a.linkText,u=(0,r._T)(a,["linkText"]),l=o.props.itemKey||i.toString();n.links.push((0,r.pi)((0,r.pi)({headerText:s},u),{itemKey:l})),n.keyToIndexMapping[l]=i,n.keyToTabIdMapping[l]=function(e,t,n,r){return e.getTabId?e.getTabId(n,r):t+"-Tab"+r}(e,t,l,i)}else o&&ke("The children of a Pivot component must be of type PivotItem to be rendered.")})),n},Bs=function(e){var t;return o.isValidElement(e)&&(null===(t=e.type)||void 0===t?void 0:t.name)===Fs.M.name},Ls=o.forwardRef((function(e,t){var n,i=o.useRef(null),a=o.useRef(null),s=F("Pivot"),u=function(e,t,n){var r=o.useState(t),i=r[0],a=r[1],s=R(void 0!==e),u=s?e:i,l=o.useRef(u),c=o.useRef(n);o.useEffect((function(){l.current=u,c.current=n}));var d=R((function(){return function(e,t){var n="function"==typeof e?e(l.current):e;c.current&&c.current(t,n),s||a(n)}}));return[u,d]}(e.selectedKey,e.defaultSelectedKey),l=u[0],c=u[1],d=e.componentRef,p=e.theme,f=e.linkSize,h=e.linkFormat,m=e.overflowBehavior,v=e.overflowAriaLabel,g=e.focusZoneProps,b={"aria-label":e["aria-label"],"aria-labelledby":e["aria-labelledby"]},y=(0,xe.pq)(e,xe.n7,["aria-label","aria-labelledby"]),_=Os(e,s);o.useImperativeHandle(d,(function(){return{focus:function(){var e;null===(e=i.current)||void 0===e||e.focus()}}}));var C=function(e){if(!e)return null;var t=e.itemCount,r=e.itemIcon,i=e.headerText;return o.createElement("span",{className:n.linkContent},void 0!==r&&o.createElement("span",{className:n.icon},o.createElement(Fr,{iconName:r})),void 0!==i&&o.createElement("span",{className:n.text}," ",e.headerText),void 0!==t&&o.createElement("span",{className:n.count}," (",t,")"))},k=function(e,t,i,a){var s,u=t.itemKey,l=t.headerButtonProps,c=t.onRenderItemLink,d=e.keyToTabIdMapping[u],p=i===u;s=c?c(t,C):C(t);var f=t.headerText||"";f+=t.itemCount?" ("+t.itemCount+")":"",f+=t.itemIcon?" xx":"";var h=t.role&&"tab"!==t.role?{role:t.role}:{role:"tab","aria-selected":p};return o.createElement(Ns,(0,r.pi)({},l,h,{id:d,key:u,className:Ee(a,p&&n.linkIsSelected),onClick:function(e){return x(u,e)},onKeyDown:function(e){return E(u,e)},"aria-label":t.ariaLabel,name:t.headerText,keytipProps:t.keytipProps,"data-content":f}),s)},x=function(e,t){t.preventDefault(),w(e,t)},E=function(e,t){t.which===Ie&&(t.preventDefault(),w(e))},w=function(t,n){var r;if(c(t),_=Os(e,s),e.onLinkClick&&_.keyToIndexMapping[t]>=0){var i=_.keyToIndexMapping[t],u=o.Children.toArray(e.children)[i];Bs(u)&&e.onLinkClick(u,n)}null===(r=a.current)||void 0===r||r.dismissMenu()};n=Rs(e.styles,{theme:p,linkSize:f,linkFormat:h});var I,S=null===(I=l)||void 0!==I&&void 0!==_.keyToIndexMapping[I]?l:_.links.length?_.links[0].itemKey:void 0,P=S?_.keyToIndexMapping[S]:0,T=_.links.map((function(e){return k(_,e,S,n.link)})),M=o.useMemo((function(){return{items:[],alignTargetEdge:!0,directionalHint:Kr}}),[]),N=As({onOverflowItemsChanged:function(e,t){t.forEach((function(e){var t=e.ele,n=e.isOverflowing;return t.dataset.isOverflowing=""+n})),M.items=_.links.slice(e).filter((function(e){return e.itemKey!==S})).map((function(t,r){return t.role="menuitem",{key:t.itemKey||""+(e+r),onRender:function(){return k(_,t,S,n.linkInMenu)}}}))},rtl:me(p),pinnedIndex:P}).menuButtonRef;return o.createElement("div",(0,r.pi)({ref:t},y),o.createElement(To,(0,r.pi)({componentRef:i,role:"tablist"},b,{direction:Jr.horizontal},g,{className:Ee(n.root,null==g?void 0:g.className)}),T,"menu"===m&&o.createElement(Ns,{className:Ee(n.link,n.overflowMenuButton),elementRef:N,componentRef:a,menuProps:M,menuIconProps:{iconName:"More",style:{color:"inherit"}},ariaLabel:v})),S&&_.links.map((function(t){return(!0===t.alwaysRender||S===t.itemKey)&&function(t,r){if(e.headersOnly||!t)return null;var i=_.keyToIndexMapping[t],a=_.keyToTabIdMapping[t];return o.createElement("div",{role:"tabpanel",hidden:!r,key:t,"aria-hidden":!r,"aria-labelledby":a,className:n.itemContainer},o.Children.toArray(e.children)[i])}(t.itemKey,S===t.itemKey)})))}));Ls.displayName="Pivot";var js={count:"ms-Pivot-count",icon:"ms-Pivot-icon",linkIsSelected:"is-selected",link:"ms-Pivot-link",linkContent:"ms-Pivot-linkContent",root:"ms-Pivot",rootIsLarge:"ms-Pivot--large",rootIsTabs:"ms-Pivot--tabs",text:"ms-Pivot-text",linkInMenu:"ms-Pivot-linkInMenu",overflowMenuButton:"ms-Pivot-overflowMenuButton"},Hs=function(e,t,n){var o,i,a;void 0===n&&(n=!1);var s=e.linkSize,u=e.linkFormat,l=e.theme,c=l.semanticColors,d=l.fonts,p="large"===s,f="tabs"===u;return[d.medium,{color:c.actionLink,padding:"0 8px",position:"relative",backgroundColor:"transparent",border:0,borderRadius:0,selectors:{":hover":{backgroundColor:c.buttonBackgroundHovered,color:c.buttonTextHovered,cursor:"pointer"},":active":{backgroundColor:c.buttonBackgroundPressed,color:c.buttonTextHovered},":focus":{outline:"none"}}},!n&&[{display:"inline-block",lineHeight:44,height:44,marginRight:8,textAlign:"center",selectors:(o={},o[".ms-Fabric--isFocusVisible &:focus"]={outline:"1px solid "+c.focusBorder},o[".ms-Fabric--isFocusVisible &:focus:after"]={content:"attr(data-content)",position:"relative",border:0},o[":before"]={backgroundColor:"transparent",bottom:0,content:'""',height:2,left:8,position:"absolute",right:8,transition:"left "+Cn+" "+_n+",\n right "+Cn+" "+_n},o[":after"]={color:"transparent",content:"attr(data-content)",display:"block",fontWeight:Mn.bold,height:1,overflow:"hidden",visibility:"hidden"},o)},p&&{fontSize:d.large.fontSize},f&&[{marginRight:0,height:44,lineHeight:44,backgroundColor:c.buttonBackground,padding:"0 10px",verticalAlign:"top",selectors:(i={":focus":{outlineOffset:"-1px"}},i[".ms-Fabric--isFocusVisible &:focus::before"]={height:"auto",background:"transparent",transition:"none"},i["&:hover, &:focus"]={color:c.buttonTextCheckedHovered},i["&:active, &:hover"]={color:c.primaryButtonText,backgroundColor:c.primaryButtonBackground},i["&."+t.linkIsSelected]={backgroundColor:c.primaryButtonBackground,color:c.primaryButtonText,fontWeight:Mn.regular,selectors:(a={":before":{backgroundColor:"transparent",transition:"none",position:"absolute",top:0,left:0,right:0,bottom:0,content:'""',height:0},":hover":{backgroundColor:c.primaryButtonBackgroundHovered,color:c.primaryButtonText},"&:active":{backgroundColor:c.primaryButtonBackgroundPressed,color:c.primaryButtonText}},a[Fn]=(0,r.pi)({fontWeight:Mn.semibold,color:"HighlightText",background:"Highlight"},{forcedColorAdjust:"none",MsHighContrastAdjust:"none"}),a)},i)}]]]},zs=C(Ls,(function(e){var t,n,o,i,a=e.className,s=e.linkSize,u=e.linkFormat,l=e.theme,c=l.semanticColors,d=l.fonts,p=Hn(js,l),f="large"===s,h="tabs"===u;return{root:[p.root,d.medium,yr,{position:"relative",color:c.link,whiteSpace:"nowrap"},f&&p.rootIsLarge,h&&p.rootIsTabs,a],itemContainer:{selectors:{"&[hidden]":{display:"none"}}},link:(0,r.ev)((0,r.ev)([p.link],Hs(e,p)),[(t={},t["&[data-is-overflowing='true']"]={display:"none"},t)]),overflowMenuButton:[p.overflowMenuButton,(n={visibility:"hidden",position:"absolute",right:0},n["."+p.link+"[data-is-overflowing='true'] ~ &"]={visibility:"visible",position:"relative"},n)],linkInMenu:(0,r.ev)((0,r.ev)([p.linkInMenu],Hs(e,p,!0)),[{textAlign:"left",width:"100%",height:36,lineHeight:36}]),linkIsSelected:[p.link,p.linkIsSelected,{fontWeight:Mn.semibold,selectors:(o={":before":{backgroundColor:c.inputBackgroundChecked,selectors:(i={},i[Fn]={backgroundColor:"Highlight"},i)},":hover::before":{left:0,right:0}},o[Fn]={color:"Highlight"},o)}],linkContent:[p.linkContent,{flex:"0 1 100%",selectors:{"& > * ":{marginLeft:4},"& > *:first-child":{marginLeft:0}}}],text:[p.text,{display:"inline-block",verticalAlign:"top"}],count:[p.count,{display:"inline-block",verticalAlign:"top"}],icon:p.icon}}),void 0,{scope:"Pivot"})},19:(e,t,n)=>{"use strict";n.d(t,{M:()=>u});var r=n(655),o=n(7294),i=n(3528),a=n(2097),s=n(5395),u=function(e){function t(t){var n=e.call(this,t)||this;return(0,i.l)(n),(0,a.b)("PivotItem",t,{linkText:"headerText"}),n}return(0,r.ZT)(t,e),t.prototype.render=function(){return o.createElement("div",(0,r.pi)({},(0,s.pq)(this.props,s.n7)),this.props.children)},t}(o.Component)},3528:(e,t,n)=>{"use strict";function r(e){for(var t=[],n=1;no})},5395:(e,t,n)=>{"use strict";n.d(t,{Yq:()=>l,h2:()=>u,iY:()=>a,it:()=>c,n7:()=>d,pq:()=>p});var r=function(){for(var e=[],t=0;t=0||0===s.indexOf("data-")||0===s.indexOf("aria-"))||n&&-1!==(null==n?void 0:n.indexOf(s))||(o[s]=e[s])}return o}},2097:(e,t,n)=>{"use strict";function r(e,t,n){}n.d(t,{b:()=>r})},3905:(e,t,n)=>{"use strict";n.d(t,{Zo:()=>c,kt:()=>f});var r=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 i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var u=r.createContext({}),l=function(e){var t=r.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},c=function(e){var t=l(e.components);return r.createElement(u.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,u=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=l(n),f=o,h=p["".concat(u,".").concat(f)]||p[f]||d[f]||i;return n?r.createElement(h,a(a({ref:t},c),{},{components:n})):r.createElement(h,a({ref:t},c))}));function f(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=p;var s={};for(var u in t)hasOwnProperty.call(t,u)&&(s[u]=t[u]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var l=2;l{"use strict";n.d(t,{Z1:()=>Vt,cL:()=>Zt});var r=n(7294),o=n(9864),i=n(6774),a=n.n(i);const s=function(e){function t(e,r,u,l,p){for(var f,h,m,v,_,k=0,x=0,E=0,w=0,I=0,D=0,F=m=f=0,O=0,B=0,L=0,j=0,H=u.length,z=H-1,K="",W="",q="",U="";Of)&&(j=(K=K.replace(" ",":")).length),0r&&(r=(t=t.trim()).charCodeAt(0)),r){case 38:return t.replace(v,"$1"+e.trim());case 58:return e.trim()+t.replace(v,"$1"+e.trim());default:if(0<1*n&&0u.charCodeAt(8))break;case 115:a=a.replace(u,"-webkit-"+u)+";"+a;break;case 207:case 102:a=a.replace(u,"-webkit-"+(102r.charCodeAt(0)&&(r=r.trim()),r=[r],01?t-1:0),r=1;r0?" Args: "+n.join(", "):""))}var w=function(){function e(e){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=e}var t=e.prototype;return t.indexOfGroup=function(e){for(var t=0,n=0;n=this.groupSizes.length){for(var n=this.groupSizes,r=n.length,o=r;e>=o;)(o<<=1)<0&&E(16,""+e);this.groupSizes=new Uint32Array(o),this.groupSizes.set(n),this.length=o;for(var i=r;i=this.length||0===this.groupSizes[e])return t;for(var n=this.groupSizes[e],r=this.indexOfGroup(e),o=r+n,i=r;i=P&&(P=t+1),I.set(e,t),S.set(t,e)},D="style["+C+'][data-styled-version="5.3.5"]',A=new RegExp("^"+C+'\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'),F=function(e,t,n){for(var r,o=n.split(","),i=0,a=o.length;i=0;n--){var r=t[n];if(r&&1===r.nodeType&&r.hasAttribute(C))return r}}(n),i=void 0!==o?o.nextSibling:null;r.setAttribute(C,"active"),r.setAttribute("data-styled-version","5.3.5");var a=O();return a&&r.setAttribute("nonce",a),n.insertBefore(r,i),r},L=function(){function e(e){var t=this.element=B(e);t.appendChild(document.createTextNode("")),this.sheet=function(e){if(e.sheet)return e.sheet;for(var t=document.styleSheets,n=0,r=t.length;n=0){var n=document.createTextNode(t),r=this.nodes[e];return this.element.insertBefore(n,r||null),this.length++,!0}return!1},t.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},t.getRule=function(e){return e0&&(l+=e+",")})),r+=""+s+u+'{content:"'+l+'"}/*!sc*/\n'}}}return r}(this)},e}(),q=/(a)(d)/gi,U=function(e){return String.fromCharCode(e+(e>25?39:97))};function G(e){var t,n="";for(t=Math.abs(e);t>52;t=t/52|0)n=U(t%52)+n;return(U(t%52)+n).replace(q,"$1-$2")}var V=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},Z=function(e){return V(5381,e)};function Y(e){for(var t=0;t>>0);if(!t.hasNameForId(r,a)){var s=n(i,"."+a,void 0,r);t.insertRules(r,a,s)}o.push(a),this.staticRulesId=a}else{for(var u=this.rules.length,l=V(this.baseHash,n.hash),c="",d=0;d>>0);if(!t.hasNameForId(r,m)){var v=n(c,"."+m,void 0,r);t.insertRules(r,m,v)}o.push(m)}}return o.join(" ")},e}(),J=/^\s*\/\/.*$/gm,Q=[":","[",".","#"];function ee(e){var t,n,r,o,i=void 0===e?g:e,a=i.options,u=void 0===a?g:a,l=i.plugins,c=void 0===l?v:l,d=new s(u),p=[],f=function(e){function t(t){if(t)try{e(t+"}")}catch(e){}}return function(n,r,o,i,a,s,u,l,c,d){switch(n){case 1:if(0===c&&64===r.charCodeAt(0))return e(r+";"),"";break;case 2:if(0===l)return r+"/*|*/";break;case 3:switch(l){case 102:case 112:return e(o[0]+r),"";default:return r+(0===d?"/*|*/":"")}case-2:r.split("/*|*/}").forEach(t)}}}((function(e){p.push(e)})),h=function(e,r,i){return 0===r&&-1!==Q.indexOf(i[n.length])||i.match(o)?e:"."+t};function m(e,i,a,s){void 0===s&&(s="&");var u=e.replace(J,""),l=i&&a?a+" "+i+" { "+u+" }":u;return t=s,n=i,r=new RegExp("\\"+n+"\\b","g"),o=new RegExp("(\\"+n+"\\b){2,}"),d(a||!i?"":i,l)}return d.use([].concat(c,[function(e,t,o){2===e&&o.length&&o[0].lastIndexOf(n)>0&&(o[0]=o[0].replace(r,h))},f,function(e){if(-2===e){var t=p;return p=[],t}}])),m.hash=c.length?c.reduce((function(e,t){return t.name||E(15),V(e,t.name)}),5381).toString():"",m}var te=r.createContext(),ne=(te.Consumer,r.createContext()),re=(ne.Consumer,new W),oe=ee();function ie(){return(0,r.useContext)(te)||re}function ae(){return(0,r.useContext)(ne)||oe}function se(e){var t=(0,r.useState)(e.stylisPlugins),n=t[0],o=t[1],i=ie(),s=(0,r.useMemo)((function(){var t=i;return e.sheet?t=e.sheet:e.target&&(t=t.reconstructWithOptions({target:e.target},!1)),e.disableCSSOMInjection&&(t=t.reconstructWithOptions({useCSSOMInjection:!1})),t}),[e.disableCSSOMInjection,e.sheet,e.target]),u=(0,r.useMemo)((function(){return ee({options:{prefix:!e.disableVendorPrefixes},plugins:n})}),[e.disableVendorPrefixes,n]);return(0,r.useEffect)((function(){a()(n,e.stylisPlugins)||o(e.stylisPlugins)}),[e.stylisPlugins]),r.createElement(te.Provider,{value:s},r.createElement(ne.Provider,{value:u},e.children))}var ue=function(){function e(e,t){var n=this;this.inject=function(e,t){void 0===t&&(t=oe);var r=n.name+t.hash;e.hasNameForId(n.id,r)||e.insertRules(n.id,r,t(n.rules,r,"@keyframes"))},this.toString=function(){return E(12,String(n.name))},this.name=e,this.id="sc-keyframes-"+e,this.rules=t}return e.prototype.getName=function(e){return void 0===e&&(e=oe),this.name+e.hash},e}(),le=/([A-Z])/,ce=/([A-Z])/g,de=/^ms-/,pe=function(e){return"-"+e.toLowerCase()};function fe(e){return le.test(e)?e.replace(ce,pe).replace(de,"-ms-"):e}var he=function(e){return null==e||!1===e||""===e};function me(e,t,n,r){if(Array.isArray(e)){for(var o,i=[],a=0,s=e.length;a1?t-1:0),r=1;r?@[\\\]^`{|}~-]+/g,_e=/(^-|-$)/g;function Ce(e){return e.replace(ye,"-").replace(_e,"")}var ke=function(e){return G(Z(e)>>>0)};function xe(e){return"string"==typeof e&&!0}var Ee=function(e){return"function"==typeof e||"object"==typeof e&&null!==e&&!Array.isArray(e)},we=function(e){return"__proto__"!==e&&"constructor"!==e&&"prototype"!==e};function Ie(e,t,n){var r=e[n];Ee(t)&&Ee(r)?Se(r,t):e[n]=t}function Se(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r=0||(o[n]=e[n]);return o}(t,["componentId"]),i=r&&r+"-"+(xe(e)?e:Ce(y(e)));return Me(e,f({},o,{attrs:C,componentId:i}),n)},Object.defineProperty(x,"defaultProps",{get:function(){return this._foldedDefaultProps},set:function(t){this._foldedDefaultProps=o?Se({},e.defaultProps,t):t}}),x.toString=function(){return"."+x.styledComponentId},i&&p()(x,e,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,styledComponentId:!0,target:!0,withComponent:!0}),x}var Ne=function(e){return function e(t,n,r){if(void 0===r&&(r=g),!(0,o.isValidElementType)(n))return E(1,String(n));var i=function(){return t(n,r,ge.apply(void 0,arguments))};return i.withConfig=function(o){return e(t,n,f({},r,{},o))},i.attrs=function(o){return e(t,n,f({},r,{attrs:Array.prototype.concat(r.attrs,o).filter(Boolean)}))},i}(Me,e)};["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","textPath","tspan"].forEach((function(e){Ne[e]=Ne(e)}));!function(){function e(e,t){this.rules=e,this.componentId=t,this.isStatic=Y(e),W.registerId(this.componentId+1)}var t=e.prototype;t.createStyles=function(e,t,n,r){var o=r(me(this.rules,t,n,r).join(""),""),i=this.componentId+e;n.insertRules(i,i,o)},t.removeStyles=function(e,t){t.clearRules(this.componentId+e)},t.renderStyles=function(e,t,n,r){e>2&&W.registerId(this.componentId+e),this.removeStyles(e,n),this.createStyles(e,t,n,r)}}();!function(){function e(){var e=this;this._emitSheetCSS=function(){var t=e.instance.toString();if(!t)return"";var n=O();return""},this.getStyleTags=function(){return e.sealed?E(2):e._emitSheetCSS()},this.getStyleElement=function(){var t;if(e.sealed)return E(2);var n=((t={})[C]="",t["data-styled-version"]="5.3.5",t.dangerouslySetInnerHTML={__html:e.instance.toString()},t),o=O();return o&&(n.nonce=o),[r.createElement("style",f({},n,{key:"sc-0-0"}))]},this.seal=function(){e.sealed=!0},this.instance=new W({isServer:!0}),this.sealed=!1}var t=e.prototype;t.collectStyles=function(e){return this.sealed?E(2):r.createElement(se,{sheet:this.instance},e)},t.interleaveWithNodeStream=function(e){return E(3)}}();var De=function(e){var t=r.forwardRef((function(t,n){var o=(0,r.useContext)(Pe),i=e.defaultProps,a=be(t,o,i);return r.createElement(e,f({},t,{theme:a,ref:n}))}));return p()(t,e),t.displayName="WithTheme("+y(e)+")",t};const Ae=Ne;var Fe=n(4687),Re=n.n(Fe);function Oe(e,t,n,r,o,i,a){try{var s=e[i](a),u=s.value}catch(l){return void n(l)}s.done?t(u):Promise.resolve(u).then(r,o)}function Be(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Oe(i,r,o,a,s,"next",e)}function s(e){Oe(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Le=n(7462);function je(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function He(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return e.reduce((function(e,t){return Ve({},e,n[t])}),t)}function Ye(e){return e.join(" ")}function $e(e){var t=e.node,n=e.stylesheet,o=e.style,i=void 0===o?{}:o,a=e.useInlineStyles,s=e.key,u=t.properties,l=t.type,c=t.tagName,d=t.value;if("text"===l)return d;if(c){var p=function(e,t){var n=0;return function(r){return n+=1,r.map((function(r,o){return $e({node:r,stylesheet:e,useInlineStyles:t,key:"code-segment-".concat(n,"-").concat(o)})}))}}(n,a),f=a&&u.className&&u.className.filter((function(e){return!n[e]})),h=f&&f.length?f:void 0,m=a?Ve({},u,{className:h&&Ye(h)},{style:Ze(u.className,Object.assign({},u.style,i),n)}):Ve({},u,{className:Ye(u.className)}),v=p(t.children);return r.createElement(c,(0,Le.Z)({key:s},m),v)}}var Xe=/\n/g;function Je(e){var t=e.codeString,n=e.codeStyle,o=e.containerProps,i=void 0===o?{}:o,a=e.numberProps,s=e.startingLineNumber;return i.style=i.style||{float:"left",paddingRight:"10px"},r.createElement("code",(0,Le.Z)({},i,{style:Object.assign({},n,i.style)}),function(e){var t=e.lines,n=e.startingLineNumber,o=e.numberProps,i=void 0===o?{}:o;return t.map((function(e,t){var o=t+n,a="function"==typeof i?i(o):i;return r.createElement("span",(0,Le.Z)({key:"line-".concat(t),className:"react-syntax-highlighter-line-number"},a),"".concat(o,"\n"))}))}({lines:t.replace(/\n$/,"").split("\n"),numberProps:a,startingLineNumber:s}))}function Qe(e){var t=e.children,n=e.lineNumber,r=e.lineProps,o=e.className,i=void 0===o?[]:o,a=("function"==typeof r?r(n):r)||{};return a.className=a.className?i.concat(a.className):i,{type:"element",tagName:"span",properties:a,children:t}}function et(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}(n,["language","children","style","customStyle","codeTagProps","useInlineStyles","showLineNumbers","startingLineNumber","lineNumberContainerProps","lineNumberProps","wrapLines","lineProps","renderer","PreTag","CodeTag","code","astGenerator"]);M=M||e;var D=m?r.createElement(Je,{containerProps:b,codeStyle:d.style||{},numberProps:y,startingLineNumber:g,codeString:T}):null,A=s.hljs||s['pre[class*="language-"]']||{backgroundColor:"#fff"},F=f?Object.assign({},N,{style:Object.assign({},A,l)}):Object.assign({},N,{className:"hljs"});if(!M)return r.createElement(w,F,D,r.createElement(S,d,T));_=!(!x||void 0!==_)||_,x=x||nt;var R=[{type:"text",value:T}],O=function(e){var t=e.astGenerator,n=e.language,r=e.code,o=e.defaultCodeValue;if(t.getLanguage){var i=n&&t.getLanguage(n);return"text"===n?{value:o,language:"text"}:i?t.highlight(n,r):t.highlightAuto(r)}try{return n&&"text"!==n?{value:t.highlight(r,n)}:{value:o}}catch(a){return{value:o}}}({astGenerator:M,language:o,code:T,defaultCodeValue:R});null===O.language&&(O.value=R);var B=_?tt(O,k):O.value;return r.createElement(w,F,D,r.createElement(S,d,x({rows:B,stylesheet:s,useInlineStyles:f})))}}const ot=function(e,t){return function(){var n=Be(Re().mark((function n(r){var o;return Re().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,t();case 2:o=n.sent,r(e,o.default||o);case 4:case"end":return n.stop()}}),n,this)})));return function(e){return n.apply(this,arguments)}}()},it={abap:ot("abap",(function(){return n.e(3412).then(n.t.bind(n,6167,23))})),actionscript:ot("actionscript",(function(){return n.e(3971).then(n.t.bind(n,5199,23))})),ada:ot("ada",(function(){return n.e(6084).then(n.t.bind(n,9693,23))})),apacheconf:ot("apacheconf",(function(){return n.e(5524).then(n.t.bind(n,4764,23))})),apl:ot("apl",(function(){return n.e(6670).then(n.t.bind(n,4039,23))})),applescript:ot("applescript",(function(){return n.e(4098).then(n.t.bind(n,1336,23))})),arduino:ot("arduino",(function(){return n.e(3384).then(n.t.bind(n,2159,23))})),arff:ot("arff",(function(){return n.e(1438).then(n.t.bind(n,274,23))})),asciidoc:ot("asciidoc",(function(){return n.e(1554).then(n.t.bind(n,8738,23))})),asm6502:ot("asm6502",(function(){return n.e(5696).then(n.t.bind(n,8572,23))})),aspnet:ot("aspnet",(function(){return n.e(8030).then(n.t.bind(n,8734,23))})),autohotkey:ot("autohotkey",(function(){return n.e(2065).then(n.t.bind(n,6681,23))})),autoit:ot("autoit",(function(){return n.e(8333).then(n.t.bind(n,3358,23))})),bash:ot("bash",(function(){return n.e(8765).then(n.t.bind(n,6979,23))})),basic:ot("basic",(function(){return n.e(7504).then(n.t.bind(n,6241,23))})),batch:ot("batch",(function(){return n.e(400).then(n.t.bind(n,4781,23))})),bison:ot("bison",(function(){return n.e(948).then(n.t.bind(n,2890,23))})),brainfuck:ot("brainfuck",(function(){return n.e(5539).then(n.t.bind(n,1321,23))})),bro:ot("bro",(function(){return n.e(3694).then(n.t.bind(n,741,23))})),c:ot("c",(function(){return n.e(8950).then(n.t.bind(n,5806,23))})),clike:ot("clike",(function(){return n.e(131).then(n.t.bind(n,9726,23))})),clojure:ot("clojure",(function(){return n.e(7966).then(n.t.bind(n,2849,23))})),coffeescript:ot("coffeescript",(function(){return n.e(6118).then(n.t.bind(n,3576,23))})),cpp:ot("cpp",(function(){return n.e(9692).then(n.t.bind(n,96,23))})),crystal:ot("crystal",(function(){return n.e(1130).then(n.t.bind(n,9176,23))})),csharp:ot("csharp",(function(){return n.e(3318).then(n.t.bind(n,1958,23))})),csp:ot("csp",(function(){return n.e(5299).then(n.t.bind(n,5447,23))})),cssExtras:ot("cssExtras",(function(){return n.e(7475).then(n.t.bind(n,4762,23))})),css:ot("css",(function(){return n.e(5008).then(n.t.bind(n,2049,23))})),d:ot("d",(function(){return n.e(3717).then(n.t.bind(n,7902,23))})),dart:ot("dart",(function(){return n.e(7769).then(n.t.bind(n,8651,23))})),diff:ot("diff",(function(){return n.e(6247).then(n.t.bind(n,3336,23))})),django:ot("django",(function(){return n.e(7899).then(n.t.bind(n,3294,23))})),docker:ot("docker",(function(){return n.e(2051).then(n.t.bind(n,7266,23))})),eiffel:ot("eiffel",(function(){return n.e(2182).then(n.t.bind(n,115,23))})),elixir:ot("elixir",(function(){return n.e(6343).then(n.t.bind(n,1974,23))})),elm:ot("elm",(function(){return n.e(7838).then(n.t.bind(n,8645,23))})),erb:ot("erb",(function(){return n.e(2584).then(n.t.bind(n,4790,23))})),erlang:ot("erlang",(function(){return n.e(2013).then(n.t.bind(n,4502,23))})),flow:ot("flow",(function(){return n.e(9742).then(n.t.bind(n,7225,23))})),fortran:ot("fortran",(function(){return n.e(2044).then(n.t.bind(n,6725,23))})),fsharp:ot("fsharp",(function(){return n.e(741).then(n.t.bind(n,5559,23))})),gedcom:ot("gedcom",(function(){return n.e(5867).then(n.t.bind(n,1549,23))})),gherkin:ot("gherkin",(function(){return n.e(6051).then(n.t.bind(n,6024,23))})),git:ot("git",(function(){return n.e(2564).then(n.t.bind(n,4222,23))})),glsl:ot("glsl",(function(){return n.e(158).then(n.t.bind(n,3322,23))})),go:ot("go",(function(){return n.e(6626).then(n.t.bind(n,1519,23))})),graphql:ot("graphql",(function(){return n.e(8921).then(n.t.bind(n,4055,23))})),groovy:ot("groovy",(function(){return n.e(5259).then(n.t.bind(n,3826,23))})),haml:ot("haml",(function(){return n.e(6487).then(n.t.bind(n,9536,23))})),handlebars:ot("handlebars",(function(){return n.e(3846).then(n.t.bind(n,2834,23))})),haskell:ot("haskell",(function(){return n.e(1007).then(n.t.bind(n,8090,23))})),haxe:ot("haxe",(function(){return n.e(3224).then(n.t.bind(n,5121,23))})),hpkp:ot("hpkp",(function(){return n.e(6749).then(n.t.bind(n,6942,23))})),hsts:ot("hsts",(function(){return n.e(3140).then(n.t.bind(n,561,23))})),http:ot("http",(function(){return n.e(6508).then(n.t.bind(n,9660,23))})),ichigojam:ot("ichigojam",(function(){return n.e(5056).then(n.t.bind(n,615,23))})),icon:ot("icon",(function(){return n.e(2413).then(n.t.bind(n,3865,23))})),inform7:ot("inform7",(function(){return n.e(2996).then(n.t.bind(n,5175,23))})),ini:ot("ini",(function(){return n.e(6495).then(n.t.bind(n,4970,23))})),io:ot("io",(function(){return n.e(7801).then(n.t.bind(n,764,23))})),j:ot("j",(function(){return n.e(4701).then(n.t.bind(n,7624,23))})),java:ot("java",(function(){return n.e(3980).then(n.t.bind(n,5909,23))})),javascript:ot("javascript",(function(){return n.e(7279).then(n.t.bind(n,6155,23))})),jolie:ot("jolie",(function(){return n.e(8458).then(n.t.bind(n,6604,23))})),json:ot("json",(function(){return n.e(3657).then(n.t.bind(n,5950,23))})),jsx:ot("jsx",(function(){return n.e(4657).then(n.t.bind(n,6412,23))})),julia:ot("julia",(function(){return n.e(5508).then(n.t.bind(n,9259,23))})),keyman:ot("keyman",(function(){return n.e(3819).then(n.t.bind(n,5760,23))})),kotlin:ot("kotlin",(function(){return n.e(4630).then(n.t.bind(n,9715,23))})),latex:ot("latex",(function(){return n.e(4732).then(n.t.bind(n,2876,23))})),less:ot("less",(function(){return n.e(5951).then(n.t.bind(n,1701,23))})),liquid:ot("liquid",(function(){return n.e(1323).then(n.t.bind(n,4927,23))})),lisp:ot("lisp",(function(){return n.e(3520).then(n.t.bind(n,3848,23))})),livescript:ot("livescript",(function(){return n.e(4698).then(n.t.bind(n,1469,23))})),lolcode:ot("lolcode",(function(){return n.e(7719).then(n.t.bind(n,8789,23))})),lua:ot("lua",(function(){return n.e(8119).then(n.t.bind(n,9803,23))})),makefile:ot("makefile",(function(){return n.e(7576).then(n.t.bind(n,3055,23))})),markdown:ot("markdown",(function(){return n.e(9835).then(n.t.bind(n,542,23))})),markupTemplating:ot("markupTemplating",(function(){return n.e(3047).then(n.t.bind(n,3205,23))})),markup:ot("markup",(function(){return n.e(2496).then(n.t.bind(n,2717,23))})),matlab:ot("matlab",(function(){return n.e(8404).then(n.t.bind(n,7992,23))})),mel:ot("mel",(function(){return n.e(226).then(n.t.bind(n,606,23))})),mizar:ot("mizar",(function(){return n.e(4069).then(n.t.bind(n,3388,23))})),monkey:ot("monkey",(function(){return n.e(8513).then(n.t.bind(n,5721,23))})),n4js:ot("n4js",(function(){return n.e(5014).then(n.t.bind(n,896,23))})),nasm:ot("nasm",(function(){return n.e(7253).then(n.t.bind(n,293,23))})),nginx:ot("nginx",(function(){return n.e(4052).then(n.t.bind(n,221,23))})),nim:ot("nim",(function(){return n.e(3025).then(n.t.bind(n,4188,23))})),nix:ot("nix",(function(){return n.e(3821).then(n.t.bind(n,4426,23))})),nsis:ot("nsis",(function(){return n.e(3502).then(n.t.bind(n,8447,23))})),objectivec:ot("objectivec",(function(){return n.e(8336).then(n.t.bind(n,6032,23))})),ocaml:ot("ocaml",(function(){return n.e(8992).then(n.t.bind(n,3607,23))})),opencl:ot("opencl",(function(){return n.e(8e3).then(n.t.bind(n,2001,23))})),oz:ot("oz",(function(){return n.e(7658).then(n.t.bind(n,3254,23))})),parigp:ot("parigp",(function(){return n.e(9979).then(n.t.bind(n,2694,23))})),parser:ot("parser",(function(){return n.e(672).then(n.t.bind(n,3273,23))})),pascal:ot("pascal",(function(){return n.e(7833).then(n.t.bind(n,718,23))})),perl:ot("perl",(function(){return n.e(4157).then(n.t.bind(n,4212,23))})),phpExtras:ot("phpExtras",(function(){return n.e(5793).then(n.t.bind(n,5137,23))})),php:ot("php",(function(){return n.e(2227).then(n.t.bind(n,8262,23))})),plsql:ot("plsql",(function(){return n.e(8840).then(n.t.bind(n,9149,23))})),powershell:ot("powershell",(function(){return n.e(342).then(n.t.bind(n,1777,23))})),processing:ot("processing",(function(){return n.e(9770).then(n.t.bind(n,3623,23))})),prolog:ot("prolog",(function(){return n.e(4045).then(n.t.bind(n,2707,23))})),properties:ot("properties",(function(){return n.e(81).then(n.t.bind(n,6267,23))})),protobuf:ot("protobuf",(function(){return n.e(979).then(n.t.bind(n,8809,23))})),pug:ot("pug",(function(){return n.e(9851).then(n.t.bind(n,2161,23))})),puppet:ot("puppet",(function(){return n.e(6861).then(n.t.bind(n,625,23))})),pure:ot("pure",(function(){return n.e(9315).then(n.t.bind(n,8393,23))})),python:ot("python",(function(){return n.e(2891).then(n.t.bind(n,2992,23))})),q:ot("q",(function(){return n.e(1751).then(n.t.bind(n,5762,23))})),qore:ot("qore",(function(){return n.e(2547).then(n.t.bind(n,8260,23))})),r:ot("r",(function(){return n.e(7882).then(n.t.bind(n,9308,23))})),reason:ot("reason",(function(){return n.e(8811).then(n.t.bind(n,5755,23))})),renpy:ot("renpy",(function(){return n.e(9291).then(n.t.bind(n,5108,23))})),rest:ot("rest",(function(){return n.e(2348).then(n.t.bind(n,6678,23))})),rip:ot("rip",(function(){return n.e(1768).then(n.t.bind(n,7496,23))})),roboconf:ot("roboconf",(function(){return n.e(3236).then(n.t.bind(n,527,23))})),ruby:ot("ruby",(function(){return n.e(369).then(n.t.bind(n,6939,23))})),rust:ot("rust",(function(){return n.e(1001).then(n.t.bind(n,3648,23))})),sas:ot("sas",(function(){return n.e(8067).then(n.t.bind(n,6009,23))})),sass:ot("sass",(function(){return n.e(9797).then(n.t.bind(n,1720,23))})),scala:ot("scala",(function(){return n.e(3818).then(n.t.bind(n,6054,23))})),scheme:ot("scheme",(function(){return n.e(5085).then(n.t.bind(n,9997,23))})),scss:ot("scss",(function(){return n.e(7286).then(n.t.bind(n,4296,23))})),smalltalk:ot("smalltalk",(function(){return n.e(2822).then(n.t.bind(n,1037,23))})),smarty:ot("smarty",(function(){return n.e(849).then(n.t.bind(n,4020,23))})),soy:ot("soy",(function(){return n.e(1423).then(n.t.bind(n,8181,23))})),sql:ot("sql",(function(){return n.e(7055).then(n.t.bind(n,1114,23))})),stylus:ot("stylus",(function(){return n.e(1621).then(n.t.bind(n,9168,23))})),swift:ot("swift",(function(){return n.e(3327).then(n.t.bind(n,3651,23))})),tap:ot("tap",(function(){return n.e(6975).then(n.t.bind(n,7290,23))})),tcl:ot("tcl",(function(){return n.e(5165).then(n.t.bind(n,7989,23))})),textile:ot("textile",(function(){return n.e(7097).then(n.t.bind(n,1065,23))})),tsx:ot("tsx",(function(){return n.e(2509).then(n.t.bind(n,7041,23))})),tt2:ot("tt2",(function(){return n.e(3444).then(n.t.bind(n,1028,23))})),twig:ot("twig",(function(){return n.e(8827).then(n.t.bind(n,9892,23))})),typescript:ot("typescript",(function(){return n.e(9461).then(n.t.bind(n,4979,23))})),vbnet:ot("vbnet",(function(){return n.e(5896).then(n.t.bind(n,3813,23))})),velocity:ot("velocity",(function(){return n.e(2980).then(n.t.bind(n,6891,23))})),verilog:ot("verilog",(function(){return n.e(8819).then(n.t.bind(n,1824,23))})),vhdl:ot("vhdl",(function(){return n.e(1167).then(n.t.bind(n,9447,23))})),vim:ot("vim",(function(){return n.e(1929).then(n.t.bind(n,3062,23))})),visualBasic:ot("visualBasic",(function(){return n.e(6558).then(n.t.bind(n,6215,23))})),wasm:ot("wasm",(function(){return n.e(206).then(n.t.bind(n,7684,23))})),wiki:ot("wiki",(function(){return n.e(1253).then(n.t.bind(n,8191,23))})),xeora:ot("xeora",(function(){return n.e(6574).then(n.t.bind(n,7202,23))})),xojo:ot("xojo",(function(){return n.e(3116).then(n.t.bind(n,1301,23))})),xquery:ot("xquery",(function(){return n.e(982).then(n.t.bind(n,349,23))})),yaml:ot("yaml",(function(){return n.e(5983).then(n.t.bind(n,5039,23))}))},at=(ut=(st={loader:function(){return n.e(5082).then(n.t.bind(n,1215,23)).then((function(e){return e.default||e}))},isLanguageRegistered:function(e,t){return e.registered(t)},languageLoaders:it,registerLanguage:function(e,t,n){return e.register(n)}}).loader,lt=st.isLanguageRegistered,ct=st.registerLanguage,dt=st.languageLoaders,pt=st.noAsyncLoadingLanguages,ft=function(e){function t(){return je(this,t),Ke(this,We(t).apply(this,arguments))}var n,o,i,a;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&(0,qe.Z)(e,t)}(t,e),n=t,o=[{key:"componentDidUpdate",value:function(){!t.isRegistered(this.props.language)&&dt&&this.loadLanguage()}},{key:"componentDidMount",value:function(){var e=this;t.astGeneratorPromise||t.loadAstGenerator(),t.astGenerator||t.astGeneratorPromise.then((function(){e.forceUpdate()})),!t.isRegistered(this.props.language)&&dt&&this.loadLanguage()}},{key:"loadLanguage",value:function(){var e=this,n=this.props.language;"text"!==n&&t.loadLanguage(n).then((function(){e.forceUpdate()}))}},{key:"normalizeLanguage",value:function(e){return t.isSupportedLanguage(e)?e:"text"}},{key:"render",value:function(){return r.createElement(t.highlightInstance,(0,Le.Z)({},this.props,{language:this.normalizeLanguage(this.props.language),astGenerator:t.astGenerator}))}}],i=[{key:"preload",value:function(){return t.loadAstGenerator()}},{key:"loadLanguage",value:(a=Be(Re().mark((function e(n){var r;return Re().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof(r=dt[n])){e.next=5;break}return e.abrupt("return",r(t.registerLanguage));case 5:throw new Error("Language ".concat(n," not supported"));case 6:case"end":return e.stop()}}),e,this)}))),function(e){return a.apply(this,arguments)})},{key:"isSupportedLanguage",value:function(e){return t.isRegistered(e)||"function"==typeof dt[e]}},{key:"loadAstGenerator",value:function(){return t.astGeneratorPromise=ut().then((function(e){t.astGenerator=e,ct&&t.languages.forEach((function(t,n){return ct(e,n,t)}))})),t.astGeneratorPromise}}],o&&He(n.prototype,o),i&&He(n,i),Object.defineProperty(n,"prototype",{writable:!1}),t}(r.PureComponent),Ue(ft,"astGenerator",null),Ue(ft,"highlightInstance",rt(null,{})),Ue(ft,"astGeneratorPromise",null),Ue(ft,"languages",new Map),Ue(ft,"supportedLanguages",st.supportedLanguages||Object.keys(dt||{})),Ue(ft,"isRegistered",(function(e){if(pt)return!0;if(!ct)throw new Error("Current syntax highlighter doesn't support registration of languages");return ft.astGenerator?lt(ft.astGenerator,e):ft.languages.has(e)})),Ue(ft,"registerLanguage",(function(e,t){if(!ct)throw new Error("Current syntax highlighter doesn't support registration of languages");if(ft.astGenerator)return ct(ft.astGenerator,e,t);ft.languages.set(e,t)})),ft);var st,ut,lt,ct,dt,pt,ft;function ht(){return ht=Object.assign||function(e){for(var t=1;t=0||(o[n]=e[n]);return o}function gt(e,t){return t||(t=e.slice(0)),e.raw=t,e}function bt(e){var t=e;return function(e){var n=function(e){return ht({mode:"light"},null==e?void 0:e.theme)}(e);return t[n.mode]}}var yt="inherit",_t="inherit",Ct={fontSize:_t,fontFamily:yt,lineHeight:20/12,padding:8},kt=function(e){return{fontSize:_t,lineHeight:20/14,color:e.lineNumberColor,backgroundColor:e.lineNumberBgColor,flexShrink:0,padding:8,textAlign:"right",userSelect:"none"}},xt=function(e){return{key:{color:e.keywordColor,fontWeight:"bolder"},keyword:{color:e.keywordColor,fontWeight:"bolder"},"attr-name":{color:e.attributeColor},selector:{color:e.selectorTagColor},comment:{color:e.commentColor,fontFamily:yt,fontStyle:"italic"},"block-comment":{color:e.commentColor,fontFamily:yt,fontStyle:"italic"},"function-name":{color:e.sectionColor},"class-name":{color:e.sectionColor},doctype:{color:e.docTagColor},substr:{color:e.substringColor},namespace:{color:e.nameColor},builtin:{color:e.builtInColor},entity:{color:e.literalColor},bullet:{color:e.bulletColor},code:{color:e.codeColor},addition:{color:e.additionColor},regex:{color:e.regexpColor},symbol:{color:e.symbolColor},variable:{color:e.variableColor},url:{color:e.linkColor},"selector-attr":{color:e.selectorAttributeColor},"selector-pseudo":{color:e.selectorPseudoColor},type:{color:e.typeColor},string:{color:e.stringColor},quote:{color:e.quoteColor},tag:{color:e.templateTagColor},deletion:{color:e.deletionColor},title:{color:e.titleColor},section:{color:e.sectionColor},"meta-keyword":{color:e.metaKeywordColor},meta:{color:e.metaColor},italic:{fontStyle:"italic"},bold:{fontWeight:"bolder"},function:{color:e.functionColor},number:{color:e.numberColor}}},Et=function(e){return{fontSize:_t,fontFamily:yt,background:e.backgroundColor,color:e.textColor,borderRadius:3,display:"flex",lineHeight:20/14,overflowX:"auto",whiteSpace:"pre"}},wt=function(e){return ht({'pre[class*="language-"]':Et(e)},xt(e))},It=function(e){return ht({'pre[class*="language-"]':ht({},Et(e),{padding:"2px 4px",display:"inline",whiteSpace:"pre-wrap"})},xt(e))};function St(e){void 0===e&&(e={mode:"light"});var t=ht({},function(e){var t={theme:e};return{lineNumberColor:bt({light:"#383a42",dark:"#abb2bf"})(t),lineNumberBgColor:bt({light:"#fafafa",dark:"#282c34"})(t),backgroundColor:bt({light:"#fafafa",dark:"#282c34"})(t),textColor:bt({light:"#383a42",dark:"#abb2bf"})(t),substringColor:bt({light:"#e45649",dark:"#e06c75"})(t),keywordColor:bt({light:"#a626a4",dark:"#c678dd"})(t),attributeColor:bt({light:"#50a14f",dark:"#98c379"})(t),selectorAttributeColor:bt({light:"#e45649",dark:"#e06c75"})(t),docTagColor:bt({light:"#a626a4",dark:"#c678dd"})(t),nameColor:bt({light:"#e45649",dark:"#e06c75"})(t),builtInColor:bt({light:"#c18401",dark:"#e6c07b"})(t),literalColor:bt({light:"#0184bb",dark:"#56b6c2"})(t),bulletColor:bt({light:"#4078f2",dark:"#61aeee"})(t),codeColor:bt({light:"#383a42",dark:"#abb2bf"})(t),additionColor:bt({light:"#50a14f",dark:"#98c379"})(t),regexpColor:bt({light:"#50a14f",dark:"#98c379"})(t),symbolColor:bt({light:"#4078f2",dark:"#61aeee"})(t),variableColor:bt({light:"#986801",dark:"#d19a66"})(t),templateVariableColor:bt({light:"#986801",dark:"#d19a66"})(t),linkColor:bt({light:"#4078f2",dark:"#61aeee"})(t),selectorClassColor:bt({light:"#986801",dark:"#d19a66"})(t),typeColor:bt({light:"#986801",dark:"#d19a66"})(t),stringColor:bt({light:"#50a14f",dark:"#98c379"})(t),selectorIdColor:bt({light:"#4078f2",dark:"#61aeee"})(t),quoteColor:bt({light:"#a0a1a7",dark:"#5c6370"})(t),templateTagColor:bt({light:"#383a42",dark:"#abb2bf"})(t),deletionColor:bt({light:"#e45649",dark:"#e06c75"})(t),titleColor:bt({light:"#4078f2",dark:"#61aeee"})(t),sectionColor:bt({light:"#e45649",dark:"#e06c75"})(t),commentColor:bt({light:"#a0a1a7",dark:"#5c6370"})(t),metaKeywordColor:bt({light:"#383a42",dark:"#abb2bf"})(t),metaColor:bt({light:"#4078f2",dark:"#61aeee"})(t),functionColor:bt({light:"#383a42",dark:"#abb2bf"})(t),numberColor:bt({light:"#986801",dark:"#d19a66"})(t)}}(e),e);return{lineNumberContainerStyle:kt(t),codeBlockStyle:wt(t),inlineCodeStyle:It(t),codeContainerStyle:Ct}}var Pt=Object.freeze([{name:"PHP",alias:["php","php3","php4","php5"],value:"php"},{name:"Java",alias:["java"],value:"java"},{name:"CSharp",alias:["csharp","c#"],value:"cs"},{name:"Python",alias:["python","py"],value:"python"},{name:"JavaScript",alias:["javascript","js"],value:"javascript"},{name:"XML",alias:["xml"],value:"xml"},{name:"HTML",alias:["html","htm"],value:"markup"},{name:"C++",alias:["c++","cpp","clike"],value:"cpp"},{name:"Ruby",alias:["ruby","rb","duby"],value:"ruby"},{name:"Objective-C",alias:["objective-c","objectivec","obj-c","objc"],value:"objectivec"},{name:"C",alias:["c"],value:"cpp"},{name:"Swift",alias:["swift"],value:"swift"},{name:"TeX",alias:["tex","latex"],value:"tex"},{name:"Shell",alias:["shell","sh","ksh","zsh"],value:"bash"},{name:"Scala",alias:["scala"],value:"scala"},{name:"Go",alias:["go"],value:"go"},{name:"ActionScript",alias:["actionscript","actionscript3","as"],value:"actionscript"},{name:"ColdFusion",alias:["coldfusion"],value:"xml"},{name:"JavaFX",alias:["javafx","jfx"],value:"java"},{name:"VbNet",alias:["vbnet","vb.net"],value:"vbnet"},{name:"JSON",alias:["json"],value:"json"},{name:"MATLAB",alias:["matlab"],value:"matlab"},{name:"Groovy",alias:["groovy"],value:"groovy"},{name:"SQL",alias:["sql","postgresql","postgres","plpgsql","psql","postgresql-console","postgres-console","tsql","t-sql","mysql","sqlite"],value:"sql"},{name:"R",alias:["r"],value:"r"},{name:"Perl",alias:["perl","pl"],value:"perl"},{name:"Lua",alias:["lua"],value:"lua"},{name:"Delphi",alias:["delphi","pas","pascal","objectpascal"],value:"delphi"},{name:"XML",alias:["xml"],value:"xml"},{name:"TypeScript",alias:["typescript","ts","tsx"],value:"typescript"},{name:"CoffeeScript",alias:["coffeescript","coffee-script","coffee"],value:"coffeescript"},{name:"Haskell",alias:["haskell","hs"],value:"haskell"},{name:"Puppet",alias:["puppet"],value:"puppet"},{name:"Arduino",alias:["arduino"],value:"arduino"},{name:"Fortran",alias:["fortran"],value:"fortran"},{name:"Erlang",alias:["erlang","erl"],value:"erlang"},{name:"PowerShell",alias:["powershell","posh","ps1","psm1"],value:"powershell"},{name:"Haxe",alias:["haxe","hx","hxsl"],value:"haxe"},{name:"Elixir",alias:["elixir","ex","exs"],value:"elixir"},{name:"Verilog",alias:["verilog","v"],value:"verilog"},{name:"Rust",alias:["rust"],value:"rust"},{name:"VHDL",alias:["vhdl"],value:"vhdl"},{name:"Sass",alias:["sass"],value:"less"},{name:"OCaml",alias:["ocaml"],value:"ocaml"},{name:"Dart",alias:["dart"],value:"dart"},{name:"CSS",alias:["css"],value:"css"},{name:"reStructuredText",alias:["restructuredtext","rst","rest"],value:"rest"},{name:"ObjectPascal",alias:["objectpascal"],value:"delphi"},{name:"Kotlin",alias:["kotlin"],value:"kotlin"},{name:"D",alias:["d"],value:"d"},{name:"Octave",alias:["octave"],value:"matlab"},{name:"QML",alias:["qbs","qml"],value:"qml"},{name:"Prolog",alias:["prolog"],value:"prolog"},{name:"FoxPro",alias:["foxpro","vfp","clipper","xbase"],value:"vbnet"},{name:"Scheme",alias:["scheme","scm"],value:"scheme"},{name:"CUDA",alias:["cuda","cu"],value:"cpp"},{name:"Julia",alias:["julia","jl"],value:"julia"},{name:"Racket",alias:["racket","rkt"],value:"lisp"},{name:"Ada",alias:["ada","ada95","ada2005"],value:"ada"},{name:"Tcl",alias:["tcl"],value:"tcl"},{name:"Mathematica",alias:["mathematica","mma","nb"],value:"mathematica"},{name:"Autoit",alias:["autoit"],value:"autoit"},{name:"StandardML",alias:["standardmL","sml","standardml"],value:"sml"},{name:"Objective-J",alias:["objective-j","objectivej","obj-j","objj"],value:"objectivec"},{name:"Smalltalk",alias:["smalltalk","squeak","st"],value:"smalltalk"},{name:"Vala",alias:["vala","vapi"],value:"vala"},{name:"ABAP",alias:["abap"],value:"sql"},{name:"LiveScript",alias:["livescript","live-script"],value:"livescript"},{name:"XQuery",alias:["xquery","xqy","xq","xql","xqm"],value:"xquery"},{name:"PlainText",alias:["text","plaintext"],value:"text"},{name:"Yaml",alias:["yaml","yml"],value:"yaml"},{name:"GraphQL",alias:["graphql","gql"],value:"graphql"}]),Tt=function(e){function t(){var t;return(t=e.apply(this,arguments)||this)._isMounted=!1,t}mt(t,e);var n=t.prototype;return n.componentDidMount=function(){this._isMounted=!0},n.componentWillUnmount=function(){this._isMounted=!1},n.getLineOpacity=function(e){if(!this.props.highlight)return 1;var t=this.props.highlight.split(",").map((function(e){if(e.indexOf("-")>0){var t=e.split("-").map(Number).sort(),n=t[0],r=t[1];return Array(r+1).fill(void 0).map((function(e,t){return t})).slice(n,r+1)}return Number(e)})).reduce((function(e,t){return e.concat(t)}),[]);return 0===t.length||t.includes(e)?1:.3},n.render=function(){var e=this,t=St(this.props.theme).inlineCodeStyle,n={language:function(e){if(!e)return"";var t=Pt.find((function(t){return t.name===e||t.alias.includes(e)}));return t?t.value:e||"text"}(this.props.language),PreTag:this.props.preTag,style:this.props.codeStyle||t,showLineNumbers:this.props.showLineNumbers,startingLineNumber:this.props.startingLineNumber,codeTagProps:this.props.codeTagProps};return r.createElement(at,Object.assign({},n,{wrapLines:this.props.highlight.length>0,customStyle:this.props.customStyle,lineProps:function(t){return{style:ht({opacity:e.getLineOpacity(t)},e.props.lineNumberContainerStyle)}}}),this.props.text)},t}(r.PureComponent);Tt.defaultProps={theme:{},showLineNumbers:!1,startingLineNumber:1,lineNumberContainerStyle:{},codeTagProps:{},preTag:"span",highlight:"",customStyle:{}};var Mt="text",Nt=function(e){function t(){var t;return(t=e.apply(this,arguments)||this)._isMounted=!1,t.handleCopy=function(e){var t=e.nativeEvent.clipboardData;if(t){e.preventDefault();var n=window.getSelection();if(null===n)return;var r=n.toString(),o="
"+r+"
";t.clearData(),t.setData("text/html",o),t.setData("text/plain",r)}},t}mt(t,e);var n=t.prototype;return n.componentDidMount=function(){this._isMounted=!0},n.componentWillUnmount=function(){this._isMounted=!1},n.render=function(){var e,t,n,o,i=St(this.props.theme),a=i.lineNumberContainerStyle,s=i.codeBlockStyle,u=i.codeContainerStyle,l={language:this.props.language||Mt,codeStyle:ht({},s,null===(e=this.props)||void 0===e?void 0:e.codeBlockStyle),customStyle:null===(t=this.props)||void 0===t?void 0:t.customStyle,showLineNumbers:this.props.showLineNumbers,startingLineNumber:this.props.startingLineNumber,codeTagProps:{style:ht({},u,null===(n=this.props)||void 0===n?void 0:n.codeContainerStyle)},lineNumberContainerStyle:ht({},a,null===(o=this.props)||void 0===o?void 0:o.lineNumberContainerStyle),text:this.props.text.toString(),highlight:this.props.highlight};return r.createElement(Tt,Object.assign({},l))},t}(r.PureComponent);Nt.displayName="CodeBlock",Nt.defaultProps={showLineNumbers:!0,startingLineNumber:1,language:Mt,theme:{},highlight:"",lineNumberContainerStyle:{},customStyle:{},codeBlockStyle:{}};var Dt=function(e){var t=e.size,n=e.color,o=vt(e,["size","color"]);return r.createElement("svg",Object.assign({},o,{viewBox:"0 0 384 512",width:t,height:t,fill:n}),r.createElement("path",{d:"M280 240H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zm0 96H168c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8zM112 232c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 48c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm144 408c0 4.4-3.6 8-8 8H56c-4.4 0-8-3.6-8-8V120c0-4.4 3.6-8 8-8h40v32c0 8.8 7.2 16 16 16h160c8.8 0 16-7.2 16-16v-32h40c4.4 0 8 3.6 8 8v336z"}))};Dt.displayName="ClipboardListIcon",Dt.defaultProps={size:"16pt",color:"currentcolor"};var At=function(e){var t=e.size,n=e.color,o=vt(e,["size","color"]);return r.createElement("svg",Object.assign({},o,{viewBox:"0 0 384 512",width:t,height:t,fill:n}),r.createElement("path",{d:"M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm121.2 231.8l-143 141.8c-4.7 4.7-12.3 4.6-17-.1l-82.6-83.3c-4.7-4.7-4.6-12.3.1-17L99.1 285c4.7-4.7 12.3-4.6 17 .1l46 46.4 106-105.2c4.7-4.7 12.3-4.6 17 .1l28.2 28.4c4.7 4.8 4.6 12.3-.1 17z"}))};function Ft(e){var t=e.size,n=e.color,o=e.copied,i=vt(e,["size","color","copied"]);return o?r.createElement(At,Object.assign({},{color:n,size:t},i)):r.createElement(Dt,Object.assign({},{color:n,size:t},i))}At.displayName="ClipboardCheckIcon",At.defaultProps={size:"16pt",color:"currentcolor"};var Rt=function(){var e=(0,r.useState)(!1),t=e[0],n=e[1];return(0,r.useEffect)((function(){n(Boolean("undefined"!=typeof window&&window.document&&window.document.createElement))}),[]),{isBrowser:t,isServer:!t}},Ot=function(e){var t=document.createElement("div");return t.setAttribute("id",e),t},Bt=function(e){void 0===e&&(e=Math.random().toString(32).slice(2,10));var t="zeit-ui-"+e,n=Rt().isBrowser,o=(0,r.useState)(n?Ot(t):null),i=o[0],a=o[1];return(0,r.useEffect)((function(){var e=document.querySelector("#"+t),n=e||Ot(t);e||document.body.appendChild(n),a(n)}),[]),i},Lt={},jt={onError:function(){return t="[Zeit UI]"+((e="use-clipboard")?" ["+e+"]":" ")+": "+"Failed to copy.",void("undefined"!=typeof console&&(Lt[t]||(Lt[t]=!0,console.warn(t))));var e,t}},Ht=function(e){void 0===e&&(e=jt);var t=Bt("clipboard"),n=(0,r.useCallback)((function(n){!function(t,n){if(t&&n){var r=window.getSelection();if(r){t.style.whiteSpace="pre",t.textContent=n;var o=window.document.createRange();r.removeAllRanges(),o.selectNode(t),r.addRange(o);try{window.document.execCommand("copy")}catch(i){e.onError&&e.onError()}r.removeAllRanges(),t&&(t.textContent="")}}}(t,n)}),[t]);return{copy:n}};function zt(){var e=gt(["\n position: relative;\n background: ",";\n border-radius: 0.25rem;\n padding: ",";\n"]);return zt=function(){return e},e}function Kt(){var e=gt(["\n position: absolute;\n top: 0.5em;\n right: 0.75em;\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n align-items: center;\n background: ",";\n margin-top: 0.15rem;\n border-radius: 0.25rem;\n max-height: 2rem;\n max-width: 2rem;\n padding: 0.25rem;\n &:hover {\n opacity: ",";\n }\n &:focus {\n outline: none;\n opacity: 1;\n }\n .icon {\n width: 1rem;\n height: 1rem;\n }\n"]);return Kt=function(){return e},e}var Wt=Ae.button(Kt(),(function(e){return e.theme.backgroundColor}),(function(e){return e.copied?1:.5})),qt=Ae.div(zt(),(function(e){return e.theme.backgroundColor}),(function(e){return e.codeBlock?"0.25rem 0.5rem 0.25rem 0.25rem":"0.25rem"}));function Ut(e){var t=e.theme,n=e.text,o=e.codeBlock,i=void 0!==o&&o,a=e.customStyle,s=void 0===a?{}:a,u=e.onCopy,l=vt(e,["theme","text","codeBlock","customStyle","onCopy"]),c=(0,r.useState)(!1),d=c[0],p=c[1],f=Ht().copy;return r.createElement(qt,Object.assign({},{codeBlock:i},{style:s,theme:t}),i?r.createElement(Nt,Object.assign({text:n,theme:t},l)):r.createElement(Tt,Object.assign({text:n,theme:t},l)),r.createElement(Wt,Object.assign({type:"button",onClick:function(){f(n),u?u():p(!d)}},{theme:t,copied:d}),r.createElement(Ft,{color:d?t.stringColor:t.textColor,copied:d,className:"icon",size:"16pt"})))}var Gt=De(Ut);function Vt(e){return r.createElement(Gt,Object.assign({},e))}var Zt={lineNumberColor:"#6272a4",lineNumberBgColor:"#282a36",backgroundColor:"#282a36",textColor:"#f8f8f2",substringColor:"#f1fa8c",keywordColor:"#ff79c6",attributeColor:"#50fa7b",selectorTagColor:"#8be9fd",docTagColor:"#f1fa8c",nameColor:"#66d9ef",builtInColor:"#50fa7b",literalColor:"#FF79C6",bulletColor:"#8BE9FD",codeColor:"#50FA7B",additionColor:"#f1fa8c",regexpColor:"#F1FA8C",symbolColor:"#F1FA8C",variableColor:"#F8F8F2",templateVariableColor:"#FF79C6",linkColor:"#00bcd4",selectorAttributeColor:"#FF79C6",selectorPseudoColor:"#FF79C6",typeColor:"#8BE9FD",stringColor:"#F1FA8C",selectorIdColor:"#50FA7B",selectorClassColor:"#50FA7B",quoteColor:"#E9F284",templateTagColor:"#FF79C6",deletionColor:"#FF79C6",titleColor:"#ff555580",sectionColor:"#F8F8F2",commentColor:"#6272A4",metaKeywordColor:"#50FA7B",metaColor:"#50FA7B",functionColor:"#50FA7B",numberColor:"#bd93f9"}},655:(e,t,n)=>{"use strict";n.d(t,{ZT:()=>o,_T:()=>a,ev:()=>u,gn:()=>s,pi:()=>i});var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var i=function(){return i=Object.assign||function(e){for(var t,n=1,r=arguments.length;n=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}Object.create;function u(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o{var r=n(8698).default;function o(){"use strict";e.exports=o=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},n=Object.prototype,i=n.hasOwnProperty,a="function"==typeof Symbol?Symbol:{},s=a.iterator||"@@iterator",u=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function c(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(T){c=function(e,t,n){return e[t]=n}}function d(e,t,n,r){var o=t&&t.prototype instanceof h?t:h,i=Object.create(o.prototype),a=new I(r||[]);return i._invoke=function(e,t,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return P()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=x(a,n);if(s){if(s===f)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=p(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,a),i}function p(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(T){return{type:"throw",arg:T}}}t.wrap=d;var f={};function h(){}function m(){}function v(){}var g={};c(g,s,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(S([])));y&&y!==n&&i.call(y,s)&&(g=y);var _=v.prototype=h.prototype=Object.create(g);function C(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function n(o,a,s,u){var l=p(e[o],e,a);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==r(d)&&i.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,s,u)}),(function(e){n("throw",e,s,u)})):t.resolve(d).then((function(e){c.value=e,s(c)}),(function(e){return n("throw",e,s,u)}))}u(l.arg)}var o;this._invoke=function(e,r){function i(){return new t((function(t,o){n(e,r,t,o)}))}return o=o?o.then(i,i):i()}}function x(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,x(e,t),"throw"===t.method))return f;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var r=p(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,f;var o=r.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function E(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function w(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function I(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(E,this),this.reset(!0)}function S(e){if(e){var t=e[s];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,r=function t(){for(;++n=0;--r){var o=this.tryEntries[r],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=i.call(o,"catchLoc"),u=i.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var r=this.tryEntries[n];if(r.tryLoc<=this.prev&&i.call(r,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),w(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;w(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:S(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},t}e.exports=o,e.exports.__esModule=!0,e.exports.default=e.exports},8698:e=>{function t(n){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},4687:(e,t,n)=>{var r=n(7061)();e.exports=r;try{regeneratorRuntime=r}catch(o){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}}}]); \ No newline at end of file diff --git a/assets/js/2252.3fa558ad.js.LICENSE.txt b/assets/js/2252.3fa558ad.js.LICENSE.txt new file mode 100644 index 000000000..ae386fb79 --- /dev/null +++ b/assets/js/2252.3fa558ad.js.LICENSE.txt @@ -0,0 +1 @@ +/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ diff --git a/assets/js/25433785.49cba232.js b/assets/js/25433785.49cba232.js new file mode 100644 index 000000000..94d846ad1 --- /dev/null +++ b/assets/js/25433785.49cba232.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2240],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>m});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),u=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=u(e.components);return n.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),h=u(a),m=r,d=h["".concat(s,".").concat(m)]||h[m]||p[m]||o;return a?n.createElement(d,i(i({ref:t},c),{},{components:a})):n.createElement(d,i({ref:t},c))}));function m(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=a.length,i=new Array(o);i[0]=h;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l.mdxType="string"==typeof e?e:r,i[1]=l;for(var u=2;u{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>u});var n=a(7462),r=(a(7294),a(3905));const o={slug:"what_is_websocket_part2",title:"What is WebSocket? (part 2/2)",authors:["JialinX","KevinG"],custom_edit_url:null},i=void 0,l={permalink:"/azure-webpubsub/blog/what_is_websocket_part2",source:"@site/blog/2022-11-25-what-is-websockets_part2/index.md",title:"What is WebSocket? (part 2/2)",description:"Summary",date:"2022-11-25T00:00:00.000Z",formattedDate:"November 25, 2022",tags:[],readingTime:2.51,hasTruncateMarker:!1,authors:[{name:"Jialin Xin",title:"Senior Software Engineer",url:"https://github.com/JialinXin",imageURL:"https://avatars.githubusercontent.com/u/15338714?v=4",key:"JialinX"},{name:"Kevin Guo",title:"Senior Product Manager",url:"https://github.com/kevinguo-ed",imageURL:"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4",key:"KevinG"}],frontMatter:{slug:"what_is_websocket_part2",title:"What is WebSocket? (part 2/2)",authors:["JialinX","KevinG"],custom_edit_url:null},prevItem:{title:"Azure Web PubSub for Socket.IO is now generally available",permalink:"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available"},nextItem:{title:"What is WebSocket? (part 1/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part1"}},s={authorsImageUrls:[void 0,void 0]},u=[{value:"Summary",id:"summary",level:2},{value:"Quick links",id:"quick-links",level:2},{value:"Full-duplex",id:"full-duplex",level:2},{value:"To conclude",id:"to-conclude",level:2}],c={toc:u};function p(e){let{components:t,...o}=e;return(0,r.kt)("wrapper",(0,n.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"summary"},(0,r.kt)("strong",{parentName:"h2"},"Summary")),(0,r.kt)("p",null,"This article is the second of a two-part series that describes the values of WebSocket on a high-level."),(0,r.kt)("h2",{id:"quick-links"},(0,r.kt)("strong",{parentName:"h2"},"Quick links")),(0,r.kt)("p",null,"Explore a few live apps built with ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("a",{parentName:"strong",href:"https://learn.microsoft.com/en-us/azure/azure-web-pubsub/overview"},"\ud83d\udd17 Web PubSub")),", a fully managed WebSocket service from Azure. "),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/chat"},"\ud83d\udd17 A simple chat app"),(0,r.kt)("br",{parentName:"p"}),"\n",(0,r.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/whiteboard"},"\ud83d\udd17 A collaborative whiteboard app")," "),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},(0,r.kt)("strong",{parentName:"p"},"Definition")),(0,r.kt)("p",{parentName:"blockquote"},"WebSocket gives developers a ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("em",{parentName:"strong"},"bidirectional")),", ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("em",{parentName:"strong"},"full-duplex"))," communication channels over HTTP through a single TCP connection ")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"})),(0,r.kt)("h2",{id:"full-duplex"},(0,r.kt)("strong",{parentName:"h2"},"Full-duplex")),(0,r.kt)("p",null,"To put it simply, \u201cfull-duplex\u201d means that data can be transmitted at the same time in both directions. Like \u201cbidirectional\u201d we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the ",(0,r.kt)("strong",{parentName:"p"},"TIMING")," of sending data. "),(0,r.kt)("p",null,"A phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time. "),(0,r.kt)("p",null,"A walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak. "),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Picture of a walkie-talkie",src:a(4326).Z,width:"500",height:"500"})),(0,r.kt)("p",null,"The web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie. "),(0,r.kt)("p",null,"Imagine if you are talking with your grandma using a walkie-talkie and you ask \u201cGrandma, what\u2019s like when you were growing up in the countryside?\u201d Grandma presses the \u201cTalk button\u201d and she starts from the Great Depression, World War 1 and on with World War 2\u2026 While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.) "),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Picture of a grandma and her granddaughter",src:a(5066).Z,width:"703",height:"459"})),(0,r.kt)("p",null,"The walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users\u2019 screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web."),(0,r.kt)("h2",{id:"to-conclude"},(0,r.kt)("strong",{parentName:"h2"},"To conclude")),(0,r.kt)("p",null,"\u201cBidirectional\u201d and \u201cfull-duplex\u201d are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications.\n",(0,r.kt)("img",{alt:"Some scenarios that can be enabled by WebSocket",src:a(5549).Z,width:"961",height:"557"})),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Credits:"),(0,r.kt)("br",{parentName:"p"}),"\n","The walkie-talkie and the grandma photographs were taken by ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("a",{parentName:"strong",href:"https://www.pexels.com/@cottonbro/"},"\ud83d\udd17 cottonbro studio")),"."))}p.isMDXComponent=!0},5066:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/grandma-4f69b67909e231a6b983953601b687c2.jpg"},5549:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/scenarios-eab60a0b5a645c27b355710a716872ad.jpg"},4326:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/walkie_talkie-86467d9c47386511657e759425999a3f.jpg"}}]); \ No newline at end of file diff --git a/assets/js/31d81a60.29449a25.js b/assets/js/31d81a60.29449a25.js new file mode 100644 index 000000000..93beaad18 --- /dev/null +++ b/assets/js/31d81a60.29449a25.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4666],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>m});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),u=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=u(e.components);return n.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),h=u(a),m=r,d=h["".concat(s,".").concat(m)]||h[m]||p[m]||o;return a?n.createElement(d,i(i({ref:t},c),{},{components:a})):n.createElement(d,i({ref:t},c))}));function m(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=a.length,i=new Array(o);i[0]=h;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l.mdxType="string"==typeof e?e:r,i[1]=l;for(var u=2;u{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>u});var n=a(7462),r=(a(7294),a(3905));const o={slug:"what_is_websocket_part2",title:"What is WebSocket? (part 2/2)",authors:["JialinX","KevinG"],custom_edit_url:null},i=void 0,l={permalink:"/azure-webpubsub/blog/what_is_websocket_part2",source:"@site/blog/2022-11-25-what-is-websockets_part2/index.md",title:"What is WebSocket? (part 2/2)",description:"Summary",date:"2022-11-25T00:00:00.000Z",formattedDate:"November 25, 2022",tags:[],readingTime:2.51,hasTruncateMarker:!1,authors:[{name:"Jialin Xin",title:"Senior Software Engineer",url:"https://github.com/JialinXin",imageURL:"https://avatars.githubusercontent.com/u/15338714?v=4",key:"JialinX"},{name:"Kevin Guo",title:"Senior Product Manager",url:"https://github.com/kevinguo-ed",imageURL:"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4",key:"KevinG"}],frontMatter:{slug:"what_is_websocket_part2",title:"What is WebSocket? (part 2/2)",authors:["JialinX","KevinG"],custom_edit_url:null},prevItem:{title:"Azure Web PubSub for Socket.IO is now generally available",permalink:"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available"},nextItem:{title:"What is WebSocket? (part 1/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part1"}},s={authorsImageUrls:[void 0,void 0]},u=[{value:"Summary",id:"summary",level:2},{value:"Quick links",id:"quick-links",level:2},{value:"Full-duplex",id:"full-duplex",level:2},{value:"To conclude",id:"to-conclude",level:2}],c={toc:u};function p(e){let{components:t,...o}=e;return(0,r.kt)("wrapper",(0,n.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"summary"},(0,r.kt)("strong",{parentName:"h2"},"Summary")),(0,r.kt)("p",null,"This article is the second of a two-part series that describes the values of WebSocket on a high-level."),(0,r.kt)("h2",{id:"quick-links"},(0,r.kt)("strong",{parentName:"h2"},"Quick links")),(0,r.kt)("p",null,"Explore a few live apps built with ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("a",{parentName:"strong",href:"https://learn.microsoft.com/en-us/azure/azure-web-pubsub/overview"},"\ud83d\udd17 Web PubSub")),", a fully managed WebSocket service from Azure. "),(0,r.kt)("p",null,(0,r.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/chat"},"\ud83d\udd17 A simple chat app"),(0,r.kt)("br",{parentName:"p"}),"\n",(0,r.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/whiteboard"},"\ud83d\udd17 A collaborative whiteboard app")," "),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},(0,r.kt)("strong",{parentName:"p"},"Definition")),(0,r.kt)("p",{parentName:"blockquote"},"WebSocket gives developers a ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("em",{parentName:"strong"},"bidirectional")),", ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("em",{parentName:"strong"},"full-duplex"))," communication channels over HTTP through a single TCP connection ")),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"})),(0,r.kt)("h2",{id:"full-duplex"},(0,r.kt)("strong",{parentName:"h2"},"Full-duplex")),(0,r.kt)("p",null,"To put it simply, \u201cfull-duplex\u201d means that data can be transmitted at the same time in both directions. Like \u201cbidirectional\u201d we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the ",(0,r.kt)("strong",{parentName:"p"},"TIMING")," of sending data. "),(0,r.kt)("p",null,"A phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time. "),(0,r.kt)("p",null,"A walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak. "),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Picture of a walkie-talkie",src:a(4326).Z,width:"500",height:"500"})),(0,r.kt)("p",null,"The web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie. "),(0,r.kt)("p",null,"Imagine if you are talking with your grandma using a walkie-talkie and you ask \u201cGrandma, what\u2019s like when you were growing up in the countryside?\u201d Grandma presses the \u201cTalk button\u201d and she starts from the Great Depression, World War 1 and on with World War 2\u2026 While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.) "),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Picture of a grandma and her granddaughter",src:a(5066).Z,width:"703",height:"459"})),(0,r.kt)("p",null,"The walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users\u2019 screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web."),(0,r.kt)("h2",{id:"to-conclude"},(0,r.kt)("strong",{parentName:"h2"},"To conclude")),(0,r.kt)("p",null,"\u201cBidirectional\u201d and \u201cfull-duplex\u201d are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications.\n",(0,r.kt)("img",{alt:"Some scenarios that can be enabled by WebSocket",src:a(5549).Z,width:"961",height:"557"})),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"Credits:"),(0,r.kt)("br",{parentName:"p"}),"\n","The walkie-talkie and the grandma photographs were taken by ",(0,r.kt)("strong",{parentName:"p"},(0,r.kt)("a",{parentName:"strong",href:"https://www.pexels.com/@cottonbro/"},"\ud83d\udd17 cottonbro studio")),"."))}p.isMDXComponent=!0},5066:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/grandma-4f69b67909e231a6b983953601b687c2.jpg"},5549:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/scenarios-eab60a0b5a645c27b355710a716872ad.jpg"},4326:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/walkie_talkie-86467d9c47386511657e759425999a3f.jpg"}}]); \ No newline at end of file diff --git a/assets/js/3720c009.ff51a9ee.js b/assets/js/3720c009.ff51a9ee.js new file mode 100644 index 000000000..ebc11c2af --- /dev/null +++ b/assets/js/3720c009.ff51a9ee.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3751],{9861:(e,t,a)=>{a.r(t),a.d(t,{default:()=>E});var l=a(7294),n=a(6010),r=a(5999);var c=a(1944),s=a(5281),m=a(3285),o=a(3008);const u="tag_Nnez";function g(e){let{letterEntry:t}=e;return l.createElement("article",null,l.createElement("h2",null,t.letter),l.createElement("ul",{className:"padding--none"},t.tags.map((e=>l.createElement("li",{key:e.permalink,className:u},l.createElement(o.Z,e))))),l.createElement("hr",null))}function i(e){let{tags:t}=e;const a=function(e){const t={};return Object.values(e).forEach((e=>{const a=function(e){return e[0].toUpperCase()}(e.label);t[a]??=[],t[a].push(e)})),Object.entries(t).sort(((e,t)=>{let[a]=e,[l]=t;return a.localeCompare(l)})).map((e=>{let[t,a]=e;return{letter:t,tags:a.sort(((e,t)=>e.label.localeCompare(t.label)))}}))}(t);return l.createElement("section",{className:"margin-vert--lg"},a.map((e=>l.createElement(g,{key:e.letter,letterEntry:e}))))}var p=a(197);function E(e){let{tags:t}=e;const a=(0,r.I)({id:"theme.tags.tagsPageTitle",message:"Tags",description:"The title of the tag list page"});return l.createElement(c.FG,{className:(0,n.Z)(s.k.wrapper.docsPages,s.k.page.docsTagsListPage)},l.createElement(c.d,{title:a}),l.createElement(p.Z,{tag:"doc_tags_list"}),l.createElement(m.Z,null,l.createElement("div",{className:"container margin-vert--lg"},l.createElement("div",{className:"row"},l.createElement("main",{className:"col col--8 col--offset-2"},l.createElement("h1",null,a),l.createElement(i,{tags:t}))))))}},3008:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),n=a(6010),r=a(9960);const c="tag_zVej",s="tagRegular_sFm0",m="tagWithCount_h2kH";function o(e){let{permalink:t,label:a,count:o}=e;return l.createElement(r.Z,{href:t,className:(0,n.Z)(c,o?m:s)},a,o&&l.createElement("span",null,o))}}}]); \ No newline at end of file diff --git a/assets/js/38cc22d9.5d4a7144.js b/assets/js/38cc22d9.5d4a7144.js new file mode 100644 index 000000000..7ed169b61 --- /dev/null +++ b/assets/js/38cc22d9.5d4a7144.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8781],{4469:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-blog","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/3ba8fa9f.afb35fef.js b/assets/js/3ba8fa9f.afb35fef.js new file mode 100644 index 000000000..b8460ea11 --- /dev/null +++ b/assets/js/3ba8fa9f.afb35fef.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5378],{8771:(e,t,a)=>{a.d(t,{Z:()=>o});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2048 2048","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M1024 25q141 0 272 36t244 104 207 160 161 207 103 245 37 272q0 165-50 318t-143 281-221 224-286 149q-3 1-9 1t-9 1q-24 0-38-14t-14-37v-140q0-69 1-141 0-51-15-103t-54-87q116-13 203-47t146-96 88-150 30-212q0-78-26-147t-79-128q11-28 16-58t5-60q0-39-8-77t-23-76q-5-2-11-2t-11 0q-32 0-67 10t-69 26-67 35-57 36q-125-35-256-35t-256 35q-25-17-57-36t-66-34-70-26-67-11h-11q-6 0-11 2-14 37-22 75t-9 78q0 30 5 60t16 58q-53 58-79 127t-26 148q0 122 29 211t88 150 146 97 203 48q-29 26-44 62t-21 75q-27 13-57 20t-60 7q-64 0-106-30t-75-82q-12-19-29-38t-37-34-43-24-48-10h-12q-8 0-15 3t-14 6-6 10q0 12 14 23t23 18l3 2q22 17 38 32t30 33 23 38 23 47q34 78 95 113t147 36q26 0 52-3t52-9v174q0 24-14 38t-39 14h-8q-5 0-9-2-157-51-286-147t-221-225-142-282-51-318q0-141 36-272t104-244 160-207 207-161T752 62t272-37z"})))}},6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{text:t,to:a,children:r,openInNewTab:n=!0,tabIndex:o=0,ariaLabel:s=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:n?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:o,"aria-label":s,role:"button"},r&&l.createElement("div",{className:"w-5"},r),l.createElement("div",null,t))}},9301:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294),r=a(5887);const n=function(e){let{lang:t,percent:a}=e,n=r.k.find((e=>e.language===t)).color;return l.createElement("div",{className:"flex items-center gap-1"},l.createElement("div",{className:"h-2 w-2 rounded-full",style:{backgroundColor:n}}),l.createElement("p",{className:"leading-3"},l.createElement("span",{className:"text-xs font-bold"},t)," ",l.createElement("span",{className:"text-xs"},a,"%")))}},8665:(e,t,a)=>{a.d(t,{Z:()=>i});var l,r,n=a(7294);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...s}=e;return n.createElement("svg",o({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},s),void 0===t?n.createElement("title",{id:a},"ExternalLink"):t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),r||(r=n.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const i=function(e){let{to:t,text:a="here",openInNewTab:l=!0}=e;return n.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:l?"_blank":""},a,n.createElement(s,{className:"icon_inline"}))}},7341:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{imgURL:t,ariaInfo:a="an image"}=e;return l.createElement("div",{className:"overflow-hidden pr-2 pb-2"},l.createElement("img",{src:t,className:"block w-[95%] rounded-2xl border border-gray-100 p-2 shadow-sm","aria-label":a}))}},5887:(e,t,a)=>{a.d(t,{k:()=>l});let l=[{language:"JavaScript",color:"#f1e05a"},{language:"C#",color:"#178600"},{language:"Python",color:"#3572A5"},{language:"Java",color:"#b07219"},{language:"Swift",color:"#F05138"},{language:"Kotlin",color:"#A97BFF"},{language:"Java",color:"#b07219"},{language:"HTML",color:"#e34c26"},{language:"CSS",color:"##563d7c"},{language:"SCSS",color:"#c6538c"}]},6546:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),r=a(1149),n=a(19);const o=function(e){let{overview:t,local:a,deploy:o,resources:s}=e;const[i,c]=l.useState("overview");return l.createElement("div",null,l.createElement("div",{className:"mb-8 w-full overflow-y-hidden overflow-x-scroll"},l.createElement(r.o,{"aria-label":"Details about the demo",selectedKey:i,onLinkClick:e=>{e&&c(e.props.itemKey)},headersOnly:!0},t&&l.createElement(n.M,{headerText:"Overview",itemKey:"overview"}),a&&l.createElement(n.M,{headerText:"Run locally",itemKey:"local"}),o&&l.createElement(n.M,{headerText:"One-click deploy to Azure",itemKey:"deploy"}),s&&l.createElement(n.M,{headerText:"Resources",itemKey:"resources"}))),l.createElement("div",{className:"font-sans font-light"},"overview"===i&&t,"local"===i&&a,"deploy"===i&&o,"resources"===i&&s))}},9014:(e,t,a)=>{a.d(t,{Z:()=>m});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,viewBox:"0 0 18 18","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M6.268.726h5.49a1.249 1.249 0 0 1 1.183.85l4.742 14.05a1.249 1.249 0 0 1-1.184 1.649h-5.352v-.005a1.284 1.284 0 0 1-.112.005h-.02a1.249 1.249 0 0 1-.745-.247L6.78 14.437l-.671 1.988a1.249 1.249 0 0 1-1.183.85H1.5a1.249 1.249 0 0 1-1.184-1.649L5.06 1.576a1.249 1.249 0 0 1 1.184-.85ZM5.787 12.53l5.041 3.745a.312.312 0 0 0 .187.062h.02a.312.312 0 0 0 .296-.412L8.777 8.358l-1.022 2.644-.116.3H4.152Zm10.712 3.807h-4.254a1.238 1.238 0 0 0-.026-.712L7.506 1.662h4.251a.312.312 0 0 1 .296.213l4.742 14.05a.312.312 0 0 1-.296.413Z",fillRule:"evenodd"})))},s=a.p+"assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg";var i=a(5033),c=a(7341),u=a(7029);const m=function(e){let{to:t}=e;return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"One-click deploy to Azure"),r.createElement(u.Z,null,r.createElement("p",null,"Deploy this demo app to Azure with one single click. Note that you will need an Azure account.")),r.createElement(i.Z,{text:"Deploy to Azure",to:t},r.createElement(o,{className:"lightIcon"})),r.createElement("h2",{className:"mt-12 text-4xl"},"Visit your live demo"),r.createElement(u.Z,null,r.createElement("p",null,"Once the resources are provisioned, you can find ",r.createElement("code",null,"Outputs")," on the side bar. Open the link in your browser.")),r.createElement(c.Z,{imgURL:s,ariaInfo:"Blade outputs image",alt:"Blade outputs image"}))}},4043:(e,t,a)=>{a.d(t,{Z:()=>i});var l=a(7294),r=a(7029),n=a(4064);const o=function(e){let{text:t,language:a,title:r}=e;return l.createElement("div",{className:"mb-3"},r&&l.createElement("h5",{className:"font-bold"},r),l.createElement(n.Z1,{text:t,language:a,showLineNumbers:!0,codeBlock:!0,wrapLines:!0,theme:n.cL}))};var s=a(8665);const i=function(e){let{hub:t}=e;return l.createElement("div",null,l.createElement("h2",{className:"text-4xl"},"Prerequisites"),l.createElement(r.Z,{title:"To run this app locally, you will need the following"},l.createElement("ul",{className:"ml-5 list-disc "},l.createElement("li",{className:"mt-0"},"Node.js"),l.createElement("li",{className:"mt-0"},"Create an Azure Web PubSub resource"),l.createElement("li",{className:"mt-0"},l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"})," to tunnel traffic from Web PubSub to your localhost"))),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Install dependencies"),l.createElement(o,{text:"npm install",language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Start the app"),l.createElement(o,{text:'export WebPubSubConnectionString=""\n node server',language:"javascript",title:"Linux"}),l.createElement(o,{text:'set WebPubSubConnectionString=""\n node server',language:"javascript",title:"Windows"}),t&&l.createElement(l.Fragment,null,l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Use ",l.createElement("code",null,"awps-tunnel")," to tunnel traffic from Web PubSub service to localhost"),l.createElement(r.Z,null,l.createElement("p",null,"Install and run ",l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"}),":")),l.createElement(o,{text:`awps-tunnel run --hub ${t} --upstream http://localhost:8080`,language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Configure the event handler"),l.createElement(r.Z,null,l.createElement("p",null,"Event handler can be set from Azure Portal or through Azure CLI.\xa0",l.createElement(s.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler",text:"Here"}),"contains the detailed instructions of how to set it up."))))}},7744:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(){return l.createElement("div",null,"No additional resources for this sample application")}},8372:(e,t,a)=>{a.d(t,{Z:()=>c});var l=a(7294),r=a(9301),n=a(5887);const o=function(e){let{languages:t}=e;return l.createElement("div",{className:"my-4"},l.createElement("div",{className:"flex gap-10"},t.map((e=>l.createElement(r.Z,{lang:e.language,percent:e.percent,key:e.language})))),l.createElement("div",{className:"flex overflow-hidden rounded-full bg-gray-300"},t.map((e=>{let t=n.k.find((t=>t.language===e.language)).color;return l.createElement("div",{style:{backgroundColor:t,width:e.percent+"%"},className:"h-2 flex-auto",key:e.language})}))))};var s=a(5033),i=a(8771);const c=function(e){let{alert:t,leftSrc:a,rightSrc:r,description:n,languages:c,githubURL:u}=e;return l.createElement("div",{className:"pattern-dots-sm mb-10 relative"},t&&l.createElement("p",{className:"bg-red-100 py-2 text-center font-bold text-red-900 "},t),l.createElement("div",{className:`flex flex-col items-center ${a&&r?"gap-6":"w-full"} py-4 drop-shadow-xl xl:flex-row`},a&&l.createElement("iframe",{src:a,title:n,className:"h-[400px] w-[95%] xl:h-[600px]"}),r&&l.createElement("iframe",{src:r,title:n,className:"h-[400px] w-[95%] xl:h-[600px]"})),l.createElement("div",{className:"flex flex-col xl:flex-row xl:items-center xl:justify-around mt-8"},l.createElement(s.Z,{text:"View source",to:u},l.createElement(i.Z,{className:"lightIcon"})),l.createElement("div",{className:"w-[90%] xl:w-2/3"},l.createElement(o,{languages:c}))))}},7029:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{title:t,children:a}=e;return l.createElement("div",{className:"mt-5 mb-2"},l.createElement("h3",{className:"mb-1 font-sans font-semibold"},t),a)}},6023:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>x,contentTitle:()=>f,default:()=>z,frontMatter:()=>w,metadata:()=>E,toc:()=>y});var l=a(7462),r=a(7294),n=a(3905),o=a(8372),s=a(6546),i=a(7029),c=a(4043),u=a(9014),m=a(7744);const d=a(6694).o.find((e=>"demos/scoreboard"===e.detailURL)),p=d.languages,b=d.githubRepo,h=d.deployLink;function g(){return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"Overview"),r.createElement(i.Z,{title:"About the app"},r.createElement("p",null,"This app demonstrates how to push data from server to connected clients using Azure Web PubSub")),r.createElement(i.Z,{title:"Azure Web PubSub enables"},r.createElement("ul",{className:"ml-5 list-disc leading-5"},r.createElement("li",{className:"mt-0"},"Server pushing data to clients in real-time"))))}const v=function(){return r.createElement(r.Fragment,null,r.createElement(o.Z,{leftSrc:"https://awps-scoreboard-live-demo.azurewebsites.net/",rightSrc:"https://awps-scoreboard-live-demo.azurewebsites.net/",description:"Real-time chat app demo",width:"400",languages:p,githubURL:b}),r.createElement("div",{className:"max-w-full overflow-hidden"},r.createElement(s.Z,{overview:r.createElement(g,null),local:r.createElement(c.Z,{hub:"sample_scoreboard"}),deploy:r.createElement(u.Z,{to:h}),resources:r.createElement(m.Z,null)})))},w={sidebar_position:2,slug:"/scoreboard",title:"Real-time scoreboard",tags:["JavaScript","Express.js","Vue.js"],description:"Create a doc page with rich content.",hide_title:!0,custom_edit_url:null},f=void 0,E={unversionedId:"realtime_scoreboard",id:"realtime_scoreboard",title:"Real-time scoreboard",description:"Create a doc page with rich content.",source:"@site/docs/realtime_scoreboard.mdx",sourceDirName:".",slug:"/scoreboard",permalink:"/azure-webpubsub/demos/scoreboard",draft:!1,editUrl:null,tags:[{label:"JavaScript",permalink:"/azure-webpubsub/demos/tags/java-script"},{label:"Express.js",permalink:"/azure-webpubsub/demos/tags/express-js"},{label:"Vue.js",permalink:"/azure-webpubsub/demos/tags/vue-js"}],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2,slug:"/scoreboard",title:"Real-time scoreboard",tags:["JavaScript","Express.js","Vue.js"],description:"Create a doc page with rich content.",hide_title:!0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Collaborative whiteboard",permalink:"/azure-webpubsub/demos/whiteboard"},next:{title:"Metaverse",permalink:"/azure-webpubsub/demos/metaverse"}},x={},y=[],N={toc:y};function z(e){let{components:t,...a}=e;return(0,n.kt)("wrapper",(0,l.Z)({},N,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)(v,{mdxType:"RealtimeScoreboard"}))}z.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4972.4502320a.js b/assets/js/4972.4502320a.js new file mode 100644 index 000000000..33c76c952 --- /dev/null +++ b/assets/js/4972.4502320a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4972],{4972:(e,t,a)=>{a.r(t),a.d(t,{default:()=>i});var n=a(7294),l=a(5999),o=a(1944),r=a(3285);function i(){return n.createElement(n.Fragment,null,n.createElement(o.d,{title:(0,l.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),n.createElement(r.Z,null,n.createElement("main",{className:"container margin-vert--xl"},n.createElement("div",{className:"row"},n.createElement("div",{className:"col col--6 col--offset-3"},n.createElement("h1",{className:"hero__title"},n.createElement(l.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),n.createElement("p",null,n.createElement(l.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),n.createElement("p",null,n.createElement(l.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"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/assets/js/4d4b16c0.7bbc3c3b.js b/assets/js/4d4b16c0.7bbc3c3b.js new file mode 100644 index 000000000..4c12cff85 --- /dev/null +++ b/assets/js/4d4b16c0.7bbc3c3b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1842],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>d});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var l=o.createContext({}),c=function(e){var t=o.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=c(e.components);return o.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},h=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),h=c(r),d=n,g=h["".concat(l,".").concat(d)]||h[d]||p[d]||a;return r?o.createElement(g,i(i({ref:t},u),{},{components:r})):o.createElement(g,i({ref:t},u))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var c=2;c{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>c});var o=r(7462),n=(r(7294),r(3905));const a={slug:"azure-web-pubsub-for-socketio-generally-available",title:"Azure Web PubSub for Socket.IO is now generally available",authors:["KevinG"],custom_edit_url:null},i=void 0,s={permalink:"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available",source:"@site/blog/2023-11-20-web-pubsub-for-socket.io-ga/index.md",title:"Azure Web PubSub for Socket.IO is now generally available",description:"TL;DR",date:"2023-11-20T00:00:00.000Z",formattedDate:"November 20, 2023",tags:[],readingTime:3.51,hasTruncateMarker:!1,authors:[{name:"Kevin Guo",title:"Senior Product Manager",url:"https://github.com/kevinguo-ed",imageURL:"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4",key:"KevinG"}],frontMatter:{slug:"azure-web-pubsub-for-socketio-generally-available",title:"Azure Web PubSub for Socket.IO is now generally available",authors:["KevinG"],custom_edit_url:null},nextItem:{title:"What is WebSocket? (part 2/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part2"}},l={authorsImageUrls:[void 0]},c=[{value:"TL;DR",id:"tldr",level:2},{value:"Solve scalability issue without code rewrite",id:"solve-scalability-issue-without-code-rewrite",level:2},{value:"Introduce additional benefits to enterprise-level applications",id:"introduce-additional-benefits-to-enterprise-level-applications",level:2},{value:"An example showing how easy it is to migrate a Socket.IO app to Azure",id:"an-example-showing-how-easy-it-is-to-migrate-a-socketio-app-to-azure",level:2},{value:"Server-side code",id:"server-side-code",level:3},{value:"Client-side code",id:"client-side-code",level:3},{value:"How does it work?",id:"how-does-it-work",level:2},{value:"Now generally available.",id:"now-generally-available",level:2},{value:"Resources and references",id:"resources-and-references",level:2}],u={toc:c};function p(e){let{components:t,...a}=e;return(0,n.kt)("wrapper",(0,o.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"tldr"},(0,n.kt)("strong",{parentName:"h2"},"TL;DR")),(0,n.kt)("p",null,"Socket.IO library is natively supported on Azure. "),(0,n.kt)("p",null,"Since we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it\u2019s suitable for use in production."),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-quickstart"},"\ud83d\udd17 Follow this quickstarts guide to try out the feature.")),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://github.com/Azure-Samples/socket.io-webapp-integration"},"\ud83d\udd17 Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.")," "),(0,n.kt)("h2",{id:"solve-scalability-issue-without-code-rewrite"},(0,n.kt)("strong",{parentName:"h2"},"Solve scalability issue without code rewrite")),(0,n.kt)("p",null,"When we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It\u2019s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it\u2019s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago. "),(0,n.kt)("p",null,"Developers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what\u2019s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure\u2019s massive scale (million+ concurrent users)."),(0,n.kt)("h2",{id:"introduce-additional-benefits-to-enterprise-level-applications"},(0,n.kt)("strong",{parentName:"h2"},"Introduce additional benefits to enterprise-level applications")),(0,n.kt)("p",null,"Web PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features. "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Cross-region replication to make your application more resilient by running in independent Azure regions"),(0,n.kt)("li",{parentName:"ul"},"Custom domain to add an extra layer of security "),(0,n.kt)("li",{parentName:"ul"},"Auto-scaling to dynamically scale up and down based on usage")),(0,n.kt)("h2",{id:"an-example-showing-how-easy-it-is-to-migrate-a-socketio-app-to-azure"},(0,n.kt)("strong",{parentName:"h2"},"An example showing how easy it is to migrate a Socket.IO app to Azure")),(0,n.kt)("h3",{id:"server-side-code"},(0,n.kt)("strong",{parentName:"h3"},"Server-side code")),(0,n.kt)("p",null,"Developers only need to call ",(0,n.kt)("inlineCode",{parentName:"p"},"useAzureSocketIO()")," to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program. "),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="server.js"',title:'"server.js"'},'const { Server } = require("socket.io");\n// highlight-next-line\nconst { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");\n\nlet io = new Server(3000);\n\n// highlight-start\n// Use the following line to integrate with Web PubSub for Socket.IO\nuseAzureSocketIO(io, {\n hub: "Hub", // The hub name can be any valid string.\n connectionString: ""\n});\n// highlight-end\n\nio.on("connection", (socket) => {\n // Sends a message to the client\n socket.emit("hello", "world");\n\n // Receives a message from the client\n socket.on("howdy", (arg) => {\n console.log(arg); // Prints "stranger"\n })\n')),(0,n.kt)("h3",{id:"client-side-code"},(0,n.kt)("strong",{parentName:"h3"},"Client-side code")),(0,n.kt)("p",null,"The change to the client-side code is also minimal. Notice that we are using ",(0,n.kt)("inlineCode",{parentName:"p"},"socket.io-client")," package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program."),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="client.js"',title:'"client.js"'},'// highlight-next-line\nconst io = require("socket.io-client");\n\n// highlight-start\nconst socket = io("", {\n path: "/clients/socketio/hubs/Hub",\n});\n// highlight-end\n\n// Receives a message from the server\nsocket.on("hello", (arg) => {\n console.log(arg);\n});\n\n// Sends a message to the server\nsocket.emit("howdy", "stranger")\n\n')),(0,n.kt)("h2",{id:"how-does-it-work"},(0,n.kt)("strong",{parentName:"h2"},"How does it work?")),(0,n.kt)("p",null,"As you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if \u201cI need to send messages to 1000+ clients\u201d. All that\u2019s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Architecture of Socket.IO managed by Azure",src:r(343).Z,width:"1152",height:"648"})),(0,n.kt)("p",null,"You can read more about how it works behind the scenes ",(0,n.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-service-internal"},"\ud83d\udd17 by reading the article"),"."),(0,n.kt)("h2",{id:"now-generally-available"},(0,n.kt)("strong",{parentName:"h2"},"Now generally available.")),(0,n.kt)("p",null,"Since public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure\u2019s ticket system."),(0,n.kt)("h2",{id:"resources-and-references"},(0,n.kt)("strong",{parentName:"h2"},"Resources and references")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://socket.io/"},"\ud83d\udd17 Socket.IO library documentation")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-quickstart"},"\ud83d\udd17 Quickstarts to migrate an existing Socket.IO app on Azure")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-service-internal"},"\ud83d\udd17 Internal: how does Azure solve the scalability challenge for Socket.IO developers"))))}p.isMDXComponent=!0},343:(e,t,r)=>{r.d(t,{Z:()=>o});const o=r.p+"assets/images/typical-architecture-managed-socketio-467d864b66a7a799cc57abd245587796.jpg"}}]); \ No newline at end of file diff --git a/assets/js/547e2c82.fdfd6d38.js b/assets/js/547e2c82.fdfd6d38.js new file mode 100644 index 000000000..f63a7bbd4 --- /dev/null +++ b/assets/js/547e2c82.fdfd6d38.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2412],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),c=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=c(n),h=a,d=m["".concat(l,".").concat(h)]||m[h]||u[h]||i;return n?r.createElement(d,o(o({ref:t},p),{},{components:n})):r.createElement(d,o({ref:t},p))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:a,o[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={slug:"what_is_websocket_part1",title:"What is WebSocket? (part 1/2)",authors:["JialinX","KevinG"],custom_edit_url:null},o=void 0,s={permalink:"/azure-webpubsub/blog/what_is_websocket_part1",source:"@site/blog/2022-11-14-what-is-websockets_part1/index.md",title:"What is WebSocket? (part 1/2)",description:"Summary",date:"2022-11-14T00:00:00.000Z",formattedDate:"November 14, 2022",tags:[],readingTime:2.33,hasTruncateMarker:!1,authors:[{name:"Jialin Xin",title:"Senior Software Engineer",url:"https://github.com/JialinXin",imageURL:"https://avatars.githubusercontent.com/u/15338714?v=4",key:"JialinX"},{name:"Kevin Guo",title:"Senior Product Manager",url:"https://github.com/kevinguo-ed",imageURL:"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4",key:"KevinG"}],frontMatter:{slug:"what_is_websocket_part1",title:"What is WebSocket? (part 1/2)",authors:["JialinX","KevinG"],custom_edit_url:null},prevItem:{title:"What is WebSocket? (part 2/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part2"},nextItem:{title:"Welcome",permalink:"/azure-webpubsub/blog/welcome"}},l={authorsImageUrls:[void 0,void 0]},c=[{value:"Summary",id:"summary",level:2},{value:"Quick links",id:"quick-links",level:2},{value:"Bidirectional",id:"bidirectional",level:2}],p={toc:c};function u(e){let{components:t,...i}=e;return(0,a.kt)("wrapper",(0,r.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"summary"},(0,a.kt)("strong",{parentName:"h2"},"Summary")),(0,a.kt)("p",null,"This article is the first of a two-part series that describes the values of WebSocket on a high-level."),(0,a.kt)("h2",{id:"quick-links"},(0,a.kt)("strong",{parentName:"h2"},"Quick links")),(0,a.kt)("p",null,"Explore a few live apps built with ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{parentName:"strong",href:"https://learn.microsoft.com/en-us/azure/azure-web-pubsub/overview"},"\ud83d\udd17 Web PubSub")),", a fully managed WebSocket service from Azure. "),(0,a.kt)("p",null,(0,a.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/chat"},"\ud83d\udd17 A simple chat app"),(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/whiteboard"},"\ud83d\udd17 A collaborative whiteboard app")," "),(0,a.kt)("blockquote",null,(0,a.kt)("p",{parentName:"blockquote"},(0,a.kt)("strong",{parentName:"p"},"Definition")),(0,a.kt)("p",{parentName:"blockquote"},"WebSocket gives developers a ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("em",{parentName:"strong"},"bidirectional")),", ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("em",{parentName:"strong"},"full-duplex"))," communication channels over HTTP through a single TCP connection ")),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"})),(0,a.kt)("p",null,"Let us unpack this loaded sentence together and try to understand the italicized words (technical jargon). "),(0,a.kt)("h2",{id:"bidirectional"},(0,a.kt)("strong",{parentName:"h2"},"Bidirectional")),(0,a.kt)("p",null,"The prefix \u201cbi-\u201c means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking",src:n(5460).Z,width:"407",height:"1022"})),(0,a.kt)("p",null,"However, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.\xa0 In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit ",(0,a.kt)("a",{parentName:"p",href:"https://www.nytimes.com/"},"www.nytimes.com"),", the browser sends an HTTP request on the user\u2019s behalf and waits for an HTTP response from its server."),(0,a.kt)("p",null,"What is relevant to our discussion here is that the client ",(0,a.kt)("strong",{parentName:"p"},"ALWAYS")," initiates the communication, in other words, the client always ",(0,a.kt)("em",{parentName:"p"},"asks")," before the server ",(0,a.kt)("em",{parentName:"p"},"responds"),". We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet. "),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Client makes request and server responds.",src:n(7669).Z,width:"813",height:"418"})),(0,a.kt)("p",null,"As the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"WebSocket enables bi-directional communication",src:n(5627).Z,width:"813",height:"157"})),(0,a.kt)("p",null,"In the second part, we will explore the idea of \u201cfull-duplex\u201d."),(0,a.kt)("hr",null),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},"Credits:"),(0,a.kt)("br",{parentName:"p"}),"\n","The bicycle photograph is taken by ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{parentName:"strong",href:"https://www.pexels.com/@luftschnitzel/"},"\ud83d\udd17 Philipp M")),".",(0,a.kt)("br",{parentName:"p"}),"\n","The bi-fold door photograph is taken by ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{parentName:"strong",href:"https://www.pexels.com/@sena-124356903/"},"\ud83d\udd17 sena")),"."))}u.isMDXComponent=!0},5460:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/bidirectional-d4131451fdab99c761d3086d7e7efb70.jpg"},7669:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/http-04c681a1ce589e7355f3a2ca430c5082.jpg"},5627:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/websocket-723ad73776e4551687f3c4331aa77e32.jpg"}}]); \ No newline at end of file diff --git a/assets/js/55960ee5.237c06ab.js b/assets/js/55960ee5.237c06ab.js new file mode 100644 index 000000000..41a40f48a --- /dev/null +++ b/assets/js/55960ee5.237c06ab.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4121],{8070:e=>{e.exports=JSON.parse('[{"label":"Express.js","permalink":"/azure-webpubsub/demos/tags/express-js","count":4},{"label":"JavaScript","permalink":"/azure-webpubsub/demos/tags/java-script","count":3},{"label":"Vue.js","permalink":"/azure-webpubsub/demos/tags/vue-js","count":2}]')}}]); \ No newline at end of file diff --git a/assets/js/56c273c5.930ad200.js b/assets/js/56c273c5.930ad200.js new file mode 100644 index 000000000..9a1474e4e --- /dev/null +++ b/assets/js/56c273c5.930ad200.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6766],{4471:e=>{e.exports=JSON.parse('{"label":"Vue.js","permalink":"/azure-webpubsub/demos/tags/vue-js","allTagsPath":"/azure-webpubsub/demos/tags","count":2,"items":[{"id":"collaborative_whiteboard","title":"Collaborative whiteboard","description":"A sample app of collaborative whiteboard","permalink":"/azure-webpubsub/demos/whiteboard"},{"id":"realtime_scoreboard","title":"Real-time scoreboard","description":"Create a doc page with rich content.","permalink":"/azure-webpubsub/demos/scoreboard"}]}')}}]); \ No newline at end of file diff --git a/assets/js/6048.933a9962.js b/assets/js/6048.933a9962.js new file mode 100644 index 000000000..48c118818 --- /dev/null +++ b/assets/js/6048.933a9962.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6048],{9058:(e,t,a)=>{a.d(t,{Z:()=>N});var l=a(7294),n=a(6010),r=a(3285),o=a(7524),s=a(9960),c=a(5999);const m="sidebar_re4s",i="sidebarItemTitle_pO2u",u="sidebarItemList_Yudw",d="sidebarItem__DBe",g="sidebarItemLink_mo7H",p="sidebarItemLinkActive_I1ZP";function h(e){let{sidebar:t}=e;return l.createElement("aside",{className:"col col--3"},l.createElement("nav",{className:(0,n.Z)(m,"thin-scrollbar"),"aria-label":(0,c.I)({id:"theme.blog.sidebar.navAriaLabel",message:"Blog recent posts navigation",description:"The ARIA label for recent posts in the blog sidebar"})},l.createElement("div",{className:(0,n.Z)(i,"margin-bottom--md")},t.title),l.createElement("ul",{className:(0,n.Z)(u,"clean-list")},t.items.map((e=>l.createElement("li",{key:e.permalink,className:d},l.createElement(s.Z,{isNavLink:!0,to:e.permalink,className:g,activeClassName:p},e.title)))))))}var E=a(3102);function f(e){let{sidebar:t}=e;return l.createElement("ul",{className:"menu__list"},t.items.map((e=>l.createElement("li",{key:e.permalink,className:"menu__list-item"},l.createElement(s.Z,{isNavLink:!0,to:e.permalink,className:"menu__link",activeClassName:"menu__link--active"},e.title)))))}function b(e){return l.createElement(E.Zo,{component:f,props:e})}function v(e){let{sidebar:t}=e;const a=(0,o.i)();return null!=t&&t.items.length?"mobile"===a?l.createElement(b,{sidebar:t}):l.createElement(h,{sidebar:t}):null}function N(e){const{sidebar:t,toc:a,children:o,...s}=e,c=t&&t.items.length>0;return l.createElement(r.Z,s,l.createElement("div",{className:"container margin-vert--lg"},l.createElement("div",{className:"row"},l.createElement(v,{sidebar:t}),l.createElement("main",{className:(0,n.Z)("col",{"col--7":c,"col--9 col--offset-1":!c}),itemScope:!0,itemType:"http://schema.org/Blog"},o),a&&l.createElement("div",{className:"col col--2"},a))))}},390:(e,t,a)=>{a.d(t,{Z:()=>x});var l=a(7294),n=a(6010),r=a(9460),o=a(4996);function s(e){let{children:t,className:a}=e;const{frontMatter:n,assets:s}=(0,r.C)(),{withBaseUrl:c}=(0,o.C)(),m=s.image??n.image;return l.createElement("article",{className:a,itemProp:"blogPost",itemScope:!0,itemType:"http://schema.org/BlogPosting"},m&&l.createElement("meta",{itemProp:"image",content:c(m,{absolute:!0})}),t)}var c=a(9960);const m="title_f1Hy";function i(e){let{className:t}=e;const{metadata:a,isBlogPostPage:o}=(0,r.C)(),{permalink:s,title:i}=a,u=o?"h1":"h2";return l.createElement(u,{className:(0,n.Z)(m,t),itemProp:"headline"},o?i:l.createElement(c.Z,{itemProp:"url",to:s},i))}var u=a(5999),d=a(8824);const g="container_mt6G";function p(e){let{readingTime:t}=e;const a=function(){const{selectMessage:e}=(0,d.c)();return t=>{const a=Math.ceil(t);return e(a,(0,u.I)({id:"theme.blog.post.readingTime.plurals",description:'Pluralized label for "{readingTime} min read". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',message:"One min read|{readingTime} min read"},{readingTime:a}))}}();return l.createElement(l.Fragment,null,a(t))}function h(e){let{date:t,formattedDate:a}=e;return l.createElement("time",{dateTime:t,itemProp:"datePublished"},a)}function E(){return l.createElement(l.Fragment,null," \xb7 ")}function f(e){let{className:t}=e;const{metadata:a}=(0,r.C)(),{date:o,formattedDate:s,readingTime:c}=a;return l.createElement("div",{className:(0,n.Z)(g,"margin-vert--md",t)},l.createElement(h,{date:o,formattedDate:s}),void 0!==c&&l.createElement(l.Fragment,null,l.createElement(E,null),l.createElement(p,{readingTime:c})))}function b(e){return e.href?l.createElement(c.Z,e):l.createElement(l.Fragment,null,e.children)}function v(e){let{author:t,className:a}=e;const{name:r,title:o,url:s,imageURL:c,email:m}=t,i=s||m&&`mailto:${m}`||void 0;return l.createElement("div",{className:(0,n.Z)("avatar margin-bottom--sm",a)},c&&l.createElement(b,{href:i,className:"avatar__photo-link"},l.createElement("img",{className:"avatar__photo",src:c,alt:r})),r&&l.createElement("div",{className:"avatar__intro",itemProp:"author",itemScope:!0,itemType:"https://schema.org/Person"},l.createElement("div",{className:"avatar__name"},l.createElement(b,{href:i,itemProp:"url"},l.createElement("span",{itemProp:"name"},r))),o&&l.createElement("small",{className:"avatar__subtitle",itemProp:"description"},o)))}const N="authorCol_Hf19",P="imageOnlyAuthorRow_pa_O",_="imageOnlyAuthorCol_G86a";function Z(e){let{className:t}=e;const{metadata:{authors:a},assets:o}=(0,r.C)();if(0===a.length)return null;const s=a.every((e=>{let{name:t}=e;return!t}));return l.createElement("div",{className:(0,n.Z)("margin-top--md margin-bottom--sm",s?P:"row",t)},a.map(((e,t)=>l.createElement("div",{className:(0,n.Z)(!s&&"col col--6",s?_:N),key:t},l.createElement(v,{author:{...e,imageURL:o.authorsImageUrls[t]??e.imageURL}})))))}function k(){return l.createElement("header",null,l.createElement(i,null),l.createElement(f,null),l.createElement(Z,null))}var C=a(8780),w=a(210);function T(e){let{children:t,className:a}=e;const{isBlogPostPage:o}=(0,r.C)();return l.createElement("div",{id:o?C.blogPostContainerID:void 0,className:(0,n.Z)("markdown",a),itemProp:"articleBody"},l.createElement(w.Z,null,t))}var y=a(4881),B=a(1526),I=a(7462);function F(){return l.createElement("b",null,l.createElement(u.Z,{id:"theme.blog.post.readMore",description:"The label used in blog post item excerpts to link to full blog posts"},"Read More"))}function M(e){const{blogPostTitle:t,...a}=e;return l.createElement(c.Z,(0,I.Z)({"aria-label":(0,u.I)({message:"Read more about {title}",id:"theme.blog.post.readMoreLabel",description:"The ARIA label for the link to full blog posts from excerpts"},{title:t})},a),l.createElement(F,null))}const L="blogPostFooterDetailsFull_mRVl";function R(){const{metadata:e,isBlogPostPage:t}=(0,r.C)(),{tags:a,title:o,editUrl:s,hasTruncateMarker:c}=e,m=!t&&c,i=a.length>0;return i||m||s?l.createElement("footer",{className:(0,n.Z)("row docusaurus-mt-lg",t&&L)},i&&l.createElement("div",{className:(0,n.Z)("col",{"col--9":m})},l.createElement(B.Z,{tags:a})),t&&s&&l.createElement("div",{className:"col margin-top--sm"},l.createElement(y.Z,{editUrl:s})),m&&l.createElement("div",{className:(0,n.Z)("col text--right",{"col--3":i})},l.createElement(M,{blogPostTitle:o,to:e.permalink}))):null}function x(e){let{children:t,className:a}=e;const o=function(){const{isBlogPostPage:e}=(0,r.C)();return e?void 0:"margin-bottom--xl"}();return l.createElement(s,{className:(0,n.Z)(o,a)},l.createElement(k,null),l.createElement(T,null,t),l.createElement(R,null))}},9460:(e,t,a)=>{a.d(t,{C:()=>s,n:()=>o});var l=a(7294),n=a(902);const r=l.createContext(null);function o(e){let{children:t,content:a,isBlogPostPage:n=!1}=e;const o=function(e){let{content:t,isBlogPostPage:a}=e;return(0,l.useMemo)((()=>({metadata:t.metadata,frontMatter:t.frontMatter,assets:t.assets,toc:t.toc,isBlogPostPage:a})),[t,a])}({content:a,isBlogPostPage:n});return l.createElement(r.Provider,{value:o},t)}function s(){const e=(0,l.useContext)(r);if(null===e)throw new n.i6("BlogPostProvider");return e}},8824:(e,t,a)=>{a.d(t,{c:()=>m});var l=a(7294),n=a(2263);const r=["zero","one","two","few","many","other"];function o(e){return r.filter((t=>e.includes(t)))}const s={locale:"en",pluralForms:o(["one","other"]),select:e=>1===e?"one":"other"};function c(){const{i18n:{currentLocale:e}}=(0,n.Z)();return(0,l.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:o(t.resolvedOptions().pluralCategories),select:e=>t.select(e)}}(e)}catch(t){return console.error(`Failed to use Intl.PluralRules for locale "${e}".\nDocusaurus will fallback to the default (English) implementation.\nError: ${t.message}\n`),s}}),[e])}function m(){const e=c();return{selectMessage:(t,a)=>function(e,t,a){const l=e.split("|");if(1===l.length)return l[0];l.length>a.pluralForms.length&&console.error(`For locale=${a.locale}, a maximum of ${a.pluralForms.length} plural forms are expected (${a.pluralForms.join(",")}), but the message contains ${l.length}: ${e}`);const n=a.select(t),r=a.pluralForms.indexOf(n);return l[Math.min(r,l.length-1)]}(a,t,e)}}}}]); \ No newline at end of file diff --git a/assets/js/7036.bde6ae16.js b/assets/js/7036.bde6ae16.js new file mode 100644 index 000000000..7f8a74765 --- /dev/null +++ b/assets/js/7036.bde6ae16.js @@ -0,0 +1 @@ +(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7036],{3905:(e,t,n)=>{"use strict";n.d(t,{Zo:()=>u,kt:()=>p});var o=n(7294);function a(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 l(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var i=o.createContext({}),s=function(e){var t=o.useContext(i),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},u=function(e){var t=s(e.components);return o.createElement(i.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var n=e.components,a=e.mdxType,r=e.originalType,i=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),d=s(n),p=a,f=d["".concat(i,".").concat(p)]||d[p]||m[p]||r;return n?o.createElement(f,l(l({ref:t},u),{},{components:n})):o.createElement(f,l({ref:t},u))}));function p(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=n.length,l=new Array(r);l[0]=d;var c={};for(var i in t)hasOwnProperty.call(t,i)&&(c[i]=t[i]);c.originalType=e,c.mdxType="string"==typeof e?e:a,l[1]=c;for(var s=2;s{"use strict";n.d(t,{Z:()=>u});var o=n(7294),a=n(5999),r=n(5281),l=n(7462),c=n(6010);const i="iconEdit_Z9Sw";function s(e){let{className:t,...n}=e;return o.createElement("svg",(0,l.Z)({fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,c.Z)(i,t),"aria-hidden":"true"},n),o.createElement("g",null,o.createElement("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})))}function u(e){let{editUrl:t}=e;return o.createElement("a",{href:t,target:"_blank",rel:"noreferrer noopener",className:r.k.common.editThisPage},o.createElement(s,null),o.createElement(a.Z,{id:"theme.common.editThisPage",description:"The link label to edit the current page"},"Edit this page"))}},2503:(e,t,n)=>{"use strict";n.d(t,{Z:()=>u});var o=n(7462),a=n(7294),r=n(6010),l=n(5999),c=n(6668);const i="anchorWithStickyNavbar_LWe7",s="anchorWithHideOnScrollNavbar_WYt5";function u(e){let{as:t,id:n,...u}=e;const{navbar:{hideOnScroll:m}}=(0,c.L)();return"h1"!==t&&n?a.createElement(t,(0,o.Z)({},u,{className:(0,r.Z)("anchor",m?s:i),id:n}),u.children,a.createElement("a",{className:"hash-link",href:`#${n}`,title:(0,l.I)({id:"theme.common.headingLinkTitle",message:"Direct link to heading",description:"Title for link to heading"})},"\u200b")):a.createElement(t,(0,o.Z)({},u,{id:void 0}))}},210:(e,t,n)=>{"use strict";n.d(t,{Z:()=>ye});var o=n(7294),a=n(3905),r=n(7462),l=n(5742);var c=n(2389),i=n(6010),s=n(2949),u=n(6668);function m(){const{prism:e}=(0,u.L)(),{colorMode:t}=(0,s.I)(),n=e.theme,o=e.darkTheme||n;return"dark"===t?o:n}var d=n(5281),p=n(7594),f=n.n(p);const h=/title=(?["'])(?.*?)\1/,g=/\{(?<range>[\d,-]+)\}/,y={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}};function v(e,t){const n=e.map((e=>{const{start:n,end:o}=y[e];return`(?:${n}\\s*(${t.flatMap((e=>{var t,n;return[e.line,null==(t=e.block)?void 0:t.start,null==(n=e.block)?void 0:n.end].filter(Boolean)})).join("|")})\\s*${o})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function b(e,t){let n=e.replace(/\n$/,"");const{language:o,magicComments:a,metastring:r}=t;if(r&&g.test(r)){const e=r.match(g).groups.range;if(0===a.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${r}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=a[0].className,o=f()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(o),code:n}}if(void 0===o)return{lineClassNames:{},code:n};const l=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return v(["js","jsBlock"],t);case"jsx":case"tsx":return v(["js","jsBlock","jsx"],t);case"html":return v(["js","jsBlock","html"],t);case"python":case"py":case"bash":return v(["bash"],t);case"markdown":case"md":return v(["html","jsx","bash"],t);default:return v(Object.keys(y),t)}}(o,a),c=n.split("\n"),i=Object.fromEntries(a.map((e=>[e.className,{start:0,range:""}]))),s=Object.fromEntries(a.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),u=Object.fromEntries(a.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),m=Object.fromEntries(a.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let p=0;p<c.length;){const e=c[p].match(l);if(!e){p+=1;continue}const t=e.slice(1).find((e=>void 0!==e));s[t]?i[s[t]].range+=`${p},`:u[t]?i[u[t]].start=p:m[t]&&(i[m[t]].range+=`${i[m[t]].start}-${p-1},`),c.splice(p,1)}n=c.join("\n");const d={};return Object.entries(i).forEach((e=>{let[t,{range:n}]=e;f()(n).forEach((e=>{d[e]??=[],d[e].push(t)}))})),{lineClassNames:d,code:n}}const E="codeBlockContainer_Ckt0";function k(e){let{as:t,...n}=e;const a=function(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[o,a]=e;const r=t[o];r&&"string"==typeof a&&(n[r]=a)})),n}(m());return o.createElement(t,(0,r.Z)({},n,{style:a,className:(0,i.Z)(n.className,E,d.k.common.codeBlock)}))}const N={codeBlockContent:"codeBlockContent_biex",codeBlockTitle:"codeBlockTitle_Ktv7",codeBlock:"codeBlock_bY9V",codeBlockStandalone:"codeBlockStandalone_MEMb",codeBlockLines:"codeBlockLines_e6Vv",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_o6Pm",buttonGroup:"buttonGroup__atx"};function C(e){let{children:t,className:n}=e;return o.createElement(k,{as:"pre",tabIndex:0,className:(0,i.Z)(N.codeBlockStandalone,"thin-scrollbar",n)},o.createElement("code",{className:N.codeBlockLines},t))}var w=n(902);const Z={attributes:!0,characterData:!0,childList:!0,subtree:!0};function T(e,t){const[n,a]=(0,o.useState)(),r=(0,o.useCallback)((()=>{var t;a(null==(t=e.current)?void 0:t.closest("[role=tabpanel][hidden]"))}),[e,a]);(0,o.useEffect)((()=>{r()}),[r]),function(e,t,n){void 0===n&&(n=Z);const a=(0,w.zX)(t),r=(0,w.Ql)(n);(0,o.useEffect)((()=>{const t=new MutationObserver(a);return e&&t.observe(e,r),()=>t.disconnect()}),[e,a,r])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),r())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}const B={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]};var j={Prism:n(7410).Z,theme:B};function _(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function L(){return L=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},L.apply(this,arguments)}var x=/\r\n|\r|\n/,O=function(e){0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},S=function(e,t){var n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},P=function(e,t){var n=e.plain,o=Object.create(null),a=e.styles.reduce((function(e,n){var o=n.languages,a=n.style;return o&&!o.includes(t)||n.types.forEach((function(t){var n=L({},e[t],a);e[t]=n})),e}),o);return a.root=n,a.plain=L({},n,{backgroundColor:null}),a};function z(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&-1===t.indexOf(o)&&(n[o]=e[o]);return n}const A=function(e){function t(){for(var t=this,n=[],o=arguments.length;o--;)n[o]=arguments[o];e.apply(this,n),_(this,"getThemeDict",(function(e){if(void 0!==t.themeDict&&e.theme===t.prevTheme&&e.language===t.prevLanguage)return t.themeDict;t.prevTheme=e.theme,t.prevLanguage=e.language;var n=e.theme?P(e.theme,e.language):void 0;return t.themeDict=n})),_(this,"getLineProps",(function(e){var n=e.key,o=e.className,a=e.style,r=L({},z(e,["key","className","style","line"]),{className:"token-line",style:void 0,key:void 0}),l=t.getThemeDict(t.props);return void 0!==l&&(r.style=l.plain),void 0!==a&&(r.style=void 0!==r.style?L({},r.style,a):a),void 0!==n&&(r.key=n),o&&(r.className+=" "+o),r})),_(this,"getStyleForToken",(function(e){var n=e.types,o=e.empty,a=n.length,r=t.getThemeDict(t.props);if(void 0!==r){if(1===a&&"plain"===n[0])return o?{display:"inline-block"}:void 0;if(1===a&&!o)return r[n[0]];var l=o?{display:"inline-block"}:{},c=n.map((function(e){return r[e]}));return Object.assign.apply(Object,[l].concat(c))}})),_(this,"getTokenProps",(function(e){var n=e.key,o=e.className,a=e.style,r=e.token,l=L({},z(e,["key","className","style","token"]),{className:"token "+r.types.join(" "),children:r.content,style:t.getStyleForToken(r),key:void 0});return void 0!==a&&(l.style=void 0!==l.style?L({},l.style,a):a),void 0!==n&&(l.key=n),o&&(l.className+=" "+o),l})),_(this,"tokenize",(function(e,t,n,o){var a={code:t,grammar:n,language:o,tokens:[]};e.hooks.run("before-tokenize",a);var r=a.tokens=e.tokenize(a.code,a.grammar,a.language);return e.hooks.run("after-tokenize",a),r}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.render=function(){var e=this.props,t=e.Prism,n=e.language,o=e.code,a=e.children,r=this.getThemeDict(this.props),l=t.languages[n];return a({tokens:function(e){for(var t=[[]],n=[e],o=[0],a=[e.length],r=0,l=0,c=[],i=[c];l>-1;){for(;(r=o[l]++)<a[l];){var s=void 0,u=t[l],m=n[l][r];if("string"==typeof m?(u=l>0?u:["plain"],s=m):(u=S(u,m.type),m.alias&&(u=S(u,m.alias)),s=m.content),"string"==typeof s){var d=s.split(x),p=d.length;c.push({types:u,content:d[0]});for(var f=1;f<p;f++)O(c),i.push(c=[]),c.push({types:u,content:d[f]})}else l++,t.push(u),n.push(s),o.push(0),a.push(s.length)}l--,t.pop(),n.pop(),o.pop(),a.pop()}return O(c),i}(void 0!==l?this.tokenize(t,o,l,n):[o]),className:"prism-code language-"+n,style:void 0!==r?r.root:{},getLineProps:this.getLineProps,getTokenProps:this.getTokenProps})},t}(o.Component),I="codeLine_lJS_",M="codeLineNumber_Tfdd",D="codeLineContent_feaV";function H(e){let{line:t,classNames:n,showLineNumbers:a,getLineProps:l,getTokenProps:c}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const s=l({line:t,className:(0,i.Z)(n,a&&I)}),u=t.map(((e,t)=>o.createElement("span",(0,r.Z)({key:t},c({token:e,key:t})))));return o.createElement("span",s,a?o.createElement(o.Fragment,null,o.createElement("span",{className:M}),o.createElement("span",{className:D},u)):u,o.createElement("br",null))}var V=n(5999);const R={copyButtonCopied:"copyButtonCopied_obH4",copyButtonIcons:"copyButtonIcons_eSgA",copyButtonIcon:"copyButtonIcon_y97N",copyButtonSuccessIcon:"copyButtonSuccessIcon_LjdS"};function $(e){let{code:t,className:n}=e;const[a,r]=(0,o.useState)(!1),l=(0,o.useRef)(void 0),c=(0,o.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;const o=document.createElement("textarea"),a=document.activeElement;o.value=e,o.setAttribute("readonly",""),o.style.contain="strict",o.style.position="absolute",o.style.left="-9999px",o.style.fontSize="12pt";const r=document.getSelection();let l=!1;r.rangeCount>0&&(l=r.getRangeAt(0)),n.append(o),o.select(),o.selectionStart=0,o.selectionEnd=e.length;let c=!1;try{c=document.execCommand("copy")}catch{}o.remove(),l&&(r.removeAllRanges(),r.addRange(l)),a&&a.focus()}(t),r(!0),l.current=window.setTimeout((()=>{r(!1)}),1e3)}),[t]);return(0,o.useEffect)((()=>()=>window.clearTimeout(l.current)),[]),o.createElement("button",{type:"button","aria-label":a?(0,V.I)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,V.I)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,V.I)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,i.Z)("clean-btn",n,R.copyButton,a&&R.copyButtonCopied),onClick:c},o.createElement("span",{className:R.copyButtonIcons,"aria-hidden":"true"},o.createElement("svg",{className:R.copyButtonIcon,viewBox:"0 0 24 24"},o.createElement("path",{d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})),o.createElement("svg",{className:R.copyButtonSuccessIcon,viewBox:"0 0 24 24"},o.createElement("path",{d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}))))}const W="wordWrapButtonIcon_Bwma",F="wordWrapButtonEnabled_EoeP";function q(e){let{className:t,onClick:n,isEnabled:a}=e;const r=(0,V.I)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return o.createElement("button",{type:"button",onClick:n,className:(0,i.Z)("clean-btn",t,a&&F),"aria-label":r,title:r},o.createElement("svg",{className:W,viewBox:"0 0 24 24","aria-hidden":"true"},o.createElement("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})))}function G(e){let{children:t,className:n="",metastring:a,title:l,showLineNumbers:c,language:s}=e;const{prism:{defaultLanguage:d,magicComments:p}}=(0,u.L)(),f=s??function(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return null==t?void 0:t.replace(/language-/,"")}(n)??d,g=m(),y=function(){const[e,t]=(0,o.useState)(!1),[n,a]=(0,o.useState)(!1),r=(0,o.useRef)(null),l=(0,o.useCallback)((()=>{const n=r.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[r,e]),c=(0,o.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=r.current,n=e>t||r.current.querySelector("code").hasAttribute("style");a(n)}),[r]);return T(r,c),(0,o.useEffect)((()=>{c()}),[e,c]),(0,o.useEffect)((()=>(window.addEventListener("resize",c,{passive:!0}),()=>{window.removeEventListener("resize",c)})),[c]),{codeBlockRef:r,isEnabled:e,isCodeScrollable:n,toggle:l}}(),v=function(e){var t;return(null==e||null==(t=e.match(h))?void 0:t.groups.title)??""}(a)||l,{lineClassNames:E,code:C}=b(t,{metastring:a,language:f,magicComments:p}),w=c??function(e){return Boolean(null==e?void 0:e.includes("showLineNumbers"))}(a);return o.createElement(k,{as:"div",className:(0,i.Z)(n,f&&!n.includes(`language-${f}`)&&`language-${f}`)},v&&o.createElement("div",{className:N.codeBlockTitle},v),o.createElement("div",{className:N.codeBlockContent},o.createElement(A,(0,r.Z)({},j,{theme:g,code:C,language:f??"text"}),(e=>{let{className:t,tokens:n,getLineProps:a,getTokenProps:r}=e;return o.createElement("pre",{tabIndex:0,ref:y.codeBlockRef,className:(0,i.Z)(t,N.codeBlock,"thin-scrollbar")},o.createElement("code",{className:(0,i.Z)(N.codeBlockLines,w&&N.codeBlockLinesWithNumbering)},n.map(((e,t)=>o.createElement(H,{key:t,line:e,getLineProps:a,getTokenProps:r,classNames:E[t],showLineNumbers:w})))))})),o.createElement("div",{className:N.buttonGroup},(y.isEnabled||y.isCodeScrollable)&&o.createElement(q,{className:N.codeButton,onClick:()=>y.toggle(),isEnabled:y.isEnabled}),o.createElement($,{className:N.codeButton,code:C}))))}function U(e){let{children:t,...n}=e;const a=(0,c.Z)(),l=function(e){return o.Children.toArray(e).some((e=>(0,o.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),i="string"==typeof l?G:C;return o.createElement(i,(0,r.Z)({key:String(a)},n),l)}var Q=n(9960);var X=n(6043);const Y="details_lb9f",J="isBrowser_bmU9",K="collapsibleContent_i85q";function ee(e){return!!e&&("SUMMARY"===e.tagName||ee(e.parentElement))}function te(e,t){return!!e&&(e===t||te(e.parentElement,t))}function ne(e){let{summary:t,children:n,...a}=e;const l=(0,c.Z)(),s=(0,o.useRef)(null),{collapsed:u,setCollapsed:m}=(0,X.u)({initialState:!a.open}),[d,p]=(0,o.useState)(a.open);return o.createElement("details",(0,r.Z)({},a,{ref:s,open:d,"data-collapsed":u,className:(0,i.Z)(Y,l&&J,a.className),onMouseDown:e=>{ee(e.target)&&e.detail>1&&e.preventDefault()},onClick:e=>{e.stopPropagation();const t=e.target;ee(t)&&te(t,s.current)&&(e.preventDefault(),u?(m(!1),p(!0)):m(!0))}}),t??o.createElement("summary",null,"Details"),o.createElement(X.z,{lazy:!1,collapsed:u,disableSSRStyle:!0,onCollapseTransitionEnd:e=>{m(e),p(!e)}},o.createElement("div",{className:K},n)))}const oe="details_b_Ee";function ae(e){let{...t}=e;return o.createElement(ne,(0,r.Z)({},t,{className:(0,i.Z)("alert alert--info",oe,t.className)}))}var re=n(2503);function le(e){return o.createElement(re.Z,e)}const ce="containsTaskList_mC6p";const ie="img_ev3q";const se="admonition_LlT9",ue="admonitionHeading_tbUL",me="admonitionIcon_kALy",de="admonitionContent_S0QG";const pe={note:{infimaClassName:"secondary",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 14 16"},o.createElement("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"}))},label:o.createElement(V.Z,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)"},"note")},tip:{infimaClassName:"success",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 12 16"},o.createElement("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"}))},label:o.createElement(V.Z,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)"},"tip")},danger:{infimaClassName:"danger",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 12 16"},o.createElement("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"}))},label:o.createElement(V.Z,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)"},"danger")},info:{infimaClassName:"info",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 14 16"},o.createElement("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"}))},label:o.createElement(V.Z,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)"},"info")},caution:{infimaClassName:"warning",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 16 16"},o.createElement("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"}))},label:o.createElement(V.Z,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)"},"caution")}},fe={secondary:"note",important:"info",success:"tip",warning:"danger"};function he(e){const{mdxAdmonitionTitle:t,rest:n}=function(e){const t=o.Children.toArray(e),n=t.find((e=>{var t;return o.isValidElement(e)&&"mdxAdmonitionTitle"===(null==(t=e.props)?void 0:t.mdxType)})),a=o.createElement(o.Fragment,null,t.filter((e=>e!==n)));return{mdxAdmonitionTitle:n,rest:a}}(e.children);return{...e,title:e.title??t,children:n}}const ge={head:function(e){const t=o.Children.map(e.children,(e=>o.isValidElement(e)?function(e){var t;if(null!=(t=e.props)&&t.mdxType&&e.props.originalType){const{mdxType:t,originalType:n,...a}=e.props;return o.createElement(e.props.originalType,a)}return e}(e):e));return o.createElement(l.Z,e,t)},code:function(e){const t=["a","abbr","b","br","button","cite","code","del","dfn","em","i","img","input","ins","kbd","label","object","output","q","ruby","s","small","span","strong","sub","sup","time","u","var","wbr"];return o.Children.toArray(e.children).every((e=>{var n;return"string"==typeof e&&!e.includes("\n")||(0,o.isValidElement)(e)&&t.includes(null==(n=e.props)?void 0:n.mdxType)}))?o.createElement("code",e):o.createElement(U,e)},a:function(e){return o.createElement(Q.Z,e)},pre:function(e){var t;return o.createElement(U,(0,o.isValidElement)(e.children)&&"code"===(null==(t=e.children.props)?void 0:t.originalType)?e.children.props:{...e})},details:function(e){const t=o.Children.toArray(e.children),n=t.find((e=>{var t;return o.isValidElement(e)&&"summary"===(null==(t=e.props)?void 0:t.mdxType)})),a=o.createElement(o.Fragment,null,t.filter((e=>e!==n)));return o.createElement(ae,(0,r.Z)({},e,{summary:n}),a)},ul:function(e){return o.createElement("ul",(0,r.Z)({},e,{className:(t=e.className,(0,i.Z)(t,(null==t?void 0:t.includes("contains-task-list"))&&ce))}));var t},img:function(e){return o.createElement("img",(0,r.Z)({loading:"lazy"},e,{className:(t=e.className,(0,i.Z)(t,ie))}));var t},h1:e=>o.createElement(le,(0,r.Z)({as:"h1"},e)),h2:e=>o.createElement(le,(0,r.Z)({as:"h2"},e)),h3:e=>o.createElement(le,(0,r.Z)({as:"h3"},e)),h4:e=>o.createElement(le,(0,r.Z)({as:"h4"},e)),h5:e=>o.createElement(le,(0,r.Z)({as:"h5"},e)),h6:e=>o.createElement(le,(0,r.Z)({as:"h6"},e)),admonition:function(e){const{children:t,type:n,title:a,icon:r}=he(e),l=function(e){const t=fe[e]??e;return pe[t]||(console.warn(`No admonition config found for admonition type "${t}". Using Info as fallback.`),pe.info)}(n),c=a??l.label,{iconComponent:s}=l,u=r??o.createElement(s,null);return o.createElement("div",{className:(0,i.Z)(d.k.common.admonition,d.k.common.admonitionType(e.type),"alert",`alert--${l.infimaClassName}`,se)},o.createElement("div",{className:ue},o.createElement("span",{className:me},u),c),o.createElement("div",{className:de},t))},mermaid:n(1875).Z};function ye(e){let{children:t}=e;return o.createElement(a.Zo,{components:ge},t)}},2244:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var o=n(7294),a=n(6010),r=n(9960);function l(e){const{permalink:t,title:n,subLabel:l,isNext:c}=e;return o.createElement(r.Z,{className:(0,a.Z)("pagination-nav__link",c?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t},l&&o.createElement("div",{className:"pagination-nav__sublabel"},l),o.createElement("div",{className:"pagination-nav__label"},n))}},3008:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var o=n(7294),a=n(6010),r=n(9960);const l="tag_zVej",c="tagRegular_sFm0",i="tagWithCount_h2kH";function s(e){let{permalink:t,label:n,count:s}=e;return o.createElement(r.Z,{href:t,className:(0,a.Z)(l,s?i:c)},n,s&&o.createElement("span",null,s))}},1526:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var o=n(7294),a=n(6010),r=n(5999),l=n(3008);const c="tags_jXut",i="tag_QGVx";function s(e){let{tags:t}=e;return o.createElement(o.Fragment,null,o.createElement("b",null,o.createElement(r.Z,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list"},"Tags:")),o.createElement("ul",{className:(0,a.Z)(c,"padding--none","margin-left--sm")},t.map((e=>{let{label:t,permalink:n}=e;return o.createElement("li",{key:n,className:i},o.createElement(l.Z,{label:t,permalink:n}))}))))}},7594:(e,t)=>{function n(e){let t,n=[];for(let o of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(o))n.push(parseInt(o,10));else if(t=o.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,o,a,r]=t;if(o&&r){o=parseInt(o),r=parseInt(r);const e=o<r?1:-1;"-"!==a&&".."!==a&&"\u2025"!==a||(r+=e);for(let t=o;t!==r;t+=e)n.push(t)}}return n}t.default=n,e.exports=n}}]); \ No newline at end of file diff --git a/assets/js/814f3328.107a60a0.js b/assets/js/814f3328.107a60a0.js new file mode 100644 index 000000000..0a2a7d675 --- /dev/null +++ b/assets/js/814f3328.107a60a0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2535],{5641:e=>{e.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"Azure Web PubSub for Socket.IO is now generally available","permalink":"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available"},{"title":"What is WebSocket? (part 2/2)","permalink":"/azure-webpubsub/blog/what_is_websocket_part2"},{"title":"What is WebSocket? (part 1/2)","permalink":"/azure-webpubsub/blog/what_is_websocket_part1"},{"title":"Welcome","permalink":"/azure-webpubsub/blog/welcome"}]}')}}]); \ No newline at end of file diff --git a/assets/js/8a49c96a.6adbe3ec.js b/assets/js/8a49c96a.6adbe3ec.js new file mode 100644 index 000000000..bf9ddf2b3 --- /dev/null +++ b/assets/js/8a49c96a.6adbe3ec.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[710],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>h});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),c=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=c(n),h=a,d=m["".concat(l,".").concat(h)]||m[h]||u[h]||i;return n?r.createElement(d,o(o({ref:t},p),{},{components:n})):r.createElement(d,o({ref:t},p))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:a,o[1]=s;for(var c=2;c<i;c++)o[c]=n[c];return r.createElement.apply(null,o)}return r.createElement.apply(null,n)}m.displayName="MDXCreateElement"},7582:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var r=n(7462),a=(n(7294),n(3905));const i={slug:"what_is_websocket_part1",title:"What is WebSocket? (part 1/2)",authors:["JialinX","KevinG"],custom_edit_url:null},o=void 0,s={permalink:"/azure-webpubsub/blog/what_is_websocket_part1",source:"@site/blog/2022-11-14-what-is-websockets_part1/index.md",title:"What is WebSocket? (part 1/2)",description:"Summary",date:"2022-11-14T00:00:00.000Z",formattedDate:"November 14, 2022",tags:[],readingTime:2.33,hasTruncateMarker:!1,authors:[{name:"Jialin Xin",title:"Senior Software Engineer",url:"https://github.com/JialinXin",imageURL:"https://avatars.githubusercontent.com/u/15338714?v=4",key:"JialinX"},{name:"Kevin Guo",title:"Senior Product Manager",url:"https://github.com/kevinguo-ed",imageURL:"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4",key:"KevinG"}],frontMatter:{slug:"what_is_websocket_part1",title:"What is WebSocket? (part 1/2)",authors:["JialinX","KevinG"],custom_edit_url:null},prevItem:{title:"What is WebSocket? (part 2/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part2"},nextItem:{title:"Welcome",permalink:"/azure-webpubsub/blog/welcome"}},l={authorsImageUrls:[void 0,void 0]},c=[{value:"<strong>Summary</strong>",id:"summary",level:2},{value:"<strong>Quick links</strong>",id:"quick-links",level:2},{value:"<strong>Bidirectional</strong>",id:"bidirectional",level:2}],p={toc:c};function u(e){let{components:t,...i}=e;return(0,a.kt)("wrapper",(0,r.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"summary"},(0,a.kt)("strong",{parentName:"h2"},"Summary")),(0,a.kt)("p",null,"This article is the first of a two-part series that describes the values of WebSocket on a high-level."),(0,a.kt)("h2",{id:"quick-links"},(0,a.kt)("strong",{parentName:"h2"},"Quick links")),(0,a.kt)("p",null,"Explore a few live apps built with ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{parentName:"strong",href:"https://learn.microsoft.com/en-us/azure/azure-web-pubsub/overview"},"\ud83d\udd17 Web PubSub")),", a fully managed WebSocket service from Azure. "),(0,a.kt)("p",null,(0,a.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/chat"},"\ud83d\udd17 A simple chat app"),(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("a",{parentName:"p",href:"https://azure.github.io/azure-webpubsub/demos/whiteboard"},"\ud83d\udd17 A collaborative whiteboard app")," "),(0,a.kt)("blockquote",null,(0,a.kt)("p",{parentName:"blockquote"},(0,a.kt)("strong",{parentName:"p"},"Definition")),(0,a.kt)("p",{parentName:"blockquote"},"WebSocket gives developers a ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("em",{parentName:"strong"},"bidirectional")),", ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("em",{parentName:"strong"},"full-duplex"))," communication channels over HTTP through a single TCP connection ")),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"})),(0,a.kt)("p",null,"Let us unpack this loaded sentence together and try to understand the italicized words (technical jargon). "),(0,a.kt)("h2",{id:"bidirectional"},(0,a.kt)("strong",{parentName:"h2"},"Bidirectional")),(0,a.kt)("p",null,"The prefix \u201cbi-\u201c means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking",src:n(5460).Z,width:"407",height:"1022"})),(0,a.kt)("p",null,"However, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.\xa0 In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit ",(0,a.kt)("a",{parentName:"p",href:"https://www.nytimes.com/"},"www.nytimes.com"),", the browser sends an HTTP request on the user\u2019s behalf and waits for an HTTP response from its server."),(0,a.kt)("p",null,"What is relevant to our discussion here is that the client ",(0,a.kt)("strong",{parentName:"p"},"ALWAYS")," initiates the communication, in other words, the client always ",(0,a.kt)("em",{parentName:"p"},"asks")," before the server ",(0,a.kt)("em",{parentName:"p"},"responds"),". We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet. "),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Client makes request and server responds.",src:n(7669).Z,width:"813",height:"418"})),(0,a.kt)("p",null,"As the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"WebSocket enables bi-directional communication",src:n(5627).Z,width:"813",height:"157"})),(0,a.kt)("p",null,"In the second part, we will explore the idea of \u201cfull-duplex\u201d."),(0,a.kt)("hr",null),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},"Credits:"),(0,a.kt)("br",{parentName:"p"}),"\n","The bicycle photograph is taken by ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{parentName:"strong",href:"https://www.pexels.com/@luftschnitzel/"},"\ud83d\udd17 Philipp M")),".",(0,a.kt)("br",{parentName:"p"}),"\n","The bi-fold door photograph is taken by ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{parentName:"strong",href:"https://www.pexels.com/@sena-124356903/"},"\ud83d\udd17 sena")),"."))}u.isMDXComponent=!0},5460:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/bidirectional-d4131451fdab99c761d3086d7e7efb70.jpg"},7669:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/http-04c681a1ce589e7355f3a2ca430c5082.jpg"},5627:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/websocket-723ad73776e4551687f3c4331aa77e32.jpg"}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.aa579c6b.js b/assets/js/935f2afb.aa579c6b.js new file mode 100644 index 000000000..bacc4ec60 --- /dev/null +++ b/assets/js/935f2afb.aa579c6b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).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":{"tutorialSidebar":[{"type":"link","label":"Simple chat app","href":"/azure-webpubsub/demos/chat","docId":"simple_chat_app"},{"type":"link","label":"Collaborative whiteboard","href":"/azure-webpubsub/demos/whiteboard","docId":"collaborative_whiteboard"},{"type":"link","label":"Real-time scoreboard","href":"/azure-webpubsub/demos/scoreboard","docId":"realtime_scoreboard"},{"type":"link","label":"Metaverse","href":"/azure-webpubsub/demos/metaverse","docId":"metaverse"},{"type":"link","label":"Code stream","href":"/azure-webpubsub/demos/code-streaming","docId":"code_stream"},{"type":"link","label":"Chatr","href":"/azure-webpubsub/demos/chatr","docId":"chatr"}]},"docs":{"chatr":{"id":"chatr","title":"Chatr","description":"A chat app created by community member","sidebar":"tutorialSidebar"},"code_stream":{"id":"code_stream","title":"Code stream","description":"Real-time collaborative code editor","sidebar":"tutorialSidebar"},"collaborative_whiteboard":{"id":"collaborative_whiteboard","title":"Collaborative whiteboard","description":"A sample app of collaborative whiteboard","sidebar":"tutorialSidebar"},"metaverse":{"id":"metaverse","title":"Metaverse","description":"A sample app demontrating how Azure Web PubSub can be used in the context of Metaverse","sidebar":"tutorialSidebar"},"realtime_scoreboard":{"id":"realtime_scoreboard","title":"Real-time scoreboard","description":"Create a doc page with rich content.","sidebar":"tutorialSidebar"},"simple_chat_app":{"id":"simple_chat_app","title":"Simple chat app","description":"A simple chat app","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/94015949.113a9c71.js b/assets/js/94015949.113a9c71.js new file mode 100644 index 000000000..eebebaeb3 --- /dev/null +++ b/assets/js/94015949.113a9c71.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2865],{5745:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-pages","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/995533e1.1b81c85e.js b/assets/js/995533e1.1b81c85e.js new file mode 100644 index 000000000..1ba55bb27 --- /dev/null +++ b/assets/js/995533e1.1b81c85e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6549],{8771:(e,t,a)=>{a.d(t,{Z:()=>o});var l,n=a(7294);function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},r.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return n.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2048 2048","aria-labelledby":a},o),t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M1024 25q141 0 272 36t244 104 207 160 161 207 103 245 37 272q0 165-50 318t-143 281-221 224-286 149q-3 1-9 1t-9 1q-24 0-38-14t-14-37v-140q0-69 1-141 0-51-15-103t-54-87q116-13 203-47t146-96 88-150 30-212q0-78-26-147t-79-128q11-28 16-58t5-60q0-39-8-77t-23-76q-5-2-11-2t-11 0q-32 0-67 10t-69 26-67 35-57 36q-125-35-256-35t-256 35q-25-17-57-36t-66-34-70-26-67-11h-11q-6 0-11 2-14 37-22 75t-9 78q0 30 5 60t16 58q-53 58-79 127t-26 148q0 122 29 211t88 150 146 97 203 48q-29 26-44 62t-21 75q-27 13-57 20t-60 7q-64 0-106-30t-75-82q-12-19-29-38t-37-34-43-24-48-10h-12q-8 0-15 3t-14 6-6 10q0 12 14 23t23 18l3 2q22 17 38 32t30 33 23 38 23 47q34 78 95 113t147 36q26 0 52-3t52-9v174q0 24-14 38t-39 14h-8q-5 0-9-2-157-51-286-147t-221-225-142-282-51-318q0-141 36-272t104-244 160-207 207-161T752 62t272-37z"})))}},6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(e){let{text:t,to:a,children:n,openInNewTab:r=!0,tabIndex:o=0,ariaLabel:s=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:r?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:o,"aria-label":s,role:"button"},n&&l.createElement("div",{className:"w-5"},n),l.createElement("div",null,t))}},9301:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294),n=a(5887);const r=function(e){let{lang:t,percent:a}=e,r=n.k.find((e=>e.language===t)).color;return l.createElement("div",{className:"flex items-center gap-1"},l.createElement("div",{className:"h-2 w-2 rounded-full",style:{backgroundColor:r}}),l.createElement("p",{className:"leading-3"},l.createElement("span",{className:"text-xs font-bold"},t)," ",l.createElement("span",{className:"text-xs"},a,"%")))}},8665:(e,t,a)=>{a.d(t,{Z:()=>i});var l,n,r=a(7294);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},o.apply(this,arguments)}const s=e=>{let{title:t,titleId:a,...s}=e;return r.createElement("svg",o({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},s),void 0===t?r.createElement("title",{id:a},"ExternalLink"):t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),n||(n=r.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const i=function(e){let{to:t,text:a="here",openInNewTab:l=!0}=e;return r.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:l?"_blank":""},a,r.createElement(s,{className:"icon_inline"}))}},7341:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(e){let{imgURL:t,ariaInfo:a="an image"}=e;return l.createElement("div",{className:"overflow-hidden pr-2 pb-2"},l.createElement("img",{src:t,className:"block w-[95%] rounded-2xl border border-gray-100 p-2 shadow-sm","aria-label":a}))}},5887:(e,t,a)=>{a.d(t,{k:()=>l});let l=[{language:"JavaScript",color:"#f1e05a"},{language:"C#",color:"#178600"},{language:"Python",color:"#3572A5"},{language:"Java",color:"#b07219"},{language:"Swift",color:"#F05138"},{language:"Kotlin",color:"#A97BFF"},{language:"Java",color:"#b07219"},{language:"HTML",color:"#e34c26"},{language:"CSS",color:"##563d7c"},{language:"SCSS",color:"#c6538c"}]},6546:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),n=a(1149),r=a(19);const o=function(e){let{overview:t,local:a,deploy:o,resources:s}=e;const[i,c]=l.useState("overview");return l.createElement("div",null,l.createElement("div",{className:"mb-8 w-full overflow-y-hidden overflow-x-scroll"},l.createElement(n.o,{"aria-label":"Details about the demo",selectedKey:i,onLinkClick:e=>{e&&c(e.props.itemKey)},headersOnly:!0},t&&l.createElement(r.M,{headerText:"Overview",itemKey:"overview"}),a&&l.createElement(r.M,{headerText:"Run locally",itemKey:"local"}),o&&l.createElement(r.M,{headerText:"One-click deploy to Azure",itemKey:"deploy"}),s&&l.createElement(r.M,{headerText:"Resources",itemKey:"resources"}))),l.createElement("div",{className:"font-sans font-light"},"overview"===i&&t,"local"===i&&a,"deploy"===i&&o,"resources"===i&&s))}},9014:(e,t,a)=>{a.d(t,{Z:()=>u});var l,n=a(7294);function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},r.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return n.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,viewBox:"0 0 18 18","aria-labelledby":a},o),t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M6.268.726h5.49a1.249 1.249 0 0 1 1.183.85l4.742 14.05a1.249 1.249 0 0 1-1.184 1.649h-5.352v-.005a1.284 1.284 0 0 1-.112.005h-.02a1.249 1.249 0 0 1-.745-.247L6.78 14.437l-.671 1.988a1.249 1.249 0 0 1-1.183.85H1.5a1.249 1.249 0 0 1-1.184-1.649L5.06 1.576a1.249 1.249 0 0 1 1.184-.85ZM5.787 12.53l5.041 3.745a.312.312 0 0 0 .187.062h.02a.312.312 0 0 0 .296-.412L8.777 8.358l-1.022 2.644-.116.3H4.152Zm10.712 3.807h-4.254a1.238 1.238 0 0 0-.026-.712L7.506 1.662h4.251a.312.312 0 0 1 .296.213l4.742 14.05a.312.312 0 0 1-.296.413Z",fillRule:"evenodd"})))},s=a.p+"assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg";var i=a(5033),c=a(7341),m=a(7029);const u=function(e){let{to:t}=e;return n.createElement("div",null,n.createElement("h2",{className:"text-4xl"},"One-click deploy to Azure"),n.createElement(m.Z,null,n.createElement("p",null,"Deploy this demo app to Azure with one single click. Note that you will need an Azure account.")),n.createElement(i.Z,{text:"Deploy to Azure",to:t},n.createElement(o,{className:"lightIcon"})),n.createElement("h2",{className:"mt-12 text-4xl"},"Visit your live demo"),n.createElement(m.Z,null,n.createElement("p",null,"Once the resources are provisioned, you can find ",n.createElement("code",null,"Outputs")," on the side bar. Open the link in your browser.")),n.createElement(c.Z,{imgURL:s,ariaInfo:"Blade outputs image",alt:"Blade outputs image"}))}},4043:(e,t,a)=>{a.d(t,{Z:()=>i});var l=a(7294),n=a(7029),r=a(4064);const o=function(e){let{text:t,language:a,title:n}=e;return l.createElement("div",{className:"mb-3"},n&&l.createElement("h5",{className:"font-bold"},n),l.createElement(r.Z1,{text:t,language:a,showLineNumbers:!0,codeBlock:!0,wrapLines:!0,theme:r.cL}))};var s=a(8665);const i=function(e){let{hub:t}=e;return l.createElement("div",null,l.createElement("h2",{className:"text-4xl"},"Prerequisites"),l.createElement(n.Z,{title:"To run this app locally, you will need the following"},l.createElement("ul",{className:"ml-5 list-disc "},l.createElement("li",{className:"mt-0"},"Node.js"),l.createElement("li",{className:"mt-0"},"Create an Azure Web PubSub resource"),l.createElement("li",{className:"mt-0"},l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"})," to tunnel traffic from Web PubSub to your localhost"))),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Install dependencies"),l.createElement(o,{text:"npm install",language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Start the app"),l.createElement(o,{text:'export WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Linux"}),l.createElement(o,{text:'set WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Windows"}),t&&l.createElement(l.Fragment,null,l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Use ",l.createElement("code",null,"awps-tunnel")," to tunnel traffic from Web PubSub service to localhost"),l.createElement(n.Z,null,l.createElement("p",null,"Install and run ",l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"}),":")),l.createElement(o,{text:`awps-tunnel run --hub ${t} --upstream http://localhost:8080`,language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Configure the event handler"),l.createElement(n.Z,null,l.createElement("p",null,"Event handler can be set from Azure Portal or through Azure CLI.\xa0",l.createElement(s.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler",text:"Here"}),"contains the detailed instructions of how to set it up."))))}},7744:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(){return l.createElement("div",null,"No additional resources for this sample application")}},8372:(e,t,a)=>{a.d(t,{Z:()=>c});var l=a(7294),n=a(9301),r=a(5887);const o=function(e){let{languages:t}=e;return l.createElement("div",{className:"my-4"},l.createElement("div",{className:"flex gap-10"},t.map((e=>l.createElement(n.Z,{lang:e.language,percent:e.percent,key:e.language})))),l.createElement("div",{className:"flex overflow-hidden rounded-full bg-gray-300"},t.map((e=>{let t=r.k.find((t=>t.language===e.language)).color;return l.createElement("div",{style:{backgroundColor:t,width:e.percent+"%"},className:"h-2 flex-auto",key:e.language})}))))};var s=a(5033),i=a(8771);const c=function(e){let{alert:t,leftSrc:a,rightSrc:n,description:r,languages:c,githubURL:m}=e;return l.createElement("div",{className:"pattern-dots-sm mb-10 relative"},t&&l.createElement("p",{className:"bg-red-100 py-2 text-center font-bold text-red-900 "},t),l.createElement("div",{className:`flex flex-col items-center ${a&&n?"gap-6":"w-full"} py-4 drop-shadow-xl xl:flex-row`},a&&l.createElement("iframe",{src:a,title:r,className:"h-[400px] w-[95%] xl:h-[600px]"}),n&&l.createElement("iframe",{src:n,title:r,className:"h-[400px] w-[95%] xl:h-[600px]"})),l.createElement("div",{className:"flex flex-col xl:flex-row xl:items-center xl:justify-around mt-8"},l.createElement(s.Z,{text:"View source",to:m},l.createElement(i.Z,{className:"lightIcon"})),l.createElement("div",{className:"w-[90%] xl:w-2/3"},l.createElement(o,{languages:c}))))}},7029:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294);const n=function(e){let{title:t,children:a}=e;return l.createElement("div",{className:"mt-5 mb-2"},l.createElement("h3",{className:"mb-1 font-sans font-semibold"},t),a)}},8821:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>x,contentTitle:()=>E,default:()=>z,frontMatter:()=>w,metadata:()=>f,toc:()=>y});var l=a(7462),n=a(7294),r=a(3905),o=a(8372),s=a(6546),i=a(7029),c=a(4043),m=a(9014),u=a(7744);const d=a(6694).o.find((e=>"demos/code-streaming"===e.detailURL)),p=d.languages,b=d.githubRepo,h=d.deployLink;function g(){return n.createElement("div",null,n.createElement("h2",{className:"text-4xl"},"Overview"),n.createElement(i.Z,{title:"About the app"},n.createElement("p",null,"This is a sample application to demonstrate how to use Azure Web PubSub to livestream your code to others.")),n.createElement(i.Z,{title:"Azure Web PubSub enables"},n.createElement("ul",{className:"ml-5 list-disc leading-5"},n.createElement("li",{className:"mt-0"},"Real-time code editing"))),n.createElement("h2",{className:"mt-12 text-4xl"},"How it works?"),n.createElement(i.Z,{title:"Server side"},"Serve a static web page ",n.createElement("code",null,"public/index.html")," A REST API \xa0",n.createElement("code",null,"/negotiate")," which returns a url to connect to Web PubSub",n.createElement("ul",{className:"ml-5 list-disc"},n.createElement("li",{className:"mt-0"},"Serve a static web page ",n.createElement("code",null,"public/index.html")),n.createElement("li",{className:"mt-0"},"A REST API ",n.createElement("code",null,"/negotiate")," which returns a url to connect to Web PubSub"))),n.createElement(i.Z,{title:"Client side"},n.createElement("p",null,"The most logic of this app is happening at client side. In client there're two roles:"),n.createElement("ul",{className:"ml-5 list-disc "},n.createElement("li",{className:"mt-0"},n.createElement("strong",null,"Streamer")," ",n.createElement("br",null),"Streamer is the one who writes code and broadcasts to others. It uses ",n.createElement("code",null,"WebSocket.send()")," to send the changes from the code editor (by hooking the editor.on('change') event) to a group (whose ",n.createElement("code",null,"ID")," is generated in negotiate) in Azure Web PubSub. And for performance consideration, it buffers the changes and send them in a batch every 200 milliseconds. The main implementation can be found at \xa0",n.createElement("code",null,"startStream()")," in ",n.createElement("code",null,"public/index.html"),"."),n.createElement("li",{className:"mt-0"},n.createElement("strong",null,"Watcher")," ",n.createElement("br",null),"Watcher is the one who watches streamer to code. It receives the changes from Azure Web PubSub and applies them one by one to the code editor (by calling the applyDelta() function). Since the changes is only a delta from the previous content there needs to be a way to get the full content from streamer when watcher is connected for the first time. So in this app when watcher is connected it will send a sync message to streamer (through another group called ",n.createElement("code",null,"id-control"),") and streamer will send the full content to the group. The main implementation can be found at \xa0",n.createElement("code",null,"watch()")," in ",n.createElement("code",null,"public/index.html"),"."))))}const v=function(){return n.createElement("div",null,n.createElement(o.Z,{alert:"To see streaming as you code, open the link in another tab.",leftSrc:"https://awps-demos-codestream.azurewebsites.net/",description:"Real-time chat app demo",width:"400",languages:p,githubURL:b}),n.createElement("div",{className:"max-w-full overflow-hidden"},n.createElement(s.Z,{overview:n.createElement(g,null),local:n.createElement(c.Z,null),resources:n.createElement(u.Z,null),deploy:n.createElement(m.Z,{to:h})})))},w={sidebar_position:5,slug:"/code-streaming",title:"Code stream",tags:["Express.js"],description:"Real-time collaborative code editor",hide_title:!0,custom_edit_url:null},E=void 0,f={unversionedId:"code_stream",id:"code_stream",title:"Code stream",description:"Real-time collaborative code editor",source:"@site/docs/code_stream.mdx",sourceDirName:".",slug:"/code-streaming",permalink:"/azure-webpubsub/demos/code-streaming",draft:!1,editUrl:null,tags:[{label:"Express.js",permalink:"/azure-webpubsub/demos/tags/express-js"}],version:"current",sidebarPosition:5,frontMatter:{sidebar_position:5,slug:"/code-streaming",title:"Code stream",tags:["Express.js"],description:"Real-time collaborative code editor",hide_title:!0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Metaverse",permalink:"/azure-webpubsub/demos/metaverse"},next:{title:"Chatr",permalink:"/azure-webpubsub/demos/chatr"}},x={},y=[],N={toc:y};function z(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,l.Z)({},N,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)(v,{mdxType:"CodeStream"}))}z.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/9e4087bc.9e0c12ec.js b/assets/js/9e4087bc.9e0c12ec.js new file mode 100644 index 000000000..454283e2c --- /dev/null +++ b/assets/js/9e4087bc.9e0c12ec.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3608],{3169:(e,t,a)=>{a.r(t),a.d(t,{default:()=>o});var r=a(7294),l=a(9960),n=a(5999),c=a(1944),i=a(3285);function m(e){let{year:t,posts:a}=e;return r.createElement(r.Fragment,null,r.createElement("h3",null,t),r.createElement("ul",null,a.map((e=>r.createElement("li",{key:e.metadata.date},r.createElement(l.Z,{to:e.metadata.permalink},e.metadata.formattedDate," - ",e.metadata.title))))))}function s(e){let{years:t}=e;return r.createElement("section",{className:"margin-vert--lg"},r.createElement("div",{className:"container"},r.createElement("div",{className:"row"},t.map(((e,t)=>r.createElement("div",{key:t,className:"col col--4 margin-vert--lg"},r.createElement(m,e)))))))}function o(e){let{archive:t}=e;const a=(0,n.I)({id:"theme.blog.archive.title",message:"Archive",description:"The page & hero title of the blog archive page"}),l=(0,n.I)({id:"theme.blog.archive.description",message:"Archive",description:"The page & hero description of the blog archive page"}),m=function(e){const t=e.reduceRight(((e,t)=>{const a=t.metadata.date.split("-")[0],r=e.get(a)??[];return e.set(a,[t,...r])}),new Map);return Array.from(t,(e=>{let[t,a]=e;return{year:t,posts:a}}))}(t.blogPosts);return r.createElement(r.Fragment,null,r.createElement(c.d,{title:a,description:l}),r.createElement(i.Z,null,r.createElement("header",{className:"hero hero--primary"},r.createElement("div",{className:"container"},r.createElement("h1",{className:"hero__title"},a),r.createElement("p",{className:"hero__subtitle"},l))),r.createElement("main",null,m.length>0&&r.createElement(s,{years:m}))))}}}]); \ No newline at end of file diff --git a/assets/js/a6aa9e1f.5d0325ed.js b/assets/js/a6aa9e1f.5d0325ed.js new file mode 100644 index 000000000..3d7dcc39c --- /dev/null +++ b/assets/js/a6aa9e1f.5d0325ed.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3089],{3269:(e,t,a)=>{a.r(t),a.d(t,{default:()=>k});var n=a(7294),l=a(6010),r=a(2263),i=a(1944),o=a(5281),s=a(9058),m=a(5999),c=a(2244);function g(e){const{metadata:t}=e,{previousPage:a,nextPage:l}=t;return n.createElement("nav",{className:"pagination-nav","aria-label":(0,m.I)({id:"theme.blog.paginator.navAriaLabel",message:"Blog list page navigation",description:"The ARIA label for the blog pagination"})},a&&n.createElement(c.Z,{permalink:a,title:n.createElement(m.Z,{id:"theme.blog.paginator.newerEntries",description:"The label used to navigate to the newer blog posts page (previous page)"},"Newer Entries")}),l&&n.createElement(c.Z,{permalink:l,title:n.createElement(m.Z,{id:"theme.blog.paginator.olderEntries",description:"The label used to navigate to the older blog posts page (next page)"},"Older Entries"),isNext:!0}))}var p=a(197),u=a(9460),b=a(390);function d(e){let{items:t,component:a=b.Z}=e;return n.createElement(n.Fragment,null,t.map((e=>{let{content:t}=e;return n.createElement(u.n,{key:t.metadata.permalink,content:t},n.createElement(a,null,n.createElement(t,null)))})))}function E(e){const{metadata:t}=e,{siteConfig:{title:a}}=(0,r.Z)(),{blogDescription:l,blogTitle:o,permalink:s}=t,m="/"===s?a:o;return n.createElement(n.Fragment,null,n.createElement(i.d,{title:m,description:l}),n.createElement(p.Z,{tag:"blog_posts_list"}))}function h(e){const{metadata:t,items:a,sidebar:l}=e;return n.createElement(s.Z,{sidebar:l},n.createElement(d,{items:a}),n.createElement(g,{metadata:t}))}function k(e){return n.createElement(i.FG,{className:(0,l.Z)(o.k.wrapper.blogPages,o.k.page.blogListPage)},n.createElement(E,e),n.createElement(h,e))}}}]); \ No newline at end of file diff --git a/assets/js/b6f6bc54.b9ffbd90.js b/assets/js/b6f6bc54.b9ffbd90.js new file mode 100644 index 000000000..0d911af6d --- /dev/null +++ b/assets/js/b6f6bc54.b9ffbd90.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[189],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>d});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var l=o.createContext({}),c=function(e){var t=o.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=c(e.components);return o.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},h=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),h=c(r),d=n,g=h["".concat(l,".").concat(d)]||h[d]||p[d]||a;return r?o.createElement(g,i(i({ref:t},u),{},{components:r})):o.createElement(g,i({ref:t},u))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var c=2;c<a;c++)i[c]=r[c];return o.createElement.apply(null,i)}return o.createElement.apply(null,r)}h.displayName="MDXCreateElement"},7953:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>a,metadata:()=>s,toc:()=>c});var o=r(7462),n=(r(7294),r(3905));const a={slug:"azure-web-pubsub-for-socketio-generally-available",title:"Azure Web PubSub for Socket.IO is now generally available",authors:["KevinG"],custom_edit_url:null},i=void 0,s={permalink:"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available",source:"@site/blog/2023-11-20-web-pubsub-for-socket.io-ga/index.md",title:"Azure Web PubSub for Socket.IO is now generally available",description:"TL;DR",date:"2023-11-20T00:00:00.000Z",formattedDate:"November 20, 2023",tags:[],readingTime:3.51,hasTruncateMarker:!1,authors:[{name:"Kevin Guo",title:"Senior Product Manager",url:"https://github.com/kevinguo-ed",imageURL:"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4",key:"KevinG"}],frontMatter:{slug:"azure-web-pubsub-for-socketio-generally-available",title:"Azure Web PubSub for Socket.IO is now generally available",authors:["KevinG"],custom_edit_url:null},nextItem:{title:"What is WebSocket? (part 2/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part2"}},l={authorsImageUrls:[void 0]},c=[{value:"<strong>TL;DR</strong>",id:"tldr",level:2},{value:"<strong>Solve scalability issue without code rewrite</strong>",id:"solve-scalability-issue-without-code-rewrite",level:2},{value:"<strong>Introduce additional benefits to enterprise-level applications</strong>",id:"introduce-additional-benefits-to-enterprise-level-applications",level:2},{value:"<strong>An example showing how easy it is to migrate a Socket.IO app to Azure</strong>",id:"an-example-showing-how-easy-it-is-to-migrate-a-socketio-app-to-azure",level:2},{value:"<strong>Server-side code</strong>",id:"server-side-code",level:3},{value:"<strong>Client-side code</strong>",id:"client-side-code",level:3},{value:"<strong>How does it work?</strong>",id:"how-does-it-work",level:2},{value:"<strong>Now generally available.</strong>",id:"now-generally-available",level:2},{value:"<strong>Resources and references</strong>",id:"resources-and-references",level:2}],u={toc:c};function p(e){let{components:t,...a}=e;return(0,n.kt)("wrapper",(0,o.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"tldr"},(0,n.kt)("strong",{parentName:"h2"},"TL;DR")),(0,n.kt)("p",null,"Socket.IO library is natively supported on Azure. "),(0,n.kt)("p",null,"Since we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it\u2019s suitable for use in production."),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-quickstart"},"\ud83d\udd17 Follow this quickstarts guide to try out the feature.")),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://github.com/Azure-Samples/socket.io-webapp-integration"},"\ud83d\udd17 Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.")," "),(0,n.kt)("h2",{id:"solve-scalability-issue-without-code-rewrite"},(0,n.kt)("strong",{parentName:"h2"},"Solve scalability issue without code rewrite")),(0,n.kt)("p",null,"When we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It\u2019s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it\u2019s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago. "),(0,n.kt)("p",null,"Developers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what\u2019s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure\u2019s massive scale (million+ concurrent users)."),(0,n.kt)("h2",{id:"introduce-additional-benefits-to-enterprise-level-applications"},(0,n.kt)("strong",{parentName:"h2"},"Introduce additional benefits to enterprise-level applications")),(0,n.kt)("p",null,"Web PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features. "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Cross-region replication to make your application more resilient by running in independent Azure regions"),(0,n.kt)("li",{parentName:"ul"},"Custom domain to add an extra layer of security "),(0,n.kt)("li",{parentName:"ul"},"Auto-scaling to dynamically scale up and down based on usage")),(0,n.kt)("h2",{id:"an-example-showing-how-easy-it-is-to-migrate-a-socketio-app-to-azure"},(0,n.kt)("strong",{parentName:"h2"},"An example showing how easy it is to migrate a Socket.IO app to Azure")),(0,n.kt)("h3",{id:"server-side-code"},(0,n.kt)("strong",{parentName:"h3"},"Server-side code")),(0,n.kt)("p",null,"Developers only need to call ",(0,n.kt)("inlineCode",{parentName:"p"},"useAzureSocketIO()")," to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program. "),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="server.js"',title:'"server.js"'},'const { Server } = require("socket.io");\n// highlight-next-line\nconst { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");\n\nlet io = new Server(3000);\n\n// highlight-start\n// Use the following line to integrate with Web PubSub for Socket.IO\nuseAzureSocketIO(io, {\n hub: "Hub", // The hub name can be any valid string.\n connectionString: "<connection-string>"\n});\n// highlight-end\n\nio.on("connection", (socket) => {\n // Sends a message to the client\n socket.emit("hello", "world");\n\n // Receives a message from the client\n socket.on("howdy", (arg) => {\n console.log(arg); // Prints "stranger"\n })\n')),(0,n.kt)("h3",{id:"client-side-code"},(0,n.kt)("strong",{parentName:"h3"},"Client-side code")),(0,n.kt)("p",null,"The change to the client-side code is also minimal. Notice that we are using ",(0,n.kt)("inlineCode",{parentName:"p"},"socket.io-client")," package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program."),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="client.js"',title:'"client.js"'},'// highlight-next-line\nconst io = require("socket.io-client");\n\n// highlight-start\nconst socket = io("<web-pubsub-socketio-endpoint>", {\n path: "/clients/socketio/hubs/Hub",\n});\n// highlight-end\n\n// Receives a message from the server\nsocket.on("hello", (arg) => {\n console.log(arg);\n});\n\n// Sends a message to the server\nsocket.emit("howdy", "stranger")\n\n')),(0,n.kt)("h2",{id:"how-does-it-work"},(0,n.kt)("strong",{parentName:"h2"},"How does it work?")),(0,n.kt)("p",null,"As you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if \u201cI need to send messages to 1000+ clients\u201d. All that\u2019s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Architecture of Socket.IO managed by Azure",src:r(343).Z,width:"1152",height:"648"})),(0,n.kt)("p",null,"You can read more about how it works behind the scenes ",(0,n.kt)("a",{parentName:"p",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-service-internal"},"\ud83d\udd17 by reading the article"),"."),(0,n.kt)("h2",{id:"now-generally-available"},(0,n.kt)("strong",{parentName:"h2"},"Now generally available.")),(0,n.kt)("p",null,"Since public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure\u2019s ticket system."),(0,n.kt)("h2",{id:"resources-and-references"},(0,n.kt)("strong",{parentName:"h2"},"Resources and references")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://socket.io/"},"\ud83d\udd17 Socket.IO library documentation")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-quickstart"},"\ud83d\udd17 Quickstarts to migrate an existing Socket.IO app on Azure")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://learn.microsoft.com/azure/azure-web-pubsub/socketio-service-internal"},"\ud83d\udd17 Internal: how does Azure solve the scalability challenge for Socket.IO developers"))))}p.isMDXComponent=!0},343:(e,t,r)=>{r.d(t,{Z:()=>o});const o=r.p+"assets/images/typical-architecture-managed-socketio-467d864b66a7a799cc57abd245587796.jpg"}}]); \ No newline at end of file diff --git a/assets/js/b8a8b340.e1f5335a.js b/assets/js/b8a8b340.e1f5335a.js new file mode 100644 index 000000000..3a977427f --- /dev/null +++ b/assets/js/b8a8b340.e1f5335a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9722],{8771:(e,t,a)=>{a.d(t,{Z:()=>o});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},n.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2048 2048","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M1024 25q141 0 272 36t244 104 207 160 161 207 103 245 37 272q0 165-50 318t-143 281-221 224-286 149q-3 1-9 1t-9 1q-24 0-38-14t-14-37v-140q0-69 1-141 0-51-15-103t-54-87q116-13 203-47t146-96 88-150 30-212q0-78-26-147t-79-128q11-28 16-58t5-60q0-39-8-77t-23-76q-5-2-11-2t-11 0q-32 0-67 10t-69 26-67 35-57 36q-125-35-256-35t-256 35q-25-17-57-36t-66-34-70-26-67-11h-11q-6 0-11 2-14 37-22 75t-9 78q0 30 5 60t16 58q-53 58-79 127t-26 148q0 122 29 211t88 150 146 97 203 48q-29 26-44 62t-21 75q-27 13-57 20t-60 7q-64 0-106-30t-75-82q-12-19-29-38t-37-34-43-24-48-10h-12q-8 0-15 3t-14 6-6 10q0 12 14 23t23 18l3 2q22 17 38 32t30 33 23 38 23 47q34 78 95 113t147 36q26 0 52-3t52-9v174q0 24-14 38t-39 14h-8q-5 0-9-2-157-51-286-147t-221-225-142-282-51-318q0-141 36-272t104-244 160-207 207-161T752 62t272-37z"})))}},6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{text:t,to:a,children:r,openInNewTab:n=!0,tabIndex:o=0,ariaLabel:c=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:n?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:o,"aria-label":c,role:"button"},r&&l.createElement("div",{className:"w-5"},r),l.createElement("div",null,t))}},9301:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294),r=a(5887);const n=function(e){let{lang:t,percent:a}=e,n=r.k.find((e=>e.language===t)).color;return l.createElement("div",{className:"flex items-center gap-1"},l.createElement("div",{className:"h-2 w-2 rounded-full",style:{backgroundColor:n}}),l.createElement("p",{className:"leading-3"},l.createElement("span",{className:"text-xs font-bold"},t)," ",l.createElement("span",{className:"text-xs"},a,"%")))}},8665:(e,t,a)=>{a.d(t,{Z:()=>i});var l,r,n=a(7294);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},o.apply(this,arguments)}const c=e=>{let{title:t,titleId:a,...c}=e;return n.createElement("svg",o({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},c),void 0===t?n.createElement("title",{id:a},"ExternalLink"):t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),r||(r=n.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const i=function(e){let{to:t,text:a="here",openInNewTab:l=!0}=e;return n.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:l?"_blank":""},a,n.createElement(c,{className:"icon_inline"}))}},7341:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{imgURL:t,ariaInfo:a="an image"}=e;return l.createElement("div",{className:"overflow-hidden pr-2 pb-2"},l.createElement("img",{src:t,className:"block w-[95%] rounded-2xl border border-gray-100 p-2 shadow-sm","aria-label":a}))}},5887:(e,t,a)=>{a.d(t,{k:()=>l});let l=[{language:"JavaScript",color:"#f1e05a"},{language:"C#",color:"#178600"},{language:"Python",color:"#3572A5"},{language:"Java",color:"#b07219"},{language:"Swift",color:"#F05138"},{language:"Kotlin",color:"#A97BFF"},{language:"Java",color:"#b07219"},{language:"HTML",color:"#e34c26"},{language:"CSS",color:"##563d7c"},{language:"SCSS",color:"#c6538c"}]},6546:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),r=a(1149),n=a(19);const o=function(e){let{overview:t,local:a,deploy:o,resources:c}=e;const[i,s]=l.useState("overview");return l.createElement("div",null,l.createElement("div",{className:"mb-8 w-full overflow-y-hidden overflow-x-scroll"},l.createElement(r.o,{"aria-label":"Details about the demo",selectedKey:i,onLinkClick:e=>{e&&s(e.props.itemKey)},headersOnly:!0},t&&l.createElement(n.M,{headerText:"Overview",itemKey:"overview"}),a&&l.createElement(n.M,{headerText:"Run locally",itemKey:"local"}),o&&l.createElement(n.M,{headerText:"One-click deploy to Azure",itemKey:"deploy"}),c&&l.createElement(n.M,{headerText:"Resources",itemKey:"resources"}))),l.createElement("div",{className:"font-sans font-light"},"overview"===i&&t,"local"===i&&a,"deploy"===i&&o,"resources"===i&&c))}},9014:(e,t,a)=>{a.d(t,{Z:()=>u});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},n.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,viewBox:"0 0 18 18","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M6.268.726h5.49a1.249 1.249 0 0 1 1.183.85l4.742 14.05a1.249 1.249 0 0 1-1.184 1.649h-5.352v-.005a1.284 1.284 0 0 1-.112.005h-.02a1.249 1.249 0 0 1-.745-.247L6.78 14.437l-.671 1.988a1.249 1.249 0 0 1-1.183.85H1.5a1.249 1.249 0 0 1-1.184-1.649L5.06 1.576a1.249 1.249 0 0 1 1.184-.85ZM5.787 12.53l5.041 3.745a.312.312 0 0 0 .187.062h.02a.312.312 0 0 0 .296-.412L8.777 8.358l-1.022 2.644-.116.3H4.152Zm10.712 3.807h-4.254a1.238 1.238 0 0 0-.026-.712L7.506 1.662h4.251a.312.312 0 0 1 .296.213l4.742 14.05a.312.312 0 0 1-.296.413Z",fillRule:"evenodd"})))},c=a.p+"assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg";var i=a(5033),s=a(7341),m=a(7029);const u=function(e){let{to:t}=e;return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"One-click deploy to Azure"),r.createElement(m.Z,null,r.createElement("p",null,"Deploy this demo app to Azure with one single click. Note that you will need an Azure account.")),r.createElement(i.Z,{text:"Deploy to Azure",to:t},r.createElement(o,{className:"lightIcon"})),r.createElement("h2",{className:"mt-12 text-4xl"},"Visit your live demo"),r.createElement(m.Z,null,r.createElement("p",null,"Once the resources are provisioned, you can find ",r.createElement("code",null,"Outputs")," on the side bar. Open the link in your browser.")),r.createElement(s.Z,{imgURL:c,ariaInfo:"Blade outputs image",alt:"Blade outputs image"}))}},4043:(e,t,a)=>{a.d(t,{Z:()=>i});var l=a(7294),r=a(7029),n=a(4064);const o=function(e){let{text:t,language:a,title:r}=e;return l.createElement("div",{className:"mb-3"},r&&l.createElement("h5",{className:"font-bold"},r),l.createElement(n.Z1,{text:t,language:a,showLineNumbers:!0,codeBlock:!0,wrapLines:!0,theme:n.cL}))};var c=a(8665);const i=function(e){let{hub:t}=e;return l.createElement("div",null,l.createElement("h2",{className:"text-4xl"},"Prerequisites"),l.createElement(r.Z,{title:"To run this app locally, you will need the following"},l.createElement("ul",{className:"ml-5 list-disc "},l.createElement("li",{className:"mt-0"},"Node.js"),l.createElement("li",{className:"mt-0"},"Create an Azure Web PubSub resource"),l.createElement("li",{className:"mt-0"},l.createElement(c.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"})," to tunnel traffic from Web PubSub to your localhost"))),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Install dependencies"),l.createElement(o,{text:"npm install",language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Start the app"),l.createElement(o,{text:'export WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Linux"}),l.createElement(o,{text:'set WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Windows"}),t&&l.createElement(l.Fragment,null,l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Use ",l.createElement("code",null,"awps-tunnel")," to tunnel traffic from Web PubSub service to localhost"),l.createElement(r.Z,null,l.createElement("p",null,"Install and run ",l.createElement(c.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"}),":")),l.createElement(o,{text:`awps-tunnel run --hub ${t} --upstream http://localhost:8080`,language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Configure the event handler"),l.createElement(r.Z,null,l.createElement("p",null,"Event handler can be set from Azure Portal or through Azure CLI.\xa0",l.createElement(c.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler",text:"Here"}),"contains the detailed instructions of how to set it up."))))}},7744:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(){return l.createElement("div",null,"No additional resources for this sample application")}},8372:(e,t,a)=>{a.d(t,{Z:()=>s});var l=a(7294),r=a(9301),n=a(5887);const o=function(e){let{languages:t}=e;return l.createElement("div",{className:"my-4"},l.createElement("div",{className:"flex gap-10"},t.map((e=>l.createElement(r.Z,{lang:e.language,percent:e.percent,key:e.language})))),l.createElement("div",{className:"flex overflow-hidden rounded-full bg-gray-300"},t.map((e=>{let t=n.k.find((t=>t.language===e.language)).color;return l.createElement("div",{style:{backgroundColor:t,width:e.percent+"%"},className:"h-2 flex-auto",key:e.language})}))))};var c=a(5033),i=a(8771);const s=function(e){let{alert:t,leftSrc:a,rightSrc:r,description:n,languages:s,githubURL:m}=e;return l.createElement("div",{className:"pattern-dots-sm mb-10 relative"},t&&l.createElement("p",{className:"bg-red-100 py-2 text-center font-bold text-red-900 "},t),l.createElement("div",{className:`flex flex-col items-center ${a&&r?"gap-6":"w-full"} py-4 drop-shadow-xl xl:flex-row`},a&&l.createElement("iframe",{src:a,title:n,className:"h-[400px] w-[95%] xl:h-[600px]"}),r&&l.createElement("iframe",{src:r,title:n,className:"h-[400px] w-[95%] xl:h-[600px]"})),l.createElement("div",{className:"flex flex-col xl:flex-row xl:items-center xl:justify-around mt-8"},l.createElement(c.Z,{text:"View source",to:m},l.createElement(i.Z,{className:"lightIcon"})),l.createElement("div",{className:"w-[90%] xl:w-2/3"},l.createElement(o,{languages:s}))))}},7029:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{title:t,children:a}=e;return l.createElement("div",{className:"mt-5 mb-2"},l.createElement("h3",{className:"mb-1 font-sans font-semibold"},t),a)}},4827:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>h,contentTitle:()=>p,default:()=>w,frontMatter:()=>d,metadata:()=>b,toc:()=>g});var l=a(7462),r=a(7294),n=a(3905),o=(a(8372),a(6546)),c=a(7029),i=a(8665);a(4043),a(9014),a(7744);const s=a(6694).o.find((e=>"demos/chatr"===e.detailURL));s.languages,s.githubRepo;function m(){return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"Overview"),r.createElement(c.Z,{title:"About the app"},r.createElement("p",null,"This demo is developed by \xa0",r.createElement(i.Z,{to:"https://github.com/benc-uk",text:"Ben Coleman"}),"using Azure Web PubSub service, Azure Static Web Apps, and deploy using Azure Bicep.")),r.createElement(c.Z,{title:"Azure Web PubSub enables"},r.createElement("ul",{className:"ml-5 list-disc leading-5"},r.createElement("li",{className:"mt-0"},"Real-time code editing"))),r.createElement("h2",{className:"mt-12 text-4xl"},"Check out the live demo"),r.createElement("p",null,"You can check out the live demo \xa0",r.createElement(i.Z,{to:"https://github.com/benc-uk/chatr"})))}const u=function(){return r.createElement(r.Fragment,null,r.createElement("div",{className:"max-w-full overflow-hidden"},r.createElement(o.Z,{overview:r.createElement(m,null)})))},d={sidebar_position:6,slug:"/chatr",title:"Chatr",tags:[],description:"A chat app created by community member",hide_title:!0,custom_edit_url:null},p=void 0,b={unversionedId:"chatr",id:"chatr",title:"Chatr",description:"A chat app created by community member",source:"@site/docs/chatr.mdx",sourceDirName:".",slug:"/chatr",permalink:"/azure-webpubsub/demos/chatr",draft:!1,editUrl:null,tags:[],version:"current",sidebarPosition:6,frontMatter:{sidebar_position:6,slug:"/chatr",title:"Chatr",tags:[],description:"A chat app created by community member",hide_title:!0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Code stream",permalink:"/azure-webpubsub/demos/code-streaming"}},h={},g=[],v={toc:g};function w(e){let{components:t,...a}=e;return(0,n.kt)("wrapper",(0,l.Z)({},v,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)(u,{mdxType:"Chatr"}))}w.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c0eb0060.ff522a80.js b/assets/js/c0eb0060.ff522a80.js new file mode 100644 index 000000000..2ea153494 --- /dev/null +++ b/assets/js/c0eb0060.ff522a80.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5047],{2554:e=>{e.exports=JSON.parse('{"label":"Express.js","permalink":"/azure-webpubsub/demos/tags/express-js","allTagsPath":"/azure-webpubsub/demos/tags","count":4,"items":[{"id":"code_stream","title":"Code stream","description":"Real-time collaborative code editor","permalink":"/azure-webpubsub/demos/code-streaming"},{"id":"collaborative_whiteboard","title":"Collaborative whiteboard","description":"A sample app of collaborative whiteboard","permalink":"/azure-webpubsub/demos/whiteboard"},{"id":"realtime_scoreboard","title":"Real-time scoreboard","description":"Create a doc page with rich content.","permalink":"/azure-webpubsub/demos/scoreboard"},{"id":"simple_chat_app","title":"Simple chat app","description":"A simple chat app","permalink":"/azure-webpubsub/demos/chat"}]}')}}]); \ No newline at end of file diff --git a/assets/js/c21a21f5.e26bf9d3.js b/assets/js/c21a21f5.e26bf9d3.js new file mode 100644 index 000000000..08e55dec8 --- /dev/null +++ b/assets/js/c21a21f5.e26bf9d3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3071],{3769:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/ccc49370.4914a03e.js b/assets/js/ccc49370.4914a03e.js new file mode 100644 index 000000000..cf8b6fdf6 --- /dev/null +++ b/assets/js/ccc49370.4914a03e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6103],{5203:(e,t,n)=>{n.r(t),n.d(t,{default:()=>h});var a=n(7294),l=n(6010),r=n(1944),o=n(5281),i=n(9460),c=n(9058),s=n(390),m=n(7462),d=n(5999),u=n(2244);function g(e){const{nextItem:t,prevItem:n}=e;return a.createElement("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,d.I)({id:"theme.blog.post.paginator.navAriaLabel",message:"Blog post page navigation",description:"The ARIA label for the blog posts pagination"})},n&&a.createElement(u.Z,(0,m.Z)({},n,{subLabel:a.createElement(d.Z,{id:"theme.blog.post.paginator.newerPost",description:"The blog post button label to navigate to the newer/previous post"},"Newer Post")})),t&&a.createElement(u.Z,(0,m.Z)({},t,{subLabel:a.createElement(d.Z,{id:"theme.blog.post.paginator.olderPost",description:"The blog post button label to navigate to the older/next post"},"Older Post"),isNext:!0})))}function f(){const{assets:e,metadata:t}=(0,i.C)(),{title:n,description:l,date:o,tags:c,authors:s,frontMatter:m}=t,{keywords:d}=m,u=e.image??m.image;return a.createElement(r.d,{title:n,description:l,keywords:d,image:u},a.createElement("meta",{property:"og:type",content:"article"}),a.createElement("meta",{property:"article:published_time",content:o}),s.some((e=>e.url))&&a.createElement("meta",{property:"article:author",content:s.map((e=>e.url)).filter(Boolean).join(",")}),c.length>0&&a.createElement("meta",{property:"article:tag",content:c.map((e=>e.label)).join(",")}))}var v=n(9407);function p(e){let{sidebar:t,children:n}=e;const{metadata:l,toc:r}=(0,i.C)(),{nextItem:o,prevItem:m,frontMatter:d}=l,{hide_table_of_contents:u,toc_min_heading_level:f,toc_max_heading_level:p}=d;return a.createElement(c.Z,{sidebar:t,toc:!u&&r.length>0?a.createElement(v.Z,{toc:r,minHeadingLevel:f,maxHeadingLevel:p}):void 0},a.createElement(s.Z,null,n),(o||m)&&a.createElement(g,{nextItem:o,prevItem:m}))}function h(e){const t=e.content;return a.createElement(i.n,{content:e.content,isBlogPostPage:!0},a.createElement(r.FG,{className:(0,l.Z)(o.k.wrapper.blogPages,o.k.page.blogPostPage)},a.createElement(f,null),a.createElement(p,{sidebar:e.sidebar},a.createElement(t,null))))}},9407:(e,t,n)=>{n.d(t,{Z:()=>c});var a=n(7462),l=n(7294),r=n(6010),o=n(3743);const i="tableOfContents_bqdL";function c(e){let{className:t,...n}=e;return l.createElement("div",{className:(0,r.Z)(i,"thin-scrollbar",t)},l.createElement(o.Z,(0,a.Z)({},n,{linkClassName:"table-of-contents__link toc-highlight",linkActiveClassName:"table-of-contents__link--active"})))}},3743:(e,t,n)=>{n.d(t,{Z:()=>f});var a=n(7462),l=n(7294),r=n(6668);function o(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const a=n.slice(2,e.level);e.parentIndex=Math.max(...a),n[e.level]=t}));const a=[];return t.forEach((e=>{const{parentIndex:n,...l}=e;n>=0?t[n].children.push(l):a.push(l)})),a}function i(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return t.flatMap((e=>{const t=i({toc:e.children,minHeadingLevel:n,maxHeadingLevel:a});return function(e){return e.level>=n&&e.level<=a}(e)?[{...e,children:t}]:t}))}function c(e){const t=e.getBoundingClientRect();return t.top===t.bottom?c(e.parentNode):t}function s(e,t){let{anchorTopOffset:n}=t;const a=e.find((e=>c(e).top>=n));if(a){return function(e){return e.top>0&&e.bottom<window.innerHeight/2}(c(a))?a:e[e.indexOf(a)-1]??null}return e[e.length-1]??null}function m(){const e=(0,l.useRef)(0),{navbar:{hideOnScroll:t}}=(0,r.L)();return(0,l.useEffect)((()=>{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function d(e){const t=(0,l.useRef)(void 0),n=m();(0,l.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:a,linkActiveClassName:l,minHeadingLevel:r,maxHeadingLevel:o}=e;function i(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(a),i=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const a=[];for(let l=t;l<=n;l+=1)a.push(`h${l}.anchor`);return Array.from(document.querySelectorAll(a.join()))}({minHeadingLevel:r,maxHeadingLevel:o}),c=s(i,{anchorTopOffset:n.current}),m=e.find((e=>c&&c.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(l),e.classList.add(l),t.current=e):e.classList.remove(l)}(e,e===m)}))}return document.addEventListener("scroll",i),document.addEventListener("resize",i),i(),()=>{document.removeEventListener("scroll",i),document.removeEventListener("resize",i)}}),[e,n])}function u(e){let{toc:t,className:n,linkClassName:a,isChild:r}=e;return t.length?l.createElement("ul",{className:r?void 0:n},t.map((e=>l.createElement("li",{key:e.id},l.createElement("a",{href:`#${e.id}`,className:a??void 0,dangerouslySetInnerHTML:{__html:e.value}}),l.createElement(u,{isChild:!0,toc:e.children,className:n,linkClassName:a}))))):null}const g=l.memo(u);function f(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:c="table-of-contents__link",linkActiveClassName:s,minHeadingLevel:m,maxHeadingLevel:u,...f}=e;const v=(0,r.L)(),p=m??v.tableOfContents.minHeadingLevel,h=u??v.tableOfContents.maxHeadingLevel,b=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return(0,l.useMemo)((()=>i({toc:o(t),minHeadingLevel:n,maxHeadingLevel:a})),[t,n,a])}({toc:t,minHeadingLevel:p,maxHeadingLevel:h});return d((0,l.useMemo)((()=>{if(c&&s)return{linkClassName:c,linkActiveClassName:s,minHeadingLevel:p,maxHeadingLevel:h}}),[c,s,p,h])),l.createElement(g,(0,a.Z)({toc:b,className:n,linkClassName:c},f))}}}]); \ No newline at end of file diff --git a/assets/js/cffc60f8.c7e2b74e.js b/assets/js/cffc60f8.c7e2b74e.js new file mode 100644 index 000000000..d6ff71336 --- /dev/null +++ b/assets/js/cffc60f8.c7e2b74e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5809],{8771:(e,t,a)=>{a.d(t,{Z:()=>o});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},n.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2048 2048","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M1024 25q141 0 272 36t244 104 207 160 161 207 103 245 37 272q0 165-50 318t-143 281-221 224-286 149q-3 1-9 1t-9 1q-24 0-38-14t-14-37v-140q0-69 1-141 0-51-15-103t-54-87q116-13 203-47t146-96 88-150 30-212q0-78-26-147t-79-128q11-28 16-58t5-60q0-39-8-77t-23-76q-5-2-11-2t-11 0q-32 0-67 10t-69 26-67 35-57 36q-125-35-256-35t-256 35q-25-17-57-36t-66-34-70-26-67-11h-11q-6 0-11 2-14 37-22 75t-9 78q0 30 5 60t16 58q-53 58-79 127t-26 148q0 122 29 211t88 150 146 97 203 48q-29 26-44 62t-21 75q-27 13-57 20t-60 7q-64 0-106-30t-75-82q-12-19-29-38t-37-34-43-24-48-10h-12q-8 0-15 3t-14 6-6 10q0 12 14 23t23 18l3 2q22 17 38 32t30 33 23 38 23 47q34 78 95 113t147 36q26 0 52-3t52-9v174q0 24-14 38t-39 14h-8q-5 0-9-2-157-51-286-147t-221-225-142-282-51-318q0-141 36-272t104-244 160-207 207-161T752 62t272-37z"})))}},6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{text:t,to:a,children:r,openInNewTab:n=!0,tabIndex:o=0,ariaLabel:s=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:n?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:o,"aria-label":s,role:"button"},r&&l.createElement("div",{className:"w-5"},r),l.createElement("div",null,t))}},9301:(e,t,a)=>{a.d(t,{Z:()=>n});var l=a(7294),r=a(5887);const n=function(e){let{lang:t,percent:a}=e,n=r.k.find((e=>e.language===t)).color;return l.createElement("div",{className:"flex items-center gap-1"},l.createElement("div",{className:"h-2 w-2 rounded-full",style:{backgroundColor:n}}),l.createElement("p",{className:"leading-3"},l.createElement("span",{className:"text-xs font-bold"},t)," ",l.createElement("span",{className:"text-xs"},a,"%")))}},8665:(e,t,a)=>{a.d(t,{Z:()=>i});var l,r,n=a(7294);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},o.apply(this,arguments)}const s=e=>{let{title:t,titleId:a,...s}=e;return n.createElement("svg",o({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},s),void 0===t?n.createElement("title",{id:a},"ExternalLink"):t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),r||(r=n.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const i=function(e){let{to:t,text:a="here",openInNewTab:l=!0}=e;return n.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:l?"_blank":""},a,n.createElement(s,{className:"icon_inline"}))}},7341:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{imgURL:t,ariaInfo:a="an image"}=e;return l.createElement("div",{className:"overflow-hidden pr-2 pb-2"},l.createElement("img",{src:t,className:"block w-[95%] rounded-2xl border border-gray-100 p-2 shadow-sm","aria-label":a}))}},5887:(e,t,a)=>{a.d(t,{k:()=>l});let l=[{language:"JavaScript",color:"#f1e05a"},{language:"C#",color:"#178600"},{language:"Python",color:"#3572A5"},{language:"Java",color:"#b07219"},{language:"Swift",color:"#F05138"},{language:"Kotlin",color:"#A97BFF"},{language:"Java",color:"#b07219"},{language:"HTML",color:"#e34c26"},{language:"CSS",color:"##563d7c"},{language:"SCSS",color:"#c6538c"}]},6546:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),r=a(1149),n=a(19);const o=function(e){let{overview:t,local:a,deploy:o,resources:s}=e;const[i,c]=l.useState("overview");return l.createElement("div",null,l.createElement("div",{className:"mb-8 w-full overflow-y-hidden overflow-x-scroll"},l.createElement(r.o,{"aria-label":"Details about the demo",selectedKey:i,onLinkClick:e=>{e&&c(e.props.itemKey)},headersOnly:!0},t&&l.createElement(n.M,{headerText:"Overview",itemKey:"overview"}),a&&l.createElement(n.M,{headerText:"Run locally",itemKey:"local"}),o&&l.createElement(n.M,{headerText:"One-click deploy to Azure",itemKey:"deploy"}),s&&l.createElement(n.M,{headerText:"Resources",itemKey:"resources"}))),l.createElement("div",{className:"font-sans font-light"},"overview"===i&&t,"local"===i&&a,"deploy"===i&&o,"resources"===i&&s))}},9014:(e,t,a)=>{a.d(t,{Z:()=>u});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},n.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,viewBox:"0 0 18 18","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M6.268.726h5.49a1.249 1.249 0 0 1 1.183.85l4.742 14.05a1.249 1.249 0 0 1-1.184 1.649h-5.352v-.005a1.284 1.284 0 0 1-.112.005h-.02a1.249 1.249 0 0 1-.745-.247L6.78 14.437l-.671 1.988a1.249 1.249 0 0 1-1.183.85H1.5a1.249 1.249 0 0 1-1.184-1.649L5.06 1.576a1.249 1.249 0 0 1 1.184-.85ZM5.787 12.53l5.041 3.745a.312.312 0 0 0 .187.062h.02a.312.312 0 0 0 .296-.412L8.777 8.358l-1.022 2.644-.116.3H4.152Zm10.712 3.807h-4.254a1.238 1.238 0 0 0-.026-.712L7.506 1.662h4.251a.312.312 0 0 1 .296.213l4.742 14.05a.312.312 0 0 1-.296.413Z",fillRule:"evenodd"})))},s=a.p+"assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg";var i=a(5033),c=a(7341),m=a(7029);const u=function(e){let{to:t}=e;return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"One-click deploy to Azure"),r.createElement(m.Z,null,r.createElement("p",null,"Deploy this demo app to Azure with one single click. Note that you will need an Azure account.")),r.createElement(i.Z,{text:"Deploy to Azure",to:t},r.createElement(o,{className:"lightIcon"})),r.createElement("h2",{className:"mt-12 text-4xl"},"Visit your live demo"),r.createElement(m.Z,null,r.createElement("p",null,"Once the resources are provisioned, you can find ",r.createElement("code",null,"Outputs")," on the side bar. Open the link in your browser.")),r.createElement(c.Z,{imgURL:s,ariaInfo:"Blade outputs image",alt:"Blade outputs image"}))}},4043:(e,t,a)=>{a.d(t,{Z:()=>i});var l=a(7294),r=a(7029),n=a(4064);const o=function(e){let{text:t,language:a,title:r}=e;return l.createElement("div",{className:"mb-3"},r&&l.createElement("h5",{className:"font-bold"},r),l.createElement(n.Z1,{text:t,language:a,showLineNumbers:!0,codeBlock:!0,wrapLines:!0,theme:n.cL}))};var s=a(8665);const i=function(e){let{hub:t}=e;return l.createElement("div",null,l.createElement("h2",{className:"text-4xl"},"Prerequisites"),l.createElement(r.Z,{title:"To run this app locally, you will need the following"},l.createElement("ul",{className:"ml-5 list-disc "},l.createElement("li",{className:"mt-0"},"Node.js"),l.createElement("li",{className:"mt-0"},"Create an Azure Web PubSub resource"),l.createElement("li",{className:"mt-0"},l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"})," to tunnel traffic from Web PubSub to your localhost"))),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Install dependencies"),l.createElement(o,{text:"npm install",language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Start the app"),l.createElement(o,{text:'export WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Linux"}),l.createElement(o,{text:'set WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Windows"}),t&&l.createElement(l.Fragment,null,l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Use ",l.createElement("code",null,"awps-tunnel")," to tunnel traffic from Web PubSub service to localhost"),l.createElement(r.Z,null,l.createElement("p",null,"Install and run ",l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"}),":")),l.createElement(o,{text:`awps-tunnel run --hub ${t} --upstream http://localhost:8080`,language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Configure the event handler"),l.createElement(r.Z,null,l.createElement("p",null,"Event handler can be set from Azure Portal or through Azure CLI.\xa0",l.createElement(s.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler",text:"Here"}),"contains the detailed instructions of how to set it up."))))}},7744:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(){return l.createElement("div",null,"No additional resources for this sample application")}},8372:(e,t,a)=>{a.d(t,{Z:()=>c});var l=a(7294),r=a(9301),n=a(5887);const o=function(e){let{languages:t}=e;return l.createElement("div",{className:"my-4"},l.createElement("div",{className:"flex gap-10"},t.map((e=>l.createElement(r.Z,{lang:e.language,percent:e.percent,key:e.language})))),l.createElement("div",{className:"flex overflow-hidden rounded-full bg-gray-300"},t.map((e=>{let t=n.k.find((t=>t.language===e.language)).color;return l.createElement("div",{style:{backgroundColor:t,width:e.percent+"%"},className:"h-2 flex-auto",key:e.language})}))))};var s=a(5033),i=a(8771);const c=function(e){let{alert:t,leftSrc:a,rightSrc:r,description:n,languages:c,githubURL:m}=e;return l.createElement("div",{className:"pattern-dots-sm mb-10 relative"},t&&l.createElement("p",{className:"bg-red-100 py-2 text-center font-bold text-red-900 "},t),l.createElement("div",{className:`flex flex-col items-center ${a&&r?"gap-6":"w-full"} py-4 drop-shadow-xl xl:flex-row`},a&&l.createElement("iframe",{src:a,title:n,className:"h-[400px] w-[95%] xl:h-[600px]"}),r&&l.createElement("iframe",{src:r,title:n,className:"h-[400px] w-[95%] xl:h-[600px]"})),l.createElement("div",{className:"flex flex-col xl:flex-row xl:items-center xl:justify-around mt-8"},l.createElement(s.Z,{text:"View source",to:m},l.createElement(i.Z,{className:"lightIcon"})),l.createElement("div",{className:"w-[90%] xl:w-2/3"},l.createElement(o,{languages:c}))))}},7029:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{title:t,children:a}=e;return l.createElement("div",{className:"mt-5 mb-2"},l.createElement("h3",{className:"mb-1 font-sans font-semibold"},t),a)}},2639:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>x,contentTitle:()=>E,default:()=>z,frontMatter:()=>w,metadata:()=>f,toc:()=>N});var l=a(7462),r=a(7294),n=a(3905),o=a(8372),s=a(6546),i=a(7029),c=a(4043),m=a(9014),u=a(7744);const d=a(6694).o.find((e=>"demos/whiteboard"===e.detailURL)),p=d.languages,b=d.githubRepo,h=d.deployLink;function g(){return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"Overview"),r.createElement(i.Z,{title:"About the app"},r.createElement("p",null,"This is a sample project to demonstrate how to build a web application for real time collaboration using Azure, Node.js and other related technologies.")),r.createElement(i.Z,{title:"Azure Web PubSub enables"},r.createElement("ul",{className:"ml-5 list-disc leading-5"},r.createElement("li",{className:"mt-0"},"A whiteboard that anyone can paint on and others can see each other painting in real time"),r.createElement("li",{className:"mt-0"},"Real time chat"))),r.createElement("h2",{className:"mt-12 text-4xl"},"How it works?"),r.createElement(i.Z,{title:"Frontend"},r.createElement("ul",{className:"ml-5 list-disc"},r.createElement("li",{className:"mt-0"},"HTML5/JavaScript"),r.createElement("li",{className:"mt-0"},"Bootstrap"),r.createElement("li",{className:"mt-0"},"Vue.js"))),r.createElement(i.Z,{title:"Backend"},r.createElement("ul",{className:"ml-5 list-disc"},r.createElement("li",{className:"mt-0"},"Node.js"),r.createElement("li",{className:"mt-0"},"Express.js"))),r.createElement(i.Z,{title:"Real-time communication"},r.createElement("ul",{className:"ml-5 list-disc"},r.createElement("li",{className:"mt-0"},"Azure Web PubSub"))))}const v=function(){return r.createElement(r.Fragment,null,r.createElement(o.Z,{leftSrc:"https://awps-demo-whiteboard.azurewebsites.net/",rightSrc:"https://awps-demo-whiteboard.azurewebsites.net/",description:"Real-time chat app demo",width:"400",languages:p,githubURL:b}),r.createElement("div",{className:"max-w-full overflow-hidden"},r.createElement(s.Z,{overview:r.createElement(g,null),local:r.createElement(c.Z,{hub:"sample_draw"}),resources:r.createElement(u.Z,null),deploy:r.createElement(m.Z,{to:h})})))},w={sidebar_position:2,slug:"/whiteboard",title:"Collaborative whiteboard",tags:["JavaScript","Vue.js","Express.js"],description:"A sample app of collaborative whiteboard",hide_title:!0,custom_edit_url:null},E=void 0,f={unversionedId:"collaborative_whiteboard",id:"collaborative_whiteboard",title:"Collaborative whiteboard",description:"A sample app of collaborative whiteboard",source:"@site/docs/collaborative_whiteboard.mdx",sourceDirName:".",slug:"/whiteboard",permalink:"/azure-webpubsub/demos/whiteboard",draft:!1,editUrl:null,tags:[{label:"JavaScript",permalink:"/azure-webpubsub/demos/tags/java-script"},{label:"Vue.js",permalink:"/azure-webpubsub/demos/tags/vue-js"},{label:"Express.js",permalink:"/azure-webpubsub/demos/tags/express-js"}],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2,slug:"/whiteboard",title:"Collaborative whiteboard",tags:["JavaScript","Vue.js","Express.js"],description:"A sample app of collaborative whiteboard",hide_title:!0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Simple chat app",permalink:"/azure-webpubsub/demos/chat"},next:{title:"Real-time scoreboard",permalink:"/azure-webpubsub/demos/scoreboard"}},x={},N=[],y={toc:N};function z(e){let{components:t,...a}=e;return(0,n.kt)("wrapper",(0,l.Z)({},y,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)(v,{mdxType:"CollaborativeWhiteboard"}))}z.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d512bf0e.a0151f74.js b/assets/js/d512bf0e.a0151f74.js new file mode 100644 index 000000000..bd58641a1 --- /dev/null +++ b/assets/js/d512bf0e.a0151f74.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4891],{8771:(e,t,a)=>{a.d(t,{Z:()=>s});var n,l=a(7294);function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},r.apply(this,arguments)}const s=e=>{let{title:t,titleId:a,...s}=e;return l.createElement("svg",r({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2048 2048","aria-labelledby":a},s),t?l.createElement("title",{id:a},t):null,n||(n=l.createElement("path",{d:"M1024 25q141 0 272 36t244 104 207 160 161 207 103 245 37 272q0 165-50 318t-143 281-221 224-286 149q-3 1-9 1t-9 1q-24 0-38-14t-14-37v-140q0-69 1-141 0-51-15-103t-54-87q116-13 203-47t146-96 88-150 30-212q0-78-26-147t-79-128q11-28 16-58t5-60q0-39-8-77t-23-76q-5-2-11-2t-11 0q-32 0-67 10t-69 26-67 35-57 36q-125-35-256-35t-256 35q-25-17-57-36t-66-34-70-26-67-11h-11q-6 0-11 2-14 37-22 75t-9 78q0 30 5 60t16 58q-53 58-79 127t-26 148q0 122 29 211t88 150 146 97 203 48q-29 26-44 62t-21 75q-27 13-57 20t-60 7q-64 0-106-30t-75-82q-12-19-29-38t-37-34-43-24-48-10h-12q-8 0-15 3t-14 6-6 10q0 12 14 23t23 18l3 2q22 17 38 32t30 33 23 38 23 47q34 78 95 113t147 36q26 0 52-3t52-9v174q0 24-14 38t-39 14h-8q-5 0-9-2-157-51-286-147t-221-225-142-282-51-318q0-141 36-272t104-244 160-207 207-161T752 62t272-37z"})))}},8665:(e,t,a)=>{a.d(t,{Z:()=>o});var n,l,r=a(7294);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},s.apply(this,arguments)}const c=e=>{let{title:t,titleId:a,...c}=e;return r.createElement("svg",s({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},c),void 0===t?r.createElement("title",{id:a},"ExternalLink"):t?r.createElement("title",{id:a},t):null,n||(n=r.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),l||(l=r.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const o=function(e){let{to:t,text:a="here",openInNewTab:n=!0}=e;return r.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:n?"_blank":""},a,r.createElement(c,{className:"icon_inline"}))}},7939:(e,t,a)=>{a.r(t),a.d(t,{default:()=>c});var n=a(7294),l=a(3285),r=a(8665),s=a(8771);const c=function(){return n.createElement(l.Z,null,n.createElement("div",{className:"flex justify-center px-6 font-sans"},n.createElement("div",{className:" max-w-3xl"},n.createElement("section",{className:"mt-10"},n.createElement("h1",{className:"py-3 text-5xl font-bold"},"Where to Get Support?"),n.createElement("p",{className:"text-gray-800"},"If you already have a Web PubSub resource created on Azure portal, you can create a support ticket. Alternatively, you can create an issue on the public GitHub issue. Our team monitors the issues very closely and tries to resolve the issue as soon as we can.")),n.createElement("section",null,n.createElement("h2",{className:"mt-10 py-1 text-3xl font-bold"},"Documentation"),n.createElement("p",{className:"text-gray-800"},"You can visit the documentation of Azure Web PubSub service from\xa0",n.createElement(r.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/overview"}),".")),n.createElement("section",null,n.createElement("h2",{className:"mt-10 py-1 text-3xl font-bold"},"Reach out to the product team"),n.createElement("h3",{className:"font-bold"},"Create a GitHub",n.createElement(s.Z,{className:"icon_inline"}),"issue"),n.createElement("p",{className:"text-gray-800"},"The product team monitors GitHub issues on a daily basis. It\u2019s the best way to reach out the team and ... Create a GitHub issue\xa0",n.createElement(r.Z,{to:"https://github.com/Azure/azure-webpubsub"}),".")),n.createElement("section",null,n.createElement("h2",{className:"mt-10 py-1 text-3xl font-bold"},"Suggest a demo"),n.createElement("p",{className:"text-gray-800"},"Have a demo you\u2019d like to see on this site. Share your idea with us and creating a GitHub issue\xa0",n.createElement(r.Z,{to:"https://github.com/Azure/azure-webpubsub"}),"."),n.createElement("h3",{className:"pt-2 font-bold"},"Demos we are currently working on"),n.createElement("ul",{className:"list-inside list-disc"},n.createElement("li",null,"Collaborative sales order processing app"),n.createElement("li",null,"Truck tracking app"))))))}}}]); \ No newline at end of file diff --git a/assets/js/df203c0f.852a4cee.js b/assets/js/df203c0f.852a4cee.js new file mode 100644 index 000000000..73bf27b06 --- /dev/null +++ b/assets/js/df203c0f.852a4cee.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9924],{491:(e,t,l)=>{l.r(t),l.d(t,{default:()=>d});var a=l(7294),n=l(6010),r=l(9960),s=l(8824),c=l(1944),o=l(5281),i=l(5999),u=l(3285),g=l(197);function m(e){let{doc:t}=e;return a.createElement("article",{className:"margin-vert--lg"},a.createElement(r.Z,{to:t.permalink},a.createElement("h2",null,t.title)),t.description&&a.createElement("p",null,t.description))}function d(e){let{tag:t}=e;const l=function(){const{selectMessage:e}=(0,s.c)();return t=>e(t,(0,i.I)({id:"theme.docs.tagDocListPageTitle.nDocsTagged",description:'Pluralized label for "{count} docs tagged". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',message:"One doc tagged|{count} docs tagged"},{count:t}))}(),d=(0,i.I)({id:"theme.docs.tagDocListPageTitle",description:"The title of the page for a docs tag",message:'{nDocsTagged} with "{tagName}"'},{nDocsTagged:l(t.count),tagName:t.label});return a.createElement(c.FG,{className:(0,n.Z)(o.k.wrapper.docsPages,o.k.page.docsTagDocListPage)},a.createElement(c.d,{title:d}),a.createElement(g.Z,{tag:"doc_tag_doc_list"}),a.createElement(u.Z,null,a.createElement("div",{className:"container margin-vert--lg"},a.createElement("div",{className:"row"},a.createElement("main",{className:"col col--8 col--offset-2"},a.createElement("header",{className:"margin-bottom--xl"},a.createElement("h1",null,d),a.createElement(r.Z,{href:t.allTagsPath},a.createElement(i.Z,{id:"theme.tags.tagsPageLink",description:"The label of the link targeting the tag list page"},"View All Tags"))),a.createElement("section",{className:"margin-vert--lg"},t.items.map((e=>a.createElement(m,{key:e.id,doc:e})))))))))}},8824:(e,t,l)=>{l.d(t,{c:()=>i});var a=l(7294),n=l(2263);const r=["zero","one","two","few","many","other"];function s(e){return r.filter((t=>e.includes(t)))}const c={locale:"en",pluralForms:s(["one","other"]),select:e=>1===e?"one":"other"};function o(){const{i18n:{currentLocale:e}}=(0,n.Z)();return(0,a.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:s(t.resolvedOptions().pluralCategories),select:e=>t.select(e)}}(e)}catch(t){return console.error(`Failed to use Intl.PluralRules for locale "${e}".\nDocusaurus will fallback to the default (English) implementation.\nError: ${t.message}\n`),c}}),[e])}function i(){const e=o();return{selectMessage:(t,l)=>function(e,t,l){const a=e.split("|");if(1===a.length)return a[0];a.length>l.pluralForms.length&&console.error(`For locale=${l.locale}, a maximum of ${l.pluralForms.length} plural forms are expected (${l.pluralForms.join(",")}), but the message contains ${a.length}: ${e}`);const n=l.select(t),r=l.pluralForms.indexOf(n);return a[Math.min(r,a.length-1)]}(l,t,e)}}}}]); \ No newline at end of file diff --git a/assets/js/e771231d.fe2120e4.js b/assets/js/e771231d.fe2120e4.js new file mode 100644 index 000000000..e27c0d24b --- /dev/null +++ b/assets/js/e771231d.fe2120e4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[215],{3805:e=>{e.exports=JSON.parse('{"label":"JavaScript","permalink":"/azure-webpubsub/demos/tags/java-script","allTagsPath":"/azure-webpubsub/demos/tags","count":3,"items":[{"id":"collaborative_whiteboard","title":"Collaborative whiteboard","description":"A sample app of collaborative whiteboard","permalink":"/azure-webpubsub/demos/whiteboard"},{"id":"realtime_scoreboard","title":"Real-time scoreboard","description":"Create a doc page with rich content.","permalink":"/azure-webpubsub/demos/scoreboard"},{"id":"simple_chat_app","title":"Simple chat app","description":"A simple chat app","permalink":"/azure-webpubsub/demos/chat"}]}')}}]); \ No newline at end of file diff --git a/assets/js/ebbeac85.392f3cdc.js b/assets/js/ebbeac85.392f3cdc.js new file mode 100644 index 000000000..b542ab47a --- /dev/null +++ b/assets/js/ebbeac85.392f3cdc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1535],{5794:e=>{e.exports=JSON.parse('{"blogPosts":[{"id":"azure-web-pubsub-for-socketio-generally-available","metadata":{"permalink":"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available","source":"@site/blog/2023-11-20-web-pubsub-for-socket.io-ga/index.md","title":"Azure Web PubSub for Socket.IO is now generally available","description":"TL;DR","date":"2023-11-20T00:00:00.000Z","formattedDate":"November 20, 2023","tags":[],"readingTime":3.51,"hasTruncateMarker":false,"authors":[{"name":"Kevin Guo","title":"Senior Product Manager","url":"https://github.com/kevinguo-ed","imageURL":"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4","key":"KevinG"}],"frontMatter":{"slug":"azure-web-pubsub-for-socketio-generally-available","title":"Azure Web PubSub for Socket.IO is now generally available","authors":["KevinG"],"custom_edit_url":null},"nextItem":{"title":"What is WebSocket? (part 2/2)","permalink":"/azure-webpubsub/blog/what_is_websocket_part2"}},"content":"## **TL;DR** \\nSocket.IO library is natively supported on Azure. \\n\\nSince we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it\u2019s suitable for use in production.\\n\\n[:link: Follow this quickstarts guide to try out the feature.](https://learn.microsoft.com/azure/azure-web-pubsub/socketio-quickstart)\\n\\n[:link: Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.](https://github.com/Azure-Samples/socket.io-webapp-integration) \\n\\n## **Solve scalability issue without code rewrite**\\nWhen we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It\u2019s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it\u2019s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago. \\n\\nDevelopers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what\u2019s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure\u2019s massive scale (million+ concurrent users).\\n\\n## **Introduce additional benefits to enterprise-level applications**\\nWeb PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features. \\n- Cross-region replication to make your application more resilient by running in independent Azure regions\\n- Custom domain to add an extra layer of security \\n- Auto-scaling to dynamically scale up and down based on usage\\n\\n## **An example showing how easy it is to migrate a Socket.IO app to Azure**\\n### **Server-side code**\\nDevelopers only need to call `useAzureSocketIO()` to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program. \\n```js title=\\"server.js\\"\\nconst { Server } = require(\\"socket.io\\");\\n// highlight-next-line\\nconst { useAzureSocketIO } = require(\\"@azure/web-pubsub-socket.io\\");\\n\\nlet io = new Server(3000);\\n\\n// highlight-start\\n// Use the following line to integrate with Web PubSub for Socket.IO\\nuseAzureSocketIO(io, {\\n hub: \\"Hub\\", // The hub name can be any valid string.\\n connectionString: \\"<connection-string>\\"\\n});\\n// highlight-end\\n\\nio.on(\\"connection\\", (socket) => {\\n // Sends a message to the client\\n socket.emit(\\"hello\\", \\"world\\");\\n\\n // Receives a message from the client\\n socket.on(\\"howdy\\", (arg) => {\\n console.log(arg); // Prints \\"stranger\\"\\n })\\n```\\n### **Client-side code**\\nThe change to the client-side code is also minimal. Notice that we are using `socket.io-client` package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program.\\n\\n```js title=\\"client.js\\"\\n// highlight-next-line\\nconst io = require(\\"socket.io-client\\");\\n\\n// highlight-start\\nconst socket = io(\\"<web-pubsub-socketio-endpoint>\\", {\\n path: \\"/clients/socketio/hubs/Hub\\",\\n});\\n// highlight-end\\n\\n// Receives a message from the server\\nsocket.on(\\"hello\\", (arg) => {\\n console.log(arg);\\n});\\n\\n// Sends a message to the server\\nsocket.emit(\\"howdy\\", \\"stranger\\")\\n\\n```\\n\\n## **How does it work?**\\nAs you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if \u201cI need to send messages to 1000+ clients\u201d. All that\u2019s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this.\\n\\n![Architecture of Socket.IO managed by Azure](./typical-architecture-managed-socketio.jpg)\\n\\nYou can read more about how it works behind the scenes [:link: by reading the article](https://learn.microsoft.com/azure/azure-web-pubsub/socketio-service-internal).\\n\\n## **Now generally available.**\\nSince public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure\u2019s ticket system.\\n\\n## **Resources and references**\\n- [:link: Socket.IO library documentation](https://socket.io/)\\n- [:link: Quickstarts to migrate an existing Socket.IO app on Azure](https://learn.microsoft.com/azure/azure-web-pubsub/socketio-quickstart)\\n- [:link: Internal: how does Azure solve the scalability challenge for Socket.IO developers](https://learn.microsoft.com/azure/azure-web-pubsub/socketio-service-internal)"},{"id":"what_is_websocket_part2","metadata":{"permalink":"/azure-webpubsub/blog/what_is_websocket_part2","source":"@site/blog/2022-11-25-what-is-websockets_part2/index.md","title":"What is WebSocket? (part 2/2)","description":"Summary","date":"2022-11-25T00:00:00.000Z","formattedDate":"November 25, 2022","tags":[],"readingTime":2.51,"hasTruncateMarker":false,"authors":[{"name":"Jialin Xin","title":"Senior Software Engineer","url":"https://github.com/JialinXin","imageURL":"https://avatars.githubusercontent.com/u/15338714?v=4","key":"JialinX"},{"name":"Kevin Guo","title":"Senior Product Manager","url":"https://github.com/kevinguo-ed","imageURL":"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4","key":"KevinG"}],"frontMatter":{"slug":"what_is_websocket_part2","title":"What is WebSocket? (part 2/2)","authors":["JialinX","KevinG"],"custom_edit_url":null},"prevItem":{"title":"Azure Web PubSub for Socket.IO is now generally available","permalink":"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available"},"nextItem":{"title":"What is WebSocket? (part 1/2)","permalink":"/azure-webpubsub/blog/what_is_websocket_part1"}},"content":"## **Summary** \\nThis article is the second of a two-part series that describes the values of WebSocket on a high-level.\\n\\n## **Quick links**\\nExplore a few live apps built with __[:link: Web PubSub](https://learn.microsoft.com/en-us/azure/azure-web-pubsub/overview)__, a fully managed WebSocket service from Azure. \\n\\n[:link: A simple chat app](https://azure.github.io/azure-webpubsub/demos/chat) \\n[:link: A collaborative whiteboard app](https://azure.github.io/azure-webpubsub/demos/whiteboard) \\n\\n\\n> **Definition**\\n> \\n> WebSocket gives developers a **_bidirectional_**, **_full-duplex_** communication channels over HTTP through a single TCP connection \\n\\n-\\n\\n## **Full-duplex**\\nTo put it simply, \u201cfull-duplex\u201d means that data can be transmitted at the same time in both directions. Like \u201cbidirectional\u201d we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the **TIMING** of sending data. \\n\\nA phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time. \\n\\nA walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak. \\n\\n![Picture of a walkie-talkie](./walkie_talkie.jpg)\\n\\nThe web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie. \\n\\nImagine if you are talking with your grandma using a walkie-talkie and you ask \u201cGrandma, what\u2019s like when you were growing up in the countryside?\u201d Grandma presses the \u201cTalk button\u201d and she starts from the Great Depression, World War 1 and on with World War 2\u2026 While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.) \\n\\n![Picture of a grandma and her granddaughter](./grandma.jpg)\\n\\nThe walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users\u2019 screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web.\\n\\n## **To conclude**\\n\u201cBidirectional\u201d and \u201cfull-duplex\u201d are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications. \\n![Some scenarios that can be enabled by WebSocket](./scenarios.jpg)\\n\\n\\n**Credits:** \\nThe walkie-talkie and the grandma photographs were taken by __[:link: cottonbro studio](https://www.pexels.com/@cottonbro/)__."},{"id":"what_is_websocket_part1","metadata":{"permalink":"/azure-webpubsub/blog/what_is_websocket_part1","source":"@site/blog/2022-11-14-what-is-websockets_part1/index.md","title":"What is WebSocket? (part 1/2)","description":"Summary","date":"2022-11-14T00:00:00.000Z","formattedDate":"November 14, 2022","tags":[],"readingTime":2.33,"hasTruncateMarker":false,"authors":[{"name":"Jialin Xin","title":"Senior Software Engineer","url":"https://github.com/JialinXin","imageURL":"https://avatars.githubusercontent.com/u/15338714?v=4","key":"JialinX"},{"name":"Kevin Guo","title":"Senior Product Manager","url":"https://github.com/kevinguo-ed","imageURL":"https://avatars.githubusercontent.com/u/105208143?s=400&u=9fed0cb6d3e64908d9b6b7ae9e12dcb96a0e3882&v=4","key":"KevinG"}],"frontMatter":{"slug":"what_is_websocket_part1","title":"What is WebSocket? (part 1/2)","authors":["JialinX","KevinG"],"custom_edit_url":null},"prevItem":{"title":"What is WebSocket? (part 2/2)","permalink":"/azure-webpubsub/blog/what_is_websocket_part2"},"nextItem":{"title":"Welcome","permalink":"/azure-webpubsub/blog/welcome"}},"content":"## **Summary** \\nThis article is the first of a two-part series that describes the values of WebSocket on a high-level.\\n\\n## **Quick links**\\nExplore a few live apps built with __[:link: Web PubSub](https://learn.microsoft.com/en-us/azure/azure-web-pubsub/overview)__, a fully managed WebSocket service from Azure. \\n\\n[:link: A simple chat app](https://azure.github.io/azure-webpubsub/demos/chat) \\n[:link: A collaborative whiteboard app](https://azure.github.io/azure-webpubsub/demos/whiteboard) \\n\\n\\n> **Definition**\\n> \\n> WebSocket gives developers a **_bidirectional_**, **_full-duplex_** communication channels over HTTP through a single TCP connection \\n\\n-\\n\\nLet us unpack this loaded sentence together and try to understand the italicized words (technical jargon). \\n\\n## **Bidirectional**\\nThe prefix \u201cbi-\u201c means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions.\\n\\n![Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking](./bidirectional.jpg)\\n\\nHowever, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.\xa0 In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit [www.nytimes.com](https://www.nytimes.com/), the browser sends an HTTP request on the user\u2019s behalf and waits for an HTTP response from its server.\\n\\nWhat is relevant to our discussion here is that the client **ALWAYS** initiates the communication, in other words, the client always _asks_ before the server _responds_. We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet. \\n\\n![Client makes request and server responds.](./http.jpg)\\n\\nAs the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web.\\n\\n![WebSocket enables bi-directional communication](./websocket.jpg)\\n\\nIn the second part, we will explore the idea of \u201cfull-duplex\u201d.\\n\\n---\\n**Credits:** \\nThe bicycle photograph is taken by __[:link: Philipp M](https://www.pexels.com/@luftschnitzel/)__. \\nThe bi-fold door photograph is taken by __[:link: sena](https://www.pexels.com/@sena-124356903/)__."},{"id":"welcome","metadata":{"permalink":"/azure-webpubsub/blog/welcome","source":"@site/blog/2022-06-29-welcome/index.md","title":"Welcome","description":"This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.","date":"2022-06-29T00:00:00.000Z","formattedDate":"June 29, 2022","tags":[],"readingTime":0.565,"hasTruncateMarker":false,"authors":[{"name":"Wanpeng Li","title":"Software Engineer II","url":"https://github.com/wanlwanl","imageURL":"https://avatars.githubusercontent.com/u/38236089?v=4","key":"WangpengL"}],"frontMatter":{"slug":"welcome","title":"Welcome","authors":["WangpengL"],"custom_edit_url":null},"prevItem":{"title":"What is WebSocket? (part 1/2)","permalink":"/azure-webpubsub/blog/what_is_websocket_part1"}},"content":"This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.\\n\\nAzure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates.\\n\\nCheck out the demos on the site and let us know what you think."}]}')}}]); \ No newline at end of file diff --git a/assets/js/f2237b27.9dfb2216.js b/assets/js/f2237b27.9dfb2216.js new file mode 100644 index 000000000..8abd6e106 --- /dev/null +++ b/assets/js/f2237b27.9dfb2216.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4776],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,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 a(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 i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var u=n.createContext({}),s=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},p={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,a=e.originalType,u=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),b=s(r),m=o,h=b["".concat(u,".").concat(m)]||b[m]||p[m]||a;return r?n.createElement(h,i(i({ref:t},c),{},{components:r})):n.createElement(h,i({ref:t},c))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=b;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l.mdxType="string"==typeof e?e:o,i[1]=l;for(var s=2;s<a;s++)i[s]=r[s];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}b.displayName="MDXCreateElement"},6703:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>i,default:()=>p,frontMatter:()=>a,metadata:()=>l,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const a={slug:"welcome",title:"Welcome",authors:["WangpengL"],custom_edit_url:null},i=void 0,l={permalink:"/azure-webpubsub/blog/welcome",source:"@site/blog/2022-06-29-welcome/index.md",title:"Welcome",description:"This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.",date:"2022-06-29T00:00:00.000Z",formattedDate:"June 29, 2022",tags:[],readingTime:.565,hasTruncateMarker:!1,authors:[{name:"Wanpeng Li",title:"Software Engineer II",url:"https://github.com/wanlwanl",imageURL:"https://avatars.githubusercontent.com/u/38236089?v=4",key:"WangpengL"}],frontMatter:{slug:"welcome",title:"Welcome",authors:["WangpengL"],custom_edit_url:null},prevItem:{title:"What is WebSocket? (part 1/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part1"}},u={authorsImageUrls:[void 0]},s=[],c={toc:s};function p(e){let{components:t,...r}=e;return(0,o.kt)("wrapper",(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that."),(0,o.kt)("p",null,"Azure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates."),(0,o.kt)("p",null,"Check out the demos on the site and let us know what you think."))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f3bd417c.d3e0e816.js b/assets/js/f3bd417c.d3e0e816.js new file mode 100644 index 000000000..59b4bfac6 --- /dev/null +++ b/assets/js/f3bd417c.d3e0e816.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9872],{6694:(e,t,a)=>{a.d(t,{o:()=>l});let l=[{id:1,title:"Simple chat app",description:"A simple real-time chat app demonstrating the use of JavaScript server SDK",languages:[],detailURL:"demos/chat",thumbnailURL:"img/thumbnails/chat_abstract.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatapp",buttonAriaLabel:"view demo of simple chat app",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fchatapp-containerapp-deploy.json"},{id:2,title:"Collaborative whiteboard",description:"Multi-user drawing on a shared whiteboard, built with Node.js",languages:[],detailURL:"demos/whiteboard",thumbnailURL:"img/thumbnails/whiteboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/whiteboard",buttonAriaLabel:"view demo of collaborative whiteboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fwhiteboard-containerapp-deploy.json"},{id:3,title:"Metaverse",description:"Multi-player experience in Metaverse (coming soon)",languages:[],detailURL:"demos/metaverse",thumbnailURL:"img/thumbnails/metaverse.jpeg",githubRepo:"",buttonAriaLabel:"view demo of metaverse"},{id:4,title:"Code stream",description:"Real-time collaborative code editor",languages:[],detailURL:"demos/code-streaming",thumbnailURL:"img/thumbnails/code.png",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/codestream",buttonAriaLabel:"view demo of code stream",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fcodestream-containerapp-deploy.json"},{id:5,title:"Chatr",description:"Developed by Ben Coleman using Azure Web PubSub and other Azure technologies",languages:[],detailURL:"demos/chatr",thumbnailURL:"img/thumbnails/chat_closeup.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/chatr",buttonAriaLabel:"view demo of Chatr"},{id:6,title:"Real-time scoreboard",description:"Push live game data from server to connected clients using Azure Web PubSub",languages:[],detailURL:"demos/scoreboard",thumbnailURL:"img/thumbnails/scoreboard.jpeg",githubRepo:"https://github.com/Azure/azure-webpubsub/tree/main/samples/javascript/scoreboard",deployLink:"https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Flivedemopackages.z13.web.core.windows.net%2Ftemplate%2Fscoreboard-deploy.json",buttonAriaLabel:"view demo of real-time scoreboard"}]},5033:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{text:t,to:a,children:r,openInNewTab:n=!0,tabIndex:o=0,ariaLabel:s=""}=e;return t=t.replace(/ /g,"\xa0"),l.createElement("a",{href:a,target:n?"_blank":"",className:"absolute bottom-4 flex items-center font-semibold justify-center rounded-sm bg-blue-600 px-5 py-2 text-sm text-gray-100 hover:bg-blue-700 gap-2",tabIndex:o,"aria-label":s,role:"button"},r&&l.createElement("div",{className:"w-5"},r),l.createElement("div",null,t))}},8665:(e,t,a)=>{a.d(t,{Z:()=>i});var l,r,n=a(7294);function o(){return o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},o.apply(this,arguments)}const s=e=>{let{title:t,titleId:a,...s}=e;return n.createElement("svg",o({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16","aria-labelledby":a},s),void 0===t?n.createElement("title",{id:a},"ExternalLink"):t?n.createElement("title",{id:a},t):null,l||(l=n.createElement("path",{d:"M0 0h16v16H0z",fill:"none"})),r||(r=n.createElement("path",{d:"M12 13H4a1 1 0 0 1-1-1V4a1 1 0 0 0-2 0v8a3 3 0 0 0 3 3h8a1 1 0 0 0 0-2zm2.924-11.381A1 1 0 0 0 14 1H8.5a1 1 0 0 0 0 2h3.086L5.293 9.293a1 1 0 0 0 1.414 1.414L13 4.414V7.5a1 1 0 0 0 2 0V2a1 1 0 0 0-.076-.381z"})))};const i=function(e){let{to:t,text:a="here",openInNewTab:l=!0}=e;return n.createElement("a",{href:t,className:"font-bold text-blue-600 hover:underline",target:l?"_blank":""},a,n.createElement(s,{className:"icon_inline"}))}},7341:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{imgURL:t,ariaInfo:a="an image"}=e;return l.createElement("div",{className:"overflow-hidden pr-2 pb-2"},l.createElement("img",{src:t,className:"block w-[95%] rounded-2xl border border-gray-100 p-2 shadow-sm","aria-label":a}))}},6546:(e,t,a)=>{a.d(t,{Z:()=>o});var l=a(7294),r=a(1149),n=a(19);const o=function(e){let{overview:t,local:a,deploy:o,resources:s}=e;const[i,c]=l.useState("overview");return l.createElement("div",null,l.createElement("div",{className:"mb-8 w-full overflow-y-hidden overflow-x-scroll"},l.createElement(r.o,{"aria-label":"Details about the demo",selectedKey:i,onLinkClick:e=>{e&&c(e.props.itemKey)},headersOnly:!0},t&&l.createElement(n.M,{headerText:"Overview",itemKey:"overview"}),a&&l.createElement(n.M,{headerText:"Run locally",itemKey:"local"}),o&&l.createElement(n.M,{headerText:"One-click deploy to Azure",itemKey:"deploy"}),s&&l.createElement(n.M,{headerText:"Resources",itemKey:"resources"}))),l.createElement("div",{className:"font-sans font-light"},"overview"===i&&t,"local"===i&&a,"deploy"===i&&o,"resources"===i&&s))}},9014:(e,t,a)=>{a.d(t,{Z:()=>m});var l,r=a(7294);function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var l in a)Object.prototype.hasOwnProperty.call(a,l)&&(e[l]=a[l])}return e},n.apply(this,arguments)}const o=e=>{let{title:t,titleId:a,...o}=e;return r.createElement("svg",n({xmlns:"http://www.w3.org/2000/svg",width:18,height:18,viewBox:"0 0 18 18","aria-labelledby":a},o),t?r.createElement("title",{id:a},t):null,l||(l=r.createElement("path",{d:"M6.268.726h5.49a1.249 1.249 0 0 1 1.183.85l4.742 14.05a1.249 1.249 0 0 1-1.184 1.649h-5.352v-.005a1.284 1.284 0 0 1-.112.005h-.02a1.249 1.249 0 0 1-.745-.247L6.78 14.437l-.671 1.988a1.249 1.249 0 0 1-1.183.85H1.5a1.249 1.249 0 0 1-1.184-1.649L5.06 1.576a1.249 1.249 0 0 1 1.184-.85ZM5.787 12.53l5.041 3.745a.312.312 0 0 0 .187.062h.02a.312.312 0 0 0 .296-.412L8.777 8.358l-1.022 2.644-.116.3H4.152Zm10.712 3.807h-4.254a1.238 1.238 0 0 0-.026-.712L7.506 1.662h4.251a.312.312 0 0 1 .296.213l4.742 14.05a.312.312 0 0 1-.296.413Z",fillRule:"evenodd"})))},s=a.p+"assets/images/blade_outputs-b973dfc21e9e1279891c6105e275de59.jpg";var i=a(5033),c=a(7341),u=a(7029);const m=function(e){let{to:t}=e;return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"One-click deploy to Azure"),r.createElement(u.Z,null,r.createElement("p",null,"Deploy this demo app to Azure with one single click. Note that you will need an Azure account.")),r.createElement(i.Z,{text:"Deploy to Azure",to:t},r.createElement(o,{className:"lightIcon"})),r.createElement("h2",{className:"mt-12 text-4xl"},"Visit your live demo"),r.createElement(u.Z,null,r.createElement("p",null,"Once the resources are provisioned, you can find ",r.createElement("code",null,"Outputs")," on the side bar. Open the link in your browser.")),r.createElement(c.Z,{imgURL:s,ariaInfo:"Blade outputs image",alt:"Blade outputs image"}))}},4043:(e,t,a)=>{a.d(t,{Z:()=>i});var l=a(7294),r=a(7029),n=a(4064);const o=function(e){let{text:t,language:a,title:r}=e;return l.createElement("div",{className:"mb-3"},r&&l.createElement("h5",{className:"font-bold"},r),l.createElement(n.Z1,{text:t,language:a,showLineNumbers:!0,codeBlock:!0,wrapLines:!0,theme:n.cL}))};var s=a(8665);const i=function(e){let{hub:t}=e;return l.createElement("div",null,l.createElement("h2",{className:"text-4xl"},"Prerequisites"),l.createElement(r.Z,{title:"To run this app locally, you will need the following"},l.createElement("ul",{className:"ml-5 list-disc "},l.createElement("li",{className:"mt-0"},"Node.js"),l.createElement("li",{className:"mt-0"},"Create an Azure Web PubSub resource"),l.createElement("li",{className:"mt-0"},l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"})," to tunnel traffic from Web PubSub to your localhost"))),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Install dependencies"),l.createElement(o,{text:"npm install",language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Start the app"),l.createElement(o,{text:'export WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Linux"}),l.createElement(o,{text:'set WebPubSubConnectionString="<connection_string>"\n node server',language:"javascript",title:"Windows"}),t&&l.createElement(l.Fragment,null,l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Use ",l.createElement("code",null,"awps-tunnel")," to tunnel traffic from Web PubSub service to localhost"),l.createElement(r.Z,null,l.createElement("p",null,"Install and run ",l.createElement(s.Z,{to:"https://learn.microsoft.com/azure/azure-web-pubsub/howto-web-pubsub-tunnel-tool",text:"awps-tunnel"}),":")),l.createElement(o,{text:`awps-tunnel run --hub ${t} --upstream http://localhost:8080`,language:"shell"}),l.createElement("h2",{className:"mb-5 mt-10 text-4xl"},"Configure the event handler"),l.createElement(r.Z,null,l.createElement("p",null,"Event handler can be set from Azure Portal or through Azure CLI.\xa0",l.createElement(s.Z,{to:"https://docs.microsoft.com/en-us/azure/azure-web-pubsub/howto-develop-eventhandler",text:"Here"}),"contains the detailed instructions of how to set it up."))))}},7744:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(){return l.createElement("div",null,"No additional resources for this sample application")}},7029:(e,t,a)=>{a.d(t,{Z:()=>r});var l=a(7294);const r=function(e){let{title:t,children:a}=e;return l.createElement("div",{className:"mt-5 mb-2"},l.createElement("h3",{className:"mb-1 font-sans font-semibold"},t),a)}},1955:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>g,contentTitle:()=>b,default:()=>f,frontMatter:()=>p,metadata:()=>h,toc:()=>v});var l=a(7462),r=a(7294),n=a(3905),o=a(6546),s=a(7029);const i=a.p+"assets/images/metaverse_scene-ee98b441f38947091d7a20487f08d150.jpg";var c=a(7341);a(4043),a(9014),a(7744);const u=a(6694).o.find((e=>"demos/metaverse"===e.detailURL));u.languages,u.githubRepo;function m(){return r.createElement("div",null,r.createElement("h2",{className:"text-4xl"},"Overview"),r.createElement(s.Z,{title:"About the app"},r.createElement("p",null,"An app demonstrating how Azure Web PubSub can be used to enable multi-player experience in Metaverse (coming soon)")))}const d=function(){return r.createElement(r.Fragment,null,r.createElement(c.Z,{imgURL:i,ariaInfo:"metaverse scene image",alt:"metaverse scene image"}),r.createElement("div",{className:"max-w-full overflow-hidden"},r.createElement(o.Z,{overview:r.createElement(m,null)})))},p={sidebar_position:3,slug:"/metaverse",title:"Metaverse",tags:[],description:"A sample app demontrating how Azure Web PubSub can be used in the context of Metaverse",hide_title:!0,custom_edit_url:null},b=void 0,h={unversionedId:"metaverse",id:"metaverse",title:"Metaverse",description:"A sample app demontrating how Azure Web PubSub can be used in the context of Metaverse",source:"@site/docs/metaverse.mdx",sourceDirName:".",slug:"/metaverse",permalink:"/azure-webpubsub/demos/metaverse",draft:!1,editUrl:null,tags:[],version:"current",sidebarPosition:3,frontMatter:{sidebar_position:3,slug:"/metaverse",title:"Metaverse",tags:[],description:"A sample app demontrating how Azure Web PubSub can be used in the context of Metaverse",hide_title:!0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Real-time scoreboard",permalink:"/azure-webpubsub/demos/scoreboard"},next:{title:"Code stream",permalink:"/azure-webpubsub/demos/code-streaming"}},g={},v=[],w={toc:v};function f(e){let{components:t,...a}=e;return(0,n.kt)("wrapper",(0,l.Z)({},w,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)(d,{mdxType:"Metaverse"}))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f94952d7.8d0cffd4.js b/assets/js/f94952d7.8d0cffd4.js new file mode 100644 index 000000000..9acb9b01e --- /dev/null +++ b/assets/js/f94952d7.8d0cffd4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9111],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,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 a(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 i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var u=n.createContext({}),s=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},p={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,a=e.originalType,u=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),b=s(r),m=o,h=b["".concat(u,".").concat(m)]||b[m]||p[m]||a;return r?n.createElement(h,i(i({ref:t},c),{},{components:r})):n.createElement(h,i({ref:t},c))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=b;var l={};for(var u in t)hasOwnProperty.call(t,u)&&(l[u]=t[u]);l.originalType=e,l.mdxType="string"==typeof e?e:o,i[1]=l;for(var s=2;s<a;s++)i[s]=r[s];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}b.displayName="MDXCreateElement"},1514:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>i,default:()=>p,frontMatter:()=>a,metadata:()=>l,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const a={slug:"welcome",title:"Welcome",authors:["WangpengL"],custom_edit_url:null},i=void 0,l={permalink:"/azure-webpubsub/blog/welcome",source:"@site/blog/2022-06-29-welcome/index.md",title:"Welcome",description:"This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.",date:"2022-06-29T00:00:00.000Z",formattedDate:"June 29, 2022",tags:[],readingTime:.565,hasTruncateMarker:!1,authors:[{name:"Wanpeng Li",title:"Software Engineer II",url:"https://github.com/wanlwanl",imageURL:"https://avatars.githubusercontent.com/u/38236089?v=4",key:"WangpengL"}],frontMatter:{slug:"welcome",title:"Welcome",authors:["WangpengL"],custom_edit_url:null},prevItem:{title:"What is WebSocket? (part 1/2)",permalink:"/azure-webpubsub/blog/what_is_websocket_part1"}},u={authorsImageUrls:[void 0]},s=[],c={toc:s};function p(e){let{components:t,...r}=e;return(0,o.kt)("wrapper",(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that."),(0,o.kt)("p",null,"Azure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates."),(0,o.kt)("p",null,"Check out the demos on the site and let us know what you think."))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/fe6674c8.6d6409c6.js b/assets/js/fe6674c8.6d6409c6.js new file mode 100644 index 000000000..8f3c6314e --- /dev/null +++ b/assets/js/fe6674c8.6d6409c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3600],{5186:e=>{e.exports=JSON.parse('{"permalink":"/azure-webpubsub/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/main.943e98bc.js b/assets/js/main.943e98bc.js new file mode 100644 index 000000000..f711aabf5 --- /dev/null +++ b/assets/js/main.943e98bc.js @@ -0,0 +1,2 @@ +/*! For license information please see main.943e98bc.js.LICENSE.txt */ +(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[179],{723:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(7294),a=n(7462),o=n(8356),i=n.n(o),l=n(6887);const s={"0d608b87":[()=>Promise.all([n.e(2252),n.e(2646)]).then(n.bind(n,9480)),"@site/docs/simple_chat_app.mdx",9480],17896441:[()=>Promise.all([n.e(532),n.e(7036),n.e(7918)]).then(n.bind(n,9055)),"@theme/DocItem",9055],"1be78505":[()=>Promise.all([n.e(532),n.e(9514)]).then(n.bind(n,9963)),"@theme/DocPage",9963],"1df93b7f":[()=>Promise.all([n.e(532),n.e(3237)]).then(n.bind(n,94)),"@site/src/pages/index.tsx",94],25433785:[()=>n.e(2240).then(n.bind(n,3600)),"@site/blog/2022-11-25-what-is-websockets_part2/index.md?truncated=true",3600],"31d81a60":[()=>n.e(4666).then(n.bind(n,183)),"@site/blog/2022-11-25-what-is-websockets_part2/index.md",183],"3720c009":[()=>Promise.all([n.e(532),n.e(3751)]).then(n.bind(n,9861)),"@theme/DocTagsListPage",9861],"38cc22d9":[()=>n.e(8781).then(n.t.bind(n,4469,19)),"/home/runner/work/azure-webpubsub/azure-webpubsub/website/.docusaurus/docusaurus-plugin-content-blog/default/plugin-route-context-module-100.json",4469],"3ba8fa9f":[()=>Promise.all([n.e(2252),n.e(5378)]).then(n.bind(n,6023)),"@site/docs/realtime_scoreboard.mdx",6023],"4d4b16c0":[()=>n.e(1842).then(n.bind(n,4411)),"@site/blog/2023-11-20-web-pubsub-for-socket.io-ga/index.md?truncated=true",4411],"547e2c82":[()=>n.e(2412).then(n.bind(n,1181)),"@site/blog/2022-11-14-what-is-websockets_part1/index.md",1181],"55960ee5":[()=>n.e(4121).then(n.t.bind(n,8070,19)),"~docs/default/tags-list-current-prop-15a.json",8070],"56c273c5":[()=>n.e(6766).then(n.t.bind(n,4471,19)),"~docs/default/tag-azure-webpubsub-demos-tags-vue-js-da6.json",4471],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,6809)),"@generated/docusaurus.config",6809],"814f3328":[()=>n.e(2535).then(n.t.bind(n,5641,19)),"~blog/default/blog-post-list-prop-default.json",5641],"8a49c96a":[()=>n.e(710).then(n.bind(n,7582)),"@site/blog/2022-11-14-what-is-websockets_part1/index.md?truncated=true",7582],"935f2afb":[()=>n.e(53).then(n.t.bind(n,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],94015949:[()=>n.e(2865).then(n.t.bind(n,5745,19)),"/home/runner/work/azure-webpubsub/azure-webpubsub/website/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",5745],"995533e1":[()=>Promise.all([n.e(2252),n.e(6549)]).then(n.bind(n,8821)),"@site/docs/code_stream.mdx",8821],"9e4087bc":[()=>n.e(3608).then(n.bind(n,3169)),"@theme/BlogArchivePage",3169],a6aa9e1f:[()=>Promise.all([n.e(532),n.e(7036),n.e(6048),n.e(3089)]).then(n.bind(n,3269)),"@theme/BlogListPage",3269],b6f6bc54:[()=>n.e(189).then(n.bind(n,7953)),"@site/blog/2023-11-20-web-pubsub-for-socket.io-ga/index.md",7953],b8a8b340:[()=>Promise.all([n.e(2252),n.e(9722)]).then(n.bind(n,4827)),"@site/docs/chatr.mdx",4827],c0eb0060:[()=>n.e(5047).then(n.t.bind(n,2554,19)),"~docs/default/tag-azure-webpubsub-demos-tags-express-js-9f4.json",2554],c21a21f5:[()=>n.e(3071).then(n.t.bind(n,3769,19)),"/home/runner/work/azure-webpubsub/azure-webpubsub/website/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",3769],ccc49370:[()=>Promise.all([n.e(532),n.e(7036),n.e(6048),n.e(6103)]).then(n.bind(n,5203)),"@theme/BlogPostPage",5203],cffc60f8:[()=>Promise.all([n.e(2252),n.e(5809)]).then(n.bind(n,2639)),"@site/docs/collaborative_whiteboard.mdx",2639],d512bf0e:[()=>n.e(4891).then(n.bind(n,7939)),"@site/src/pages/contact_us.js",7939],df203c0f:[()=>n.e(9924).then(n.bind(n,491)),"@theme/DocTagDocListPage",491],e771231d:[()=>n.e(215).then(n.t.bind(n,3805,19)),"~docs/default/tag-azure-webpubsub-demos-tags-java-script-b4d.json",3805],ebbeac85:[()=>n.e(1535).then(n.t.bind(n,5794,19)),"~blog/default/azure-webpubsub-blog-archive-f26.json",5794],f2237b27:[()=>n.e(4776).then(n.bind(n,6703)),"@site/blog/2022-06-29-welcome/index.md",6703],f3bd417c:[()=>Promise.all([n.e(2252),n.e(9872)]).then(n.bind(n,1955)),"@site/docs/metaverse.mdx",1955],f94952d7:[()=>n.e(9111).then(n.bind(n,1514)),"@site/blog/2022-06-29-welcome/index.md?truncated=true",1514],fe6674c8:[()=>n.e(3600).then(n.t.bind(n,5186,19)),"~blog/default/azure-webpubsub-blog-2b4.json",5186]};function u(e){let{error:t,retry:n,pastDelay:a}=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"))):a?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 c=n(9670),d=n(226);function f(e,t){if("*"===e)return i()({loading:u,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 o=l[`${e}-${t}`],f={},p=[],m=[],h=(0,c.Z)(o);return Object.entries(h).forEach((e=>{let[t,n]=e;const r=s[n];r&&(f[t]=r[0],p.push(r[1]),m.push(r[2]))})),i().Map({loading:u,loader:f,modules:p,webpack:()=>m,render(t,n){const i=JSON.parse(JSON.stringify(o));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let o=i;const l=n.split(".");l.slice(0,-1).forEach((e=>{o=o[e]})),o[l[l.length-1]]=a}));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,a.Z)({},i,n)))}})}const p=[{path:"/azure-webpubsub/blog",component:f("/azure-webpubsub/blog","acd"),exact:!0},{path:"/azure-webpubsub/blog/archive",component:f("/azure-webpubsub/blog/archive","3ca"),exact:!0},{path:"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available",component:f("/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available","830"),exact:!0},{path:"/azure-webpubsub/blog/welcome",component:f("/azure-webpubsub/blog/welcome","cec"),exact:!0},{path:"/azure-webpubsub/blog/what_is_websocket_part1",component:f("/azure-webpubsub/blog/what_is_websocket_part1","45e"),exact:!0},{path:"/azure-webpubsub/blog/what_is_websocket_part2",component:f("/azure-webpubsub/blog/what_is_websocket_part2","1e8"),exact:!0},{path:"/azure-webpubsub/contact_us",component:f("/azure-webpubsub/contact_us","96b"),exact:!0},{path:"/azure-webpubsub/demos/tags",component:f("/azure-webpubsub/demos/tags","ce1"),exact:!0},{path:"/azure-webpubsub/demos/tags/express-js",component:f("/azure-webpubsub/demos/tags/express-js","f4e"),exact:!0},{path:"/azure-webpubsub/demos/tags/java-script",component:f("/azure-webpubsub/demos/tags/java-script","d74"),exact:!0},{path:"/azure-webpubsub/demos/tags/vue-js",component:f("/azure-webpubsub/demos/tags/vue-js","463"),exact:!0},{path:"/azure-webpubsub/demos",component:f("/azure-webpubsub/demos","e58"),routes:[{path:"/azure-webpubsub/demos/chat",component:f("/azure-webpubsub/demos/chat","4d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/azure-webpubsub/demos/chatr",component:f("/azure-webpubsub/demos/chatr","6de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/azure-webpubsub/demos/code-streaming",component:f("/azure-webpubsub/demos/code-streaming","b89"),exact:!0,sidebar:"tutorialSidebar"},{path:"/azure-webpubsub/demos/metaverse",component:f("/azure-webpubsub/demos/metaverse","0a3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/azure-webpubsub/demos/scoreboard",component:f("/azure-webpubsub/demos/scoreboard","d15"),exact:!0,sidebar:"tutorialSidebar"},{path:"/azure-webpubsub/demos/whiteboard",component:f("/azure-webpubsub/demos/whiteboard","712"),exact:!0,sidebar:"tutorialSidebar"}]},{path:"/azure-webpubsub/",component:f("/azure-webpubsub/","f18"),exact:!0},{path:"*",component:f("*")}]},8934:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,t:()=>o});var r=n(7294);const a=r.createContext(!1);function o(e){let{children:t}=e;const[n,o]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{o(!0)}),[]),r.createElement(a.Provider,{value:n},t)}},9383:(e,t,n)=>{"use strict";var r=n(7294),a=n(3935),o=n(3727),i=n(405),l=n(412);const s=[n(2497),n(3310),n(8320),n(2295),n(1004)];var u=n(723),c=n(6775),d=n(8790);function f(e){let{children:t}=e;return r.createElement(r.Fragment,null,t)}var p=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(197);function S(){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:a}]=e;return r.createElement("link",{key:t,rel:"alternate",href:n.createUrl({locale:t,fullyQualified:!0}),hrefLang:a})})),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)(),a=function(){const{siteConfig:{url:e}}=(0,h.Z)(),{pathname:t}=(0,c.TH)();return e+(0,g.Z)(t)}(),o=t?`${n}${t}`:a;return r.createElement(m.Z,null,r.createElement("meta",{property:"og:url",content:o}),r.createElement("link",{rel:"canonical",href:o}))}function _(){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(S,null),r.createElement(E.Z,{tag:k.HX,locale:e}),r.createElement(m.Z,null,t.map(((e,t)=>r.createElement("meta",(0,p.Z)({key:t},e))))))}const C=new Map;function T(e){if(C.has(e.pathname))return{...e,pathname:C.get(e.pathname)};if((0,d.f)(u.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return C.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return C.set(e.pathname,t),{...e,pathname:t}}var L=n(8934),A=n(8940);function R(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const a=s.map((t=>{var r;const a=(null==(r=t.default)?void 0:r[e])??t[e];return null==a?void 0:a(...n)}));return()=>a.forEach((e=>null==e?void 0:e()))}const P=function(e){let{children:t,location:n,previousLocation:a}=e;return(0,r.useLayoutEffect)((()=>{a!==n&&(a&&function(e){const{hash:t}=e;if(t){const e=decodeURIComponent(t.substring(1)),n=document.getElementById(e);null==n||n.scrollIntoView()}else window.scrollTo(0,0)}(n),R("onRouteDidUpdate",{previousLocation:a,location:n}))}),[a,n]),t};function N(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.f)(u.Z,e))).flat();return Promise.all(t.map((e=>null==e.route.component.preload?void 0:e.route.component.preload())))}class O extends r.Component{constructor(e){super(e),this.previousLocation=void 0,this.routeUpdateCleanupCb=void 0,this.previousLocation=null,this.routeUpdateCleanupCb=l.Z.canUseDOM?R("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=R("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),N(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(P,{previousLocation:this.previousLocation,location:t},r.createElement(c.AW,{location:t,render:()=>e}))}}const D=O,I="docusaurus-base-url-issue-banner-container",M="docusaurus-base-url-issue-banner-suggestion-container",z="__DOCUSAURUS_INSERT_BASEURL_BANNER";function F(e){return`\nwindow['${z}'] = true;\n\ndocument.addEventListener('DOMContentLoaded', maybeInsertBanner);\n\nfunction maybeInsertBanner() {\n var shouldInsert = window['${z}'];\n shouldInsert && insertBanner();\n}\n\nfunction insertBanner() {\n var bannerContainer = document.getElementById('${I}');\n if (!bannerContainer) {\n return;\n }\n var bannerHtml = ${JSON.stringify(function(e){return`\n<div id="docusaurus-base-url-issue-banner" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseurl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">${e}</span> ${"/"===e?" (default value)":""}</p>\n <p>We suggest trying baseUrl = <span id="${M}" style="font-weight: bold; color: green;"></span></p>\n</div>\n`}(e)).replace(/</g,"\\<")};\n bannerContainer.innerHTML = bannerHtml;\n var suggestionContainer = document.getElementById('${M}');\n var actualHomePagePath = window.location.pathname;\n var suggestedBaseUrl = actualHomePagePath.substr(-1) === '/'\n ? actualHomePagePath\n : actualHomePagePath + '/';\n suggestionContainer.innerHTML = suggestedBaseUrl;\n}\n`}function j(){const{siteConfig:{baseUrl:e}}=(0,h.Z)();return(0,r.useLayoutEffect)((()=>{window[z]=!1}),[]),r.createElement(r.Fragment,null,!l.Z.canUseDOM&&r.createElement(m.Z,null,r.createElement("script",null,F(e))),r.createElement("div",{id:I}))}function B(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,h.Z)(),{pathname:n}=(0,c.TH)();return t&&n===e?r.createElement(j,null):null}function U(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:a,localeConfigs:o}}=(0,h.Z)(),i=(0,g.Z)(e),{htmlLang:l,direction:s}=o[a];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 $=n(4763);function q(){const e=(0,d.H)(u.Z),t=(0,c.TH)();return r.createElement($.Z,null,r.createElement(A.M,null,r.createElement(L.t,null,r.createElement(f,null,r.createElement(U,null),r.createElement(_,null),r.createElement(B,null),r.createElement(D,{location:T(t)},e)))))}var G=n(6887);const H=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{var r;if("undefined"==typeof document)return void n();const a=document.createElement("link");a.setAttribute("rel","prefetch"),a.setAttribute("href",e),a.onload=()=>t(),a.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??(null==(r=document.getElementsByName("script")[0])?void 0:r.parentNode);null==o||o.appendChild(a)}))}: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 Z=n(9670);const V=new Set,W=new Set,Y=()=>{var e,t;return(null==(e=navigator.connection)?void 0:e.effectiveType.includes("2g"))||(null==(t=navigator.connection)?void 0:t.saveData)},Q={prefetch(e){if(!(e=>!Y()&&!W.has(e)&&!V.has(e))(e))return!1;V.add(e);const t=(0,d.f)(u.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(G).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Z.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?H(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!Y()&&!W.has(e))(e)&&(W.add(e),N(e))},K=Object.freeze(Q);if(l.Z.canUseDOM){window.docusaurus=K;const e=a.hydrate;N(window.location.pathname).then((()=>{e(r.createElement(i.B6,null,r.createElement(o.VK,null,r.createElement(q,null))),document.getElementById("__docusaurus"))}))}},8940:(e,t,n)=>{"use strict";n.d(t,{_:()=>c,M:()=>d});var r=n(7294),a=n(6809);const o=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/azure-webpubsub/demos","versions":[{"name":"current","label":"Next","isLast":true,"path":"/azure-webpubsub/demos","mainDocId":"simple_chat_app","docs":[{"id":"chatr","path":"/azure-webpubsub/demos/chatr","sidebar":"tutorialSidebar"},{"id":"code_stream","path":"/azure-webpubsub/demos/code-streaming","sidebar":"tutorialSidebar"},{"id":"collaborative_whiteboard","path":"/azure-webpubsub/demos/whiteboard","sidebar":"tutorialSidebar"},{"id":"metaverse","path":"/azure-webpubsub/demos/metaverse","sidebar":"tutorialSidebar"},{"id":"realtime_scoreboard","path":"/azure-webpubsub/demos/scoreboard","sidebar":"tutorialSidebar"},{"id":"simple_chat_app","path":"/azure-webpubsub/demos/chat","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/azure-webpubsub/demos/chat","label":"simple_chat_app"}}}}],"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.2.0","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"2.2.0"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"2.2.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"2.2.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"2.2.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"2.2.0"},"docusaurus-tailwindcss":{"type":"local"},"handle-back-to-main-btn":{"type":"local"},"visitor-tracking-plugin":{"type":"project"}}}'),u={siteConfig:a.default,siteMetadata:s,globalData:o,i18n:i,codeTranslations:l},c=r.createContext(u);function d(e){let{children:t}=e;return r.createElement(c.Provider,{value:u},t)}},4763:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(7294),a=n(412),o=n(5742),i=n(3285);function l(e){let{error:t,tryAgain:n}=e;return r.createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",height:"50vh",width:"100%",fontSize:"20px"}},r.createElement("h1",null,"This page crashed."),r.createElement("p",null,t.message),r.createElement("button",{type:"button",onClick:n},"Try again"))}function s(e){let{error:t,tryAgain:n}=e;return r.createElement(c,{fallback:()=>r.createElement(l,{error:t,tryAgain:n})},r.createElement(o.Z,null,r.createElement("title",null,"Page Error")),r.createElement(i.Z,null,r.createElement(l,{error:t,tryAgain:n})))}const u=e=>r.createElement(s,e);class c extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.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??u)(e)}return e??null}}},412:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,a={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:()=>o});var r=n(7294),a=n(405);function o(e){return r.createElement(a.ql,e)}},9960:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(7462),a=n(7294),o=n(3727),i=n(8780),l=n(2263),s=n(3919),u=n(412);const c=a.createContext({collectLink:()=>{}});var d=n(4996);function f(e,t){var n;let{isNavLink:f,to:p,href:m,activeClassName:h,isActive:g,"data-noBrokenLinkCheck":b,autoAddBaseUrl:v=!0,...y}=e;const{siteConfig:{trailingSlash:w,baseUrl:k}}=(0,l.Z)(),{withBaseUrl:E}=(0,d.C)(),S=(0,a.useContext)(c),x=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(()=>x.current));const _=p||m;const C=(0,s.Z)(_),T=null==_?void 0:_.replace("pathname://","");let L=void 0!==T?(A=T,v&&(e=>e.startsWith("/"))(A)?E(A):A):void 0;var A;L&&C&&(L=(0,i.applyTrailingSlash)(L,{trailingSlash:w,baseUrl:k}));const R=(0,a.useRef)(!1),P=f?o.OL:o.rU,N=u.Z.canUseIntersectionObserver,O=(0,a.useRef)(),D=()=>{R.current||null==L||(window.docusaurus.preload(L),R.current=!0)};(0,a.useEffect)((()=>(!N&&C&&null!=L&&window.docusaurus.prefetch(L),()=>{N&&O.current&&O.current.disconnect()})),[O,L,N,C]);const I=(null==(n=L)?void 0:n.startsWith("#"))??!1,M=!L||!C||I;return M||b||S.collectLink(L),M?a.createElement("a",(0,r.Z)({ref:x,href:L},_&&!C&&{target:"_blank",rel:"noopener noreferrer"},y)):a.createElement(P,(0,r.Z)({},y,{onMouseEnter:D,onTouchStart:D,innerRef:e=>{x.current=e,N&&e&&C&&(O.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(O.current.unobserve(e),O.current.disconnect(),null!=L&&window.docusaurus.prefetch(L))}))})),O.current.observe(e))},to:L},f&&{isActive:g,activeClassName:h}))}const p=a.forwardRef(f)},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 a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=null==t?void 0: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 o=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 o[t??n]??n??t}function l(e,t){let{message:n,id:r}=e;return a(i({message:n,id:r}),t)}function s(e){let{children:t,id:n,values:o}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal <Translate> children",t),new Error("The Docusaurus <Translate> component only accept simple string values");const l=i({message:t,id:n});return r.createElement(r.Fragment,null,a(l,o))}},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 a(e){return void 0!==e&&!r(e)}n.d(t,{Z:()=>a,b:()=>r})},4996:(e,t,n)=>{"use strict";n.d(t,{C:()=>o,Z:()=>i});var r=n(2263),a=n(3919);function o(){const{siteConfig:{baseUrl:e,url:t}}=(0,r.Z)();return{withBaseUrl:(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)}}function i(e,t){void 0===t&&(t={});const{withBaseUrl:n}=o();return n(e,t)}},2263:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(8940);function o(){return(0,r.useContext)(a._)}},2389:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(8934);function o(){return(0,r.useContext)(a._)}},9670:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});function r(e){const t={};return function e(n,r){Object.entries(n).forEach((n=>{let[a,o]=n;const i=r?`${r}.${a}`:a;var l;"object"==typeof(l=o)&&l&&Object.keys(l).length>0?e(o,i):t[i]=o}))}(e),t}},226:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,z:()=>o});var r=n(7294);const a=r.createContext(null);function o(e){let{children:t,value:n}=e;const o=r.useContext(a),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,...null==n?void 0:n.data};return{plugin:t.plugin,data:r}}({parent:o,value:n})),[o,n]);return r.createElement(a.Provider,{value:i},t)}},143:(e,t,n)=>{"use strict";n.d(t,{Iw:()=>h,gA:()=>f,_r:()=>c,Jo:()=>g,zh:()=>d,yW:()=>m,gB:()=>p});var r=n(6775),a=n(2263),o=n(9935);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,a.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),a=null==n?void 0:n.docs.find((e=>!!(0,r.LX)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:a,alternateDocVersions:a?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(a.id):{}}}const u={},c=()=>i("docusaurus-plugin-content-docs")??u,d=e=>function(e,t,n){void 0===t&&(t=o.m),void 0===n&&(n={});const r=i(e),a=null==r?void 0:r[t];if(!a&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return a}("docusaurus-plugin-content-docs",e,{failfast:!0});function f(e){void 0===e&&(e={});const t=c(),{pathname:n}=(0,r.TH)();return function(e,t,n){void 0===n&&(n={});const a=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})})),o=a?{pluginId:a[0],pluginData:a[1]}:void 0;if(!o&&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 o}(t,n,e)}function p(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:()=>o});var r=n(4865),a=n.n(r);a().configure({showSpinner:!1});const o={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{a().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){a().done()}}},3310:(e,t,n)=>{"use strict";n.r(t);var r=n(7410),a=n(6809);!function(e){const{themeConfig:{prism:t}}=a.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:()=>o});var r=n(7294);const a="iconExternalLink_nPIU";function o(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:a},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"}))}},3285:(e,t,n)=>{"use strict";n.d(t,{Z:()=>dt});var r=n(7294),a=n(6010),o=n(4763),i=n(7462),l=n(6775),s=n(5999),u=n(5936);const c="docusaurus_skipToContent_fallback";function d(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,l.k6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(c);t&&d(t)}),[]);return(0,u.S)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&d(e.current)})),{containerRef:e,onClick:n}}const p=(0,s.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 m(e){const t=e.children??p,{containerRef:n,onClick:a}=f();return r.createElement("div",{ref:n,role:"region","aria-label":p},r.createElement("a",(0,i.Z)({},e,{href:`#${c}`,onClick:a}),t))}var h=n(1944),g=n(5281),b=n(9727);const v="skipToContent_fXgn";function y(){return r.createElement(m,{className:v})}var w=n(6668),k=n(9689);function E(e){let{width:t=21,height:n=21,color:a="currentColor",strokeWidth:o=1.2,className:l,...s}=e;return r.createElement("svg",(0,i.Z)({viewBox:"0 0 15 15",width:t,height:n},s),r.createElement("g",{stroke:a,strokeWidth:o},r.createElement("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})))}const S="closeButton_CVFx";function x(e){return r.createElement("button",(0,i.Z)({type:"button","aria-label":(0,s.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,a.Z)("clean-btn close",S,e.className)}),r.createElement(E,{width:14,height:14,strokeWidth:3.1}))}const _="content_knG7";function C(e){const{announcementBar:t}=(0,w.L)(),{content:n}=t;return r.createElement("div",(0,i.Z)({},e,{className:(0,a.Z)(_,e.className),dangerouslySetInnerHTML:{__html:n}}))}const T="announcementBar_mb4j",L="announcementBarPlaceholder_vyr4",A="announcementBarClose_gvF7",R="announcementBarContent_xLdY";function P(){const{announcementBar:e}=(0,w.L)(),{isActive:t,close:n}=(0,k.nT)();if(!t)return null;const{backgroundColor:a,textColor:o,isCloseable:i}=e;return r.createElement("div",{className:T,style:{backgroundColor:a,color:o},role:"banner"},i&&r.createElement("div",{className:L}),r.createElement(C,{className:R}),i&&r.createElement(x,{onClick:n,className:A}))}var N=n(2961),O=n(2466);var D=n(902),I=n(3102);const M=r.createContext(null);function z(e){let{children:t}=e;const n=function(){const e=(0,N.e)(),t=(0,I.HY)(),[n,a]=(0,r.useState)(!1),o=null!==t.component,i=(0,D.D9)(o);return(0,r.useEffect)((()=>{o&&!i&&a(!0)}),[o,i]),(0,r.useEffect)((()=>{o?e.shown||a(!0):a(!1)}),[e.shown,o]),(0,r.useMemo)((()=>[n,a]),[n])}();return r.createElement(M.Provider,{value:n},t)}function F(e){if(e.component){const t=e.component;return r.createElement(t,e.props)}}function j(){const e=(0,r.useContext)(M);if(!e)throw new D.i6("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,a=(0,r.useCallback)((()=>n(!1)),[n]),o=(0,I.HY)();return(0,r.useMemo)((()=>({shown:t,hide:a,content:F(o)})),[a,o,t])}function B(e){let{header:t,primaryMenu:n,secondaryMenu:o}=e;const{shown:i}=j();return r.createElement("div",{className:"navbar-sidebar"},t,r.createElement("div",{className:(0,a.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"},o)))}var U=n(2949),$=n(2389);function q(e){return r.createElement("svg",(0,i.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 G(e){return r.createElement("svg",(0,i.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 H={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function Z(e){let{className:t,value:n,onChange:o}=e;const i=(0,$.Z)(),l=(0,s.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"===n?(0,s.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,s.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return r.createElement("div",{className:(0,a.Z)(H.toggle,t)},r.createElement("button",{className:(0,a.Z)("clean-btn",H.toggleButton,!i&&H.toggleButtonDisabled),type:"button",onClick:()=>o("dark"===n?"light":"dark"),disabled:!i,title:l,"aria-label":l,"aria-live":"polite"},r.createElement(q,{className:(0,a.Z)(H.toggleIcon,H.lightToggleIcon)}),r.createElement(G,{className:(0,a.Z)(H.toggleIcon,H.darkToggleIcon)})))}const V=r.memo(Z);function W(e){let{className:t}=e;const n=(0,w.L)().colorMode.disableSwitch,{colorMode:a,setColorMode:o}=(0,U.I)();return n?null:r.createElement(V,{className:t,value:a,onChange:o})}var Y=n(1327);function Q(){return r.createElement(Y.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function K(){const e=(0,N.e)();return r.createElement("button",{type:"button","aria-label":(0,s.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 X(){return r.createElement("div",{className:"navbar-sidebar__brand"},r.createElement(Q,null),r.createElement(W,{className:"margin-right--md"}),r.createElement(K,null))}var J=n(9960),ee=n(4996),te=n(3919);function ne(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var re=n(9471);function ae(e){let{activeBasePath:t,activeBaseRegex:n,to:a,href:o,label:l,html:s,isDropdownLink:u,prependBaseUrlToHref:c,...d}=e;const f=(0,ee.Z)(a),p=(0,ee.Z)(t),m=(0,ee.Z)(o,{forcePrependBaseUrl:!0}),h=l&&o&&!(0,te.Z)(o),g=s?{dangerouslySetInnerHTML:{__html:s}}:{children:r.createElement(r.Fragment,null,l,h&&r.createElement(re.Z,u&&{width:12,height:12}))};return o?r.createElement(J.Z,(0,i.Z)({href:c?m:o},d,g)):r.createElement(J.Z,(0,i.Z)({to:f,isNavLink:!0},(t||n)&&{isActive:(e,t)=>n?ne(n,t.pathname):t.pathname.startsWith(p)},d,g))}function oe(e){let{className:t,isDropdownItem:n=!1,...o}=e;const l=r.createElement(ae,(0,i.Z)({className:(0,a.Z)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n},o));return n?r.createElement("li",null,l):l}function ie(e){let{className:t,isDropdownItem:n,...o}=e;return r.createElement("li",{className:"menu__list-item"},r.createElement(ae,(0,i.Z)({className:(0,a.Z)("menu__link",t)},o)))}function le(e){let{mobile:t=!1,position:n,...a}=e;const o=t?ie:oe;return r.createElement(o,(0,i.Z)({},a,{activeClassName:a.activeClassName??(t?"menu__link--active":"navbar__link--active")}))}var se=n(6043),ue=n(8596),ce=n(2263);function de(e,t){return e.some((e=>function(e,t){return!!(0,ue.Mg)(e.to,t)||!!ne(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function fe(e){let{items:t,position:n,className:o,onClick:l,...s}=e;const u=(0,r.useRef)(null),[c,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{u.current&&!u.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e)}}),[u]),r.createElement("div",{ref:u,className:(0,a.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":c})},r.createElement(ae,(0,i.Z)({"aria-haspopup":"true","aria-expanded":c,role:"button",href:s.to?void 0:"#",className:(0,a.Z)("navbar__link",o)},s,{onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!c))}}),s.children??s.label),r.createElement("ul",{className:"dropdown__menu"},t.map(((e,n)=>r.createElement(Ce,(0,i.Z)({isDropdownItem:!0,onKeyDown:e=>{if(n===t.length-1&&"Tab"===e.key){e.preventDefault(),d(!1);const t=u.current.nextElementSibling;if(t){(t instanceof HTMLAnchorElement?t:t.querySelector("a")).focus()}}},activeClassName:"dropdown__link--active"},e,{key:n}))))))}function pe(e){let{items:t,className:n,position:o,onClick:s,...u}=e;const c=function(){const{siteConfig:{baseUrl:e}}=(0,ce.Z)(),{pathname:t}=(0,l.TH)();return t.replace(e,"/")}(),d=de(t,c),{collapsed:f,toggleCollapsed:p,setCollapsed:m}=(0,se.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[c,d,m]),r.createElement("li",{className:(0,a.Z)("menu__list-item",{"menu__list-item--collapsed":f})},r.createElement(ae,(0,i.Z)({role:"button",className:(0,a.Z)("menu__link menu__link--sublist menu__link--sublist-caret",n)},u,{onClick:e=>{e.preventDefault(),p()}}),u.children??u.label),r.createElement(se.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:f},t.map(((e,t)=>r.createElement(Ce,(0,i.Z)({mobile:!0,isDropdownItem:!0,onClick:s,activeClassName:"menu__link--active"},e,{key:t}))))))}function me(e){let{mobile:t=!1,...n}=e;const a=t?pe:fe;return r.createElement(a,n)}var he=n(4711);function ge(e){let{width:t=20,height:n=20,...a}=e;return r.createElement("svg",(0,i.Z)({viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0},a),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 be="iconLanguage_nlXk";var ve=n(1875);const ye="searchBox_ZlJk";function we(e){let{children:t,className:n}=e;return r.createElement("div",{className:(0,a.Z)(n,ye)},t)}var ke=n(143),Ee=n(2802);var Se=n(373);const xe=e=>e.docs.find((t=>t.id===e.mainDocId));const _e={default:le,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:a,...o}=e;const{i18n:{currentLocale:u,locales:c,localeConfigs:d}}=(0,ce.Z)(),f=(0,he.l)(),{search:p,hash:m}=(0,l.TH)(),h=[...n,...c.map((e=>{const n=`${`pathname://${f.createUrl({locale:e,fullyQualified:!1})}`}${p}${m}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===u?t?"menu__link--active":"dropdown__link--active":""}})),...a],g=t?(0,s.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[u].label;return r.createElement(me,(0,i.Z)({},o,{mobile:t,label:r.createElement(r.Fragment,null,r.createElement(ge,{className:be}),g),items:h}))},search:function(e){let{mobile:t,className:n}=e;return t?null:r.createElement(we,{className:n},r.createElement(ve.Z,null))},dropdown:me,html:function(e){let{value:t,className:n,mobile:o=!1,isDropdownItem:i=!1}=e;const l=i?"li":"div";return r.createElement(l,{className:(0,a.Z)({navbar__item:!o&&!i,"menu__list-item":o},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:l}=(0,ke.Iw)(a),s=(0,Ee.vY)(t,a);return null===s?null:r.createElement(le,(0,i.Z)({exact:!0},o,{isActive:()=>(null==l?void 0:l.path)===s.path||!(null==l||!l.sidebar)&&l.sidebar===s.sidebar,label:n??s.id,to:s.path}))},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:l}=(0,ke.Iw)(a),s=(0,Ee.oz)(t,a).link;if(!s)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return r.createElement(le,(0,i.Z)({exact:!0},o,{isActive:()=>(null==l?void 0:l.sidebar)===t,label:n??s.label,to:s.path}))},docsVersion:function(e){let{label:t,to:n,docsPluginId:a,...o}=e;const l=(0,Ee.lO)(a)[0],s=t??l.label,u=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(l).path;return r.createElement(le,(0,i.Z)({},o,{label:s,to:u}))},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:a,dropdownItemsBefore:o,dropdownItemsAfter:u,...c}=e;const{search:d,hash:f}=(0,l.TH)(),p=(0,ke.Iw)(n),m=(0,ke.gB)(n),{savePreferredVersionName:h}=(0,Se.J)(n),g=[...o,...m.map((e=>{const t=p.alternateDocVersions[e.name]??xe(e);return{label:e.label,to:`${t.path}${d}${f}`,isActive:()=>e===p.activeVersion,onClick:()=>h(e.name)}})),...u],b=(0,Ee.lO)(n)[0],v=t&&g.length>1?(0,s.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:xe(b).path;return g.length<=1?r.createElement(le,(0,i.Z)({},c,{mobile:t,label:v,to:y,isActive:a?()=>!1:void 0})):r.createElement(me,(0,i.Z)({},c,{mobile:t,label:v,to:y,items:g,isActive:a?()=>!1:void 0}))}};function Ce(e){let{type:t,...n}=e;const a=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=_e[a];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return r.createElement(o,n)}function Te(){const e=(0,N.e)(),t=(0,w.L)().navbar.items;return r.createElement("ul",{className:"menu__list"},t.map(((t,n)=>r.createElement(Ce,(0,i.Z)({mobile:!0},t,{onClick:()=>e.toggle(),key:n})))))}function Le(e){return r.createElement("button",(0,i.Z)({},e,{type:"button",className:"clean-btn navbar-sidebar__back"}),r.createElement(s.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 Ae(){const e=0===(0,w.L)().navbar.items.length,t=j();return r.createElement(r.Fragment,null,!e&&r.createElement(Le,{onClick:()=>t.hide()}),t.content)}function Re(){const e=(0,N.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(B,{header:r.createElement(X,null),primaryMenu:r.createElement(Te,null),secondaryMenu:r.createElement(Ae,null)}):null}const Pe="navbarHideable_m1mJ",Ne="navbarHidden_jGov";function Oe(e){return r.createElement("div",(0,i.Z)({role:"presentation"},e,{className:(0,a.Z)("navbar-sidebar__backdrop",e.className)}))}function De(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:o}}=(0,w.L)(),i=(0,N.e)(),{navbarRef:l,isNavbarVisible:s}=function(e){const[t,n]=(0,r.useState)(e),a=(0,r.useRef)(!1),o=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(o.current=e.getBoundingClientRect().height)}),[]);return(0,O.RF)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i<o.current)return void n(!0);if(a.current)return void(a.current=!1);const l=null==r?void 0:r.scrollY,s=document.documentElement.scrollHeight-o.current,u=window.innerHeight;l&&i>=l?n(!1):i+u<s&&n(!0)})),(0,u.S)((t=>{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return a.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return r.createElement("nav",{ref:l,className:(0,a.Z)("navbar","navbar--fixed-top",n&&[Pe,!s&&Ne],{"navbar--dark":"dark"===o,"navbar--primary":"primary"===o,"navbar-sidebar--show":i.shown})},t,r.createElement(Oe,{onClick:i.toggle}),r.createElement(Re,null))}function Ie(e){let{width:t=30,height:n=30,className:a,...o}=e;return r.createElement("svg",(0,i.Z)({className:a,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true"},o),r.createElement("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"}))}function Me(){const{toggle:e,shown:t}=(0,N.e)();return r.createElement("button",{onClick:e,"aria-label":(0,s.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(Ie,null))}const ze="colorModeToggle_DEke";function Fe(e){let{items:t}=e;return r.createElement(r.Fragment,null,t.map(((e,t)=>r.createElement(Ce,(0,i.Z)({},e,{key:t})))))}function je(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 Be(){const e=(0,N.e)(),t=(0,w.L)().navbar.items,[n,a]=function(e){function t(e){return"left"===(e.position??"right")}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return r.createElement(je,{left:r.createElement(r.Fragment,null,!e.disabled&&r.createElement(Me,null),r.createElement(Q,null),r.createElement(Fe,{items:n})),right:r.createElement(r.Fragment,null,r.createElement(Fe,{items:a}),r.createElement(W,{className:ze}),!o&&r.createElement(we,null,r.createElement(ve.Z,null)))})}function Ue(){return r.createElement(De,null,r.createElement(Be,null))}function $e(e){let{item:t}=e;const{to:n,href:a,label:o,prependBaseUrlToHref:l,...s}=t,u=(0,ee.Z)(n),c=(0,ee.Z)(a,{forcePrependBaseUrl:!0});return r.createElement(J.Z,(0,i.Z)({className:"footer__link-item"},a?{href:l?c:a}:{to:u},s),o,a&&!(0,te.Z)(a)&&r.createElement(re.Z,null))}function qe(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($e,{item:t}))}function Ge(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(qe,{key:t,item:e})))))}function He(e){let{columns:t}=e;return r.createElement("div",{className:"row footer__links"},t.map(((e,t)=>r.createElement(Ge,{key:t,column:e}))))}function Ze(){return r.createElement("span",{className:"footer__link-separator"},"\xb7")}function Ve(e){let{item:t}=e;return t.html?r.createElement("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement($e,{item:t})}function We(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(Ve,{item:e}),t.length!==n+1&&r.createElement(Ze,null))))))}function Ye(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?r.createElement(He,{columns:t}):r.createElement(We,{links:t})}var Qe=n(941);const Ke="footerLogoLink_BH7S";function Xe(e){let{logo:t}=e;const{withBaseUrl:n}=(0,ee.C)(),o={light:n(t.src),dark:n(t.srcDark??t.src)};return r.createElement(Qe.Z,{className:(0,a.Z)("footer__logo",t.className),alt:t.alt,sources:o,width:t.width,height:t.height,style:t.style})}function Je(e){let{logo:t}=e;return t.href?r.createElement(J.Z,{href:t.href,className:Ke,target:t.target},r.createElement(Xe,{logo:t})):r.createElement(Xe,{logo:t})}function et(e){let{copyright:t}=e;return r.createElement("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function tt(e){let{style:t,links:n,logo:o,copyright:i}=e;return r.createElement("footer",{className:(0,a.Z)("footer",{"footer--dark":"dark"===t})},r.createElement("div",{className:"container container-fluid"},n,(o||i)&&r.createElement("div",{className:"footer__bottom text--center"},o&&r.createElement("div",{className:"margin-bottom--sm"},o),i)))}function nt(){const{footer:e}=(0,w.L)();if(!e)return null;const{copyright:t,links:n,logo:a,style:o}=e;return r.createElement(tt,{style:o,links:n&&n.length>0&&r.createElement(Ye,{links:n}),logo:a&&r.createElement(Je,{logo:a}),copyright:t&&r.createElement(et,{copyright:t})})}const rt=r.memo(nt);var at=n(12);const ot="docusaurus.tab.",it=r.createContext(void 0);const lt=(0,D.Qc)([U.S,k.pl,function(e){let{children:t}=e;const n=function(){const[e,t]=(0,r.useState)({}),n=(0,r.useCallback)(((e,t)=>{(0,at.W)(`docusaurus.tab.${e}`).set(t)}),[]);(0,r.useEffect)((()=>{try{const e={};(0,at._)().forEach((t=>{if(t.startsWith(ot)){const n=t.substring(ot.length);e[n]=(0,at.W)(t).get()}})),t(e)}catch(e){console.error(e)}}),[]);const a=(0,r.useCallback)(((e,r)=>{t((t=>({...t,[e]:r}))),n(e,r)}),[n]);return(0,r.useMemo)((()=>({tabGroupChoices:e,setTabGroupChoices:a})),[e,a])}();return r.createElement(it.Provider,{value:n},t)},O.OC,Se.L5,h.VC,function(e){let{children:t}=e;return r.createElement(I.n2,null,r.createElement(N.M,null,r.createElement(z,null,t)))}]);function st(e){let{children:t}=e;return r.createElement(lt,null,t)}function ut(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(s.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed"},"This page crashed.")),r.createElement("p",null,t.message),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},r.createElement(s.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again when the page crashed"},"Try again"))))))}const ct="mainWrapper_z2l0";function dt(e){const{children:t,noFooter:n,wrapperClassName:i,title:l,description:s}=e;return(0,b.t)(),r.createElement(st,null,r.createElement(h.d,{title:l,description:s}),r.createElement(y,null),r.createElement(P,null),r.createElement(Ue,null),r.createElement("div",{id:c,className:(0,a.Z)(g.k.wrapper.main,ct,i)},r.createElement(o.Z,{fallback:e=>r.createElement(ut,e)},t)),!n&&r.createElement(rt,null))}},1327:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(7462),a=n(7294),o=n(9960),i=n(4996),l=n(2263),s=n(6668),u=n(941);function c(e){let{logo:t,alt:n,imageClassName:r}=e;const o={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},l=a.createElement(u.Z,{className:t.className,sources:o,height:t.height,width:t.width,alt:n,style:t.style});return r?a.createElement("div",{className:r},l):l}function d(e){const{siteConfig:{title:t}}=(0,l.Z)(),{navbar:{title:n,logo:u}}=(0,s.L)(),{imageClassName:d,titleClassName:f,...p}=e,m=(0,i.Z)((null==u?void 0:u.href)||"/"),h=n?"":t,g=(null==u?void 0:u.alt)??h;return a.createElement(o.Z,(0,r.Z)({to:m},p,(null==u?void 0:u.target)&&{target:u.target}),u&&a.createElement(c,{logo:u,alt:g,imageClassName:d}),null!=n&&a.createElement("b",{className:f},n))}},197:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(5742);function o(e){let{locale:t,version:n,tag:o}=e;const i=t;return r.createElement(a.Z,null,t&&r.createElement("meta",{name:"docusaurus_locale",content:t}),n&&r.createElement("meta",{name:"docusaurus_version",content:n}),o&&r.createElement("meta",{name:"docusaurus_tag",content:o}),i&&r.createElement("meta",{name:"docsearch:language",content:i}),n&&r.createElement("meta",{name:"docsearch:version",content:n}),o&&r.createElement("meta",{name:"docsearch:docusaurus_tag",content:o}))}},941:(e,t,n)=>{"use strict";n.d(t,{Z:()=>u});var r=n(7462),a=n(7294),o=n(6010),i=n(2389),l=n(2949);const s={themedImage:"themedImage_ToTc","themedImage--light":"themedImage--light_HNdA","themedImage--dark":"themedImage--dark_i4oU"};function u(e){const t=(0,i.Z)(),{colorMode:n}=(0,l.I)(),{sources:u,className:c,alt:d,...f}=e,p=t?"dark"===n?["dark"]:["light"]:["light","dark"];return a.createElement(a.Fragment,null,p.map((e=>a.createElement("img",(0,r.Z)({key:e,src:u[e],alt:d,className:(0,o.Z)(s.themedImage,s[`themedImage--${e}`],c)},f)))))}},6043:(e,t,n)=>{"use strict";n.d(t,{u:()=>i,z:()=>m});var r=n(7462),a=n(7294),o=n(412);function i(e){let{initialState:t}=e;const[n,r]=(0,a.useState)(t??!1),o=(0,a.useCallback)((()=>{r((e=>!e))}),[]);return{collapsed:n,setCollapsed:r,toggleCollapsed:o}}const l={display:"none",overflow:"hidden",height:"0px"},s={display:"block",overflow:"visible",height:"auto"};function u(e,t){const n=t?l:s;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function c(e){let{collapsibleRef:t,collapsed:n,animation:r}=e;const o=(0,a.useRef)(!1);(0,a.useEffect)((()=>{const e=t.current;function a(){const t=e.scrollHeight,n=(null==r?void 0:r.duration)??function(e){const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${(null==r?void 0:r.easing)??"ease-in-out"}`,height:`${t}px`}}function i(){const t=a();e.style.transition=t.transition,e.style.height=t.height}if(!o.current)return u(e,n),void(o.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(i(),requestAnimationFrame((()=>{e.style.height=l.height,e.style.overflow=l.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{i()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,r])}function d(e){if(!o.Z.canUseDOM)return e?l:s}function f(e){let{as:t="div",collapsed:n,children:r,animation:o,onCollapseTransitionEnd:i,className:l,disableSSRStyle:s}=e;const f=(0,a.useRef)(null);return c({collapsibleRef:f,collapsed:n,animation:o}),a.createElement(t,{ref:f,style:s?void 0:d(n),onTransitionEnd:e=>{"height"===e.propertyName&&(u(f.current,n),null==i||i(n))},className:l},r)}function p(e){let{collapsed:t,...n}=e;const[o,i]=(0,a.useState)(!t),[l,s]=(0,a.useState)(t);return(0,a.useLayoutEffect)((()=>{t||i(!0)}),[t]),(0,a.useLayoutEffect)((()=>{o&&s(t)}),[o,t]),o?a.createElement(f,(0,r.Z)({},n,{collapsed:l})):null}function m(e){let{lazy:t,...n}=e;const r=t?p:f;return a.createElement(r,n)}},9689:(e,t,n)=>{"use strict";n.d(t,{nT:()=>m,pl:()=>p});var r=n(7294),a=n(2389),o=n(12),i=n(902),l=n(6668);const s=(0,o.W)("docusaurus.announcement.dismiss"),u=(0,o.W)("docusaurus.announcement.id"),c=()=>"true"===s.get(),d=e=>s.set(String(e)),f=r.createContext(null);function p(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.L)(),t=(0,a.Z)(),[n,o]=(0,r.useState)((()=>!!t&&c()));(0,r.useEffect)((()=>{o(c())}),[]);const i=(0,r.useCallback)((()=>{d(!0),o(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=u.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;u.set(t),r&&d(!1),!r&&c()||o(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return r.createElement(f.Provider,{value:n},t)}function m(){const e=(0,r.useContext)(f);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),a=n(412),o=n(902),i=n(12),l=n(6668);const s=r.createContext(void 0),u="theme",c=(0,i.W)(u),d="light",f="dark",p=e=>e===f?f:d;function m(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.L)(),[o,i]=(0,r.useState)((e=>a.Z.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e))(e));(0,r.useEffect)((()=>{t&&c.del()}),[t]);const s=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:a=!0}=r;t?(i(t),a&&(e=>{c.set(p(e))})(t)):(i(n?window.matchMedia("(prefers-color-scheme: dark)").matches?f:d:e),c.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!==u)return;const t=c.get();null!==t&&s(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,s]);const m=(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||m.current?m.current=window.matchMedia("print").matches:s(null)};return e.addListener(r),()=>e.removeListener(r)}),[s,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:s,get isDarkTheme(){return o===f},setLightTheme(){s(d)},setDarkTheme(){s(f)}})),[o,s])}function h(e){let{children:t}=e;const n=m();return r.createElement(s.Provider,{value:n},t)}function g(){const e=(0,r.useContext)(s);if(null==e)throw new o.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:()=>y,L5:()=>b});var r=n(7294),a=n(143),o=n(9935),i=n(6668),l=n(2802),s=n(902),u=n(12);const c=e=>`docs-preferred-version-${e}`,d=(e,t,n)=>{(0,u.W)(c(e),{persistence:t}).set(n)},f=(e,t)=>(0,u.W)(c(e),{persistence:t}).get(),p=(e,t)=>{(0,u.W)(c(e),{persistence:t}).del()};const m=r.createContext(null);function h(){const e=(0,a._r)(),t=(0,i.L)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[o,l]=(0,r.useState)((()=>(e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}]))))(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function a(e){const t=f(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(p(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,a(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[o,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=h();return r.createElement(m.Provider,{value:n},t)}function b(e){let{children:t}=e;return l.cE?r.createElement(g,null,t):r.createElement(r.Fragment,null,t)}function v(){const e=(0,r.useContext)(m);if(!e)throw new s.i6("DocsPreferredVersionContextProvider");return e}function y(e){void 0===e&&(e=o.m);const t=(0,a.zh)(e),[n,i]=v(),{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),a=n(902);const o=Symbol("EmptyContext"),i=r.createContext(o);function l(e){let{children:t,name:n,items:a}=e;const o=(0,r.useMemo)((()=>n&&a?{name:n,items:a}:null),[n,a]);return r.createElement(i.Provider,{value:o},t)}function s(){const e=(0,r.useContext)(i);if(e===o)throw new a.i6("DocsSidebarProvider");return e}},2961:(e,t,n)=>{"use strict";n.d(t,{M:()=>f,e:()=>p});var r=n(7294),a=n(3102),o=n(7524),i=n(6775),l=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 u=n(6668);const c=r.createContext(void 0);function d(){const e=function(){const e=(0,a.HY)(),{items:t}=(0,u.L)().navbar;return 0===t.length&&!e.component}(),t=(0,o.i)(),n=!e&&"mobile"===t,[i,l]=(0,r.useState)(!1);s((()=>{if(i)return l(!1),!1}));const c=(0,r.useCallback)((()=>{l((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&l(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:c,shown:i})),[e,n,c,i])}function f(e){let{children:t}=e;const n=d();return r.createElement(c.Provider,{value:n},t)}function p(){const e=r.useContext(c);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),a=n(902);const o=r.createContext(null);function i(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return r.createElement(o.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(o);if(!e)throw new a.i6("NavbarSecondaryMenuContentProvider");return e[0]}function s(e){let{component:t,props:n}=e;const i=(0,r.useContext)(o);if(!i)throw new a.i6("NavbarSecondaryMenuContentProvider");const[,l]=i,s=(0,a.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:()=>a,t:()=>o});var r=n(7294);const a="navigation-with-keyboard";function o(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(a),"mousedown"===e.type&&document.body.classList.remove(a)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(a),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},7524:(e,t,n)=>{"use strict";n.d(t,{i:()=>u});var r=n(7294),a=n(412);const o="desktop",i="mobile",l="ssr";function s(){return a.Z.canUseDOM?window.innerWidth>996?o:i:l}function u(){const[e,t]=(0,r.useState)((()=>s()));return(0,r.useEffect)((()=>{function e(){t(s())}return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),clearTimeout(undefined)}}),[]),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:{}}},2802:(e,t,n)=>{"use strict";n.d(t,{Wl:()=>f,_F:()=>m,cE:()=>d,hI:()=>w,lO:()=>b,vY:()=>y,oz:()=>v,s1:()=>g});var r=n(7294),a=n(6775),o=n(8790),i=n(143),l=n(373),s=n(1116);function u(e){return Array.from(new Set(e))}var c=n(8596);const d=!!i._r;function f(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=f(t);if(e)return e}}}const p=(e,t)=>void 0!==e&&(0,c.Mg)(e,t);function m(e,t){return"link"===e.type?p(e.href,t):"category"===e.type&&(p(e.href,t)||((e,t)=>e.some((e=>m(e,t))))(e.items,t))}function h(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const a=[];return function e(t){for(const o of t)if("category"===o.type&&((0,c.Mg)(o.href,n)||e(o.items))||"link"===o.type&&(0,c.Mg)(o.href,n)){return r&&"category"!==o.type||a.unshift(o),!0}return!1}(t),a}function g(){var e;const t=(0,s.V)(),{pathname:n}=(0,a.TH)();return!1!==(null==(e=(0,i.gA)())?void 0:e.pluginData.breadcrumbs)&&t?h({sidebarItems:t.items,pathname:n}):null}function b(e){const{activeVersion:t}=(0,i.Iw)(e),{preferredVersion:n}=(0,l.J)(e),a=(0,i.yW)(e);return(0,r.useMemo)((()=>u([t,n,a].filter(Boolean))),[t,n,a])}function v(e,t){const n=b(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(", ")}".\n Available sidebar ids are:\n - ${Object.keys(t).join("\n- ")}`);return r[1]}),[e,n])}function y(e,t){const n=b(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(`DocNavbarItem: 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- ${u(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function w(e){let{route:t,versionMetadata:n}=e;const r=(0,a.TH)(),i=t.routes,l=i.find((e=>(0,a.LX)(r.pathname,e)));if(!l)return null;const s=l.sidebar,u=s?n.docsSidebars[s]:void 0;return{docElement:(0,o.H)(i),sidebarName:s,sidebarItems:u}}},1944:(e,t,n)=>{"use strict";n.d(t,{FG:()=>f,d:()=>c,VC:()=>p});var r=n(7294),a=n(6010),o=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),u=n(2263);function c(e){let{title:t,description:n,keywords:a,image:i,children:l}=e;const c=function(e){const{siteConfig:t}=(0,u.Z)(),{title:n,titleDelimiter:r}=t;return null!=e&&e.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,s.C)(),f=i?d(i,{absolute:!0}):void 0;return r.createElement(o.Z,null,t&&r.createElement("title",null,c),t&&r.createElement("meta",{property:"og:title",content:c}),n&&r.createElement("meta",{name:"description",content:n}),n&&r.createElement("meta",{property:"og:description",content:n}),a&&r.createElement("meta",{name:"keywords",content:Array.isArray(a)?a.join(","):a}),f&&r.createElement("meta",{property:"og:image",content:f}),f&&r.createElement("meta",{name:"twitter:image",content:f}),l)}const d=r.createContext(void 0);function f(e){let{className:t,children:n}=e;const i=r.useContext(d),l=(0,a.Z)(i,t);return r.createElement(d.Provider,{value:l},r.createElement(o.Z,null,r.createElement("html",{className:l})),n)}function p(e){let{children:t}=e;const n=l(),o=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return r.createElement(f,{className:(0,a.Z)(o,i)},t)}},902:(e,t,n)=>{"use strict";n.d(t,{D9:()=>i,Qc:()=>u,Ql:()=>s,i6:()=>l,zX:()=>o});var r=n(7294);const a=n(412).Z.canUseDOM?r.useLayoutEffect:r.useEffect;function o(e){const t=(0,r.useRef)(e);return a((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function i(e){const t=(0,r.useRef)();return a((()=>{t.current=e})),t.current}class l extends Error{constructor(e,t){var n,r,a;super(),this.name="ReactContextError",this.message=`Hook ${(null==(n=this.stack)||null==(r=n.split("\n")[1])||null==(a=r.match(/at (?:\w+\.)?(?<name>\w+)/))?void 0:a.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 u(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),a=n(723),o=n(2263);function i(e,t){const n=e=>{var t;return null==(t=!e||e.endsWith("/")?e:`${e}/`)?void 0:t.toLowerCase()};return n(e)===n(t)}function l(){const{baseUrl:e}=(0,o.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 a(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(a).flatMap((e=>e.routes??[])))}(n)}({routes:a.Z,baseUrl:e})),[e])}},2466:(e,t,n)=>{"use strict";n.d(t,{Ct:()=>f,OC:()=>s,RF:()=>d});var r=n(7294),a=n(412),o=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 u(){const e=(0,r.useContext)(l);if(null==e)throw new i.i6("ScrollControllerProvider");return e}const c=()=>a.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function d(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=u(),a=(0,r.useRef)(c()),o=(0,i.zX)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=c();o(e,a.current),a.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[o,n,...t])}function f(){const e=(0,r.useRef)(null),t=(0,o.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 a=document.documentElement.scrollTop;(n&&a>e||!n&&a<e)&&(t=requestAnimationFrame(r),window.scrollTo(0,Math.floor(.85*(a-e))+e))}(),()=>t&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>null==e.current?void 0:e.current()}}},3320:(e,t,n)=>{"use strict";n.d(t,{HX:()=>r,os:()=>a});n(2263);const r="default";function a(e,t){return`docs-${e}-${t}`}},12:(e,t,n)=>{"use strict";n.d(t,{W:()=>l,_:()=>s});const r="localStorage";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,o||(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),o=!0),null}var t}let o=!1;const i={get:()=>null,set:()=>{},del:()=>{}};function l(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}}(e);const n=a(null==t?void 0:t.persistence);return null===n?i:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{n.setItem(e,t)}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{n.removeItem(e)}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}}}}function s(e){void 0===e&&(e=r);const t=a(e);if(!t)return[];const n=[];for(let r=0;r<t.length;r+=1){const e=t.key(r);null!==e&&n.push(e)}return n}},4711:(e,t,n)=>{"use strict";n.d(t,{l:()=>o});var r=n(2263),a=n(6775);function o(){const{siteConfig:{baseUrl:e,url:t},i18n:{defaultLocale:n,currentLocale:o}}=(0,r.Z)(),{pathname:i}=(0,a.TH)(),l=o===n?e:e.replace(`/${o}/`,"/"),s=i.replace(e,"");return{createUrl:function(e){let{locale:r,fullyQualified:a}=e;return`${a?t:""}${function(e){return e===n?`${l}`:`${l}${e}/`}(r)}${s}`}}}},5936:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(7294),a=n(6775),o=n(902);function i(e){const t=(0,a.TH)(),n=(0,o.D9)(t),i=(0,o.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:()=>a});var r=n(2263);function a(){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[a]=e.split(/[#?]/),o="/"===a||a===r?a:(i=a,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(a,o)}},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.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="post-content";var a=n(8802);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(a).default}})},1004:(e,t,n)=>{const r=n(4389),a="set",o="reset";let i,l;var s,u;"undefined"!=typeof document&&(i=null==(s=Object.getOwnPropertyDescriptor(Document.prototype,"cookie"))?void 0:s.set,l=null==(u=Object.getOwnPropertyDescriptor(Document.prototype,"cookie"))?void 0:u.get);function c(e){const t=e===a;var n="undefined"!=typeof document;n&&l&&document.__defineGetter__("cookie",(function(){return l.call(document)})),t?(n&&i&&document.__defineSetter__("cookie",(function(e){i.call(document,e)})),window["ga-disable-G-9DVQRCY9L7"]=!1,window._ga&&r.set("_ga",window._ga,{domain:".azure.github.io",expires:365,path:"/"}),window._ga_9DVQRCY9L7&&r.set("_ga_9DVQRCY9L7",window._ga_9DVQRCY9L7,{domain:".azure.github.io",expires:365,path:"/"}),p(365),!0===window._ga_started||(gtagInit&>agInit(),window.dataLayer=window.dataLayer||[],window.dataLayer.push({"gtm.start":(new Date).getTime(),event:"gtm.js"})),window._ga_started=!0):(p(-365),window["ga-disable-G-9DVQRCY9L7"]=!0,window._ga=r.get("_ga"),window._ga_9DVQRCY9L7=r.get("_ga_9DVQRCY9L7"),m("_ga","/",".azure.github.io"),m("_ga_9DVQRCY9L7","/",".azure.github.io"),m("_mid","/"),m("_mid",d(location.pathname)),m("_mid",f()),n&&i&&document.__defineSetter__("cookie",(function(e){"_mid"!==e.split("=")[0].trim()&&i.call(document,e)})))}function d(e){return"/"===e[e.length-1]&&(e=e.substring(0,e.length-1)),e}function f(){let e=location.pathname;if(e){if("/"===e)return e;e=d(e),e=e.substring(1);return"/"+e.split("/").slice(0,-1).join("/")}return e}function p(e){r.set("google-analytics-enable","true",{expires:e})}function m(e,t,n){r.get(e)&&r.erase(e,{path:t||r.defaults.path,domain:n||r.defaults.domain})}function h(e){e.Advertising,e.SocialMedia,e.Analytics?c(a):c(o)}function g(e){h(e)}function b(){m("_mid","/"),m("_mid",d(location.pathname)),m("_mid",f()),window.siteConsent=null,window.WcpConsent&&WcpConsent.init("en-US","cookie-banner",(function(e,t){e?console.error("Error initializing WcpConsent: "+e):(siteConsent=t,h(siteConsent.getConsent()))}),g,WcpConsent.themes.light)}e.exports=clientModule={onRouteDidUpdate:function(e){let{location:t,previousLocation:n}=e;b(),function(e,t){!t||e.pathname===t.pathname&&e.search===t.search&&e.hash===t.hash||setTimeout((()=>{window.gtag("event","page_view",{page_title:document.title,page_location:window.location.href,page_path:e.pathname+e.search+e.hash})}))}(t,n)}}},4389:(e,t)=>{t.defaults={},t.set=function(e,n,r){var a=r||{},o=t.defaults,i=a.expires||o.expires,l=a.domain||o.domain,s=void 0!==a.path?a.path:void 0!==o.path?o.path:"/",u=void 0!==a.secure?a.secure:o.secure,c=void 0!==a.httponly?a.httponly:o.httponly,d=void 0!==a.samesite?a.samesite:o.samesite,f=i?new Date("number"==typeof i?(new Date).getTime()+864e5*i:i):0;document.cookie=e.replace(/[^+#$&^`|]/g,encodeURIComponent).replace("(","%28").replace(")","%29")+"="+n.replace(/[^+#$&/:<-\[\]-}]/g,encodeURIComponent)+(f&&f.getTime()>=0?";expires="+f.toUTCString():"")+(l?";domain="+l:"")+(s?";path="+s:"")+(u?";secure":"")+(c?";httponly":"")+(d?";samesite="+d:"")},t.get=function(e){for(var t=document.cookie.split(";");t.length;){var n=t.pop(),r=n.indexOf("=");if(r=r<0?n.length:r,decodeURIComponent(n.slice(0,r).replace(/^\s+/,""))===e)return decodeURIComponent(n.slice(r+1))}return null},t.erase=function(e,n){t.set(e,"",{expires:-1,domain:n&&n.domain,path:n&&n.path,secure:0,httponly:0})},t.all=function(){for(var e={},t=document.cookie.split(";");t.length;){var n=t.pop(),r=n.indexOf("=");r=r<0?n.length:r,e[decodeURIComponent(n.slice(0,r).replace(/^\s+/,""))]=decodeURIComponent(n.slice(r+1))}return e}},6010:(e,t,n)=>{"use strict";function r(e){var t,n,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=r(e[t]))&&(a&&(a+=" "),a+=n);else for(t in e)e[t]&&(a&&(a+=" "),a+=t);return a}n.d(t,{Z:()=>a});const a=function(){for(var e,t,n=0,a="";n<arguments.length;)(e=arguments[n++])&&(t=r(e))&&(a&&(a+=" "),a+=t);return a}},9318:(e,t,n)=>{"use strict";n.d(t,{lX:()=>w,q_:()=>C,ob:()=>p,PP:()=>L,Ep:()=>f});var r=n(7462);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r<a;n+=1,r+=1)e[n]=e[r];e.pop()}const i=function(e,t){void 0===t&&(t="");var n,r=e&&e.split("/")||[],i=t&&t.split("/")||[],l=e&&a(e),s=t&&a(t),u=l||s;if(e&&a(e)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";if(i.length){var c=i[i.length-1];n="."===c||".."===c||""===c}else n=!1;for(var d=0,f=i.length;f>=0;f--){var p=i[f];"."===p?o(i,f):".."===p?(o(i,f),d++):d&&(o(i,f),d--)}if(!u)for(;d--;d)i.unshift("..");!u||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(2177);function s(e){return"/"===e.charAt(0)?e:"/"+e}function u(e){return"/"===e.charAt(0)?e.substr(1):e}function c(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function f(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function p(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.Z)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(l){throw l instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):l}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!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;r<e;r++)n[r]=arguments[r];t.forEach((function(e){return e.apply(void 0,n)}))}}}var h=!("undefined"==typeof window||!window.document||!window.document.createElement);function g(e,t){t(window.confirm(e))}var b="popstate",v="hashchange";function y(){try{return window.history.state||{}}catch(e){return{}}}function w(e){void 0===e&&(e={}),h||(0,l.Z)(!1);var t,n=window.history,a=(-1===(t=window.navigator.userAgent).indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone"))&&window.history&&"pushState"in window.history,o=!(-1===window.navigator.userAgent.indexOf("Trident")),i=e,u=i.forceRefresh,w=void 0!==u&&u,k=i.getUserConfirmation,E=void 0===k?g:k,S=i.keyLength,x=void 0===S?6:S,_=e.basename?d(s(e.basename)):"";function C(e){var t=e||{},n=t.key,r=t.state,a=window.location,o=a.pathname+a.search+a.hash;return _&&(o=c(o,_)),p(o,r,n)}function T(){return Math.random().toString(36).substr(2,x)}var L=m();function A(e){(0,r.Z)(U,e),U.length=n.length,L.notifyListeners(U.location,U.action)}function R(e){(function(e){return void 0===e.state&&-1===navigator.userAgent.indexOf("CriOS")})(e)||O(C(e.state))}function P(){O(C(y()))}var N=!1;function O(e){if(N)N=!1,A();else{L.confirmTransitionTo(e,"POP",E,(function(t){t?A({action:"POP",location:e}):function(e){var t=U.location,n=I.indexOf(t.key);-1===n&&(n=0);var r=I.indexOf(e.key);-1===r&&(r=0);var a=n-r;a&&(N=!0,z(a))}(e)}))}}var D=C(y()),I=[D.key];function M(e){return _+f(e)}function z(e){n.go(e)}var F=0;function j(e){1===(F+=e)&&1===e?(window.addEventListener(b,R),o&&window.addEventListener(v,P)):0===F&&(window.removeEventListener(b,R),o&&window.removeEventListener(v,P))}var B=!1;var U={length:n.length,action:"POP",location:D,createHref:M,push:function(e,t){var r="PUSH",o=p(e,t,T(),U.location);L.confirmTransitionTo(o,r,E,(function(e){if(e){var t=M(o),i=o.key,l=o.state;if(a)if(n.pushState({key:i,state:l},null,t),w)window.location.href=t;else{var s=I.indexOf(U.location.key),u=I.slice(0,s+1);u.push(o.key),I=u,A({action:r,location:o})}else window.location.href=t}}))},replace:function(e,t){var r="REPLACE",o=p(e,t,T(),U.location);L.confirmTransitionTo(o,r,E,(function(e){if(e){var t=M(o),i=o.key,l=o.state;if(a)if(n.replaceState({key:i,state:l},null,t),w)window.location.replace(t);else{var s=I.indexOf(U.location.key);-1!==s&&(I[s]=o.key),A({action:r,location:o})}else window.location.replace(t)}}))},go:z,goBack:function(){z(-1)},goForward:function(){z(1)},block:function(e){void 0===e&&(e=!1);var t=L.setPrompt(e);return B||(j(1),B=!0),function(){return B&&(B=!1,j(-1)),t()}},listen:function(e){var t=L.appendListener(e);return j(1),function(){j(-1),t()}}};return U}var k="hashchange",E={hashbang:{encodePath:function(e){return"!"===e.charAt(0)?e:"!/"+u(e)},decodePath:function(e){return"!"===e.charAt(0)?e.substr(1):e}},noslash:{encodePath:u,decodePath:s},slash:{encodePath:s,decodePath:s}};function S(e){var t=e.indexOf("#");return-1===t?e:e.slice(0,t)}function x(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.substring(t+1)}function _(e){window.location.replace(S(window.location.href)+"#"+e)}function C(e){void 0===e&&(e={}),h||(0,l.Z)(!1);var t=window.history,n=(window.navigator.userAgent.indexOf("Firefox"),e),a=n.getUserConfirmation,o=void 0===a?g:a,i=n.hashType,u=void 0===i?"slash":i,b=e.basename?d(s(e.basename)):"",v=E[u],y=v.encodePath,w=v.decodePath;function C(){var e=w(x());return b&&(e=c(e,b)),p(e)}var T=m();function L(e){(0,r.Z)(B,e),B.length=t.length,T.notifyListeners(B.location,B.action)}var A=!1,R=null;function P(){var e,t,n=x(),r=y(n);if(n!==r)_(r);else{var a=C(),i=B.location;if(!A&&(t=a,(e=i).pathname===t.pathname&&e.search===t.search&&e.hash===t.hash))return;if(R===f(a))return;R=null,function(e){if(A)A=!1,L();else{var t="POP";T.confirmTransitionTo(e,t,o,(function(n){n?L({action:t,location:e}):function(e){var t=B.location,n=I.lastIndexOf(f(t));-1===n&&(n=0);var r=I.lastIndexOf(f(e));-1===r&&(r=0);var a=n-r;a&&(A=!0,M(a))}(e)}))}}(a)}}var N=x(),O=y(N);N!==O&&_(O);var D=C(),I=[f(D)];function M(e){t.go(e)}var z=0;function F(e){1===(z+=e)&&1===e?window.addEventListener(k,P):0===z&&window.removeEventListener(k,P)}var j=!1;var B={length:t.length,action:"POP",location:D,createHref:function(e){var t=document.querySelector("base"),n="";return t&&t.getAttribute("href")&&(n=S(window.location.href)),n+"#"+y(b+f(e))},push:function(e,t){var n="PUSH",r=p(e,void 0,void 0,B.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=f(r),a=y(b+t);if(x()!==a){R=t,function(e){window.location.hash=e}(a);var o=I.lastIndexOf(f(B.location)),i=I.slice(0,o+1);i.push(t),I=i,L({action:n,location:r})}else L()}}))},replace:function(e,t){var n="REPLACE",r=p(e,void 0,void 0,B.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=f(r),a=y(b+t);x()!==a&&(R=t,_(a));var o=I.indexOf(f(B.location));-1!==o&&(I[o]=t),L({action:n,location:r})}}))},go:M,goBack:function(){M(-1)},goForward:function(){M(1)},block:function(e){void 0===e&&(e=!1);var t=T.setPrompt(e);return j||(F(1),j=!0),function(){return j&&(j=!1,F(-1)),t()}},listen:function(e){var t=T.appendListener(e);return F(1),function(){F(-1),t()}}};return B}function T(e,t,n){return Math.min(Math.max(e,t),n)}function L(e){void 0===e&&(e={});var t=e,n=t.getUserConfirmation,a=t.initialEntries,o=void 0===a?["/"]:a,i=t.initialIndex,l=void 0===i?0:i,s=t.keyLength,u=void 0===s?6:s,c=m();function d(e){(0,r.Z)(w,e),w.length=w.entries.length,c.notifyListeners(w.location,w.action)}function h(){return Math.random().toString(36).substr(2,u)}var g=T(l,0,o.length-1),b=o.map((function(e){return p(e,void 0,"string"==typeof e?h():e.key||h())})),v=f;function y(e){var t=T(w.index+e,0,w.entries.length-1),r=w.entries[t];c.confirmTransitionTo(r,"POP",n,(function(e){e?d({action:"POP",location:r,index:t}):d()}))}var w={length:b.length,action:"POP",location:b[g],index:g,entries:b,createHref:v,push:function(e,t){var r="PUSH",a=p(e,t,h(),w.location);c.confirmTransitionTo(a,r,n,(function(e){if(e){var t=w.index+1,n=w.entries.slice(0);n.length>t?n.splice(t,n.length-t,a):n.push(a),d({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=p(e,t,h(),w.location);c.confirmTransitionTo(a,r,n,(function(e){e&&(w.entries[w.index]=a,d({action:r,location:a}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(e){var t=w.index+e;return t>=0&&t<w.entries.length},block:function(e){return void 0===e&&(e=!1),c.setPrompt(e)},listen:function(e){return c.appendListener(e)}};return w}},8679:(e,t,n)=>{"use strict";var r=n(9864),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={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]||a}l[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},l[r.Memo]=i;var u=Object.defineProperty,c=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,f=Object.getOwnPropertyDescriptor,p=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=p(n);a&&a!==m&&e(t,a,r)}var i=c(n);d&&(i=i.concat(d(n)));for(var l=s(t),h=s(n),g=0;g<i.length;++g){var b=i[g];if(!(o[b]||r&&r[b]||h&&h[b]||l&&l[b])){var v=f(n,b);try{u(t,b,v)}catch(y){}}}}return t}},1143:e=>{"use strict";e.exports=function(e,t,n,r,a,o,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 u=[n,r,a,o,i,l],c=0;(s=new Error(t.replace(/%s/g,(function(){return u[c++]})))).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,a;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:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function a(e,t,n){return e<t?t:e>n?n:e}function o(e){return 100*(-1+e)}function i(e,t,n){var a;return(a="translate3d"===r.positionUsing?{transform:"translate3d("+o(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+o(e)+"%,0)"}:{"margin-left":o(e)+"%"}).transition="all "+t+"ms "+n,a}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=a(e,r.minimum,1),n.status=1===e?null:e;var o=n.render(!t),u=o.querySelector(r.barSelector),c=r.speed,d=r.easing;return o.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,i(e,c,d)),1===e?(s(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){s(o,{transition:"all "+c+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),c)}),c)):setTimeout(t,c)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*a(Math.random()*t,.1,.95)),t=a(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");c(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var a,i=t.querySelector(r.barSelector),l=e?"-100":o(n.status||0),u=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&p(a),u!=document.body&&c(u,"nprogress-custom-parent"),u.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&p(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,a=e.length,o=t.charAt(0).toUpperCase()+t.slice(1);a--;)if((r=e[a]+o)in n)return r;return t}function a(e){return e=n(e),t[e]||(t[e]=r(e))}function o(e,t,n){t=a(t),e.style[t]=n}return function(e,t){var n,r,a=arguments;if(2==a.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&o(e,n,r);else o(e,a[1],a[2])}}();function u(e,t){return("string"==typeof e?e:f(e)).indexOf(" "+t+" ")>=0}function c(e,t){var n=f(e),r=n+t;u(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=f(e);u(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function f(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function p(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},7418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}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(a){return!1}}()?Object.assign:function(e,o){for(var i,l,s=a(e),u=1;u<arguments.length;u++){for(var c in i=Object(arguments[u]))n.call(i,c)&&(s[c]=i[c]);if(t){l=t(i);for(var d=0;d<l.length;d++)r.call(i,l[d])&&(s[l[d]]=i[l[d]])}}return s}},7410:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof a?new a(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(t,n){var a,o;switch(n=n||{},r.util.type(t)){case"Object":if(o=r.util.objId(t),n[o])return n[o];for(var i in a={},n[o]=a,t)t.hasOwnProperty(i)&&(a[i]=e(t[i],n));return a;case"Array":return o=r.util.objId(t),n[o]?n[o]:(a=[],n[o]=a,t.forEach((function(t,r){a[r]=e(t,n)})),a);default:return t}},getLanguage:function(t){for(;t;){var n=e.exec(t.className);if(n)return n[1].toLowerCase();t=t.parentElement}return"none"},setLanguage:function(t,n){t.className=t.className.replace(RegExp(e,"gi"),""),t.classList.add("language-"+n)},isActive:function(e,t,n){for(var r="no-"+t;e;){var a=e.classList;if(a.contains(t))return!0;if(a.contains(r))return!1;e=e.parentElement}return!!n}},languages:{plain:n,plaintext:n,text:n,txt:n,extend:function(e,t){var n=r.util.clone(r.languages[e]);for(var a in t)n[a]=t[a];return n},insertBefore:function(e,t,n,a){var o=(a=a||r.languages)[e],i={};for(var l in o)if(o.hasOwnProperty(l)){if(l==t)for(var s in n)n.hasOwnProperty(s)&&(i[s]=n[s]);n.hasOwnProperty(l)||(i[l]=o[l])}var u=a[e];return a[e]=i,r.languages.DFS(r.languages,(function(t,n){n===u&&t!=e&&(this[t]=i)})),i},DFS:function e(t,n,a,o){o=o||{};var i=r.util.objId;for(var l in t)if(t.hasOwnProperty(l)){n.call(t,l,t[l],a||l);var s=t[l],u=r.util.type(s);"Object"!==u||o[i(s)]?"Array"!==u||o[i(s)]||(o[i(s)]=!0,e(s,n,l,o)):(o[i(s)]=!0,e(s,n,null,o))}}},plugins:{},highlight:function(e,t,n){var o={code:e,grammar:t,language:n};return r.hooks.run("before-tokenize",o),o.tokens=r.tokenize(o.code,o.grammar),r.hooks.run("after-tokenize",o),a.stringify(r.util.encode(o.tokens),o.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var a=new l;return s(a,a.head,e),i(e,a,t,a.head,0),function(e){var t=[],n=e.head.next;for(;n!==e.tail;)t.push(n.value),n=n.next;return t}(a)},hooks:{all:{},add:function(e,t){var n=r.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=r.hooks.all[e];if(n&&n.length)for(var a,o=0;a=n[o++];)a(t)}},Token:a};function a(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function o(e,t,n,r){e.lastIndex=t;var a=e.exec(n);if(a&&r&&a[1]){var o=a[1].length;a.index+=o,a[0]=a[0].slice(o)}return a}function i(e,t,n,l,c,d){for(var f in n)if(n.hasOwnProperty(f)&&n[f]){var p=n[f];p=Array.isArray(p)?p:[p];for(var m=0;m<p.length;++m){if(d&&d.cause==f+","+m)return;var h=p[m],g=h.inside,b=!!h.lookbehind,v=!!h.greedy,y=h.alias;if(v&&!h.pattern.global){var w=h.pattern.toString().match(/[imsuy]*$/)[0];h.pattern=RegExp(h.pattern.source,w+"g")}for(var k=h.pattern||h,E=l.next,S=c;E!==t.tail&&!(d&&S>=d.reach);S+=E.value.length,E=E.next){var x=E.value;if(t.length>e.length)return;if(!(x instanceof a)){var _,C=1;if(v){if(!(_=o(k,S,e,b))||_.index>=e.length)break;var T=_.index,L=_.index+_[0].length,A=S;for(A+=E.value.length;T>=A;)A+=(E=E.next).value.length;if(S=A-=E.value.length,E.value instanceof a)continue;for(var R=E;R!==t.tail&&(A<L||"string"==typeof R.value);R=R.next)C++,A+=R.value.length;C--,x=e.slice(S,A),_.index-=S}else if(!(_=o(k,0,x,b)))continue;T=_.index;var P=_[0],N=x.slice(0,T),O=x.slice(T+P.length),D=S+x.length;d&&D>d.reach&&(d.reach=D);var I=E.prev;if(N&&(I=s(t,I,N),S+=N.length),u(t,I,C),E=s(t,I,new a(f,g?r.tokenize(P,g):P,y,P)),O&&s(t,E,O),C>1){var M={cause:f+","+m,reach:D};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,a={value:n,prev:t,next:r};return t.next=a,r.prev=a,e.length++,a}function u(e,t,n){for(var r=t.next,a=0;a<n&&r!==e.tail;a++)r=r.next;t.next=r,r.prev=t,e.length-=a}return a.stringify=function e(t,n){if("string"==typeof t)return t;if(Array.isArray(t)){var a="";return t.forEach((function(t){a+=e(t,n)})),a}var o={type:t.type,content:e(t.content,n),tag:"span",classes:["token",t.type],attributes:{},language:n},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(o.classes,i):o.classes.push(i)),r.hooks.run("wrap",o);var l="";for(var s in o.attributes)l+=" "+s+'="'+(o.attributes[s]||"").replace(/"/g,""")+'"';return"<"+o.tag+' class="'+o.classes.join(" ")+'"'+l+">"+o.content+"</"+o.tag+">"},r}(),a=r;r.default=r,a.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\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:/<!\[CDATA\[[\s\S]*?\]\]>/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]},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.languages.markup.doctype.inside["internal-subset"].inside=a.languages.markup,a.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:a.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;var r={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:a.languages[t]};var o={};o[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},a.languages.insertBefore("markup","cdata",o)}}),Object.defineProperty(a.languages.markup.tag,"addAttribute",{value:function(e,t){a.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:a.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup,a.languages.xml=a.languages.extend("markup",{}),a.languages.ssml=a.languages.xml,a.languages.atom=a.languages.xml,a.languages.rss=a.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 a=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=r.variable[1].inside,i=0;i<a.length;i++)o[a[i]]=e.languages.bash[a[i]];e.languages.shell=e.languages.bash}(a),a.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},a.languages.c=a.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|[?:~]|[-+*/%&|^!=<>]=?/}),a.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),a.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},a.languages.c.string],char:a.languages.c.char,comment:a.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:a.languages.c}}}}),a.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 a.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(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/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+"|"+/<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/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"])}(a),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"))}(a),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},a={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:a,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,number:a})}(a),a.languages.javascript=a.languages.extend("clike",{"class-name":[a.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}|\?\?=?|\?\.?|[~:]/}),a.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,a.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:a.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:a.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:a.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:a.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:a.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),a.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:a.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"}}),a.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),a.languages.markup&&(a.languages.markup.tag.addInlined("script","javascript"),a.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")),a.languages.js=a.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}(a),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",a=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<value>>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<key>>/g,(function(){return"(?:"+a+"|"+o+")"}))),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(o),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}(a),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),o=/\|?[ \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("^"+a+o+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+o+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+o+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),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__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\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(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.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<r;n++){var a=t[n];if("code"===a.type){var o=a.content[1],i=a.content[3];if(o&&i&&"code-language"===o.type&&"code-block"===i.type&&"string"==typeof o.content){var l=o.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),s="language-"+(l=(/[a-z][\w-]*/i.exec(l)||[""])[0].toLowerCase());i.alias?"string"==typeof i.alias?i.alias=[i.alias,s]:i.alias.push(s):i.alias=[s]}}else e(a.content)}}(e.tokens)})),e.hooks.add("wrap",(function(t){if("code-block"===t.type){for(var n="",r=0,a=t.classes.length;r<a;r++){var o=t.classes[r],u=/language-(.+)/.exec(o);if(u){n=u[1];break}}var c,d=e.languages[n];if(d)t.content=e.highlight((c=t.content,c.replace(i,"").replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,(function(e,t){var n;if("#"===(t=t.toLowerCase())[0])return n="x"===t[1]?parseInt(t.slice(2),16):Number(t.slice(1)),s(n);var r=l[t];return r||e}))),d,n);else if(n&&"none"!==n&&e.plugins.autoloader){var f="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random());t.attributes.id=f,e.plugins.autoloader.loadLanguages(n,(function(){var t=document.getElementById(f);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))}))}}}));var i=RegExp(e.languages.markup.tag.pattern.source,"gi"),l={amp:"&",lt:"<",gt:">",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(a),a.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:a.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+/},a.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;n<t.length;){var r=t[n++];if("keyword"===r.type&&"mutation"===r.content){var a=[];if(d(["definition-mutation","punctuation"])&&"("===c(1).content){n+=2;var o=f(/^\($/,/^\)$/);if(-1===o)continue;for(;n<o;n++){var i=c(0);"variable"===i.type&&(p(i,"variable-input"),a.push(i.content))}n=o+1}if(d(["punctuation","property-query"])&&"{"===c(0).content&&(n++,p(c(0),"property-mutation"),a.length>0)){var l=f(/^\{$/,/^\}$/);if(-1===l)continue;for(var s=n;s<l;s++){var u=t[s];"variable"===u.type&&a.indexOf(u.content)>=0&&p(u,"variable-input")}}}}function c(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n<e.length;n++){var r=c(n+t);if(!r||r.type!==e[n])return!1}return!0}function f(e,r){for(var a=1,o=n;o<t.length;o++){var i=t[o],l=i.content;if("punctuation"===i.type&&"string"==typeof l)if(e.test(l))a++;else if(r.test(l)&&0===--a)return o}return-1}function p(e,t){var n=e.alias;n?Array.isArray(n)||(e.alias=n=[n]):e.alias=n=[],n.push(t)}})),a.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\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,a=r.inside["interpolation-punctuation"],o=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 a={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",a),a.tokens=e.tokenize(a.code,a.grammar),e.hooks.run("after-tokenize",a),a.tokens}function u(t){var n={};n["interpolation-punctuation"]=a;var o=e.tokenize(t,n);if(3===o.length){var i=[1,1];i.push.apply(i,s(o[1],e.languages.javascript,"javascript")),o.splice.apply(o,i)}return new e.Token("interpolation",o,r.alias,t)}function c(t,n,r){var a=e.tokenize(t,{interpolation:{pattern:RegExp(o),lookbehind:!0}}),i=0,c={},d=s(a.map((function(e){if("string"==typeof e)return e;for(var n,a=e.content;-1!==t.indexOf(n=l(i++,r)););return c[n]=a,n})).join(""),n,r),f=Object.keys(c);return i=0,function e(t){for(var n=0;n<t.length;n++){if(i>=f.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var a=f[i],o="string"==typeof r?r:r.content,l=o.indexOf(a);if(-1!==l){++i;var s=o.substring(0,l),d=u(c[a]),p=o.substring(l+a.length),m=[];if(s&&m.push(s),m.push(d),p){var h=[p];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 f(e){return"string"==typeof e?e:Array.isArray(e)?e.map(f).join(""):f(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,a=n.length;r<a;r++){var o=n[r];if("string"!=typeof o){var i=o.content;if(Array.isArray(i))if("template-string"===o.type){var l=i[1];if(3===i.length&&"string"!=typeof l&&"embedded-code"===l.type){var s=f(l),u=l.alias,d=Array.isArray(u)?u[0]:u,p=e.languages[d];if(!p)continue;i[1]=c(s,p,d)}}else t(i);else"string"!=typeof i&&t([i])}}}(t.tokens)}))}(a),function(e){e.languages.typescript=e.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,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}(a),function(e){function t(e,t){return RegExp(e.replace(/<ID>/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*)(?:<ID>(?:\s*,\s*(?:\*\s*as\s+<ID>|\{[^{}]*\}))?|\*\s*as\s+<ID>|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+<ID>)?(?=\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*)#?<ID>/.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<n.length;r++){var a=n[r],o=e.languages.javascript[a];"RegExp"===e.util.type(o)&&(o=e.languages.javascript[a]={pattern:o});var i=o.inside||{};o.inside=i,i["maybe-class-name"]=/^[A-Z][\s\S]*/}}(a),function(e){var t=e.util.clone(e.languages.javascript),n=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,r=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,a=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function o(e,t){return e=e.replace(/<S>/g,(function(){return n})).replace(/<BRACES>/g,(function(){return r})).replace(/<SPREAD>/g,(function(){return a})),RegExp(e,t)}a=o(a).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=o(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<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:o(/<SPREAD>/.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:o(/=<BRACES>/.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;r<t.length;r++){var a=t[r],o=!1;if("string"!=typeof a&&("tag"===a.type&&a.content[0]&&"tag"===a.content[0].type?"</"===a.content[0].content[0].content?n.length>0&&n[n.length-1].tagName===i(a.content[0].content[1])&&n.pop():"/>"===a.content[a.content.length-1].content||n.push({tagName:i(a.content[0].content[1]),openedBraces:0}):n.length>0&&"punctuation"===a.type&&"{"===a.content?n[n.length-1].openedBraces++:n.length>0&&n[n.length-1].openedBraces>0&&"punctuation"===a.type&&"}"===a.content?n[n.length-1].openedBraces--:o=!0),(o||"string"==typeof a)&&n.length>0&&0===n[n.length-1].openedBraces){var s=i(a);r<t.length-1&&("string"==typeof t[r+1]||"plain-text"===t[r+1].type)&&(s+=i(t[r+1]),t.splice(r+1,1)),r>0&&("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)}a.content&&"string"!=typeof a.content&&l(a.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||l(e.tokens)}))}(a),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],a=[];/^\w+$/.test(n)||a.push(/\w+/.exec(n)[0]),"diff"===n&&a.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:a,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})}(a),a.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},a.languages.go=a.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/}),a.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete a.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,a,o){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof o&&!o(e))return e;for(var a,l=i.length;-1!==n.code.indexOf(a=t(r,l));)++l;return i[l]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,o=Object.keys(n.tokenStack);!function i(l){for(var s=0;s<l.length&&!(a>=o.length);s++){var u=l[s];if("string"==typeof u||u.content&&"string"==typeof u.content){var c=o[a],d=n.tokenStack[c],f="string"==typeof u?u:u.content,p=t(r,c),m=f.indexOf(p);if(m>-1){++a;var h=f.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=f.substring(m+p.length),v=[];h&&v.push.apply(v,i([h])),v.push(g),b&&v.push.apply(v,i([b])),"string"==typeof u?l.splice.apply(l,[s,1].concat(v)):u.content=v}}else u.content&&i(u.content)}return l}(n.tokens)}}}})}(a),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}(a),a.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"}},a.languages.webmanifest=a.languages.json,a.languages.less=a.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:/[+\-*\/]/}),a.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}}),a.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:/[:;(){}]/},a.languages.objectivec=a.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 a.languages.objectivec["class-name"],a.languages.objc=a.languages.objectivec,a.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/},a.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:/[{}[\];(),.:]/},a.languages.python["string-interpolation"].inside.interpolation.inside.rest=a.languages.python,a.languages.py=a.languages.python,a.languages.reason=a.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/}),a.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 a.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}})}(a),a.languages.scss=a.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]+\}/}}}),a.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}]}),a.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),a.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}}),a.languages.scss.atrule.inside.rest=a.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:/[{}()\[\];:.]/}}(a),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}(a),a.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 o=a},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:"shell",aliasTitles:{shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},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"},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"},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"},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"},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"},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 <a href="https://webplatform.github.io/docs/">WebPlatform.org documentation</a>. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (<code>.comment</code> can become <code>.namespace--comment</code>) or replace them with your defined ones (like <code>.editor__comment</code>). 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 <code>highlightAll</code> and <code>highlightAllUnder</code> 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),a=n(9642),o=new Set;function i(e){void 0===e?e=Object.keys(r.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...o,...Object.keys(Prism.languages)];a(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),o.add(e)}))}i.silent=!1,e.exports=i},6726:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=6726},6500:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.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<r;n++)t[e[n]]=!0;return t}function r(e){var n={},r=[];function a(r,o){if(!(r in n)){o.push(r);var i=o.indexOf(r);if(i<o.length-1)throw new Error("Circular dependency: "+o.slice(i).join(" -> "));var l={},s=e[r];if(s){function u(t){if(!(t in e))throw new Error(r+" depends on an unknown component "+t);if(!(t in l))for(var i in a(t,o),l[t]=!0,n[t])l[i]=!0}t(s.require,u),t(s.optional,u),t(s.modify,u)}n[r]=l,o.pop()}}return function(e){var t=n[e];return t||(a(e,r),t=n[e]),t}}function a(e){for(var t in e)return!0;return!1}return function(o,i,l){var s=function(e){var t={};for(var n in e){var r=e[n];for(var a in r)if("meta"!=a){var o=r[a];t[a]="string"==typeof o?{title:o}:o}}return t}(o),u=function(e){var n;return function(r){if(r in e)return r;if(!n)for(var a in n={},e){var o=e[a];t(o&&o.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+a+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+a+" because it is a component.");n[t]=a}))}return n[r]||r}}(s);i=i.map(u),l=(l||[]).map(u);var c=n(i),d=n(l);i.forEach((function e(n){var r=s[n];t(r&&r.require,(function(t){t in d||(c[t]=!0,e(t))}))}));for(var f,p=r(s),m=c;a(m);){for(var h in f={},m){var g=s[h];t(g&&g.modify,(function(e){e in d&&(f[e]=!0)}))}for(var b in d)if(!(b in c))for(var v in p(b))if(v in c){f[b]=!0;break}for(var y in m=f)c[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,a){var o=a?a.series:void 0,i=a?a.parallel:e,l={},s={};function u(e){if(e in l)return l[e];s[e]=!0;var a,c=[];for(var d in t(e))d in n&&c.push(d);if(0===c.length)a=r(e);else{var f=i(c.map((function(e){var t=u(e);return delete s[e],t})));o?a=o(f,(function(){return r(e)})):r(e)}return l[e]=a}for(var c in n)u(c);var d=[];for(var f in s)d.push(l[f]);return i(d)}(p,c,t,n)}};return w}}();e.exports=t},2703:(e,t,n)=>{"use strict";var r=n(414);function a(){}function o(){}o.resetWarningCache=a,e.exports=function(){function e(e,t,n,a,o,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:o,resetWarningCache:a};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),a=n(7418),o=n(3840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(i(227));var l=new Set,s={};function u(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(s[e]=t,e=0;e<t.length;e++)l.add(t[e])}var d=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),f=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p=Object.prototype.hasOwnProperty,m={},h={};function g(e,t,n,r,a,o,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=i}var b={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){b[e]=new g(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];b[t]=new g(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){b[e]=new g(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){b[e]=new g(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){b[e]=new g(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){b[e]=new g(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){b[e]=new g(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){b[e]=new g(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){b[e]=new g(e,5,!1,e.toLowerCase(),null,!1,!1)}));var v=/[\-:]([a-z])/g;function y(e){return e[1].toUpperCase()}function w(e,t,n,r){var a=b.hasOwnProperty(t)?b[t]:null;(null!==a?0===a.type:!r&&(2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1])))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,a,r)&&(n=null),r||null===a?function(e){return!!p.call(h,e)||!p.call(m,e)&&(f.test(e)?h[e]=!0:(m[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=null===n?3!==a.type&&"":n:(t=a.attributeName,r=a.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(a=a.type)||4===a&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(v,y);b[t]=new g(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(v,y);b[t]=new g(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(v,y);b[t]=new g(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){b[e]=new g(e,1,!1,e.toLowerCase(),null,!1,!1)})),b.xlinkHref=new g("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){b[e]=new g(e,1,!1,e.toLowerCase(),null,!0,!0)}));var k=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,E=60103,S=60106,x=60107,_=60108,C=60114,T=60109,L=60110,A=60112,R=60113,P=60120,N=60115,O=60116,D=60121,I=60128,M=60129,z=60130,F=60131;if("function"==typeof Symbol&&Symbol.for){var j=Symbol.for;E=j("react.element"),S=j("react.portal"),x=j("react.fragment"),_=j("react.strict_mode"),C=j("react.profiler"),T=j("react.provider"),L=j("react.context"),A=j("react.forward_ref"),R=j("react.suspense"),P=j("react.suspense_list"),N=j("react.memo"),O=j("react.lazy"),D=j("react.block"),j("react.scope"),I=j("react.opaque.id"),M=j("react.debug_trace_mode"),z=j("react.offscreen"),F=j("react.legacy_hidden")}var B,U="function"==typeof Symbol&&Symbol.iterator;function $(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=U&&e[U]||e["@@iterator"])?e:null}function q(e){if(void 0===B)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);B=t&&t[1]||""}return"\n"+B+e}var G=!1;function H(e,t){if(!e||G)return"";G=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(s){var r=s}Reflect.construct(e,[],t)}else{try{t.call()}catch(s){r=s}e.call(t.prototype)}else{try{throw Error()}catch(s){r=s}e()}}catch(s){if(s&&r&&"string"==typeof s.stack){for(var a=s.stack.split("\n"),o=r.stack.split("\n"),i=a.length-1,l=o.length-1;1<=i&&0<=l&&a[i]!==o[l];)l--;for(;1<=i&&0<=l;i--,l--)if(a[i]!==o[l]){if(1!==i||1!==l)do{if(i--,0>--l||a[i]!==o[l])return"\n"+a[i].replace(" at new "," at ")}while(1<=i&&0<=l);break}}}finally{G=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?q(e):""}function Z(e){switch(e.tag){case 5:return q(e.type);case 16:return q("Lazy");case 13:return q("Suspense");case 19:return q("SuspenseList");case 0:case 2:case 15:return e=H(e.type,!1);case 11:return e=H(e.type.render,!1);case 22:return e=H(e.type._render,!1);case 1:return e=H(e.type,!0);default:return""}}function V(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case x:return"Fragment";case S:return"Portal";case C:return"Profiler";case _:return"StrictMode";case R:return"Suspense";case P:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case L:return(e.displayName||"Context")+".Consumer";case T:return(e._context.displayName||"Context")+".Provider";case A:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case N:return V(e.type);case D:return V(e._render);case O:t=e._payload,e=e._init;try{return V(e(t))}catch(n){}}return null}function W(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Y(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function Q(e){e._valueTracker||(e._valueTracker=function(e){var t=Y(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var a=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(e){r=""+e,o.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function K(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Y(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function X(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function J(e,t){var n=t.checked;return a({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=W(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&w(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=W(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ae(e,t.type,n):t.hasOwnProperty("defaultValue")&&ae(e,t.type,W(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ae(e,t,n){"number"===t&&X(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function oe(e,t){return e=a({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function ie(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+W(n),t=null,a=0;a<e.length;a++){if(e[a].value===n)return e[a].selected=!0,void(r&&(e[a].defaultSelected=!0));null!==t||e[a].disabled||(t=e[a])}null!==t&&(t.selected=!0)}}function le(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return a({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function se(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:W(n)}}function ue(e,t){var n=W(t.value),r=W(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ce(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var de="http://www.w3.org/1999/xhtml",fe="http://www.w3.org/2000/svg";function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function me(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?pe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var he,ge,be=(ge=function(e,t){if(e.namespaceURI!==fe||"innerHTML"in e)e.innerHTML=t;else{for((he=he||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=he.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ge(e,t)}))}:ge);function ve(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var ye={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},we=["Webkit","ms","Moz","O"];function ke(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||ye.hasOwnProperty(e)&&ye[e]?(""+t).trim():t+"px"}function Ee(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),a=ke(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}Object.keys(ye).forEach((function(e){we.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ye[t]=ye[e]}))}));var Se=a({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function xe(e,t){if(t){if(Se[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(i(62))}}function _e(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function Ce(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Te=null,Le=null,Ae=null;function Re(e){if(e=ra(e)){if("function"!=typeof Te)throw Error(i(280));var t=e.stateNode;t&&(t=oa(t),Te(e.stateNode,e.type,t))}}function Pe(e){Le?Ae?Ae.push(e):Ae=[e]:Le=e}function Ne(){if(Le){var e=Le,t=Ae;if(Ae=Le=null,Re(e),t)for(e=0;e<t.length;e++)Re(t[e])}}function Oe(e,t){return e(t)}function De(e,t,n,r,a){return e(t,n,r,a)}function Ie(){}var Me=Oe,ze=!1,Fe=!1;function je(){null===Le&&null===Ae||(Ie(),Ne())}function Be(e,t){var n=e.stateNode;if(null===n)return null;var r=oa(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(i(231,t,typeof n));return n}var Ue=!1;if(d)try{var $e={};Object.defineProperty($e,"passive",{get:function(){Ue=!0}}),window.addEventListener("test",$e,$e),window.removeEventListener("test",$e,$e)}catch(ge){Ue=!1}function qe(e,t,n,r,a,o,i,l,s){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(c){this.onError(c)}}var Ge=!1,He=null,Ze=!1,Ve=null,We={onError:function(e){Ge=!0,He=e}};function Ye(e,t,n,r,a,o,i,l,s){Ge=!1,He=null,qe.apply(We,arguments)}function Qe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(1026&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Ke(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Xe(e){if(Qe(e)!==e)throw Error(i(188))}function Je(e){if(e=function(e){var t=e.alternate;if(!t){if(null===(t=Qe(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(null===a)break;var o=a.alternate;if(null===o){if(null!==(r=a.return)){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return Xe(a),e;if(o===r)return Xe(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var l=!1,s=a.child;s;){if(s===n){l=!0,n=a,r=o;break}if(s===r){l=!0,r=a,n=o;break}s=s.sibling}if(!l){for(s=o.child;s;){if(s===n){l=!0,n=o,r=a;break}if(s===r){l=!0,r=o,n=a;break}s=s.sibling}if(!l)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e),!e)return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function et(e,t){for(var n=e.alternate;null!==t;){if(t===e||t===n)return!0;t=t.return}return!1}var tt,nt,rt,at,ot=!1,it=[],lt=null,st=null,ut=null,ct=new Map,dt=new Map,ft=[],pt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function mt(e,t,n,r,a){return{blockedOn:e,domEventName:t,eventSystemFlags:16|n,nativeEvent:a,targetContainers:[r]}}function ht(e,t){switch(e){case"focusin":case"focusout":lt=null;break;case"dragenter":case"dragleave":st=null;break;case"mouseover":case"mouseout":ut=null;break;case"pointerover":case"pointerout":ct.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":dt.delete(t.pointerId)}}function gt(e,t,n,r,a,o){return null===e||e.nativeEvent!==o?(e=mt(t,n,r,a,o),null!==t&&(null!==(t=ra(t))&&nt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==a&&-1===t.indexOf(a)&&t.push(a),e)}function bt(e){var t=na(e.target);if(null!==t){var n=Qe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Ke(n)))return e.blockedOn=t,void at(e.lanePriority,(function(){o.unstable_runWithPriority(e.priority,(function(){rt(n)}))}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function vt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=ra(n))&&nt(t),e.blockedOn=n,!1;t.shift()}return!0}function yt(e,t,n){vt(e)&&n.delete(t)}function wt(){for(ot=!1;0<it.length;){var e=it[0];if(null!==e.blockedOn){null!==(e=ra(e.blockedOn))&&tt(e);break}for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n){e.blockedOn=n;break}t.shift()}null===e.blockedOn&&it.shift()}null!==lt&&vt(lt)&&(lt=null),null!==st&&vt(st)&&(st=null),null!==ut&&vt(ut)&&(ut=null),ct.forEach(yt),dt.forEach(yt)}function kt(e,t){e.blockedOn===t&&(e.blockedOn=null,ot||(ot=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,wt)))}function Et(e){function t(t){return kt(t,e)}if(0<it.length){kt(it[0],e);for(var n=1;n<it.length;n++){var r=it[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==lt&&kt(lt,e),null!==st&&kt(st,e),null!==ut&&kt(ut,e),ct.forEach(t),dt.forEach(t),n=0;n<ft.length;n++)(r=ft[n]).blockedOn===e&&(r.blockedOn=null);for(;0<ft.length&&null===(n=ft[0]).blockedOn;)bt(n),null===n.blockedOn&&ft.shift()}function St(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xt={animationend:St("Animation","AnimationEnd"),animationiteration:St("Animation","AnimationIteration"),animationstart:St("Animation","AnimationStart"),transitionend:St("Transition","TransitionEnd")},_t={},Ct={};function Tt(e){if(_t[e])return _t[e];if(!xt[e])return e;var t,n=xt[e];for(t in n)if(n.hasOwnProperty(t)&&t in Ct)return _t[e]=n[t];return e}d&&(Ct=document.createElement("div").style,"AnimationEvent"in window||(delete xt.animationend.animation,delete xt.animationiteration.animation,delete xt.animationstart.animation),"TransitionEvent"in window||delete xt.transitionend.transition);var Lt=Tt("animationend"),At=Tt("animationiteration"),Rt=Tt("animationstart"),Pt=Tt("transitionend"),Nt=new Map,Ot=new Map,Dt=["abort","abort",Lt,"animationEnd",At,"animationIteration",Rt,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",Pt,"transitionEnd","waiting","waiting"];function It(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],a=e[n+1];a="on"+(a[0].toUpperCase()+a.slice(1)),Ot.set(r,t),Nt.set(r,a),u(a,[r])}}(0,o.unstable_now)();var Mt=8;function zt(e){if(0!=(1&e))return Mt=15,1;if(0!=(2&e))return Mt=14,2;if(0!=(4&e))return Mt=13,4;var t=24&e;return 0!==t?(Mt=12,t):0!=(32&e)?(Mt=11,32):0!==(t=192&e)?(Mt=10,t):0!=(256&e)?(Mt=9,256):0!==(t=3584&e)?(Mt=8,t):0!=(4096&e)?(Mt=7,4096):0!==(t=4186112&e)?(Mt=6,t):0!==(t=62914560&e)?(Mt=5,t):67108864&e?(Mt=4,67108864):0!=(134217728&e)?(Mt=3,134217728):0!==(t=805306368&e)?(Mt=2,t):0!=(1073741824&e)?(Mt=1,1073741824):(Mt=8,e)}function Ft(e,t){var n=e.pendingLanes;if(0===n)return Mt=0;var r=0,a=0,o=e.expiredLanes,i=e.suspendedLanes,l=e.pingedLanes;if(0!==o)r=o,a=Mt=15;else if(0!==(o=134217727&n)){var s=o&~i;0!==s?(r=zt(s),a=Mt):0!==(l&=o)&&(r=zt(l),a=Mt)}else 0!==(o=n&~i)?(r=zt(o),a=Mt):0!==l&&(r=zt(l),a=Mt);if(0===r)return 0;if(r=n&((0>(r=31-Gt(r))?0:1<<r)<<1)-1,0!==t&&t!==r&&0==(t&i)){if(zt(t),a<=Mt)return t;Mt=a}if(0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)a=1<<(n=31-Gt(t)),r|=e[n],t&=~a;return r}function jt(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function Bt(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return 0===(e=Ut(24&~t))?Bt(10,t):e;case 10:return 0===(e=Ut(192&~t))?Bt(8,t):e;case 8:return 0===(e=Ut(3584&~t))&&(0===(e=Ut(4186112&~t))&&(e=512)),e;case 2:return 0===(t=Ut(805306368&~t))&&(t=268435456),t}throw Error(i(358,e))}function Ut(e){return e&-e}function $t(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function qt(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-Gt(t)]=n}var Gt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-(Ht(e)/Zt|0)|0},Ht=Math.log,Zt=Math.LN2;var Vt=o.unstable_UserBlockingPriority,Wt=o.unstable_runWithPriority,Yt=!0;function Qt(e,t,n,r){ze||Ie();var a=Xt,o=ze;ze=!0;try{De(a,e,t,n,r)}finally{(ze=o)||je()}}function Kt(e,t,n,r){Wt(Vt,Xt.bind(null,e,t,n,r))}function Xt(e,t,n,r){var a;if(Yt)if((a=0==(4&t))&&0<it.length&&-1<pt.indexOf(e))e=mt(null,e,t,n,r),it.push(e);else{var o=Jt(e,t,n,r);if(null===o)a&&ht(e,r);else{if(a){if(-1<pt.indexOf(e))return e=mt(o,e,t,n,r),void it.push(e);if(function(e,t,n,r,a){switch(t){case"focusin":return lt=gt(lt,e,t,n,r,a),!0;case"dragenter":return st=gt(st,e,t,n,r,a),!0;case"mouseover":return ut=gt(ut,e,t,n,r,a),!0;case"pointerover":var o=a.pointerId;return ct.set(o,gt(ct.get(o)||null,e,t,n,r,a)),!0;case"gotpointercapture":return o=a.pointerId,dt.set(o,gt(dt.get(o)||null,e,t,n,r,a)),!0}return!1}(o,e,t,n,r))return;ht(e,r)}Ir(e,t,r,null,n)}}}function Jt(e,t,n,r){var a=Ce(r);if(null!==(a=na(a))){var o=Qe(a);if(null===o)a=null;else{var i=o.tag;if(13===i){if(null!==(a=Ke(o)))return a;a=null}else if(3===i){if(o.stateNode.hydrate)return 3===o.tag?o.stateNode.containerInfo:null;a=null}else o!==a&&(a=null)}}return Ir(e,t,r,a,n),null}var en=null,tn=null,nn=null;function rn(){if(nn)return nn;var e,t,n=tn,r=n.length,a="value"in en?en.value:en.textContent,o=a.length;for(e=0;e<r&&n[e]===a[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===a[o-t];t++);return nn=a.slice(e,1<t?1-t:void 0)}function an(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function on(){return!0}function ln(){return!1}function sn(e){function t(t,n,r,a,o){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=a,this.target=o,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(a):a[i]);return this.isDefaultPrevented=(null!=a.defaultPrevented?a.defaultPrevented:!1===a.returnValue)?on:ln,this.isPropagationStopped=ln,this}return a(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=on)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=on)},persist:function(){},isPersistent:on}),t}var un,cn,dn,fn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},pn=sn(fn),mn=a({},fn,{view:0,detail:0}),hn=sn(mn),gn=a({},mn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ln,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==dn&&(dn&&"mousemove"===e.type?(un=e.screenX-dn.screenX,cn=e.screenY-dn.screenY):cn=un=0,dn=e),un)},movementY:function(e){return"movementY"in e?e.movementY:cn}}),bn=sn(gn),vn=sn(a({},gn,{dataTransfer:0})),yn=sn(a({},mn,{relatedTarget:0})),wn=sn(a({},fn,{animationName:0,elapsedTime:0,pseudoElement:0})),kn=a({},fn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),En=sn(kn),Sn=sn(a({},fn,{data:0})),xn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},_n={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Cn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Tn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Cn[e])&&!!t[e]}function Ln(){return Tn}var An=a({},mn,{key:function(e){if(e.key){var t=xn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=an(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?_n[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ln,charCode:function(e){return"keypress"===e.type?an(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?an(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Rn=sn(An),Pn=sn(a({},gn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Nn=sn(a({},mn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ln})),On=sn(a({},fn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Dn=a({},gn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),In=sn(Dn),Mn=[9,13,27,32],zn=d&&"CompositionEvent"in window,Fn=null;d&&"documentMode"in document&&(Fn=document.documentMode);var jn=d&&"TextEvent"in window&&!Fn,Bn=d&&(!zn||Fn&&8<Fn&&11>=Fn),Un=String.fromCharCode(32),$n=!1;function qn(e,t){switch(e){case"keyup":return-1!==Mn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Gn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Hn=!1;var Zn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Vn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Zn[e.type]:"textarea"===t}function Wn(e,t,n,r){Pe(r),0<(t=zr(t,"onChange")).length&&(n=new pn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Yn=null,Qn=null;function Kn(e){Ar(e,0)}function Xn(e){if(K(aa(e)))return e}function Jn(e,t){if("change"===e)return t}var er=!1;if(d){var tr;if(d){var nr="oninput"in document;if(!nr){var rr=document.createElement("div");rr.setAttribute("oninput","return;"),nr="function"==typeof rr.oninput}tr=nr}else tr=!1;er=tr&&(!document.documentMode||9<document.documentMode)}function ar(){Yn&&(Yn.detachEvent("onpropertychange",or),Qn=Yn=null)}function or(e){if("value"===e.propertyName&&Xn(Qn)){var t=[];if(Wn(t,Qn,e,Ce(e)),e=Kn,ze)e(t);else{ze=!0;try{Oe(e,t)}finally{ze=!1,je()}}}}function ir(e,t,n){"focusin"===e?(ar(),Qn=n,(Yn=t).attachEvent("onpropertychange",or)):"focusout"===e&&ar()}function lr(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Xn(Qn)}function sr(e,t){if("click"===e)return Xn(t)}function ur(e,t){if("input"===e||"change"===e)return Xn(t)}var cr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},dr=Object.prototype.hasOwnProperty;function fr(e,t){if(cr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!dr.call(t,n[r])||!cr(e[n[r]],t[n[r]]))return!1;return!0}function pr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function mr(e,t){var n,r=pr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=pr(r)}}function hr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?hr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function gr(){for(var e=window,t=X();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=X((e=t.contentWindow).document)}return t}function br(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var vr=d&&"documentMode"in document&&11>=document.documentMode,yr=null,wr=null,kr=null,Er=!1;function Sr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;Er||null==yr||yr!==X(r)||("selectionStart"in(r=yr)&&br(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},kr&&fr(kr,r)||(kr=r,0<(r=zr(wr,"onSelect")).length&&(t=new pn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=yr)))}It("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),It("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),It(Dt,2);for(var xr="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),_r=0;_r<xr.length;_r++)Ot.set(xr[_r],0);c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),u("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),u("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),u("onBeforeInput",["compositionend","keypress","textInput","paste"]),u("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),u("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),u("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Cr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Tr=new Set("cancel close invalid load scroll toggle".split(" ").concat(Cr));function Lr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,a,o,l,s,u){if(Ye.apply(this,arguments),Ge){if(!Ge)throw Error(i(198));var c=He;Ge=!1,He=null,Ze||(Ze=!0,Ve=c)}}(r,t,void 0,e),e.currentTarget=null}function Ar(e,t){t=0!=(4&t);for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var o=void 0;if(t)for(var i=r.length-1;0<=i;i--){var l=r[i],s=l.instance,u=l.currentTarget;if(l=l.listener,s!==o&&a.isPropagationStopped())break e;Lr(a,l,u),o=s}else for(i=0;i<r.length;i++){if(s=(l=r[i]).instance,u=l.currentTarget,l=l.listener,s!==o&&a.isPropagationStopped())break e;Lr(a,l,u),o=s}}}if(Ze)throw e=Ve,Ze=!1,Ve=null,e}function Rr(e,t){var n=ia(t),r=e+"__bubble";n.has(r)||(Dr(t,e,2,!1),n.add(r))}var Pr="_reactListening"+Math.random().toString(36).slice(2);function Nr(e){e[Pr]||(e[Pr]=!0,l.forEach((function(t){Tr.has(t)||Or(t,!1,e,null),Or(t,!0,e,null)})))}function Or(e,t,n,r){var a=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,o=n;if("selectionchange"===e&&9!==n.nodeType&&(o=n.ownerDocument),null!==r&&!t&&Tr.has(e)){if("scroll"!==e)return;a|=2,o=r}var i=ia(o),l=e+"__"+(t?"capture":"bubble");i.has(l)||(t&&(a|=4),Dr(o,e,a,t),i.add(l))}function Dr(e,t,n,r){var a=Ot.get(t);switch(void 0===a?2:a){case 0:a=Qt;break;case 1:a=Kt;break;default:a=Xt}n=a.bind(null,t,n,e),a=void 0,!Ue||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(a=!0),r?void 0!==a?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):void 0!==a?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Ir(e,t,n,r,a){var o=r;if(0==(1&t)&&0==(2&t)&&null!==r)e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var l=r.stateNode.containerInfo;if(l===a||8===l.nodeType&&l.parentNode===a)break;if(4===i)for(i=r.return;null!==i;){var s=i.tag;if((3===s||4===s)&&((s=i.stateNode.containerInfo)===a||8===s.nodeType&&s.parentNode===a))return;i=i.return}for(;null!==l;){if(null===(i=na(l)))return;if(5===(s=i.tag)||6===s){r=o=i;continue e}l=l.parentNode}}r=r.return}!function(e,t,n){if(Fe)return e(t,n);Fe=!0;try{Me(e,t,n)}finally{Fe=!1,je()}}((function(){var r=o,a=Ce(n),i=[];e:{var l=Nt.get(e);if(void 0!==l){var s=pn,u=e;switch(e){case"keypress":if(0===an(n))break e;case"keydown":case"keyup":s=Rn;break;case"focusin":u="focus",s=yn;break;case"focusout":u="blur",s=yn;break;case"beforeblur":case"afterblur":s=yn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":s=bn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":s=vn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":s=Nn;break;case Lt:case At:case Rt:s=wn;break;case Pt:s=On;break;case"scroll":s=hn;break;case"wheel":s=In;break;case"copy":case"cut":case"paste":s=En;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":s=Pn}var c=0!=(4&t),d=!c&&"scroll"===e,f=c?null!==l?l+"Capture":null:l;c=[];for(var p,m=r;null!==m;){var h=(p=m).stateNode;if(5===p.tag&&null!==h&&(p=h,null!==f&&(null!=(h=Be(m,f))&&c.push(Mr(m,h,p)))),d)break;m=m.return}0<c.length&&(l=new s(l,u,null,n,a),i.push({event:l,listeners:c}))}}if(0==(7&t)){if(s="mouseout"===e||"pointerout"===e,(!(l="mouseover"===e||"pointerover"===e)||0!=(16&t)||!(u=n.relatedTarget||n.fromElement)||!na(u)&&!u[ea])&&(s||l)&&(l=a.window===a?a:(l=a.ownerDocument)?l.defaultView||l.parentWindow:window,s?(s=r,null!==(u=(u=n.relatedTarget||n.toElement)?na(u):null)&&(u!==(d=Qe(u))||5!==u.tag&&6!==u.tag)&&(u=null)):(s=null,u=r),s!==u)){if(c=bn,h="onMouseLeave",f="onMouseEnter",m="mouse","pointerout"!==e&&"pointerover"!==e||(c=Pn,h="onPointerLeave",f="onPointerEnter",m="pointer"),d=null==s?l:aa(s),p=null==u?l:aa(u),(l=new c(h,m+"leave",s,n,a)).target=d,l.relatedTarget=p,h=null,na(a)===r&&((c=new c(f,m+"enter",u,n,a)).target=p,c.relatedTarget=d,h=c),d=h,s&&u)e:{for(f=u,m=0,p=c=s;p;p=Fr(p))m++;for(p=0,h=f;h;h=Fr(h))p++;for(;0<m-p;)c=Fr(c),m--;for(;0<p-m;)f=Fr(f),p--;for(;m--;){if(c===f||null!==f&&c===f.alternate)break e;c=Fr(c),f=Fr(f)}c=null}else c=null;null!==s&&jr(i,l,s,c,!1),null!==u&&null!==d&&jr(i,d,u,c,!0)}if("select"===(s=(l=r?aa(r):window).nodeName&&l.nodeName.toLowerCase())||"input"===s&&"file"===l.type)var g=Jn;else if(Vn(l))if(er)g=ur;else{g=lr;var b=ir}else(s=l.nodeName)&&"input"===s.toLowerCase()&&("checkbox"===l.type||"radio"===l.type)&&(g=sr);switch(g&&(g=g(e,r))?Wn(i,g,n,a):(b&&b(e,l,r),"focusout"===e&&(b=l._wrapperState)&&b.controlled&&"number"===l.type&&ae(l,"number",l.value)),b=r?aa(r):window,e){case"focusin":(Vn(b)||"true"===b.contentEditable)&&(yr=b,wr=r,kr=null);break;case"focusout":kr=wr=yr=null;break;case"mousedown":Er=!0;break;case"contextmenu":case"mouseup":case"dragend":Er=!1,Sr(i,n,a);break;case"selectionchange":if(vr)break;case"keydown":case"keyup":Sr(i,n,a)}var v;if(zn)e:{switch(e){case"compositionstart":var y="onCompositionStart";break e;case"compositionend":y="onCompositionEnd";break e;case"compositionupdate":y="onCompositionUpdate";break e}y=void 0}else Hn?qn(e,n)&&(y="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(y="onCompositionStart");y&&(Bn&&"ko"!==n.locale&&(Hn||"onCompositionStart"!==y?"onCompositionEnd"===y&&Hn&&(v=rn()):(tn="value"in(en=a)?en.value:en.textContent,Hn=!0)),0<(b=zr(r,y)).length&&(y=new Sn(y,e,null,n,a),i.push({event:y,listeners:b}),v?y.data=v:null!==(v=Gn(n))&&(y.data=v))),(v=jn?function(e,t){switch(e){case"compositionend":return Gn(t);case"keypress":return 32!==t.which?null:($n=!0,Un);case"textInput":return(e=t.data)===Un&&$n?null:e;default:return null}}(e,n):function(e,t){if(Hn)return"compositionend"===e||!zn&&qn(e,t)?(e=rn(),nn=tn=en=null,Hn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Bn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(r=zr(r,"onBeforeInput")).length&&(a=new Sn("onBeforeInput","beforeinput",null,n,a),i.push({event:a,listeners:r}),a.data=v))}Ar(i,t)}))}function Mr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function zr(e,t){for(var n=t+"Capture",r=[];null!==e;){var a=e,o=a.stateNode;5===a.tag&&null!==o&&(a=o,null!=(o=Be(e,n))&&r.unshift(Mr(e,o,a)),null!=(o=Be(e,t))&&r.push(Mr(e,o,a))),e=e.return}return r}function Fr(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function jr(e,t,n,r,a){for(var o=t._reactName,i=[];null!==n&&n!==r;){var l=n,s=l.alternate,u=l.stateNode;if(null!==s&&s===r)break;5===l.tag&&null!==u&&(l=u,a?null!=(s=Be(n,o))&&i.unshift(Mr(n,s,l)):a||null!=(s=Be(n,o))&&i.push(Mr(n,s,l))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}function Br(){}var Ur=null,$r=null;function qr(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Gr(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var Hr="function"==typeof setTimeout?setTimeout:void 0,Zr="function"==typeof clearTimeout?clearTimeout:void 0;function Vr(e){1===e.nodeType?e.textContent="":9===e.nodeType&&(null!=(e=e.body)&&(e.textContent=""))}function Wr(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function Yr(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Qr=0;var Kr=Math.random().toString(36).slice(2),Xr="__reactFiber$"+Kr,Jr="__reactProps$"+Kr,ea="__reactContainer$"+Kr,ta="__reactEvents$"+Kr;function na(e){var t=e[Xr];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ea]||n[Xr]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=Yr(e);null!==e;){if(n=e[Xr])return n;e=Yr(e)}return t}n=(e=n).parentNode}return null}function ra(e){return!(e=e[Xr]||e[ea])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function aa(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function oa(e){return e[Jr]||null}function ia(e){var t=e[ta];return void 0===t&&(t=e[ta]=new Set),t}var la=[],sa=-1;function ua(e){return{current:e}}function ca(e){0>sa||(e.current=la[sa],la[sa]=null,sa--)}function da(e,t){sa++,la[sa]=e.current,e.current=t}var fa={},pa=ua(fa),ma=ua(!1),ha=fa;function ga(e,t){var n=e.type.contextTypes;if(!n)return fa;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a,o={};for(a in n)o[a]=t[a];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function ba(e){return null!=(e=e.childContextTypes)}function va(){ca(ma),ca(pa)}function ya(e,t,n){if(pa.current!==fa)throw Error(i(168));da(pa,t),da(ma,n)}function wa(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in e))throw Error(i(108,V(t)||"Unknown",o));return a({},n,r)}function ka(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||fa,ha=pa.current,da(pa,e),da(ma,ma.current),!0}function Ea(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=wa(e,t,ha),r.__reactInternalMemoizedMergedChildContext=e,ca(ma),ca(pa),da(pa,e)):ca(ma),da(ma,n)}var Sa=null,xa=null,_a=o.unstable_runWithPriority,Ca=o.unstable_scheduleCallback,Ta=o.unstable_cancelCallback,La=o.unstable_shouldYield,Aa=o.unstable_requestPaint,Ra=o.unstable_now,Pa=o.unstable_getCurrentPriorityLevel,Na=o.unstable_ImmediatePriority,Oa=o.unstable_UserBlockingPriority,Da=o.unstable_NormalPriority,Ia=o.unstable_LowPriority,Ma=o.unstable_IdlePriority,za={},Fa=void 0!==Aa?Aa:function(){},ja=null,Ba=null,Ua=!1,$a=Ra(),qa=1e4>$a?Ra:function(){return Ra()-$a};function Ga(){switch(Pa()){case Na:return 99;case Oa:return 98;case Da:return 97;case Ia:return 96;case Ma:return 95;default:throw Error(i(332))}}function Ha(e){switch(e){case 99:return Na;case 98:return Oa;case 97:return Da;case 96:return Ia;case 95:return Ma;default:throw Error(i(332))}}function Za(e,t){return e=Ha(e),_a(e,t)}function Va(e,t,n){return e=Ha(e),Ca(e,t,n)}function Wa(){if(null!==Ba){var e=Ba;Ba=null,Ta(e)}Ya()}function Ya(){if(!Ua&&null!==ja){Ua=!0;var e=0;try{var t=ja;Za(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),ja=null}catch(n){throw null!==ja&&(ja=ja.slice(e+1)),Ca(Na,Wa),n}finally{Ua=!1}}}var Qa=k.ReactCurrentBatchConfig;function Ka(e,t){if(e&&e.defaultProps){for(var n in t=a({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var Xa=ua(null),Ja=null,eo=null,to=null;function no(){to=eo=Ja=null}function ro(e){var t=Xa.current;ca(Xa),e.type._context._currentValue=t}function ao(e,t){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)===t){if(null===n||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,null!==n&&(n.childLanes|=t);e=e.return}}function oo(e,t){Ja=e,to=eo=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!=(e.lanes&t)&&(zi=!0),e.firstContext=null)}function io(e,t){if(to!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(to=e,t=1073741823),t={context:e,observedBits:t,next:null},null===eo){if(null===Ja)throw Error(i(308));eo=t,Ja.dependencies={lanes:0,firstContext:t,responders:null}}else eo=eo.next=t;return e._currentValue}var lo=!1;function so(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function uo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function co(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function fo(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function po(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var a=null,o=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===o?a=o=i:o=o.next=i,n=n.next}while(null!==n);null===o?a=o=t:o=o.next=t}else a=o=t;return n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:o,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function mo(e,t,n,r){var o=e.updateQueue;lo=!1;var i=o.firstBaseUpdate,l=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var u=s,c=u.next;u.next=null,null===l?i=c:l.next=c,l=u;var d=e.alternate;if(null!==d){var f=(d=d.updateQueue).lastBaseUpdate;f!==l&&(null===f?d.firstBaseUpdate=c:f.next=c,d.lastBaseUpdate=u)}}if(null!==i){for(f=o.baseState,l=0,d=c=u=null;;){s=i.lane;var p=i.eventTime;if((r&s)===s){null!==d&&(d=d.next={eventTime:p,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var m=e,h=i;switch(s=t,p=n,h.tag){case 1:if("function"==typeof(m=h.payload)){f=m.call(p,f,s);break e}f=m;break e;case 3:m.flags=-4097&m.flags|64;case 0:if(null==(s="function"==typeof(m=h.payload)?m.call(p,f,s):m))break e;f=a({},f,s);break e;case 2:lo=!0}}null!==i.callback&&(e.flags|=32,null===(s=o.effects)?o.effects=[i]:s.push(i))}else p={eventTime:p,lane:s,tag:i.tag,payload:i.payload,callback:i.callback,next:null},null===d?(c=d=p,u=f):d=d.next=p,l|=s;if(null===(i=i.next)){if(null===(s=o.shared.pending))break;i=s.next,s.next=null,o.lastBaseUpdate=s,o.shared.pending=null}}null===d&&(u=f),o.baseState=u,o.firstBaseUpdate=c,o.lastBaseUpdate=d,Ul|=l,e.lanes=l,e.memoizedState=f}}function ho(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(null!==a){if(r.callback=null,r=n,"function"!=typeof a)throw Error(i(191,a));a.call(r)}}}var go=(new r.Component).refs;function bo(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:a({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var vo={isMounted:function(e){return!!(e=e._reactInternals)&&Qe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=fs(),a=ps(e),o=co(r,a);o.payload=t,null!=n&&(o.callback=n),fo(e,o),ms(e,a,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=fs(),a=ps(e),o=co(r,a);o.tag=1,o.payload=t,null!=n&&(o.callback=n),fo(e,o),ms(e,a,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=fs(),r=ps(e),a=co(n,r);a.tag=2,null!=t&&(a.callback=t),fo(e,a),ms(e,r,n)}};function yo(e,t,n,r,a,o,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,o,i):!t.prototype||!t.prototype.isPureReactComponent||(!fr(n,r)||!fr(a,o))}function wo(e,t,n){var r=!1,a=fa,o=t.contextType;return"object"==typeof o&&null!==o?o=io(o):(a=ba(t)?ha:pa.current,o=(r=null!=(r=t.contextTypes))?ga(e,a):fa),t=new t(n,o),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=vo,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=o),t}function ko(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&vo.enqueueReplaceState(t,t.state,null)}function Eo(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs=go,so(e);var o=t.contextType;"object"==typeof o&&null!==o?a.context=io(o):(o=ba(t)?ha:pa.current,a.context=ga(e,o)),mo(e,n,a,r),a.state=e.memoizedState,"function"==typeof(o=t.getDerivedStateFromProps)&&(bo(e,t,o,n),a.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof a.getSnapshotBeforeUpdate||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||(t=a.state,"function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount(),t!==a.state&&vo.enqueueReplaceState(a,a.state,null),mo(e,n,a,r),a.state=e.memoizedState),"function"==typeof a.componentDidMount&&(e.flags|=4)}var So=Array.isArray;function xo(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var a=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===a?t.ref:(t=function(e){var t=r.refs;t===go&&(t=r.refs={}),null===e?delete t[a]:t[a]=e},t._stringRef=a,t)}if("string"!=typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function _o(e,t){if("textarea"!==e.type)throw Error(i(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function Co(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.flags=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function a(e,t){return(e=Zs(e,t)).index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags=2,n):r:(t.flags=2,n):n}function l(t){return e&&null===t.alternate&&(t.flags=2),t}function s(e,t,n,r){return null===t||6!==t.tag?((t=Qs(n,e.mode,r)).return=e,t):((t=a(t,n)).return=e,t)}function u(e,t,n,r){return null!==t&&t.elementType===n.type?((r=a(t,n.props)).ref=xo(e,t,n),r.return=e,r):((r=Vs(n.type,n.key,n.props,null,e.mode,r)).ref=xo(e,t,n),r.return=e,r)}function c(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Ks(n,e.mode,r)).return=e,t):((t=a(t,n.children||[])).return=e,t)}function d(e,t,n,r,o){return null===t||7!==t.tag?((t=Ws(n,e.mode,r,o)).return=e,t):((t=a(t,n)).return=e,t)}function f(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Qs(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case E:return(n=Vs(t.type,t.key,t.props,null,e.mode,n)).ref=xo(e,null,t),n.return=e,n;case S:return(t=Ks(t,e.mode,n)).return=e,t}if(So(t)||$(t))return(t=Ws(t,e.mode,n,null)).return=e,t;_o(e,t)}return null}function p(e,t,n,r){var a=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==a?null:s(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case E:return n.key===a?n.type===x?d(e,t,n.props.children,r,a):u(e,t,n,r):null;case S:return n.key===a?c(e,t,n,r):null}if(So(n)||$(n))return null!==a?null:d(e,t,n,r,null);_o(e,n)}return null}function m(e,t,n,r,a){if("string"==typeof r||"number"==typeof r)return s(t,e=e.get(n)||null,""+r,a);if("object"==typeof r&&null!==r){switch(r.$$typeof){case E:return e=e.get(null===r.key?n:r.key)||null,r.type===x?d(t,e,r.props.children,a,r.key):u(t,e,r,a);case S:return c(t,e=e.get(null===r.key?n:r.key)||null,r,a)}if(So(r)||$(r))return d(t,e=e.get(n)||null,r,a,null);_o(t,r)}return null}function h(a,i,l,s){for(var u=null,c=null,d=i,h=i=0,g=null;null!==d&&h<l.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var b=p(a,d,l[h],s);if(null===b){null===d&&(d=g);break}e&&d&&null===b.alternate&&t(a,d),i=o(b,i,h),null===c?u=b:c.sibling=b,c=b,d=g}if(h===l.length)return n(a,d),u;if(null===d){for(;h<l.length;h++)null!==(d=f(a,l[h],s))&&(i=o(d,i,h),null===c?u=d:c.sibling=d,c=d);return u}for(d=r(a,d);h<l.length;h++)null!==(g=m(d,a,h,l[h],s))&&(e&&null!==g.alternate&&d.delete(null===g.key?h:g.key),i=o(g,i,h),null===c?u=g:c.sibling=g,c=g);return e&&d.forEach((function(e){return t(a,e)})),u}function g(a,l,s,u){var c=$(s);if("function"!=typeof c)throw Error(i(150));if(null==(s=c.call(s)))throw Error(i(151));for(var d=c=null,h=l,g=l=0,b=null,v=s.next();null!==h&&!v.done;g++,v=s.next()){h.index>g?(b=h,h=null):b=h.sibling;var y=p(a,h,v.value,u);if(null===y){null===h&&(h=b);break}e&&h&&null===y.alternate&&t(a,h),l=o(y,l,g),null===d?c=y:d.sibling=y,d=y,h=b}if(v.done)return n(a,h),c;if(null===h){for(;!v.done;g++,v=s.next())null!==(v=f(a,v.value,u))&&(l=o(v,l,g),null===d?c=v:d.sibling=v,d=v);return c}for(h=r(a,h);!v.done;g++,v=s.next())null!==(v=m(h,a,g,v.value,u))&&(e&&null!==v.alternate&&h.delete(null===v.key?g:v.key),l=o(v,l,g),null===d?c=v:d.sibling=v,d=v);return e&&h.forEach((function(e){return t(a,e)})),c}return function(e,r,o,s){var u="object"==typeof o&&null!==o&&o.type===x&&null===o.key;u&&(o=o.props.children);var c="object"==typeof o&&null!==o;if(c)switch(o.$$typeof){case E:e:{for(c=o.key,u=r;null!==u;){if(u.key===c){if(7===u.tag){if(o.type===x){n(e,u.sibling),(r=a(u,o.props.children)).return=e,e=r;break e}}else if(u.elementType===o.type){n(e,u.sibling),(r=a(u,o.props)).ref=xo(e,u,o),r.return=e,e=r;break e}n(e,u);break}t(e,u),u=u.sibling}o.type===x?((r=Ws(o.props.children,e.mode,s,o.key)).return=e,e=r):((s=Vs(o.type,o.key,o.props,null,e.mode,s)).ref=xo(e,r,o),s.return=e,e=s)}return l(e);case S:e:{for(u=o.key;null!==r;){if(r.key===u){if(4===r.tag&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),(r=a(r,o.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=Ks(o,e.mode,s)).return=e,e=r}return l(e)}if("string"==typeof o||"number"==typeof o)return o=""+o,null!==r&&6===r.tag?(n(e,r.sibling),(r=a(r,o)).return=e,e=r):(n(e,r),(r=Qs(o,e.mode,s)).return=e,e=r),l(e);if(So(o))return h(e,r,o,s);if($(o))return g(e,r,o,s);if(c&&_o(e,o),void 0===o&&!u)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(i(152,V(e.type)||"Component"))}return n(e,r)}}var To=Co(!0),Lo=Co(!1),Ao={},Ro=ua(Ao),Po=ua(Ao),No=ua(Ao);function Oo(e){if(e===Ao)throw Error(i(174));return e}function Do(e,t){switch(da(No,t),da(Po,e),da(Ro,Ao),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:me(null,"");break;default:t=me(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}ca(Ro),da(Ro,t)}function Io(){ca(Ro),ca(Po),ca(No)}function Mo(e){Oo(No.current);var t=Oo(Ro.current),n=me(t,e.type);t!==n&&(da(Po,e),da(Ro,n))}function zo(e){Po.current===e&&(ca(Ro),ca(Po))}var Fo=ua(0);function jo(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Bo=null,Uo=null,$o=!1;function qo(e,t){var n=Gs(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function Go(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);default:return!1}}function Ho(e){if($o){var t=Uo;if(t){var n=t;if(!Go(e,t)){if(!(t=Wr(n.nextSibling))||!Go(e,t))return e.flags=-1025&e.flags|2,$o=!1,void(Bo=e);qo(Bo,n)}Bo=e,Uo=Wr(t.firstChild)}else e.flags=-1025&e.flags|2,$o=!1,Bo=e}}function Zo(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;Bo=e}function Vo(e){if(e!==Bo)return!1;if(!$o)return Zo(e),$o=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!Gr(t,e.memoizedProps))for(t=Uo;t;)qo(e,t),t=Wr(t.nextSibling);if(Zo(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Uo=Wr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Uo=null}}else Uo=Bo?Wr(e.stateNode.nextSibling):null;return!0}function Wo(){Uo=Bo=null,$o=!1}var Yo=[];function Qo(){for(var e=0;e<Yo.length;e++)Yo[e]._workInProgressVersionPrimary=null;Yo.length=0}var Ko=k.ReactCurrentDispatcher,Xo=k.ReactCurrentBatchConfig,Jo=0,ei=null,ti=null,ni=null,ri=!1,ai=!1;function oi(){throw Error(i(321))}function ii(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!cr(e[n],t[n]))return!1;return!0}function li(e,t,n,r,a,o){if(Jo=o,ei=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Ko.current=null===e||null===e.memoizedState?Oi:Di,e=n(r,a),ai){o=0;do{if(ai=!1,!(25>o))throw Error(i(301));o+=1,ni=ti=null,t.updateQueue=null,Ko.current=Ii,e=n(r,a)}while(ai)}if(Ko.current=Ni,t=null!==ti&&null!==ti.next,Jo=0,ni=ti=ei=null,ri=!1,t)throw Error(i(300));return e}function si(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ni?ei.memoizedState=ni=e:ni=ni.next=e,ni}function ui(){if(null===ti){var e=ei.alternate;e=null!==e?e.memoizedState:null}else e=ti.next;var t=null===ni?ei.memoizedState:ni.next;if(null!==t)ni=t,ti=e;else{if(null===e)throw Error(i(310));e={memoizedState:(ti=e).memoizedState,baseState:ti.baseState,baseQueue:ti.baseQueue,queue:ti.queue,next:null},null===ni?ei.memoizedState=ni=e:ni=ni.next=e}return ni}function ci(e,t){return"function"==typeof t?t(e):t}function di(e){var t=ui(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=ti,a=r.baseQueue,o=n.pending;if(null!==o){if(null!==a){var l=a.next;a.next=o.next,o.next=l}r.baseQueue=a=o,n.pending=null}if(null!==a){a=a.next,r=r.baseState;var s=l=o=null,u=a;do{var c=u.lane;if((Jo&c)===c)null!==s&&(s=s.next={lane:0,action:u.action,eagerReducer:u.eagerReducer,eagerState:u.eagerState,next:null}),r=u.eagerReducer===e?u.eagerState:e(r,u.action);else{var d={lane:c,action:u.action,eagerReducer:u.eagerReducer,eagerState:u.eagerState,next:null};null===s?(l=s=d,o=r):s=s.next=d,ei.lanes|=c,Ul|=c}u=u.next}while(null!==u&&u!==a);null===s?o=r:s.next=l,cr(r,t.memoizedState)||(zi=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=s,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function fi(e){var t=ui(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(null!==a){n.pending=null;var l=a=a.next;do{o=e(o,l.action),l=l.next}while(l!==a);cr(o,t.memoizedState)||(zi=!0),t.memoizedState=o,null===t.baseQueue&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function pi(e,t,n){var r=t._getVersion;r=r(t._source);var a=t._workInProgressVersionPrimary;if(null!==a?e=a===r:(e=e.mutableReadLanes,(e=(Jo&e)===e)&&(t._workInProgressVersionPrimary=r,Yo.push(t))),e)return n(t._source);throw Yo.push(t),Error(i(350))}function mi(e,t,n,r){var a=Ol;if(null===a)throw Error(i(349));var o=t._getVersion,l=o(t._source),s=Ko.current,u=s.useState((function(){return pi(a,t,n)})),c=u[1],d=u[0];u=ni;var f=e.memoizedState,p=f.refs,m=p.getSnapshot,h=f.source;f=f.subscribe;var g=ei;return e.memoizedState={refs:p,source:t,subscribe:r},s.useEffect((function(){p.getSnapshot=n,p.setSnapshot=c;var e=o(t._source);if(!cr(l,e)){e=n(t._source),cr(d,e)||(c(e),e=ps(g),a.mutableReadLanes|=e&a.pendingLanes),e=a.mutableReadLanes,a.entangledLanes|=e;for(var r=a.entanglements,i=e;0<i;){var s=31-Gt(i),u=1<<s;r[s]|=e,i&=~u}}}),[n,t,r]),s.useEffect((function(){return r(t._source,(function(){var e=p.getSnapshot,n=p.setSnapshot;try{n(e(t._source));var r=ps(g);a.mutableReadLanes|=r&a.pendingLanes}catch(o){n((function(){throw o}))}}))}),[t,r]),cr(m,n)&&cr(h,t)&&cr(f,r)||((e={pending:null,dispatch:null,lastRenderedReducer:ci,lastRenderedState:d}).dispatch=c=Pi.bind(null,ei,e),u.queue=e,u.baseQueue=null,d=pi(a,t,n),u.memoizedState=u.baseState=d),d}function hi(e,t,n){return mi(ui(),e,t,n)}function gi(e){var t=si();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:ci,lastRenderedState:e}).dispatch=Pi.bind(null,ei,e),[t.memoizedState,e]}function bi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=ei.updateQueue)?(t={lastEffect:null},ei.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function vi(e){return e={current:e},si().memoizedState=e}function yi(){return ui().memoizedState}function wi(e,t,n,r){var a=si();ei.flags|=e,a.memoizedState=bi(1|t,n,void 0,void 0===r?null:r)}function ki(e,t,n,r){var a=ui();r=void 0===r?null:r;var o=void 0;if(null!==ti){var i=ti.memoizedState;if(o=i.destroy,null!==r&&ii(r,i.deps))return void bi(t,n,o,r)}ei.flags|=e,a.memoizedState=bi(1|t,n,o,r)}function Ei(e,t){return wi(516,4,e,t)}function Si(e,t){return ki(516,4,e,t)}function xi(e,t){return ki(4,2,e,t)}function _i(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Ci(e,t,n){return n=null!=n?n.concat([e]):null,ki(4,2,_i.bind(null,t,e),n)}function Ti(){}function Li(e,t){var n=ui();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&ii(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ai(e,t){var n=ui();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&ii(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Ri(e,t){var n=Ga();Za(98>n?98:n,(function(){e(!0)})),Za(97<n?97:n,(function(){var n=Xo.transition;Xo.transition=1;try{e(!1),t()}finally{Xo.transition=n}}))}function Pi(e,t,n){var r=fs(),a=ps(e),o={lane:a,action:n,eagerReducer:null,eagerState:null,next:null},i=t.pending;if(null===i?o.next=o:(o.next=i.next,i.next=o),t.pending=o,i=e.alternate,e===ei||null!==i&&i===ei)ai=ri=!0;else{if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var l=t.lastRenderedState,s=i(l,n);if(o.eagerReducer=i,o.eagerState=s,cr(s,l))return}catch(u){}ms(e,a,r)}}var Ni={readContext:io,useCallback:oi,useContext:oi,useEffect:oi,useImperativeHandle:oi,useLayoutEffect:oi,useMemo:oi,useReducer:oi,useRef:oi,useState:oi,useDebugValue:oi,useDeferredValue:oi,useTransition:oi,useMutableSource:oi,useOpaqueIdentifier:oi,unstable_isNewReconciler:!1},Oi={readContext:io,useCallback:function(e,t){return si().memoizedState=[e,void 0===t?null:t],e},useContext:io,useEffect:Ei,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,wi(4,2,_i.bind(null,t,e),n)},useLayoutEffect:function(e,t){return wi(4,2,e,t)},useMemo:function(e,t){var n=si();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=si();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Pi.bind(null,ei,e),[r.memoizedState,e]},useRef:vi,useState:gi,useDebugValue:Ti,useDeferredValue:function(e){var t=gi(e),n=t[0],r=t[1];return Ei((function(){var t=Xo.transition;Xo.transition=1;try{r(e)}finally{Xo.transition=t}}),[e]),n},useTransition:function(){var e=gi(!1),t=e[0];return vi(e=Ri.bind(null,e[1])),[e,t]},useMutableSource:function(e,t,n){var r=si();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},mi(r,e,t,n)},useOpaqueIdentifier:function(){if($o){var e=!1,t=function(e){return{$$typeof:I,toString:e,valueOf:e}}((function(){throw e||(e=!0,n("r:"+(Qr++).toString(36))),Error(i(355))})),n=gi(t)[1];return 0==(2&ei.mode)&&(ei.flags|=516,bi(5,(function(){n("r:"+(Qr++).toString(36))}),void 0,null)),t}return gi(t="r:"+(Qr++).toString(36)),t},unstable_isNewReconciler:!1},Di={readContext:io,useCallback:Li,useContext:io,useEffect:Si,useImperativeHandle:Ci,useLayoutEffect:xi,useMemo:Ai,useReducer:di,useRef:yi,useState:function(){return di(ci)},useDebugValue:Ti,useDeferredValue:function(e){var t=di(ci),n=t[0],r=t[1];return Si((function(){var t=Xo.transition;Xo.transition=1;try{r(e)}finally{Xo.transition=t}}),[e]),n},useTransition:function(){var e=di(ci)[0];return[yi().current,e]},useMutableSource:hi,useOpaqueIdentifier:function(){return di(ci)[0]},unstable_isNewReconciler:!1},Ii={readContext:io,useCallback:Li,useContext:io,useEffect:Si,useImperativeHandle:Ci,useLayoutEffect:xi,useMemo:Ai,useReducer:fi,useRef:yi,useState:function(){return fi(ci)},useDebugValue:Ti,useDeferredValue:function(e){var t=fi(ci),n=t[0],r=t[1];return Si((function(){var t=Xo.transition;Xo.transition=1;try{r(e)}finally{Xo.transition=t}}),[e]),n},useTransition:function(){var e=fi(ci)[0];return[yi().current,e]},useMutableSource:hi,useOpaqueIdentifier:function(){return fi(ci)[0]},unstable_isNewReconciler:!1},Mi=k.ReactCurrentOwner,zi=!1;function Fi(e,t,n,r){t.child=null===e?Lo(t,null,n,r):To(t,e.child,n,r)}function ji(e,t,n,r,a){n=n.render;var o=t.ref;return oo(t,a),r=li(e,t,n,r,o,a),null===e||zi?(t.flags|=1,Fi(e,t,r,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,ol(e,t,a))}function Bi(e,t,n,r,a,o){if(null===e){var i=n.type;return"function"!=typeof i||Hs(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Vs(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,Ui(e,t,i,r,a,o))}return i=e.child,0==(a&o)&&(a=i.memoizedProps,(n=null!==(n=n.compare)?n:fr)(a,r)&&e.ref===t.ref)?ol(e,t,o):(t.flags|=1,(e=Zs(i,r)).ref=t.ref,e.return=t,t.child=e)}function Ui(e,t,n,r,a,o){if(null!==e&&fr(e.memoizedProps,r)&&e.ref===t.ref){if(zi=!1,0==(o&a))return t.lanes=e.lanes,ol(e,t,o);0!=(16384&e.flags)&&(zi=!0)}return Gi(e,t,n,r,o)}function $i(e,t,n){var r=t.pendingProps,a=r.children,o=null!==e?e.memoizedState:null;if("hidden"===r.mode||"unstable-defer-without-hiding"===r.mode)if(0==(4&t.mode))t.memoizedState={baseLanes:0},Es(t,n);else{if(0==(1073741824&n))return e=null!==o?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},Es(t,e),null;t.memoizedState={baseLanes:0},Es(t,null!==o?o.baseLanes:n)}else null!==o?(r=o.baseLanes|n,t.memoizedState=null):r=n,Es(t,r);return Fi(e,t,a,n),t.child}function qi(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=128)}function Gi(e,t,n,r,a){var o=ba(n)?ha:pa.current;return o=ga(t,o),oo(t,a),n=li(e,t,n,r,o,a),null===e||zi?(t.flags|=1,Fi(e,t,n,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,ol(e,t,a))}function Hi(e,t,n,r,a){if(ba(n)){var o=!0;ka(t)}else o=!1;if(oo(t,a),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),wo(t,n,r),Eo(t,n,r,a),r=!0;else if(null===e){var i=t.stateNode,l=t.memoizedProps;i.props=l;var s=i.context,u=n.contextType;"object"==typeof u&&null!==u?u=io(u):u=ga(t,u=ba(n)?ha:pa.current);var c=n.getDerivedStateFromProps,d="function"==typeof c||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==r||s!==u)&&ko(t,i,r,u),lo=!1;var f=t.memoizedState;i.state=f,mo(t,r,i,a),s=t.memoizedState,l!==r||f!==s||ma.current||lo?("function"==typeof c&&(bo(t,n,c,r),s=t.memoizedState),(l=lo||yo(t,n,l,r,f,s,u))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4)):("function"==typeof i.componentDidMount&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=s),i.props=r,i.state=s,i.context=u,r=l):("function"==typeof i.componentDidMount&&(t.flags|=4),r=!1)}else{i=t.stateNode,uo(e,t),l=t.memoizedProps,u=t.type===t.elementType?l:Ka(t.type,l),i.props=u,d=t.pendingProps,f=i.context,"object"==typeof(s=n.contextType)&&null!==s?s=io(s):s=ga(t,s=ba(n)?ha:pa.current);var p=n.getDerivedStateFromProps;(c="function"==typeof p||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==d||f!==s)&&ko(t,i,r,s),lo=!1,f=t.memoizedState,i.state=f,mo(t,r,i,a);var m=t.memoizedState;l!==d||f!==m||ma.current||lo?("function"==typeof p&&(bo(t,n,p,r),m=t.memoizedState),(u=lo||yo(t,n,u,r,f,m,s))?(c||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,m,s),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,m,s)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=256)):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=m),i.props=r,i.state=m,i.context=s,r=u):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&f===e.memoizedState||(t.flags|=256),r=!1)}return Zi(e,t,n,r,o,a)}function Zi(e,t,n,r,a,o){qi(e,t);var i=0!=(64&t.flags);if(!r&&!i)return a&&Ea(t,n,!1),ol(e,t,o);r=t.stateNode,Mi.current=t;var l=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=To(t,e.child,null,o),t.child=To(t,null,l,o)):Fi(e,t,l,o),t.memoizedState=r.state,a&&Ea(t,n,!0),t.child}function Vi(e){var t=e.stateNode;t.pendingContext?ya(0,t.pendingContext,t.pendingContext!==t.context):t.context&&ya(0,t.context,!1),Do(e,t.containerInfo)}var Wi,Yi,Qi,Ki={dehydrated:null,retryLane:0};function Xi(e,t,n){var r,a=t.pendingProps,o=Fo.current,i=!1;return(r=0!=(64&t.flags))||(r=(null===e||null!==e.memoizedState)&&0!=(2&o)),r?(i=!0,t.flags&=-65):null!==e&&null===e.memoizedState||void 0===a.fallback||!0===a.unstable_avoidThisFallback||(o|=1),da(Fo,1&o),null===e?(void 0!==a.fallback&&Ho(t),e=a.children,o=a.fallback,i?(e=Ji(t,e,o,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Ki,e):"number"==typeof a.unstable_expectedLoadTime?(e=Ji(t,e,o,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Ki,t.lanes=33554432,e):((n=Ys({mode:"visible",children:e},t.mode,n,null)).return=t,t.child=n)):(e.memoizedState,i?(a=tl(e,t,a.children,a.fallback,n),i=t.child,o=e.child.memoizedState,i.memoizedState=null===o?{baseLanes:n}:{baseLanes:o.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=Ki,a):(n=el(e,t,a.children,n),t.memoizedState=null,n))}function Ji(e,t,n,r){var a=e.mode,o=e.child;return t={mode:"hidden",children:t},0==(2&a)&&null!==o?(o.childLanes=0,o.pendingProps=t):o=Ys(t,a,0,null),n=Ws(n,a,r,null),o.return=e,n.return=e,o.sibling=n,e.child=o,n}function el(e,t,n,r){var a=e.child;return e=a.sibling,n=Zs(a,{mode:"visible",children:n}),0==(2&t.mode)&&(n.lanes=r),n.return=t,n.sibling=null,null!==e&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}function tl(e,t,n,r,a){var o=t.mode,i=e.child;e=i.sibling;var l={mode:"hidden",children:n};return 0==(2&o)&&t.child!==i?((n=t.child).childLanes=0,n.pendingProps=l,null!==(i=n.lastEffect)?(t.firstEffect=n.firstEffect,t.lastEffect=i,i.nextEffect=null):t.firstEffect=t.lastEffect=null):n=Zs(i,l),null!==e?r=Zs(e,r):(r=Ws(r,o,a,null)).flags|=2,r.return=t,n.return=t,n.sibling=r,t.child=n,r}function nl(e,t){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ao(e.return,t)}function rl(e,t,n,r,a,o){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a,lastEffect:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=a,i.lastEffect=o)}function al(e,t,n){var r=t.pendingProps,a=r.revealOrder,o=r.tail;if(Fi(e,t,r.children,n),0!=(2&(r=Fo.current)))r=1&r|2,t.flags|=64;else{if(null!==e&&0!=(64&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&nl(e,n);else if(19===e.tag)nl(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(da(Fo,r),0==(2&t.mode))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;null!==n;)null!==(e=n.alternate)&&null===jo(e)&&(a=n),n=n.sibling;null===(n=a)?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),rl(t,!1,a,n,o,t.lastEffect);break;case"backwards":for(n=null,a=t.child,t.child=null;null!==a;){if(null!==(e=a.alternate)&&null===jo(e)){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}rl(t,!0,n,null,o,t.lastEffect);break;case"together":rl(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function ol(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Ul|=t.lanes,0!=(n&t.childLanes)){if(null!==e&&t.child!==e.child)throw Error(i(153));if(null!==t.child){for(n=Zs(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Zs(e,e.pendingProps)).return=t;n.sibling=null}return t.child}return null}function il(e,t){if(!$o)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ll(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:case 17:return ba(t.type)&&va(),null;case 3:return Io(),ca(ma),ca(pa),Qo(),(r=t.stateNode).pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(Vo(t)?t.flags|=4:r.hydrate||(t.flags|=256)),null;case 5:zo(t);var o=Oo(No.current);if(n=t.type,null!==e&&null!=t.stateNode)Yi(e,t,n,r),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(null===t.stateNode)throw Error(i(166));return null}if(e=Oo(Ro.current),Vo(t)){r=t.stateNode,n=t.type;var l=t.memoizedProps;switch(r[Xr]=t,r[Jr]=l,n){case"dialog":Rr("cancel",r),Rr("close",r);break;case"iframe":case"object":case"embed":Rr("load",r);break;case"video":case"audio":for(e=0;e<Cr.length;e++)Rr(Cr[e],r);break;case"source":Rr("error",r);break;case"img":case"image":case"link":Rr("error",r),Rr("load",r);break;case"details":Rr("toggle",r);break;case"input":ee(r,l),Rr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!l.multiple},Rr("invalid",r);break;case"textarea":se(r,l),Rr("invalid",r)}for(var u in xe(n,l),e=null,l)l.hasOwnProperty(u)&&(o=l[u],"children"===u?"string"==typeof o?r.textContent!==o&&(e=["children",o]):"number"==typeof o&&r.textContent!==""+o&&(e=["children",""+o]):s.hasOwnProperty(u)&&null!=o&&"onScroll"===u&&Rr("scroll",r));switch(n){case"input":Q(r),re(r,l,!0);break;case"textarea":Q(r),ce(r);break;case"select":case"option":break;default:"function"==typeof l.onClick&&(r.onclick=Br)}r=e,t.updateQueue=r,null!==r&&(t.flags|=4)}else{switch(u=9===o.nodeType?o:o.ownerDocument,e===de&&(e=pe(n)),e===de?"script"===n?((e=u.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=u.createElement(n,{is:r.is}):(e=u.createElement(n),"select"===n&&(u=e,r.multiple?u.multiple=!0:r.size&&(u.size=r.size))):e=u.createElementNS(e,n),e[Xr]=t,e[Jr]=r,Wi(e,t),t.stateNode=e,u=_e(n,r),n){case"dialog":Rr("cancel",e),Rr("close",e),o=r;break;case"iframe":case"object":case"embed":Rr("load",e),o=r;break;case"video":case"audio":for(o=0;o<Cr.length;o++)Rr(Cr[o],e);o=r;break;case"source":Rr("error",e),o=r;break;case"img":case"image":case"link":Rr("error",e),Rr("load",e),o=r;break;case"details":Rr("toggle",e),o=r;break;case"input":ee(e,r),o=J(e,r),Rr("invalid",e);break;case"option":o=oe(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=a({},r,{value:void 0}),Rr("invalid",e);break;case"textarea":se(e,r),o=le(e,r),Rr("invalid",e);break;default:o=r}xe(n,o);var c=o;for(l in c)if(c.hasOwnProperty(l)){var d=c[l];"style"===l?Ee(e,d):"dangerouslySetInnerHTML"===l?null!=(d=d?d.__html:void 0)&&be(e,d):"children"===l?"string"==typeof d?("textarea"!==n||""!==d)&&ve(e,d):"number"==typeof d&&ve(e,""+d):"suppressContentEditableWarning"!==l&&"suppressHydrationWarning"!==l&&"autoFocus"!==l&&(s.hasOwnProperty(l)?null!=d&&"onScroll"===l&&Rr("scroll",e):null!=d&&w(e,l,d,u))}switch(n){case"input":Q(e),re(e,r,!1);break;case"textarea":Q(e),ce(e);break;case"option":null!=r.value&&e.setAttribute("value",""+W(r.value));break;case"select":e.multiple=!!r.multiple,null!=(l=r.value)?ie(e,!!r.multiple,l,!1):null!=r.defaultValue&&ie(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=Br)}qr(n,r)&&(t.flags|=4)}null!==t.ref&&(t.flags|=128)}return null;case 6:if(e&&null!=t.stateNode)Qi(0,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(i(166));n=Oo(No.current),Oo(Ro.current),Vo(t)?(r=t.stateNode,n=t.memoizedProps,r[Xr]=t,r.nodeValue!==n&&(t.flags|=4)):((r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[Xr]=t,t.stateNode=r)}return null;case 13:return ca(Fo),r=t.memoizedState,0!=(64&t.flags)?(t.lanes=n,t):(r=null!==r,n=!1,null===e?void 0!==t.memoizedProps.fallback&&Vo(t):n=null!==e.memoizedState,r&&!n&&0!=(2&t.mode)&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&Fo.current)?0===Fl&&(Fl=3):(0!==Fl&&3!==Fl||(Fl=4),null===Ol||0==(134217727&Ul)&&0==(134217727&$l)||vs(Ol,Il))),(r||n)&&(t.flags|=4),null);case 4:return Io(),null===e&&Nr(t.stateNode.containerInfo),null;case 10:return ro(t),null;case 19:if(ca(Fo),null===(r=t.memoizedState))return null;if(l=0!=(64&t.flags),null===(u=r.rendering))if(l)il(r,!1);else{if(0!==Fl||null!==e&&0!=(64&e.flags))for(e=t.child;null!==e;){if(null!==(u=jo(e))){for(t.flags|=64,il(r,!1),null!==(l=u.updateQueue)&&(t.updateQueue=l,t.flags|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;null!==n;)e=r,(l=n).flags&=2,l.nextEffect=null,l.firstEffect=null,l.lastEffect=null,null===(u=l.alternate)?(l.childLanes=0,l.lanes=e,l.child=null,l.memoizedProps=null,l.memoizedState=null,l.updateQueue=null,l.dependencies=null,l.stateNode=null):(l.childLanes=u.childLanes,l.lanes=u.lanes,l.child=u.child,l.memoizedProps=u.memoizedProps,l.memoizedState=u.memoizedState,l.updateQueue=u.updateQueue,l.type=u.type,e=u.dependencies,l.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return da(Fo,1&Fo.current|2),t.child}e=e.sibling}null!==r.tail&&qa()>Zl&&(t.flags|=64,l=!0,il(r,!1),t.lanes=33554432)}else{if(!l)if(null!==(e=jo(u))){if(t.flags|=64,l=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),il(r,!0),null===r.tail&&"hidden"===r.tailMode&&!u.alternate&&!$o)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*qa()-r.renderingStartTime>Zl&&1073741824!==n&&(t.flags|=64,l=!0,il(r,!1),t.lanes=33554432);r.isBackwards?(u.sibling=t.child,t.child=u):(null!==(n=r.last)?n.sibling=u:t.child=u,r.last=u)}return null!==r.tail?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=qa(),n.sibling=null,t=Fo.current,da(Fo,l?1&t|2:1&t),n):null;case 23:case 24:return Ss(),null!==e&&null!==e.memoizedState!=(null!==t.memoizedState)&&"unstable-defer-without-hiding"!==r.mode&&(t.flags|=4),null}throw Error(i(156,t.tag))}function sl(e){switch(e.tag){case 1:ba(e.type)&&va();var t=e.flags;return 4096&t?(e.flags=-4097&t|64,e):null;case 3:if(Io(),ca(ma),ca(pa),Qo(),0!=(64&(t=e.flags)))throw Error(i(285));return e.flags=-4097&t|64,e;case 5:return zo(e),null;case 13:return ca(Fo),4096&(t=e.flags)?(e.flags=-4097&t|64,e):null;case 19:return ca(Fo),null;case 4:return Io(),null;case 10:return ro(e),null;case 23:case 24:return Ss(),null;default:return null}}function ul(e,t){try{var n="",r=t;do{n+=Z(r),r=r.return}while(r);var a=n}catch(o){a="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:a}}function cl(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}Wi=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Yi=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,Oo(Ro.current);var i,l=null;switch(n){case"input":o=J(e,o),r=J(e,r),l=[];break;case"option":o=oe(e,o),r=oe(e,r),l=[];break;case"select":o=a({},o,{value:void 0}),r=a({},r,{value:void 0}),l=[];break;case"textarea":o=le(e,o),r=le(e,r),l=[];break;default:"function"!=typeof o.onClick&&"function"==typeof r.onClick&&(e.onclick=Br)}for(d in xe(n,r),n=null,o)if(!r.hasOwnProperty(d)&&o.hasOwnProperty(d)&&null!=o[d])if("style"===d){var u=o[d];for(i in u)u.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==d&&"children"!==d&&"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&"autoFocus"!==d&&(s.hasOwnProperty(d)?l||(l=[]):(l=l||[]).push(d,null));for(d in r){var c=r[d];if(u=null!=o?o[d]:void 0,r.hasOwnProperty(d)&&c!==u&&(null!=c||null!=u))if("style"===d)if(u){for(i in u)!u.hasOwnProperty(i)||c&&c.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in c)c.hasOwnProperty(i)&&u[i]!==c[i]&&(n||(n={}),n[i]=c[i])}else n||(l||(l=[]),l.push(d,n)),n=c;else"dangerouslySetInnerHTML"===d?(c=c?c.__html:void 0,u=u?u.__html:void 0,null!=c&&u!==c&&(l=l||[]).push(d,c)):"children"===d?"string"!=typeof c&&"number"!=typeof c||(l=l||[]).push(d,""+c):"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&(s.hasOwnProperty(d)?(null!=c&&"onScroll"===d&&Rr("scroll",e),l||u===c||(l=[])):"object"==typeof c&&null!==c&&c.$$typeof===I?c.toString():(l=l||[]).push(d,c))}n&&(l=l||[]).push("style",n);var d=l;(t.updateQueue=d)&&(t.flags|=4)}},Qi=function(e,t,n,r){n!==r&&(t.flags|=4)};var dl="function"==typeof WeakMap?WeakMap:Map;function fl(e,t,n){(n=co(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Ql||(Ql=!0,Kl=r),cl(0,t)},n}function pl(e,t,n){(n=co(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var a=t.value;n.payload=function(){return cl(0,t),r(a)}}var o=e.stateNode;return null!==o&&"function"==typeof o.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===Xl?Xl=new Set([this]):Xl.add(this),cl(0,t));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}var ml="function"==typeof WeakSet?WeakSet:Set;function hl(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(n){Bs(e,n)}else t.current=null}function gl(e,t){switch(t.tag){case 0:case 11:case 15:case 22:case 5:case 6:case 4:case 17:return;case 1:if(256&t.flags&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:Ka(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:return void(256&t.flags&&Vr(t.stateNode.containerInfo))}throw Error(i(163))}function bl(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{if(3==(3&e.tag)){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{var a=e;r=a.next,0!=(4&(a=a.tag))&&0!=(1&a)&&(zs(n,e),Ms(n,e)),e=r}while(e!==t)}return;case 1:return e=n.stateNode,4&n.flags&&(null===t?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:Ka(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),void(null!==(t=n.updateQueue)&&ho(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:case 1:e=n.child.stateNode}ho(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.flags&&qr(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:case 19:case 17:case 20:case 21:case 23:case 24:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&Et(n)))))}throw Error(i(163))}function vl(e,t){for(var n=e;;){if(5===n.tag){var r=n.stateNode;if(t)"function"==typeof(r=r.style).setProperty?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var a=n.memoizedProps.style;a=null!=a&&a.hasOwnProperty("display")?a.display:null,r.style.display=ke("display",a)}}else if(6===n.tag)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((23!==n.tag&&24!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function yl(e,t){if(xa&&"function"==typeof xa.onCommitFiberUnmount)try{xa.onCommitFiberUnmount(Sa,t)}catch(o){}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var n=e=e.next;do{var r=n,a=r.destroy;if(r=r.tag,void 0!==a)if(0!=(4&r))zs(t,n);else{r=t;try{a()}catch(o){Bs(r,o)}}n=n.next}while(n!==e)}break;case 1:if(hl(t),"function"==typeof(e=t.stateNode).componentWillUnmount)try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(o){Bs(t,o)}break;case 5:hl(t);break;case 4:_l(e,t)}}function wl(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function kl(e){return 5===e.tag||3===e.tag||4===e.tag}function El(e){e:{for(var t=e.return;null!==t;){if(kl(t))break e;t=t.return}throw Error(i(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(i(161))}16&n.flags&&(ve(t,""),n.flags&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||kl(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.flags)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.flags)){n=n.stateNode;break e}}r?Sl(e,n,t):xl(e,n,t)}function Sl(e,t,n){var r=e.tag,a=5===r||6===r;if(a)e=a?e.stateNode:e.stateNode.instance,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Br));else if(4!==r&&null!==(e=e.child))for(Sl(e,t,n),e=e.sibling;null!==e;)Sl(e,t,n),e=e.sibling}function xl(e,t,n){var r=e.tag,a=5===r||6===r;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(xl(e,t,n),e=e.sibling;null!==e;)xl(e,t,n),e=e.sibling}function _l(e,t){for(var n,r,a=t,o=!1;;){if(!o){o=a.return;e:for(;;){if(null===o)throw Error(i(160));switch(n=o.stateNode,o.tag){case 5:r=!1;break e;case 3:case 4:n=n.containerInfo,r=!0;break e}o=o.return}o=!0}if(5===a.tag||6===a.tag){e:for(var l=e,s=a,u=s;;)if(yl(l,u),null!==u.child&&4!==u.tag)u.child.return=u,u=u.child;else{if(u===s)break e;for(;null===u.sibling;){if(null===u.return||u.return===s)break e;u=u.return}u.sibling.return=u.return,u=u.sibling}r?(l=n,s=a.stateNode,8===l.nodeType?l.parentNode.removeChild(s):l.removeChild(s)):n.removeChild(a.stateNode)}else if(4===a.tag){if(null!==a.child){n=a.stateNode.containerInfo,r=!0,a.child.return=a,a=a.child;continue}}else if(yl(e,a),null!==a.child){a.child.return=a,a=a.child;continue}if(a===t)break;for(;null===a.sibling;){if(null===a.return||a.return===t)return;4===(a=a.return).tag&&(o=!1)}a.sibling.return=a.return,a=a.sibling}}function Cl(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var r=n=n.next;do{3==(3&r.tag)&&(e=r.destroy,r.destroy=void 0,void 0!==e&&e()),r=r.next}while(r!==n)}return;case 1:case 12:case 17:return;case 5:if(null!=(n=t.stateNode)){r=t.memoizedProps;var a=null!==e?e.memoizedProps:r;e=t.type;var o=t.updateQueue;if(t.updateQueue=null,null!==o){for(n[Jr]=r,"input"===e&&"radio"===r.type&&null!=r.name&&te(n,r),_e(e,a),t=_e(e,r),a=0;a<o.length;a+=2){var l=o[a],s=o[a+1];"style"===l?Ee(n,s):"dangerouslySetInnerHTML"===l?be(n,s):"children"===l?ve(n,s):w(n,l,s,t)}switch(e){case"input":ne(n,r);break;case"textarea":ue(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(o=r.value)?ie(n,!!r.multiple,o,!1):e!==!!r.multiple&&(null!=r.defaultValue?ie(n,!!r.multiple,r.defaultValue,!0):ie(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(i(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((n=t.stateNode).hydrate&&(n.hydrate=!1,Et(n.containerInfo)));case 13:return null!==t.memoizedState&&(Hl=qa(),vl(t.child,!0)),void Tl(t);case 19:return void Tl(t);case 23:case 24:return void vl(t,null!==t.memoizedState)}throw Error(i(163))}function Tl(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new ml),t.forEach((function(t){var r=$s.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function Ll(e,t){return null!==e&&(null===(e=e.memoizedState)||null!==e.dehydrated)&&(null!==(t=t.memoizedState)&&null===t.dehydrated)}var Al=Math.ceil,Rl=k.ReactCurrentDispatcher,Pl=k.ReactCurrentOwner,Nl=0,Ol=null,Dl=null,Il=0,Ml=0,zl=ua(0),Fl=0,jl=null,Bl=0,Ul=0,$l=0,ql=0,Gl=null,Hl=0,Zl=1/0;function Vl(){Zl=qa()+500}var Wl,Yl=null,Ql=!1,Kl=null,Xl=null,Jl=!1,es=null,ts=90,ns=[],rs=[],as=null,os=0,is=null,ls=-1,ss=0,us=0,cs=null,ds=!1;function fs(){return 0!=(48&Nl)?qa():-1!==ls?ls:ls=qa()}function ps(e){if(0==(2&(e=e.mode)))return 1;if(0==(4&e))return 99===Ga()?1:2;if(0===ss&&(ss=Bl),0!==Qa.transition){0!==us&&(us=null!==Gl?Gl.pendingLanes:0),e=ss;var t=4186112&~us;return 0===(t&=-t)&&(0===(t=(e=4186112&~e)&-e)&&(t=8192)),t}return e=Ga(),0!=(4&Nl)&&98===e?e=Bt(12,ss):e=Bt(e=function(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}(e),ss),e}function ms(e,t,n){if(50<os)throw os=0,is=null,Error(i(185));if(null===(e=hs(e,t)))return null;qt(e,t,n),e===Ol&&($l|=t,4===Fl&&vs(e,Il));var r=Ga();1===t?0!=(8&Nl)&&0==(48&Nl)?ys(e):(gs(e,n),0===Nl&&(Vl(),Wa())):(0==(4&Nl)||98!==r&&99!==r||(null===as?as=new Set([e]):as.add(e)),gs(e,n)),Gl=e}function hs(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}function gs(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,l=e.pendingLanes;0<l;){var s=31-Gt(l),u=1<<s,c=o[s];if(-1===c){if(0==(u&r)||0!=(u&a)){c=t,zt(u);var d=Mt;o[s]=10<=d?c+250:6<=d?c+5e3:-1}}else c<=t&&(e.expiredLanes|=u);l&=~u}if(r=Ft(e,e===Ol?Il:0),t=Mt,0===r)null!==n&&(n!==za&&Ta(n),e.callbackNode=null,e.callbackPriority=0);else{if(null!==n){if(e.callbackPriority===t)return;n!==za&&Ta(n)}15===t?(n=ys.bind(null,e),null===ja?(ja=[n],Ba=Ca(Na,Ya)):ja.push(n),n=za):14===t?n=Va(99,ys.bind(null,e)):(n=function(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(i(358,e))}}(t),n=Va(n,bs.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function bs(e){if(ls=-1,us=ss=0,0!=(48&Nl))throw Error(i(327));var t=e.callbackNode;if(Is()&&e.callbackNode!==t)return null;var n=Ft(e,e===Ol?Il:0);if(0===n)return null;var r=n,a=Nl;Nl|=16;var o=Cs();for(Ol===e&&Il===r||(Vl(),xs(e,r));;)try{As();break}catch(s){_s(e,s)}if(no(),Rl.current=o,Nl=a,null!==Dl?r=0:(Ol=null,Il=0,r=Fl),0!=(Bl&$l))xs(e,0);else if(0!==r){if(2===r&&(Nl|=64,e.hydrate&&(e.hydrate=!1,Vr(e.containerInfo)),0!==(n=jt(e))&&(r=Ts(e,n))),1===r)throw t=jl,xs(e,0),vs(e,n),gs(e,qa()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(i(345));case 2:case 5:Ns(e);break;case 3:if(vs(e,n),(62914560&n)===n&&10<(r=Hl+500-qa())){if(0!==Ft(e,0))break;if(((a=e.suspendedLanes)&n)!==n){fs(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Hr(Ns.bind(null,e),r);break}Ns(e);break;case 4:if(vs(e,n),(4186112&n)===n)break;for(r=e.eventTimes,a=-1;0<n;){var l=31-Gt(n);o=1<<l,(l=r[l])>a&&(a=l),n&=~o}if(n=a,10<(n=(120>(n=qa()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Al(n/1960))-n)){e.timeoutHandle=Hr(Ns.bind(null,e),n);break}Ns(e);break;default:throw Error(i(329))}}return gs(e,qa()),e.callbackNode===t?bs.bind(null,e):null}function vs(e,t){for(t&=~ql,t&=~$l,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Gt(t),r=1<<n;e[n]=-1,t&=~r}}function ys(e){if(0!=(48&Nl))throw Error(i(327));if(Is(),e===Ol&&0!=(e.expiredLanes&Il)){var t=Il,n=Ts(e,t);0!=(Bl&$l)&&(n=Ts(e,t=Ft(e,t)))}else n=Ts(e,t=Ft(e,0));if(0!==e.tag&&2===n&&(Nl|=64,e.hydrate&&(e.hydrate=!1,Vr(e.containerInfo)),0!==(t=jt(e))&&(n=Ts(e,t))),1===n)throw n=jl,xs(e,0),vs(e,t),gs(e,qa()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,Ns(e),gs(e,qa()),null}function ws(e,t){var n=Nl;Nl|=1;try{return e(t)}finally{0===(Nl=n)&&(Vl(),Wa())}}function ks(e,t){var n=Nl;Nl&=-2,Nl|=8;try{return e(t)}finally{0===(Nl=n)&&(Vl(),Wa())}}function Es(e,t){da(zl,Ml),Ml|=t,Bl|=t}function Ss(){Ml=zl.current,ca(zl)}function xs(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,Zr(n)),null!==Dl)for(n=Dl.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&va();break;case 3:Io(),ca(ma),ca(pa),Qo();break;case 5:zo(r);break;case 4:Io();break;case 13:case 19:ca(Fo);break;case 10:ro(r);break;case 23:case 24:Ss()}n=n.return}Ol=e,Dl=Zs(e.current,null),Il=Ml=Bl=t,Fl=0,jl=null,ql=$l=Ul=0}function _s(e,t){for(;;){var n=Dl;try{if(no(),Ko.current=Ni,ri){for(var r=ei.memoizedState;null!==r;){var a=r.queue;null!==a&&(a.pending=null),r=r.next}ri=!1}if(Jo=0,ni=ti=ei=null,ai=!1,Pl.current=null,null===n||null===n.return){Fl=1,jl=t,Dl=null;break}e:{var o=e,i=n.return,l=n,s=t;if(t=Il,l.flags|=2048,l.firstEffect=l.lastEffect=null,null!==s&&"object"==typeof s&&"function"==typeof s.then){var u=s;if(0==(2&l.mode)){var c=l.alternate;c?(l.updateQueue=c.updateQueue,l.memoizedState=c.memoizedState,l.lanes=c.lanes):(l.updateQueue=null,l.memoizedState=null)}var d=0!=(1&Fo.current),f=i;do{var p;if(p=13===f.tag){var m=f.memoizedState;if(null!==m)p=null!==m.dehydrated;else{var h=f.memoizedProps;p=void 0!==h.fallback&&(!0!==h.unstable_avoidThisFallback||!d)}}if(p){var g=f.updateQueue;if(null===g){var b=new Set;b.add(u),f.updateQueue=b}else g.add(u);if(0==(2&f.mode)){if(f.flags|=64,l.flags|=16384,l.flags&=-2981,1===l.tag)if(null===l.alternate)l.tag=17;else{var v=co(-1,1);v.tag=2,fo(l,v)}l.lanes|=1;break e}s=void 0,l=t;var y=o.pingCache;if(null===y?(y=o.pingCache=new dl,s=new Set,y.set(u,s)):void 0===(s=y.get(u))&&(s=new Set,y.set(u,s)),!s.has(l)){s.add(l);var w=Us.bind(null,o,u,l);u.then(w,w)}f.flags|=4096,f.lanes=t;break e}f=f.return}while(null!==f);s=Error((V(l.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")}5!==Fl&&(Fl=2),s=ul(s,l),f=i;do{switch(f.tag){case 3:o=s,f.flags|=4096,t&=-t,f.lanes|=t,po(f,fl(0,o,t));break e;case 1:o=s;var k=f.type,E=f.stateNode;if(0==(64&f.flags)&&("function"==typeof k.getDerivedStateFromError||null!==E&&"function"==typeof E.componentDidCatch&&(null===Xl||!Xl.has(E)))){f.flags|=4096,t&=-t,f.lanes|=t,po(f,pl(f,o,t));break e}}f=f.return}while(null!==f)}Ps(n)}catch(S){t=S,Dl===n&&null!==n&&(Dl=n=n.return);continue}break}}function Cs(){var e=Rl.current;return Rl.current=Ni,null===e?Ni:e}function Ts(e,t){var n=Nl;Nl|=16;var r=Cs();for(Ol===e&&Il===t||xs(e,t);;)try{Ls();break}catch(a){_s(e,a)}if(no(),Nl=n,Rl.current=r,null!==Dl)throw Error(i(261));return Ol=null,Il=0,Fl}function Ls(){for(;null!==Dl;)Rs(Dl)}function As(){for(;null!==Dl&&!La();)Rs(Dl)}function Rs(e){var t=Wl(e.alternate,e,Ml);e.memoizedProps=e.pendingProps,null===t?Ps(e):Dl=t,Pl.current=null}function Ps(e){var t=e;do{var n=t.alternate;if(e=t.return,0==(2048&t.flags)){if(null!==(n=ll(n,t,Ml)))return void(Dl=n);if(24!==(n=t).tag&&23!==n.tag||null===n.memoizedState||0!=(1073741824&Ml)||0==(4&n.mode)){for(var r=0,a=n.child;null!==a;)r|=a.lanes|a.childLanes,a=a.sibling;n.childLanes=r}null!==e&&0==(2048&e.flags)&&(null===e.firstEffect&&(e.firstEffect=t.firstEffect),null!==t.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(null!==e.lastEffect?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}else{if(null!==(n=sl(t)))return n.flags&=2047,void(Dl=n);null!==e&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}if(null!==(t=t.sibling))return void(Dl=t);Dl=t=e}while(null!==t);0===Fl&&(Fl=5)}function Ns(e){var t=Ga();return Za(99,Os.bind(null,e,t)),null}function Os(e,t){do{Is()}while(null!==es);if(0!=(48&Nl))throw Error(i(327));var n=e.finishedWork;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null;var r=n.lanes|n.childLanes,a=r,o=e.pendingLanes&~a;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=a,e.mutableReadLanes&=a,e.entangledLanes&=a,a=e.entanglements;for(var l=e.eventTimes,s=e.expirationTimes;0<o;){var u=31-Gt(o),c=1<<u;a[u]=0,l[u]=-1,s[u]=-1,o&=~c}if(null!==as&&0==(24&r)&&as.has(e)&&as.delete(e),e===Ol&&(Dl=Ol=null,Il=0),1<n.flags?null!==n.lastEffect?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,null!==r){if(a=Nl,Nl|=32,Pl.current=null,Ur=Yt,br(l=gr())){if("selectionStart"in l)s={start:l.selectionStart,end:l.selectionEnd};else e:if(s=(s=l.ownerDocument)&&s.defaultView||window,(c=s.getSelection&&s.getSelection())&&0!==c.rangeCount){s=c.anchorNode,o=c.anchorOffset,u=c.focusNode,c=c.focusOffset;try{s.nodeType,u.nodeType}catch(C){s=null;break e}var d=0,f=-1,p=-1,m=0,h=0,g=l,b=null;t:for(;;){for(var v;g!==s||0!==o&&3!==g.nodeType||(f=d+o),g!==u||0!==c&&3!==g.nodeType||(p=d+c),3===g.nodeType&&(d+=g.nodeValue.length),null!==(v=g.firstChild);)b=g,g=v;for(;;){if(g===l)break t;if(b===s&&++m===o&&(f=d),b===u&&++h===c&&(p=d),null!==(v=g.nextSibling))break;b=(g=b).parentNode}g=v}s=-1===f||-1===p?null:{start:f,end:p}}else s=null;s=s||{start:0,end:0}}else s=null;$r={focusedElem:l,selectionRange:s},Yt=!1,cs=null,ds=!1,Yl=r;do{try{Ds()}catch(C){if(null===Yl)throw Error(i(330));Bs(Yl,C),Yl=Yl.nextEffect}}while(null!==Yl);cs=null,Yl=r;do{try{for(l=e;null!==Yl;){var y=Yl.flags;if(16&y&&ve(Yl.stateNode,""),128&y){var w=Yl.alternate;if(null!==w){var k=w.ref;null!==k&&("function"==typeof k?k(null):k.current=null)}}switch(1038&y){case 2:El(Yl),Yl.flags&=-3;break;case 6:El(Yl),Yl.flags&=-3,Cl(Yl.alternate,Yl);break;case 1024:Yl.flags&=-1025;break;case 1028:Yl.flags&=-1025,Cl(Yl.alternate,Yl);break;case 4:Cl(Yl.alternate,Yl);break;case 8:_l(l,s=Yl);var E=s.alternate;wl(s),null!==E&&wl(E)}Yl=Yl.nextEffect}}catch(C){if(null===Yl)throw Error(i(330));Bs(Yl,C),Yl=Yl.nextEffect}}while(null!==Yl);if(k=$r,w=gr(),y=k.focusedElem,l=k.selectionRange,w!==y&&y&&y.ownerDocument&&hr(y.ownerDocument.documentElement,y)){null!==l&&br(y)&&(w=l.start,void 0===(k=l.end)&&(k=w),"selectionStart"in y?(y.selectionStart=w,y.selectionEnd=Math.min(k,y.value.length)):(k=(w=y.ownerDocument||document)&&w.defaultView||window).getSelection&&(k=k.getSelection(),s=y.textContent.length,E=Math.min(l.start,s),l=void 0===l.end?E:Math.min(l.end,s),!k.extend&&E>l&&(s=l,l=E,E=s),s=mr(y,E),o=mr(y,l),s&&o&&(1!==k.rangeCount||k.anchorNode!==s.node||k.anchorOffset!==s.offset||k.focusNode!==o.node||k.focusOffset!==o.offset)&&((w=w.createRange()).setStart(s.node,s.offset),k.removeAllRanges(),E>l?(k.addRange(w),k.extend(o.node,o.offset)):(w.setEnd(o.node,o.offset),k.addRange(w))))),w=[];for(k=y;k=k.parentNode;)1===k.nodeType&&w.push({element:k,left:k.scrollLeft,top:k.scrollTop});for("function"==typeof y.focus&&y.focus(),y=0;y<w.length;y++)(k=w[y]).element.scrollLeft=k.left,k.element.scrollTop=k.top}Yt=!!Ur,$r=Ur=null,e.current=n,Yl=r;do{try{for(y=e;null!==Yl;){var S=Yl.flags;if(36&S&&bl(y,Yl.alternate,Yl),128&S){w=void 0;var x=Yl.ref;if(null!==x){var _=Yl.stateNode;Yl.tag,w=_,"function"==typeof x?x(w):x.current=w}}Yl=Yl.nextEffect}}catch(C){if(null===Yl)throw Error(i(330));Bs(Yl,C),Yl=Yl.nextEffect}}while(null!==Yl);Yl=null,Fa(),Nl=a}else e.current=n;if(Jl)Jl=!1,es=e,ts=t;else for(Yl=r;null!==Yl;)t=Yl.nextEffect,Yl.nextEffect=null,8&Yl.flags&&((S=Yl).sibling=null,S.stateNode=null),Yl=t;if(0===(r=e.pendingLanes)&&(Xl=null),1===r?e===is?os++:(os=0,is=e):os=0,n=n.stateNode,xa&&"function"==typeof xa.onCommitFiberRoot)try{xa.onCommitFiberRoot(Sa,n,void 0,64==(64&n.current.flags))}catch(C){}if(gs(e,qa()),Ql)throw Ql=!1,e=Kl,Kl=null,e;return 0!=(8&Nl)||Wa(),null}function Ds(){for(;null!==Yl;){var e=Yl.alternate;ds||null===cs||(0!=(8&Yl.flags)?et(Yl,cs)&&(ds=!0):13===Yl.tag&&Ll(e,Yl)&&et(Yl,cs)&&(ds=!0));var t=Yl.flags;0!=(256&t)&&gl(e,Yl),0==(512&t)||Jl||(Jl=!0,Va(97,(function(){return Is(),null}))),Yl=Yl.nextEffect}}function Is(){if(90!==ts){var e=97<ts?97:ts;return ts=90,Za(e,Fs)}return!1}function Ms(e,t){ns.push(t,e),Jl||(Jl=!0,Va(97,(function(){return Is(),null})))}function zs(e,t){rs.push(t,e),Jl||(Jl=!0,Va(97,(function(){return Is(),null})))}function Fs(){if(null===es)return!1;var e=es;if(es=null,0!=(48&Nl))throw Error(i(331));var t=Nl;Nl|=32;var n=rs;rs=[];for(var r=0;r<n.length;r+=2){var a=n[r],o=n[r+1],l=a.destroy;if(a.destroy=void 0,"function"==typeof l)try{l()}catch(u){if(null===o)throw Error(i(330));Bs(o,u)}}for(n=ns,ns=[],r=0;r<n.length;r+=2){a=n[r],o=n[r+1];try{var s=a.create;a.destroy=s()}catch(u){if(null===o)throw Error(i(330));Bs(o,u)}}for(s=e.current.firstEffect;null!==s;)e=s.nextEffect,s.nextEffect=null,8&s.flags&&(s.sibling=null,s.stateNode=null),s=e;return Nl=t,Wa(),!0}function js(e,t,n){fo(e,t=fl(0,t=ul(n,t),1)),t=fs(),null!==(e=hs(e,1))&&(qt(e,1,t),gs(e,t))}function Bs(e,t){if(3===e.tag)js(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){js(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Xl||!Xl.has(r))){var a=pl(n,e=ul(t,e),1);if(fo(n,a),a=fs(),null!==(n=hs(n,1)))qt(n,1,a),gs(n,a);else if("function"==typeof r.componentDidCatch&&(null===Xl||!Xl.has(r)))try{r.componentDidCatch(t,e)}catch(o){}break}}n=n.return}}function Us(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=fs(),e.pingedLanes|=e.suspendedLanes&n,Ol===e&&(Il&n)===n&&(4===Fl||3===Fl&&(62914560&Il)===Il&&500>qa()-Hl?xs(e,0):ql|=n),gs(e,t)}function $s(e,t){var n=e.stateNode;null!==n&&n.delete(t),0===(t=0)&&(0==(2&(t=e.mode))?t=1:0==(4&t)?t=99===Ga()?1:2:(0===ss&&(ss=Bl),0===(t=Ut(62914560&~ss))&&(t=4194304))),n=fs(),null!==(e=hs(e,t))&&(qt(e,t,n),gs(e,n))}function qs(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Gs(e,t,n,r){return new qs(e,t,n,r)}function Hs(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Zs(e,t){var n=e.alternate;return null===n?((n=Gs(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Vs(e,t,n,r,a,o){var l=2;if(r=e,"function"==typeof e)Hs(e)&&(l=1);else if("string"==typeof e)l=5;else e:switch(e){case x:return Ws(n.children,a,o,t);case M:l=8,a|=16;break;case _:l=8,a|=1;break;case C:return(e=Gs(12,n,t,8|a)).elementType=C,e.type=C,e.lanes=o,e;case R:return(e=Gs(13,n,t,a)).type=R,e.elementType=R,e.lanes=o,e;case P:return(e=Gs(19,n,t,a)).elementType=P,e.lanes=o,e;case z:return Ys(n,a,o,t);case F:return(e=Gs(24,n,t,a)).elementType=F,e.lanes=o,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case T:l=10;break e;case L:l=9;break e;case A:l=11;break e;case N:l=14;break e;case O:l=16,r=null;break e;case D:l=22;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Gs(l,n,t,a)).elementType=e,t.type=r,t.lanes=o,t}function Ws(e,t,n,r){return(e=Gs(7,e,r,t)).lanes=n,e}function Ys(e,t,n,r){return(e=Gs(23,e,r,t)).elementType=z,e.lanes=n,e}function Qs(e,t,n){return(e=Gs(6,e,null,t)).lanes=n,e}function Ks(e,t,n){return(t=Gs(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Xs(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=$t(0),this.expirationTimes=$t(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=$t(0),this.mutableSourceEagerHydrationData=null}function Js(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:S,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}function eu(e,t,n,r){var a=t.current,o=fs(),l=ps(a);e:if(n){t:{if(Qe(n=n._reactInternals)!==n||1!==n.tag)throw Error(i(170));var s=n;do{switch(s.tag){case 3:s=s.stateNode.context;break t;case 1:if(ba(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break t}}s=s.return}while(null!==s);throw Error(i(171))}if(1===n.tag){var u=n.type;if(ba(u)){n=wa(n,u,s);break e}}n=s}else n=fa;return null===t.context?t.context=n:t.pendingContext=n,(t=co(o,l)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),fo(a,t),ms(a,l,o),l}function tu(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function nu(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function ru(e,t){nu(e,t),(e=e.alternate)&&nu(e,t)}function au(e,t,n){var r=null!=n&&null!=n.hydrationOptions&&n.hydrationOptions.mutableSources||null;if(n=new Xs(e,t,null!=n&&!0===n.hydrate),t=Gs(3,null,null,2===t?7:1===t?3:0),n.current=t,t.stateNode=n,so(t),e[ea]=n.current,Nr(8===e.nodeType?e.parentNode:e),r)for(e=0;e<r.length;e++){var a=(t=r[e])._getVersion;a=a(t._source),null==n.mutableSourceEagerHydrationData?n.mutableSourceEagerHydrationData=[t,a]:n.mutableSourceEagerHydrationData.push(t,a)}this._internalRoot=n}function ou(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function iu(e,t,n,r,a){var o=n._reactRootContainer;if(o){var i=o._internalRoot;if("function"==typeof a){var l=a;a=function(){var e=tu(i);l.call(e)}}eu(t,i,e,a)}else{if(o=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new au(e,0,t?{hydrate:!0}:void 0)}(n,r),i=o._internalRoot,"function"==typeof a){var s=a;a=function(){var e=tu(i);s.call(e)}}ks((function(){eu(t,i,e,a)}))}return tu(i)}function lu(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!ou(t))throw Error(i(200));return Js(e,t,null,n)}Wl=function(e,t,n){var r=t.lanes;if(null!==e)if(e.memoizedProps!==t.pendingProps||ma.current)zi=!0;else{if(0==(n&r)){switch(zi=!1,t.tag){case 3:Vi(t),Wo();break;case 5:Mo(t);break;case 1:ba(t.type)&&ka(t);break;case 4:Do(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var a=t.type._context;da(Xa,a._currentValue),a._currentValue=r;break;case 13:if(null!==t.memoizedState)return 0!=(n&t.child.childLanes)?Xi(e,t,n):(da(Fo,1&Fo.current),null!==(t=ol(e,t,n))?t.sibling:null);da(Fo,1&Fo.current);break;case 19:if(r=0!=(n&t.childLanes),0!=(64&e.flags)){if(r)return al(e,t,n);t.flags|=64}if(null!==(a=t.memoizedState)&&(a.rendering=null,a.tail=null,a.lastEffect=null),da(Fo,Fo.current),r)break;return null;case 23:case 24:return t.lanes=0,$i(e,t,n)}return ol(e,t,n)}zi=0!=(16384&e.flags)}else zi=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=ga(t,pa.current),oo(t,n),a=li(null,t,r,e,a,n),t.flags|=1,"object"==typeof a&&null!==a&&"function"==typeof a.render&&void 0===a.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,ba(r)){var o=!0;ka(t)}else o=!1;t.memoizedState=null!==a.state&&void 0!==a.state?a.state:null,so(t);var l=r.getDerivedStateFromProps;"function"==typeof l&&bo(t,r,l,e),a.updater=vo,t.stateNode=a,a._reactInternals=t,Eo(t,r,e,n),t=Zi(null,t,r,!0,o,n)}else t.tag=0,Fi(null,t,a,n),t=t.child;return t;case 16:a=t.elementType;e:{switch(null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=(o=a._init)(a._payload),t.type=a,o=t.tag=function(e){if("function"==typeof e)return Hs(e)?1:0;if(null!=e){if((e=e.$$typeof)===A)return 11;if(e===N)return 14}return 2}(a),e=Ka(a,e),o){case 0:t=Gi(null,t,a,e,n);break e;case 1:t=Hi(null,t,a,e,n);break e;case 11:t=ji(null,t,a,e,n);break e;case 14:t=Bi(null,t,a,Ka(a.type,e),r,n);break e}throw Error(i(306,a,""))}return t;case 0:return r=t.type,a=t.pendingProps,Gi(e,t,r,a=t.elementType===r?a:Ka(r,a),n);case 1:return r=t.type,a=t.pendingProps,Hi(e,t,r,a=t.elementType===r?a:Ka(r,a),n);case 3:if(Vi(t),r=t.updateQueue,null===e||null===r)throw Error(i(282));if(r=t.pendingProps,a=null!==(a=t.memoizedState)?a.element:null,uo(e,t),mo(t,r,null,n),(r=t.memoizedState.element)===a)Wo(),t=ol(e,t,n);else{if((o=(a=t.stateNode).hydrate)&&(Uo=Wr(t.stateNode.containerInfo.firstChild),Bo=t,o=$o=!0),o){if(null!=(e=a.mutableSourceEagerHydrationData))for(a=0;a<e.length;a+=2)(o=e[a])._workInProgressVersionPrimary=e[a+1],Yo.push(o);for(n=Lo(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|1024,n=n.sibling}else Fi(e,t,r,n),Wo();t=t.child}return t;case 5:return Mo(t),null===e&&Ho(t),r=t.type,a=t.pendingProps,o=null!==e?e.memoizedProps:null,l=a.children,Gr(r,a)?l=null:null!==o&&Gr(r,o)&&(t.flags|=16),qi(e,t),Fi(e,t,l,n),t.child;case 6:return null===e&&Ho(t),null;case 13:return Xi(e,t,n);case 4:return Do(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=To(t,null,r,n):Fi(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,ji(e,t,r,a=t.elementType===r?a:Ka(r,a),n);case 7:return Fi(e,t,t.pendingProps,n),t.child;case 8:case 12:return Fi(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,a=t.pendingProps,l=t.memoizedProps,o=a.value;var s=t.type._context;if(da(Xa,s._currentValue),s._currentValue=o,null!==l)if(s=l.value,0===(o=cr(s,o)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(s,o):1073741823))){if(l.children===a.children&&!ma.current){t=ol(e,t,n);break e}}else for(null!==(s=t.child)&&(s.return=t);null!==s;){var u=s.dependencies;if(null!==u){l=s.child;for(var c=u.firstContext;null!==c;){if(c.context===r&&0!=(c.observedBits&o)){1===s.tag&&((c=co(-1,n&-n)).tag=2,fo(s,c)),s.lanes|=n,null!==(c=s.alternate)&&(c.lanes|=n),ao(s.return,n),u.lanes|=n;break}c=c.next}}else l=10===s.tag&&s.type===t.type?null:s.child;if(null!==l)l.return=s;else for(l=s;null!==l;){if(l===t){l=null;break}if(null!==(s=l.sibling)){s.return=l.return,l=s;break}l=l.return}s=l}Fi(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=(o=t.pendingProps).children,oo(t,n),r=r(a=io(a,o.unstable_observedBits)),t.flags|=1,Fi(e,t,r,n),t.child;case 14:return o=Ka(a=t.type,t.pendingProps),Bi(e,t,a,o=Ka(a.type,o),r,n);case 15:return Ui(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Ka(r,a),null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,ba(r)?(e=!0,ka(t)):e=!1,oo(t,n),wo(t,r,a),Eo(t,r,a,n),Zi(null,t,r,!0,e,n);case 19:return al(e,t,n);case 23:case 24:return $i(e,t,n)}throw Error(i(156,t.tag))},au.prototype.render=function(e){eu(e,this._internalRoot,null,null)},au.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;eu(null,e,null,(function(){t[ea]=null}))},tt=function(e){13===e.tag&&(ms(e,4,fs()),ru(e,4))},nt=function(e){13===e.tag&&(ms(e,67108864,fs()),ru(e,67108864))},rt=function(e){if(13===e.tag){var t=fs(),n=ps(e);ms(e,n,t),ru(e,n)}},at=function(e,t){return t()},Te=function(e,t,n){switch(t){case"input":if(ne(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=oa(r);if(!a)throw Error(i(90));K(r),ne(r,a)}}}break;case"textarea":ue(e,n);break;case"select":null!=(t=n.value)&&ie(e,!!n.multiple,t,!1)}},Oe=ws,De=function(e,t,n,r,a){var o=Nl;Nl|=4;try{return Za(98,e.bind(null,t,n,r,a))}finally{0===(Nl=o)&&(Vl(),Wa())}},Ie=function(){0==(49&Nl)&&(function(){if(null!==as){var e=as;as=null,e.forEach((function(e){e.expiredLanes|=24&e.pendingLanes,gs(e,qa())}))}Wa()}(),Is())},Me=function(e,t){var n=Nl;Nl|=2;try{return e(t)}finally{0===(Nl=n)&&(Vl(),Wa())}};var su={Events:[ra,aa,oa,Pe,Ne,Is,{current:!1}]},uu={findFiberByHostInstance:na,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},cu={bundleType:uu.bundleType,version:uu.version,rendererPackageName:uu.rendererPackageName,rendererConfig:uu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:k.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Je(e))?null:e.stateNode},findFiberByHostInstance:uu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var du=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!du.isDisabled&&du.supportsFiber)try{Sa=du.inject(cu),xa=du}catch(ge){}}t.createPortal=lu,t.hydrate=function(e,t,n){if(!ou(t))throw Error(i(200));return iu(null,e,t,!0,n)}},3935:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(4448)},9590:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,r="function"==typeof Set,a="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var l,s,u,c;if(Array.isArray(e)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(!o(e[s],i[s]))return!1;return!0}if(n&&e instanceof Map&&i instanceof Map){if(e.size!==i.size)return!1;for(c=e.entries();!(s=c.next()).done;)if(!i.has(s.value[0]))return!1;for(c=e.entries();!(s=c.next()).done;)if(!o(s.value[1],i.get(s.value[0])))return!1;return!0}if(r&&e instanceof Set&&i instanceof Set){if(e.size!==i.size)return!1;for(c=e.entries();!(s=c.next()).done;)if(!i.has(s.value[0]))return!1;return!0}if(a&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(i)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(e[s]!==i[s])return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===i.toString();if((l=(u=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(s=l;0!=s--;)if(!Object.prototype.hasOwnProperty.call(i,u[s]))return!1;if(t&&e instanceof Element)return!1;for(s=l;0!=s--;)if(("_owner"!==u[s]&&"__v"!==u[s]&&"__o"!==u[s]||!e.$$typeof)&&!o(e[u[s]],i[u[s]]))return!1;return!0}return e!=e&&i!=i}e.exports=function(e,t){try{return o(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},405:(e,t,n)=>{"use strict";n.d(t,{B6:()=>H,ql:()=>J});var r=n(7294),a=n(5697),o=n.n(a),i=n(9590),l=n.n(i),s=n(1143),u=n.n(s),c=n(6774),d=n.n(c);function f(){return f=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},f.apply(this,arguments)}function p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,m(e,t)}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function h(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)t.indexOf(n=o[r])>=0||(a[n]=e[n]);return a}var g={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},b={rel:["amphtml","canonical","alternate"]},v={type:["application/ld+json"]},y={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},w=Object.keys(g).map((function(e){return g[e]})),k={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},E=Object.keys(k).reduce((function(e,t){return e[k[t]]=t,e}),{}),S=function(e,t){for(var n=e.length-1;n>=0;n-=1){var r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},x=function(e){var t=S(e,g.TITLE),n=S(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var r=S(e,"defaultTitle");return t||r||void 0},_=function(e){return S(e,"onChangeClientState")||function(){}},C=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return f({},e,t)}),{})},T=function(e,t){return t.filter((function(e){return void 0!==e[g.BASE]})).map((function(e){return e[g.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),a=0;a<r.length;a+=1){var o=r[a].toLowerCase();if(-1!==e.indexOf(o)&&n[o])return t.concat(n)}return t}),[])},L=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&console&&"function"==typeof console.warn&&console.warn("Helmet: "+e+' should be of type "Array". Instead found type "'+typeof t[e]+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var a={};n.filter((function(e){for(var n,o=Object.keys(e),i=0;i<o.length;i+=1){var l=o[i],s=l.toLowerCase();-1===t.indexOf(s)||"rel"===n&&"canonical"===e[n].toLowerCase()||"rel"===s&&"stylesheet"===e[s].toLowerCase()||(n=s),-1===t.indexOf(l)||"innerHTML"!==l&&"cssText"!==l&&"itemprop"!==l||(n=l)}if(!n||!e[n])return!1;var u=e[n].toLowerCase();return r[n]||(r[n]={}),a[n]||(a[n]={}),!r[n][u]&&(a[n][u]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var o=Object.keys(a),i=0;i<o.length;i+=1){var l=o[i],s=f({},r[l],a[l]);r[l]=s}return e}),[]).reverse()},A=function(e,t){if(Array.isArray(e)&&e.length)for(var n=0;n<e.length;n+=1)if(e[n][t])return!0;return!1},R=function(e){return Array.isArray(e)?e.join(""):e},P=function(e,t){return Array.isArray(e)?e.reduce((function(e,n){return function(e,t){for(var n=Object.keys(e),r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1}(n,t)?e.priority.push(n):e.default.push(n),e}),{priority:[],default:[]}):{default:e}},N=function(e,t){var n;return f({},e,((n={})[t]=void 0,n))},O=[g.NOSCRIPT,g.SCRIPT,g.STYLE],D=function(e,t){return void 0===t&&(t=!0),!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},I=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},M=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[k[n]||n]=e[n],t}),t)},z=function(e,t){return t.map((function(t,n){var a,o=((a={key:n})["data-rh"]=!0,a);return Object.keys(t).forEach((function(e){var n=k[e]||e;"innerHTML"===n||"cssText"===n?o.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:o[n]=t[e]})),r.createElement(e,o)}))},F=function(e,t,n){switch(e){case g.TITLE:return{toComponent:function(){return n=t.titleAttributes,(a={key:e=t.title})["data-rh"]=!0,o=M(n,a),[r.createElement(g.TITLE,o,e)];var e,n,a,o},toString:function(){return function(e,t,n,r){var a=I(n),o=R(t);return a?"<"+e+' data-rh="true" '+a+">"+D(o,r)+"</"+e+">":"<"+e+' data-rh="true">'+D(o,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return M(t)},toString:function(){return I(t)}};default:return{toComponent:function(){return z(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var a=Object.keys(r).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var a=void 0===r[t]?t:t+'="'+D(r[t],n)+'"';return e?e+" "+a:a}),""),o=r.innerHTML||r.cssText||"",i=-1===O.indexOf(e);return t+"<"+e+' data-rh="true" '+a+(i?"/>":">"+o+"</"+e+">")}),"")}(e,t,n)}}}},j=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,a=e.htmlAttributes,o=e.noscriptTags,i=e.styleTags,l=e.title,s=void 0===l?"":l,u=e.titleAttributes,c=e.linkTags,d=e.metaTags,f=e.scriptTags,p={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var m=function(e){var t=e.linkTags,n=e.scriptTags,r=e.encode,a=P(e.metaTags,y),o=P(t,b),i=P(n,v);return{priorityMethods:{toComponent:function(){return[].concat(z(g.META,a.priority),z(g.LINK,o.priority),z(g.SCRIPT,i.priority))},toString:function(){return F(g.META,a.priority,r)+" "+F(g.LINK,o.priority,r)+" "+F(g.SCRIPT,i.priority,r)}},metaTags:a.default,linkTags:o.default,scriptTags:i.default}}(e);p=m.priorityMethods,c=m.linkTags,d=m.metaTags,f=m.scriptTags}return{priority:p,base:F(g.BASE,t,r),bodyAttributes:F("bodyAttributes",n,r),htmlAttributes:F("htmlAttributes",a,r),link:F(g.LINK,c,r),meta:F(g.META,d,r),noscript:F(g.NOSCRIPT,o,r),script:F(g.SCRIPT,f,r),style:F(g.STYLE,i,r),title:F(g.TITLE,{title:s,titleAttributes:u},r)}},B=[],U=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?B:n.instances},add:function(e){(n.canUseDOM?B:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?B:n.instances).indexOf(e);(n.canUseDOM?B:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=j({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},$=r.createContext({}),q=o().shape({setHelmet:o().func,helmetInstances:o().shape({get:o().func,add:o().func,remove:o().func})}),G="undefined"!=typeof document,H=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new U(r.props.context,t.canUseDOM),r}return p(t,e),t.prototype.render=function(){return r.createElement($.Provider,{value:this.helmetData.value},this.props.children)},t}(r.Component);H.canUseDOM=G,H.propTypes={context:o().shape({helmet:o().shape()}),children:o().node.isRequired},H.defaultProps={context:{}},H.displayName="HelmetProvider";var Z=function(e,t){var n,r=document.head||document.querySelector(g.HEAD),a=r.querySelectorAll(e+"[data-rh]"),o=[].slice.call(a),i=[];return t&&t.length&&t.forEach((function(t){var r=document.createElement(e);for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&("innerHTML"===a?r.innerHTML=t.innerHTML:"cssText"===a?r.styleSheet?r.styleSheet.cssText=t.cssText:r.appendChild(document.createTextNode(t.cssText)):r.setAttribute(a,void 0===t[a]?"":t[a]));r.setAttribute("data-rh","true"),o.some((function(e,t){return n=t,r.isEqualNode(e)}))?o.splice(n,1):i.push(r)})),o.forEach((function(e){return e.parentNode.removeChild(e)})),i.forEach((function(e){return r.appendChild(e)})),{oldTags:o,newTags:i}},V=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-rh"),a=r?r.split(","):[],o=[].concat(a),i=Object.keys(t),l=0;l<i.length;l+=1){var s=i[l],u=t[s]||"";n.getAttribute(s)!==u&&n.setAttribute(s,u),-1===a.indexOf(s)&&a.push(s);var c=o.indexOf(s);-1!==c&&o.splice(c,1)}for(var d=o.length-1;d>=0;d-=1)n.removeAttribute(o[d]);a.length===o.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==i.join(",")&&n.setAttribute("data-rh",i.join(","))}},W=function(e,t){var n=e.baseTag,r=e.htmlAttributes,a=e.linkTags,o=e.metaTags,i=e.noscriptTags,l=e.onChangeClientState,s=e.scriptTags,u=e.styleTags,c=e.title,d=e.titleAttributes;V(g.BODY,e.bodyAttributes),V(g.HTML,r),function(e,t){void 0!==e&&document.title!==e&&(document.title=R(e)),V(g.TITLE,t)}(c,d);var f={baseTag:Z(g.BASE,n),linkTags:Z(g.LINK,a),metaTags:Z(g.META,o),noscriptTags:Z(g.NOSCRIPT,i),scriptTags:Z(g.SCRIPT,s),styleTags:Z(g.STYLE,u)},p={},m={};Object.keys(f).forEach((function(e){var t=f[e],n=t.newTags,r=t.oldTags;n.length&&(p[e]=n),r.length&&(m[e]=f[e].oldTags)})),t&&t(),l(e,p,m)},Y=null,Q=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(t=e.call.apply(e,[this].concat(r))||this).rendered=!1,t}p(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!d()(e,this.props)},n.componentDidUpdate=function(){this.emitChange()},n.componentWillUnmount=function(){this.props.context.helmetInstances.remove(this),this.emitChange()},n.emitChange=function(){var e,t,n=this.props.context,r=n.setHelmet,a=null,o=(e=n.helmetInstances.get().map((function(e){var t=f({},e.props);return delete t.context,t})),{baseTag:T(["href"],e),bodyAttributes:C("bodyAttributes",e),defer:S(e,"defer"),encode:S(e,"encodeSpecialCharacters"),htmlAttributes:C("htmlAttributes",e),linkTags:L(g.LINK,["rel","href"],e),metaTags:L(g.META,["name","charset","http-equiv","property","itemprop"],e),noscriptTags:L(g.NOSCRIPT,["innerHTML"],e),onChangeClientState:_(e),scriptTags:L(g.SCRIPT,["src","innerHTML"],e),styleTags:L(g.STYLE,["cssText"],e),title:x(e),titleAttributes:C("titleAttributes",e),prioritizeSeoTags:A(e,"prioritizeSeoTags")});H.canUseDOM?(t=o,Y&&cancelAnimationFrame(Y),t.defer?Y=requestAnimationFrame((function(){W(t,(function(){Y=null}))})):(W(t),Y=null)):j&&(a=j(o)),r(a)},n.init=function(){this.rendered||(this.rendered=!0,this.props.context.helmetInstances.add(this),this.emitChange())},n.render=function(){return this.init(),null},t}(r.Component);Q.propTypes={context:q.isRequired},Q.displayName="HelmetDispatcher";var K=["children"],X=["children"],J=function(e){function t(){return e.apply(this,arguments)||this}p(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!l()(N(this.props,"helmetData"),N(e,"helmetData"))},n.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case g.SCRIPT:case g.NOSCRIPT:return{innerHTML:t};case g.STYLE:return{cssText:t};default:throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren;return f({},r,((t={})[n.type]=[].concat(r[n.type]||[],[f({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,r=e.child,a=e.newProps,o=e.newChildProps,i=e.nestedChildren;switch(r.type){case g.TITLE:return f({},a,((t={})[r.type]=i,t.titleAttributes=f({},o),t));case g.BODY:return f({},a,{bodyAttributes:f({},o)});case g.HTML:return f({},a,{htmlAttributes:f({},o)});default:return f({},a,((n={})[r.type]=f({},o),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=f({},t);return Object.keys(e).forEach((function(t){var r;n=f({},n,((r={})[t]=e[t],r))})),n},n.warnOnInvalidChildren=function(e,t){return u()(w.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+w.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),u()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``}</"+e.type+"> ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,a={};return r.Children.forEach(e,(function(e){if(e&&e.props){var r=e.props,o=r.children,i=h(r,K),l=Object.keys(i).reduce((function(e,t){return e[E[t]||t]=i[t],e}),{}),s=e.type;switch("symbol"==typeof s?s=s.toString():n.warnOnInvalidChildren(e,o),s){case g.FRAGMENT:t=n.mapChildrenToProps(o,t);break;case g.LINK:case g.META:case g.NOSCRIPT:case g.SCRIPT:case g.STYLE:a=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:a,newChildProps:l,nestedChildren:o});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:l,nestedChildren:o})}}})),this.mapArrayTypeChildrenToProps(a,t)},n.render=function(){var e=this.props,t=e.children,n=h(e,X),a=f({},n),o=n.helmetData;return t&&(a=this.mapChildrenToProps(t,a)),!o||o instanceof U||(o=new U(o.context,o.instances)),o?r.createElement(Q,f({},a,{context:o.value,helmetData:void 0})):r.createElement($.Consumer,null,(function(e){return r.createElement(Q,f({},a,{context:e}))}))},t}(r.Component);J.propTypes={base:o().object,bodyAttributes:o().object,children:o().oneOfType([o().arrayOf(o().node),o().node]),defaultTitle:o().string,defer:o().bool,encodeSpecialCharacters:o().bool,htmlAttributes:o().object,link:o().arrayOf(o().object),meta:o().arrayOf(o().object),noscript:o().arrayOf(o().object),onChangeClientState:o().func,script:o().arrayOf(o().object),style:o().arrayOf(o().object),title:o().string,titleAttributes:o().object,titleTemplate:o().string,prioritizeSeoTags:o().bool,helmetData:o().object},J.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},J.displayName="Helmet"},9921:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,a=n?Symbol.for("react.portal"):60106,o=n?Symbol.for("react.fragment"):60107,i=n?Symbol.for("react.strict_mode"):60108,l=n?Symbol.for("react.profiler"):60114,s=n?Symbol.for("react.provider"):60109,u=n?Symbol.for("react.context"):60110,c=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,f=n?Symbol.for("react.forward_ref"):60112,p=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,h=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,b=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,y=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function k(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case c:case d:case o:case l:case i:case p:return e;default:switch(e=e&&e.$$typeof){case u:case f:case g:case h:case s:return e;default:return t}}case a:return t}}}function E(e){return k(e)===d}t.AsyncMode=c,t.ConcurrentMode=d,t.ContextConsumer=u,t.ContextProvider=s,t.Element=r,t.ForwardRef=f,t.Fragment=o,t.Lazy=g,t.Memo=h,t.Portal=a,t.Profiler=l,t.StrictMode=i,t.Suspense=p,t.isAsyncMode=function(e){return E(e)||k(e)===c},t.isConcurrentMode=E,t.isContextConsumer=function(e){return k(e)===u},t.isContextProvider=function(e){return k(e)===s},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return k(e)===f},t.isFragment=function(e){return k(e)===o},t.isLazy=function(e){return k(e)===g},t.isMemo=function(e){return k(e)===h},t.isPortal=function(e){return k(e)===a},t.isProfiler=function(e){return k(e)===l},t.isStrictMode=function(e){return k(e)===i},t.isSuspense=function(e){return k(e)===p},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===o||e===d||e===l||e===i||e===p||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===h||e.$$typeof===s||e.$$typeof===u||e.$$typeof===f||e.$$typeof===v||e.$$typeof===y||e.$$typeof===w||e.$$typeof===b)},t.typeOf=k},9864:(e,t,n)=>{"use strict";e.exports=n(9921)},8356:(e,t,n)=>{"use strict";function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function a(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}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 i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var l=n(7294),s=n(5697),u=[],c=[];function d(e){var t=e(),n={loading:!0,loaded:null,error:null};return n.promise=t.then((function(e){return n.loading=!1,n.loaded=e,e})).catch((function(e){throw n.loading=!1,n.error=e,e})),n}function f(e){var t={loading:!1,loaded:{},error:null},n=[];try{Object.keys(e).forEach((function(r){var a=d(e[r]);a.loading?t.loading=!0:(t.loaded[r]=a.loaded,t.error=a.error),n.push(a.promise),a.promise.then((function(e){t.loaded[r]=e})).catch((function(e){t.error=e}))}))}catch(r){t.error=r}return t.promise=Promise.all(n).then((function(e){return t.loading=!1,e})).catch((function(e){throw t.loading=!1,e})),t}function p(e,t){return l.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,f;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=i({loader:null,loading:null,delay:200,timeout:null,render:p,webpack:null,modules:null},t),h=null;function g(){return h||(h=e(m.loader)),h.promise}return u.push(g),"function"==typeof m.webpack&&c.push((function(){if((0,m.webpack)().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return g()})),f=d=function(t){function n(n){var r;return o(a(a(r=t.call(this,n)||this)),"retry",(function(){r.setState({error:null,loading:!0,timedOut:!1}),h=e(m.loader),r._loadModule()})),g(),r.state={error:h.error,pastDelay:!1,timedOut:!1,loading:h.loading,loaded:h.loaded},r}r(n,t),n.preload=function(){return g()};var i=n.prototype;return i.UNSAFE_componentWillMount=function(){this._loadModule()},i.componentDidMount=function(){this._mounted=!0},i._loadModule=function(){var e=this;if(this.context.loadable&&Array.isArray(m.modules)&&m.modules.forEach((function(t){e.context.loadable.report(t)})),h.loading){var t=function(t){e._mounted&&e.setState(t)};"number"==typeof m.delay&&(0===m.delay?this.setState({pastDelay:!0}):this._delay=setTimeout((function(){t({pastDelay:!0})}),m.delay)),"number"==typeof m.timeout&&(this._timeout=setTimeout((function(){t({timedOut:!0})}),m.timeout));var n=function(){t({error:h.error,loaded:h.loaded,loading:h.loading}),e._clearTimeouts()};h.promise.then((function(){return n(),null})).catch((function(e){return n(),null}))}},i.componentWillUnmount=function(){this._mounted=!1,this._clearTimeouts()},i._clearTimeouts=function(){clearTimeout(this._delay),clearTimeout(this._timeout)},i.render=function(){return this.state.loading||this.state.error?l.createElement(m.loading,{isLoading:this.state.loading,pastDelay:this.state.pastDelay,timedOut:this.state.timedOut,error:this.state.error,retry:this.retry}):this.state.loaded?m.render(this.state.loaded,this.props):null},n}(l.Component),o(d,"contextTypes",{loadable:s.shape({report:s.func.isRequired})}),f}function h(e){return m(d,e)}h.Map=function(e){if("function"!=typeof e.render)throw new Error("LoadableMap requires a `render(loaded, props)` function");return m(f,e)};var g=function(e){function t(){return e.apply(this,arguments)||this}r(t,e);var n=t.prototype;return n.getChildContext=function(){return{loadable:{report:this.props.report}}},n.render=function(){return l.Children.only(this.props.children)},t}(l.Component);function b(e){for(var t=[];e.length;){var n=e.pop();t.push(n())}return Promise.all(t).then((function(){if(e.length)return b(e)}))}o(g,"propTypes",{report:s.func.isRequired}),o(g,"childContextTypes",{loadable:s.shape({report:s.func.isRequired}).isRequired}),h.Capture=g,h.preloadAll=function(){return new Promise((function(e,t){b(u).then(e,t)}))},h.preloadReady=function(){return new Promise((function(e,t){b(c).then(e,e)}))},e.exports=h},8790:(e,t,n)=>{"use strict";n.d(t,{H:()=>l,f:()=>i});var r=n(6775),a=n(7462),o=n(7294);function i(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var a=e.path?(0,r.LX)(t,e):n.length?n[n.length-1].match:r.F0.computeRootMatch(t);return a&&(n.push({route:e,match:a}),e.routes&&i(e.routes,t,n)),a})),n}function l(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?o.createElement(r.rs,n,e.map((function(e,n){return o.createElement(r.AW,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,a.Z)({},n,{},t,{route:e})):o.createElement(e.component,(0,a.Z)({},n,t,{route:e}))}})}))):null}},3727:(e,t,n)=>{"use strict";n.d(t,{OL:()=>y,VK:()=>c,rU:()=>g});var r=n(6775),a=n(4578),o=n(7294),i=n(9318),l=n(7462),s=n(3366),u=n(2177),c=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.lX)(t.props),t}return(0,a.Z)(t,e),t.prototype.render=function(){return o.createElement(r.F0,{history:this.history,children:this.props.children})},t}(o.Component);o.Component;var d=function(e,t){return"function"==typeof e?e(t):e},f=function(e,t){return"string"==typeof e?(0,i.ob)(e,null,null,t):e},p=function(e){return e},m=o.forwardRef;void 0===m&&(m=p);var h=m((function(e,t){var n=e.innerRef,r=e.navigate,a=e.onClick,i=(0,s.Z)(e,["innerRef","navigate","onClick"]),u=i.target,c=(0,l.Z)({},i,{onClick:function(e){try{a&&a(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||u&&"_self"!==u||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return c.ref=p!==m&&t||n,o.createElement("a",c)}));var g=m((function(e,t){var n=e.component,a=void 0===n?h:n,c=e.replace,g=e.to,b=e.innerRef,v=(0,s.Z)(e,["component","replace","to","innerRef"]);return o.createElement(r.s6.Consumer,null,(function(e){e||(0,u.Z)(!1);var n=e.history,r=f(d(g,e.location),e.location),s=r?n.createHref(r):"",h=(0,l.Z)({},v,{href:s,navigate:function(){var t=d(g,e.location),r=(0,i.Ep)(e.location)===(0,i.Ep)(f(t));(c||r?n.replace:n.push)(t)}});return p!==m?h.ref=t||b:h.innerRef=b,o.createElement(a,h)}))})),b=function(e){return e},v=o.forwardRef;void 0===v&&(v=b);var y=v((function(e,t){var n=e["aria-current"],a=void 0===n?"page":n,i=e.activeClassName,c=void 0===i?"active":i,p=e.activeStyle,m=e.className,h=e.exact,y=e.isActive,w=e.location,k=e.sensitive,E=e.strict,S=e.style,x=e.to,_=e.innerRef,C=(0,s.Z)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return o.createElement(r.s6.Consumer,null,(function(e){e||(0,u.Z)(!1);var n=w||e.location,i=f(d(x,n),n),s=i.pathname,T=s&&s.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),L=T?(0,r.LX)(n.pathname,{path:T,exact:h,sensitive:k,strict:E}):null,A=!!(y?y(L,n):L),R="function"==typeof m?m(A):m,P="function"==typeof S?S(A):S;A&&(R=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).join(" ")}(R,c),P=(0,l.Z)({},P,p));var N=(0,l.Z)({"aria-current":A&&a||null,className:R,style:P,to:i},C);return b!==v?N.ref=t||_:N.innerRef=_,o.createElement(g,N)}))}))},6775:(e,t,n)=>{"use strict";n.d(t,{AW:()=>_,F0:()=>k,rs:()=>P,s6:()=>w,LX:()=>x,k6:()=>O,TH:()=>D});var r=n(4578),a=n(7294),o=n(9318),i=n(5697),l=n.n(i),s=1073741823,u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};function c(e){var t=[];return{on:function(e){t.push(e)},off:function(e){t=t.filter((function(t){return t!==e}))},get:function(){return e},set:function(n,r){e=n,t.forEach((function(t){return t(e,r)}))}}}var d=a.createContext||function(e,t){var n,o,i="__create-react-context-"+function(){var e="__global_unique_id__";return u[e]=(u[e]||0)+1}()+"__",d=function(e){function n(){var t;return(t=e.apply(this,arguments)||this).emitter=c(t.props.value),t}(0,r.Z)(n,e);var a=n.prototype;return a.getChildContext=function(){var e;return(e={})[i]=this.emitter,e},a.componentWillReceiveProps=function(e){if(this.props.value!==e.value){var n,r=this.props.value,a=e.value;((o=r)===(i=a)?0!==o||1/o==1/i:o!=o&&i!=i)?n=0:(n="function"==typeof t?t(r,a):s,0!==(n|=0)&&this.emitter.set(e.value,n))}var o,i},a.render=function(){return this.props.children},n}(a.Component);d.childContextTypes=((n={})[i]=l().object.isRequired,n);var f=function(t){function n(){var e;return(e=t.apply(this,arguments)||this).state={value:e.getValue()},e.onUpdate=function(t,n){0!=((0|e.observedBits)&n)&&e.setState({value:e.getValue()})},e}(0,r.Z)(n,t);var a=n.prototype;return a.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?s:t},a.componentDidMount=function(){this.context[i]&&this.context[i].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?s:e},a.componentWillUnmount=function(){this.context[i]&&this.context[i].off(this.onUpdate)},a.getValue=function(){return this.context[i]?this.context[i].get():e},a.render=function(){return(e=this.props.children,Array.isArray(e)?e[0]:e)(this.state.value);var e},n}(a.Component);return f.contextTypes=((o={})[i]=l().object,o),{Provider:d,Consumer:f}};const f=d;var p=n(2177),m=n(7462),h=n(9658),g=n.n(h),b=(n(9864),n(3366)),v=(n(8679),function(e){var t=f();return t.displayName=e,t}),y=v("Router-History"),w=v("Router"),k=function(e){function t(t){var n;return(n=e.call(this,t)||this).state={location:t.history.location},n._isMounted=!1,n._pendingLocation=null,t.staticContext||(n.unlisten=t.history.listen((function(e){n._pendingLocation=e}))),n}(0,r.Z)(t,e),t.computeRootMatch=function(e){return{path:"/",url:"/",params:{},isExact:"/"===e}};var n=t.prototype;return n.componentDidMount=function(){var e=this;this._isMounted=!0,this.unlisten&&this.unlisten(),this.props.staticContext||(this.unlisten=this.props.history.listen((function(t){e._isMounted&&e.setState({location:t})}))),this._pendingLocation&&this.setState({location:this._pendingLocation})},n.componentWillUnmount=function(){this.unlisten&&(this.unlisten(),this._isMounted=!1,this._pendingLocation=null)},n.render=function(){return a.createElement(w.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},a.createElement(y.Provider,{children:this.props.children||null,value:this.props.history}))},t}(a.Component);a.Component;a.Component;var E={},S=0;function x(e,t){void 0===t&&(t={}),("string"==typeof t||Array.isArray(t))&&(t={path:t});var n=t,r=n.path,a=n.exact,o=void 0!==a&&a,i=n.strict,l=void 0!==i&&i,s=n.sensitive,u=void 0!==s&&s;return[].concat(r).reduce((function(t,n){if(!n&&""!==n)return null;if(t)return t;var r=function(e,t){var n=""+t.end+t.strict+t.sensitive,r=E[n]||(E[n]={});if(r[e])return r[e];var a=[],o={regexp:g()(e,a,t),keys:a};return S<1e4&&(r[e]=o,S++),o}(n,{end:o,strict:l,sensitive:u}),a=r.regexp,i=r.keys,s=a.exec(e);if(!s)return null;var c=s[0],d=s.slice(1),f=e===c;return o&&!f?null:{path:n,url:"/"===n&&""===c?"/":c,isExact:f,params:i.reduce((function(e,t,n){return e[t.name]=d[n],e}),{})}}),null)}var _=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.Z)(t,e),t.prototype.render=function(){var e=this;return a.createElement(w.Consumer,null,(function(t){t||(0,p.Z)(!1);var n=e.props.location||t.location,r=e.props.computedMatch?e.props.computedMatch:e.props.path?x(n.pathname,e.props):t.match,o=(0,m.Z)({},t,{location:n,match:r}),i=e.props,l=i.children,s=i.component,u=i.render;return Array.isArray(l)&&function(e){return 0===a.Children.count(e)}(l)&&(l=null),a.createElement(w.Provider,{value:o},o.match?l?"function"==typeof l?l(o):l:s?a.createElement(s,o):u?u(o):null:"function"==typeof l?l(o):null)}))},t}(a.Component);function C(e){return"/"===e.charAt(0)?e:"/"+e}function T(e,t){if(!e)return t;var n=C(e);return 0!==t.pathname.indexOf(n)?t:(0,m.Z)({},t,{pathname:t.pathname.substr(n.length)})}function L(e){return"string"==typeof e?e:(0,o.Ep)(e)}function A(e){return function(){(0,p.Z)(!1)}}function R(){}a.Component;var P=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.Z)(t,e),t.prototype.render=function(){var e=this;return a.createElement(w.Consumer,null,(function(t){t||(0,p.Z)(!1);var n,r,o=e.props.location||t.location;return a.Children.forEach(e.props.children,(function(e){if(null==r&&a.isValidElement(e)){n=e;var i=e.props.path||e.props.from;r=i?x(o.pathname,(0,m.Z)({},e.props,{path:i})):t.match}})),r?a.cloneElement(n,{location:o,computedMatch:r}):null}))},t}(a.Component);var N=a.useContext;function O(){return N(y)}function D(){return N(w).location}},9658:(e,t,n)=>{var r=n(5826);e.exports=p,e.exports.parse=o,e.exports.compile=function(e,t){return l(o(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=f;var a=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,i=0,l="",c=t&&t.delimiter||"/";null!=(n=a.exec(e));){var d=n[0],f=n[1],p=n.index;if(l+=e.slice(i,p),i=p+d.length,f)l+=f[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,x=n[2]||c,_=b||v;r.push({name:g||o++,prefix:h||"",delimiter:x,optional:S,repeat:E,partial:k,asterisk:!!w,pattern:_?u(_):w?".*":"[^"+s(x)+"]+?"})}}return i<e.length&&(l+=e.substr(i)),l&&r.push(l),r}function i(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function l(e,t){for(var n=new Array(e.length),a=0;a<e.length;a++)"object"==typeof e[a]&&(n[a]=new RegExp("^(?:"+e[a].pattern+")$",d(t)));return function(t,a){for(var o="",l=t||{},s=(a||{}).pretty?i:encodeURIComponent,u=0;u<e.length;u++){var c=e[u];if("string"!=typeof c){var d,f=l[c.name];if(null==f){if(c.optional){c.partial&&(o+=c.prefix);continue}throw new TypeError('Expected "'+c.name+'" to be defined')}if(r(f)){if(!c.repeat)throw new TypeError('Expected "'+c.name+'" to not repeat, but received `'+JSON.stringify(f)+"`");if(0===f.length){if(c.optional)continue;throw new TypeError('Expected "'+c.name+'" to not be empty')}for(var p=0;p<f.length;p++){if(d=s(f[p]),!n[u].test(d))throw new TypeError('Expected all "'+c.name+'" to match "'+c.pattern+'", but received `'+JSON.stringify(d)+"`");o+=(0===p?c.prefix:c.delimiter)+d}}else{if(d=c.asterisk?encodeURI(f).replace(/[?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})):s(f),!n[u].test(d))throw new TypeError('Expected "'+c.name+'" to match "'+c.pattern+'", but received "'+d+'"');o+=c.prefix+d}}else o+=c}return o}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function u(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function c(e,t){return e.keys=t,e}function d(e){return e&&e.sensitive?"":"i"}function f(e,t,n){r(t)||(n=t||n,t=[]);for(var a=(n=n||{}).strict,o=!1!==n.end,i="",l=0;l<e.length;l++){var u=e[l];if("string"==typeof u)i+=s(u);else{var f=s(u.prefix),p="(?:"+u.pattern+")";t.push(u),u.repeat&&(p+="(?:"+f+p+")*"),i+=p=u.optional?u.partial?f+"("+p+")?":"(?:"+f+"("+p+"))?":f+"("+p+")"}}var m=s(n.delimiter||"/"),h=i.slice(-m.length)===m;return a||(i=(h?i.slice(0,-m.length):i)+"(?:"+m+"(?=$))?"),i+=o?"$":a&&h?"":"(?="+m+"|$)",c(new RegExp("^"+i,d(n)),t)}function p(e,t,n){return r(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)t.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return c(e,t)}(e,t):r(e)?function(e,t,n){for(var r=[],a=0;a<e.length;a++)r.push(p(e[a],t,n).source);return c(new RegExp("(?:"+r.join("|")+")",d(n)),t)}(e,t,n):function(e,t,n){return f(o(e,n),t,n)}(e,t,n)}},2408:(e,t,n)=>{"use strict";var r=n(7418),a=60103,o=60106;t.Fragment=60107,t.StrictMode=60108,t.Profiler=60114;var i=60109,l=60110,s=60112;t.Suspense=60113;var u=60115,c=60116;if("function"==typeof Symbol&&Symbol.for){var d=Symbol.for;a=d("react.element"),o=d("react.portal"),t.Fragment=d("react.fragment"),t.StrictMode=d("react.strict_mode"),t.Profiler=d("react.profiler"),i=d("react.provider"),l=d("react.context"),s=d("react.forward_ref"),t.Suspense=d("react.suspense"),u=d("react.memo"),c=d("react.lazy")}var f="function"==typeof Symbol&&Symbol.iterator;function p(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h={};function g(e,t,n){this.props=e,this.context=t,this.refs=h,this.updater=n||m}function b(){}function v(e,t,n){this.props=e,this.context=t,this.refs=h,this.updater=n||m}g.prototype.isReactComponent={},g.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(p(85));this.updater.enqueueSetState(this,e,t,"setState")},g.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=g.prototype;var y=v.prototype=new b;y.constructor=v,r(y,g.prototype),y.isPureReactComponent=!0;var w={current:null},k=Object.prototype.hasOwnProperty,E={key:!0,ref:!0,__self:!0,__source:!0};function S(e,t,n){var r,o={},i=null,l=null;if(null!=t)for(r in void 0!==t.ref&&(l=t.ref),void 0!==t.key&&(i=""+t.key),t)k.call(t,r)&&!E.hasOwnProperty(r)&&(o[r]=t[r]);var s=arguments.length-2;if(1===s)o.children=n;else if(1<s){for(var u=Array(s),c=0;c<s;c++)u[c]=arguments[c+2];o.children=u}if(e&&e.defaultProps)for(r in s=e.defaultProps)void 0===o[r]&&(o[r]=s[r]);return{$$typeof:a,type:e,key:i,ref:l,props:o,_owner:w.current}}function x(e){return"object"==typeof e&&null!==e&&e.$$typeof===a}var _=/\/+/g;function C(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,n,r,i){var l=typeof e;"undefined"!==l&&"boolean"!==l||(e=null);var s=!1;if(null===e)s=!0;else switch(l){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case a:case o:s=!0}}if(s)return i=i(s=e),e=""===r?"."+C(s,0):r,Array.isArray(i)?(n="",null!=e&&(n=e.replace(_,"$&/")+"/"),T(i,t,n,"",(function(e){return e}))):null!=i&&(x(i)&&(i=function(e,t){return{$$typeof:a,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,n+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(_,"$&/")+"/")+e)),t.push(i)),1;if(s=0,r=""===r?".":r+":",Array.isArray(e))for(var u=0;u<e.length;u++){var c=r+C(l=e[u],u);s+=T(l,t,n,c,i)}else if(c=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=f&&e[f]||e["@@iterator"])?e:null}(e),"function"==typeof c)for(e=c.call(e),u=0;!(l=e.next()).done;)s+=T(l=l.value,t,n,c=r+C(l,u++),i);else if("object"===l)throw t=""+e,Error(p(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return s}function L(e,t,n){if(null==e)return e;var r=[],a=0;return T(e,r,"","",(function(e){return t.call(n,e,a++)})),r}function A(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var R={current:null};function P(){var e=R.current;if(null===e)throw Error(p(321));return e}var N={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:w,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:L,forEach:function(e,t,n){L(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return L(e,(function(){t++})),t},toArray:function(e){return L(e,(function(e){return e}))||[]},only:function(e){if(!x(e))throw Error(p(143));return e}},t.Component=g,t.PureComponent=v,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=N,t.cloneElement=function(e,t,n){if(null==e)throw Error(p(267,e));var o=r({},e.props),i=e.key,l=e.ref,s=e._owner;if(null!=t){if(void 0!==t.ref&&(l=t.ref,s=w.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var u=e.type.defaultProps;for(c in t)k.call(t,c)&&!E.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==u?u[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=n;else if(1<c){u=Array(c);for(var d=0;d<c;d++)u[d]=arguments[d+2];o.children=u}return{$$typeof:a,type:e.type,key:i,ref:l,props:o,_owner:s}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:l,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:i,_context:e},e.Consumer=e},t.createElement=S,t.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:s,render:e}},t.isValidElement=x,t.lazy=function(e){return{$$typeof:c,_payload:{_status:-1,_result:e},_init:A}},t.memo=function(e,t){return{$$typeof:u,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return P().useCallback(e,t)},t.useContext=function(e,t){return P().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return P().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return P().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return P().useLayoutEffect(e,t)},t.useMemo=function(e,t){return P().useMemo(e,t)},t.useReducer=function(e,t,n){return P().useReducer(e,t,n)},t.useRef=function(e){return P().useRef(e)},t.useState=function(e){return P().useState(e)},t.version="17.0.2"},7294:(e,t,n)=>{"use strict";e.exports=n(2408)},53:(e,t)=>{"use strict";var n,r,a,o;if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var l=Date,s=l.now();t.unstable_now=function(){return l.now()-s}}if("undefined"==typeof window||"function"!=typeof MessageChannel){var u=null,c=null,d=function(){if(null!==u)try{var e=t.unstable_now();u(!0,e),u=null}catch(n){throw setTimeout(d,0),n}};n=function(e){null!==u?setTimeout(n,0,e):(u=e,setTimeout(d,0))},r=function(e,t){c=setTimeout(e,t)},a=function(){clearTimeout(c)},t.unstable_shouldYield=function(){return!1},o=t.unstable_forceFrameRate=function(){}}else{var f=window.setTimeout,p=window.clearTimeout;if("undefined"!=typeof console){var m=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof m&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var h=!1,g=null,b=-1,v=5,y=0;t.unstable_shouldYield=function(){return t.unstable_now()>=y},o=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):v=0<e?Math.floor(1e3/e):5};var w=new MessageChannel,k=w.port2;w.port1.onmessage=function(){if(null!==g){var e=t.unstable_now();y=e+v;try{g(!0,e)?k.postMessage(null):(h=!1,g=null)}catch(n){throw k.postMessage(null),n}}else h=!1},n=function(e){g=e,h||(h=!0,k.postMessage(null))},r=function(e,n){b=f((function(){e(t.unstable_now())}),n)},a=function(){p(b),b=-1}}function E(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,a=e[r];if(!(void 0!==a&&0<_(a,t)))break e;e[r]=t,e[n]=a,n=r}}function S(e){return void 0===(e=e[0])?null:e}function x(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,a=e.length;r<a;){var o=2*(r+1)-1,i=e[o],l=o+1,s=e[l];if(void 0!==i&&0>_(i,n))void 0!==s&&0>_(s,i)?(e[r]=s,e[l]=n,r=l):(e[r]=i,e[o]=n,r=o);else{if(!(void 0!==s&&0>_(s,n)))break e;e[r]=s,e[l]=n,r=l}}}return t}return null}function _(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var C=[],T=[],L=1,A=null,R=3,P=!1,N=!1,O=!1;function D(e){for(var t=S(T);null!==t;){if(null===t.callback)x(T);else{if(!(t.startTime<=e))break;x(T),t.sortIndex=t.expirationTime,E(C,t)}t=S(T)}}function I(e){if(O=!1,D(e),!N)if(null!==S(C))N=!0,n(M);else{var t=S(T);null!==t&&r(I,t.startTime-e)}}function M(e,n){N=!1,O&&(O=!1,a()),P=!0;var o=R;try{for(D(n),A=S(C);null!==A&&(!(A.expirationTime>n)||e&&!t.unstable_shouldYield());){var i=A.callback;if("function"==typeof i){A.callback=null,R=A.priorityLevel;var l=i(A.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?A.callback=l:A===S(C)&&x(C),D(n)}else x(C);A=S(C)}if(null!==A)var s=!0;else{var u=S(T);null!==u&&r(I,u.startTime-n),s=!1}return s}finally{A=null,R=o,P=!1}}var z=o;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){N||P||(N=!0,n(M))},t.unstable_getCurrentPriorityLevel=function(){return R},t.unstable_getFirstCallbackNode=function(){return S(C)},t.unstable_next=function(e){switch(R){case 1:case 2:case 3:var t=3;break;default:t=R}var n=R;R=t;try{return e()}finally{R=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=z,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=R;R=e;try{return t()}finally{R=n}},t.unstable_scheduleCallback=function(e,o,i){var l=t.unstable_now();switch("object"==typeof i&&null!==i?i="number"==typeof(i=i.delay)&&0<i?l+i:l:i=l,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return e={id:L++,callback:o,priorityLevel:e,startTime:i,expirationTime:s=i+s,sortIndex:-1},i>l?(e.sortIndex=i,E(T,e),null===S(C)&&e===S(T)&&(O?a():O=!0,r(I,i-l))):(e.sortIndex=s,E(C,e),N||P||(N=!0,n(M))),e},t.unstable_wrapCallback=function(e){var t=R;return function(){var n=R;R=t;try{return e.apply(this,arguments)}finally{R=n}}}},3840:(e,t,n)=>{"use strict";e.exports=n(53)},6774:e=>{e.exports=function(e,t,n,r){var a=n?n.call(r,e,t):void 0;if(void 0!==a)return!!a;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var o=Object.keys(e),i=Object.keys(t);if(o.length!==i.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(t),s=0;s<o.length;s++){var u=o[s];if(!l(u))return!1;var c=e[u],d=t[u];if(!1===(a=n?n.call(r,c,d,u):void 0)||void 0===a&&c!==d)return!1}return!0}},2177:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r="Invariant failed";function a(e,t){if(!e)throw new Error(r)}},6809:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>r});const r={title:"Demos for Azure Web PubSub",tagline:"Easily add real-time capabilities to your apps using your preferred tech stack",url:"https://azure.github.io",baseUrl:"/azure-webpubsub/",onBrokenLinks:"warn",onBrokenMarkdownLinks:"warn",favicon:"img/favicon.ico",organizationName:"azure",projectName:"azure-webpubsub",trailingSlash:!1,presets:[["classic",{docs:{sidebarPath:"/home/runner/work/azure-webpubsub/azure-webpubsub/website/sidebars.js",routeBasePath:"demos"},blog:{showReadingTime:!0},theme:{customCss:"/home/runner/work/azure-webpubsub/azure-webpubsub/website/src/css/custom.css"}}]],themeConfig:{metadata:[{name:"keywords",content:"websocket, serverless, azure, web pubsub, service, realtime, messaging"}],colorMode:{disableSwitch:!0,defaultMode:"light",respectPrefersColorScheme:!1},navbar:{logo:{alt:"Azure Web PubSub Service",src:"img/azure_logo.png",className:"custom-navbar-logo-class"},items:[{type:"doc",docId:"simple_chat_app",position:"left",label:"Demos"},{to:"/blog",label:"Blog",position:"left"},{to:"/contact_us",label:"Contact Us",position:"left"}],hideOnScroll:!1},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:[],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},docs:{versionPersistence:"localStorage",sidebar:{hideable:!1,autoCollapseCategories:!1}},tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},plugins:[null,null,["/home/runner/work/azure-webpubsub/azure-webpubsub/website/src/plugins/visitor-tracking-plugin",{trackingID:"G-9DVQRCY9L7",gtmTrackingID:"GTM-N67NT6N",anonymizeIP:!0}]],baseUrlIssueBanner:!0,i18n:{defaultLocale:"en",path:"i18n",locales:["en"],localeConfigs:{}},onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},themes:[],scripts:[],headTags:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1,markdown:{mermaid:!1}}},7462:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{Z:()=>r})},4578:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(9611);function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,(0,r.Z)(e,t)}},3366:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}n.d(t,{Z:()=>r})},9611:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}n.d(t,{Z:()=>r})},7529:e=>{"use strict";e.exports={}},6887:e=>{"use strict";e.exports=JSON.parse('{"/azure-webpubsub/blog-acd":{"__comp":"a6aa9e1f","__context":{"plugin":"38cc22d9"},"sidebar":"814f3328","items":[{"content":"4d4b16c0"},{"content":"25433785"},{"content":"8a49c96a"},{"content":"f94952d7"}],"metadata":"fe6674c8"},"/azure-webpubsub/blog/archive-3ca":{"__comp":"9e4087bc","__context":{"plugin":"38cc22d9"},"archive":"ebbeac85"},"/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available-830":{"__comp":"ccc49370","__context":{"plugin":"38cc22d9"},"sidebar":"814f3328","content":"b6f6bc54"},"/azure-webpubsub/blog/welcome-cec":{"__comp":"ccc49370","__context":{"plugin":"38cc22d9"},"sidebar":"814f3328","content":"f2237b27"},"/azure-webpubsub/blog/what_is_websocket_part1-45e":{"__comp":"ccc49370","__context":{"plugin":"38cc22d9"},"sidebar":"814f3328","content":"547e2c82"},"/azure-webpubsub/blog/what_is_websocket_part2-1e8":{"__comp":"ccc49370","__context":{"plugin":"38cc22d9"},"sidebar":"814f3328","content":"31d81a60"},"/azure-webpubsub/contact_us-96b":{"__comp":"d512bf0e","__context":{"plugin":"94015949"},"config":"5e9f5e1a"},"/azure-webpubsub/demos/tags-ce1":{"__comp":"3720c009","__context":{"plugin":"c21a21f5"},"tags":"55960ee5"},"/azure-webpubsub/demos/tags/express-js-f4e":{"__comp":"df203c0f","__context":{"plugin":"c21a21f5"},"tag":"c0eb0060"},"/azure-webpubsub/demos/tags/java-script-d74":{"__comp":"df203c0f","__context":{"plugin":"c21a21f5"},"tag":"e771231d"},"/azure-webpubsub/demos/tags/vue-js-463":{"__comp":"df203c0f","__context":{"plugin":"c21a21f5"},"tag":"56c273c5"},"/azure-webpubsub/demos-e58":{"__comp":"1be78505","__context":{"plugin":"c21a21f5"},"versionMetadata":"935f2afb"},"/azure-webpubsub/demos/chat-4d9":{"__comp":"17896441","content":"0d608b87"},"/azure-webpubsub/demos/chatr-6de":{"__comp":"17896441","content":"b8a8b340"},"/azure-webpubsub/demos/code-streaming-b89":{"__comp":"17896441","content":"995533e1"},"/azure-webpubsub/demos/metaverse-0a3":{"__comp":"17896441","content":"f3bd417c"},"/azure-webpubsub/demos/scoreboard-d15":{"__comp":"17896441","content":"3ba8fa9f"},"/azure-webpubsub/demos/whiteboard-712":{"__comp":"17896441","content":"cffc60f8"},"/azure-webpubsub/-f18":{"__comp":"1df93b7f","__context":{"plugin":"94015949"},"config":"5e9f5e1a"}}')}},e=>{e.O(0,[532],(()=>{return t=9383,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/assets/js/main.943e98bc.js.LICENSE.txt b/assets/js/main.943e98bc.js.LICENSE.txt new file mode 100644 index 000000000..6e08db297 --- /dev/null +++ b/assets/js/main.943e98bc.js.LICENSE.txt @@ -0,0 +1,53 @@ +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ + +/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT */ + +/** + * Prism: Lightweight, robust, elegant syntax highlighting + * + * @license MIT <https://opensource.org/licenses/MIT> + * @author Lea Verou <https://lea.verou.me> + * @namespace + * @public + */ + +/** @license React v0.20.2 + * scheduler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v16.13.1 + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v17.0.2 + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v17.0.2 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ diff --git a/assets/js/react-syntax-highlighter/refractor-core-import.343c4278.js b/assets/js/react-syntax-highlighter/refractor-core-import.343c4278.js new file mode 100644 index 000000000..302662eda --- /dev/null +++ b/assets/js/react-syntax-highlighter/refractor-core-import.343c4278.js @@ -0,0 +1,2959 @@ +exports.id = 5082; +exports.ids = [5082,131,5008,7279,2496]; +exports.modules = { + +/***/ 56851: +/***/ ((__unused_webpack_module, exports) => { + +"use strict"; +var __webpack_unused_export__; + + +exports.Q = parse +__webpack_unused_export__ = stringify + +var comma = ',' +var space = ' ' +var empty = '' + +// Parse comma-separated tokens to an array. +function parse(value) { + var values = [] + var input = String(value || empty) + var index = input.indexOf(comma) + var lastIndex = 0 + var end = false + var val + + while (!end) { + if (index === -1) { + index = input.length + end = true + } + + val = input.slice(lastIndex, index).trim() + + if (val || !end) { + values.push(val) + } + + lastIndex = index + 1 + index = input.indexOf(comma, lastIndex) + } + + return values +} + +// Compile an array to comma-separated tokens. +// `options.padLeft` (default: `true`) pads a space left of each token, and +// `options.padRight` (default: `false`) pads a space to the right of each token. +function stringify(values, options) { + var settings = options || {} + var left = settings.padLeft === false ? empty : space + var right = settings.padRight ? space : empty + + // Ensure the last empty entry is seen. + if (values[values.length - 1] === empty) { + values = values.concat(empty) + } + + return values.join(right + comma + left).trim() +} + + +/***/ }), + +/***/ 78892: +/***/ ((module) => { + +"use strict"; + + +module.exports = parse + +var search = /[#.]/g + +// Create a hast element from a simple CSS selector. +function parse(selector, defaultTagName) { + var value = selector || '' + var name = defaultTagName || 'div' + var props = {} + var start = 0 + var subvalue + var previous + var match + + while (start < value.length) { + search.lastIndex = start + match = search.exec(value) + subvalue = value.slice(start, match ? match.index : value.length) + + if (subvalue) { + if (!previous) { + name = subvalue + } else if (previous === '#') { + props.id = subvalue + } else if (props.className) { + props.className.push(subvalue) + } else { + props.className = [subvalue] + } + + start += subvalue.length + } + + if (match) { + previous = match[0] + start++ + } + } + + return {type: 'element', tagName: name, properties: props, children: []} +} + + +/***/ }), + +/***/ 62502: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var find = __webpack_require__(99560) +var normalize = __webpack_require__(66632) +var parseSelector = __webpack_require__(78892) +var spaces = (__webpack_require__(36582)/* .parse */ .Q) +var commas = (__webpack_require__(56851)/* .parse */ .Q) + +module.exports = factory + +var own = {}.hasOwnProperty + +function factory(schema, defaultTagName, caseSensitive) { + var adjust = caseSensitive ? createAdjustMap(caseSensitive) : null + + return h + + // Hyperscript compatible DSL for creating virtual hast trees. + function h(selector, properties) { + var node = parseSelector(selector, defaultTagName) + var children = Array.prototype.slice.call(arguments, 2) + var name = node.tagName.toLowerCase() + var property + + node.tagName = adjust && own.call(adjust, name) ? adjust[name] : name + + if (properties && isChildren(properties, node)) { + children.unshift(properties) + properties = null + } + + if (properties) { + for (property in properties) { + addProperty(node.properties, property, properties[property]) + } + } + + addChild(node.children, children) + + if (node.tagName === 'template') { + node.content = {type: 'root', children: node.children} + node.children = [] + } + + return node + } + + function addProperty(properties, key, value) { + var info + var property + var result + + // Ignore nully and NaN values. + if (value === null || value === undefined || value !== value) { + return + } + + info = find(schema, key) + property = info.property + result = value + + // Handle list values. + if (typeof result === 'string') { + if (info.spaceSeparated) { + result = spaces(result) + } else if (info.commaSeparated) { + result = commas(result) + } else if (info.commaOrSpaceSeparated) { + result = spaces(commas(result).join(' ')) + } + } + + // Accept `object` on style. + if (property === 'style' && typeof value !== 'string') { + result = style(result) + } + + // Class-names (which can be added both on the `selector` and here). + if (property === 'className' && properties.className) { + result = properties.className.concat(result) + } + + properties[property] = parsePrimitives(info, property, result) + } +} + +function isChildren(value, node) { + return ( + typeof value === 'string' || + 'length' in value || + isNode(node.tagName, value) + ) +} + +function isNode(tagName, value) { + var type = value.type + + if (tagName === 'input' || !type || typeof type !== 'string') { + return false + } + + if (typeof value.children === 'object' && 'length' in value.children) { + return true + } + + type = type.toLowerCase() + + if (tagName === 'button') { + return ( + type !== 'menu' && + type !== 'submit' && + type !== 'reset' && + type !== 'button' + ) + } + + return 'value' in value +} + +function addChild(nodes, value) { + var index + var length + + if (typeof value === 'string' || typeof value === 'number') { + nodes.push({type: 'text', value: String(value)}) + return + } + + if (typeof value === 'object' && 'length' in value) { + index = -1 + length = value.length + + while (++index < length) { + addChild(nodes, value[index]) + } + + return + } + + if (typeof value !== 'object' || !('type' in value)) { + throw new Error('Expected node, nodes, or string, got `' + value + '`') + } + + nodes.push(value) +} + +// Parse a (list of) primitives. +function parsePrimitives(info, name, value) { + var index + var length + var result + + if (typeof value !== 'object' || !('length' in value)) { + return parsePrimitive(info, name, value) + } + + length = value.length + index = -1 + result = [] + + while (++index < length) { + result[index] = parsePrimitive(info, name, value[index]) + } + + return result +} + +// Parse a single primitives. +function parsePrimitive(info, name, value) { + var result = value + + if (info.number || info.positiveNumber) { + if (!isNaN(result) && result !== '') { + result = Number(result) + } + } else if (info.boolean || info.overloadedBoolean) { + // Accept `boolean` and `string`. + if ( + typeof result === 'string' && + (result === '' || normalize(value) === normalize(name)) + ) { + result = true + } + } + + return result +} + +function style(value) { + var result = [] + var key + + for (key in value) { + result.push([key, value[key]].join(': ')) + } + + return result.join('; ') +} + +function createAdjustMap(values) { + var length = values.length + var index = -1 + var result = {} + var value + + while (++index < length) { + value = values[index] + result[value.toLowerCase()] = value + } + + return result +} + + +/***/ }), + +/***/ 52579: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var schema = __webpack_require__(97247) +var factory = __webpack_require__(62502) + +var html = factory(schema, 'div') +html.displayName = 'html' + +module.exports = html + + +/***/ }), + +/***/ 31742: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +module.exports = __webpack_require__(52579) + + +/***/ }), + +/***/ 46260: +/***/ ((module) => { + +"use strict"; + + +module.exports = alphabetical + +// Check if the given character code, or the character code at the first +// character, is alphabetical. +function alphabetical(character) { + var code = typeof character === 'string' ? character.charCodeAt(0) : character + + return ( + (code >= 97 && code <= 122) /* a-z */ || + (code >= 65 && code <= 90) /* A-Z */ + ) +} + + +/***/ }), + +/***/ 7961: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var alphabetical = __webpack_require__(46260) +var decimal = __webpack_require__(46195) + +module.exports = alphanumerical + +// Check if the given character code, or the character code at the first +// character, is alphanumerical. +function alphanumerical(character) { + return alphabetical(character) || decimal(character) +} + + +/***/ }), + +/***/ 46195: +/***/ ((module) => { + +"use strict"; + + +module.exports = decimal + +// Check if the given character code, or the character code at the first +// character, is decimal. +function decimal(character) { + var code = typeof character === 'string' ? character.charCodeAt(0) : character + + return code >= 48 && code <= 57 /* 0-9 */ +} + + +/***/ }), + +/***/ 79480: +/***/ ((module) => { + +"use strict"; + + +module.exports = hexadecimal + +// Check if the given character code, or the character code at the first +// character, is hexadecimal. +function hexadecimal(character) { + var code = typeof character === 'string' ? character.charCodeAt(0) : character + + return ( + (code >= 97 /* a */ && code <= 102) /* z */ || + (code >= 65 /* A */ && code <= 70) /* Z */ || + (code >= 48 /* A */ && code <= 57) /* Z */ + ) +} + + +/***/ }), + +/***/ 99560: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var normalize = __webpack_require__(66632) +var DefinedInfo = __webpack_require__(98805) +var Info = __webpack_require__(57643) + +var data = 'data' + +module.exports = find + +var valid = /^data[-\w.:]+$/i +var dash = /-[a-z]/g +var cap = /[A-Z]/g + +function find(schema, value) { + var normal = normalize(value) + var prop = value + var Type = Info + + if (normal in schema.normal) { + return schema.property[schema.normal[normal]] + } + + if (normal.length > 4 && normal.slice(0, 4) === data && valid.test(value)) { + // Attribute or property. + if (value.charAt(4) === '-') { + prop = datasetToProperty(value) + } else { + value = datasetToAttribute(value) + } + + Type = DefinedInfo + } + + return new Type(prop, value) +} + +function datasetToProperty(attribute) { + var value = attribute.slice(5).replace(dash, camelcase) + return data + value.charAt(0).toUpperCase() + value.slice(1) +} + +function datasetToAttribute(property) { + var value = property.slice(4) + + if (dash.test(value)) { + return property + } + + value = value.replace(cap, kebab) + + if (value.charAt(0) !== '-') { + value = '-' + value + } + + return data + value +} + +function kebab($0) { + return '-' + $0.toLowerCase() +} + +function camelcase($0) { + return $0.charAt(1).toUpperCase() +} + + +/***/ }), + +/***/ 97247: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var merge = __webpack_require__(19940) +var xlink = __webpack_require__(8289) +var xml = __webpack_require__(5812) +var xmlns = __webpack_require__(94397) +var aria = __webpack_require__(67716) +var html = __webpack_require__(61805) + +module.exports = merge([xml, xlink, xmlns, aria, html]) + + +/***/ }), + +/***/ 67716: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var types = __webpack_require__(17000) +var create = __webpack_require__(17596) + +var booleanish = types.booleanish +var number = types.number +var spaceSeparated = types.spaceSeparated + +module.exports = create({ + transform: ariaTransform, + properties: { + ariaActiveDescendant: null, + ariaAtomic: booleanish, + ariaAutoComplete: null, + ariaBusy: booleanish, + ariaChecked: booleanish, + ariaColCount: number, + ariaColIndex: number, + ariaColSpan: number, + ariaControls: spaceSeparated, + ariaCurrent: null, + ariaDescribedBy: spaceSeparated, + ariaDetails: null, + ariaDisabled: booleanish, + ariaDropEffect: spaceSeparated, + ariaErrorMessage: null, + ariaExpanded: booleanish, + ariaFlowTo: spaceSeparated, + ariaGrabbed: booleanish, + ariaHasPopup: null, + ariaHidden: booleanish, + ariaInvalid: null, + ariaKeyShortcuts: null, + ariaLabel: null, + ariaLabelledBy: spaceSeparated, + ariaLevel: number, + ariaLive: null, + ariaModal: booleanish, + ariaMultiLine: booleanish, + ariaMultiSelectable: booleanish, + ariaOrientation: null, + ariaOwns: spaceSeparated, + ariaPlaceholder: null, + ariaPosInSet: number, + ariaPressed: booleanish, + ariaReadOnly: booleanish, + ariaRelevant: null, + ariaRequired: booleanish, + ariaRoleDescription: spaceSeparated, + ariaRowCount: number, + ariaRowIndex: number, + ariaRowSpan: number, + ariaSelected: booleanish, + ariaSetSize: number, + ariaSort: null, + ariaValueMax: number, + ariaValueMin: number, + ariaValueNow: number, + ariaValueText: null, + role: null + } +}) + +function ariaTransform(_, prop) { + return prop === 'role' ? prop : 'aria-' + prop.slice(4).toLowerCase() +} + + +/***/ }), + +/***/ 61805: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var types = __webpack_require__(17000) +var create = __webpack_require__(17596) +var caseInsensitiveTransform = __webpack_require__(10855) + +var boolean = types.boolean +var overloadedBoolean = types.overloadedBoolean +var booleanish = types.booleanish +var number = types.number +var spaceSeparated = types.spaceSeparated +var commaSeparated = types.commaSeparated + +module.exports = create({ + space: 'html', + attributes: { + acceptcharset: 'accept-charset', + classname: 'class', + htmlfor: 'for', + httpequiv: 'http-equiv' + }, + transform: caseInsensitiveTransform, + mustUseProperty: ['checked', 'multiple', 'muted', 'selected'], + properties: { + // Standard Properties. + abbr: null, + accept: commaSeparated, + acceptCharset: spaceSeparated, + accessKey: spaceSeparated, + action: null, + allow: null, + allowFullScreen: boolean, + allowPaymentRequest: boolean, + allowUserMedia: boolean, + alt: null, + as: null, + async: boolean, + autoCapitalize: null, + autoComplete: spaceSeparated, + autoFocus: boolean, + autoPlay: boolean, + capture: boolean, + charSet: null, + checked: boolean, + cite: null, + className: spaceSeparated, + cols: number, + colSpan: null, + content: null, + contentEditable: booleanish, + controls: boolean, + controlsList: spaceSeparated, + coords: number | commaSeparated, + crossOrigin: null, + data: null, + dateTime: null, + decoding: null, + default: boolean, + defer: boolean, + dir: null, + dirName: null, + disabled: boolean, + download: overloadedBoolean, + draggable: booleanish, + encType: null, + enterKeyHint: null, + form: null, + formAction: null, + formEncType: null, + formMethod: null, + formNoValidate: boolean, + formTarget: null, + headers: spaceSeparated, + height: number, + hidden: boolean, + high: number, + href: null, + hrefLang: null, + htmlFor: spaceSeparated, + httpEquiv: spaceSeparated, + id: null, + imageSizes: null, + imageSrcSet: commaSeparated, + inputMode: null, + integrity: null, + is: null, + isMap: boolean, + itemId: null, + itemProp: spaceSeparated, + itemRef: spaceSeparated, + itemScope: boolean, + itemType: spaceSeparated, + kind: null, + label: null, + lang: null, + language: null, + list: null, + loading: null, + loop: boolean, + low: number, + manifest: null, + max: null, + maxLength: number, + media: null, + method: null, + min: null, + minLength: number, + multiple: boolean, + muted: boolean, + name: null, + nonce: null, + noModule: boolean, + noValidate: boolean, + onAbort: null, + onAfterPrint: null, + onAuxClick: null, + onBeforePrint: null, + onBeforeUnload: null, + onBlur: null, + onCancel: null, + onCanPlay: null, + onCanPlayThrough: null, + onChange: null, + onClick: null, + onClose: null, + onContextMenu: null, + onCopy: null, + onCueChange: null, + onCut: null, + onDblClick: null, + onDrag: null, + onDragEnd: null, + onDragEnter: null, + onDragExit: null, + onDragLeave: null, + onDragOver: null, + onDragStart: null, + onDrop: null, + onDurationChange: null, + onEmptied: null, + onEnded: null, + onError: null, + onFocus: null, + onFormData: null, + onHashChange: null, + onInput: null, + onInvalid: null, + onKeyDown: null, + onKeyPress: null, + onKeyUp: null, + onLanguageChange: null, + onLoad: null, + onLoadedData: null, + onLoadedMetadata: null, + onLoadEnd: null, + onLoadStart: null, + onMessage: null, + onMessageError: null, + onMouseDown: null, + onMouseEnter: null, + onMouseLeave: null, + onMouseMove: null, + onMouseOut: null, + onMouseOver: null, + onMouseUp: null, + onOffline: null, + onOnline: null, + onPageHide: null, + onPageShow: null, + onPaste: null, + onPause: null, + onPlay: null, + onPlaying: null, + onPopState: null, + onProgress: null, + onRateChange: null, + onRejectionHandled: null, + onReset: null, + onResize: null, + onScroll: null, + onSecurityPolicyViolation: null, + onSeeked: null, + onSeeking: null, + onSelect: null, + onSlotChange: null, + onStalled: null, + onStorage: null, + onSubmit: null, + onSuspend: null, + onTimeUpdate: null, + onToggle: null, + onUnhandledRejection: null, + onUnload: null, + onVolumeChange: null, + onWaiting: null, + onWheel: null, + open: boolean, + optimum: number, + pattern: null, + ping: spaceSeparated, + placeholder: null, + playsInline: boolean, + poster: null, + preload: null, + readOnly: boolean, + referrerPolicy: null, + rel: spaceSeparated, + required: boolean, + reversed: boolean, + rows: number, + rowSpan: number, + sandbox: spaceSeparated, + scope: null, + scoped: boolean, + seamless: boolean, + selected: boolean, + shape: null, + size: number, + sizes: null, + slot: null, + span: number, + spellCheck: booleanish, + src: null, + srcDoc: null, + srcLang: null, + srcSet: commaSeparated, + start: number, + step: null, + style: null, + tabIndex: number, + target: null, + title: null, + translate: null, + type: null, + typeMustMatch: boolean, + useMap: null, + value: booleanish, + width: number, + wrap: null, + + // Legacy. + // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis + align: null, // Several. Use CSS `text-align` instead, + aLink: null, // `<body>`. Use CSS `a:active {color}` instead + archive: spaceSeparated, // `<object>`. List of URIs to archives + axis: null, // `<td>` and `<th>`. Use `scope` on `<th>` + background: null, // `<body>`. Use CSS `background-image` instead + bgColor: null, // `<body>` and table elements. Use CSS `background-color` instead + border: number, // `<table>`. Use CSS `border-width` instead, + borderColor: null, // `<table>`. Use CSS `border-color` instead, + bottomMargin: number, // `<body>` + cellPadding: null, // `<table>` + cellSpacing: null, // `<table>` + char: null, // Several table elements. When `align=char`, sets the character to align on + charOff: null, // Several table elements. When `char`, offsets the alignment + classId: null, // `<object>` + clear: null, // `<br>`. Use CSS `clear` instead + code: null, // `<object>` + codeBase: null, // `<object>` + codeType: null, // `<object>` + color: null, // `<font>` and `<hr>`. Use CSS instead + compact: boolean, // Lists. Use CSS to reduce space between items instead + declare: boolean, // `<object>` + event: null, // `<script>` + face: null, // `<font>`. Use CSS instead + frame: null, // `<table>` + frameBorder: null, // `<iframe>`. Use CSS `border` instead + hSpace: number, // `<img>` and `<object>` + leftMargin: number, // `<body>` + link: null, // `<body>`. Use CSS `a:link {color: *}` instead + longDesc: null, // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>` + lowSrc: null, // `<img>`. Use a `<picture>` + marginHeight: number, // `<body>` + marginWidth: number, // `<body>` + noResize: boolean, // `<frame>` + noHref: boolean, // `<area>`. Use no href instead of an explicit `nohref` + noShade: boolean, // `<hr>`. Use background-color and height instead of borders + noWrap: boolean, // `<td>` and `<th>` + object: null, // `<applet>` + profile: null, // `<head>` + prompt: null, // `<isindex>` + rev: null, // `<link>` + rightMargin: number, // `<body>` + rules: null, // `<table>` + scheme: null, // `<meta>` + scrolling: booleanish, // `<frame>`. Use overflow in the child context + standby: null, // `<object>` + summary: null, // `<table>` + text: null, // `<body>`. Use CSS `color` instead + topMargin: number, // `<body>` + valueType: null, // `<param>` + version: null, // `<html>`. Use a doctype. + vAlign: null, // Several. Use CSS `vertical-align` instead + vLink: null, // `<body>`. Use CSS `a:visited {color}` instead + vSpace: number, // `<img>` and `<object>` + + // Non-standard Properties. + allowTransparency: null, + autoCorrect: null, + autoSave: null, + disablePictureInPicture: boolean, + disableRemotePlayback: boolean, + prefix: null, + property: null, + results: number, + security: null, + unselectable: null + } +}) + + +/***/ }), + +/***/ 10855: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var caseSensitiveTransform = __webpack_require__(28740) + +module.exports = caseInsensitiveTransform + +function caseInsensitiveTransform(attributes, property) { + return caseSensitiveTransform(attributes, property.toLowerCase()) +} + + +/***/ }), + +/***/ 28740: +/***/ ((module) => { + +"use strict"; + + +module.exports = caseSensitiveTransform + +function caseSensitiveTransform(attributes, attribute) { + return attribute in attributes ? attributes[attribute] : attribute +} + + +/***/ }), + +/***/ 17596: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var normalize = __webpack_require__(66632) +var Schema = __webpack_require__(99607) +var DefinedInfo = __webpack_require__(98805) + +module.exports = create + +function create(definition) { + var space = definition.space + var mustUseProperty = definition.mustUseProperty || [] + var attributes = definition.attributes || {} + var props = definition.properties + var transform = definition.transform + var property = {} + var normal = {} + var prop + var info + + for (prop in props) { + info = new DefinedInfo( + prop, + transform(attributes, prop), + props[prop], + space + ) + + if (mustUseProperty.indexOf(prop) !== -1) { + info.mustUseProperty = true + } + + property[prop] = info + + normal[normalize(prop)] = prop + normal[normalize(info.attribute)] = prop + } + + return new Schema(property, normal, space) +} + + +/***/ }), + +/***/ 98805: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var Info = __webpack_require__(57643) +var types = __webpack_require__(17000) + +module.exports = DefinedInfo + +DefinedInfo.prototype = new Info() +DefinedInfo.prototype.defined = true + +var checks = [ + 'boolean', + 'booleanish', + 'overloadedBoolean', + 'number', + 'commaSeparated', + 'spaceSeparated', + 'commaOrSpaceSeparated' +] +var checksLength = checks.length + +function DefinedInfo(property, attribute, mask, space) { + var index = -1 + var check + + mark(this, 'space', space) + + Info.call(this, property, attribute) + + while (++index < checksLength) { + check = checks[index] + mark(this, check, (mask & types[check]) === types[check]) + } +} + +function mark(values, key, value) { + if (value) { + values[key] = value + } +} + + +/***/ }), + +/***/ 57643: +/***/ ((module) => { + +"use strict"; + + +module.exports = Info + +var proto = Info.prototype + +proto.space = null +proto.attribute = null +proto.property = null +proto.boolean = false +proto.booleanish = false +proto.overloadedBoolean = false +proto.number = false +proto.commaSeparated = false +proto.spaceSeparated = false +proto.commaOrSpaceSeparated = false +proto.mustUseProperty = false +proto.defined = false + +function Info(property, attribute) { + this.property = property + this.attribute = attribute +} + + +/***/ }), + +/***/ 19940: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var xtend = __webpack_require__(47529) +var Schema = __webpack_require__(99607) + +module.exports = merge + +function merge(definitions) { + var length = definitions.length + var property = [] + var normal = [] + var index = -1 + var info + var space + + while (++index < length) { + info = definitions[index] + property.push(info.property) + normal.push(info.normal) + space = info.space + } + + return new Schema( + xtend.apply(null, property), + xtend.apply(null, normal), + space + ) +} + + +/***/ }), + +/***/ 99607: +/***/ ((module) => { + +"use strict"; + + +module.exports = Schema + +var proto = Schema.prototype + +proto.space = null +proto.normal = {} +proto.property = {} + +function Schema(property, normal, space) { + this.property = property + this.normal = normal + + if (space) { + this.space = space + } +} + + +/***/ }), + +/***/ 17000: +/***/ ((__unused_webpack_module, exports) => { + +"use strict"; + + +var powers = 0 + +exports.boolean = increment() +exports.booleanish = increment() +exports.overloadedBoolean = increment() +exports.number = increment() +exports.spaceSeparated = increment() +exports.commaSeparated = increment() +exports.commaOrSpaceSeparated = increment() + +function increment() { + return Math.pow(2, ++powers) +} + + +/***/ }), + +/***/ 8289: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var create = __webpack_require__(17596) + +module.exports = create({ + space: 'xlink', + transform: xlinkTransform, + properties: { + xLinkActuate: null, + xLinkArcRole: null, + xLinkHref: null, + xLinkRole: null, + xLinkShow: null, + xLinkTitle: null, + xLinkType: null + } +}) + +function xlinkTransform(_, prop) { + return 'xlink:' + prop.slice(5).toLowerCase() +} + + +/***/ }), + +/***/ 5812: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var create = __webpack_require__(17596) + +module.exports = create({ + space: 'xml', + transform: xmlTransform, + properties: { + xmlLang: null, + xmlBase: null, + xmlSpace: null + } +}) + +function xmlTransform(_, prop) { + return 'xml:' + prop.slice(3).toLowerCase() +} + + +/***/ }), + +/***/ 94397: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var create = __webpack_require__(17596) +var caseInsensitiveTransform = __webpack_require__(10855) + +module.exports = create({ + space: 'xmlns', + attributes: { + xmlnsxlink: 'xmlns:xlink' + }, + transform: caseInsensitiveTransform, + properties: { + xmlns: null, + xmlnsXLink: null + } +}) + + +/***/ }), + +/***/ 66632: +/***/ ((module) => { + +"use strict"; + + +module.exports = normalize + +function normalize(value) { + return value.toLowerCase() +} + + +/***/ }), + +/***/ 11215: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +/* global window, self */ + +var restore = capture() + +// istanbul ignore next - Don't allow Prism to run on page load in browser or +// to start messaging from workers. +var ctx = + typeof window === 'undefined' + ? typeof self === 'undefined' + ? {} + : self + : window + +ctx.Prism = {manual: true, disableWorkerMessageHandler: true} + +// Load all stuff in `prism.js` itself, except for `prism-file-highlight.js`. +// The wrapped non-leaky grammars are loaded instead of Prism’s originals. +var h = __webpack_require__(31742) +var decode = __webpack_require__(22921) +var Prism = __webpack_require__(59216) +var markup = __webpack_require__(2717) +var css = __webpack_require__(12049) +var clike = __webpack_require__(29726) +var js = __webpack_require__(36155) + +restore() + +var own = {}.hasOwnProperty + +// Inherit. +function Refractor() {} + +Refractor.prototype = Prism + +// Construct. +var refract = new Refractor() + +// Expose. +module.exports = refract + +// Create. +refract.highlight = highlight +refract.register = register +refract.alias = alias +refract.registered = registered +refract.listLanguages = listLanguages + +// Register bundled grammars. +register(markup) +register(css) +register(clike) +register(js) + +refract.util.encode = encode +refract.Token.stringify = stringify + +function register(grammar) { + if (typeof grammar !== 'function' || !grammar.displayName) { + throw new Error('Expected `function` for `grammar`, got `' + grammar + '`') + } + + // Do not duplicate registrations. + if (refract.languages[grammar.displayName] === undefined) { + grammar(refract) + } +} + +function alias(name, alias) { + var languages = refract.languages + var map = name + var key + var list + var length + var index + + if (alias) { + map = {} + map[name] = alias + } + + for (key in map) { + list = map[key] + list = typeof list === 'string' ? [list] : list + length = list.length + index = -1 + + while (++index < length) { + languages[list[index]] = languages[key] + } + } +} + +function highlight(value, name) { + var sup = Prism.highlight + var grammar + + if (typeof value !== 'string') { + throw new Error('Expected `string` for `value`, got `' + value + '`') + } + + // `name` is a grammar object. + if (refract.util.type(name) === 'Object') { + grammar = name + name = null + } else { + if (typeof name !== 'string') { + throw new Error('Expected `string` for `name`, got `' + name + '`') + } + + if (own.call(refract.languages, name)) { + grammar = refract.languages[name] + } else { + throw new Error('Unknown language: `' + name + '` is not registered') + } + } + + return sup.call(this, value, grammar, name) +} + +function registered(language) { + if (typeof language !== 'string') { + throw new Error('Expected `string` for `language`, got `' + language + '`') + } + + return own.call(refract.languages, language) +} + +function listLanguages() { + var languages = refract.languages + var list = [] + var language + + for (language in languages) { + if ( + own.call(languages, language) && + typeof languages[language] === 'object' + ) { + list.push(language) + } + } + + return list +} + +function stringify(value, language, parent) { + var env + + if (typeof value === 'string') { + return {type: 'text', value: value} + } + + if (refract.util.type(value) === 'Array') { + return stringifyAll(value, language) + } + + env = { + type: value.type, + content: refract.Token.stringify(value.content, language, parent), + tag: 'span', + classes: ['token', value.type], + attributes: {}, + language: language, + parent: parent + } + + if (value.alias) { + env.classes = env.classes.concat(value.alias) + } + + refract.hooks.run('wrap', env) + + return h( + env.tag + '.' + env.classes.join('.'), + attributes(env.attributes), + env.content + ) +} + +function stringifyAll(values, language) { + var result = [] + var length = values.length + var index = -1 + var value + + while (++index < length) { + value = values[index] + + if (value !== '' && value !== null && value !== undefined) { + result.push(value) + } + } + + index = -1 + length = result.length + + while (++index < length) { + value = result[index] + result[index] = refract.Token.stringify(value, language, result) + } + + return result +} + +function encode(tokens) { + return tokens +} + +function attributes(attrs) { + var key + + for (key in attrs) { + attrs[key] = decode(attrs[key]) + } + + return attrs +} + +function capture() { + var defined = 'Prism' in global + /* istanbul ignore next */ + var current = defined ? global.Prism : undefined + + return restore + + function restore() { + /* istanbul ignore else - Clean leaks after Prism. */ + if (defined) { + global.Prism = current + } else { + delete global.Prism + } + + defined = undefined + current = undefined + } +} + + +/***/ }), + +/***/ 29726: +/***/ ((module) => { + +"use strict"; + + +module.exports = clike +clike.displayName = 'clike' +clike.aliases = [] +function clike(Prism) { + Prism.languages.clike = { + comment: [ + { + pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/, + lookbehind: true + }, + { + pattern: /(^|[^\\:])\/\/.*/, + lookbehind: true, + greedy: true + } + ], + string: { + pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + 'class-name': { + pattern: /((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i, + lookbehind: true, + inside: { + punctuation: /[.\\]/ + } + }, + keyword: /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/, + boolean: /\b(?:true|false)\b/, + function: /\w+(?=\()/, + number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i, + operator: /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/, + punctuation: /[{}[\];(),.:]/ + } +} + + +/***/ }), + +/***/ 12049: +/***/ ((module) => { + +"use strict"; + + +module.exports = css +css.displayName = 'css' +css.aliases = [] +function css(Prism) { + ;(function(Prism) { + var string = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ + Prism.languages.css = { + comment: /\/\*[\s\S]*?\*\//, + atrule: { + pattern: /@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/, + inside: { + rule: /@[\w-]+/ // See rest below + } + }, + url: { + pattern: RegExp('url\\((?:' + string.source + '|[^\n\r()]*)\\)', 'i'), + inside: { + function: /^url/i, + punctuation: /^\(|\)$/ + } + }, + selector: RegExp( + '[^{}\\s](?:[^{};"\']|' + string.source + ')*?(?=\\s*\\{)' + ), + string: { + pattern: string, + greedy: true + }, + property: /[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i, + important: /!important\b/i, + function: /[-a-z0-9]+(?=\()/i, + punctuation: /[(){};:,]/ + } + Prism.languages.css['atrule'].inside.rest = Prism.languages.css + var markup = Prism.languages.markup + if (markup) { + markup.tag.addInlined('style', 'css') + Prism.languages.insertBefore( + 'inside', + 'attr-value', + { + 'style-attr': { + pattern: /\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i, + inside: { + 'attr-name': { + pattern: /^\s*style/i, + inside: markup.tag.inside + }, + punctuation: /^\s*=\s*['"]|['"]\s*$/, + 'attr-value': { + pattern: /.+/i, + inside: Prism.languages.css + } + }, + alias: 'language-css' + } + }, + markup.tag + ) + } + })(Prism) +} + + +/***/ }), + +/***/ 36155: +/***/ ((module) => { + +"use strict"; + + +module.exports = javascript +javascript.displayName = 'javascript' +javascript.aliases = ['js'] +function javascript(Prism) { + Prism.languages.javascript = Prism.languages.extend('clike', { + 'class-name': [ + Prism.languages.clike['class-name'], + { + pattern: /(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/, + lookbehind: true + } + ], + keyword: [ + { + pattern: /((?:^|})\s*)(?:catch|finally)\b/, + lookbehind: true + }, + { + pattern: /(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|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)\b/, + lookbehind: true + } + ], + number: /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/, + // Allow for all non-ASCII characters (See http://stackoverflow.com/a/2008444) + function: /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/, + operator: /-[-=]?|\+[+=]?|!=?=?|<<?=?|>>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/ + }) + Prism.languages.javascript[ + 'class-name' + ][0].pattern = /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/ + Prism.languages.insertBefore('javascript', 'keyword', { + regex: { + pattern: /((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/, + lookbehind: true, + greedy: true + }, + // This must be declared before keyword because we use "function" inside the look-forward + 'function-variable': { + pattern: /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/, + alias: 'function' + }, + parameter: [ + { + pattern: /(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/, + lookbehind: true, + inside: Prism.languages.javascript + }, + { + pattern: /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i, + inside: Prism.languages.javascript + }, + { + pattern: /(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/, + lookbehind: true, + inside: Prism.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]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/, + lookbehind: true, + inside: Prism.languages.javascript + } + ], + constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/ + }) + Prism.languages.insertBefore('javascript', 'string', { + 'template-string': { + pattern: /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/, + greedy: true, + inside: { + 'template-punctuation': { + pattern: /^`|`$/, + alias: 'string' + }, + interpolation: { + pattern: /((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/, + lookbehind: true, + inside: { + 'interpolation-punctuation': { + pattern: /^\${|}$/, + alias: 'punctuation' + }, + rest: Prism.languages.javascript + } + }, + string: /[\s\S]+/ + } + } + }) + if (Prism.languages.markup) { + Prism.languages.markup.tag.addInlined('script', 'javascript') + } + Prism.languages.js = Prism.languages.javascript +} + + +/***/ }), + +/***/ 2717: +/***/ ((module) => { + +"use strict"; + + +module.exports = markup +markup.displayName = 'markup' +markup.aliases = ['xml', 'html', 'mathml', 'svg'] +function markup(Prism) { + Prism.languages.markup = { + comment: /<!--[\s\S]*?-->/, + prolog: /<\?[\s\S]+?\?>/, + doctype: /<!DOCTYPE[\s\S]+?>/i, + cdata: /<!\[CDATA\[[\s\S]*?]]>/i, + tag: { + pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i, + greedy: true, + inside: { + tag: { + pattern: /^<\/?[^\s>\/]+/i, + inside: { + punctuation: /^<\/?/, + namespace: /^[^\s>\/:]+:/ + } + }, + 'attr-value': { + pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i, + inside: { + punctuation: [ + /^=/, + { + pattern: /^(\s*)["']|["']$/, + lookbehind: true + } + ] + } + }, + punctuation: /\/?>/, + 'attr-name': { + pattern: /[^\s>\/]+/, + inside: { + namespace: /^[^\s>\/:]+:/ + } + } + } + }, + entity: /&#?[\da-z]{1,8};/i + } + Prism.languages.markup['tag'].inside['attr-value'].inside['entity'] = + Prism.languages.markup['entity'] // Plugin to make entity title show the real entity, idea by Roman Komarov + Prism.hooks.add('wrap', function(env) { + if (env.type === 'entity') { + env.attributes['title'] = env.content.value.replace(/&/, '&') + } + }) + Object.defineProperty(Prism.languages.markup.tag, 'addInlined', { + /** + * Adds an inlined language to markup. + * + * An example of an inlined language is CSS with `<style>` tags. + * + * @param {string} tagName The name of the tag that contains the inlined language. This name will be treated as + * case insensitive. + * @param {string} lang The language key. + * @example + * addInlined('style', 'css'); + */ + value: function addInlined(tagName, lang) { + var includedCdataInside = {} + includedCdataInside['language-' + lang] = { + pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i, + lookbehind: true, + inside: Prism.languages[lang] + } + includedCdataInside['cdata'] = /^<!\[CDATA\[|\]\]>$/i + var inside = { + 'included-cdata': { + pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i, + inside: includedCdataInside + } + } + inside['language-' + lang] = { + pattern: /[\s\S]+/, + inside: Prism.languages[lang] + } + var def = {} + def[tagName] = { + pattern: RegExp( + /(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace( + /__/g, + tagName + ), + 'i' + ), + lookbehind: true, + greedy: true, + inside: inside + } + Prism.languages.insertBefore('markup', 'cdata', def) + } + }) + Prism.languages.xml = Prism.languages.extend('markup', {}) + Prism.languages.html = Prism.languages.markup + Prism.languages.mathml = Prism.languages.markup + Prism.languages.svg = Prism.languages.markup +} + + +/***/ }), + +/***/ 47883: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var characterEntities = __webpack_require__(82661) + +module.exports = decodeEntity + +var own = {}.hasOwnProperty + +function decodeEntity(characters) { + return own.call(characterEntities, characters) + ? characterEntities[characters] + : false +} + + +/***/ }), + +/***/ 22921: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +"use strict"; + + +var legacy = __webpack_require__(37452) +var invalid = __webpack_require__(93580) +var decimal = __webpack_require__(46195) +var hexadecimal = __webpack_require__(79480) +var alphanumerical = __webpack_require__(7961) +var decodeEntity = __webpack_require__(47883) + +module.exports = parseEntities + +var own = {}.hasOwnProperty +var fromCharCode = String.fromCharCode +var noop = Function.prototype + +// Default settings. +var defaults = { + warning: null, + reference: null, + text: null, + warningContext: null, + referenceContext: null, + textContext: null, + position: {}, + additional: null, + attribute: false, + nonTerminated: true +} + +// Characters. +var tab = 9 // '\t' +var lineFeed = 10 // '\n' +var formFeed = 12 // '\f' +var space = 32 // ' ' +var ampersand = 38 // '&' +var semicolon = 59 // ';' +var lessThan = 60 // '<' +var equalsTo = 61 // '=' +var numberSign = 35 // '#' +var uppercaseX = 88 // 'X' +var lowercaseX = 120 // 'x' +var replacementCharacter = 65533 // '�' + +// Reference types. +var name = 'named' +var hexa = 'hexadecimal' +var deci = 'decimal' + +// Map of bases. +var bases = {} + +bases[hexa] = 16 +bases[deci] = 10 + +// Map of types to tests. +// Each type of character reference accepts different characters. +// This test is used to detect whether a reference has ended (as the semicolon +// is not strictly needed). +var tests = {} + +tests[name] = alphanumerical +tests[deci] = decimal +tests[hexa] = hexadecimal + +// Warning types. +var namedNotTerminated = 1 +var numericNotTerminated = 2 +var namedEmpty = 3 +var numericEmpty = 4 +var namedUnknown = 5 +var numericDisallowed = 6 +var numericProhibited = 7 + +// Warning messages. +var messages = {} + +messages[namedNotTerminated] = + 'Named character references must be terminated by a semicolon' +messages[numericNotTerminated] = + 'Numeric character references must be terminated by a semicolon' +messages[namedEmpty] = 'Named character references cannot be empty' +messages[numericEmpty] = 'Numeric character references cannot be empty' +messages[namedUnknown] = 'Named character references must be known' +messages[numericDisallowed] = + 'Numeric character references cannot be disallowed' +messages[numericProhibited] = + 'Numeric character references cannot be outside the permissible Unicode range' + +// Wrap to ensure clean parameters are given to `parse`. +function parseEntities(value, options) { + var settings = {} + var option + var key + + if (!options) { + options = {} + } + + for (key in defaults) { + option = options[key] + settings[key] = + option === null || option === undefined ? defaults[key] : option + } + + if (settings.position.indent || settings.position.start) { + settings.indent = settings.position.indent || [] + settings.position = settings.position.start + } + + return parse(value, settings) +} + +// Parse entities. +// eslint-disable-next-line complexity +function parse(value, settings) { + var additional = settings.additional + var nonTerminated = settings.nonTerminated + var handleText = settings.text + var handleReference = settings.reference + var handleWarning = settings.warning + var textContext = settings.textContext + var referenceContext = settings.referenceContext + var warningContext = settings.warningContext + var pos = settings.position + var indent = settings.indent || [] + var length = value.length + var index = 0 + var lines = -1 + var column = pos.column || 1 + var line = pos.line || 1 + var queue = '' + var result = [] + var entityCharacters + var namedEntity + var terminated + var characters + var character + var reference + var following + var warning + var reason + var output + var entity + var begin + var start + var type + var test + var prev + var next + var diff + var end + + if (typeof additional === 'string') { + additional = additional.charCodeAt(0) + } + + // Cache the current point. + prev = now() + + // Wrap `handleWarning`. + warning = handleWarning ? parseError : noop + + // Ensure the algorithm walks over the first character and the end (inclusive). + index-- + length++ + + while (++index < length) { + // If the previous character was a newline. + if (character === lineFeed) { + column = indent[lines] || 1 + } + + character = value.charCodeAt(index) + + if (character === ampersand) { + following = value.charCodeAt(index + 1) + + // The behaviour depends on the identity of the next character. + if ( + following === tab || + following === lineFeed || + following === formFeed || + following === space || + following === ampersand || + following === lessThan || + following !== following || + (additional && following === additional) + ) { + // Not a character reference. + // No characters are consumed, and nothing is returned. + // This is not an error, either. + queue += fromCharCode(character) + column++ + + continue + } + + start = index + 1 + begin = start + end = start + + if (following === numberSign) { + // Numerical entity. + end = ++begin + + // The behaviour further depends on the next character. + following = value.charCodeAt(end) + + if (following === uppercaseX || following === lowercaseX) { + // ASCII hex digits. + type = hexa + end = ++begin + } else { + // ASCII digits. + type = deci + } + } else { + // Named entity. + type = name + } + + entityCharacters = '' + entity = '' + characters = '' + test = tests[type] + end-- + + while (++end < length) { + following = value.charCodeAt(end) + + if (!test(following)) { + break + } + + characters += fromCharCode(following) + + // Check if we can match a legacy named reference. + // If so, we cache that as the last viable named reference. + // This ensures we do not need to walk backwards later. + if (type === name && own.call(legacy, characters)) { + entityCharacters = characters + entity = legacy[characters] + } + } + + terminated = value.charCodeAt(end) === semicolon + + if (terminated) { + end++ + + namedEntity = type === name ? decodeEntity(characters) : false + + if (namedEntity) { + entityCharacters = characters + entity = namedEntity + } + } + + diff = 1 + end - start + + if (!terminated && !nonTerminated) { + // Empty. + } else if (!characters) { + // An empty (possible) entity is valid, unless it’s numeric (thus an + // ampersand followed by an octothorp). + if (type !== name) { + warning(numericEmpty, diff) + } + } else if (type === name) { + // An ampersand followed by anything unknown, and not terminated, is + // invalid. + if (terminated && !entity) { + warning(namedUnknown, 1) + } else { + // If theres something after an entity name which is not known, cap + // the reference. + if (entityCharacters !== characters) { + end = begin + entityCharacters.length + diff = 1 + end - begin + terminated = false + } + + // If the reference is not terminated, warn. + if (!terminated) { + reason = entityCharacters ? namedNotTerminated : namedEmpty + + if (settings.attribute) { + following = value.charCodeAt(end) + + if (following === equalsTo) { + warning(reason, diff) + entity = null + } else if (alphanumerical(following)) { + entity = null + } else { + warning(reason, diff) + } + } else { + warning(reason, diff) + } + } + } + + reference = entity + } else { + if (!terminated) { + // All non-terminated numeric entities are not rendered, and trigger a + // warning. + warning(numericNotTerminated, diff) + } + + // When terminated and number, parse as either hexadecimal or decimal. + reference = parseInt(characters, bases[type]) + + // Trigger a warning when the parsed number is prohibited, and replace + // with replacement character. + if (prohibited(reference)) { + warning(numericProhibited, diff) + reference = fromCharCode(replacementCharacter) + } else if (reference in invalid) { + // Trigger a warning when the parsed number is disallowed, and replace + // by an alternative. + warning(numericDisallowed, diff) + reference = invalid[reference] + } else { + // Parse the number. + output = '' + + // Trigger a warning when the parsed number should not be used. + if (disallowed(reference)) { + warning(numericDisallowed, diff) + } + + // Stringify the number. + if (reference > 0xffff) { + reference -= 0x10000 + output += fromCharCode((reference >>> (10 & 0x3ff)) | 0xd800) + reference = 0xdc00 | (reference & 0x3ff) + } + + reference = output + fromCharCode(reference) + } + } + + // Found it! + // First eat the queued characters as normal text, then eat an entity. + if (reference) { + flush() + + prev = now() + index = end - 1 + column += end - start + 1 + result.push(reference) + next = now() + next.offset++ + + if (handleReference) { + handleReference.call( + referenceContext, + reference, + {start: prev, end: next}, + value.slice(start - 1, end) + ) + } + + prev = next + } else { + // If we could not find a reference, queue the checked characters (as + // normal characters), and move the pointer to their end. + // This is possible because we can be certain neither newlines nor + // ampersands are included. + characters = value.slice(start - 1, end) + queue += characters + column += characters.length + index = end - 1 + } + } else { + // Handle anything other than an ampersand, including newlines and EOF. + if ( + character === 10 // Line feed + ) { + line++ + lines++ + column = 0 + } + + if (character === character) { + queue += fromCharCode(character) + column++ + } else { + flush() + } + } + } + + // Return the reduced nodes, and any possible warnings. + return result.join('') + + // Get current position. + function now() { + return { + line: line, + column: column, + offset: index + (pos.offset || 0) + } + } + + // “Throw” a parse-error: a warning. + function parseError(code, offset) { + var position = now() + + position.column += offset + position.offset += offset + + handleWarning.call(warningContext, messages[code], position, code) + } + + // Flush `queue` (normal text). + // Macro invoked before each entity and at the end of `value`. + // Does nothing when `queue` is empty. + function flush() { + if (queue) { + result.push(queue) + + if (handleText) { + handleText.call(textContext, queue, {start: prev, end: now()}) + } + + queue = '' + } + } +} + +// Check if `character` is outside the permissible unicode range. +function prohibited(code) { + return (code >= 0xd800 && code <= 0xdfff) || code > 0x10ffff +} + +// Check if `character` is disallowed. +function disallowed(code) { + return ( + (code >= 0x0001 && code <= 0x0008) || + code === 0x000b || + (code >= 0x000d && code <= 0x001f) || + (code >= 0x007f && code <= 0x009f) || + (code >= 0xfdd0 && code <= 0xfdef) || + (code & 0xffff) === 0xffff || + (code & 0xffff) === 0xfffe + ) +} + + +/***/ }), + +/***/ 59216: +/***/ ((module) => { + +var _self = (typeof window !== 'undefined') + ? window // if in browser + : ( + (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope) + ? self // if in worker + : {} // if in node js + ); + +/** + * Prism: Lightweight, robust, elegant syntax highlighting + * MIT license http://www.opensource.org/licenses/mit-license.php/ + * @author Lea Verou http://lea.verou.me + */ + +var Prism = (function (_self){ + +// Private helper vars +var lang = /\blang(?:uage)?-([\w-]+)\b/i; +var uniqueId = 0; + +var _ = { + manual: _self.Prism && _self.Prism.manual, + disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler, + util: { + encode: function (tokens) { + if (tokens instanceof Token) { + return new Token(tokens.type, _.util.encode(tokens.content), tokens.alias); + } else if (Array.isArray(tokens)) { + return tokens.map(_.util.encode); + } else { + return tokens.replace(/&/g, '&').replace(/</g, '<').replace(/\u00a0/g, ' '); + } + }, + + type: function (o) { + return Object.prototype.toString.call(o).slice(8, -1); + }, + + objId: function (obj) { + if (!obj['__id']) { + Object.defineProperty(obj, '__id', { value: ++uniqueId }); + } + return obj['__id']; + }, + + // Deep clone a language definition (e.g. to extend it) + clone: function deepClone(o, visited) { + var clone, id, type = _.util.type(o); + visited = visited || {}; + + switch (type) { + case 'Object': + id = _.util.objId(o); + if (visited[id]) { + return visited[id]; + } + clone = {}; + visited[id] = clone; + + for (var key in o) { + if (o.hasOwnProperty(key)) { + clone[key] = deepClone(o[key], visited); + } + } + + return clone; + + case 'Array': + id = _.util.objId(o); + if (visited[id]) { + return visited[id]; + } + clone = []; + visited[id] = clone; + + o.forEach(function (v, i) { + clone[i] = deepClone(v, visited); + }); + + return clone; + + default: + return o; + } + } + }, + + languages: { + extend: function (id, redef) { + var lang = _.util.clone(_.languages[id]); + + for (var key in redef) { + lang[key] = redef[key]; + } + + return lang; + }, + + /** + * Insert a token before another token in a language literal + * As this needs to recreate the object (we cannot actually insert before keys in object literals), + * we cannot just provide an object, we need an object and a key. + * @param inside The key (or language id) of the parent + * @param before The key to insert before. + * @param insert Object with the key/value pairs to insert + * @param root The object that contains `inside`. If equal to Prism.languages, it can be omitted. + */ + insertBefore: function (inside, before, insert, root) { + root = root || _.languages; + var grammar = root[inside]; + var ret = {}; + + for (var token in grammar) { + if (grammar.hasOwnProperty(token)) { + + if (token == before) { + for (var newToken in insert) { + if (insert.hasOwnProperty(newToken)) { + ret[newToken] = insert[newToken]; + } + } + } + + // Do not insert token which also occur in insert. See #1525 + if (!insert.hasOwnProperty(token)) { + ret[token] = grammar[token]; + } + } + } + + var old = root[inside]; + root[inside] = ret; + + // Update references in other language definitions + _.languages.DFS(_.languages, function(key, value) { + if (value === old && key != inside) { + this[key] = ret; + } + }); + + return ret; + }, + + // Traverse a language definition with Depth First Search + DFS: function DFS(o, callback, type, visited) { + visited = visited || {}; + + var objId = _.util.objId; + + for (var i in o) { + if (o.hasOwnProperty(i)) { + callback.call(o, i, o[i], type || i); + + var property = o[i], + propertyType = _.util.type(property); + + if (propertyType === 'Object' && !visited[objId(property)]) { + visited[objId(property)] = true; + DFS(property, callback, null, visited); + } + else if (propertyType === 'Array' && !visited[objId(property)]) { + visited[objId(property)] = true; + DFS(property, callback, i, visited); + } + } + } + } + }, + plugins: {}, + + highlightAll: function(async, callback) { + _.highlightAllUnder(document, async, callback); + }, + + highlightAllUnder: function(container, async, callback) { + var env = { + callback: callback, + selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code' + }; + + _.hooks.run('before-highlightall', env); + + var elements = container.querySelectorAll(env.selector); + + for (var i=0, element; element = elements[i++];) { + _.highlightElement(element, async === true, env.callback); + } + }, + + highlightElement: function(element, async, callback) { + // Find language + var language = 'none', grammar, parent = element; + + while (parent && !lang.test(parent.className)) { + parent = parent.parentNode; + } + + if (parent) { + language = (parent.className.match(lang) || [,'none'])[1].toLowerCase(); + grammar = _.languages[language]; + } + + // Set language on the element, if not present + element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language; + + if (element.parentNode) { + // Set language on the parent, for styling + parent = element.parentNode; + + if (/pre/i.test(parent.nodeName)) { + parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language; + } + } + + var code = element.textContent; + + var env = { + element: element, + language: language, + grammar: grammar, + code: code + }; + + var insertHighlightedCode = function (highlightedCode) { + env.highlightedCode = highlightedCode; + + _.hooks.run('before-insert', env); + + env.element.innerHTML = env.highlightedCode; + + _.hooks.run('after-highlight', env); + _.hooks.run('complete', env); + callback && callback.call(env.element); + } + + _.hooks.run('before-sanity-check', env); + + if (!env.code) { + _.hooks.run('complete', env); + return; + } + + _.hooks.run('before-highlight', env); + + if (!env.grammar) { + insertHighlightedCode(_.util.encode(env.code)); + return; + } + + if (async && _self.Worker) { + var worker = new Worker(_.filename); + + worker.onmessage = function(evt) { + insertHighlightedCode(evt.data); + }; + + worker.postMessage(JSON.stringify({ + language: env.language, + code: env.code, + immediateClose: true + })); + } + else { + insertHighlightedCode(_.highlight(env.code, env.grammar, env.language)); + } + }, + + highlight: function (text, grammar, language) { + var env = { + code: text, + grammar: grammar, + language: language + }; + _.hooks.run('before-tokenize', env); + env.tokens = _.tokenize(env.code, env.grammar); + _.hooks.run('after-tokenize', env); + return Token.stringify(_.util.encode(env.tokens), env.language); + }, + + matchGrammar: function (text, strarr, grammar, index, startPos, oneshot, target) { + for (var token in grammar) { + if(!grammar.hasOwnProperty(token) || !grammar[token]) { + continue; + } + + if (token == target) { + return; + } + + var patterns = grammar[token]; + patterns = (_.util.type(patterns) === "Array") ? patterns : [patterns]; + + for (var j = 0; j < patterns.length; ++j) { + var pattern = patterns[j], + inside = pattern.inside, + lookbehind = !!pattern.lookbehind, + greedy = !!pattern.greedy, + lookbehindLength = 0, + alias = pattern.alias; + + if (greedy && !pattern.pattern.global) { + // Without the global flag, lastIndex won't work + var flags = pattern.pattern.toString().match(/[imuy]*$/)[0]; + pattern.pattern = RegExp(pattern.pattern.source, flags + "g"); + } + + pattern = pattern.pattern || pattern; + + // Don’t cache length as it changes during the loop + for (var i = index, pos = startPos; i < strarr.length; pos += strarr[i].length, ++i) { + + var str = strarr[i]; + + if (strarr.length > text.length) { + // Something went terribly wrong, ABORT, ABORT! + return; + } + + if (str instanceof Token) { + continue; + } + + if (greedy && i != strarr.length - 1) { + pattern.lastIndex = pos; + var match = pattern.exec(text); + if (!match) { + break; + } + + var from = match.index + (lookbehind ? match[1].length : 0), + to = match.index + match[0].length, + k = i, + p = pos; + + for (var len = strarr.length; k < len && (p < to || (!strarr[k].type && !strarr[k - 1].greedy)); ++k) { + p += strarr[k].length; + // Move the index i to the element in strarr that is closest to from + if (from >= p) { + ++i; + pos = p; + } + } + + // If strarr[i] is a Token, then the match starts inside another Token, which is invalid + if (strarr[i] instanceof Token) { + continue; + } + + // Number of tokens to delete and replace with the new match + delNum = k - i; + str = text.slice(pos, p); + match.index -= pos; + } else { + pattern.lastIndex = 0; + + var match = pattern.exec(str), + delNum = 1; + } + + if (!match) { + if (oneshot) { + break; + } + + continue; + } + + if(lookbehind) { + lookbehindLength = match[1] ? match[1].length : 0; + } + + var from = match.index + lookbehindLength, + match = match[0].slice(lookbehindLength), + to = from + match.length, + before = str.slice(0, from), + after = str.slice(to); + + var args = [i, delNum]; + + if (before) { + ++i; + pos += before.length; + args.push(before); + } + + var wrapped = new Token(token, inside? _.tokenize(match, inside) : match, alias, match, greedy); + + args.push(wrapped); + + if (after) { + args.push(after); + } + + Array.prototype.splice.apply(strarr, args); + + if (delNum != 1) + _.matchGrammar(text, strarr, grammar, i, pos, true, token); + + if (oneshot) + break; + } + } + } + }, + + tokenize: function(text, grammar) { + var strarr = [text]; + + var rest = grammar.rest; + + if (rest) { + for (var token in rest) { + grammar[token] = rest[token]; + } + + delete grammar.rest; + } + + _.matchGrammar(text, strarr, grammar, 0, 0, false); + + return strarr; + }, + + hooks: { + all: {}, + + add: function (name, callback) { + var hooks = _.hooks.all; + + hooks[name] = hooks[name] || []; + + hooks[name].push(callback); + }, + + run: function (name, env) { + var callbacks = _.hooks.all[name]; + + if (!callbacks || !callbacks.length) { + return; + } + + for (var i=0, callback; callback = callbacks[i++];) { + callback(env); + } + } + }, + + Token: Token +}; + +_self.Prism = _; + +function Token(type, content, alias, matchedStr, greedy) { + this.type = type; + this.content = content; + this.alias = alias; + // Copy of the full string this token was created from + this.length = (matchedStr || "").length|0; + this.greedy = !!greedy; +} + +Token.stringify = function(o, language) { + if (typeof o == 'string') { + return o; + } + + if (Array.isArray(o)) { + return o.map(function(element) { + return Token.stringify(element, language); + }).join(''); + } + + var env = { + type: o.type, + content: Token.stringify(o.content, language), + tag: 'span', + classes: ['token', o.type], + attributes: {}, + language: language + }; + + if (o.alias) { + var aliases = Array.isArray(o.alias) ? o.alias : [o.alias]; + Array.prototype.push.apply(env.classes, aliases); + } + + _.hooks.run('wrap', env); + + var attributes = Object.keys(env.attributes).map(function(name) { + return name + '="' + (env.attributes[name] || '').replace(/"/g, '"') + '"'; + }).join(' '); + + return '<' + env.tag + ' class="' + env.classes.join(' ') + '"' + (attributes ? ' ' + attributes : '') + '>' + env.content + '</' + env.tag + '>'; +}; + +if (!_self.document) { + if (!_self.addEventListener) { + // in Node.js + return _; + } + + if (!_.disableWorkerMessageHandler) { + // In worker + _self.addEventListener('message', function (evt) { + var message = JSON.parse(evt.data), + lang = message.language, + code = message.code, + immediateClose = message.immediateClose; + + _self.postMessage(_.highlight(code, _.languages[lang], lang)); + if (immediateClose) { + _self.close(); + } + }, false); + } + + return _; +} + +//Get current script and highlight +var script = document.currentScript || [].slice.call(document.getElementsByTagName("script")).pop(); + +if (script) { + _.filename = script.src; + + if (!_.manual && !script.hasAttribute('data-manual')) { + if(document.readyState !== "loading") { + if (window.requestAnimationFrame) { + window.requestAnimationFrame(_.highlightAll); + } else { + window.setTimeout(_.highlightAll, 16); + } + } + else { + document.addEventListener('DOMContentLoaded', _.highlightAll); + } + } +} + +return _; + +})(_self); + +if ( true && module.exports) { + module.exports = Prism; +} + +// hack for components to work correctly in node.js +if (typeof global !== 'undefined') { + global.Prism = Prism; +} + + +/***/ }), + +/***/ 36582: +/***/ ((__unused_webpack_module, exports) => { + +"use strict"; +var __webpack_unused_export__; + + +exports.Q = parse +__webpack_unused_export__ = stringify + +var empty = '' +var space = ' ' +var whiteSpace = /[ \t\n\r\f]+/g + +function parse(value) { + var input = String(value || empty).trim() + return input === empty ? [] : input.split(whiteSpace) +} + +function stringify(values) { + return values.join(space).trim() +} + + +/***/ }), + +/***/ 47529: +/***/ ((module) => { + +module.exports = extend + +var hasOwnProperty = Object.prototype.hasOwnProperty; + +function extend() { + var target = {} + + for (var i = 0; i < arguments.length; i++) { + var source = arguments[i] + + for (var key in source) { + if (hasOwnProperty.call(source, key)) { + target[key] = source[key] + } + } + } + + return target +} + + +/***/ }), + +/***/ 37452: +/***/ ((module) => { + +"use strict"; +module.exports = JSON.parse('{"AElig":"Æ","AMP":"&","Aacute":"Á","Acirc":"Â","Agrave":"À","Aring":"Å","Atilde":"Ã","Auml":"Ä","COPY":"©","Ccedil":"Ç","ETH":"Ð","Eacute":"É","Ecirc":"Ê","Egrave":"È","Euml":"Ë","GT":">","Iacute":"Í","Icirc":"Î","Igrave":"Ì","Iuml":"Ï","LT":"<","Ntilde":"Ñ","Oacute":"Ó","Ocirc":"Ô","Ograve":"Ò","Oslash":"Ø","Otilde":"Õ","Ouml":"Ö","QUOT":"\\"","REG":"®","THORN":"Þ","Uacute":"Ú","Ucirc":"Û","Ugrave":"Ù","Uuml":"Ü","Yacute":"Ý","aacute":"á","acirc":"â","acute":"´","aelig":"æ","agrave":"à","amp":"&","aring":"å","atilde":"ã","auml":"ä","brvbar":"¦","ccedil":"ç","cedil":"¸","cent":"¢","copy":"©","curren":"¤","deg":"°","divide":"÷","eacute":"é","ecirc":"ê","egrave":"è","eth":"ð","euml":"ë","frac12":"½","frac14":"¼","frac34":"¾","gt":">","iacute":"í","icirc":"î","iexcl":"¡","igrave":"ì","iquest":"¿","iuml":"ï","laquo":"«","lt":"<","macr":"¯","micro":"µ","middot":"·","nbsp":" ","not":"¬","ntilde":"ñ","oacute":"ó","ocirc":"ô","ograve":"ò","ordf":"ª","ordm":"º","oslash":"ø","otilde":"õ","ouml":"ö","para":"¶","plusmn":"±","pound":"£","quot":"\\"","raquo":"»","reg":"®","sect":"§","shy":"­","sup1":"¹","sup2":"²","sup3":"³","szlig":"ß","thorn":"þ","times":"×","uacute":"ú","ucirc":"û","ugrave":"ù","uml":"¨","uuml":"ü","yacute":"ý","yen":"¥","yuml":"ÿ"}'); + +/***/ }), + +/***/ 82661: +/***/ ((module) => { + +"use strict"; +module.exports = JSON.parse('{"AEli":"Æ","AElig":"Æ","AM":"&","AMP":"&","Aacut":"Á","Aacute":"Á","Abreve":"Ă","Acir":"Â","Acirc":"Â","Acy":"А","Afr":"𝔄","Agrav":"À","Agrave":"À","Alpha":"Α","Amacr":"Ā","And":"⩓","Aogon":"Ą","Aopf":"𝔸","ApplyFunction":"⁡","Arin":"Å","Aring":"Å","Ascr":"𝒜","Assign":"≔","Atild":"Ã","Atilde":"Ã","Aum":"Ä","Auml":"Ä","Backslash":"∖","Barv":"⫧","Barwed":"⌆","Bcy":"Б","Because":"∵","Bernoullis":"ℬ","Beta":"Β","Bfr":"𝔅","Bopf":"𝔹","Breve":"˘","Bscr":"ℬ","Bumpeq":"≎","CHcy":"Ч","COP":"©","COPY":"©","Cacute":"Ć","Cap":"⋒","CapitalDifferentialD":"ⅅ","Cayleys":"ℭ","Ccaron":"Č","Ccedi":"Ç","Ccedil":"Ç","Ccirc":"Ĉ","Cconint":"∰","Cdot":"Ċ","Cedilla":"¸","CenterDot":"·","Cfr":"ℭ","Chi":"Χ","CircleDot":"⊙","CircleMinus":"⊖","CirclePlus":"⊕","CircleTimes":"⊗","ClockwiseContourIntegral":"∲","CloseCurlyDoubleQuote":"”","CloseCurlyQuote":"’","Colon":"∷","Colone":"⩴","Congruent":"≡","Conint":"∯","ContourIntegral":"∮","Copf":"ℂ","Coproduct":"∐","CounterClockwiseContourIntegral":"∳","Cross":"⨯","Cscr":"𝒞","Cup":"⋓","CupCap":"≍","DD":"ⅅ","DDotrahd":"⤑","DJcy":"Ђ","DScy":"Ѕ","DZcy":"Џ","Dagger":"‡","Darr":"↡","Dashv":"⫤","Dcaron":"Ď","Dcy":"Д","Del":"∇","Delta":"Δ","Dfr":"𝔇","DiacriticalAcute":"´","DiacriticalDot":"˙","DiacriticalDoubleAcute":"˝","DiacriticalGrave":"`","DiacriticalTilde":"˜","Diamond":"⋄","DifferentialD":"ⅆ","Dopf":"𝔻","Dot":"¨","DotDot":"⃜","DotEqual":"≐","DoubleContourIntegral":"∯","DoubleDot":"¨","DoubleDownArrow":"⇓","DoubleLeftArrow":"⇐","DoubleLeftRightArrow":"⇔","DoubleLeftTee":"⫤","DoubleLongLeftArrow":"⟸","DoubleLongLeftRightArrow":"⟺","DoubleLongRightArrow":"⟹","DoubleRightArrow":"⇒","DoubleRightTee":"⊨","DoubleUpArrow":"⇑","DoubleUpDownArrow":"⇕","DoubleVerticalBar":"∥","DownArrow":"↓","DownArrowBar":"⤓","DownArrowUpArrow":"⇵","DownBreve":"̑","DownLeftRightVector":"⥐","DownLeftTeeVector":"⥞","DownLeftVector":"↽","DownLeftVectorBar":"⥖","DownRightTeeVector":"⥟","DownRightVector":"⇁","DownRightVectorBar":"⥗","DownTee":"⊤","DownTeeArrow":"↧","Downarrow":"⇓","Dscr":"𝒟","Dstrok":"Đ","ENG":"Ŋ","ET":"Ð","ETH":"Ð","Eacut":"É","Eacute":"É","Ecaron":"Ě","Ecir":"Ê","Ecirc":"Ê","Ecy":"Э","Edot":"Ė","Efr":"𝔈","Egrav":"È","Egrave":"È","Element":"∈","Emacr":"Ē","EmptySmallSquare":"◻","EmptyVerySmallSquare":"▫","Eogon":"Ę","Eopf":"𝔼","Epsilon":"Ε","Equal":"⩵","EqualTilde":"≂","Equilibrium":"⇌","Escr":"ℰ","Esim":"⩳","Eta":"Η","Eum":"Ë","Euml":"Ë","Exists":"∃","ExponentialE":"ⅇ","Fcy":"Ф","Ffr":"𝔉","FilledSmallSquare":"◼","FilledVerySmallSquare":"▪","Fopf":"𝔽","ForAll":"∀","Fouriertrf":"ℱ","Fscr":"ℱ","GJcy":"Ѓ","G":">","GT":">","Gamma":"Γ","Gammad":"Ϝ","Gbreve":"Ğ","Gcedil":"Ģ","Gcirc":"Ĝ","Gcy":"Г","Gdot":"Ġ","Gfr":"𝔊","Gg":"⋙","Gopf":"𝔾","GreaterEqual":"≥","GreaterEqualLess":"⋛","GreaterFullEqual":"≧","GreaterGreater":"⪢","GreaterLess":"≷","GreaterSlantEqual":"⩾","GreaterTilde":"≳","Gscr":"𝒢","Gt":"≫","HARDcy":"Ъ","Hacek":"ˇ","Hat":"^","Hcirc":"Ĥ","Hfr":"ℌ","HilbertSpace":"ℋ","Hopf":"ℍ","HorizontalLine":"─","Hscr":"ℋ","Hstrok":"Ħ","HumpDownHump":"≎","HumpEqual":"≏","IEcy":"Е","IJlig":"IJ","IOcy":"Ё","Iacut":"Í","Iacute":"Í","Icir":"Î","Icirc":"Î","Icy":"И","Idot":"İ","Ifr":"ℑ","Igrav":"Ì","Igrave":"Ì","Im":"ℑ","Imacr":"Ī","ImaginaryI":"ⅈ","Implies":"⇒","Int":"∬","Integral":"∫","Intersection":"⋂","InvisibleComma":"⁣","InvisibleTimes":"⁢","Iogon":"Į","Iopf":"𝕀","Iota":"Ι","Iscr":"ℐ","Itilde":"Ĩ","Iukcy":"І","Ium":"Ï","Iuml":"Ï","Jcirc":"Ĵ","Jcy":"Й","Jfr":"𝔍","Jopf":"𝕁","Jscr":"𝒥","Jsercy":"Ј","Jukcy":"Є","KHcy":"Х","KJcy":"Ќ","Kappa":"Κ","Kcedil":"Ķ","Kcy":"К","Kfr":"𝔎","Kopf":"𝕂","Kscr":"𝒦","LJcy":"Љ","L":"<","LT":"<","Lacute":"Ĺ","Lambda":"Λ","Lang":"⟪","Laplacetrf":"ℒ","Larr":"↞","Lcaron":"Ľ","Lcedil":"Ļ","Lcy":"Л","LeftAngleBracket":"⟨","LeftArrow":"←","LeftArrowBar":"⇤","LeftArrowRightArrow":"⇆","LeftCeiling":"⌈","LeftDoubleBracket":"⟦","LeftDownTeeVector":"⥡","LeftDownVector":"⇃","LeftDownVectorBar":"⥙","LeftFloor":"⌊","LeftRightArrow":"↔","LeftRightVector":"⥎","LeftTee":"⊣","LeftTeeArrow":"↤","LeftTeeVector":"⥚","LeftTriangle":"⊲","LeftTriangleBar":"⧏","LeftTriangleEqual":"⊴","LeftUpDownVector":"⥑","LeftUpTeeVector":"⥠","LeftUpVector":"↿","LeftUpVectorBar":"⥘","LeftVector":"↼","LeftVectorBar":"⥒","Leftarrow":"⇐","Leftrightarrow":"⇔","LessEqualGreater":"⋚","LessFullEqual":"≦","LessGreater":"≶","LessLess":"⪡","LessSlantEqual":"⩽","LessTilde":"≲","Lfr":"𝔏","Ll":"⋘","Lleftarrow":"⇚","Lmidot":"Ŀ","LongLeftArrow":"⟵","LongLeftRightArrow":"⟷","LongRightArrow":"⟶","Longleftarrow":"⟸","Longleftrightarrow":"⟺","Longrightarrow":"⟹","Lopf":"𝕃","LowerLeftArrow":"↙","LowerRightArrow":"↘","Lscr":"ℒ","Lsh":"↰","Lstrok":"Ł","Lt":"≪","Map":"⤅","Mcy":"М","MediumSpace":" ","Mellintrf":"ℳ","Mfr":"𝔐","MinusPlus":"∓","Mopf":"𝕄","Mscr":"ℳ","Mu":"Μ","NJcy":"Њ","Nacute":"Ń","Ncaron":"Ň","Ncedil":"Ņ","Ncy":"Н","NegativeMediumSpace":"​","NegativeThickSpace":"​","NegativeThinSpace":"​","NegativeVeryThinSpace":"​","NestedGreaterGreater":"≫","NestedLessLess":"≪","NewLine":"\\n","Nfr":"𝔑","NoBreak":"⁠","NonBreakingSpace":" ","Nopf":"ℕ","Not":"⫬","NotCongruent":"≢","NotCupCap":"≭","NotDoubleVerticalBar":"∦","NotElement":"∉","NotEqual":"≠","NotEqualTilde":"≂̸","NotExists":"∄","NotGreater":"≯","NotGreaterEqual":"≱","NotGreaterFullEqual":"≧̸","NotGreaterGreater":"≫̸","NotGreaterLess":"≹","NotGreaterSlantEqual":"⩾̸","NotGreaterTilde":"≵","NotHumpDownHump":"≎̸","NotHumpEqual":"≏̸","NotLeftTriangle":"⋪","NotLeftTriangleBar":"⧏̸","NotLeftTriangleEqual":"⋬","NotLess":"≮","NotLessEqual":"≰","NotLessGreater":"≸","NotLessLess":"≪̸","NotLessSlantEqual":"⩽̸","NotLessTilde":"≴","NotNestedGreaterGreater":"⪢̸","NotNestedLessLess":"⪡̸","NotPrecedes":"⊀","NotPrecedesEqual":"⪯̸","NotPrecedesSlantEqual":"⋠","NotReverseElement":"∌","NotRightTriangle":"⋫","NotRightTriangleBar":"⧐̸","NotRightTriangleEqual":"⋭","NotSquareSubset":"⊏̸","NotSquareSubsetEqual":"⋢","NotSquareSuperset":"⊐̸","NotSquareSupersetEqual":"⋣","NotSubset":"⊂⃒","NotSubsetEqual":"⊈","NotSucceeds":"⊁","NotSucceedsEqual":"⪰̸","NotSucceedsSlantEqual":"⋡","NotSucceedsTilde":"≿̸","NotSuperset":"⊃⃒","NotSupersetEqual":"⊉","NotTilde":"≁","NotTildeEqual":"≄","NotTildeFullEqual":"≇","NotTildeTilde":"≉","NotVerticalBar":"∤","Nscr":"𝒩","Ntild":"Ñ","Ntilde":"Ñ","Nu":"Ν","OElig":"Œ","Oacut":"Ó","Oacute":"Ó","Ocir":"Ô","Ocirc":"Ô","Ocy":"О","Odblac":"Ő","Ofr":"𝔒","Ograv":"Ò","Ograve":"Ò","Omacr":"Ō","Omega":"Ω","Omicron":"Ο","Oopf":"𝕆","OpenCurlyDoubleQuote":"“","OpenCurlyQuote":"‘","Or":"⩔","Oscr":"𝒪","Oslas":"Ø","Oslash":"Ø","Otild":"Õ","Otilde":"Õ","Otimes":"⨷","Oum":"Ö","Ouml":"Ö","OverBar":"‾","OverBrace":"⏞","OverBracket":"⎴","OverParenthesis":"⏜","PartialD":"∂","Pcy":"П","Pfr":"𝔓","Phi":"Φ","Pi":"Π","PlusMinus":"±","Poincareplane":"ℌ","Popf":"ℙ","Pr":"⪻","Precedes":"≺","PrecedesEqual":"⪯","PrecedesSlantEqual":"≼","PrecedesTilde":"≾","Prime":"″","Product":"∏","Proportion":"∷","Proportional":"∝","Pscr":"𝒫","Psi":"Ψ","QUO":"\\"","QUOT":"\\"","Qfr":"𝔔","Qopf":"ℚ","Qscr":"𝒬","RBarr":"⤐","RE":"®","REG":"®","Racute":"Ŕ","Rang":"⟫","Rarr":"↠","Rarrtl":"⤖","Rcaron":"Ř","Rcedil":"Ŗ","Rcy":"Р","Re":"ℜ","ReverseElement":"∋","ReverseEquilibrium":"⇋","ReverseUpEquilibrium":"⥯","Rfr":"ℜ","Rho":"Ρ","RightAngleBracket":"⟩","RightArrow":"→","RightArrowBar":"⇥","RightArrowLeftArrow":"⇄","RightCeiling":"⌉","RightDoubleBracket":"⟧","RightDownTeeVector":"⥝","RightDownVector":"⇂","RightDownVectorBar":"⥕","RightFloor":"⌋","RightTee":"⊢","RightTeeArrow":"↦","RightTeeVector":"⥛","RightTriangle":"⊳","RightTriangleBar":"⧐","RightTriangleEqual":"⊵","RightUpDownVector":"⥏","RightUpTeeVector":"⥜","RightUpVector":"↾","RightUpVectorBar":"⥔","RightVector":"⇀","RightVectorBar":"⥓","Rightarrow":"⇒","Ropf":"ℝ","RoundImplies":"⥰","Rrightarrow":"⇛","Rscr":"ℛ","Rsh":"↱","RuleDelayed":"⧴","SHCHcy":"Щ","SHcy":"Ш","SOFTcy":"Ь","Sacute":"Ś","Sc":"⪼","Scaron":"Š","Scedil":"Ş","Scirc":"Ŝ","Scy":"С","Sfr":"𝔖","ShortDownArrow":"↓","ShortLeftArrow":"←","ShortRightArrow":"→","ShortUpArrow":"↑","Sigma":"Σ","SmallCircle":"∘","Sopf":"𝕊","Sqrt":"√","Square":"□","SquareIntersection":"⊓","SquareSubset":"⊏","SquareSubsetEqual":"⊑","SquareSuperset":"⊐","SquareSupersetEqual":"⊒","SquareUnion":"⊔","Sscr":"𝒮","Star":"⋆","Sub":"⋐","Subset":"⋐","SubsetEqual":"⊆","Succeeds":"≻","SucceedsEqual":"⪰","SucceedsSlantEqual":"≽","SucceedsTilde":"≿","SuchThat":"∋","Sum":"∑","Sup":"⋑","Superset":"⊃","SupersetEqual":"⊇","Supset":"⋑","THOR":"Þ","THORN":"Þ","TRADE":"™","TSHcy":"Ћ","TScy":"Ц","Tab":"\\t","Tau":"Τ","Tcaron":"Ť","Tcedil":"Ţ","Tcy":"Т","Tfr":"𝔗","Therefore":"∴","Theta":"Θ","ThickSpace":"  ","ThinSpace":" ","Tilde":"∼","TildeEqual":"≃","TildeFullEqual":"≅","TildeTilde":"≈","Topf":"𝕋","TripleDot":"⃛","Tscr":"𝒯","Tstrok":"Ŧ","Uacut":"Ú","Uacute":"Ú","Uarr":"↟","Uarrocir":"⥉","Ubrcy":"Ў","Ubreve":"Ŭ","Ucir":"Û","Ucirc":"Û","Ucy":"У","Udblac":"Ű","Ufr":"𝔘","Ugrav":"Ù","Ugrave":"Ù","Umacr":"Ū","UnderBar":"_","UnderBrace":"⏟","UnderBracket":"⎵","UnderParenthesis":"⏝","Union":"⋃","UnionPlus":"⊎","Uogon":"Ų","Uopf":"𝕌","UpArrow":"↑","UpArrowBar":"⤒","UpArrowDownArrow":"⇅","UpDownArrow":"↕","UpEquilibrium":"⥮","UpTee":"⊥","UpTeeArrow":"↥","Uparrow":"⇑","Updownarrow":"⇕","UpperLeftArrow":"↖","UpperRightArrow":"↗","Upsi":"ϒ","Upsilon":"Υ","Uring":"Ů","Uscr":"𝒰","Utilde":"Ũ","Uum":"Ü","Uuml":"Ü","VDash":"⊫","Vbar":"⫫","Vcy":"В","Vdash":"⊩","Vdashl":"⫦","Vee":"⋁","Verbar":"‖","Vert":"‖","VerticalBar":"∣","VerticalLine":"|","VerticalSeparator":"❘","VerticalTilde":"≀","VeryThinSpace":" ","Vfr":"𝔙","Vopf":"𝕍","Vscr":"𝒱","Vvdash":"⊪","Wcirc":"Ŵ","Wedge":"⋀","Wfr":"𝔚","Wopf":"𝕎","Wscr":"𝒲","Xfr":"𝔛","Xi":"Ξ","Xopf":"𝕏","Xscr":"𝒳","YAcy":"Я","YIcy":"Ї","YUcy":"Ю","Yacut":"Ý","Yacute":"Ý","Ycirc":"Ŷ","Ycy":"Ы","Yfr":"𝔜","Yopf":"𝕐","Yscr":"𝒴","Yuml":"Ÿ","ZHcy":"Ж","Zacute":"Ź","Zcaron":"Ž","Zcy":"З","Zdot":"Ż","ZeroWidthSpace":"​","Zeta":"Ζ","Zfr":"ℨ","Zopf":"ℤ","Zscr":"𝒵","aacut":"á","aacute":"á","abreve":"ă","ac":"∾","acE":"∾̳","acd":"∿","acir":"â","acirc":"â","acut":"´","acute":"´","acy":"а","aeli":"æ","aelig":"æ","af":"⁡","afr":"𝔞","agrav":"à","agrave":"à","alefsym":"ℵ","aleph":"ℵ","alpha":"α","amacr":"ā","amalg":"⨿","am":"&","amp":"&","and":"∧","andand":"⩕","andd":"⩜","andslope":"⩘","andv":"⩚","ang":"∠","ange":"⦤","angle":"∠","angmsd":"∡","angmsdaa":"⦨","angmsdab":"⦩","angmsdac":"⦪","angmsdad":"⦫","angmsdae":"⦬","angmsdaf":"⦭","angmsdag":"⦮","angmsdah":"⦯","angrt":"∟","angrtvb":"⊾","angrtvbd":"⦝","angsph":"∢","angst":"Å","angzarr":"⍼","aogon":"ą","aopf":"𝕒","ap":"≈","apE":"⩰","apacir":"⩯","ape":"≊","apid":"≋","apos":"\'","approx":"≈","approxeq":"≊","arin":"å","aring":"å","ascr":"𝒶","ast":"*","asymp":"≈","asympeq":"≍","atild":"ã","atilde":"ã","aum":"ä","auml":"ä","awconint":"∳","awint":"⨑","bNot":"⫭","backcong":"≌","backepsilon":"϶","backprime":"‵","backsim":"∽","backsimeq":"⋍","barvee":"⊽","barwed":"⌅","barwedge":"⌅","bbrk":"⎵","bbrktbrk":"⎶","bcong":"≌","bcy":"б","bdquo":"„","becaus":"∵","because":"∵","bemptyv":"⦰","bepsi":"϶","bernou":"ℬ","beta":"β","beth":"ℶ","between":"≬","bfr":"𝔟","bigcap":"⋂","bigcirc":"◯","bigcup":"⋃","bigodot":"⨀","bigoplus":"⨁","bigotimes":"⨂","bigsqcup":"⨆","bigstar":"★","bigtriangledown":"▽","bigtriangleup":"△","biguplus":"⨄","bigvee":"⋁","bigwedge":"⋀","bkarow":"⤍","blacklozenge":"⧫","blacksquare":"▪","blacktriangle":"▴","blacktriangledown":"▾","blacktriangleleft":"◂","blacktriangleright":"▸","blank":"␣","blk12":"▒","blk14":"░","blk34":"▓","block":"█","bne":"=⃥","bnequiv":"≡⃥","bnot":"⌐","bopf":"𝕓","bot":"⊥","bottom":"⊥","bowtie":"⋈","boxDL":"╗","boxDR":"╔","boxDl":"╖","boxDr":"╓","boxH":"═","boxHD":"╦","boxHU":"╩","boxHd":"╤","boxHu":"╧","boxUL":"╝","boxUR":"╚","boxUl":"╜","boxUr":"╙","boxV":"║","boxVH":"╬","boxVL":"╣","boxVR":"╠","boxVh":"╫","boxVl":"╢","boxVr":"╟","boxbox":"⧉","boxdL":"╕","boxdR":"╒","boxdl":"┐","boxdr":"┌","boxh":"─","boxhD":"╥","boxhU":"╨","boxhd":"┬","boxhu":"┴","boxminus":"⊟","boxplus":"⊞","boxtimes":"⊠","boxuL":"╛","boxuR":"╘","boxul":"┘","boxur":"└","boxv":"│","boxvH":"╪","boxvL":"╡","boxvR":"╞","boxvh":"┼","boxvl":"┤","boxvr":"├","bprime":"‵","breve":"˘","brvba":"¦","brvbar":"¦","bscr":"𝒷","bsemi":"⁏","bsim":"∽","bsime":"⋍","bsol":"\\\\","bsolb":"⧅","bsolhsub":"⟈","bull":"•","bullet":"•","bump":"≎","bumpE":"⪮","bumpe":"≏","bumpeq":"≏","cacute":"ć","cap":"∩","capand":"⩄","capbrcup":"⩉","capcap":"⩋","capcup":"⩇","capdot":"⩀","caps":"∩︀","caret":"⁁","caron":"ˇ","ccaps":"⩍","ccaron":"č","ccedi":"ç","ccedil":"ç","ccirc":"ĉ","ccups":"⩌","ccupssm":"⩐","cdot":"ċ","cedi":"¸","cedil":"¸","cemptyv":"⦲","cen":"¢","cent":"¢","centerdot":"·","cfr":"𝔠","chcy":"ч","check":"✓","checkmark":"✓","chi":"χ","cir":"○","cirE":"⧃","circ":"ˆ","circeq":"≗","circlearrowleft":"↺","circlearrowright":"↻","circledR":"®","circledS":"Ⓢ","circledast":"⊛","circledcirc":"⊚","circleddash":"⊝","cire":"≗","cirfnint":"⨐","cirmid":"⫯","cirscir":"⧂","clubs":"♣","clubsuit":"♣","colon":":","colone":"≔","coloneq":"≔","comma":",","commat":"@","comp":"∁","compfn":"∘","complement":"∁","complexes":"ℂ","cong":"≅","congdot":"⩭","conint":"∮","copf":"𝕔","coprod":"∐","cop":"©","copy":"©","copysr":"℗","crarr":"↵","cross":"✗","cscr":"𝒸","csub":"⫏","csube":"⫑","csup":"⫐","csupe":"⫒","ctdot":"⋯","cudarrl":"⤸","cudarrr":"⤵","cuepr":"⋞","cuesc":"⋟","cularr":"↶","cularrp":"⤽","cup":"∪","cupbrcap":"⩈","cupcap":"⩆","cupcup":"⩊","cupdot":"⊍","cupor":"⩅","cups":"∪︀","curarr":"↷","curarrm":"⤼","curlyeqprec":"⋞","curlyeqsucc":"⋟","curlyvee":"⋎","curlywedge":"⋏","curre":"¤","curren":"¤","curvearrowleft":"↶","curvearrowright":"↷","cuvee":"⋎","cuwed":"⋏","cwconint":"∲","cwint":"∱","cylcty":"⌭","dArr":"⇓","dHar":"⥥","dagger":"†","daleth":"ℸ","darr":"↓","dash":"‐","dashv":"⊣","dbkarow":"⤏","dblac":"˝","dcaron":"ď","dcy":"д","dd":"ⅆ","ddagger":"‡","ddarr":"⇊","ddotseq":"⩷","de":"°","deg":"°","delta":"δ","demptyv":"⦱","dfisht":"⥿","dfr":"𝔡","dharl":"⇃","dharr":"⇂","diam":"⋄","diamond":"⋄","diamondsuit":"♦","diams":"♦","die":"¨","digamma":"ϝ","disin":"⋲","div":"÷","divid":"÷","divide":"÷","divideontimes":"⋇","divonx":"⋇","djcy":"ђ","dlcorn":"⌞","dlcrop":"⌍","dollar":"$","dopf":"𝕕","dot":"˙","doteq":"≐","doteqdot":"≑","dotminus":"∸","dotplus":"∔","dotsquare":"⊡","doublebarwedge":"⌆","downarrow":"↓","downdownarrows":"⇊","downharpoonleft":"⇃","downharpoonright":"⇂","drbkarow":"⤐","drcorn":"⌟","drcrop":"⌌","dscr":"𝒹","dscy":"ѕ","dsol":"⧶","dstrok":"đ","dtdot":"⋱","dtri":"▿","dtrif":"▾","duarr":"⇵","duhar":"⥯","dwangle":"⦦","dzcy":"џ","dzigrarr":"⟿","eDDot":"⩷","eDot":"≑","eacut":"é","eacute":"é","easter":"⩮","ecaron":"ě","ecir":"ê","ecirc":"ê","ecolon":"≕","ecy":"э","edot":"ė","ee":"ⅇ","efDot":"≒","efr":"𝔢","eg":"⪚","egrav":"è","egrave":"è","egs":"⪖","egsdot":"⪘","el":"⪙","elinters":"⏧","ell":"ℓ","els":"⪕","elsdot":"⪗","emacr":"ē","empty":"∅","emptyset":"∅","emptyv":"∅","emsp13":" ","emsp14":" ","emsp":" ","eng":"ŋ","ensp":" ","eogon":"ę","eopf":"𝕖","epar":"⋕","eparsl":"⧣","eplus":"⩱","epsi":"ε","epsilon":"ε","epsiv":"ϵ","eqcirc":"≖","eqcolon":"≕","eqsim":"≂","eqslantgtr":"⪖","eqslantless":"⪕","equals":"=","equest":"≟","equiv":"≡","equivDD":"⩸","eqvparsl":"⧥","erDot":"≓","erarr":"⥱","escr":"ℯ","esdot":"≐","esim":"≂","eta":"η","et":"ð","eth":"ð","eum":"ë","euml":"ë","euro":"€","excl":"!","exist":"∃","expectation":"ℰ","exponentiale":"ⅇ","fallingdotseq":"≒","fcy":"ф","female":"♀","ffilig":"ffi","fflig":"ff","ffllig":"ffl","ffr":"𝔣","filig":"fi","fjlig":"fj","flat":"♭","fllig":"fl","fltns":"▱","fnof":"ƒ","fopf":"𝕗","forall":"∀","fork":"⋔","forkv":"⫙","fpartint":"⨍","frac1":"¼","frac12":"½","frac13":"⅓","frac14":"¼","frac15":"⅕","frac16":"⅙","frac18":"⅛","frac23":"⅔","frac25":"⅖","frac3":"¾","frac34":"¾","frac35":"⅗","frac38":"⅜","frac45":"⅘","frac56":"⅚","frac58":"⅝","frac78":"⅞","frasl":"⁄","frown":"⌢","fscr":"𝒻","gE":"≧","gEl":"⪌","gacute":"ǵ","gamma":"γ","gammad":"ϝ","gap":"⪆","gbreve":"ğ","gcirc":"ĝ","gcy":"г","gdot":"ġ","ge":"≥","gel":"⋛","geq":"≥","geqq":"≧","geqslant":"⩾","ges":"⩾","gescc":"⪩","gesdot":"⪀","gesdoto":"⪂","gesdotol":"⪄","gesl":"⋛︀","gesles":"⪔","gfr":"𝔤","gg":"≫","ggg":"⋙","gimel":"ℷ","gjcy":"ѓ","gl":"≷","glE":"⪒","gla":"⪥","glj":"⪤","gnE":"≩","gnap":"⪊","gnapprox":"⪊","gne":"⪈","gneq":"⪈","gneqq":"≩","gnsim":"⋧","gopf":"𝕘","grave":"`","gscr":"ℊ","gsim":"≳","gsime":"⪎","gsiml":"⪐","g":">","gt":">","gtcc":"⪧","gtcir":"⩺","gtdot":"⋗","gtlPar":"⦕","gtquest":"⩼","gtrapprox":"⪆","gtrarr":"⥸","gtrdot":"⋗","gtreqless":"⋛","gtreqqless":"⪌","gtrless":"≷","gtrsim":"≳","gvertneqq":"≩︀","gvnE":"≩︀","hArr":"⇔","hairsp":" ","half":"½","hamilt":"ℋ","hardcy":"ъ","harr":"↔","harrcir":"⥈","harrw":"↭","hbar":"ℏ","hcirc":"ĥ","hearts":"♥","heartsuit":"♥","hellip":"…","hercon":"⊹","hfr":"𝔥","hksearow":"⤥","hkswarow":"⤦","hoarr":"⇿","homtht":"∻","hookleftarrow":"↩","hookrightarrow":"↪","hopf":"𝕙","horbar":"―","hscr":"𝒽","hslash":"ℏ","hstrok":"ħ","hybull":"⁃","hyphen":"‐","iacut":"í","iacute":"í","ic":"⁣","icir":"î","icirc":"î","icy":"и","iecy":"е","iexc":"¡","iexcl":"¡","iff":"⇔","ifr":"𝔦","igrav":"ì","igrave":"ì","ii":"ⅈ","iiiint":"⨌","iiint":"∭","iinfin":"⧜","iiota":"℩","ijlig":"ij","imacr":"ī","image":"ℑ","imagline":"ℐ","imagpart":"ℑ","imath":"ı","imof":"⊷","imped":"Ƶ","in":"∈","incare":"℅","infin":"∞","infintie":"⧝","inodot":"ı","int":"∫","intcal":"⊺","integers":"ℤ","intercal":"⊺","intlarhk":"⨗","intprod":"⨼","iocy":"ё","iogon":"į","iopf":"𝕚","iota":"ι","iprod":"⨼","iques":"¿","iquest":"¿","iscr":"𝒾","isin":"∈","isinE":"⋹","isindot":"⋵","isins":"⋴","isinsv":"⋳","isinv":"∈","it":"⁢","itilde":"ĩ","iukcy":"і","ium":"ï","iuml":"ï","jcirc":"ĵ","jcy":"й","jfr":"𝔧","jmath":"ȷ","jopf":"𝕛","jscr":"𝒿","jsercy":"ј","jukcy":"є","kappa":"κ","kappav":"ϰ","kcedil":"ķ","kcy":"к","kfr":"𝔨","kgreen":"ĸ","khcy":"х","kjcy":"ќ","kopf":"𝕜","kscr":"𝓀","lAarr":"⇚","lArr":"⇐","lAtail":"⤛","lBarr":"⤎","lE":"≦","lEg":"⪋","lHar":"⥢","lacute":"ĺ","laemptyv":"⦴","lagran":"ℒ","lambda":"λ","lang":"⟨","langd":"⦑","langle":"⟨","lap":"⪅","laqu":"«","laquo":"«","larr":"←","larrb":"⇤","larrbfs":"⤟","larrfs":"⤝","larrhk":"↩","larrlp":"↫","larrpl":"⤹","larrsim":"⥳","larrtl":"↢","lat":"⪫","latail":"⤙","late":"⪭","lates":"⪭︀","lbarr":"⤌","lbbrk":"❲","lbrace":"{","lbrack":"[","lbrke":"⦋","lbrksld":"⦏","lbrkslu":"⦍","lcaron":"ľ","lcedil":"ļ","lceil":"⌈","lcub":"{","lcy":"л","ldca":"⤶","ldquo":"“","ldquor":"„","ldrdhar":"⥧","ldrushar":"⥋","ldsh":"↲","le":"≤","leftarrow":"←","leftarrowtail":"↢","leftharpoondown":"↽","leftharpoonup":"↼","leftleftarrows":"⇇","leftrightarrow":"↔","leftrightarrows":"⇆","leftrightharpoons":"⇋","leftrightsquigarrow":"↭","leftthreetimes":"⋋","leg":"⋚","leq":"≤","leqq":"≦","leqslant":"⩽","les":"⩽","lescc":"⪨","lesdot":"⩿","lesdoto":"⪁","lesdotor":"⪃","lesg":"⋚︀","lesges":"⪓","lessapprox":"⪅","lessdot":"⋖","lesseqgtr":"⋚","lesseqqgtr":"⪋","lessgtr":"≶","lesssim":"≲","lfisht":"⥼","lfloor":"⌊","lfr":"𝔩","lg":"≶","lgE":"⪑","lhard":"↽","lharu":"↼","lharul":"⥪","lhblk":"▄","ljcy":"љ","ll":"≪","llarr":"⇇","llcorner":"⌞","llhard":"⥫","lltri":"◺","lmidot":"ŀ","lmoust":"⎰","lmoustache":"⎰","lnE":"≨","lnap":"⪉","lnapprox":"⪉","lne":"⪇","lneq":"⪇","lneqq":"≨","lnsim":"⋦","loang":"⟬","loarr":"⇽","lobrk":"⟦","longleftarrow":"⟵","longleftrightarrow":"⟷","longmapsto":"⟼","longrightarrow":"⟶","looparrowleft":"↫","looparrowright":"↬","lopar":"⦅","lopf":"𝕝","loplus":"⨭","lotimes":"⨴","lowast":"∗","lowbar":"_","loz":"◊","lozenge":"◊","lozf":"⧫","lpar":"(","lparlt":"⦓","lrarr":"⇆","lrcorner":"⌟","lrhar":"⇋","lrhard":"⥭","lrm":"‎","lrtri":"⊿","lsaquo":"‹","lscr":"𝓁","lsh":"↰","lsim":"≲","lsime":"⪍","lsimg":"⪏","lsqb":"[","lsquo":"‘","lsquor":"‚","lstrok":"ł","l":"<","lt":"<","ltcc":"⪦","ltcir":"⩹","ltdot":"⋖","lthree":"⋋","ltimes":"⋉","ltlarr":"⥶","ltquest":"⩻","ltrPar":"⦖","ltri":"◃","ltrie":"⊴","ltrif":"◂","lurdshar":"⥊","luruhar":"⥦","lvertneqq":"≨︀","lvnE":"≨︀","mDDot":"∺","mac":"¯","macr":"¯","male":"♂","malt":"✠","maltese":"✠","map":"↦","mapsto":"↦","mapstodown":"↧","mapstoleft":"↤","mapstoup":"↥","marker":"▮","mcomma":"⨩","mcy":"м","mdash":"—","measuredangle":"∡","mfr":"𝔪","mho":"℧","micr":"µ","micro":"µ","mid":"∣","midast":"*","midcir":"⫰","middo":"·","middot":"·","minus":"−","minusb":"⊟","minusd":"∸","minusdu":"⨪","mlcp":"⫛","mldr":"…","mnplus":"∓","models":"⊧","mopf":"𝕞","mp":"∓","mscr":"𝓂","mstpos":"∾","mu":"μ","multimap":"⊸","mumap":"⊸","nGg":"⋙̸","nGt":"≫⃒","nGtv":"≫̸","nLeftarrow":"⇍","nLeftrightarrow":"⇎","nLl":"⋘̸","nLt":"≪⃒","nLtv":"≪̸","nRightarrow":"⇏","nVDash":"⊯","nVdash":"⊮","nabla":"∇","nacute":"ń","nang":"∠⃒","nap":"≉","napE":"⩰̸","napid":"≋̸","napos":"ʼn","napprox":"≉","natur":"♮","natural":"♮","naturals":"ℕ","nbs":" ","nbsp":" ","nbump":"≎̸","nbumpe":"≏̸","ncap":"⩃","ncaron":"ň","ncedil":"ņ","ncong":"≇","ncongdot":"⩭̸","ncup":"⩂","ncy":"н","ndash":"–","ne":"≠","neArr":"⇗","nearhk":"⤤","nearr":"↗","nearrow":"↗","nedot":"≐̸","nequiv":"≢","nesear":"⤨","nesim":"≂̸","nexist":"∄","nexists":"∄","nfr":"𝔫","ngE":"≧̸","nge":"≱","ngeq":"≱","ngeqq":"≧̸","ngeqslant":"⩾̸","nges":"⩾̸","ngsim":"≵","ngt":"≯","ngtr":"≯","nhArr":"⇎","nharr":"↮","nhpar":"⫲","ni":"∋","nis":"⋼","nisd":"⋺","niv":"∋","njcy":"њ","nlArr":"⇍","nlE":"≦̸","nlarr":"↚","nldr":"‥","nle":"≰","nleftarrow":"↚","nleftrightarrow":"↮","nleq":"≰","nleqq":"≦̸","nleqslant":"⩽̸","nles":"⩽̸","nless":"≮","nlsim":"≴","nlt":"≮","nltri":"⋪","nltrie":"⋬","nmid":"∤","nopf":"𝕟","no":"¬","not":"¬","notin":"∉","notinE":"⋹̸","notindot":"⋵̸","notinva":"∉","notinvb":"⋷","notinvc":"⋶","notni":"∌","notniva":"∌","notnivb":"⋾","notnivc":"⋽","npar":"∦","nparallel":"∦","nparsl":"⫽⃥","npart":"∂̸","npolint":"⨔","npr":"⊀","nprcue":"⋠","npre":"⪯̸","nprec":"⊀","npreceq":"⪯̸","nrArr":"⇏","nrarr":"↛","nrarrc":"⤳̸","nrarrw":"↝̸","nrightarrow":"↛","nrtri":"⋫","nrtrie":"⋭","nsc":"⊁","nsccue":"⋡","nsce":"⪰̸","nscr":"𝓃","nshortmid":"∤","nshortparallel":"∦","nsim":"≁","nsime":"≄","nsimeq":"≄","nsmid":"∤","nspar":"∦","nsqsube":"⋢","nsqsupe":"⋣","nsub":"⊄","nsubE":"⫅̸","nsube":"⊈","nsubset":"⊂⃒","nsubseteq":"⊈","nsubseteqq":"⫅̸","nsucc":"⊁","nsucceq":"⪰̸","nsup":"⊅","nsupE":"⫆̸","nsupe":"⊉","nsupset":"⊃⃒","nsupseteq":"⊉","nsupseteqq":"⫆̸","ntgl":"≹","ntild":"ñ","ntilde":"ñ","ntlg":"≸","ntriangleleft":"⋪","ntrianglelefteq":"⋬","ntriangleright":"⋫","ntrianglerighteq":"⋭","nu":"ν","num":"#","numero":"№","numsp":" ","nvDash":"⊭","nvHarr":"⤄","nvap":"≍⃒","nvdash":"⊬","nvge":"≥⃒","nvgt":">⃒","nvinfin":"⧞","nvlArr":"⤂","nvle":"≤⃒","nvlt":"<⃒","nvltrie":"⊴⃒","nvrArr":"⤃","nvrtrie":"⊵⃒","nvsim":"∼⃒","nwArr":"⇖","nwarhk":"⤣","nwarr":"↖","nwarrow":"↖","nwnear":"⤧","oS":"Ⓢ","oacut":"ó","oacute":"ó","oast":"⊛","ocir":"ô","ocirc":"ô","ocy":"о","odash":"⊝","odblac":"ő","odiv":"⨸","odot":"⊙","odsold":"⦼","oelig":"œ","ofcir":"⦿","ofr":"𝔬","ogon":"˛","ograv":"ò","ograve":"ò","ogt":"⧁","ohbar":"⦵","ohm":"Ω","oint":"∮","olarr":"↺","olcir":"⦾","olcross":"⦻","oline":"‾","olt":"⧀","omacr":"ō","omega":"ω","omicron":"ο","omid":"⦶","ominus":"⊖","oopf":"𝕠","opar":"⦷","operp":"⦹","oplus":"⊕","or":"∨","orarr":"↻","ord":"º","order":"ℴ","orderof":"ℴ","ordf":"ª","ordm":"º","origof":"⊶","oror":"⩖","orslope":"⩗","orv":"⩛","oscr":"ℴ","oslas":"ø","oslash":"ø","osol":"⊘","otild":"õ","otilde":"õ","otimes":"⊗","otimesas":"⨶","oum":"ö","ouml":"ö","ovbar":"⌽","par":"¶","para":"¶","parallel":"∥","parsim":"⫳","parsl":"⫽","part":"∂","pcy":"п","percnt":"%","period":".","permil":"‰","perp":"⊥","pertenk":"‱","pfr":"𝔭","phi":"φ","phiv":"ϕ","phmmat":"ℳ","phone":"☎","pi":"π","pitchfork":"⋔","piv":"ϖ","planck":"ℏ","planckh":"ℎ","plankv":"ℏ","plus":"+","plusacir":"⨣","plusb":"⊞","pluscir":"⨢","plusdo":"∔","plusdu":"⨥","pluse":"⩲","plusm":"±","plusmn":"±","plussim":"⨦","plustwo":"⨧","pm":"±","pointint":"⨕","popf":"𝕡","poun":"£","pound":"£","pr":"≺","prE":"⪳","prap":"⪷","prcue":"≼","pre":"⪯","prec":"≺","precapprox":"⪷","preccurlyeq":"≼","preceq":"⪯","precnapprox":"⪹","precneqq":"⪵","precnsim":"⋨","precsim":"≾","prime":"′","primes":"ℙ","prnE":"⪵","prnap":"⪹","prnsim":"⋨","prod":"∏","profalar":"⌮","profline":"⌒","profsurf":"⌓","prop":"∝","propto":"∝","prsim":"≾","prurel":"⊰","pscr":"𝓅","psi":"ψ","puncsp":" ","qfr":"𝔮","qint":"⨌","qopf":"𝕢","qprime":"⁗","qscr":"𝓆","quaternions":"ℍ","quatint":"⨖","quest":"?","questeq":"≟","quo":"\\"","quot":"\\"","rAarr":"⇛","rArr":"⇒","rAtail":"⤜","rBarr":"⤏","rHar":"⥤","race":"∽̱","racute":"ŕ","radic":"√","raemptyv":"⦳","rang":"⟩","rangd":"⦒","range":"⦥","rangle":"⟩","raqu":"»","raquo":"»","rarr":"→","rarrap":"⥵","rarrb":"⇥","rarrbfs":"⤠","rarrc":"⤳","rarrfs":"⤞","rarrhk":"↪","rarrlp":"↬","rarrpl":"⥅","rarrsim":"⥴","rarrtl":"↣","rarrw":"↝","ratail":"⤚","ratio":"∶","rationals":"ℚ","rbarr":"⤍","rbbrk":"❳","rbrace":"}","rbrack":"]","rbrke":"⦌","rbrksld":"⦎","rbrkslu":"⦐","rcaron":"ř","rcedil":"ŗ","rceil":"⌉","rcub":"}","rcy":"р","rdca":"⤷","rdldhar":"⥩","rdquo":"”","rdquor":"”","rdsh":"↳","real":"ℜ","realine":"ℛ","realpart":"ℜ","reals":"ℝ","rect":"▭","re":"®","reg":"®","rfisht":"⥽","rfloor":"⌋","rfr":"𝔯","rhard":"⇁","rharu":"⇀","rharul":"⥬","rho":"ρ","rhov":"ϱ","rightarrow":"→","rightarrowtail":"↣","rightharpoondown":"⇁","rightharpoonup":"⇀","rightleftarrows":"⇄","rightleftharpoons":"⇌","rightrightarrows":"⇉","rightsquigarrow":"↝","rightthreetimes":"⋌","ring":"˚","risingdotseq":"≓","rlarr":"⇄","rlhar":"⇌","rlm":"‏","rmoust":"⎱","rmoustache":"⎱","rnmid":"⫮","roang":"⟭","roarr":"⇾","robrk":"⟧","ropar":"⦆","ropf":"𝕣","roplus":"⨮","rotimes":"⨵","rpar":")","rpargt":"⦔","rppolint":"⨒","rrarr":"⇉","rsaquo":"›","rscr":"𝓇","rsh":"↱","rsqb":"]","rsquo":"’","rsquor":"’","rthree":"⋌","rtimes":"⋊","rtri":"▹","rtrie":"⊵","rtrif":"▸","rtriltri":"⧎","ruluhar":"⥨","rx":"℞","sacute":"ś","sbquo":"‚","sc":"≻","scE":"⪴","scap":"⪸","scaron":"š","sccue":"≽","sce":"⪰","scedil":"ş","scirc":"ŝ","scnE":"⪶","scnap":"⪺","scnsim":"⋩","scpolint":"⨓","scsim":"≿","scy":"с","sdot":"⋅","sdotb":"⊡","sdote":"⩦","seArr":"⇘","searhk":"⤥","searr":"↘","searrow":"↘","sec":"§","sect":"§","semi":";","seswar":"⤩","setminus":"∖","setmn":"∖","sext":"✶","sfr":"𝔰","sfrown":"⌢","sharp":"♯","shchcy":"щ","shcy":"ш","shortmid":"∣","shortparallel":"∥","sh":"­","shy":"­","sigma":"σ","sigmaf":"ς","sigmav":"ς","sim":"∼","simdot":"⩪","sime":"≃","simeq":"≃","simg":"⪞","simgE":"⪠","siml":"⪝","simlE":"⪟","simne":"≆","simplus":"⨤","simrarr":"⥲","slarr":"←","smallsetminus":"∖","smashp":"⨳","smeparsl":"⧤","smid":"∣","smile":"⌣","smt":"⪪","smte":"⪬","smtes":"⪬︀","softcy":"ь","sol":"/","solb":"⧄","solbar":"⌿","sopf":"𝕤","spades":"♠","spadesuit":"♠","spar":"∥","sqcap":"⊓","sqcaps":"⊓︀","sqcup":"⊔","sqcups":"⊔︀","sqsub":"⊏","sqsube":"⊑","sqsubset":"⊏","sqsubseteq":"⊑","sqsup":"⊐","sqsupe":"⊒","sqsupset":"⊐","sqsupseteq":"⊒","squ":"□","square":"□","squarf":"▪","squf":"▪","srarr":"→","sscr":"𝓈","ssetmn":"∖","ssmile":"⌣","sstarf":"⋆","star":"☆","starf":"★","straightepsilon":"ϵ","straightphi":"ϕ","strns":"¯","sub":"⊂","subE":"⫅","subdot":"⪽","sube":"⊆","subedot":"⫃","submult":"⫁","subnE":"⫋","subne":"⊊","subplus":"⪿","subrarr":"⥹","subset":"⊂","subseteq":"⊆","subseteqq":"⫅","subsetneq":"⊊","subsetneqq":"⫋","subsim":"⫇","subsub":"⫕","subsup":"⫓","succ":"≻","succapprox":"⪸","succcurlyeq":"≽","succeq":"⪰","succnapprox":"⪺","succneqq":"⪶","succnsim":"⋩","succsim":"≿","sum":"∑","sung":"♪","sup":"⊃","sup1":"¹","sup2":"²","sup3":"³","supE":"⫆","supdot":"⪾","supdsub":"⫘","supe":"⊇","supedot":"⫄","suphsol":"⟉","suphsub":"⫗","suplarr":"⥻","supmult":"⫂","supnE":"⫌","supne":"⊋","supplus":"⫀","supset":"⊃","supseteq":"⊇","supseteqq":"⫆","supsetneq":"⊋","supsetneqq":"⫌","supsim":"⫈","supsub":"⫔","supsup":"⫖","swArr":"⇙","swarhk":"⤦","swarr":"↙","swarrow":"↙","swnwar":"⤪","szli":"ß","szlig":"ß","target":"⌖","tau":"τ","tbrk":"⎴","tcaron":"ť","tcedil":"ţ","tcy":"т","tdot":"⃛","telrec":"⌕","tfr":"𝔱","there4":"∴","therefore":"∴","theta":"θ","thetasym":"ϑ","thetav":"ϑ","thickapprox":"≈","thicksim":"∼","thinsp":" ","thkap":"≈","thksim":"∼","thor":"þ","thorn":"þ","tilde":"˜","time":"×","times":"×","timesb":"⊠","timesbar":"⨱","timesd":"⨰","tint":"∭","toea":"⤨","top":"⊤","topbot":"⌶","topcir":"⫱","topf":"𝕥","topfork":"⫚","tosa":"⤩","tprime":"‴","trade":"™","triangle":"▵","triangledown":"▿","triangleleft":"◃","trianglelefteq":"⊴","triangleq":"≜","triangleright":"▹","trianglerighteq":"⊵","tridot":"◬","trie":"≜","triminus":"⨺","triplus":"⨹","trisb":"⧍","tritime":"⨻","trpezium":"⏢","tscr":"𝓉","tscy":"ц","tshcy":"ћ","tstrok":"ŧ","twixt":"≬","twoheadleftarrow":"↞","twoheadrightarrow":"↠","uArr":"⇑","uHar":"⥣","uacut":"ú","uacute":"ú","uarr":"↑","ubrcy":"ў","ubreve":"ŭ","ucir":"û","ucirc":"û","ucy":"у","udarr":"⇅","udblac":"ű","udhar":"⥮","ufisht":"⥾","ufr":"𝔲","ugrav":"ù","ugrave":"ù","uharl":"↿","uharr":"↾","uhblk":"▀","ulcorn":"⌜","ulcorner":"⌜","ulcrop":"⌏","ultri":"◸","umacr":"ū","um":"¨","uml":"¨","uogon":"ų","uopf":"𝕦","uparrow":"↑","updownarrow":"↕","upharpoonleft":"↿","upharpoonright":"↾","uplus":"⊎","upsi":"υ","upsih":"ϒ","upsilon":"υ","upuparrows":"⇈","urcorn":"⌝","urcorner":"⌝","urcrop":"⌎","uring":"ů","urtri":"◹","uscr":"𝓊","utdot":"⋰","utilde":"ũ","utri":"▵","utrif":"▴","uuarr":"⇈","uum":"ü","uuml":"ü","uwangle":"⦧","vArr":"⇕","vBar":"⫨","vBarv":"⫩","vDash":"⊨","vangrt":"⦜","varepsilon":"ϵ","varkappa":"ϰ","varnothing":"∅","varphi":"ϕ","varpi":"ϖ","varpropto":"∝","varr":"↕","varrho":"ϱ","varsigma":"ς","varsubsetneq":"⊊︀","varsubsetneqq":"⫋︀","varsupsetneq":"⊋︀","varsupsetneqq":"⫌︀","vartheta":"ϑ","vartriangleleft":"⊲","vartriangleright":"⊳","vcy":"в","vdash":"⊢","vee":"∨","veebar":"⊻","veeeq":"≚","vellip":"⋮","verbar":"|","vert":"|","vfr":"𝔳","vltri":"⊲","vnsub":"⊂⃒","vnsup":"⊃⃒","vopf":"𝕧","vprop":"∝","vrtri":"⊳","vscr":"𝓋","vsubnE":"⫋︀","vsubne":"⊊︀","vsupnE":"⫌︀","vsupne":"⊋︀","vzigzag":"⦚","wcirc":"ŵ","wedbar":"⩟","wedge":"∧","wedgeq":"≙","weierp":"℘","wfr":"𝔴","wopf":"𝕨","wp":"℘","wr":"≀","wreath":"≀","wscr":"𝓌","xcap":"⋂","xcirc":"◯","xcup":"⋃","xdtri":"▽","xfr":"𝔵","xhArr":"⟺","xharr":"⟷","xi":"ξ","xlArr":"⟸","xlarr":"⟵","xmap":"⟼","xnis":"⋻","xodot":"⨀","xopf":"𝕩","xoplus":"⨁","xotime":"⨂","xrArr":"⟹","xrarr":"⟶","xscr":"𝓍","xsqcup":"⨆","xuplus":"⨄","xutri":"△","xvee":"⋁","xwedge":"⋀","yacut":"ý","yacute":"ý","yacy":"я","ycirc":"ŷ","ycy":"ы","ye":"¥","yen":"¥","yfr":"𝔶","yicy":"ї","yopf":"𝕪","yscr":"𝓎","yucy":"ю","yum":"ÿ","yuml":"ÿ","zacute":"ź","zcaron":"ž","zcy":"з","zdot":"ż","zeetrf":"ℨ","zeta":"ζ","zfr":"𝔷","zhcy":"ж","zigrarr":"⇝","zopf":"𝕫","zscr":"𝓏","zwj":"‍","zwnj":"‌"}'); + +/***/ }), + +/***/ 93580: +/***/ ((module) => { + +"use strict"; +module.exports = JSON.parse('{"0":"�","128":"€","130":"‚","131":"ƒ","132":"„","133":"…","134":"†","135":"‡","136":"ˆ","137":"‰","138":"Š","139":"‹","140":"Œ","142":"Ž","145":"‘","146":"’","147":"“","148":"”","149":"•","150":"–","151":"—","152":"˜","153":"™","154":"š","155":"›","156":"œ","158":"ž","159":"Ÿ"}'); + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter/refractor-core-import.50b52eb3.js b/assets/js/react-syntax-highlighter/refractor-core-import.50b52eb3.js new file mode 100644 index 000000000..0d5f0e34a --- /dev/null +++ b/assets/js/react-syntax-highlighter/refractor-core-import.50b52eb3.js @@ -0,0 +1 @@ +(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5082,131,5008,7279,2496],{6851:(e,n)=>{"use strict";n.Q=function(e){var n,t=[],a=String(e||""),r=a.indexOf(","),l=0,i=!1;for(;!i;)-1===r&&(r=a.length,i=!0),!(n=a.slice(l,r).trim())&&i||t.push(n),l=r+1,r=a.indexOf(",",l);return t}},8892:e=>{"use strict";e.exports=function(e,t){var a,r,l,i=e||"",o=t||"div",s={},u=0;for(;u<i.length;)n.lastIndex=u,l=n.exec(i),(a=i.slice(u,l?l.index:i.length))&&(r?"#"===r?s.id=a:s.className?s.className.push(a):s.className=[a]:o=a,u+=a.length),l&&(r=l[0],u++);return{type:"element",tagName:o,properties:s,children:[]}};var n=/[#.]/g},2502:(e,n,t)=>{"use strict";var a=t(9560),r=t(6632),l=t(8892),i=t(6582).Q,o=t(6851).Q;e.exports=function(e,n,t){var r=t?function(e){var n,t=e.length,a=-1,r={};for(;++a<t;)r[(n=e[a]).toLowerCase()]=n;return r}(t):null;return function(e,t){var a,i=l(e,n),o=Array.prototype.slice.call(arguments,2),p=i.tagName.toLowerCase();i.tagName=r&&s.call(r,p)?r[p]:p,t&&u(t,i)&&(o.unshift(t),t=null);if(t)for(a in t)d(i.properties,a,t[a]);c(i.children,o),"template"===i.tagName&&(i.content={type:"root",children:i.children},i.children=[]);return i};function d(n,t,r){var l,s,u;null!=r&&r==r&&(s=(l=a(e,t)).property,"string"==typeof(u=r)&&(l.spaceSeparated?u=i(u):l.commaSeparated?u=o(u):l.commaOrSpaceSeparated&&(u=i(o(u).join(" ")))),"style"===s&&"string"!=typeof r&&(u=function(e){var n,t=[];for(n in e)t.push([n,e[n]].join(": "));return t.join("; ")}(u)),"className"===s&&n.className&&(u=n.className.concat(u)),n[s]=function(e,n,t){var a,r,l;if("object"!=typeof t||!("length"in t))return p(e,n,t);r=t.length,a=-1,l=[];for(;++a<r;)l[a]=p(e,n,t[a]);return l}(l,s,u))}};var s={}.hasOwnProperty;function u(e,n){return"string"==typeof e||"length"in e||function(e,n){var t=n.type;if("input"===e||!t||"string"!=typeof t)return!1;if("object"==typeof n.children&&"length"in n.children)return!0;if(t=t.toLowerCase(),"button"===e)return"menu"!==t&&"submit"!==t&&"reset"!==t&&"button"!==t;return"value"in n}(n.tagName,e)}function c(e,n){var t,a;if("string"!=typeof n&&"number"!=typeof n)if("object"==typeof n&&"length"in n)for(t=-1,a=n.length;++t<a;)c(e,n[t]);else{if("object"!=typeof n||!("type"in n))throw new Error("Expected node, nodes, or string, got `"+n+"`");e.push(n)}else e.push({type:"text",value:String(n)})}function p(e,n,t){var a=t;return e.number||e.positiveNumber?isNaN(a)||""===a||(a=Number(a)):(e.boolean||e.overloadedBoolean)&&("string"!=typeof a||""!==a&&r(t)!==r(n)||(a=!0)),a}},2579:(e,n,t)=>{"use strict";var a=t(7247),r=t(2502)(a,"div");r.displayName="html",e.exports=r},1742:(e,n,t)=>{"use strict";e.exports=t(2579)},6260:e=>{"use strict";e.exports=function(e){var n="string"==typeof e?e.charCodeAt(0):e;return n>=97&&n<=122||n>=65&&n<=90}},7961:(e,n,t)=>{"use strict";var a=t(6260),r=t(6195);e.exports=function(e){return a(e)||r(e)}},6195:e=>{"use strict";e.exports=function(e){var n="string"==typeof e?e.charCodeAt(0):e;return n>=48&&n<=57}},2184:e=>{"use strict";e.exports=function(e){var n="string"==typeof e?e.charCodeAt(0):e;return n>=97&&n<=102||n>=65&&n<=70||n>=48&&n<=57}},9560:(e,n,t)=>{"use strict";var a=t(6632),r=t(8805),l=t(7643),i="data";e.exports=function(e,n){var t=a(n),d=n,g=l;if(t in e.normal)return e.property[e.normal[t]];t.length>4&&t.slice(0,4)===i&&o.test(n)&&("-"===n.charAt(4)?d=function(e){var n=e.slice(5).replace(s,p);return i+n.charAt(0).toUpperCase()+n.slice(1)}(n):n=function(e){var n=e.slice(4);if(s.test(n))return e;"-"!==(n=n.replace(u,c)).charAt(0)&&(n="-"+n);return i+n}(n),g=r);return new g(d,n)};var o=/^data[-\w.:]+$/i,s=/-[a-z]/g,u=/[A-Z]/g;function c(e){return"-"+e.toLowerCase()}function p(e){return e.charAt(1).toUpperCase()}},7247:(e,n,t)=>{"use strict";var a=t(9940),r=t(8289),l=t(5812),i=t(4397),o=t(7716),s=t(1805);e.exports=a([l,r,i,o,s])},7716:(e,n,t)=>{"use strict";var a=t(7e3),r=t(7596),l=a.booleanish,i=a.number,o=a.spaceSeparated;e.exports=r({transform:function(e,n){return"role"===n?n:"aria-"+n.slice(4).toLowerCase()},properties:{ariaActiveDescendant:null,ariaAtomic:l,ariaAutoComplete:null,ariaBusy:l,ariaChecked:l,ariaColCount:i,ariaColIndex:i,ariaColSpan:i,ariaControls:o,ariaCurrent:null,ariaDescribedBy:o,ariaDetails:null,ariaDisabled:l,ariaDropEffect:o,ariaErrorMessage:null,ariaExpanded:l,ariaFlowTo:o,ariaGrabbed:l,ariaHasPopup:null,ariaHidden:l,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:o,ariaLevel:i,ariaLive:null,ariaModal:l,ariaMultiLine:l,ariaMultiSelectable:l,ariaOrientation:null,ariaOwns:o,ariaPlaceholder:null,ariaPosInSet:i,ariaPressed:l,ariaReadOnly:l,ariaRelevant:null,ariaRequired:l,ariaRoleDescription:o,ariaRowCount:i,ariaRowIndex:i,ariaRowSpan:i,ariaSelected:l,ariaSetSize:i,ariaSort:null,ariaValueMax:i,ariaValueMin:i,ariaValueNow:i,ariaValueText:null,role:null}})},1805:(e,n,t)=>{"use strict";var a=t(7e3),r=t(7596),l=t(855),i=a.boolean,o=a.overloadedBoolean,s=a.booleanish,u=a.number,c=a.spaceSeparated,p=a.commaSeparated;e.exports=r({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:l,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:p,acceptCharset:c,accessKey:c,action:null,allow:null,allowFullScreen:i,allowPaymentRequest:i,allowUserMedia:i,alt:null,as:null,async:i,autoCapitalize:null,autoComplete:c,autoFocus:i,autoPlay:i,capture:i,charSet:null,checked:i,cite:null,className:c,cols:u,colSpan:null,content:null,contentEditable:s,controls:i,controlsList:c,coords:u|p,crossOrigin:null,data:null,dateTime:null,decoding:null,default:i,defer:i,dir:null,dirName:null,disabled:i,download:o,draggable:s,encType:null,enterKeyHint:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:i,formTarget:null,headers:c,height:u,hidden:i,high:u,href:null,hrefLang:null,htmlFor:c,httpEquiv:c,id:null,imageSizes:null,imageSrcSet:p,inputMode:null,integrity:null,is:null,isMap:i,itemId:null,itemProp:c,itemRef:c,itemScope:i,itemType:c,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:i,low:u,manifest:null,max:null,maxLength:u,media:null,method:null,min:null,minLength:u,multiple:i,muted:i,name:null,nonce:null,noModule:i,noValidate:i,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforePrint:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextMenu:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:i,optimum:u,pattern:null,ping:c,placeholder:null,playsInline:i,poster:null,preload:null,readOnly:i,referrerPolicy:null,rel:c,required:i,reversed:i,rows:u,rowSpan:u,sandbox:c,scope:null,scoped:i,seamless:i,selected:i,shape:null,size:u,sizes:null,slot:null,span:u,spellCheck:s,src:null,srcDoc:null,srcLang:null,srcSet:p,start:u,step:null,style:null,tabIndex:u,target:null,title:null,translate:null,type:null,typeMustMatch:i,useMap:null,value:s,width:u,wrap:null,align:null,aLink:null,archive:c,axis:null,background:null,bgColor:null,border:u,borderColor:null,bottomMargin:u,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:i,declare:i,event:null,face:null,frame:null,frameBorder:null,hSpace:u,leftMargin:u,link:null,longDesc:null,lowSrc:null,marginHeight:u,marginWidth:u,noResize:i,noHref:i,noShade:i,noWrap:i,object:null,profile:null,prompt:null,rev:null,rightMargin:u,rules:null,scheme:null,scrolling:s,standby:null,summary:null,text:null,topMargin:u,valueType:null,version:null,vAlign:null,vLink:null,vSpace:u,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:i,disableRemotePlayback:i,prefix:null,property:null,results:u,security:null,unselectable:null}})},855:(e,n,t)=>{"use strict";var a=t(8740);e.exports=function(e,n){return a(e,n.toLowerCase())}},8740:e=>{"use strict";e.exports=function(e,n){return n in e?e[n]:n}},7596:(e,n,t)=>{"use strict";var a=t(6632),r=t(9607),l=t(8805);e.exports=function(e){var n,t,i=e.space,o=e.mustUseProperty||[],s=e.attributes||{},u=e.properties,c=e.transform,p={},d={};for(n in u)t=new l(n,c(s,n),u[n],i),-1!==o.indexOf(n)&&(t.mustUseProperty=!0),p[n]=t,d[a(n)]=n,d[a(t.attribute)]=n;return new r(p,d,i)}},8805:(e,n,t)=>{"use strict";var a=t(7643),r=t(7e3);e.exports=o,o.prototype=new a,o.prototype.defined=!0;var l=["boolean","booleanish","overloadedBoolean","number","commaSeparated","spaceSeparated","commaOrSpaceSeparated"],i=l.length;function o(e,n,t,o){var u,c=-1;for(s(this,"space",o),a.call(this,e,n);++c<i;)s(this,u=l[c],(t&r[u])===r[u])}function s(e,n,t){t&&(e[n]=t)}},7643:e=>{"use strict";e.exports=t;var n=t.prototype;function t(e,n){this.property=e,this.attribute=n}n.space=null,n.attribute=null,n.property=null,n.boolean=!1,n.booleanish=!1,n.overloadedBoolean=!1,n.number=!1,n.commaSeparated=!1,n.spaceSeparated=!1,n.commaOrSpaceSeparated=!1,n.mustUseProperty=!1,n.defined=!1},9940:(e,n,t)=>{"use strict";var a=t(6760),r=t(9607);e.exports=function(e){var n,t,l=e.length,i=[],o=[],s=-1;for(;++s<l;)n=e[s],i.push(n.property),o.push(n.normal),t=n.space;return new r(a.apply(null,i),a.apply(null,o),t)}},9607:e=>{"use strict";e.exports=t;var n=t.prototype;function t(e,n,t){this.property=e,this.normal=n,t&&(this.space=t)}n.space=null,n.normal={},n.property={}},7e3:(e,n)=>{"use strict";var t=0;function a(){return Math.pow(2,++t)}n.boolean=a(),n.booleanish=a(),n.overloadedBoolean=a(),n.number=a(),n.spaceSeparated=a(),n.commaSeparated=a(),n.commaOrSpaceSeparated=a()},8289:(e,n,t)=>{"use strict";var a=t(7596);e.exports=a({space:"xlink",transform:function(e,n){return"xlink:"+n.slice(5).toLowerCase()},properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}})},5812:(e,n,t)=>{"use strict";var a=t(7596);e.exports=a({space:"xml",transform:function(e,n){return"xml:"+n.slice(3).toLowerCase()},properties:{xmlLang:null,xmlBase:null,xmlSpace:null}})},4397:(e,n,t)=>{"use strict";var a=t(7596),r=t(855);e.exports=a({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:r,properties:{xmlns:null,xmlnsXLink:null}})},6632:e=>{"use strict";e.exports=function(e){return e.toLowerCase()}},1215:(e,n,t)=>{"use strict";var a,r,l=(a="Prism"in t.g,r=a?t.g.Prism:void 0,function(){a?t.g.Prism=r:delete t.g.Prism,a=void 0,r=void 0});("undefined"==typeof window?"undefined"==typeof self?{}:self:window).Prism={manual:!0,disableWorkerMessageHandler:!0};var i=t(1742),o=t(2921),s=t(9216),u=t(2717),c=t(2049),p=t(9726),d=t(6155);l();var g={}.hasOwnProperty;function f(){}f.prototype=s;var m=new f;function h(e){if("function"!=typeof e||!e.displayName)throw new Error("Expected `function` for `grammar`, got `"+e+"`");void 0===m.languages[e.displayName]&&e(m)}e.exports=m,m.highlight=function(e,n){var t,a=s.highlight;if("string"!=typeof e)throw new Error("Expected `string` for `value`, got `"+e+"`");if("Object"===m.util.type(n))t=n,n=null;else{if("string"!=typeof n)throw new Error("Expected `string` for `name`, got `"+n+"`");if(!g.call(m.languages,n))throw new Error("Unknown language: `"+n+"` is not registered");t=m.languages[n]}return a.call(this,e,t,n)},m.register=h,m.alias=function(e,n){var t,a,r,l,i=m.languages,o=e;n&&((o={})[e]=n);for(t in o)for(a=o[t],r=(a="string"==typeof a?[a]:a).length,l=-1;++l<r;)i[a[l]]=i[t]},m.registered=function(e){if("string"!=typeof e)throw new Error("Expected `string` for `language`, got `"+e+"`");return g.call(m.languages,e)},m.listLanguages=function(){var e,n=m.languages,t=[];for(e in n)g.call(n,e)&&"object"==typeof n[e]&&t.push(e);return t},h(u),h(c),h(p),h(d),m.util.encode=function(e){return e},m.Token.stringify=function(e,n,t){var a;if("string"==typeof e)return{type:"text",value:e};if("Array"===m.util.type(e))return function(e,n){var t,a=[],r=e.length,l=-1;for(;++l<r;)""!==(t=e[l])&&null!=t&&a.push(t);l=-1,r=a.length;for(;++l<r;)t=a[l],a[l]=m.Token.stringify(t,n,a);return a}(e,n);a={type:e.type,content:m.Token.stringify(e.content,n,t),tag:"span",classes:["token",e.type],attributes:{},language:n,parent:t},e.alias&&(a.classes=a.classes.concat(e.alias));return m.hooks.run("wrap",a),i(a.tag+"."+a.classes.join("."),function(e){var n;for(n in e)e[n]=o(e[n]);return e}(a.attributes),a.content)}},9726:e=>{"use strict";function n(e){e.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/}}e.exports=n,n.displayName="clike",n.aliases=[]},2049:e=>{"use strict";function n(e){!function(e){var n=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,inside:{rule:/@[\w-]+/}},url:{pattern:RegExp("url\\((?:"+n.source+"|[^\n\r()]*)\\)","i"),inside:{function:/^url/i,punctuation:/^\(|\)$/}},selector:RegExp("[^{}\\s](?:[^{};\"']|"+n.source+")*?(?=\\s*\\{)"),string:{pattern:n,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var t=e.languages.markup;t&&(t.tag.addInlined("style","css"),e.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:t.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:e.languages.css}},alias:"language-css"}},t.tag))}(e)}e.exports=n,n.displayName="css",n.aliases=[]},6155:e=>{"use strict";function n(e){e.languages.javascript=e.languages.extend("clike",{"class-name":[e.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|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)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<<?=?|>>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),e.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,e.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:e.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:e.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:e.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]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:e.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),e.languages.insertBefore("javascript","string",{"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:e.languages.javascript}},string:/[\s\S]+/}}}),e.languages.markup&&e.languages.markup.tag.addInlined("script","javascript"),e.languages.js=e.languages.javascript}e.exports=n,n.displayName="javascript",n.aliases=["js"]},2717:e=>{"use strict";function n(e){e.languages.markup={comment:/<!--[\s\S]*?-->/,prolog:/<\?[\s\S]+?\?>/,doctype:/<!DOCTYPE[\s\S]+?>/i,cdata:/<!\[CDATA\[[\s\S]*?]]>/i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},e.languages.markup.tag.inside["attr-value"].inside.entity=e.languages.markup.entity,e.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.value.replace(/&/,"&"))})),Object.defineProperty(e.languages.markup.tag,"addInlined",{value:function(n,t){var a={};a["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:e.languages[t]},a.cdata=/^<!\[CDATA\[|\]\]>$/i;var r={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:a}};r["language-"+t]={pattern:/[\s\S]+/,inside:e.languages[t]};var l={};l[n]={pattern:RegExp(/(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g,n),"i"),lookbehind:!0,greedy:!0,inside:r},e.languages.insertBefore("markup","cdata",l)}}),e.languages.xml=e.languages.extend("markup",{}),e.languages.html=e.languages.markup,e.languages.mathml=e.languages.markup,e.languages.svg=e.languages.markup}e.exports=n,n.displayName="markup",n.aliases=["xml","html","mathml","svg"]},1e3:e=>{"use strict";var n;e.exports=function(e){var t,a="&"+e+";";if((n=n||document.createElement("i")).innerHTML=a,59===(t=n.textContent).charCodeAt(t.length-1)&&"semi"!==e)return!1;return t!==a&&t}},2921:(e,n,t)=>{"use strict";var a=t(7452),r=t(3580),l=t(6195),i=t(2184),o=t(7961),s=t(1e3);e.exports=function(e,n){var t,l,i={};n||(n={});for(l in d)t=n[l],i[l]=null==t?d[l]:t;(i.position.indent||i.position.start)&&(i.indent=i.position.indent||[],i.position=i.position.start);return function(e,n){var t,l,i,d,w,k,A,S,F,C,P,N,O,E,L,j,M,T,$,D=n.additional,_=n.nonTerminated,I=n.text,R=n.reference,z=n.warning,B=n.textContext,U=n.referenceContext,H=n.warningContext,q=n.position,W=n.indent||[],Z=e.length,G=0,V=-1,K=q.column||1,Q=q.line||1,J="",Y=[];"string"==typeof D&&(D=D.charCodeAt(0));j=X(),S=z?ee:p,G--,Z++;for(;++G<Z;)if(10===w&&(K=W[V]||1),38===(w=e.charCodeAt(G))){if(9===(A=e.charCodeAt(G+1))||10===A||12===A||32===A||38===A||60===A||A!=A||D&&A===D){J+=c(w),K++;continue}for(N=O=G+1,$=O,35===A?($=++N,88===(A=e.charCodeAt($))||120===A?(E=f,$=++N):E=m):E=g,t="",P="",d="",L=y[E],$--;++$<Z&&L(A=e.charCodeAt($));)d+=c(A),E===g&&u.call(a,d)&&(t=d,P=a[d]);(i=59===e.charCodeAt($))&&($++,(l=E===g&&s(d))&&(t=d,P=l)),T=1+$-O,(i||_)&&(d?E===g?(i&&!P?S(5,1):(t!==d&&(T=1+($=N+t.length)-N,i=!1),i||(F=t?1:3,n.attribute?61===(A=e.charCodeAt($))?(S(F,T),P=null):o(A)?P=null:S(F,T):S(F,T))),k=P):(i||S(2,T),b(k=parseInt(d,h[E]))?(S(7,T),k=c(65533)):k in r?(S(6,T),k=r[k]):(C="",x(k)&&S(6,T),k>65535&&(C+=c((k-=65536)>>>10|55296),k=56320|1023&k),k=C+c(k))):E!==g&&S(4,T)),k?(ne(),j=X(),G=$-1,K+=$-O+1,Y.push(k),(M=X()).offset++,R&&R.call(U,k,{start:j,end:M},e.slice(O-1,$)),j=M):(d=e.slice(O-1,$),J+=d,K+=d.length,G=$-1)}else 10===w&&(Q++,V++,K=0),w==w?(J+=c(w),K++):ne();return Y.join("");function X(){return{line:Q,column:K,offset:G+(q.offset||0)}}function ee(e,n){var t=X();t.column+=n,t.offset+=n,z.call(H,v[e],t,e)}function ne(){J&&(Y.push(J),I&&I.call(B,J,{start:j,end:X()}),J="")}}(e,i)};var u={}.hasOwnProperty,c=String.fromCharCode,p=Function.prototype,d={warning:null,reference:null,text:null,warningContext:null,referenceContext:null,textContext:null,position:{},additional:null,attribute:!1,nonTerminated:!0},g="named",f="hexadecimal",m="decimal",h={hexadecimal:16,decimal:10},y={};y.named=o,y[m]=l,y[f]=i;var v={};function b(e){return e>=55296&&e<=57343||e>1114111}function x(e){return e>=1&&e<=8||11===e||e>=13&&e<=31||e>=127&&e<=159||e>=64976&&e<=65007||65535==(65535&e)||65534==(65535&e)}v[1]="Named character references must be terminated by a semicolon",v[2]="Numeric character references must be terminated by a semicolon",v[3]="Named character references cannot be empty",v[4]="Numeric character references cannot be empty",v[5]="Named character references must be known",v[6]="Numeric character references cannot be disallowed",v[7]="Numeric character references cannot be outside the permissible Unicode range"},9216:(e,n,t)=>{var a=function(e){var n=/\blang(?:uage)?-([\w-]+)\b/i,t=0,a={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function(e){return e instanceof r?new r(e.type,a.util.encode(e.content),e.alias):Array.isArray(e)?e.map(a.util.encode):e.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(n,t){var r,l,i=a.util.type(n);switch(t=t||{},i){case"Object":if(l=a.util.objId(n),t[l])return t[l];for(var o in r={},t[l]=r,n)n.hasOwnProperty(o)&&(r[o]=e(n[o],t));return r;case"Array":return l=a.util.objId(n),t[l]?t[l]:(r=[],t[l]=r,n.forEach((function(n,a){r[a]=e(n,t)})),r);default:return n}}},languages:{extend:function(e,n){var t=a.util.clone(a.languages[e]);for(var r in n)t[r]=n[r];return t},insertBefore:function(e,n,t,r){var l=(r=r||a.languages)[e],i={};for(var o in l)if(l.hasOwnProperty(o)){if(o==n)for(var s in t)t.hasOwnProperty(s)&&(i[s]=t[s]);t.hasOwnProperty(o)||(i[o]=l[o])}var u=r[e];return r[e]=i,a.languages.DFS(a.languages,(function(n,t){t===u&&n!=e&&(this[n]=i)})),i},DFS:function e(n,t,r,l){l=l||{};var i=a.util.objId;for(var o in n)if(n.hasOwnProperty(o)){t.call(n,o,n[o],r||o);var s=n[o],u=a.util.type(s);"Object"!==u||l[i(s)]?"Array"!==u||l[i(s)]||(l[i(s)]=!0,e(s,t,o,l)):(l[i(s)]=!0,e(s,t,null,l))}}},plugins:{},highlightAll:function(e,n){a.highlightAllUnder(document,e,n)},highlightAllUnder:function(e,n,t){var r={callback:t,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};a.hooks.run("before-highlightall",r);for(var l,i=e.querySelectorAll(r.selector),o=0;l=i[o++];)a.highlightElement(l,!0===n,r.callback)},highlightElement:function(t,r,l){for(var i,o="none",s=t;s&&!n.test(s.className);)s=s.parentNode;s&&(o=(s.className.match(n)||[,"none"])[1].toLowerCase(),i=a.languages[o]),t.className=t.className.replace(n,"").replace(/\s+/g," ")+" language-"+o,t.parentNode&&(s=t.parentNode,/pre/i.test(s.nodeName)&&(s.className=s.className.replace(n,"").replace(/\s+/g," ")+" language-"+o));var u={element:t,language:o,grammar:i,code:t.textContent},c=function(e){u.highlightedCode=e,a.hooks.run("before-insert",u),u.element.innerHTML=u.highlightedCode,a.hooks.run("after-highlight",u),a.hooks.run("complete",u),l&&l.call(u.element)};if(a.hooks.run("before-sanity-check",u),u.code)if(a.hooks.run("before-highlight",u),u.grammar)if(r&&e.Worker){var p=new Worker(a.filename);p.onmessage=function(e){c(e.data)},p.postMessage(JSON.stringify({language:u.language,code:u.code,immediateClose:!0}))}else c(a.highlight(u.code,u.grammar,u.language));else c(a.util.encode(u.code));else a.hooks.run("complete",u)},highlight:function(e,n,t){var l={code:e,grammar:n,language:t};return a.hooks.run("before-tokenize",l),l.tokens=a.tokenize(l.code,l.grammar),a.hooks.run("after-tokenize",l),r.stringify(a.util.encode(l.tokens),l.language)},matchGrammar:function(e,n,t,l,i,o,s){for(var u in t)if(t.hasOwnProperty(u)&&t[u]){if(u==s)return;var c=t[u];c="Array"===a.util.type(c)?c:[c];for(var p=0;p<c.length;++p){var d=c[p],g=d.inside,f=!!d.lookbehind,m=!!d.greedy,h=0,y=d.alias;if(m&&!d.pattern.global){var v=d.pattern.toString().match(/[imuy]*$/)[0];d.pattern=RegExp(d.pattern.source,v+"g")}d=d.pattern||d;for(var b=l,x=i;b<n.length;x+=n[b].length,++b){var w=n[b];if(n.length>e.length)return;if(!(w instanceof r)){if(m&&b!=n.length-1){if(d.lastIndex=x,!(P=d.exec(e)))break;for(var k=P.index+(f?P[1].length:0),A=P.index+P[0].length,S=b,F=x,C=n.length;S<C&&(F<A||!n[S].type&&!n[S-1].greedy);++S)k>=(F+=n[S].length)&&(++b,x=F);if(n[b]instanceof r)continue;N=S-b,w=e.slice(x,F),P.index-=x}else{d.lastIndex=0;var P=d.exec(w),N=1}if(P){f&&(h=P[1]?P[1].length:0);A=(k=P.index+h)+(P=P[0].slice(h)).length;var O=w.slice(0,k),E=w.slice(A),L=[b,N];O&&(++b,x+=O.length,L.push(O));var j=new r(u,g?a.tokenize(P,g):P,y,P,m);if(L.push(j),E&&L.push(E),Array.prototype.splice.apply(n,L),1!=N&&a.matchGrammar(e,n,t,b,x,!0,u),o)break}else if(o)break}}}}},tokenize:function(e,n){var t=[e],r=n.rest;if(r){for(var l in r)n[l]=r[l];delete n.rest}return a.matchGrammar(e,t,n,0,0,!1),t},hooks:{all:{},add:function(e,n){var t=a.hooks.all;t[e]=t[e]||[],t[e].push(n)},run:function(e,n){var t=a.hooks.all[e];if(t&&t.length)for(var r,l=0;r=t[l++];)r(n)}},Token:r};function r(e,n,t,a,r){this.type=e,this.content=n,this.alias=t,this.length=0|(a||"").length,this.greedy=!!r}if(e.Prism=a,r.stringify=function(e,n){if("string"==typeof e)return e;if(Array.isArray(e))return e.map((function(e){return r.stringify(e,n)})).join("");var t={type:e.type,content:r.stringify(e.content,n),tag:"span",classes:["token",e.type],attributes:{},language:n};if(e.alias){var l=Array.isArray(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(t.classes,l)}a.hooks.run("wrap",t);var i=Object.keys(t.attributes).map((function(e){return e+'="'+(t.attributes[e]||"").replace(/"/g,""")+'"'})).join(" ");return"<"+t.tag+' class="'+t.classes.join(" ")+'"'+(i?" "+i:"")+">"+t.content+"</"+t.tag+">"},!e.document)return e.addEventListener?(a.disableWorkerMessageHandler||e.addEventListener("message",(function(n){var t=JSON.parse(n.data),r=t.language,l=t.code,i=t.immediateClose;e.postMessage(a.highlight(l,a.languages[r],r)),i&&e.close()}),!1),a):a;var l=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return l&&(a.filename=l.src,a.manual||l.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(a.highlightAll):window.setTimeout(a.highlightAll,16):document.addEventListener("DOMContentLoaded",a.highlightAll))),a}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{});e.exports&&(e.exports=a),void 0!==t.g&&(t.g.Prism=a)},6582:(e,n)=>{"use strict";n.Q=function(e){var n=String(e||"").trim();return""===n?[]:n.split(t)};var t=/[ \t\n\r\f]+/g},6760:e=>{e.exports=function(){for(var e={},t=0;t<arguments.length;t++){var a=arguments[t];for(var r in a)n.call(a,r)&&(e[r]=a[r])}return e};var n=Object.prototype.hasOwnProperty},7452:e=>{"use strict";e.exports=JSON.parse('{"AElig":"\xc6","AMP":"&","Aacute":"\xc1","Acirc":"\xc2","Agrave":"\xc0","Aring":"\xc5","Atilde":"\xc3","Auml":"\xc4","COPY":"\xa9","Ccedil":"\xc7","ETH":"\xd0","Eacute":"\xc9","Ecirc":"\xca","Egrave":"\xc8","Euml":"\xcb","GT":">","Iacute":"\xcd","Icirc":"\xce","Igrave":"\xcc","Iuml":"\xcf","LT":"<","Ntilde":"\xd1","Oacute":"\xd3","Ocirc":"\xd4","Ograve":"\xd2","Oslash":"\xd8","Otilde":"\xd5","Ouml":"\xd6","QUOT":"\\"","REG":"\xae","THORN":"\xde","Uacute":"\xda","Ucirc":"\xdb","Ugrave":"\xd9","Uuml":"\xdc","Yacute":"\xdd","aacute":"\xe1","acirc":"\xe2","acute":"\xb4","aelig":"\xe6","agrave":"\xe0","amp":"&","aring":"\xe5","atilde":"\xe3","auml":"\xe4","brvbar":"\xa6","ccedil":"\xe7","cedil":"\xb8","cent":"\xa2","copy":"\xa9","curren":"\xa4","deg":"\xb0","divide":"\xf7","eacute":"\xe9","ecirc":"\xea","egrave":"\xe8","eth":"\xf0","euml":"\xeb","frac12":"\xbd","frac14":"\xbc","frac34":"\xbe","gt":">","iacute":"\xed","icirc":"\xee","iexcl":"\xa1","igrave":"\xec","iquest":"\xbf","iuml":"\xef","laquo":"\xab","lt":"<","macr":"\xaf","micro":"\xb5","middot":"\xb7","nbsp":"\xa0","not":"\xac","ntilde":"\xf1","oacute":"\xf3","ocirc":"\xf4","ograve":"\xf2","ordf":"\xaa","ordm":"\xba","oslash":"\xf8","otilde":"\xf5","ouml":"\xf6","para":"\xb6","plusmn":"\xb1","pound":"\xa3","quot":"\\"","raquo":"\xbb","reg":"\xae","sect":"\xa7","shy":"\xad","sup1":"\xb9","sup2":"\xb2","sup3":"\xb3","szlig":"\xdf","thorn":"\xfe","times":"\xd7","uacute":"\xfa","ucirc":"\xfb","ugrave":"\xf9","uml":"\xa8","uuml":"\xfc","yacute":"\xfd","yen":"\xa5","yuml":"\xff"}')},3580:e=>{"use strict";e.exports=JSON.parse('{"0":"\ufffd","128":"\u20ac","130":"\u201a","131":"\u0192","132":"\u201e","133":"\u2026","134":"\u2020","135":"\u2021","136":"\u02c6","137":"\u2030","138":"\u0160","139":"\u2039","140":"\u0152","142":"\u017d","145":"\u2018","146":"\u2019","147":"\u201c","148":"\u201d","149":"\u2022","150":"\u2013","151":"\u2014","152":"\u02dc","153":"\u2122","154":"\u0161","155":"\u203a","156":"\u0153","158":"\u017e","159":"\u0178"}')}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_abap.1c1b2a0f.js b/assets/js/react-syntax-highlighter_languages_refractor_abap.1c1b2a0f.js new file mode 100644 index 000000000..f357d5bc9 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_abap.1c1b2a0f.js @@ -0,0 +1,72 @@ +"use strict"; +exports.id = 3412; +exports.ids = [3412]; +exports.modules = { + +/***/ 36167: +/***/ ((module) => { + + + +module.exports = abap +abap.displayName = 'abap' +abap.aliases = [] +function abap(Prism) { + Prism.languages.abap = { + comment: /^\*.*/m, + string: /(`|')(?:\\.|(?!\1)[^\\\r\n])*\1/m, + 'string-template': { + pattern: /([|}])(?:\\.|[^\\|{\r\n])*(?=[|{])/, + lookbehind: true, + alias: 'string' + }, + /* End Of Line comments should not interfere with strings when the +quote character occurs within them. We assume a string being highlighted +inside an EOL comment is more acceptable than the opposite. +*/ + 'eol-comment': { + pattern: /(^|\s)".*/m, + lookbehind: true, + alias: 'comment' + }, + keyword: { + pattern: /(\s|\.|^)(?:SCIENTIFIC_WITH_LEADING_ZERO|SCALE_PRESERVING_SCIENTIFIC|RMC_COMMUNICATION_FAILURE|END-ENHANCEMENT-SECTION|MULTIPLY-CORRESPONDING|SUBTRACT-CORRESPONDING|VERIFICATION-MESSAGE|DIVIDE-CORRESPONDING|ENHANCEMENT-SECTION|CURRENCY_CONVERSION|RMC_SYSTEM_FAILURE|START-OF-SELECTION|MOVE-CORRESPONDING|RMC_INVALID_STATUS|CUSTOMER-FUNCTION|END-OF-DEFINITION|ENHANCEMENT-POINT|SYSTEM-EXCEPTIONS|ADD-CORRESPONDING|SCALE_PRESERVING|SELECTION-SCREEN|CURSOR-SELECTION|END-OF-SELECTION|LOAD-OF-PROGRAM|SCROLL-BOUNDARY|SELECTION-TABLE|EXCEPTION-TABLE|IMPLEMENTATIONS|PARAMETER-TABLE|RIGHT-JUSTIFIED|UNIT_CONVERSION|AUTHORITY-CHECK|LIST-PROCESSING|SIGN_AS_POSTFIX|COL_BACKGROUND|IMPLEMENTATION|INTERFACE-POOL|TRANSFORMATION|IDENTIFICATION|ENDENHANCEMENT|LINE-SELECTION|INITIALIZATION|LEFT-JUSTIFIED|SELECT-OPTIONS|SELECTION-SETS|COMMUNICATION|CORRESPONDING|DECIMAL_SHIFT|PRINT-CONTROL|VALUE-REQUEST|CHAIN-REQUEST|FUNCTION-POOL|FIELD-SYMBOLS|FUNCTIONALITY|INVERTED-DATE|SELECTION-SET|CLASS-METHODS|OUTPUT-LENGTH|CLASS-CODING|COL_NEGATIVE|ERRORMESSAGE|FIELD-GROUPS|HELP-REQUEST|NO-EXTENSION|NO-TOPOFPAGE|REDEFINITION|DISPLAY-MODE|ENDINTERFACE|EXIT-COMMAND|FIELD-SYMBOL|NO-SCROLLING|SHORTDUMP-ID|ACCESSPOLICY|CLASS-EVENTS|COL_POSITIVE|DECLARATIONS|ENHANCEMENTS|FILTER-TABLE|SWITCHSTATES|SYNTAX-CHECK|TRANSPORTING|ASYNCHRONOUS|SYNTAX-TRACE|TOKENIZATION|USER-COMMAND|WITH-HEADING|ABAP-SOURCE|BREAK-POINT|CHAIN-INPUT|COMPRESSION|FIXED-POINT|NEW-SECTION|NON-UNICODE|OCCURRENCES|RESPONSIBLE|SYSTEM-CALL|TRACE-TABLE|ABBREVIATED|CHAR-TO-HEX|END-OF-FILE|ENDFUNCTION|ENVIRONMENT|ASSOCIATION|COL_HEADING|EDITOR-CALL|END-OF-PAGE|ENGINEERING|IMPLEMENTED|INTENSIFIED|RADIOBUTTON|SYSTEM-EXIT|TOP-OF-PAGE|TRANSACTION|APPLICATION|CONCATENATE|DESTINATION|ENHANCEMENT|IMMEDIATELY|NO-GROUPING|PRECOMPILED|REPLACEMENT|TITLE-LINES|ACTIVATION|BYTE-ORDER|CLASS-POOL|CONNECTION|CONVERSION|DEFINITION|DEPARTMENT|EXPIRATION|INHERITING|MESSAGE-ID|NO-HEADING|PERFORMING|QUEUE-ONLY|RIGHTSPACE|SCIENTIFIC|STATUSINFO|STRUCTURES|SYNCPOINTS|WITH-TITLE|ATTRIBUTES|BOUNDARIES|CLASS-DATA|COL_NORMAL|DD\/MM\/YYYY|DESCENDING|INTERFACES|LINE-COUNT|MM\/DD\/YYYY|NON-UNIQUE|PRESERVING|SELECTIONS|STATEMENTS|SUBROUTINE|TRUNCATION|TYPE-POOLS|ARITHMETIC|BACKGROUND|ENDPROVIDE|EXCEPTIONS|IDENTIFIER|INDEX-LINE|OBLIGATORY|PARAMETERS|PERCENTAGE|PUSHBUTTON|RESOLUTION|COMPONENTS|DEALLOCATE|DISCONNECT|DUPLICATES|FIRST-LINE|HEAD-LINES|NO-DISPLAY|OCCURRENCE|RESPECTING|RETURNCODE|SUBMATCHES|TRACE-FILE|ASCENDING|BYPASSING|ENDMODULE|EXCEPTION|EXCLUDING|EXPORTING|INCREMENT|MATCHCODE|PARAMETER|PARTIALLY|PREFERRED|REFERENCE|REPLACING|RETURNING|SELECTION|SEPARATED|SPECIFIED|STATEMENT|TIMESTAMP|TYPE-POOL|ACCEPTING|APPENDAGE|ASSIGNING|COL_GROUP|COMPARING|CONSTANTS|DANGEROUS|IMPORTING|INSTANCES|LEFTSPACE|LOG-POINT|QUICKINFO|READ-ONLY|SCROLLING|SQLSCRIPT|STEP-LOOP|TOP-LINES|TRANSLATE|APPENDING|AUTHORITY|CHARACTER|COMPONENT|CONDITION|DIRECTORY|DUPLICATE|MESSAGING|RECEIVING|SUBSCREEN|ACCORDING|COL_TOTAL|END-LINES|ENDMETHOD|ENDSELECT|EXPANDING|EXTENSION|INCLUDING|INFOTYPES|INTERFACE|INTERVALS|LINE-SIZE|PF-STATUS|PROCEDURE|PROTECTED|REQUESTED|RESUMABLE|RIGHTPLUS|SAP-SPOOL|SECONDARY|STRUCTURE|SUBSTRING|TABLEVIEW|NUMOFCHAR|ADJACENT|ANALYSIS|ASSIGNED|BACKWARD|CHANNELS|CHECKBOX|CONTINUE|CRITICAL|DATAINFO|DD\/MM\/YY|DURATION|ENCODING|ENDCLASS|FUNCTION|LEFTPLUS|LINEFEED|MM\/DD\/YY|OVERFLOW|RECEIVED|SKIPPING|SORTABLE|STANDARD|SUBTRACT|SUPPRESS|TABSTRIP|TITLEBAR|TRUNCATE|UNASSIGN|WHENEVER|ANALYZER|COALESCE|COMMENTS|CONDENSE|DECIMALS|DEFERRED|ENDWHILE|EXPLICIT|KEYWORDS|MESSAGES|POSITION|PRIORITY|RECEIVER|RENAMING|TIMEZONE|TRAILING|ALLOCATE|CENTERED|CIRCULAR|CONTROLS|CURRENCY|DELETING|DESCRIBE|DISTANCE|ENDCATCH|EXPONENT|EXTENDED|GENERATE|IGNORING|INCLUDES|INTERNAL|MAJOR-ID|MODIFIER|NEW-LINE|OPTIONAL|PROPERTY|ROLLBACK|STARTING|SUPPLIED|ABSTRACT|CHANGING|CONTEXTS|CREATING|CUSTOMER|DATABASE|DAYLIGHT|DEFINING|DISTINCT|DIVISION|ENABLING|ENDCHAIN|ESCAPING|HARMLESS|IMPLICIT|INACTIVE|LANGUAGE|MINOR-ID|MULTIPLY|NEW-PAGE|NO-TITLE|POS_HIGH|SEPARATE|TEXTPOOL|TRANSFER|SELECTOR|DBMAXLEN|ITERATOR|SELECTOR|ARCHIVE|BIT-XOR|BYTE-CO|COLLECT|COMMENT|CURRENT|DEFAULT|DISPLAY|ENDFORM|EXTRACT|LEADING|LISTBOX|LOCATOR|MEMBERS|METHODS|NESTING|POS_LOW|PROCESS|PROVIDE|RAISING|RESERVE|SECONDS|SUMMARY|VISIBLE|BETWEEN|BIT-AND|BYTE-CS|CLEANUP|COMPUTE|CONTROL|CONVERT|DATASET|ENDCASE|FORWARD|HEADERS|HOTSPOT|INCLUDE|INVERSE|KEEPING|NO-ZERO|OBJECTS|OVERLAY|PADDING|PATTERN|PROGRAM|REFRESH|SECTION|SUMMING|TESTING|VERSION|WINDOWS|WITHOUT|BIT-NOT|BYTE-CA|BYTE-NA|CASTING|CONTEXT|COUNTRY|DYNAMIC|ENABLED|ENDLOOP|EXECUTE|FRIENDS|HANDLER|HEADING|INITIAL|\*-INPUT|LOGFILE|MAXIMUM|MINIMUM|NO-GAPS|NO-SIGN|PRAGMAS|PRIMARY|PRIVATE|REDUCED|REPLACE|REQUEST|RESULTS|UNICODE|WARNING|ALIASES|BYTE-CN|BYTE-NS|CALLING|COL_KEY|COLUMNS|CONNECT|ENDEXEC|ENTRIES|EXCLUDE|FILTERS|FURTHER|HELP-ID|LOGICAL|MAPPING|MESSAGE|NAMETAB|OPTIONS|PACKAGE|PERFORM|RECEIVE|STATICS|VARYING|BINDING|CHARLEN|GREATER|XSTRLEN|ACCEPT|APPEND|DETAIL|ELSEIF|ENDING|ENDTRY|FORMAT|FRAMES|GIVING|HASHED|HEADER|IMPORT|INSERT|MARGIN|MODULE|NATIVE|OBJECT|OFFSET|REMOTE|RESUME|SAVING|SIMPLE|SUBMIT|TABBED|TOKENS|UNIQUE|UNPACK|UPDATE|WINDOW|YELLOW|ACTUAL|ASPECT|CENTER|CURSOR|DELETE|DIALOG|DIVIDE|DURING|ERRORS|EVENTS|EXTEND|FILTER|HANDLE|HAVING|IGNORE|LITTLE|MEMORY|NO-GAP|OCCURS|OPTION|PERSON|PLACES|PUBLIC|REDUCE|REPORT|RESULT|SINGLE|SORTED|SWITCH|SYNTAX|TARGET|VALUES|WRITER|ASSERT|BLOCKS|BOUNDS|BUFFER|CHANGE|COLUMN|COMMIT|CONCAT|COPIES|CREATE|DDMMYY|DEFINE|ENDIAN|ESCAPE|EXPAND|KERNEL|LAYOUT|LEGACY|LEVELS|MMDDYY|NUMBER|OUTPUT|RANGES|READER|RETURN|SCREEN|SEARCH|SELECT|SHARED|SOURCE|STABLE|STATIC|SUBKEY|SUFFIX|TABLES|UNWIND|YYMMDD|ASSIGN|BACKUP|BEFORE|BINARY|BIT-OR|BLANKS|CLIENT|CODING|COMMON|DEMAND|DYNPRO|EXCEPT|EXISTS|EXPORT|FIELDS|GLOBAL|GROUPS|LENGTH|LOCALE|MEDIUM|METHOD|MODIFY|NESTED|OTHERS|REJECT|SCROLL|SUPPLY|SYMBOL|ENDFOR|STRLEN|ALIGN|BEGIN|BOUND|ENDAT|ENTRY|EVENT|FINAL|FLUSH|GRANT|INNER|SHORT|USING|WRITE|AFTER|BLACK|BLOCK|CLOCK|COLOR|COUNT|DUMMY|EMPTY|ENDDO|ENDON|GREEN|INDEX|INOUT|LEAVE|LEVEL|LINES|MODIF|ORDER|OUTER|RANGE|RESET|RETRY|RIGHT|SMART|SPLIT|STYLE|TABLE|THROW|UNDER|UNTIL|UPPER|UTF-8|WHERE|ALIAS|BLANK|CLEAR|CLOSE|EXACT|FETCH|FIRST|FOUND|GROUP|LLANG|LOCAL|OTHER|REGEX|SPOOL|TITLE|TYPES|VALID|WHILE|ALPHA|BOXED|CATCH|CHAIN|CHECK|CLASS|COVER|ENDIF|EQUIV|FIELD|FLOOR|FRAME|INPUT|LOWER|MATCH|NODES|PAGES|PRINT|RAISE|ROUND|SHIFT|SPACE|SPOTS|STAMP|STATE|TASKS|TIMES|TRMAC|ULINE|UNION|VALUE|WIDTH|EQUAL|LOG10|TRUNC|BLOB|CASE|CEIL|CLOB|COND|EXIT|FILE|GAPS|HOLD|INCL|INTO|KEEP|KEYS|LAST|LINE|LONG|LPAD|MAIL|MODE|OPEN|PINK|READ|ROWS|TEST|THEN|ZERO|AREA|BACK|BADI|BYTE|CAST|EDIT|EXEC|FAIL|FIND|FKEQ|FONT|FREE|GKEQ|HIDE|INIT|ITNO|LATE|LOOP|MAIN|MARK|MOVE|NEXT|NULL|RISK|ROLE|UNIT|WAIT|ZONE|BASE|CALL|CODE|DATA|DATE|FKGE|GKGE|HIGH|KIND|LEFT|LIST|MASK|MESH|NAME|NODE|PACK|PAGE|POOL|SEND|SIGN|SIZE|SOME|STOP|TASK|TEXT|TIME|USER|VARY|WITH|WORD|BLUE|CONV|COPY|DEEP|ELSE|FORM|FROM|HINT|ICON|JOIN|LIKE|LOAD|ONLY|PART|SCAN|SKIP|SORT|TYPE|UNIX|VIEW|WHEN|WORK|ACOS|ASIN|ATAN|COSH|EACH|FRAC|LESS|RTTI|SINH|SQRT|TANH|AVG|BIT|DIV|ISO|LET|OUT|PAD|SQL|ALL|CI_|CPI|END|LOB|LPI|MAX|MIN|NEW|OLE|RUN|SET|\?TO|YES|ABS|ADD|AND|BIG|FOR|HDB|JOB|LOW|NOT|SAP|TRY|VIA|XML|ANY|GET|IDS|KEY|MOD|OFF|PUT|RAW|RED|REF|SUM|TAB|XSD|CNT|COS|EXP|LOG|SIN|TAN|XOR|AT|CO|CP|DO|GT|ID|IF|NS|OR|BT|CA|CS|GE|NA|NB|EQ|IN|LT|NE|NO|OF|ON|PF|TO|AS|BY|CN|IS|LE|NP|UP|E|I|M|O|Z|C|X)\b/i, + lookbehind: true + }, + /* Numbers can be only integers. Decimal or Hex appear only as strings */ + number: /\b\d+\b/, + /* Operators must always be surrounded by whitespace, they cannot be put +adjacent to operands. +*/ + operator: { + pattern: /(\s)(?:\*\*?|<[=>]?|>=?|\?=|[-+\/=])(?=\s)/, + lookbehind: true + }, + 'string-operator': { + pattern: /(\s)&&?(?=\s)/, + lookbehind: true, + /* The official editor highlights */ + alias: 'keyword' + }, + 'token-operator': [ + { + /* Special operators used to access structure components, class methods/attributes, etc. */ + pattern: /(\w)(?:->?|=>|[~|{}])(?=\w)/, + lookbehind: true, + alias: 'punctuation' + }, + { + /* Special tokens used do delimit string templates */ + pattern: /[|{}]/, + alias: 'punctuation' + } + ], + punctuation: /[,.:()]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_abap.52db2474.js b/assets/js/react-syntax-highlighter_languages_refractor_abap.52db2474.js new file mode 100644 index 000000000..e6b3f2304 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_abap.52db2474.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3412],{6167:E=>{function N(E){E.languages.abap={comment:/^\*.*/m,string:/(`|')(?:\\.|(?!\1)[^\\\r\n])*\1/m,"string-template":{pattern:/([|}])(?:\\.|[^\\|{\r\n])*(?=[|{])/,lookbehind:!0,alias:"string"},"eol-comment":{pattern:/(^|\s)".*/m,lookbehind:!0,alias:"comment"},keyword:{pattern:/(\s|\.|^)(?:SCIENTIFIC_WITH_LEADING_ZERO|SCALE_PRESERVING_SCIENTIFIC|RMC_COMMUNICATION_FAILURE|END-ENHANCEMENT-SECTION|MULTIPLY-CORRESPONDING|SUBTRACT-CORRESPONDING|VERIFICATION-MESSAGE|DIVIDE-CORRESPONDING|ENHANCEMENT-SECTION|CURRENCY_CONVERSION|RMC_SYSTEM_FAILURE|START-OF-SELECTION|MOVE-CORRESPONDING|RMC_INVALID_STATUS|CUSTOMER-FUNCTION|END-OF-DEFINITION|ENHANCEMENT-POINT|SYSTEM-EXCEPTIONS|ADD-CORRESPONDING|SCALE_PRESERVING|SELECTION-SCREEN|CURSOR-SELECTION|END-OF-SELECTION|LOAD-OF-PROGRAM|SCROLL-BOUNDARY|SELECTION-TABLE|EXCEPTION-TABLE|IMPLEMENTATIONS|PARAMETER-TABLE|RIGHT-JUSTIFIED|UNIT_CONVERSION|AUTHORITY-CHECK|LIST-PROCESSING|SIGN_AS_POSTFIX|COL_BACKGROUND|IMPLEMENTATION|INTERFACE-POOL|TRANSFORMATION|IDENTIFICATION|ENDENHANCEMENT|LINE-SELECTION|INITIALIZATION|LEFT-JUSTIFIED|SELECT-OPTIONS|SELECTION-SETS|COMMUNICATION|CORRESPONDING|DECIMAL_SHIFT|PRINT-CONTROL|VALUE-REQUEST|CHAIN-REQUEST|FUNCTION-POOL|FIELD-SYMBOLS|FUNCTIONALITY|INVERTED-DATE|SELECTION-SET|CLASS-METHODS|OUTPUT-LENGTH|CLASS-CODING|COL_NEGATIVE|ERRORMESSAGE|FIELD-GROUPS|HELP-REQUEST|NO-EXTENSION|NO-TOPOFPAGE|REDEFINITION|DISPLAY-MODE|ENDINTERFACE|EXIT-COMMAND|FIELD-SYMBOL|NO-SCROLLING|SHORTDUMP-ID|ACCESSPOLICY|CLASS-EVENTS|COL_POSITIVE|DECLARATIONS|ENHANCEMENTS|FILTER-TABLE|SWITCHSTATES|SYNTAX-CHECK|TRANSPORTING|ASYNCHRONOUS|SYNTAX-TRACE|TOKENIZATION|USER-COMMAND|WITH-HEADING|ABAP-SOURCE|BREAK-POINT|CHAIN-INPUT|COMPRESSION|FIXED-POINT|NEW-SECTION|NON-UNICODE|OCCURRENCES|RESPONSIBLE|SYSTEM-CALL|TRACE-TABLE|ABBREVIATED|CHAR-TO-HEX|END-OF-FILE|ENDFUNCTION|ENVIRONMENT|ASSOCIATION|COL_HEADING|EDITOR-CALL|END-OF-PAGE|ENGINEERING|IMPLEMENTED|INTENSIFIED|RADIOBUTTON|SYSTEM-EXIT|TOP-OF-PAGE|TRANSACTION|APPLICATION|CONCATENATE|DESTINATION|ENHANCEMENT|IMMEDIATELY|NO-GROUPING|PRECOMPILED|REPLACEMENT|TITLE-LINES|ACTIVATION|BYTE-ORDER|CLASS-POOL|CONNECTION|CONVERSION|DEFINITION|DEPARTMENT|EXPIRATION|INHERITING|MESSAGE-ID|NO-HEADING|PERFORMING|QUEUE-ONLY|RIGHTSPACE|SCIENTIFIC|STATUSINFO|STRUCTURES|SYNCPOINTS|WITH-TITLE|ATTRIBUTES|BOUNDARIES|CLASS-DATA|COL_NORMAL|DD\/MM\/YYYY|DESCENDING|INTERFACES|LINE-COUNT|MM\/DD\/YYYY|NON-UNIQUE|PRESERVING|SELECTIONS|STATEMENTS|SUBROUTINE|TRUNCATION|TYPE-POOLS|ARITHMETIC|BACKGROUND|ENDPROVIDE|EXCEPTIONS|IDENTIFIER|INDEX-LINE|OBLIGATORY|PARAMETERS|PERCENTAGE|PUSHBUTTON|RESOLUTION|COMPONENTS|DEALLOCATE|DISCONNECT|DUPLICATES|FIRST-LINE|HEAD-LINES|NO-DISPLAY|OCCURRENCE|RESPECTING|RETURNCODE|SUBMATCHES|TRACE-FILE|ASCENDING|BYPASSING|ENDMODULE|EXCEPTION|EXCLUDING|EXPORTING|INCREMENT|MATCHCODE|PARAMETER|PARTIALLY|PREFERRED|REFERENCE|REPLACING|RETURNING|SELECTION|SEPARATED|SPECIFIED|STATEMENT|TIMESTAMP|TYPE-POOL|ACCEPTING|APPENDAGE|ASSIGNING|COL_GROUP|COMPARING|CONSTANTS|DANGEROUS|IMPORTING|INSTANCES|LEFTSPACE|LOG-POINT|QUICKINFO|READ-ONLY|SCROLLING|SQLSCRIPT|STEP-LOOP|TOP-LINES|TRANSLATE|APPENDING|AUTHORITY|CHARACTER|COMPONENT|CONDITION|DIRECTORY|DUPLICATE|MESSAGING|RECEIVING|SUBSCREEN|ACCORDING|COL_TOTAL|END-LINES|ENDMETHOD|ENDSELECT|EXPANDING|EXTENSION|INCLUDING|INFOTYPES|INTERFACE|INTERVALS|LINE-SIZE|PF-STATUS|PROCEDURE|PROTECTED|REQUESTED|RESUMABLE|RIGHTPLUS|SAP-SPOOL|SECONDARY|STRUCTURE|SUBSTRING|TABLEVIEW|NUMOFCHAR|ADJACENT|ANALYSIS|ASSIGNED|BACKWARD|CHANNELS|CHECKBOX|CONTINUE|CRITICAL|DATAINFO|DD\/MM\/YY|DURATION|ENCODING|ENDCLASS|FUNCTION|LEFTPLUS|LINEFEED|MM\/DD\/YY|OVERFLOW|RECEIVED|SKIPPING|SORTABLE|STANDARD|SUBTRACT|SUPPRESS|TABSTRIP|TITLEBAR|TRUNCATE|UNASSIGN|WHENEVER|ANALYZER|COALESCE|COMMENTS|CONDENSE|DECIMALS|DEFERRED|ENDWHILE|EXPLICIT|KEYWORDS|MESSAGES|POSITION|PRIORITY|RECEIVER|RENAMING|TIMEZONE|TRAILING|ALLOCATE|CENTERED|CIRCULAR|CONTROLS|CURRENCY|DELETING|DESCRIBE|DISTANCE|ENDCATCH|EXPONENT|EXTENDED|GENERATE|IGNORING|INCLUDES|INTERNAL|MAJOR-ID|MODIFIER|NEW-LINE|OPTIONAL|PROPERTY|ROLLBACK|STARTING|SUPPLIED|ABSTRACT|CHANGING|CONTEXTS|CREATING|CUSTOMER|DATABASE|DAYLIGHT|DEFINING|DISTINCT|DIVISION|ENABLING|ENDCHAIN|ESCAPING|HARMLESS|IMPLICIT|INACTIVE|LANGUAGE|MINOR-ID|MULTIPLY|NEW-PAGE|NO-TITLE|POS_HIGH|SEPARATE|TEXTPOOL|TRANSFER|SELECTOR|DBMAXLEN|ITERATOR|SELECTOR|ARCHIVE|BIT-XOR|BYTE-CO|COLLECT|COMMENT|CURRENT|DEFAULT|DISPLAY|ENDFORM|EXTRACT|LEADING|LISTBOX|LOCATOR|MEMBERS|METHODS|NESTING|POS_LOW|PROCESS|PROVIDE|RAISING|RESERVE|SECONDS|SUMMARY|VISIBLE|BETWEEN|BIT-AND|BYTE-CS|CLEANUP|COMPUTE|CONTROL|CONVERT|DATASET|ENDCASE|FORWARD|HEADERS|HOTSPOT|INCLUDE|INVERSE|KEEPING|NO-ZERO|OBJECTS|OVERLAY|PADDING|PATTERN|PROGRAM|REFRESH|SECTION|SUMMING|TESTING|VERSION|WINDOWS|WITHOUT|BIT-NOT|BYTE-CA|BYTE-NA|CASTING|CONTEXT|COUNTRY|DYNAMIC|ENABLED|ENDLOOP|EXECUTE|FRIENDS|HANDLER|HEADING|INITIAL|\*-INPUT|LOGFILE|MAXIMUM|MINIMUM|NO-GAPS|NO-SIGN|PRAGMAS|PRIMARY|PRIVATE|REDUCED|REPLACE|REQUEST|RESULTS|UNICODE|WARNING|ALIASES|BYTE-CN|BYTE-NS|CALLING|COL_KEY|COLUMNS|CONNECT|ENDEXEC|ENTRIES|EXCLUDE|FILTERS|FURTHER|HELP-ID|LOGICAL|MAPPING|MESSAGE|NAMETAB|OPTIONS|PACKAGE|PERFORM|RECEIVE|STATICS|VARYING|BINDING|CHARLEN|GREATER|XSTRLEN|ACCEPT|APPEND|DETAIL|ELSEIF|ENDING|ENDTRY|FORMAT|FRAMES|GIVING|HASHED|HEADER|IMPORT|INSERT|MARGIN|MODULE|NATIVE|OBJECT|OFFSET|REMOTE|RESUME|SAVING|SIMPLE|SUBMIT|TABBED|TOKENS|UNIQUE|UNPACK|UPDATE|WINDOW|YELLOW|ACTUAL|ASPECT|CENTER|CURSOR|DELETE|DIALOG|DIVIDE|DURING|ERRORS|EVENTS|EXTEND|FILTER|HANDLE|HAVING|IGNORE|LITTLE|MEMORY|NO-GAP|OCCURS|OPTION|PERSON|PLACES|PUBLIC|REDUCE|REPORT|RESULT|SINGLE|SORTED|SWITCH|SYNTAX|TARGET|VALUES|WRITER|ASSERT|BLOCKS|BOUNDS|BUFFER|CHANGE|COLUMN|COMMIT|CONCAT|COPIES|CREATE|DDMMYY|DEFINE|ENDIAN|ESCAPE|EXPAND|KERNEL|LAYOUT|LEGACY|LEVELS|MMDDYY|NUMBER|OUTPUT|RANGES|READER|RETURN|SCREEN|SEARCH|SELECT|SHARED|SOURCE|STABLE|STATIC|SUBKEY|SUFFIX|TABLES|UNWIND|YYMMDD|ASSIGN|BACKUP|BEFORE|BINARY|BIT-OR|BLANKS|CLIENT|CODING|COMMON|DEMAND|DYNPRO|EXCEPT|EXISTS|EXPORT|FIELDS|GLOBAL|GROUPS|LENGTH|LOCALE|MEDIUM|METHOD|MODIFY|NESTED|OTHERS|REJECT|SCROLL|SUPPLY|SYMBOL|ENDFOR|STRLEN|ALIGN|BEGIN|BOUND|ENDAT|ENTRY|EVENT|FINAL|FLUSH|GRANT|INNER|SHORT|USING|WRITE|AFTER|BLACK|BLOCK|CLOCK|COLOR|COUNT|DUMMY|EMPTY|ENDDO|ENDON|GREEN|INDEX|INOUT|LEAVE|LEVEL|LINES|MODIF|ORDER|OUTER|RANGE|RESET|RETRY|RIGHT|SMART|SPLIT|STYLE|TABLE|THROW|UNDER|UNTIL|UPPER|UTF-8|WHERE|ALIAS|BLANK|CLEAR|CLOSE|EXACT|FETCH|FIRST|FOUND|GROUP|LLANG|LOCAL|OTHER|REGEX|SPOOL|TITLE|TYPES|VALID|WHILE|ALPHA|BOXED|CATCH|CHAIN|CHECK|CLASS|COVER|ENDIF|EQUIV|FIELD|FLOOR|FRAME|INPUT|LOWER|MATCH|NODES|PAGES|PRINT|RAISE|ROUND|SHIFT|SPACE|SPOTS|STAMP|STATE|TASKS|TIMES|TRMAC|ULINE|UNION|VALUE|WIDTH|EQUAL|LOG10|TRUNC|BLOB|CASE|CEIL|CLOB|COND|EXIT|FILE|GAPS|HOLD|INCL|INTO|KEEP|KEYS|LAST|LINE|LONG|LPAD|MAIL|MODE|OPEN|PINK|READ|ROWS|TEST|THEN|ZERO|AREA|BACK|BADI|BYTE|CAST|EDIT|EXEC|FAIL|FIND|FKEQ|FONT|FREE|GKEQ|HIDE|INIT|ITNO|LATE|LOOP|MAIN|MARK|MOVE|NEXT|NULL|RISK|ROLE|UNIT|WAIT|ZONE|BASE|CALL|CODE|DATA|DATE|FKGE|GKGE|HIGH|KIND|LEFT|LIST|MASK|MESH|NAME|NODE|PACK|PAGE|POOL|SEND|SIGN|SIZE|SOME|STOP|TASK|TEXT|TIME|USER|VARY|WITH|WORD|BLUE|CONV|COPY|DEEP|ELSE|FORM|FROM|HINT|ICON|JOIN|LIKE|LOAD|ONLY|PART|SCAN|SKIP|SORT|TYPE|UNIX|VIEW|WHEN|WORK|ACOS|ASIN|ATAN|COSH|EACH|FRAC|LESS|RTTI|SINH|SQRT|TANH|AVG|BIT|DIV|ISO|LET|OUT|PAD|SQL|ALL|CI_|CPI|END|LOB|LPI|MAX|MIN|NEW|OLE|RUN|SET|\?TO|YES|ABS|ADD|AND|BIG|FOR|HDB|JOB|LOW|NOT|SAP|TRY|VIA|XML|ANY|GET|IDS|KEY|MOD|OFF|PUT|RAW|RED|REF|SUM|TAB|XSD|CNT|COS|EXP|LOG|SIN|TAN|XOR|AT|CO|CP|DO|GT|ID|IF|NS|OR|BT|CA|CS|GE|NA|NB|EQ|IN|LT|NE|NO|OF|ON|PF|TO|AS|BY|CN|IS|LE|NP|UP|E|I|M|O|Z|C|X)\b/i,lookbehind:!0},number:/\b\d+\b/,operator:{pattern:/(\s)(?:\*\*?|<[=>]?|>=?|\?=|[-+\/=])(?=\s)/,lookbehind:!0},"string-operator":{pattern:/(\s)&&?(?=\s)/,lookbehind:!0,alias:"keyword"},"token-operator":[{pattern:/(\w)(?:->?|=>|[~|{}])(?=\w)/,lookbehind:!0,alias:"punctuation"},{pattern:/[|{}]/,alias:"punctuation"}],punctuation:/[,.:()]/}}E.exports=N,N.displayName="abap",N.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_actionscript.50b90d07.js b/assets/js/react-syntax-highlighter_languages_refractor_actionscript.50b90d07.js new file mode 100644 index 000000000..dddbeea48 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_actionscript.50b90d07.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3971],{5199:e=>{function a(e){e.languages.actionscript=e.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|else|extends|finally|for|function|if|implements|import|in|instanceof|interface|internal|is|native|new|null|package|private|protected|public|return|super|switch|this|throw|try|typeof|use|var|void|while|with|dynamic|each|final|get|include|namespace|native|override|set|static)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<<?|>>?>?|[!=]=?)=?|[~?@]/}),e.languages.actionscript["class-name"].alias="function",e.languages.markup&&e.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:{rest:e.languages.markup}}})}e.exports=a,a.displayName="actionscript",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_actionscript.65101b1f.js b/assets/js/react-syntax-highlighter_languages_refractor_actionscript.65101b1f.js new file mode 100644 index 000000000..3363c806c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_actionscript.65101b1f.js @@ -0,0 +1,37 @@ +"use strict"; +exports.id = 3971; +exports.ids = [3971]; +exports.modules = { + +/***/ 5199: +/***/ ((module) => { + + + +module.exports = actionscript +actionscript.displayName = 'actionscript' +actionscript.aliases = [] +function actionscript(Prism) { + Prism.languages.actionscript = Prism.languages.extend('javascript', { + keyword: /\b(?:as|break|case|catch|class|const|default|delete|do|else|extends|finally|for|function|if|implements|import|in|instanceof|interface|internal|is|native|new|null|package|private|protected|public|return|super|switch|this|throw|try|typeof|use|var|void|while|with|dynamic|each|final|get|include|namespace|native|override|set|static)\b/, + operator: /\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<<?|>>?>?|[!=]=?)=?|[~?@]/ + }) + Prism.languages.actionscript['class-name'].alias = 'function' + if (Prism.languages.markup) { + Prism.languages.insertBefore('actionscript', 'string', { + xml: { + pattern: /(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/, + lookbehind: true, + inside: { + rest: Prism.languages.markup + } + } + }) + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ada.6f89b762.js b/assets/js/react-syntax-highlighter_languages_refractor_ada.6f89b762.js new file mode 100644 index 000000000..c2d719244 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ada.6f89b762.js @@ -0,0 +1,40 @@ +"use strict"; +exports.id = 6084; +exports.ids = [6084]; +exports.modules = { + +/***/ 89693: +/***/ ((module) => { + + + +module.exports = ada +ada.displayName = 'ada' +ada.aliases = [] +function ada(Prism) { + Prism.languages.ada = { + comment: /--.*/, + string: /"(?:""|[^"\r\f\n])*"/i, + number: [ + { + pattern: /\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i + }, + { + pattern: /\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i + } + ], + 'attr-name': /\b'\w+/i, + keyword: /\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|new|return|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|not|null|of|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i, + boolean: /\b(?:true|false)\b/i, + operator: /<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/, + punctuation: /\.\.?|[,;():]/, + char: /'.'/, + variable: /\b[a-z](?:[_a-z\d])*\b/i + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ada.810b7b73.js b/assets/js/react-syntax-highlighter_languages_refractor_ada.810b7b73.js new file mode 100644 index 000000000..5b504951d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ada.810b7b73.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6084],{9693:e=>{function a(e){e.languages.ada={comment:/--.*/,string:/"(?:""|[^"\r\f\n])*"/i,number:[{pattern:/\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i},{pattern:/\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i}],"attr-name":/\b'\w+/i,keyword:/\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|new|return|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|not|null|of|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i,boolean:/\b(?:true|false)\b/i,operator:/<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/,punctuation:/\.\.?|[,;():]/,char:/'.'/,variable:/\b[a-z](?:[_a-z\d])*\b/i}}e.exports=a,a.displayName="ada",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_apacheconf.3864ba94.js b/assets/js/react-syntax-highlighter_languages_refractor_apacheconf.3864ba94.js new file mode 100644 index 000000000..690daa277 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_apacheconf.3864ba94.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5524],{4764:e=>{function r(e){e.languages.apacheconf={comment:/#.*/,"directive-inline":{pattern:/(^\s*)\b(?:AcceptFilter|AcceptPathInfo|AccessFileName|Action|Add(?:Alt|AltByEncoding|AltByType|Charset|DefaultCharset|Description|Encoding|Handler|Icon|IconByEncoding|IconByType|InputFilter|Language|ModuleInfo|OutputFilter|OutputFilterByType|Type)|Alias|AliasMatch|Allow(?:CONNECT|EncodedSlashes|Methods|Override|OverrideList)?|Anonymous(?:_LogEmail|_MustGiveEmail|_NoUserID|_VerifyEmail)?|AsyncRequestWorkerFactor|Auth(?:BasicAuthoritative|BasicFake|BasicProvider|BasicUseDigestAlgorithm|DBDUserPWQuery|DBDUserRealmQuery|DBMGroupFile|DBMType|DBMUserFile|Digest(?:Algorithm|Domain|NonceLifetime|Provider|Qop|ShmemSize)|Form(?:Authoritative|Body|DisableNoStore|FakeBasicAuth|Location|LoginRequiredLocation|LoginSuccessLocation|LogoutLocation|Method|Mimetype|Password|Provider|SitePassphrase|Size|Username)|GroupFile|LDAP(?:AuthorizePrefix|BindAuthoritative|BindDN|BindPassword|CharsetConfig|CompareAsUser|CompareDNOnServer|DereferenceAliases|GroupAttribute|GroupAttributeIsDN|InitialBindAsUser|InitialBindPattern|MaxSubGroupDepth|RemoteUserAttribute|RemoteUserIsDN|SearchAsUser|SubGroupAttribute|SubGroupClass|Url)|Merging|Name|Type|UserFile|nCache(?:Context|Enable|ProvideFor|SOCache|Timeout)|nzFcgiCheckAuthnProvider|nzFcgiDefineProvider|zDBDLoginToReferer|zDBDQuery|zDBDRedirectQuery|zDBMType|zSendForbiddenOnFailure)|BalancerGrowth|BalancerInherit|BalancerMember|BalancerPersist|BrowserMatch|BrowserMatchNoCase|BufferSize|BufferedLogs|CGIDScriptTimeout|CGIMapExtension|Cache(?:DefaultExpire|DetailHeader|DirLength|DirLevels|Disable|Enable|File|Header|IgnoreCacheControl|IgnoreHeaders|IgnoreNoLastMod|IgnoreQueryString|IgnoreURLSessionIdentifiers|KeyBaseURL|LastModifiedFactor|Lock|LockMaxAge|LockPath|MaxExpire|MaxFileSize|MinExpire|MinFileSize|NegotiatedDocs|QuickHandler|ReadSize|ReadTime|Root|Socache(?:MaxSize|MaxTime|MinTime|ReadSize|ReadTime)?|StaleOnError|StoreExpired|StoreNoStore|StorePrivate)|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckCaseOnly|CheckSpelling|ChrootDir|ContentDigest|CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|DBDExptime|DBDInitSQL|DBDKeep|DBDMax|DBDMin|DBDParams|DBDPersist|DBDPrepareSQL|DBDriver|DTracePrivileges|Dav|DavDepthInfinity|DavGenericLockDB|DavLockDB|DavMinTimeout|DefaultIcon|DefaultLanguage|DefaultRuntimeDir|DefaultType|Define|Deflate(?:BufferSize|CompressionLevel|FilterNote|InflateLimitRequestBody|InflateRatio(?:Burst|Limit)|MemLevel|WindowSize)|Deny|DirectoryCheckHandler|DirectoryIndex|DirectoryIndexRedirect|DirectorySlash|DocumentRoot|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|Error|ErrorDocument|ErrorLog|ErrorLogFormat|Example|ExpiresActive|ExpiresByType|ExpiresDefault|ExtFilterDefine|ExtFilterOptions|ExtendedStatus|FallbackResource|FileETag|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace|ForceLanguagePriority|ForceType|ForensicLog|GprofDir|GracefulShutdownTimeout|Group|Header|HeaderName|Heartbeat(?:Address|Listen|MaxServers|Storage)|HostnameLookups|ISAPI(?:AppendLogToErrors|AppendLogToQuery|CacheFile|FakeAsync|LogNotSupported|ReadAheadBuffer)|IdentityCheck|IdentityCheckTimeout|ImapBase|ImapDefault|ImapMenu|Include|IncludeOptional|Index(?:HeadInsert|Ignore|IgnoreReset|Options|OrderDefault|StyleSheet)|InputSed|KeepAlive|KeepAliveTimeout|KeptBodySize|LDAP(?:CacheEntries|CacheTTL|ConnectionPoolTTL|ConnectionTimeout|LibraryDebug|OpCacheEntries|OpCacheTTL|ReferralHopLimit|Referrals|Retries|RetryDelay|SharedCacheFile|SharedCacheSize|Timeout|TrustedClientCert|TrustedGlobalCert|TrustedMode|VerifyServerCert)|LanguagePriority|Limit(?:InternalRecursion|Request(?:Body|FieldSize|Fields|Line)|XMLRequestBody)|Listen|ListenBackLog|LoadFile|LoadModule|LogFormat|LogLevel|LogMessage|LuaAuthzProvider|LuaCodeCache|Lua(?:Hook(?:AccessChecker|AuthChecker|CheckUserID|Fixups|InsertFilter|Log|MapToStorage|TranslateName|TypeChecker)|Inherit|InputFilter|MapHandler|OutputFilter|PackageCPath|PackagePath|QuickHandler|Root|Scope)|MMapFile|Max(?:ConnectionsPerChild|KeepAliveRequests|MemFree|RangeOverlaps|RangeReversals|Ranges|RequestWorkers|SpareServers|SpareThreads|Threads)|MergeTrailers|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads|ModMimeUsePathInfo|ModemStandard|MultiviewsMatch|Mutex|NWSSLTrustedCerts|NWSSLUpgradeable|NameVirtualHost|NoProxy|Options|Order|OutputSed|PassEnv|PidFile|PrivilegesMode|Protocol|ProtocolEcho|Proxy(?:AddHeaders|BadHeader|Block|Domain|ErrorOverride|ExpressDBMFile|ExpressDBMType|ExpressEnable|FtpDirCharset|FtpEscapeWildcards|FtpListOnWildcard|HTML(?:BufSize|CharsetOut|DocType|Enable|Events|Extended|Fixups|Interp|Links|Meta|StripComments|URLMap)|IOBufferSize|MaxForwards|Pass(?:Inherit|InterpolateEnv|Match|Reverse|ReverseCookieDomain|ReverseCookiePath)?|PreserveHost|ReceiveBufferSize|Remote|RemoteMatch|Requests|SCGIInternalRedirect|SCGISendfile|Set|SourceAddress|Status|Timeout|Via)|RLimitCPU|RLimitMEM|RLimitNPROC|ReadmeName|ReceiveBufferSize|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ReflectorHeader|RemoteIP(?:Header|InternalProxy|InternalProxyList|ProxiesHeader|TrustedProxy|TrustedProxyList)|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader|RequestReadTimeout|Require|Rewrite(?:Base|Cond|Engine|Map|Options|Rule)|SSIETag|SSIEndTag|SSIErrorMsg|SSILastModified|SSILegacyExprParser|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSL(?:CACertificateFile|CACertificatePath|CADNRequestFile|CADNRequestPath|CARevocationCheck|CARevocationFile|CARevocationPath|CertificateChainFile|CertificateFile|CertificateKeyFile|CipherSuite|Compression|CryptoDevice|Engine|FIPS|HonorCipherOrder|InsecureRenegotiation|OCSP(?:DefaultResponder|Enable|OverrideResponder|ResponderTimeout|ResponseMaxAge|ResponseTimeSkew|UseRequestNonce)|OpenSSLConfCmd|Options|PassPhraseDialog|Protocol|Proxy(?:CACertificateFile|CACertificatePath|CARevocation(?:Check|File|Path)|CheckPeer(?:CN|Expire|Name)|CipherSuite|Engine|MachineCertificate(?:ChainFile|File|Path)|Protocol|Verify|VerifyDepth)|RandomSeed|RenegBufferSize|Require|RequireSSL|SRPUnknownUserSeed|SRPVerifierFile|Session(?:Cache|CacheTimeout|TicketKeyFile|Tickets)|Stapling(?:Cache|ErrorCacheTimeout|FakeTryLater|ForceURL|ResponderTimeout|ResponseMaxAge|ResponseTimeSkew|ReturnResponderErrors|StandardCacheTimeout)|StrictSNIVHostCheck|UseStapling|UserName|VerifyClient|VerifyDepth)|Satisfy|ScoreBoardFile|Script(?:Alias|AliasMatch|InterpreterSource|Log|LogBuffer|LogLength|Sock)?|SecureListen|SeeRequestTail|SendBufferSize|Server(?:Admin|Alias|Limit|Name|Path|Root|Signature|Tokens)|Session(?:Cookie(?:Name|Name2|Remove)|Crypto(?:Cipher|Driver|Passphrase|PassphraseFile)|DBD(?:CookieName|CookieName2|CookieRemove|DeleteLabel|InsertLabel|PerUser|SelectLabel|UpdateLabel)|Env|Exclude|Header|Include|MaxAge)?|SetEnv|SetEnvIf|SetEnvIfExpr|SetEnvIfNoCase|SetHandler|SetInputFilter|SetOutputFilter|StartServers|StartThreads|Substitute|Suexec|SuexecUserGroup|ThreadLimit|ThreadStackSize|ThreadsPerChild|TimeOut|TraceEnable|TransferLog|TypesConfig|UnDefine|UndefMacro|UnsetEnv|Use|UseCanonicalName|UseCanonicalPhysicalPort|User|UserDir|VHostCGIMode|VHostCGIPrivs|VHostGroup|VHostPrivs|VHostSecure|VHostUser|Virtual(?:DocumentRoot|ScriptAlias)(?:IP)?|WatchdogInterval|XBitHack|xml2EncAlias|xml2EncDefault|xml2StartParse)\b/im,lookbehind:!0,alias:"property"},"directive-block":{pattern:/<\/?\b(?:Auth[nz]ProviderAlias|Directory|DirectoryMatch|Else|ElseIf|Files|FilesMatch|If|IfDefine|IfModule|IfVersion|Limit|LimitExcept|Location|LocationMatch|Macro|Proxy|Require(?:All|Any|None)|VirtualHost)\b *.*>/i,inside:{"directive-block":{pattern:/^<\/?\w+/,inside:{punctuation:/^<\/?/},alias:"tag"},"directive-block-parameter":{pattern:/.*[^>]/,inside:{punctuation:/:/,string:{pattern:/("|').*\1/,inside:{variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/}}},alias:"attr-value"},punctuation:/>/},alias:"tag"},"directive-flags":{pattern:/\[(?:\w,?)+\]/,alias:"keyword"},string:{pattern:/("|').*\1/,inside:{variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/}},variable:/[$%]\{?(?:\w\.?[-+:]?)+\}?/,regex:/\^?.*\$|\^.*\$?/}}e.exports=r,r.displayName="apacheconf",r.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_apacheconf.424c51e8.js b/assets/js/react-syntax-highlighter_languages_refractor_apacheconf.424c51e8.js new file mode 100644 index 000000000..c07aba210 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_apacheconf.424c51e8.js @@ -0,0 +1,68 @@ +"use strict"; +exports.id = 5524; +exports.ids = [5524]; +exports.modules = { + +/***/ 34764: +/***/ ((module) => { + + + +module.exports = apacheconf +apacheconf.displayName = 'apacheconf' +apacheconf.aliases = [] +function apacheconf(Prism) { + Prism.languages.apacheconf = { + comment: /#.*/, + 'directive-inline': { + pattern: /(^\s*)\b(?:AcceptFilter|AcceptPathInfo|AccessFileName|Action|Add(?:Alt|AltByEncoding|AltByType|Charset|DefaultCharset|Description|Encoding|Handler|Icon|IconByEncoding|IconByType|InputFilter|Language|ModuleInfo|OutputFilter|OutputFilterByType|Type)|Alias|AliasMatch|Allow(?:CONNECT|EncodedSlashes|Methods|Override|OverrideList)?|Anonymous(?:_LogEmail|_MustGiveEmail|_NoUserID|_VerifyEmail)?|AsyncRequestWorkerFactor|Auth(?:BasicAuthoritative|BasicFake|BasicProvider|BasicUseDigestAlgorithm|DBDUserPWQuery|DBDUserRealmQuery|DBMGroupFile|DBMType|DBMUserFile|Digest(?:Algorithm|Domain|NonceLifetime|Provider|Qop|ShmemSize)|Form(?:Authoritative|Body|DisableNoStore|FakeBasicAuth|Location|LoginRequiredLocation|LoginSuccessLocation|LogoutLocation|Method|Mimetype|Password|Provider|SitePassphrase|Size|Username)|GroupFile|LDAP(?:AuthorizePrefix|BindAuthoritative|BindDN|BindPassword|CharsetConfig|CompareAsUser|CompareDNOnServer|DereferenceAliases|GroupAttribute|GroupAttributeIsDN|InitialBindAsUser|InitialBindPattern|MaxSubGroupDepth|RemoteUserAttribute|RemoteUserIsDN|SearchAsUser|SubGroupAttribute|SubGroupClass|Url)|Merging|Name|Type|UserFile|nCache(?:Context|Enable|ProvideFor|SOCache|Timeout)|nzFcgiCheckAuthnProvider|nzFcgiDefineProvider|zDBDLoginToReferer|zDBDQuery|zDBDRedirectQuery|zDBMType|zSendForbiddenOnFailure)|BalancerGrowth|BalancerInherit|BalancerMember|BalancerPersist|BrowserMatch|BrowserMatchNoCase|BufferSize|BufferedLogs|CGIDScriptTimeout|CGIMapExtension|Cache(?:DefaultExpire|DetailHeader|DirLength|DirLevels|Disable|Enable|File|Header|IgnoreCacheControl|IgnoreHeaders|IgnoreNoLastMod|IgnoreQueryString|IgnoreURLSessionIdentifiers|KeyBaseURL|LastModifiedFactor|Lock|LockMaxAge|LockPath|MaxExpire|MaxFileSize|MinExpire|MinFileSize|NegotiatedDocs|QuickHandler|ReadSize|ReadTime|Root|Socache(?:MaxSize|MaxTime|MinTime|ReadSize|ReadTime)?|StaleOnError|StoreExpired|StoreNoStore|StorePrivate)|CharsetDefault|CharsetOptions|CharsetSourceEnc|CheckCaseOnly|CheckSpelling|ChrootDir|ContentDigest|CookieDomain|CookieExpires|CookieName|CookieStyle|CookieTracking|CoreDumpDirectory|CustomLog|DBDExptime|DBDInitSQL|DBDKeep|DBDMax|DBDMin|DBDParams|DBDPersist|DBDPrepareSQL|DBDriver|DTracePrivileges|Dav|DavDepthInfinity|DavGenericLockDB|DavLockDB|DavMinTimeout|DefaultIcon|DefaultLanguage|DefaultRuntimeDir|DefaultType|Define|Deflate(?:BufferSize|CompressionLevel|FilterNote|InflateLimitRequestBody|InflateRatio(?:Burst|Limit)|MemLevel|WindowSize)|Deny|DirectoryCheckHandler|DirectoryIndex|DirectoryIndexRedirect|DirectorySlash|DocumentRoot|DumpIOInput|DumpIOOutput|EnableExceptionHook|EnableMMAP|EnableSendfile|Error|ErrorDocument|ErrorLog|ErrorLogFormat|Example|ExpiresActive|ExpiresByType|ExpiresDefault|ExtFilterDefine|ExtFilterOptions|ExtendedStatus|FallbackResource|FileETag|FilterChain|FilterDeclare|FilterProtocol|FilterProvider|FilterTrace|ForceLanguagePriority|ForceType|ForensicLog|GprofDir|GracefulShutdownTimeout|Group|Header|HeaderName|Heartbeat(?:Address|Listen|MaxServers|Storage)|HostnameLookups|ISAPI(?:AppendLogToErrors|AppendLogToQuery|CacheFile|FakeAsync|LogNotSupported|ReadAheadBuffer)|IdentityCheck|IdentityCheckTimeout|ImapBase|ImapDefault|ImapMenu|Include|IncludeOptional|Index(?:HeadInsert|Ignore|IgnoreReset|Options|OrderDefault|StyleSheet)|InputSed|KeepAlive|KeepAliveTimeout|KeptBodySize|LDAP(?:CacheEntries|CacheTTL|ConnectionPoolTTL|ConnectionTimeout|LibraryDebug|OpCacheEntries|OpCacheTTL|ReferralHopLimit|Referrals|Retries|RetryDelay|SharedCacheFile|SharedCacheSize|Timeout|TrustedClientCert|TrustedGlobalCert|TrustedMode|VerifyServerCert)|LanguagePriority|Limit(?:InternalRecursion|Request(?:Body|FieldSize|Fields|Line)|XMLRequestBody)|Listen|ListenBackLog|LoadFile|LoadModule|LogFormat|LogLevel|LogMessage|LuaAuthzProvider|LuaCodeCache|Lua(?:Hook(?:AccessChecker|AuthChecker|CheckUserID|Fixups|InsertFilter|Log|MapToStorage|TranslateName|TypeChecker)|Inherit|InputFilter|MapHandler|OutputFilter|PackageCPath|PackagePath|QuickHandler|Root|Scope)|MMapFile|Max(?:ConnectionsPerChild|KeepAliveRequests|MemFree|RangeOverlaps|RangeReversals|Ranges|RequestWorkers|SpareServers|SpareThreads|Threads)|MergeTrailers|MetaDir|MetaFiles|MetaSuffix|MimeMagicFile|MinSpareServers|MinSpareThreads|ModMimeUsePathInfo|ModemStandard|MultiviewsMatch|Mutex|NWSSLTrustedCerts|NWSSLUpgradeable|NameVirtualHost|NoProxy|Options|Order|OutputSed|PassEnv|PidFile|PrivilegesMode|Protocol|ProtocolEcho|Proxy(?:AddHeaders|BadHeader|Block|Domain|ErrorOverride|ExpressDBMFile|ExpressDBMType|ExpressEnable|FtpDirCharset|FtpEscapeWildcards|FtpListOnWildcard|HTML(?:BufSize|CharsetOut|DocType|Enable|Events|Extended|Fixups|Interp|Links|Meta|StripComments|URLMap)|IOBufferSize|MaxForwards|Pass(?:Inherit|InterpolateEnv|Match|Reverse|ReverseCookieDomain|ReverseCookiePath)?|PreserveHost|ReceiveBufferSize|Remote|RemoteMatch|Requests|SCGIInternalRedirect|SCGISendfile|Set|SourceAddress|Status|Timeout|Via)|RLimitCPU|RLimitMEM|RLimitNPROC|ReadmeName|ReceiveBufferSize|Redirect|RedirectMatch|RedirectPermanent|RedirectTemp|ReflectorHeader|RemoteIP(?:Header|InternalProxy|InternalProxyList|ProxiesHeader|TrustedProxy|TrustedProxyList)|RemoveCharset|RemoveEncoding|RemoveHandler|RemoveInputFilter|RemoveLanguage|RemoveOutputFilter|RemoveType|RequestHeader|RequestReadTimeout|Require|Rewrite(?:Base|Cond|Engine|Map|Options|Rule)|SSIETag|SSIEndTag|SSIErrorMsg|SSILastModified|SSILegacyExprParser|SSIStartTag|SSITimeFormat|SSIUndefinedEcho|SSL(?:CACertificateFile|CACertificatePath|CADNRequestFile|CADNRequestPath|CARevocationCheck|CARevocationFile|CARevocationPath|CertificateChainFile|CertificateFile|CertificateKeyFile|CipherSuite|Compression|CryptoDevice|Engine|FIPS|HonorCipherOrder|InsecureRenegotiation|OCSP(?:DefaultResponder|Enable|OverrideResponder|ResponderTimeout|ResponseMaxAge|ResponseTimeSkew|UseRequestNonce)|OpenSSLConfCmd|Options|PassPhraseDialog|Protocol|Proxy(?:CACertificateFile|CACertificatePath|CARevocation(?:Check|File|Path)|CheckPeer(?:CN|Expire|Name)|CipherSuite|Engine|MachineCertificate(?:ChainFile|File|Path)|Protocol|Verify|VerifyDepth)|RandomSeed|RenegBufferSize|Require|RequireSSL|SRPUnknownUserSeed|SRPVerifierFile|Session(?:Cache|CacheTimeout|TicketKeyFile|Tickets)|Stapling(?:Cache|ErrorCacheTimeout|FakeTryLater|ForceURL|ResponderTimeout|ResponseMaxAge|ResponseTimeSkew|ReturnResponderErrors|StandardCacheTimeout)|StrictSNIVHostCheck|UseStapling|UserName|VerifyClient|VerifyDepth)|Satisfy|ScoreBoardFile|Script(?:Alias|AliasMatch|InterpreterSource|Log|LogBuffer|LogLength|Sock)?|SecureListen|SeeRequestTail|SendBufferSize|Server(?:Admin|Alias|Limit|Name|Path|Root|Signature|Tokens)|Session(?:Cookie(?:Name|Name2|Remove)|Crypto(?:Cipher|Driver|Passphrase|PassphraseFile)|DBD(?:CookieName|CookieName2|CookieRemove|DeleteLabel|InsertLabel|PerUser|SelectLabel|UpdateLabel)|Env|Exclude|Header|Include|MaxAge)?|SetEnv|SetEnvIf|SetEnvIfExpr|SetEnvIfNoCase|SetHandler|SetInputFilter|SetOutputFilter|StartServers|StartThreads|Substitute|Suexec|SuexecUserGroup|ThreadLimit|ThreadStackSize|ThreadsPerChild|TimeOut|TraceEnable|TransferLog|TypesConfig|UnDefine|UndefMacro|UnsetEnv|Use|UseCanonicalName|UseCanonicalPhysicalPort|User|UserDir|VHostCGIMode|VHostCGIPrivs|VHostGroup|VHostPrivs|VHostSecure|VHostUser|Virtual(?:DocumentRoot|ScriptAlias)(?:IP)?|WatchdogInterval|XBitHack|xml2EncAlias|xml2EncDefault|xml2StartParse)\b/im, + lookbehind: true, + alias: 'property' + }, + 'directive-block': { + pattern: /<\/?\b(?:Auth[nz]ProviderAlias|Directory|DirectoryMatch|Else|ElseIf|Files|FilesMatch|If|IfDefine|IfModule|IfVersion|Limit|LimitExcept|Location|LocationMatch|Macro|Proxy|Require(?:All|Any|None)|VirtualHost)\b *.*>/i, + inside: { + 'directive-block': { + pattern: /^<\/?\w+/, + inside: { + punctuation: /^<\/?/ + }, + alias: 'tag' + }, + 'directive-block-parameter': { + pattern: /.*[^>]/, + inside: { + punctuation: /:/, + string: { + pattern: /("|').*\1/, + inside: { + variable: /[$%]\{?(?:\w\.?[-+:]?)+\}?/ + } + } + }, + alias: 'attr-value' + }, + punctuation: />/ + }, + alias: 'tag' + }, + 'directive-flags': { + pattern: /\[(?:\w,?)+\]/, + alias: 'keyword' + }, + string: { + pattern: /("|').*\1/, + inside: { + variable: /[$%]\{?(?:\w\.?[-+:]?)+\}?/ + } + }, + variable: /[$%]\{?(?:\w\.?[-+:]?)+\}?/, + regex: /\^?.*\$|\^.*\$?/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_apl.7eeba5ae.js b/assets/js/react-syntax-highlighter_languages_refractor_apl.7eeba5ae.js new file mode 100644 index 000000000..4c7e1510a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_apl.7eeba5ae.js @@ -0,0 +1,53 @@ +"use strict"; +exports.id = 6670; +exports.ids = [6670]; +exports.modules = { + +/***/ 84039: +/***/ ((module) => { + + + +module.exports = apl +apl.displayName = 'apl' +apl.aliases = [] +function apl(Prism) { + Prism.languages.apl = { + comment: /(?:⍝|#[! ]).*$/m, + string: { + pattern: /'(?:[^'\r\n]|'')*'/, + greedy: true + }, + number: /¯?(?:\d*\.?\d+(?:e[+¯]?\d+)?|¯|∞)(?:j¯?(?:\d*\.?\d+(?:e[+¯]?\d+)?|¯|∞))?/i, + statement: /:[A-Z][a-z][A-Za-z]*\b/, + 'system-function': { + pattern: /⎕[A-Z]+/i, + alias: 'function' + }, + constant: /[⍬⌾#⎕⍞]/, + function: /[-+×÷⌈⌊∣|⍳⍸?*⍟○!⌹<≤=>≥≠≡≢∊⍷∪∩~∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⊆⊇⌷⍋⍒⊤⊥⍕⍎⊣⊢⍁⍂≈⍯↗¤→]/, + 'monadic-operator': { + pattern: /[\\\/⌿⍀¨⍨⌶&∥]/, + alias: 'operator' + }, + 'dyadic-operator': { + pattern: /[.⍣⍠⍤∘⌸@⌺]/, + alias: 'operator' + }, + assignment: { + pattern: /←/, + alias: 'keyword' + }, + punctuation: /[\[;\]()◇⋄]/, + dfn: { + pattern: /[{}⍺⍵⍶⍹∇⍫:]/, + alias: 'builtin' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_apl.9757dd44.js b/assets/js/react-syntax-highlighter_languages_refractor_apl.9757dd44.js new file mode 100644 index 000000000..c09a40ea7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_apl.9757dd44.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6670],{4039:a=>{function t(a){a.languages.apl={comment:/(?:\u235d|#[! ]).*$/m,string:{pattern:/'(?:[^'\r\n]|'')*'/,greedy:!0},number:/\xaf?(?:\d*\.?\d+(?:e[+\xaf]?\d+)?|\xaf|\u221e)(?:j\xaf?(?:\d*\.?\d+(?:e[+\xaf]?\d+)?|\xaf|\u221e))?/i,statement:/:[A-Z][a-z][A-Za-z]*\b/,"system-function":{pattern:/\u2395[A-Z]+/i,alias:"function"},constant:/[\u236c\u233e#\u2395\u235e]/,function:/[-+\xd7\xf7\u2308\u230a\u2223|\u2373\u2378?*\u235f\u25cb!\u2339<\u2264=>\u2265\u2260\u2261\u2262\u220a\u2377\u222a\u2229~\u2228\u2227\u2371\u2372\u2374,\u236a\u233d\u2296\u2349\u2191\u2193\u2282\u2283\u2286\u2287\u2337\u234b\u2352\u22a4\u22a5\u2355\u234e\u22a3\u22a2\u2341\u2342\u2248\u236f\u2197\xa4\u2192]/,"monadic-operator":{pattern:/[\\\/\u233f\u2340\xa8\u2368\u2336&\u2225]/,alias:"operator"},"dyadic-operator":{pattern:/[.\u2363\u2360\u2364\u2218\u2338@\u233a]/,alias:"operator"},assignment:{pattern:/\u2190/,alias:"keyword"},punctuation:/[\[;\]()\u25c7\u22c4]/,dfn:{pattern:/[{}\u237a\u2375\u2376\u2379\u2207\u236b:]/,alias:"builtin"}}}a.exports=t,t.displayName="apl",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_applescript.36d564e4.js b/assets/js/react-syntax-highlighter_languages_refractor_applescript.36d564e4.js new file mode 100644 index 000000000..95baf20d7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_applescript.36d564e4.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 4098; +exports.ids = [4098]; +exports.modules = { + +/***/ 71336: +/***/ ((module) => { + + + +module.exports = applescript +applescript.displayName = 'applescript' +applescript.aliases = [] +function applescript(Prism) { + Prism.languages.applescript = { + comment: [ + // Allow one level of nesting + /\(\*(?:\(\*[\s\S]*?\*\)|[\s\S])*?\*\)/, + /--.+/, + /#.+/ + ], + string: /"(?:\\.|[^"\\\r\n])*"/, + number: /(?:\b\d+\.?\d*|\B\.\d+)(?:e-?\d+)?\b/i, + operator: [ + /[&=≠≤≥*+\-\/÷^]|[<>]=?/, + /\b(?:(?:start|begin|end)s? with|(?:(?:does not|doesn't) contain|contains?)|(?:is|isn't|is not) (?:in|contained by)|(?:(?:is|isn't|is not) )?(?:greater|less) than(?: or equal)?(?: to)?|(?:(?:does not|doesn't) come|comes) (?:before|after)|(?:is|isn't|is not) equal(?: to)?|(?:(?:does not|doesn't) equal|equals|equal to|isn't|is not)|(?:a )?(?:ref(?: to)?|reference to)|(?:and|or|div|mod|as|not))\b/ + ], + keyword: /\b(?:about|above|after|against|apart from|around|aside from|at|back|before|beginning|behind|below|beneath|beside|between|but|by|considering|continue|copy|does|eighth|else|end|equal|error|every|exit|false|fifth|first|for|fourth|from|front|get|given|global|if|ignoring|in|instead of|into|is|it|its|last|local|me|middle|my|ninth|of|on|onto|out of|over|prop|property|put|repeat|return|returning|second|set|seventh|since|sixth|some|tell|tenth|that|the|then|third|through|thru|timeout|times|to|transaction|true|try|until|where|while|whose|with|without)\b/, + class: { + pattern: /\b(?:alias|application|boolean|class|constant|date|file|integer|list|number|POSIX file|real|record|reference|RGB color|script|text|centimetres|centimeters|feet|inches|kilometres|kilometers|metres|meters|miles|yards|square feet|square kilometres|square kilometers|square metres|square meters|square miles|square yards|cubic centimetres|cubic centimeters|cubic feet|cubic inches|cubic metres|cubic meters|cubic yards|gallons|litres|liters|quarts|grams|kilograms|ounces|pounds|degrees Celsius|degrees Fahrenheit|degrees Kelvin)\b/, + alias: 'builtin' + }, + punctuation: /[{}():,¬«»《》]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_applescript.7edd58ca.js b/assets/js/react-syntax-highlighter_languages_refractor_applescript.7edd58ca.js new file mode 100644 index 000000000..a4ca3980f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_applescript.7edd58ca.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4098],{1336:e=>{function t(e){e.languages.applescript={comment:[/\(\*(?:\(\*[\s\S]*?\*\)|[\s\S])*?\*\)/,/--.+/,/#.+/],string:/"(?:\\.|[^"\\\r\n])*"/,number:/(?:\b\d+\.?\d*|\B\.\d+)(?:e-?\d+)?\b/i,operator:[/[&=\u2260\u2264\u2265*+\-\/\xf7^]|[<>]=?/,/\b(?:(?:start|begin|end)s? with|(?:(?:does not|doesn't) contain|contains?)|(?:is|isn't|is not) (?:in|contained by)|(?:(?:is|isn't|is not) )?(?:greater|less) than(?: or equal)?(?: to)?|(?:(?:does not|doesn't) come|comes) (?:before|after)|(?:is|isn't|is not) equal(?: to)?|(?:(?:does not|doesn't) equal|equals|equal to|isn't|is not)|(?:a )?(?:ref(?: to)?|reference to)|(?:and|or|div|mod|as|not))\b/],keyword:/\b(?:about|above|after|against|apart from|around|aside from|at|back|before|beginning|behind|below|beneath|beside|between|but|by|considering|continue|copy|does|eighth|else|end|equal|error|every|exit|false|fifth|first|for|fourth|from|front|get|given|global|if|ignoring|in|instead of|into|is|it|its|last|local|me|middle|my|ninth|of|on|onto|out of|over|prop|property|put|repeat|return|returning|second|set|seventh|since|sixth|some|tell|tenth|that|the|then|third|through|thru|timeout|times|to|transaction|true|try|until|where|while|whose|with|without)\b/,class:{pattern:/\b(?:alias|application|boolean|class|constant|date|file|integer|list|number|POSIX file|real|record|reference|RGB color|script|text|centimetres|centimeters|feet|inches|kilometres|kilometers|metres|meters|miles|yards|square feet|square kilometres|square kilometers|square metres|square meters|square miles|square yards|cubic centimetres|cubic centimeters|cubic feet|cubic inches|cubic metres|cubic meters|cubic yards|gallons|litres|liters|quarts|grams|kilograms|ounces|pounds|degrees Celsius|degrees Fahrenheit|degrees Kelvin)\b/,alias:"builtin"},punctuation:/[{}():,\xac\xab\xbb\u300a\u300b]/}}e.exports=t,t.displayName="applescript",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_arduino.90976a56.js b/assets/js/react-syntax-highlighter_languages_refractor_arduino.90976a56.js new file mode 100644 index 000000000..199dc6c0b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_arduino.90976a56.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3384,8950,9692],{2159:(e,t,r)=>{var n=r(96);function i(e){e.register(n),e.languages.arduino=e.languages.extend("cpp",{keyword:/\b(?:setup|if|else|while|do|for|return|in|instanceof|default|function|loop|goto|switch|case|new|try|throw|catch|finally|null|break|continue|boolean|bool|void|byte|word|string|String|array|int|long|integer|double)\b/,builtin:/\b(?:KeyboardController|MouseController|SoftwareSerial|EthernetServer|EthernetClient|LiquidCrystal|LiquidCrystal_I2C|RobotControl|GSMVoiceCall|EthernetUDP|EsploraTFT|HttpClient|RobotMotor|WiFiClient|GSMScanner|FileSystem|Scheduler|GSMServer|YunClient|YunServer|IPAddress|GSMClient|GSMModem|Keyboard|Ethernet|Console|GSMBand|Esplora|Stepper|Process|WiFiUDP|GSM_SMS|Mailbox|USBHost|Firmata|PImage|Client|Server|GSMPIN|FileIO|Bridge|Serial|EEPROM|Stream|Mouse|Audio|Servo|File|Task|GPRS|WiFi|Wire|TFT|GSM|SPI|SD|runShellCommandAsynchronously|analogWriteResolution|retrieveCallingNumber|printFirmwareVersion|analogReadResolution|sendDigitalPortPair|noListenOnLocalhost|readJoystickButton|setFirmwareVersion|readJoystickSwitch|scrollDisplayRight|getVoiceCallStatus|scrollDisplayLeft|writeMicroseconds|delayMicroseconds|beginTransmission|getSignalStrength|runAsynchronously|getAsynchronously|listenOnLocalhost|getCurrentCarrier|readAccelerometer|messageAvailable|sendDigitalPorts|lineFollowConfig|countryNameWrite|runShellCommand|readStringUntil|rewindDirectory|readTemperature|setClockDivider|readLightSensor|endTransmission|analogReference|detachInterrupt|countryNameRead|attachInterrupt|encryptionType|readBytesUntil|robotNameWrite|readMicrophone|robotNameRead|cityNameWrite|userNameWrite|readJoystickY|readJoystickX|mouseReleased|openNextFile|scanNetworks|noInterrupts|digitalWrite|beginSpeaker|mousePressed|isActionDone|mouseDragged|displayLogos|noAutoscroll|addParameter|remoteNumber|getModifiers|keyboardRead|userNameRead|waitContinue|processInput|parseCommand|printVersion|readNetworks|writeMessage|blinkVersion|cityNameRead|readMessage|setDataMode|parsePacket|isListening|setBitOrder|beginPacket|isDirectory|motorsWrite|drawCompass|digitalRead|clearScreen|serialEvent|rightToLeft|setTextSize|leftToRight|requestFrom|keyReleased|compassRead|analogWrite|interrupts|WiFiServer|disconnect|playMelody|parseFloat|autoscroll|getPINUsed|setPINUsed|setTimeout|sendAnalog|readSlider|analogRead|beginWrite|createChar|motorsStop|keyPressed|tempoWrite|readButton|subnetMask|debugPrint|macAddress|writeGreen|randomSeed|attachGPRS|readString|sendString|remotePort|releaseAll|mouseMoved|background|getXChange|getYChange|answerCall|getResult|voiceCall|endPacket|constrain|getSocket|writeJSON|getButton|available|connected|findUntil|readBytes|exitValue|readGreen|writeBlue|startLoop|IPAddress|isPressed|sendSysex|pauseMode|gatewayIP|setCursor|getOemKey|tuneWrite|noDisplay|loadImage|switchPIN|onRequest|onReceive|changePIN|playFile|noBuffer|parseInt|overflow|checkPIN|knobRead|beginTFT|bitClear|updateIR|bitWrite|position|writeRGB|highByte|writeRed|setSpeed|readBlue|noStroke|remoteIP|transfer|shutdown|hangCall|beginSMS|endWrite|attached|maintain|noCursor|checkReg|checkPUK|shiftOut|isValid|shiftIn|pulseIn|connect|println|localIP|pinMode|getIMEI|display|noBlink|process|getBand|running|beginSD|drawBMP|lowByte|setBand|release|bitRead|prepare|pointTo|readRed|setMode|noFill|remove|listen|stroke|detach|attach|noTone|exists|buffer|height|bitSet|circle|config|cursor|random|IRread|setDNS|endSMS|getKey|micros|millis|begin|print|write|ready|flush|width|isPIN|blink|clear|press|mkdir|rmdir|close|point|yield|image|BSSID|click|delay|read|text|move|peek|beep|rect|line|open|seek|fill|size|turn|stop|home|find|step|tone|sqrt|RSSI|SSID|end|bit|tan|cos|sin|pow|map|abs|max|min|get|run|put)\b/,constant:/\b(?:DIGITAL_MESSAGE|FIRMATA_STRING|ANALOG_MESSAGE|REPORT_DIGITAL|REPORT_ANALOG|INPUT_PULLUP|SET_PIN_MODE|INTERNAL2V56|SYSTEM_RESET|LED_BUILTIN|INTERNAL1V1|SYSEX_START|INTERNAL|EXTERNAL|DEFAULT|OUTPUT|INPUT|HIGH|LOW)\b/})}e.exports=i,i.displayName="arduino",i.aliases=[]},5806:e=>{function t(e){e.languages.c=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),e.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete e.languages.c.boolean}e.exports=t,t.displayName="c",t.aliases=[]},96:(e,t,r)=>{var n=r(5806);function i(e){e.register(n),e.languages.cpp=e.languages.extend("c",{"class-name":{pattern:/(\b(?:class|enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i,greedy:!0},operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:true|false)\b/}),e.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}})}e.exports=i,i.displayName="cpp",i.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_arduino.d70f036c.js b/assets/js/react-syntax-highlighter_languages_refractor_arduino.d70f036c.js new file mode 100644 index 000000000..d7e46cbbd --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_arduino.d70f036c.js @@ -0,0 +1,110 @@ +"use strict"; +exports.id = 3384; +exports.ids = [3384,8950,9692]; +exports.modules = { + +/***/ 2159: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorCpp = __webpack_require__(80096) +module.exports = arduino +arduino.displayName = 'arduino' +arduino.aliases = [] +function arduino(Prism) { + Prism.register(refractorCpp) + Prism.languages.arduino = Prism.languages.extend('cpp', { + keyword: /\b(?:setup|if|else|while|do|for|return|in|instanceof|default|function|loop|goto|switch|case|new|try|throw|catch|finally|null|break|continue|boolean|bool|void|byte|word|string|String|array|int|long|integer|double)\b/, + builtin: /\b(?:KeyboardController|MouseController|SoftwareSerial|EthernetServer|EthernetClient|LiquidCrystal|LiquidCrystal_I2C|RobotControl|GSMVoiceCall|EthernetUDP|EsploraTFT|HttpClient|RobotMotor|WiFiClient|GSMScanner|FileSystem|Scheduler|GSMServer|YunClient|YunServer|IPAddress|GSMClient|GSMModem|Keyboard|Ethernet|Console|GSMBand|Esplora|Stepper|Process|WiFiUDP|GSM_SMS|Mailbox|USBHost|Firmata|PImage|Client|Server|GSMPIN|FileIO|Bridge|Serial|EEPROM|Stream|Mouse|Audio|Servo|File|Task|GPRS|WiFi|Wire|TFT|GSM|SPI|SD|runShellCommandAsynchronously|analogWriteResolution|retrieveCallingNumber|printFirmwareVersion|analogReadResolution|sendDigitalPortPair|noListenOnLocalhost|readJoystickButton|setFirmwareVersion|readJoystickSwitch|scrollDisplayRight|getVoiceCallStatus|scrollDisplayLeft|writeMicroseconds|delayMicroseconds|beginTransmission|getSignalStrength|runAsynchronously|getAsynchronously|listenOnLocalhost|getCurrentCarrier|readAccelerometer|messageAvailable|sendDigitalPorts|lineFollowConfig|countryNameWrite|runShellCommand|readStringUntil|rewindDirectory|readTemperature|setClockDivider|readLightSensor|endTransmission|analogReference|detachInterrupt|countryNameRead|attachInterrupt|encryptionType|readBytesUntil|robotNameWrite|readMicrophone|robotNameRead|cityNameWrite|userNameWrite|readJoystickY|readJoystickX|mouseReleased|openNextFile|scanNetworks|noInterrupts|digitalWrite|beginSpeaker|mousePressed|isActionDone|mouseDragged|displayLogos|noAutoscroll|addParameter|remoteNumber|getModifiers|keyboardRead|userNameRead|waitContinue|processInput|parseCommand|printVersion|readNetworks|writeMessage|blinkVersion|cityNameRead|readMessage|setDataMode|parsePacket|isListening|setBitOrder|beginPacket|isDirectory|motorsWrite|drawCompass|digitalRead|clearScreen|serialEvent|rightToLeft|setTextSize|leftToRight|requestFrom|keyReleased|compassRead|analogWrite|interrupts|WiFiServer|disconnect|playMelody|parseFloat|autoscroll|getPINUsed|setPINUsed|setTimeout|sendAnalog|readSlider|analogRead|beginWrite|createChar|motorsStop|keyPressed|tempoWrite|readButton|subnetMask|debugPrint|macAddress|writeGreen|randomSeed|attachGPRS|readString|sendString|remotePort|releaseAll|mouseMoved|background|getXChange|getYChange|answerCall|getResult|voiceCall|endPacket|constrain|getSocket|writeJSON|getButton|available|connected|findUntil|readBytes|exitValue|readGreen|writeBlue|startLoop|IPAddress|isPressed|sendSysex|pauseMode|gatewayIP|setCursor|getOemKey|tuneWrite|noDisplay|loadImage|switchPIN|onRequest|onReceive|changePIN|playFile|noBuffer|parseInt|overflow|checkPIN|knobRead|beginTFT|bitClear|updateIR|bitWrite|position|writeRGB|highByte|writeRed|setSpeed|readBlue|noStroke|remoteIP|transfer|shutdown|hangCall|beginSMS|endWrite|attached|maintain|noCursor|checkReg|checkPUK|shiftOut|isValid|shiftIn|pulseIn|connect|println|localIP|pinMode|getIMEI|display|noBlink|process|getBand|running|beginSD|drawBMP|lowByte|setBand|release|bitRead|prepare|pointTo|readRed|setMode|noFill|remove|listen|stroke|detach|attach|noTone|exists|buffer|height|bitSet|circle|config|cursor|random|IRread|setDNS|endSMS|getKey|micros|millis|begin|print|write|ready|flush|width|isPIN|blink|clear|press|mkdir|rmdir|close|point|yield|image|BSSID|click|delay|read|text|move|peek|beep|rect|line|open|seek|fill|size|turn|stop|home|find|step|tone|sqrt|RSSI|SSID|end|bit|tan|cos|sin|pow|map|abs|max|min|get|run|put)\b/, + constant: /\b(?:DIGITAL_MESSAGE|FIRMATA_STRING|ANALOG_MESSAGE|REPORT_DIGITAL|REPORT_ANALOG|INPUT_PULLUP|SET_PIN_MODE|INTERNAL2V56|SYSTEM_RESET|LED_BUILTIN|INTERNAL1V1|SYSEX_START|INTERNAL|EXTERNAL|DEFAULT|OUTPUT|INPUT|HIGH|LOW)\b/ + }) +} + + +/***/ }), + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }), + +/***/ 80096: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +module.exports = cpp +cpp.displayName = 'cpp' +cpp.aliases = [] +function cpp(Prism) { + Prism.register(refractorC) + Prism.languages.cpp = Prism.languages.extend('c', { + 'class-name': { + pattern: /(\b(?:class|enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/, + number: { + pattern: /(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i, + greedy: true + }, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/, + boolean: /\b(?:true|false)\b/ + }) + Prism.languages.insertBefore('cpp', 'string', { + 'raw-string': { + pattern: /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/, + alias: 'string', + greedy: true + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_arff.04dc084c.js b/assets/js/react-syntax-highlighter_languages_refractor_arff.04dc084c.js new file mode 100644 index 000000000..74c8916ae --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_arff.04dc084c.js @@ -0,0 +1,31 @@ +"use strict"; +exports.id = 1438; +exports.ids = [1438]; +exports.modules = { + +/***/ 60274: +/***/ ((module) => { + + + +module.exports = arff +arff.displayName = 'arff' +arff.aliases = [] +function arff(Prism) { + Prism.languages.arff = { + comment: /%.*/, + string: { + pattern: /(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + keyword: /@(?:attribute|data|end|relation)\b/i, + number: /\b\d+(?:\.\d+)?\b/, + punctuation: /[{},]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_arff.68e650ea.js b/assets/js/react-syntax-highlighter_languages_refractor_arff.68e650ea.js new file mode 100644 index 000000000..3a241d6b6 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_arff.68e650ea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1438],{274:e=>{function a(e){e.languages.arff={comment:/%.*/,string:{pattern:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:/@(?:attribute|data|end|relation)\b/i,number:/\b\d+(?:\.\d+)?\b/,punctuation:/[{},]/}}e.exports=a,a.displayName="arff",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_asciidoc.5ebb45da.js b/assets/js/react-syntax-highlighter_languages_refractor_asciidoc.5ebb45da.js new file mode 100644 index 000000000..49399bb93 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_asciidoc.5ebb45da.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1554],{8738:t=>{function n(t){!function(t){var n={pattern:/(^[ \t]*)\[(?!\[)(?:(["'$`])(?:(?!\2)[^\\]|\\.)*\2|\[(?:[^\]\\]|\\.)*\]|[^\]\\]|\\.)*\]/m,lookbehind:!0,inside:{quoted:{pattern:/([$`])(?:(?!\1)[^\\]|\\.)*\1/,inside:{punctuation:/^[$`]|[$`]$/}},interpreted:{pattern:/'(?:[^'\\]|\\.)*'/,inside:{punctuation:/^'|'$/}},string:/"(?:[^"\\]|\\.)*"/,variable:/\w+(?==)/,punctuation:/^\[|\]$|,/,operator:/=/,"attr-value":/(?!^\s+$).+/}},e=t.languages.asciidoc={"comment-block":{pattern:/^(\/{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1/m,alias:"comment"},table:{pattern:/^\|={3,}(?:(?:\r?\n|\r).*)*?(?:\r?\n|\r)\|={3,}$/m,inside:{specifiers:{pattern:/(?!\|)(?:(?:(?:\d+(?:\.\d+)?|\.\d+)[+*])?(?:[<^>](?:\.[<^>])?|\.[<^>])?[a-z]*)(?=\|)/,alias:"attr-value"},punctuation:{pattern:/(^|[^\\])[|!]=*/,lookbehind:!0}}},"passthrough-block":{pattern:/^(\+{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^\++|\++$/}},"literal-block":{pattern:/^(-{4,}|\.{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^(?:-+|\.+)|(?:-+|\.+)$/}},"other-block":{pattern:/^(--|\*{4,}|_{4,}|={4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m,inside:{punctuation:/^(?:-+|\*+|_+|=+)|(?:-+|\*+|_+|=+)$/}},"list-punctuation":{pattern:/(^[ \t]*)(?:-|\*{1,5}|\.{1,5}|(?:[a-z]|\d+)\.|[xvi]+\))(?= )/im,lookbehind:!0,alias:"punctuation"},"list-label":{pattern:/(^[ \t]*)[a-z\d].+(?::{2,4}|;;)(?=\s)/im,lookbehind:!0,alias:"symbol"},"indented-block":{pattern:/((\r?\n|\r)\2)([ \t]+)\S.*(?:(?:\r?\n|\r)\3.+)*(?=\2{2}|$)/,lookbehind:!0},comment:/^\/\/.*/m,title:{pattern:/^.+(?:\r?\n|\r)(?:={3,}|-{3,}|~{3,}|\^{3,}|\+{3,})$|^={1,5} +.+|^\.(?![\s.]).*/m,alias:"important",inside:{punctuation:/^(?:\.|=+)|(?:=+|-+|~+|\^+|\++)$/}},"attribute-entry":{pattern:/^:[^:\r\n]+:(?: .*?(?: \+(?:\r?\n|\r).*?)*)?$/m,alias:"tag"},attributes:n,hr:{pattern:/^'{3,}$/m,alias:"punctuation"},"page-break":{pattern:/^<{3,}$/m,alias:"punctuation"},admonition:{pattern:/^(?:TIP|NOTE|IMPORTANT|WARNING|CAUTION):/m,alias:"keyword"},callout:[{pattern:/(^[ \t]*)<?\d*>/m,lookbehind:!0,alias:"symbol"},{pattern:/<\d+>/,alias:"symbol"}],macro:{pattern:/\b[a-z\d][a-z\d-]*::?(?:(?:\S+)??\[(?:[^\]\\"]|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:{function:/^[a-z\d-]+(?=:)/,punctuation:/^::?/,attributes:{pattern:/(?:\[(?:[^\]\\"]|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:n.inside}}},inline:{pattern:/(^|[^\\])(?:(?:\B\[(?:[^\]\\"]|(["'])(?:(?!\2)[^\\]|\\.)*\2|\\.)*\])?(?:\b_(?!\s)(?: _|[^_\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: _|[^_\\\r\n]|\\.)+)*_\b|\B``(?!\s).+?(?:(?:\r?\n|\r).+?)*''\B|\B`(?!\s)(?: ['`]|.)+?(?:(?:\r?\n|\r)(?: ['`]|.)+?)*['`]\B|\B(['*+#])(?!\s)(?: \3|(?!\3)[^\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: \3|(?!\3)[^\\\r\n]|\\.)+)*\3\B)|(?:\[(?:[^\]\\"]|(["'])(?:(?!\4)[^\\]|\\.)*\4|\\.)*\])?(?:(__|\*\*|\+\+\+?|##|\$\$|[~^]).+?(?:(?:\r?\n|\r).+?)*\5|\{[^}\r\n]+\}|\[\[\[?.+?(?:(?:\r?\n|\r).+?)*\]?\]\]|<<.+?(?:(?:\r?\n|\r).+?)*>>|\(\(\(?.+?(?:(?:\r?\n|\r).+?)*\)?\)\)))/m,lookbehind:!0,inside:{attributes:n,url:{pattern:/^(?:\[\[\[?.+?\]?\]\]|<<.+?>>)$/,inside:{punctuation:/^(?:\[\[\[?|<<)|(?:\]\]\]?|>>)$/}},"attribute-ref":{pattern:/^\{.+\}$/,inside:{variable:{pattern:/(^\{)[a-z\d,+_-]+/,lookbehind:!0},operator:/^[=?!#%@$]|!(?=[:}])/,punctuation:/^\{|\}$|::?/}},italic:{pattern:/^(['_])[\s\S]+\1$/,inside:{punctuation:/^(?:''?|__?)|(?:''?|__?)$/}},bold:{pattern:/^\*[\s\S]+\*$/,inside:{punctuation:/^\*\*?|\*\*?$/}},punctuation:/^(?:``?|\+{1,3}|##?|\$\$|[~^]|\(\(\(?)|(?:''?|\+{1,3}|##?|\$\$|[~^`]|\)?\)\))$/}},replacement:{pattern:/\((?:C|TM|R)\)/,alias:"builtin"},entity:/&#?[\da-z]{1,8};/i,"line-continuation":{pattern:/(^| )\+$/m,lookbehind:!0,alias:"punctuation"}};function i(t){for(var n={},i=0,a=(t=t.split(" ")).length;i<a;i++)n[t[i]]=e[t[i]];return n}n.inside.interpreted.inside.rest=i("macro inline replacement entity"),e["passthrough-block"].inside.rest=i("macro"),e["literal-block"].inside.rest=i("callout"),e.table.inside.rest=i("comment-block passthrough-block literal-block other-block list-punctuation indented-block comment title attribute-entry attributes hr page-break admonition list-label callout macro inline replacement entity line-continuation"),e["other-block"].inside.rest=i("table list-punctuation indented-block comment attribute-entry attributes hr page-break admonition list-label macro inline replacement entity line-continuation"),e.title.inside.rest=i("macro inline replacement entity"),t.hooks.add("wrap",(function(t){"entity"===t.type&&(t.attributes.title=t.content.value.replace(/&/,"&"))})),t.languages.adoc=t.languages.asciidoc}(t)}t.exports=n,n.displayName="asciidoc",n.aliases=["adoc"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_asciidoc.dabf5831.js b/assets/js/react-syntax-highlighter_languages_refractor_asciidoc.dabf5831.js new file mode 100644 index 000000000..330bdb5fa --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_asciidoc.dabf5831.js @@ -0,0 +1,234 @@ +"use strict"; +exports.id = 1554; +exports.ids = [1554]; +exports.modules = { + +/***/ 18738: +/***/ ((module) => { + + + +module.exports = asciidoc +asciidoc.displayName = 'asciidoc' +asciidoc.aliases = ['adoc'] +function asciidoc(Prism) { + ;(function(Prism) { + var attributes = { + pattern: /(^[ \t]*)\[(?!\[)(?:(["'$`])(?:(?!\2)[^\\]|\\.)*\2|\[(?:[^\]\\]|\\.)*\]|[^\]\\]|\\.)*\]/m, + lookbehind: true, + inside: { + quoted: { + pattern: /([$`])(?:(?!\1)[^\\]|\\.)*\1/, + inside: { + punctuation: /^[$`]|[$`]$/ + } + }, + interpreted: { + pattern: /'(?:[^'\\]|\\.)*'/, + inside: { + punctuation: /^'|'$/ // See rest below + } + }, + string: /"(?:[^"\\]|\\.)*"/, + variable: /\w+(?==)/, + punctuation: /^\[|\]$|,/, + operator: /=/, + // The negative look-ahead prevents blank matches + 'attr-value': /(?!^\s+$).+/ + } + } + var asciidoc = (Prism.languages.asciidoc = { + 'comment-block': { + pattern: /^(\/{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1/m, + alias: 'comment' + }, + table: { + pattern: /^\|={3,}(?:(?:\r?\n|\r).*)*?(?:\r?\n|\r)\|={3,}$/m, + inside: { + specifiers: { + pattern: /(?!\|)(?:(?:(?:\d+(?:\.\d+)?|\.\d+)[+*])?(?:[<^>](?:\.[<^>])?|\.[<^>])?[a-z]*)(?=\|)/, + alias: 'attr-value' + }, + punctuation: { + pattern: /(^|[^\\])[|!]=*/, + lookbehind: true + } // See rest below + } + }, + 'passthrough-block': { + pattern: /^(\+{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m, + inside: { + punctuation: /^\++|\++$/ // See rest below + } + }, + // Literal blocks and listing blocks + 'literal-block': { + pattern: /^(-{4,}|\.{4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m, + inside: { + punctuation: /^(?:-+|\.+)|(?:-+|\.+)$/ // See rest below + } + }, + // Sidebar blocks, quote blocks, example blocks and open blocks + 'other-block': { + pattern: /^(--|\*{4,}|_{4,}|={4,})(?:\r?\n|\r)(?:[\s\S]*(?:\r?\n|\r))??\1$/m, + inside: { + punctuation: /^(?:-+|\*+|_+|=+)|(?:-+|\*+|_+|=+)$/ // See rest below + } + }, + // list-punctuation and list-label must appear before indented-block + 'list-punctuation': { + pattern: /(^[ \t]*)(?:-|\*{1,5}|\.{1,5}|(?:[a-z]|\d+)\.|[xvi]+\))(?= )/im, + lookbehind: true, + alias: 'punctuation' + }, + 'list-label': { + pattern: /(^[ \t]*)[a-z\d].+(?::{2,4}|;;)(?=\s)/im, + lookbehind: true, + alias: 'symbol' + }, + 'indented-block': { + pattern: /((\r?\n|\r)\2)([ \t]+)\S.*(?:(?:\r?\n|\r)\3.+)*(?=\2{2}|$)/, + lookbehind: true + }, + comment: /^\/\/.*/m, + title: { + pattern: /^.+(?:\r?\n|\r)(?:={3,}|-{3,}|~{3,}|\^{3,}|\+{3,})$|^={1,5} +.+|^\.(?![\s.]).*/m, + alias: 'important', + inside: { + punctuation: /^(?:\.|=+)|(?:=+|-+|~+|\^+|\++)$/ // See rest below + } + }, + 'attribute-entry': { + pattern: /^:[^:\r\n]+:(?: .*?(?: \+(?:\r?\n|\r).*?)*)?$/m, + alias: 'tag' + }, + attributes: attributes, + hr: { + pattern: /^'{3,}$/m, + alias: 'punctuation' + }, + 'page-break': { + pattern: /^<{3,}$/m, + alias: 'punctuation' + }, + admonition: { + pattern: /^(?:TIP|NOTE|IMPORTANT|WARNING|CAUTION):/m, + alias: 'keyword' + }, + callout: [ + { + pattern: /(^[ \t]*)<?\d*>/m, + lookbehind: true, + alias: 'symbol' + }, + { + pattern: /<\d+>/, + alias: 'symbol' + } + ], + macro: { + pattern: /\b[a-z\d][a-z\d-]*::?(?:(?:\S+)??\[(?:[^\]\\"]|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/, + inside: { + function: /^[a-z\d-]+(?=:)/, + punctuation: /^::?/, + attributes: { + pattern: /(?:\[(?:[^\]\\"]|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/, + inside: attributes.inside + } + } + }, + inline: { + /* +The initial look-behind prevents the highlighting of escaped quoted text. +Quoted text can be multi-line but cannot span an empty line. +All quoted text can have attributes before [foobar, 'foobar', baz="bar"]. +First, we handle the constrained quotes. +Those must be bounded by non-word chars and cannot have spaces between the delimiter and the first char. +They are, in order: _emphasis_, ``double quotes'', `single quotes', `monospace`, 'emphasis', *strong*, +monospace+ and #unquoted# +Then we handle the unconstrained quotes. +Those do not have the restrictions of the constrained quotes. +They are, in order: __emphasis__, **strong**, ++monospace++, +++passthrough+++, ##unquoted##, $$passthrough$$, ~subscript~, ^superscript^, {attribute-reference}, [[anchor]], [[[bibliography anchor]]], <<xref>>, (((indexes))) and ((indexes)) +*/ + pattern: /(^|[^\\])(?:(?:\B\[(?:[^\]\\"]|(["'])(?:(?!\2)[^\\]|\\.)*\2|\\.)*\])?(?:\b_(?!\s)(?: _|[^_\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: _|[^_\\\r\n]|\\.)+)*_\b|\B``(?!\s).+?(?:(?:\r?\n|\r).+?)*''\B|\B`(?!\s)(?: ['`]|.)+?(?:(?:\r?\n|\r)(?: ['`]|.)+?)*['`]\B|\B(['*+#])(?!\s)(?: \3|(?!\3)[^\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: \3|(?!\3)[^\\\r\n]|\\.)+)*\3\B)|(?:\[(?:[^\]\\"]|(["'])(?:(?!\4)[^\\]|\\.)*\4|\\.)*\])?(?:(__|\*\*|\+\+\+?|##|\$\$|[~^]).+?(?:(?:\r?\n|\r).+?)*\5|\{[^}\r\n]+\}|\[\[\[?.+?(?:(?:\r?\n|\r).+?)*\]?\]\]|<<.+?(?:(?:\r?\n|\r).+?)*>>|\(\(\(?.+?(?:(?:\r?\n|\r).+?)*\)?\)\)))/m, + lookbehind: true, + inside: { + attributes: attributes, + url: { + pattern: /^(?:\[\[\[?.+?\]?\]\]|<<.+?>>)$/, + inside: { + punctuation: /^(?:\[\[\[?|<<)|(?:\]\]\]?|>>)$/ + } + }, + 'attribute-ref': { + pattern: /^\{.+\}$/, + inside: { + variable: { + pattern: /(^\{)[a-z\d,+_-]+/, + lookbehind: true + }, + operator: /^[=?!#%@$]|!(?=[:}])/, + punctuation: /^\{|\}$|::?/ + } + }, + italic: { + pattern: /^(['_])[\s\S]+\1$/, + inside: { + punctuation: /^(?:''?|__?)|(?:''?|__?)$/ + } + }, + bold: { + pattern: /^\*[\s\S]+\*$/, + inside: { + punctuation: /^\*\*?|\*\*?$/ + } + }, + punctuation: /^(?:``?|\+{1,3}|##?|\$\$|[~^]|\(\(\(?)|(?:''?|\+{1,3}|##?|\$\$|[~^`]|\)?\)\))$/ + } + }, + replacement: { + pattern: /\((?:C|TM|R)\)/, + alias: 'builtin' + }, + entity: /&#?[\da-z]{1,8};/i, + 'line-continuation': { + pattern: /(^| )\+$/m, + lookbehind: true, + alias: 'punctuation' + } + }) // Allow some nesting. There is no recursion though, so cloning should not be needed. + function copyFromAsciiDoc(keys) { + keys = keys.split(' ') + var o = {} + for (var i = 0, l = keys.length; i < l; i++) { + o[keys[i]] = asciidoc[keys[i]] + } + return o + } + attributes.inside['interpreted'].inside.rest = copyFromAsciiDoc( + 'macro inline replacement entity' + ) + asciidoc['passthrough-block'].inside.rest = copyFromAsciiDoc('macro') + asciidoc['literal-block'].inside.rest = copyFromAsciiDoc('callout') + asciidoc['table'].inside.rest = copyFromAsciiDoc( + 'comment-block passthrough-block literal-block other-block list-punctuation indented-block comment title attribute-entry attributes hr page-break admonition list-label callout macro inline replacement entity line-continuation' + ) + asciidoc['other-block'].inside.rest = copyFromAsciiDoc( + 'table list-punctuation indented-block comment attribute-entry attributes hr page-break admonition list-label macro inline replacement entity line-continuation' + ) + asciidoc['title'].inside.rest = copyFromAsciiDoc( + 'macro inline replacement entity' + ) // Plugin to make entity title show the real entity, idea by Roman Komarov + Prism.hooks.add('wrap', function(env) { + if (env.type === 'entity') { + env.attributes['title'] = env.content.value.replace(/&/, '&') + } + }) + Prism.languages.adoc = Prism.languages.asciidoc + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_asm6502.4731dd8e.js b/assets/js/react-syntax-highlighter_languages_refractor_asm6502.4731dd8e.js new file mode 100644 index 000000000..e6464c39d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_asm6502.4731dd8e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5696],{8572:a=>{function e(a){a.languages.asm6502={comment:/;.*/,directive:{pattern:/\.\w+(?= )/,alias:"keyword"},string:/(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/,opcode:{pattern:/\b(?:adc|and|asl|bcc|bcs|beq|bit|bmi|bne|bpl|brk|bvc|bvs|clc|cld|cli|clv|cmp|cpx|cpy|dec|dex|dey|eor|inc|inx|iny|jmp|jsr|lda|ldx|ldy|lsr|nop|ora|pha|php|pla|plp|rol|ror|rti|rts|sbc|sec|sed|sei|sta|stx|sty|tax|tay|tsx|txa|txs|tya|ADC|AND|ASL|BCC|BCS|BEQ|BIT|BMI|BNE|BPL|BRK|BVC|BVS|CLC|CLD|CLI|CLV|CMP|CPX|CPY|DEC|DEX|DEY|EOR|INC|INX|INY|JMP|JSR|LDA|LDX|LDY|LSR|NOP|ORA|PHA|PHP|PLA|PLP|ROL|ROR|RTI|RTS|SBC|SEC|SED|SEI|STA|STX|STY|TAX|TAY|TSX|TXA|TXS|TYA)\b/,alias:"property"},hexnumber:{pattern:/#?\$[\da-f]{2,4}/i,alias:"string"},binarynumber:{pattern:/#?%[01]+/,alias:"string"},decimalnumber:{pattern:/#?\d+/,alias:"string"},register:{pattern:/\b[xya]\b/i,alias:"variable"}}}a.exports=e,e.displayName="asm6502",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_asm6502.e06f54bd.js b/assets/js/react-syntax-highlighter_languages_refractor_asm6502.e06f54bd.js new file mode 100644 index 000000000..59c4ae940 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_asm6502.e06f54bd.js @@ -0,0 +1,49 @@ +"use strict"; +exports.id = 5696; +exports.ids = [5696]; +exports.modules = { + +/***/ 58572: +/***/ ((module) => { + + + +module.exports = asm6502 +asm6502.displayName = 'asm6502' +asm6502.aliases = [] +function asm6502(Prism) { + Prism.languages.asm6502 = { + comment: /;.*/, + directive: { + pattern: /\.\w+(?= )/, + alias: 'keyword' + }, + string: /(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/, + opcode: { + pattern: /\b(?:adc|and|asl|bcc|bcs|beq|bit|bmi|bne|bpl|brk|bvc|bvs|clc|cld|cli|clv|cmp|cpx|cpy|dec|dex|dey|eor|inc|inx|iny|jmp|jsr|lda|ldx|ldy|lsr|nop|ora|pha|php|pla|plp|rol|ror|rti|rts|sbc|sec|sed|sei|sta|stx|sty|tax|tay|tsx|txa|txs|tya|ADC|AND|ASL|BCC|BCS|BEQ|BIT|BMI|BNE|BPL|BRK|BVC|BVS|CLC|CLD|CLI|CLV|CMP|CPX|CPY|DEC|DEX|DEY|EOR|INC|INX|INY|JMP|JSR|LDA|LDX|LDY|LSR|NOP|ORA|PHA|PHP|PLA|PLP|ROL|ROR|RTI|RTS|SBC|SEC|SED|SEI|STA|STX|STY|TAX|TAY|TSX|TXA|TXS|TYA)\b/, + alias: 'property' + }, + hexnumber: { + pattern: /#?\$[\da-f]{2,4}/i, + alias: 'string' + }, + binarynumber: { + pattern: /#?%[01]+/, + alias: 'string' + }, + decimalnumber: { + pattern: /#?\d+/, + alias: 'string' + }, + register: { + pattern: /\b[xya]\b/i, + alias: 'variable' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_aspnet.56ecdf20.js b/assets/js/react-syntax-highlighter_languages_refractor_aspnet.56ecdf20.js new file mode 100644 index 000000000..a2be6142c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_aspnet.56ecdf20.js @@ -0,0 +1,60 @@ +"use strict"; +exports.id = 8030; +exports.ids = [8030]; +exports.modules = { + +/***/ 78734: +/***/ ((module) => { + + + +module.exports = aspnet +aspnet.displayName = 'aspnet' +aspnet.aliases = [] +function aspnet(Prism) { + Prism.languages.aspnet = Prism.languages.extend('markup', { + 'page-directive tag': { + pattern: /<%\s*@.*%>/i, + inside: { + 'page-directive tag': /<%\s*@\s*(?:Assembly|Control|Implements|Import|Master(?:Type)?|OutputCache|Page|PreviousPageType|Reference|Register)?|%>/i, + rest: Prism.languages.markup.tag.inside + } + }, + 'directive tag': { + pattern: /<%.*%>/i, + inside: { + 'directive tag': /<%\s*?[$=%#:]{0,2}|%>/i, + rest: Prism.languages.csharp + } + } + }) // Regexp copied from prism-markup, with a negative look-ahead added + Prism.languages.aspnet.tag.pattern = /<(?!%)\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i // match directives of attribute value foo="<% Bar %>" + Prism.languages.insertBefore( + 'inside', + 'punctuation', + { + 'directive tag': Prism.languages.aspnet['directive tag'] + }, + Prism.languages.aspnet.tag.inside['attr-value'] + ) + Prism.languages.insertBefore('aspnet', 'comment', { + 'asp comment': /<%--[\s\S]*?--%>/ + }) // script runat="server" contains csharp, not javascript + Prism.languages.insertBefore( + 'aspnet', + Prism.languages.javascript ? 'script' : 'tag', + { + 'asp script': { + pattern: /(<script(?=.*runat=['"]?server['"]?)[\s\S]*?>)[\s\S]*?(?=<\/script>)/i, + lookbehind: true, + inside: Prism.languages.csharp || {} + } + } + ) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_aspnet.6e993221.js b/assets/js/react-syntax-highlighter_languages_refractor_aspnet.6e993221.js new file mode 100644 index 000000000..4e2dd910a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_aspnet.6e993221.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8030],{8734:e=>{function a(e){e.languages.aspnet=e.languages.extend("markup",{"page-directive tag":{pattern:/<%\s*@.*%>/i,inside:{"page-directive tag":/<%\s*@\s*(?:Assembly|Control|Implements|Import|Master(?:Type)?|OutputCache|Page|PreviousPageType|Reference|Register)?|%>/i,rest:e.languages.markup.tag.inside}},"directive tag":{pattern:/<%.*%>/i,inside:{"directive tag":/<%\s*?[$=%#:]{0,2}|%>/i,rest:e.languages.csharp}}}),e.languages.aspnet.tag.pattern=/<(?!%)\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,e.languages.insertBefore("inside","punctuation",{"directive tag":e.languages.aspnet["directive tag"]},e.languages.aspnet.tag.inside["attr-value"]),e.languages.insertBefore("aspnet","comment",{"asp comment":/<%--[\s\S]*?--%>/}),e.languages.insertBefore("aspnet",e.languages.javascript?"script":"tag",{"asp script":{pattern:/(<script(?=.*runat=['"]?server['"]?)[\s\S]*?>)[\s\S]*?(?=<\/script>)/i,lookbehind:!0,inside:e.languages.csharp||{}}})}e.exports=a,a.displayName="aspnet",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_autohotkey.9d6361cc.js b/assets/js/react-syntax-highlighter_languages_refractor_autohotkey.9d6361cc.js new file mode 100644 index 000000000..66973e205 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_autohotkey.9d6361cc.js @@ -0,0 +1,44 @@ +"use strict"; +exports.id = 2065; +exports.ids = [2065]; +exports.modules = { + +/***/ 6681: +/***/ ((module) => { + + + +module.exports = autohotkey +autohotkey.displayName = 'autohotkey' +autohotkey.aliases = [] +function autohotkey(Prism) { + // NOTES - follows first-first highlight method, block is locked after highlight, different from SyntaxHl + Prism.languages.autohotkey = { + comment: { + pattern: /(^[^";\n]*("[^"\n]*?"[^"\n]*?)*)(?:;.*$|^\s*\/\*[\s\S]*\n\*\/)/m, + lookbehind: true + }, + string: /"(?:[^"\n\r]|"")*"/m, + function: /[^(); \t,\n+*\-=?>:\\\/<&%\[\]]+?(?=\()/m, + //function - don't use .*\) in the end bcoz string locks it + tag: /^[ \t]*[^\s:]+?(?=:(?:[^:]|$))/m, + //labels + variable: /%\w+%/, + number: /\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/, + operator: /\?|\/\/?=?|:=|\|[=|]?|&[=&]?|\+[=+]?|-[=-]?|\*[=*]?|<(?:<=?|>|=)?|>>?=?|[.^!=~]=?|\b(?:AND|NOT|OR)\b/, + punctuation: /[{}[\]():,]/, + boolean: /\b(?:true|false)\b/, + selector: /\b(?:AutoTrim|BlockInput|Break|Click|ClipWait|Continue|Control|ControlClick|ControlFocus|ControlGet|ControlGetFocus|ControlGetPos|ControlGetText|ControlMove|ControlSend|ControlSendRaw|ControlSetText|CoordMode|Critical|DetectHiddenText|DetectHiddenWindows|Drive|DriveGet|DriveSpaceFree|EnvAdd|EnvDiv|EnvGet|EnvMult|EnvSet|EnvSub|EnvUpdate|Exit|ExitApp|FileAppend|FileCopy|FileCopyDir|FileCreateDir|FileCreateShortcut|FileDelete|FileEncoding|FileGetAttrib|FileGetShortcut|FileGetSize|FileGetTime|FileGetVersion|FileInstall|FileMove|FileMoveDir|FileRead|FileReadLine|FileRecycle|FileRecycleEmpty|FileRemoveDir|FileSelectFile|FileSelectFolder|FileSetAttrib|FileSetTime|FormatTime|GetKeyState|Gosub|Goto|GroupActivate|GroupAdd|GroupClose|GroupDeactivate|Gui|GuiControl|GuiControlGet|Hotkey|ImageSearch|IniDelete|IniRead|IniWrite|Input|InputBox|KeyWait|ListHotkeys|ListLines|ListVars|Loop|Menu|MouseClick|MouseClickDrag|MouseGetPos|MouseMove|MsgBox|OnExit|OutputDebug|Pause|PixelGetColor|PixelSearch|PostMessage|Process|Progress|Random|RegDelete|RegRead|RegWrite|Reload|Repeat|Return|Run|RunAs|RunWait|Send|SendEvent|SendInput|SendMessage|SendMode|SendPlay|SendRaw|SetBatchLines|SetCapslockState|SetControlDelay|SetDefaultMouseSpeed|SetEnv|SetFormat|SetKeyDelay|SetMouseDelay|SetNumlockState|SetScrollLockState|SetStoreCapslockMode|SetTimer|SetTitleMatchMode|SetWinDelay|SetWorkingDir|Shutdown|Sleep|Sort|SoundBeep|SoundGet|SoundGetWaveVolume|SoundPlay|SoundSet|SoundSetWaveVolume|SplashImage|SplashTextOff|SplashTextOn|SplitPath|StatusBarGetText|StatusBarWait|StringCaseSense|StringGetPos|StringLeft|StringLen|StringLower|StringMid|StringReplace|StringRight|StringSplit|StringTrimLeft|StringTrimRight|StringUpper|Suspend|SysGet|Thread|ToolTip|Transform|TrayTip|URLDownloadToFile|WinActivate|WinActivateBottom|WinClose|WinGet|WinGetActiveStats|WinGetActiveTitle|WinGetClass|WinGetPos|WinGetText|WinGetTitle|WinHide|WinKill|WinMaximize|WinMenuSelectItem|WinMinimize|WinMinimizeAll|WinMinimizeAllUndo|WinMove|WinRestore|WinSet|WinSetTitle|WinShow|WinWait|WinWaitActive|WinWaitClose|WinWaitNotActive)\b/i, + constant: /\b(?:a_ahkpath|a_ahkversion|a_appdata|a_appdatacommon|a_autotrim|a_batchlines|a_caretx|a_carety|a_computername|a_controldelay|a_cursor|a_dd|a_ddd|a_dddd|a_defaultmousespeed|a_desktop|a_desktopcommon|a_detecthiddentext|a_detecthiddenwindows|a_endchar|a_eventinfo|a_exitreason|a_formatfloat|a_formatinteger|a_gui|a_guievent|a_guicontrol|a_guicontrolevent|a_guiheight|a_guiwidth|a_guix|a_guiy|a_hour|a_iconfile|a_iconhidden|a_iconnumber|a_icontip|a_index|a_ipaddress1|a_ipaddress2|a_ipaddress3|a_ipaddress4|a_isadmin|a_iscompiled|a_iscritical|a_ispaused|a_issuspended|a_isunicode|a_keydelay|a_language|a_lasterror|a_linefile|a_linenumber|a_loopfield|a_loopfileattrib|a_loopfiledir|a_loopfileext|a_loopfilefullpath|a_loopfilelongpath|a_loopfilename|a_loopfileshortname|a_loopfileshortpath|a_loopfilesize|a_loopfilesizekb|a_loopfilesizemb|a_loopfiletimeaccessed|a_loopfiletimecreated|a_loopfiletimemodified|a_loopreadline|a_loopregkey|a_loopregname|a_loopregsubkey|a_loopregtimemodified|a_loopregtype|a_mday|a_min|a_mm|a_mmm|a_mmmm|a_mon|a_mousedelay|a_msec|a_mydocuments|a_now|a_nowutc|a_numbatchlines|a_ostype|a_osversion|a_priorhotkey|programfiles|a_programfiles|a_programs|a_programscommon|a_screenheight|a_screenwidth|a_scriptdir|a_scriptfullpath|a_scriptname|a_sec|a_space|a_startmenu|a_startmenucommon|a_startup|a_startupcommon|a_stringcasesense|a_tab|a_temp|a_thisfunc|a_thishotkey|a_thislabel|a_thismenu|a_thismenuitem|a_thismenuitempos|a_tickcount|a_timeidle|a_timeidlephysical|a_timesincepriorhotkey|a_timesincethishotkey|a_titlematchmode|a_titlematchmodespeed|a_username|a_wday|a_windelay|a_windir|a_workingdir|a_yday|a_year|a_yweek|a_yyyy|clipboard|clipboardall|comspec|errorlevel)\b/i, + builtin: /\b(?:abs|acos|asc|asin|atan|ceil|chr|class|cos|dllcall|exp|fileexist|Fileopen|floor|il_add|il_create|il_destroy|instr|substr|isfunc|islabel|IsObject|ln|log|lv_add|lv_delete|lv_deletecol|lv_getcount|lv_getnext|lv_gettext|lv_insert|lv_insertcol|lv_modify|lv_modifycol|lv_setimagelist|mod|onmessage|numget|numput|registercallback|regexmatch|regexreplace|round|sin|tan|sqrt|strlen|sb_seticon|sb_setparts|sb_settext|strsplit|tv_add|tv_delete|tv_getchild|tv_getcount|tv_getnext|tv_get|tv_getparent|tv_getprev|tv_getselection|tv_gettext|tv_modify|varsetcapacity|winactive|winexist|__New|__Call|__Get|__Set)\b/i, + symbol: /\b(?:alt|altdown|altup|appskey|backspace|browser_back|browser_favorites|browser_forward|browser_home|browser_refresh|browser_search|browser_stop|bs|capslock|ctrl|ctrlbreak|ctrldown|ctrlup|del|delete|down|end|enter|esc|escape|f1|f10|f11|f12|f13|f14|f15|f16|f17|f18|f19|f2|f20|f21|f22|f23|f24|f3|f4|f5|f6|f7|f8|f9|home|ins|insert|joy1|joy10|joy11|joy12|joy13|joy14|joy15|joy16|joy17|joy18|joy19|joy2|joy20|joy21|joy22|joy23|joy24|joy25|joy26|joy27|joy28|joy29|joy3|joy30|joy31|joy32|joy4|joy5|joy6|joy7|joy8|joy9|joyaxes|joybuttons|joyinfo|joyname|joypov|joyr|joyu|joyv|joyx|joyy|joyz|lalt|launch_app1|launch_app2|launch_mail|launch_media|lbutton|lcontrol|lctrl|left|lshift|lwin|lwindown|lwinup|mbutton|media_next|media_play_pause|media_prev|media_stop|numlock|numpad0|numpad1|numpad2|numpad3|numpad4|numpad5|numpad6|numpad7|numpad8|numpad9|numpadadd|numpadclear|numpaddel|numpaddiv|numpaddot|numpaddown|numpadend|numpadenter|numpadhome|numpadins|numpadleft|numpadmult|numpadpgdn|numpadpgup|numpadright|numpadsub|numpadup|pgdn|pgup|printscreen|ralt|rbutton|rcontrol|rctrl|right|rshift|rwin|rwindown|rwinup|scrolllock|shift|shiftdown|shiftup|space|tab|up|volume_down|volume_mute|volume_up|wheeldown|wheelleft|wheelright|wheelup|xbutton1|xbutton2)\b/i, + important: /#\b(?:AllowSameLineComments|ClipboardTimeout|CommentFlag|ErrorStdOut|EscapeChar|HotkeyInterval|HotkeyModifierTimeout|Hotstring|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Include|IncludeAgain|InstallKeybdHook|InstallMouseHook|KeyHistory|LTrim|MaxHotkeysPerInterval|MaxMem|MaxThreads|MaxThreadsBuffer|MaxThreadsPerHotkey|NoEnv|NoTrayIcon|Persistent|SingleInstance|UseHook|WinActivateForce)\b/i, + keyword: /\b(?:Abort|AboveNormal|Add|ahk_class|ahk_group|ahk_id|ahk_pid|All|Alnum|Alpha|AltSubmit|AltTab|AltTabAndMenu|AltTabMenu|AltTabMenuDismiss|AlwaysOnTop|AutoSize|Background|BackgroundTrans|BelowNormal|between|BitAnd|BitNot|BitOr|BitShiftLeft|BitShiftRight|BitXOr|Bold|Border|Button|ByRef|Checkbox|Checked|CheckedGray|Choose|ChooseString|Close|Color|ComboBox|Contains|ControlList|Count|Date|DateTime|Days|DDL|Default|DeleteAll|Delimiter|Deref|Destroy|Digit|Disable|Disabled|DropDownList|Edit|Eject|Else|Enable|Enabled|Error|Exist|Expand|ExStyle|FileSystem|First|Flash|Float|FloatFast|Focus|Font|for|global|Grid|Group|GroupBox|GuiClose|GuiContextMenu|GuiDropFiles|GuiEscape|GuiSize|Hdr|Hidden|Hide|High|HKCC|HKCR|HKCU|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_LOCAL_MACHINE|HKEY_USERS|HKLM|HKU|Hours|HScroll|Icon|IconSmall|ID|IDLast|If|IfEqual|IfExist|IfGreater|IfGreaterOrEqual|IfInString|IfLess|IfLessOrEqual|IfMsgBox|IfNotEqual|IfNotExist|IfNotInString|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Ignore|ImageList|in|Integer|IntegerFast|Interrupt|is|italic|Join|Label|LastFound|LastFoundExist|Limit|Lines|List|ListBox|ListView|local|Lock|Logoff|Low|Lower|Lowercase|MainWindow|Margin|Maximize|MaximizeBox|MaxSize|Minimize|MinimizeBox|MinMax|MinSize|Minutes|MonthCal|Mouse|Move|Multi|NA|No|NoActivate|NoDefault|NoHide|NoIcon|NoMainWindow|norm|Normal|NoSort|NoSortHdr|NoStandard|Not|NoTab|NoTimers|Number|Off|Ok|On|OwnDialogs|Owner|Parse|Password|Picture|Pixel|Pos|Pow|Priority|ProcessName|Radio|Range|Read|ReadOnly|Realtime|Redraw|REG_BINARY|REG_DWORD|REG_EXPAND_SZ|REG_MULTI_SZ|REG_SZ|Region|Relative|Rename|Report|Resize|Restore|Retry|RGB|Screen|Seconds|Section|Serial|SetLabel|ShiftAltTab|Show|Single|Slider|SortDesc|Standard|static|Status|StatusBar|StatusCD|strike|Style|Submit|SysMenu|Tab2|TabStop|Text|Theme|Tile|ToggleCheck|ToggleEnable|ToolWindow|Top|Topmost|TransColor|Transparent|Tray|TreeView|TryAgain|Type|UnCheck|underline|Unicode|Unlock|UpDown|Upper|Uppercase|UseErrorLevel|Vis|VisFirst|Visible|VScroll|Wait|WaitClose|WantCtrlA|WantF2|WantReturn|While|Wrap|Xdigit|xm|xp|xs|Yes|ym|yp|ys)\b/i + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_autohotkey.e0945af7.js b/assets/js/react-syntax-highlighter_languages_refractor_autohotkey.e0945af7.js new file mode 100644 index 000000000..dc63ac0bf --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_autohotkey.e0945af7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2065],{6681:e=>{function t(e){e.languages.autohotkey={comment:{pattern:/(^[^";\n]*("[^"\n]*?"[^"\n]*?)*)(?:;.*$|^\s*\/\*[\s\S]*\n\*\/)/m,lookbehind:!0},string:/"(?:[^"\n\r]|"")*"/m,function:/[^(); \t,\n+*\-=?>:\\\/<&%\[\]]+?(?=\()/m,tag:/^[ \t]*[^\s:]+?(?=:(?:[^:]|$))/m,variable:/%\w+%/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/\?|\/\/?=?|:=|\|[=|]?|&[=&]?|\+[=+]?|-[=-]?|\*[=*]?|<(?:<=?|>|=)?|>>?=?|[.^!=~]=?|\b(?:AND|NOT|OR)\b/,punctuation:/[{}[\]():,]/,boolean:/\b(?:true|false)\b/,selector:/\b(?:AutoTrim|BlockInput|Break|Click|ClipWait|Continue|Control|ControlClick|ControlFocus|ControlGet|ControlGetFocus|ControlGetPos|ControlGetText|ControlMove|ControlSend|ControlSendRaw|ControlSetText|CoordMode|Critical|DetectHiddenText|DetectHiddenWindows|Drive|DriveGet|DriveSpaceFree|EnvAdd|EnvDiv|EnvGet|EnvMult|EnvSet|EnvSub|EnvUpdate|Exit|ExitApp|FileAppend|FileCopy|FileCopyDir|FileCreateDir|FileCreateShortcut|FileDelete|FileEncoding|FileGetAttrib|FileGetShortcut|FileGetSize|FileGetTime|FileGetVersion|FileInstall|FileMove|FileMoveDir|FileRead|FileReadLine|FileRecycle|FileRecycleEmpty|FileRemoveDir|FileSelectFile|FileSelectFolder|FileSetAttrib|FileSetTime|FormatTime|GetKeyState|Gosub|Goto|GroupActivate|GroupAdd|GroupClose|GroupDeactivate|Gui|GuiControl|GuiControlGet|Hotkey|ImageSearch|IniDelete|IniRead|IniWrite|Input|InputBox|KeyWait|ListHotkeys|ListLines|ListVars|Loop|Menu|MouseClick|MouseClickDrag|MouseGetPos|MouseMove|MsgBox|OnExit|OutputDebug|Pause|PixelGetColor|PixelSearch|PostMessage|Process|Progress|Random|RegDelete|RegRead|RegWrite|Reload|Repeat|Return|Run|RunAs|RunWait|Send|SendEvent|SendInput|SendMessage|SendMode|SendPlay|SendRaw|SetBatchLines|SetCapslockState|SetControlDelay|SetDefaultMouseSpeed|SetEnv|SetFormat|SetKeyDelay|SetMouseDelay|SetNumlockState|SetScrollLockState|SetStoreCapslockMode|SetTimer|SetTitleMatchMode|SetWinDelay|SetWorkingDir|Shutdown|Sleep|Sort|SoundBeep|SoundGet|SoundGetWaveVolume|SoundPlay|SoundSet|SoundSetWaveVolume|SplashImage|SplashTextOff|SplashTextOn|SplitPath|StatusBarGetText|StatusBarWait|StringCaseSense|StringGetPos|StringLeft|StringLen|StringLower|StringMid|StringReplace|StringRight|StringSplit|StringTrimLeft|StringTrimRight|StringUpper|Suspend|SysGet|Thread|ToolTip|Transform|TrayTip|URLDownloadToFile|WinActivate|WinActivateBottom|WinClose|WinGet|WinGetActiveStats|WinGetActiveTitle|WinGetClass|WinGetPos|WinGetText|WinGetTitle|WinHide|WinKill|WinMaximize|WinMenuSelectItem|WinMinimize|WinMinimizeAll|WinMinimizeAllUndo|WinMove|WinRestore|WinSet|WinSetTitle|WinShow|WinWait|WinWaitActive|WinWaitClose|WinWaitNotActive)\b/i,constant:/\b(?:a_ahkpath|a_ahkversion|a_appdata|a_appdatacommon|a_autotrim|a_batchlines|a_caretx|a_carety|a_computername|a_controldelay|a_cursor|a_dd|a_ddd|a_dddd|a_defaultmousespeed|a_desktop|a_desktopcommon|a_detecthiddentext|a_detecthiddenwindows|a_endchar|a_eventinfo|a_exitreason|a_formatfloat|a_formatinteger|a_gui|a_guievent|a_guicontrol|a_guicontrolevent|a_guiheight|a_guiwidth|a_guix|a_guiy|a_hour|a_iconfile|a_iconhidden|a_iconnumber|a_icontip|a_index|a_ipaddress1|a_ipaddress2|a_ipaddress3|a_ipaddress4|a_isadmin|a_iscompiled|a_iscritical|a_ispaused|a_issuspended|a_isunicode|a_keydelay|a_language|a_lasterror|a_linefile|a_linenumber|a_loopfield|a_loopfileattrib|a_loopfiledir|a_loopfileext|a_loopfilefullpath|a_loopfilelongpath|a_loopfilename|a_loopfileshortname|a_loopfileshortpath|a_loopfilesize|a_loopfilesizekb|a_loopfilesizemb|a_loopfiletimeaccessed|a_loopfiletimecreated|a_loopfiletimemodified|a_loopreadline|a_loopregkey|a_loopregname|a_loopregsubkey|a_loopregtimemodified|a_loopregtype|a_mday|a_min|a_mm|a_mmm|a_mmmm|a_mon|a_mousedelay|a_msec|a_mydocuments|a_now|a_nowutc|a_numbatchlines|a_ostype|a_osversion|a_priorhotkey|programfiles|a_programfiles|a_programs|a_programscommon|a_screenheight|a_screenwidth|a_scriptdir|a_scriptfullpath|a_scriptname|a_sec|a_space|a_startmenu|a_startmenucommon|a_startup|a_startupcommon|a_stringcasesense|a_tab|a_temp|a_thisfunc|a_thishotkey|a_thislabel|a_thismenu|a_thismenuitem|a_thismenuitempos|a_tickcount|a_timeidle|a_timeidlephysical|a_timesincepriorhotkey|a_timesincethishotkey|a_titlematchmode|a_titlematchmodespeed|a_username|a_wday|a_windelay|a_windir|a_workingdir|a_yday|a_year|a_yweek|a_yyyy|clipboard|clipboardall|comspec|errorlevel)\b/i,builtin:/\b(?:abs|acos|asc|asin|atan|ceil|chr|class|cos|dllcall|exp|fileexist|Fileopen|floor|il_add|il_create|il_destroy|instr|substr|isfunc|islabel|IsObject|ln|log|lv_add|lv_delete|lv_deletecol|lv_getcount|lv_getnext|lv_gettext|lv_insert|lv_insertcol|lv_modify|lv_modifycol|lv_setimagelist|mod|onmessage|numget|numput|registercallback|regexmatch|regexreplace|round|sin|tan|sqrt|strlen|sb_seticon|sb_setparts|sb_settext|strsplit|tv_add|tv_delete|tv_getchild|tv_getcount|tv_getnext|tv_get|tv_getparent|tv_getprev|tv_getselection|tv_gettext|tv_modify|varsetcapacity|winactive|winexist|__New|__Call|__Get|__Set)\b/i,symbol:/\b(?:alt|altdown|altup|appskey|backspace|browser_back|browser_favorites|browser_forward|browser_home|browser_refresh|browser_search|browser_stop|bs|capslock|ctrl|ctrlbreak|ctrldown|ctrlup|del|delete|down|end|enter|esc|escape|f1|f10|f11|f12|f13|f14|f15|f16|f17|f18|f19|f2|f20|f21|f22|f23|f24|f3|f4|f5|f6|f7|f8|f9|home|ins|insert|joy1|joy10|joy11|joy12|joy13|joy14|joy15|joy16|joy17|joy18|joy19|joy2|joy20|joy21|joy22|joy23|joy24|joy25|joy26|joy27|joy28|joy29|joy3|joy30|joy31|joy32|joy4|joy5|joy6|joy7|joy8|joy9|joyaxes|joybuttons|joyinfo|joyname|joypov|joyr|joyu|joyv|joyx|joyy|joyz|lalt|launch_app1|launch_app2|launch_mail|launch_media|lbutton|lcontrol|lctrl|left|lshift|lwin|lwindown|lwinup|mbutton|media_next|media_play_pause|media_prev|media_stop|numlock|numpad0|numpad1|numpad2|numpad3|numpad4|numpad5|numpad6|numpad7|numpad8|numpad9|numpadadd|numpadclear|numpaddel|numpaddiv|numpaddot|numpaddown|numpadend|numpadenter|numpadhome|numpadins|numpadleft|numpadmult|numpadpgdn|numpadpgup|numpadright|numpadsub|numpadup|pgdn|pgup|printscreen|ralt|rbutton|rcontrol|rctrl|right|rshift|rwin|rwindown|rwinup|scrolllock|shift|shiftdown|shiftup|space|tab|up|volume_down|volume_mute|volume_up|wheeldown|wheelleft|wheelright|wheelup|xbutton1|xbutton2)\b/i,important:/#\b(?:AllowSameLineComments|ClipboardTimeout|CommentFlag|ErrorStdOut|EscapeChar|HotkeyInterval|HotkeyModifierTimeout|Hotstring|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Include|IncludeAgain|InstallKeybdHook|InstallMouseHook|KeyHistory|LTrim|MaxHotkeysPerInterval|MaxMem|MaxThreads|MaxThreadsBuffer|MaxThreadsPerHotkey|NoEnv|NoTrayIcon|Persistent|SingleInstance|UseHook|WinActivateForce)\b/i,keyword:/\b(?:Abort|AboveNormal|Add|ahk_class|ahk_group|ahk_id|ahk_pid|All|Alnum|Alpha|AltSubmit|AltTab|AltTabAndMenu|AltTabMenu|AltTabMenuDismiss|AlwaysOnTop|AutoSize|Background|BackgroundTrans|BelowNormal|between|BitAnd|BitNot|BitOr|BitShiftLeft|BitShiftRight|BitXOr|Bold|Border|Button|ByRef|Checkbox|Checked|CheckedGray|Choose|ChooseString|Close|Color|ComboBox|Contains|ControlList|Count|Date|DateTime|Days|DDL|Default|DeleteAll|Delimiter|Deref|Destroy|Digit|Disable|Disabled|DropDownList|Edit|Eject|Else|Enable|Enabled|Error|Exist|Expand|ExStyle|FileSystem|First|Flash|Float|FloatFast|Focus|Font|for|global|Grid|Group|GroupBox|GuiClose|GuiContextMenu|GuiDropFiles|GuiEscape|GuiSize|Hdr|Hidden|Hide|High|HKCC|HKCR|HKCU|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_LOCAL_MACHINE|HKEY_USERS|HKLM|HKU|Hours|HScroll|Icon|IconSmall|ID|IDLast|If|IfEqual|IfExist|IfGreater|IfGreaterOrEqual|IfInString|IfLess|IfLessOrEqual|IfMsgBox|IfNotEqual|IfNotExist|IfNotInString|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Ignore|ImageList|in|Integer|IntegerFast|Interrupt|is|italic|Join|Label|LastFound|LastFoundExist|Limit|Lines|List|ListBox|ListView|local|Lock|Logoff|Low|Lower|Lowercase|MainWindow|Margin|Maximize|MaximizeBox|MaxSize|Minimize|MinimizeBox|MinMax|MinSize|Minutes|MonthCal|Mouse|Move|Multi|NA|No|NoActivate|NoDefault|NoHide|NoIcon|NoMainWindow|norm|Normal|NoSort|NoSortHdr|NoStandard|Not|NoTab|NoTimers|Number|Off|Ok|On|OwnDialogs|Owner|Parse|Password|Picture|Pixel|Pos|Pow|Priority|ProcessName|Radio|Range|Read|ReadOnly|Realtime|Redraw|REG_BINARY|REG_DWORD|REG_EXPAND_SZ|REG_MULTI_SZ|REG_SZ|Region|Relative|Rename|Report|Resize|Restore|Retry|RGB|Screen|Seconds|Section|Serial|SetLabel|ShiftAltTab|Show|Single|Slider|SortDesc|Standard|static|Status|StatusBar|StatusCD|strike|Style|Submit|SysMenu|Tab2|TabStop|Text|Theme|Tile|ToggleCheck|ToggleEnable|ToolWindow|Top|Topmost|TransColor|Transparent|Tray|TreeView|TryAgain|Type|UnCheck|underline|Unicode|Unlock|UpDown|Upper|Uppercase|UseErrorLevel|Vis|VisFirst|Visible|VScroll|Wait|WaitClose|WantCtrlA|WantF2|WantReturn|While|Wrap|Xdigit|xm|xp|xs|Yes|ym|yp|ys)\b/i}}e.exports=t,t.displayName="autohotkey",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_autoit.325f567d.js b/assets/js/react-syntax-highlighter_languages_refractor_autoit.325f567d.js new file mode 100644 index 000000000..4992309fc --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_autoit.325f567d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8333],{3358:e=>{function t(e){e.languages.autoit={comment:[/;.*/,{pattern:/(^\s*)#(?:comments-start|cs)[\s\S]*?^\s*#(?:comments-end|ce)/m,lookbehind:!0}],url:{pattern:/(^\s*#include\s+)(?:<[^\r\n>]+>|"[^\r\n"]+")/m,lookbehind:!0},string:{pattern:/(["'])(?:\1\1|(?!\1)[^\r\n])*\1/,greedy:!0,inside:{variable:/([%$@])\w+\1/}},directive:{pattern:/(^\s*)#\w+/m,lookbehind:!0,alias:"keyword"},function:/\b\w+(?=\()/,variable:/[$@]\w+/,keyword:/\b(?:Case|Const|Continue(?:Case|Loop)|Default|Dim|Do|Else(?:If)?|End(?:Func|If|Select|Switch|With)|Enum|Exit(?:Loop)?|For|Func|Global|If|In|Local|Next|Null|ReDim|Select|Static|Step|Switch|Then|To|Until|Volatile|WEnd|While|With)\b/i,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i,boolean:/\b(?:True|False)\b/i,operator:/<[=>]?|[-+*\/=&>]=?|[?^]|\b(?:And|Or|Not)\b/i,punctuation:/[\[\]().,:]/}}e.exports=t,t.displayName="autoit",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_autoit.683919c8.js b/assets/js/react-syntax-highlighter_languages_refractor_autoit.683919c8.js new file mode 100644 index 000000000..6e3b66044 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_autoit.683919c8.js @@ -0,0 +1,55 @@ +"use strict"; +exports.id = 8333; +exports.ids = [8333]; +exports.modules = { + +/***/ 53358: +/***/ ((module) => { + + + +module.exports = autoit +autoit.displayName = 'autoit' +autoit.aliases = [] +function autoit(Prism) { + Prism.languages.autoit = { + comment: [ + /;.*/, + { + // The multi-line comments delimiters can actually be commented out with ";" + pattern: /(^\s*)#(?:comments-start|cs)[\s\S]*?^\s*#(?:comments-end|ce)/m, + lookbehind: true + } + ], + url: { + pattern: /(^\s*#include\s+)(?:<[^\r\n>]+>|"[^\r\n"]+")/m, + lookbehind: true + }, + string: { + pattern: /(["'])(?:\1\1|(?!\1)[^\r\n])*\1/, + greedy: true, + inside: { + variable: /([%$@])\w+\1/ + } + }, + directive: { + pattern: /(^\s*)#\w+/m, + lookbehind: true, + alias: 'keyword' + }, + function: /\b\w+(?=\()/, + // Variables and macros + variable: /[$@]\w+/, + keyword: /\b(?:Case|Const|Continue(?:Case|Loop)|Default|Dim|Do|Else(?:If)?|End(?:Func|If|Select|Switch|With)|Enum|Exit(?:Loop)?|For|Func|Global|If|In|Local|Next|Null|ReDim|Select|Static|Step|Switch|Then|To|Until|Volatile|WEnd|While|With)\b/i, + number: /\b(?:0x[\da-f]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i, + boolean: /\b(?:True|False)\b/i, + operator: /<[=>]?|[-+*\/=&>]=?|[?^]|\b(?:And|Or|Not)\b/i, + punctuation: /[\[\]().,:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_bash.1fd7180b.js b/assets/js/react-syntax-highlighter_languages_refractor_bash.1fd7180b.js new file mode 100644 index 000000000..57d8b09b1 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_bash.1fd7180b.js @@ -0,0 +1,212 @@ +"use strict"; +exports.id = 8765; +exports.ids = [8765]; +exports.modules = { + +/***/ 6979: +/***/ ((module) => { + + + +module.exports = bash +bash.displayName = 'bash' +bash.aliases = ['shell'] +function bash(Prism) { + ;(function(Prism) { + // $ set | grep '^[A-Z][^[:space:]]*=' | cut -d= -f1 | tr '\n' '|' + // + LC_ALL, RANDOM, REPLY, SECONDS. + // + make sure PS1..4 are here as they are not always set, + // - some useless things. + var envVars = + '\\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' + var insideString = { + environment: { + pattern: RegExp('\\$' + envVars), + alias: 'constant' + }, + variable: [ + // [0]: Arithmetic Environment + { + pattern: /\$?\(\([\s\S]+?\)\)/, + greedy: true, + inside: { + // If there is a $ sign at the beginning highlight $(( and )) as variable + variable: [ + { + pattern: /(^\$\(\([\s\S]+)\)\)/, + lookbehind: true + }, + /^\$\(\(/ + ], + number: /\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/, + // Operators according to https://www.gnu.org/software/bash/manual/bashref.html#Shell-Arithmetic + operator: /--?|-=|\+\+?|\+=|!=?|~|\*\*?|\*=|\/=?|%=?|<<=?|>>=?|<=?|>=?|==?|&&?|&=|\^=?|\|\|?|\|=|\?|:/, + // If there is no $ sign at the beginning highlight (( and )) as punctuation + punctuation: /\(\(?|\)\)?|,|;/ + } + }, // [1]: Command Substitution + { + pattern: /\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/, + greedy: true, + inside: { + variable: /^\$\(|^`|\)$|`$/ + } + }, // [2]: Brace expansion + { + pattern: /\$\{[^}]+\}/, + greedy: true, + inside: { + operator: /:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/, + punctuation: /[\[\]]/, + environment: { + pattern: RegExp('(\\{)' + envVars), + lookbehind: true, + alias: 'constant' + } + } + }, + /\$(?:\w+|[#?*!@$])/ + ], + // Escape sequences from echo and printf's manuals, and escaped quotes. + entity: /\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|x[0-9a-fA-F]{1,2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})/ + } + Prism.languages.bash = { + shebang: { + pattern: /^#!\s*\/.*/, + alias: 'important' + }, + comment: { + pattern: /(^|[^"{\\$])#.*/, + lookbehind: true + }, + 'function-name': [ + // a) function foo { + // b) foo() { + // c) function foo() { + // but not “foo {” + { + // a) and c) + pattern: /(\bfunction\s+)\w+(?=(?:\s*\(?:\s*\))?\s*\{)/, + lookbehind: true, + alias: 'function' + }, + { + // b) + pattern: /\b\w+(?=\s*\(\s*\)\s*\{)/, + alias: 'function' + } + ], + // Highlight variable names as variables in for and select beginnings. + 'for-or-select': { + pattern: /(\b(?:for|select)\s+)\w+(?=\s+in\s)/, + alias: 'variable', + lookbehind: true + }, + // Highlight variable names as variables in the left-hand part + // of assignments (“=” and “+=”). + 'assign-left': { + pattern: /(^|[\s;|&]|[<>]\()\w+(?=\+?=)/, + inside: { + environment: { + pattern: RegExp('(^|[\\s;|&]|[<>]\\()' + envVars), + lookbehind: true, + alias: 'constant' + } + }, + alias: 'variable', + lookbehind: true + }, + string: [ + // Support for Here-documents https://en.wikipedia.org/wiki/Here_document + { + pattern: /((?:^|[^<])<<-?\s*)(\w+?)\s*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\2/, + lookbehind: true, + greedy: true, + inside: insideString + }, // Here-document with quotes around the tag + // → No expansion (so no “inside”). + { + pattern: /((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\3/, + lookbehind: true, + greedy: true + }, // “Normal” string + { + pattern: /(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/, + greedy: true, + inside: insideString + } + ], + environment: { + pattern: RegExp('\\$?' + envVars), + alias: 'constant' + }, + variable: insideString.variable, + function: { + pattern: /(^|[\s;|&]|[<>]\()(?:add|apropos|apt|aptitude|apt-cache|apt-get|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|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|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|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|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: true + }, + keyword: { + pattern: /(^|[\s;|&]|[<>]\()(?:if|then|else|elif|fi|for|while|in|case|esac|function|select|do|done|until)(?=$|[)\s;|&])/, + lookbehind: true + }, + // https://www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html + builtin: { + pattern: /(^|[\s;|&]|[<>]\()(?:\.|:|break|cd|continue|eval|exec|exit|export|getopts|hash|pwd|readonly|return|shift|test|times|trap|umask|unset|alias|bind|builtin|caller|command|declare|echo|enable|help|let|local|logout|mapfile|printf|read|readarray|source|type|typeset|ulimit|unalias|set|shopt)(?=$|[)\s;|&])/, + lookbehind: true, + // Alias added to make those easier to distinguish from strings. + alias: 'class-name' + }, + boolean: { + pattern: /(^|[\s;|&]|[<>]\()(?:true|false)(?=$|[)\s;|&])/, + lookbehind: true + }, + 'file-descriptor': { + pattern: /\B&\d\b/, + alias: 'important' + }, + operator: { + // Lots of redirections here, but not just that. + pattern: /\d?<>|>\||\+=|==?|!=?|=~|<<[<-]?|[&\d]?>>|\d?[<>]&?|&[>&]?|\|[&|]?|<=?|>=?/, + inside: { + 'file-descriptor': { + pattern: /^\d/, + alias: 'important' + } + } + }, + punctuation: /\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/, + number: { + pattern: /(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/, + lookbehind: true + } + } + /* Patterns in command substitution. */ + var toBeCopied = [ + 'comment', + 'function-name', + 'for-or-select', + 'assign-left', + 'string', + 'environment', + 'function', + 'keyword', + 'builtin', + 'boolean', + 'file-descriptor', + 'operator', + 'punctuation', + 'number' + ] + var inside = insideString.variable[1].inside + for (var i = 0; i < toBeCopied.length; i++) { + inside[toBeCopied[i]] = Prism.languages.bash[toBeCopied[i]] + } + Prism.languages.shell = Prism.languages.bash + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_bash.718e3894.js b/assets/js/react-syntax-highlighter_languages_refractor_bash.718e3894.js new file mode 100644 index 000000000..0434a9010 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_bash.718e3894.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8765],{6979:e=>{function t(e){!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={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}|x[0-9a-fA-F]{1,2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})/};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*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:n},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s*(?:\r?\n|\r)(?:[\s\S])*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0},{pattern:/(["'])(?:\\[\s\S]|\$\([^)]+\)|`[^`]+`|(?!\1)[^\\])*\1/,greedy:!0,inside:n}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:n.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|aptitude|apt-cache|apt-get|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|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|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|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|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;|&]|[<>]\()(?:if|then|else|elif|fi|for|while|in|case|esac|function|select|do|done|until)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|break|cd|continue|eval|exec|exit|export|getopts|hash|pwd|readonly|return|shift|test|times|trap|umask|unset|alias|bind|builtin|caller|command|declare|echo|enable|help|let|local|logout|mapfile|printf|read|readarray|source|type|typeset|ulimit|unalias|set|shopt)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:true|false)(?=$|[)\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}};for(var a=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],s=n.variable[1].inside,r=0;r<a.length;r++)s[a[r]]=e.languages.bash[a[r]];e.languages.shell=e.languages.bash}(e)}e.exports=t,t.displayName="bash",t.aliases=["shell"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_basic.55a27376.js b/assets/js/react-syntax-highlighter_languages_refractor_basic.55a27376.js new file mode 100644 index 000000000..b654628fe --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_basic.55a27376.js @@ -0,0 +1,38 @@ +"use strict"; +exports.id = 7504; +exports.ids = [7504]; +exports.modules = { + +/***/ 46241: +/***/ ((module) => { + + + +module.exports = basic +basic.displayName = 'basic' +basic.aliases = [] +function basic(Prism) { + Prism.languages.basic = { + comment: { + pattern: /(?:!|REM\b).+/i, + inside: { + keyword: /^REM/i + } + }, + string: { + pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i, + greedy: true + }, + number: /(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i, + keyword: /\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i, + function: /\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i, + operator: /<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i, + punctuation: /[,;:()]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_basic.75124d16.js b/assets/js/react-syntax-highlighter_languages_refractor_basic.75124d16.js new file mode 100644 index 000000000..071b77e42 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_basic.75124d16.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7504],{6241:E=>{function T(E){E.languages.basic={comment:{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,greedy:!0},number:/(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,function:/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}}E.exports=T,T.displayName="basic",T.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_batch.9e4787e6.js b/assets/js/react-syntax-highlighter_languages_refractor_batch.9e4787e6.js new file mode 100644 index 000000000..a0937b194 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_batch.9e4787e6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[400],{4781:e=>{function r(e){!function(e){var r=/%%?[~:\w]+%?|!\S+!/,t={pattern:/\/[a-z?]+(?=[ :]|$):?|-[a-z]\b|--[a-z-]+\b/im,alias:"attr-name",inside:{punctuation:/:/}},i=/"[^"]*"/,n=/(?:\b|-)\d+\b/;e.languages.batch={comment:[/^::.*/m,{pattern:/((?:^|[&(])[ \t]*)rem\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0}],label:{pattern:/^:.*/m,alias:"property"},command:[{pattern:/((?:^|[&(])[ \t]*)for(?: ?\/[a-z?](?:[ :](?:"[^"]*"|\S+))?)* \S+ in \([^)]+\) do/im,lookbehind:!0,inside:{keyword:/^for\b|\b(?:in|do)\b/i,string:i,parameter:t,variable:r,number:n,punctuation:/[()',]/}},{pattern:/((?:^|[&(])[ \t]*)if(?: ?\/[a-z?](?:[ :](?:"[^"]*"|\S+))?)* (?:not )?(?:cmdextversion \d+|defined \w+|errorlevel \d+|exist \S+|(?:"[^"]*"|\S+)?(?:==| (?:equ|neq|lss|leq|gtr|geq) )(?:"[^"]*"|\S+))/im,lookbehind:!0,inside:{keyword:/^if\b|\b(?:not|cmdextversion|defined|errorlevel|exist)\b/i,string:i,parameter:t,variable:r,number:n,operator:/\^|==|\b(?:equ|neq|lss|leq|gtr|geq)\b/i}},{pattern:/((?:^|[&()])[ \t]*)else\b/im,lookbehind:!0,inside:{keyword:/^else\b/i}},{pattern:/((?:^|[&(])[ \t]*)set(?: ?\/[a-z](?:[ :](?:"[^"]*"|\S+))?)* (?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0,inside:{keyword:/^set\b/i,string:i,parameter:t,variable:[r,/\w+(?=(?:[*\/%+\-&^|]|<<|>>)?=)/],number:n,operator:/[*\/%+\-&^|]=?|<<=?|>>=?|[!~_=]/,punctuation:/[()',]/}},{pattern:/((?:^|[&(])[ \t]*@?)\w+\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im,lookbehind:!0,inside:{keyword:/^\w+\b/i,string:i,parameter:t,label:{pattern:/(^\s*):\S+/m,lookbehind:!0,alias:"property"},variable:r,number:n,operator:/\^/}}],operator:/[&@]/,punctuation:/[()']/}}(e)}e.exports=r,r.displayName="batch",r.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_batch.abbe6e59.js b/assets/js/react-syntax-highlighter_languages_refractor_batch.abbe6e59.js new file mode 100644 index 000000000..09910ffab --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_batch.abbe6e59.js @@ -0,0 +1,116 @@ +"use strict"; +exports.id = 400; +exports.ids = [400]; +exports.modules = { + +/***/ 94781: +/***/ ((module) => { + + + +module.exports = batch +batch.displayName = 'batch' +batch.aliases = [] +function batch(Prism) { + ;(function(Prism) { + var variable = /%%?[~:\w]+%?|!\S+!/ + var parameter = { + pattern: /\/[a-z?]+(?=[ :]|$):?|-[a-z]\b|--[a-z-]+\b/im, + alias: 'attr-name', + inside: { + punctuation: /:/ + } + } + var string = /"[^"]*"/ + var number = /(?:\b|-)\d+\b/ + Prism.languages.batch = { + comment: [ + /^::.*/m, + { + pattern: /((?:^|[&(])[ \t]*)rem\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im, + lookbehind: true + } + ], + label: { + pattern: /^:.*/m, + alias: 'property' + }, + command: [ + { + // FOR command + pattern: /((?:^|[&(])[ \t]*)for(?: ?\/[a-z?](?:[ :](?:"[^"]*"|\S+))?)* \S+ in \([^)]+\) do/im, + lookbehind: true, + inside: { + keyword: /^for\b|\b(?:in|do)\b/i, + string: string, + parameter: parameter, + variable: variable, + number: number, + punctuation: /[()',]/ + } + }, + { + // IF command + pattern: /((?:^|[&(])[ \t]*)if(?: ?\/[a-z?](?:[ :](?:"[^"]*"|\S+))?)* (?:not )?(?:cmdextversion \d+|defined \w+|errorlevel \d+|exist \S+|(?:"[^"]*"|\S+)?(?:==| (?:equ|neq|lss|leq|gtr|geq) )(?:"[^"]*"|\S+))/im, + lookbehind: true, + inside: { + keyword: /^if\b|\b(?:not|cmdextversion|defined|errorlevel|exist)\b/i, + string: string, + parameter: parameter, + variable: variable, + number: number, + operator: /\^|==|\b(?:equ|neq|lss|leq|gtr|geq)\b/i + } + }, + { + // ELSE command + pattern: /((?:^|[&()])[ \t]*)else\b/im, + lookbehind: true, + inside: { + keyword: /^else\b/i + } + }, + { + // SET command + pattern: /((?:^|[&(])[ \t]*)set(?: ?\/[a-z](?:[ :](?:"[^"]*"|\S+))?)* (?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im, + lookbehind: true, + inside: { + keyword: /^set\b/i, + string: string, + parameter: parameter, + variable: [variable, /\w+(?=(?:[*\/%+\-&^|]|<<|>>)?=)/], + number: number, + operator: /[*\/%+\-&^|]=?|<<=?|>>=?|[!~_=]/, + punctuation: /[()',]/ + } + }, + { + // Other commands + pattern: /((?:^|[&(])[ \t]*@?)\w+\b(?:[^^&)\r\n]|\^(?:\r\n|[\s\S]))*/im, + lookbehind: true, + inside: { + keyword: /^\w+\b/i, + string: string, + parameter: parameter, + label: { + pattern: /(^\s*):\S+/m, + lookbehind: true, + alias: 'property' + }, + variable: variable, + number: number, + operator: /\^/ + } + } + ], + operator: /[&@]/, + punctuation: /[()']/ + } + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_bison.0792de46.js b/assets/js/react-syntax-highlighter_languages_refractor_bison.0792de46.js new file mode 100644 index 000000000..1ab82383a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_bison.0792de46.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[948,8950],{2890:(e,n,a)=>{var i=a(5806);function t(e){e.register(i),e.languages.bison=e.languages.extend("c",{}),e.languages.insertBefore("bison","comment",{bison:{pattern:/^[\s\S]*?%%[\s\S]*?%%/,inside:{c:{pattern:/%\{[\s\S]*?%\}|\{(?:\{[^}]*\}|[^{}])*\}/,inside:{delimiter:{pattern:/^%?\{|%?\}$/,alias:"punctuation"},"bison-variable":{pattern:/[$@](?:<[^\s>]+>)?[\w$]+/,alias:"variable",inside:{punctuation:/<|>/}},rest:e.languages.c}},comment:e.languages.c.comment,string:e.languages.c.string,property:/\S+(?=:)/,keyword:/%\w+/,number:{pattern:/(^|[^@])\b(?:0x[\da-f]+|\d+)/i,lookbehind:!0},punctuation:/%[%?]|[|:;\[\]<>]/}}})}e.exports=t,t.displayName="bison",t.aliases=[]},5806:e=>{function n(e){e.languages.c=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),e.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete e.languages.c.boolean}e.exports=n,n.displayName="c",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_bison.33059b26.js b/assets/js/react-syntax-highlighter_languages_refractor_bison.33059b26.js new file mode 100644 index 000000000..6ef88cd87 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_bison.33059b26.js @@ -0,0 +1,108 @@ +"use strict"; +exports.id = 948; +exports.ids = [948,8950]; +exports.modules = { + +/***/ 62890: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +module.exports = bison +bison.displayName = 'bison' +bison.aliases = [] +function bison(Prism) { + Prism.register(refractorC) + Prism.languages.bison = Prism.languages.extend('c', {}) + Prism.languages.insertBefore('bison', 'comment', { + bison: { + // This should match all the beginning of the file + // including the prologue(s), the bison declarations and + // the grammar rules. + pattern: /^[\s\S]*?%%[\s\S]*?%%/, + inside: { + c: { + // Allow for one level of nested braces + pattern: /%\{[\s\S]*?%\}|\{(?:\{[^}]*\}|[^{}])*\}/, + inside: { + delimiter: { + pattern: /^%?\{|%?\}$/, + alias: 'punctuation' + }, + 'bison-variable': { + pattern: /[$@](?:<[^\s>]+>)?[\w$]+/, + alias: 'variable', + inside: { + punctuation: /<|>/ + } + }, + rest: Prism.languages.c + } + }, + comment: Prism.languages.c.comment, + string: Prism.languages.c.string, + property: /\S+(?=:)/, + keyword: /%\w+/, + number: { + pattern: /(^|[^@])\b(?:0x[\da-f]+|\d+)/i, + lookbehind: true + }, + punctuation: /%[%?]|[|:;\[\]<>]/ + } + } + }) +} + + +/***/ }), + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_brainfuck.0bbe8db6.js b/assets/js/react-syntax-highlighter_languages_refractor_brainfuck.0bbe8db6.js new file mode 100644 index 000000000..930940bb1 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_brainfuck.0bbe8db6.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 5539; +exports.ids = [5539]; +exports.modules = { + +/***/ 61321: +/***/ ((module) => { + + + +module.exports = brainfuck +brainfuck.displayName = 'brainfuck' +brainfuck.aliases = [] +function brainfuck(Prism) { + Prism.languages.brainfuck = { + pointer: { + pattern: /<|>/, + alias: 'keyword' + }, + increment: { + pattern: /\+/, + alias: 'inserted' + }, + decrement: { + pattern: /-/, + alias: 'deleted' + }, + branching: { + pattern: /\[|\]/, + alias: 'important' + }, + operator: /[.,]/, + comment: /\S+/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_brainfuck.5a05e7db.js b/assets/js/react-syntax-highlighter_languages_refractor_brainfuck.5a05e7db.js new file mode 100644 index 000000000..2801daa8a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_brainfuck.5a05e7db.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5539],{1321:e=>{function a(e){e.languages.brainfuck={pointer:{pattern:/<|>/,alias:"keyword"},increment:{pattern:/\+/,alias:"inserted"},decrement:{pattern:/-/,alias:"deleted"},branching:{pattern:/\[|\]/,alias:"important"},operator:/[.,]/,comment:/\S+/}}e.exports=a,a.displayName="brainfuck",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_bro.0dfbf8b3.js b/assets/js/react-syntax-highlighter_languages_refractor_bro.0dfbf8b3.js new file mode 100644 index 000000000..9be09f6fe --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_bro.0dfbf8b3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3694],{741:e=>{function t(e){e.languages.bro={comment:{pattern:/(^|[^\\$])#.*/,lookbehind:!0,inside:{italic:/\b(?:TODO|FIXME|XXX)\b/}},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},boolean:/\b[TF]\b/,function:{pattern:/(?:function|hook|event) \w+(?:::\w+)?/,inside:{keyword:/^(?:function|hook|event)/}},variable:{pattern:/(?:global|local) \w+/i,inside:{keyword:/(?:global|local)/}},builtin:/(?:@(?:load(?:-(?:sigs|plugin))?|unload|prefixes|ifn?def|else|(?:end)?if|DIR|FILENAME))|(?:&?(?:redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|group|error_handler|type_column))/,constant:{pattern:/const \w+/i,inside:{keyword:/const/}},keyword:/\b(?:break|next|continue|alarm|using|of|add|delete|export|print|return|schedule|when|timeout|addr|any|bool|count|double|enum|file|int|interval|pattern|opaque|port|record|set|string|subnet|table|time|vector|for|if|else|in|module|function)\b/,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&|\|\|?|\?|\*|\/|~|\^|%/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,punctuation:/[{}[\];(),.:]/}}e.exports=t,t.displayName="bro",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_bro.2c3ef23e.js b/assets/js/react-syntax-highlighter_languages_refractor_bro.2c3ef23e.js new file mode 100644 index 000000000..cc25b632f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_bro.2c3ef23e.js @@ -0,0 +1,58 @@ +"use strict"; +exports.id = 3694; +exports.ids = [3694]; +exports.modules = { + +/***/ 90741: +/***/ ((module) => { + + + +module.exports = bro +bro.displayName = 'bro' +bro.aliases = [] +function bro(Prism) { + Prism.languages.bro = { + comment: { + pattern: /(^|[^\\$])#.*/, + lookbehind: true, + inside: { + italic: /\b(?:TODO|FIXME|XXX)\b/ + } + }, + string: { + pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + boolean: /\b[TF]\b/, + function: { + pattern: /(?:function|hook|event) \w+(?:::\w+)?/, + inside: { + keyword: /^(?:function|hook|event)/ + } + }, + variable: { + pattern: /(?:global|local) \w+/i, + inside: { + keyword: /(?:global|local)/ + } + }, + builtin: /(?:@(?:load(?:-(?:sigs|plugin))?|unload|prefixes|ifn?def|else|(?:end)?if|DIR|FILENAME))|(?:&?(?:redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|group|error_handler|type_column))/, + constant: { + pattern: /const \w+/i, + inside: { + keyword: /const/ + } + }, + keyword: /\b(?:break|next|continue|alarm|using|of|add|delete|export|print|return|schedule|when|timeout|addr|any|bool|count|double|enum|file|int|interval|pattern|opaque|port|record|set|string|subnet|table|time|vector|for|if|else|in|module|function)\b/, + operator: /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&|\|\|?|\?|\*|\/|~|\^|%/, + number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i, + punctuation: /[{}[\];(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_c.1e90487b.js b/assets/js/react-syntax-highlighter_languages_refractor_c.1e90487b.js new file mode 100644 index 000000000..8a8415644 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_c.1e90487b.js @@ -0,0 +1,55 @@ +"use strict"; +exports.id = 8950; +exports.ids = [8950]; +exports.modules = { + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_c.aeed971b.js b/assets/js/react-syntax-highlighter_languages_refractor_c.aeed971b.js new file mode 100644 index 000000000..aa8806abe --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_c.aeed971b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8950],{5806:e=>{function n(e){e.languages.c=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),e.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete e.languages.c.boolean}e.exports=n,n.displayName="c",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_clike.1f240a96.js b/assets/js/react-syntax-highlighter_languages_refractor_clike.1f240a96.js new file mode 100644 index 000000000..c24d3e945 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_clike.1f240a96.js @@ -0,0 +1,51 @@ +"use strict"; +exports.id = 131; +exports.ids = [131]; +exports.modules = { + +/***/ 29726: +/***/ ((module) => { + + + +module.exports = clike +clike.displayName = 'clike' +clike.aliases = [] +function clike(Prism) { + Prism.languages.clike = { + comment: [ + { + pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/, + lookbehind: true + }, + { + pattern: /(^|[^\\:])\/\/.*/, + lookbehind: true, + greedy: true + } + ], + string: { + pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + 'class-name': { + pattern: /((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i, + lookbehind: true, + inside: { + punctuation: /[.\\]/ + } + }, + keyword: /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/, + boolean: /\b(?:true|false)\b/, + function: /\w+(?=\()/, + number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i, + operator: /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/, + punctuation: /[{}[\];(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_clike.96409169.js b/assets/js/react-syntax-highlighter_languages_refractor_clike.96409169.js new file mode 100644 index 000000000..c6ccdbb34 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_clike.96409169.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[131],{9726:e=>{function n(e){e.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/}}e.exports=n,n.displayName="clike",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_clojure.828ab4e9.js b/assets/js/react-syntax-highlighter_languages_refractor_clojure.828ab4e9.js new file mode 100644 index 000000000..fc84a80d2 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_clojure.828ab4e9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7966],{2849:e=>{function t(e){e.languages.clojure={comment:/;+.*/,string:/"(?:\\.|[^\\"\r\n])*"/,operator:/(?:::|[:|'])\b[a-z][\w*+!?-]*\b/i,keyword:{pattern:/([^\w+*'?-])(?:def|if|do|let|\.\.|quote|var|->>|->|fn|loop|recur|throw|try|monitor-enter|\.|new|set!|def\-|defn|defn\-|defmacro|defmulti|defmethod|defstruct|defonce|declare|definline|definterface|defprotocol|==|defrecord|>=|deftype|<=|defproject|ns|\*|\+|\-|\/|<|=|>|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|conj|cons|constantly|cond|if-not|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|deref|difference|disj|dissoc|distinct|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|for|fnseq|frest|gensym|get-proxy-class|get|hash-map|hash-set|identical\?|identity|if-let|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|line-seq|list\*|list|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|time|to-array|to-array-2d|tree-seq|true\?|union|up|update-proxy|val|vals|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[^\w+*'?-])/,lookbehind:!0},boolean:/\b(?:true|false|nil)\b/,number:/\b[0-9A-Fa-f]+\b/,punctuation:/[{}\[\](),]/}}e.exports=t,t.displayName="clojure",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_clojure.b16d951e.js b/assets/js/react-syntax-highlighter_languages_refractor_clojure.b16d951e.js new file mode 100644 index 000000000..bcf2bf84d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_clojure.b16d951e.js @@ -0,0 +1,35 @@ +"use strict"; +exports.id = 7966; +exports.ids = [7966]; +exports.modules = { + +/***/ 62849: +/***/ ((module) => { + + + +module.exports = clojure +clojure.displayName = 'clojure' +clojure.aliases = [] +function clojure(Prism) { + // Copied from https://github.com/jeluard/prism-clojure + Prism.languages.clojure = { + comment: /;+.*/, + string: /"(?:\\.|[^\\"\r\n])*"/, + operator: /(?:::|[:|'])\b[a-z][\w*+!?-]*\b/i, + //used for symbols and keywords + keyword: { + pattern: /([^\w+*'?-])(?:def|if|do|let|\.\.|quote|var|->>|->|fn|loop|recur|throw|try|monitor-enter|\.|new|set!|def\-|defn|defn\-|defmacro|defmulti|defmethod|defstruct|defonce|declare|definline|definterface|defprotocol|==|defrecord|>=|deftype|<=|defproject|ns|\*|\+|\-|\/|<|=|>|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|conj|cons|constantly|cond|if-not|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|deref|difference|disj|dissoc|distinct|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|for|fnseq|frest|gensym|get-proxy-class|get|hash-map|hash-set|identical\?|identity|if-let|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|line-seq|list\*|list|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|time|to-array|to-array-2d|tree-seq|true\?|union|up|update-proxy|val|vals|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[^\w+*'?-])/, + lookbehind: true + }, + boolean: /\b(?:true|false|nil)\b/, + number: /\b[0-9A-Fa-f]+\b/, + punctuation: /[{}\[\](),]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_coffeescript.a9bf256f.js b/assets/js/react-syntax-highlighter_languages_refractor_coffeescript.a9bf256f.js new file mode 100644 index 000000000..fdd619a42 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_coffeescript.a9bf256f.js @@ -0,0 +1,101 @@ +"use strict"; +exports.id = 6118; +exports.ids = [6118]; +exports.modules = { + +/***/ 43576: +/***/ ((module) => { + + + +module.exports = coffeescript +coffeescript.displayName = 'coffeescript' +coffeescript.aliases = ['coffee'] +function coffeescript(Prism) { + ;(function(Prism) { + // Ignore comments starting with { to privilege string interpolation highlighting + var comment = /#(?!\{).+/, + interpolation = { + pattern: /#\{[^}]+\}/, + alias: 'variable' + } + Prism.languages.coffeescript = Prism.languages.extend('javascript', { + comment: comment, + string: [ + // Strings are multiline + { + pattern: /'(?:\\[\s\S]|[^\\'])*'/, + greedy: true + }, + { + // Strings are multiline + pattern: /"(?:\\[\s\S]|[^\\"])*"/, + greedy: true, + inside: { + interpolation: interpolation + } + } + ], + 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' + } + }) + Prism.languages.insertBefore('coffeescript', 'comment', { + 'multiline-comment': { + pattern: /###[\s\S]+?###/, + alias: 'comment' + }, + // Block regexp can contain comments and interpolation + 'block-regex': { + pattern: /\/{3}[\s\S]*?\/{3}/, + alias: 'regex', + inside: { + comment: comment, + interpolation: interpolation + } + } + }) + Prism.languages.insertBefore('coffeescript', 'string', { + 'inline-javascript': { + pattern: /`(?:\\[\s\S]|[^\\`])*`/, + inside: { + delimiter: { + pattern: /^`|`$/, + alias: 'punctuation' + }, + rest: Prism.languages.javascript + } + }, + // Block strings + 'multiline-string': [ + { + pattern: /'''[\s\S]*?'''/, + greedy: true, + alias: 'string' + }, + { + pattern: /"""[\s\S]*?"""/, + greedy: true, + alias: 'string', + inside: { + interpolation: interpolation + } + } + ] + }) + Prism.languages.insertBefore('coffeescript', 'keyword', { + // Object property + property: /(?!\d)\w+(?=\s*:(?!:))/ + }) + delete Prism.languages.coffeescript['template-string'] + Prism.languages.coffee = Prism.languages.coffeescript + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_coffeescript.b32bf02f.js b/assets/js/react-syntax-highlighter_languages_refractor_coffeescript.b32bf02f.js new file mode 100644 index 000000000..c21d39443 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_coffeescript.b32bf02f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6118],{3576:e=>{function t(e){!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"},rest: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}(e)}e.exports=t,t.displayName="coffeescript",t.aliases=["coffee"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_cpp.95d1f249.js b/assets/js/react-syntax-highlighter_languages_refractor_cpp.95d1f249.js new file mode 100644 index 000000000..33907772d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_cpp.95d1f249.js @@ -0,0 +1,90 @@ +"use strict"; +exports.id = 9692; +exports.ids = [9692,8950]; +exports.modules = { + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }), + +/***/ 80096: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +module.exports = cpp +cpp.displayName = 'cpp' +cpp.aliases = [] +function cpp(Prism) { + Prism.register(refractorC) + Prism.languages.cpp = Prism.languages.extend('c', { + 'class-name': { + pattern: /(\b(?:class|enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/, + number: { + pattern: /(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i, + greedy: true + }, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/, + boolean: /\b(?:true|false)\b/ + }) + Prism.languages.insertBefore('cpp', 'string', { + 'raw-string': { + pattern: /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/, + alias: 'string', + greedy: true + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_cpp.c40cbeba.js b/assets/js/react-syntax-highlighter_languages_refractor_cpp.c40cbeba.js new file mode 100644 index 000000000..c29ac73cf --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_cpp.c40cbeba.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9692,8950],{5806:e=>{function t(e){e.languages.c=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),e.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete e.languages.c.boolean}e.exports=t,t.displayName="c",t.aliases=[]},96:(e,t,n)=>{var a=n(5806);function i(e){e.register(a),e.languages.cpp=e.languages.extend("c",{"class-name":{pattern:/(\b(?:class|enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i,greedy:!0},operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:true|false)\b/}),e.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}})}e.exports=i,i.displayName="cpp",i.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_crystal.37d79a34.js b/assets/js/react-syntax-highlighter_languages_refractor_crystal.37d79a34.js new file mode 100644 index 000000000..019622f21 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_crystal.37d79a34.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1130,369],{9176:(e,n,t)=>{var i=t(6939);function a(e){e.register(i),function(e){e.languages.crystal=e.languages.extend("ruby",{keyword:[/\b(?:abstract|alias|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|rescue|return|require|select|self|sizeof|struct|super|then|type|typeof|uninitialized|union|unless|until|when|while|with|yield|__DIR__|__END_LINE__|__FILE__|__LINE__)\b/,{pattern:/(\.\s*)(?:is_a|responds_to)\?/,lookbehind:!0}],number:/\b(?:0b[01_]*[01]|0o[0-7_]*[0-7]|0x[\da-fA-F_]*[\da-fA-F]|(?:\d(?:[\d_]*\d)?)(?:\.[\d_]*\d)?(?:[eE][+-]?[\d_]*\d)?)(?:_(?:[uif](?:8|16|32|64))?)?\b/}),e.languages.insertBefore("crystal","string",{attribute:{pattern:/@\[.+?\]/,alias:"attr-name",inside:{delimiter:{pattern:/^@\[|\]$/,alias:"tag"},rest:e.languages.crystal}},expansion:[{pattern:/\{\{.+?\}\}/,inside:{delimiter:{pattern:/^\{\{|\}\}$/,alias:"tag"},rest:e.languages.crystal}},{pattern:/\{%.+?%\}/,inside:{delimiter:{pattern:/^\{%|%\}$/,alias:"tag"},rest:e.languages.crystal}}]})}(e)}e.exports=a,a.displayName="crystal",a.aliases=[]},6939:e=>{function n(e){!function(e){e.languages.ruby=e.languages.extend("clike",{comment:[/#.*/,{pattern:/^=begin\s[\s\S]*?^=end/m,greedy:!0}],keyword:/\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var n={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:e.languages.ruby}};delete e.languages.ruby.function,e.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,lookbehind:!0},"method-definition":{pattern:/(\bdef\s+)[\w.]+/,lookbehind:!0,inside:{function:/\w+$/,rest:e.languages.ruby}}}),e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z]\w*(?:[?!]|\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0,inside:{interpolation:n}},{pattern:/("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:n}}],e.languages.rb=e.languages.ruby}(e)}e.exports=n,n.displayName="ruby",n.aliases=["rb"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_crystal.e19b00af.js b/assets/js/react-syntax-highlighter_languages_refractor_crystal.e19b00af.js new file mode 100644 index 000000000..0c4e29a0a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_crystal.e19b00af.js @@ -0,0 +1,220 @@ +"use strict"; +exports.id = 1130; +exports.ids = [1130,369]; +exports.modules = { + +/***/ 99176: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorRuby = __webpack_require__(56939) +module.exports = crystal +crystal.displayName = 'crystal' +crystal.aliases = [] +function crystal(Prism) { + Prism.register(refractorRuby) + ;(function(Prism) { + Prism.languages.crystal = Prism.languages.extend('ruby', { + keyword: [ + /\b(?:abstract|alias|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|rescue|return|require|select|self|sizeof|struct|super|then|type|typeof|uninitialized|union|unless|until|when|while|with|yield|__DIR__|__END_LINE__|__FILE__|__LINE__)\b/, + { + pattern: /(\.\s*)(?:is_a|responds_to)\?/, + lookbehind: true + } + ], + number: /\b(?:0b[01_]*[01]|0o[0-7_]*[0-7]|0x[\da-fA-F_]*[\da-fA-F]|(?:\d(?:[\d_]*\d)?)(?:\.[\d_]*\d)?(?:[eE][+-]?[\d_]*\d)?)(?:_(?:[uif](?:8|16|32|64))?)?\b/ + }) + Prism.languages.insertBefore('crystal', 'string', { + attribute: { + pattern: /@\[.+?\]/, + alias: 'attr-name', + inside: { + delimiter: { + pattern: /^@\[|\]$/, + alias: 'tag' + }, + rest: Prism.languages.crystal + } + }, + expansion: [ + { + pattern: /\{\{.+?\}\}/, + inside: { + delimiter: { + pattern: /^\{\{|\}\}$/, + alias: 'tag' + }, + rest: Prism.languages.crystal + } + }, + { + pattern: /\{%.+?%\}/, + inside: { + delimiter: { + pattern: /^\{%|%\}$/, + alias: 'tag' + }, + rest: Prism.languages.crystal + } + } + ] + }) + })(Prism) +} + + +/***/ }), + +/***/ 56939: +/***/ ((module) => { + + + +module.exports = ruby +ruby.displayName = 'ruby' +ruby.aliases = ['rb'] +function ruby(Prism) { + /** + * Original by Samuel Flores + * + * Adds the following new token classes: + * constant, builtin, variable, symbol, regex + */ + ;(function(Prism) { + Prism.languages.ruby = Prism.languages.extend('clike', { + comment: [ + /#.*/, + { + pattern: /^=begin\s[\s\S]*?^=end/m, + greedy: true + } + ], + keyword: /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/ + }) + var interpolation = { + pattern: /#\{[^}]+\}/, + inside: { + delimiter: { + pattern: /^#\{|\}$/, + alias: 'tag' + }, + rest: Prism.languages.ruby + } + } + delete Prism.languages.ruby.function + Prism.languages.insertBefore('ruby', 'keyword', { + regex: [ + { + pattern: /%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + // Here we need to specifically allow interpolation + pattern: /%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/, + lookbehind: true, + greedy: true + } + ], + variable: /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/, + symbol: { + pattern: /(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/, + lookbehind: true + }, + 'method-definition': { + pattern: /(\bdef\s+)[\w.]+/, + lookbehind: true, + inside: { + function: /\w+$/, + rest: Prism.languages.ruby + } + } + }) + Prism.languages.insertBefore('ruby', 'number', { + builtin: /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/, + constant: /\b[A-Z]\w*(?:[?!]|\b)/ + }) + Prism.languages.ruby.string = [ + { + pattern: /%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + // Here we need to specifically allow interpolation + pattern: /%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true, + inside: { + interpolation: interpolation + } + } + ] + Prism.languages.rb = Prism.languages.ruby + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_csharp.8031c1e6.js b/assets/js/react-syntax-highlighter_languages_refractor_csharp.8031c1e6.js new file mode 100644 index 000000000..47c772d67 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_csharp.8031c1e6.js @@ -0,0 +1,100 @@ +"use strict"; +exports.id = 3318; +exports.ids = [3318]; +exports.modules = { + +/***/ 61958: +/***/ ((module) => { + + + +module.exports = csharp +csharp.displayName = 'csharp' +csharp.aliases = ['dotnet', 'cs'] +function csharp(Prism) { + Prism.languages.csharp = Prism.languages.extend('clike', { + keyword: /\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/, + string: [ + { + pattern: /@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/, + greedy: true + }, + { + pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/, + greedy: true + } + ], + 'class-name': [ + { + // (Foo bar, Bar baz) + pattern: /\b[A-Z]\w*(?:\.\w+)*\b(?=\s+\w+)/, + inside: { + punctuation: /\./ + } + }, + { + // [Foo] + pattern: /(\[)[A-Z]\w*(?:\.\w+)*\b/, + lookbehind: true, + inside: { + punctuation: /\./ + } + }, + { + // class Foo : Bar + pattern: /(\b(?:class|interface)\s+[A-Z]\w*(?:\.\w+)*\s*:\s*)[A-Z]\w*(?:\.\w+)*\b/, + lookbehind: true, + inside: { + punctuation: /\./ + } + }, + { + // class Foo + pattern: /((?:\b(?:class|interface|new)\s+)|(?:catch\s+\())[A-Z]\w*(?:\.\w+)*\b/, + lookbehind: true, + inside: { + punctuation: /\./ + } + } + ], + number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i, + operator: />>=?|<<=?|[-=]>|([-+&|?])\1|~|[-+*/%&|^!=<>]=?/, + punctuation: /\?\.?|::|[{}[\];(),.:]/ + }) + Prism.languages.insertBefore('csharp', 'class-name', { + 'generic-method': { + pattern: /\w+\s*<[^>\r\n]+?>\s*(?=\()/, + inside: { + function: /^\w+/, + 'class-name': { + pattern: /\b[A-Z]\w*(?:\.\w+)*\b/, + inside: { + punctuation: /\./ + } + }, + keyword: Prism.languages.csharp.keyword, + punctuation: /[<>(),.:]/ + } + }, + preprocessor: { + pattern: /(^\s*)#.*/m, + lookbehind: true, + alias: 'property', + inside: { + // highlight preprocessor directives as keywords + directive: { + pattern: /(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/, + lookbehind: true, + alias: 'keyword' + } + } + } + }) + Prism.languages.dotnet = Prism.languages.cs = Prism.languages.csharp +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_csharp.f1b58c0f.js b/assets/js/react-syntax-highlighter_languages_refractor_csharp.f1b58c0f.js new file mode 100644 index 000000000..03aab312d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_csharp.f1b58c0f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3318],{1958:e=>{function a(e){e.languages.csharp=e.languages.extend("clike",{keyword:/\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/,string:[{pattern:/@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/,greedy:!0}],"class-name":[{pattern:/\b[A-Z]\w*(?:\.\w+)*\b(?=\s+\w+)/,inside:{punctuation:/\./}},{pattern:/(\[)[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}},{pattern:/(\b(?:class|interface)\s+[A-Z]\w*(?:\.\w+)*\s*:\s*)[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}},{pattern:/((?:\b(?:class|interface|new)\s+)|(?:catch\s+\())[A-Z]\w*(?:\.\w+)*\b/,lookbehind:!0,inside:{punctuation:/\./}}],number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i,operator:/>>=?|<<=?|[-=]>|([-+&|?])\1|~|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),e.languages.insertBefore("csharp","class-name",{"generic-method":{pattern:/\w+\s*<[^>\r\n]+?>\s*(?=\()/,inside:{function:/^\w+/,"class-name":{pattern:/\b[A-Z]\w*(?:\.\w+)*\b/,inside:{punctuation:/\./}},keyword:e.languages.csharp.keyword,punctuation:/[<>(),.:]/}},preprocessor:{pattern:/(^\s*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}}),e.languages.dotnet=e.languages.cs=e.languages.csharp}e.exports=a,a.displayName="csharp",a.aliases=["dotnet","cs"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_csp.4a54fe69.js b/assets/js/react-syntax-highlighter_languages_refractor_csp.4a54fe69.js new file mode 100644 index 000000000..a47c5e306 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_csp.4a54fe69.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5299],{5447:e=>{function s(e){e.languages.csp={directive:{pattern:/\b(?:(?:base-uri|form-action|frame-ancestors|plugin-types|referrer|reflected-xss|report-to|report-uri|require-sri-for|sandbox) |(?:block-all-mixed-content|disown-opener|upgrade-insecure-requests)(?: |;)|(?:child|connect|default|font|frame|img|manifest|media|object|script|style|worker)-src )/i,alias:"keyword"},safe:{pattern:/'(?:self|none|strict-dynamic|(?:nonce-|sha(?:256|384|512)-)[a-zA-Z\d+=/]+)'/,alias:"selector"},unsafe:{pattern:/(?:'unsafe-inline'|'unsafe-eval'|'unsafe-hashed-attributes'|\*)/,alias:"function"}}}e.exports=s,s.displayName="csp",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_csp.f5fd965a.js b/assets/js/react-syntax-highlighter_languages_refractor_csp.f5fd965a.js new file mode 100644 index 000000000..02accb887 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_csp.f5fd965a.js @@ -0,0 +1,45 @@ +"use strict"; +exports.id = 5299; +exports.ids = [5299]; +exports.modules = { + +/***/ 65447: +/***/ ((module) => { + + + +module.exports = csp +csp.displayName = 'csp' +csp.aliases = [] +function csp(Prism) { + /** + * Original by Scott Helme. + * + * Reference: https://scotthelme.co.uk/csp-cheat-sheet/ + * + * Supports the following: + * - CSP Level 1 + * - CSP Level 2 + * - CSP Level 3 + */ + Prism.languages.csp = { + directive: { + pattern: /\b(?:(?:base-uri|form-action|frame-ancestors|plugin-types|referrer|reflected-xss|report-to|report-uri|require-sri-for|sandbox) |(?:block-all-mixed-content|disown-opener|upgrade-insecure-requests)(?: |;)|(?:child|connect|default|font|frame|img|manifest|media|object|script|style|worker)-src )/i, + alias: 'keyword' + }, + safe: { + pattern: /'(?:self|none|strict-dynamic|(?:nonce-|sha(?:256|384|512)-)[a-zA-Z\d+=/]+)'/, + alias: 'selector' + }, + unsafe: { + pattern: /(?:'unsafe-inline'|'unsafe-eval'|'unsafe-hashed-attributes'|\*)/, + alias: 'function' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_css.7c5d7655.js b/assets/js/react-syntax-highlighter_languages_refractor_css.7c5d7655.js new file mode 100644 index 000000000..37f84fd99 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_css.7c5d7655.js @@ -0,0 +1,78 @@ +"use strict"; +exports.id = 5008; +exports.ids = [5008]; +exports.modules = { + +/***/ 12049: +/***/ ((module) => { + + + +module.exports = css +css.displayName = 'css' +css.aliases = [] +function css(Prism) { + ;(function(Prism) { + var string = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ + Prism.languages.css = { + comment: /\/\*[\s\S]*?\*\//, + atrule: { + pattern: /@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/, + inside: { + rule: /@[\w-]+/ // See rest below + } + }, + url: { + pattern: RegExp('url\\((?:' + string.source + '|[^\n\r()]*)\\)', 'i'), + inside: { + function: /^url/i, + punctuation: /^\(|\)$/ + } + }, + selector: RegExp( + '[^{}\\s](?:[^{};"\']|' + string.source + ')*?(?=\\s*\\{)' + ), + string: { + pattern: string, + greedy: true + }, + property: /[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i, + important: /!important\b/i, + function: /[-a-z0-9]+(?=\()/i, + punctuation: /[(){};:,]/ + } + Prism.languages.css['atrule'].inside.rest = Prism.languages.css + var markup = Prism.languages.markup + if (markup) { + markup.tag.addInlined('style', 'css') + Prism.languages.insertBefore( + 'inside', + 'attr-value', + { + 'style-attr': { + pattern: /\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i, + inside: { + 'attr-name': { + pattern: /^\s*style/i, + inside: markup.tag.inside + }, + punctuation: /^\s*=\s*['"]|['"]\s*$/, + 'attr-value': { + pattern: /.+/i, + inside: Prism.languages.css + } + }, + alias: 'language-css' + } + }, + markup.tag + ) + } + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_css.b71c0003.js b/assets/js/react-syntax-highlighter_languages_refractor_css.b71c0003.js new file mode 100644 index 000000000..053dd9e63 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_css.b71c0003.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5008],{2049:s=>{function e(s){!function(s){var e=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;s.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,inside:{rule:/@[\w-]+/}},url:{pattern:RegExp("url\\((?:"+e.source+"|[^\n\r()]*)\\)","i"),inside:{function:/^url/i,punctuation:/^\(|\)$/}},selector:RegExp("[^{}\\s](?:[^{};\"']|"+e.source+")*?(?=\\s*\\{)"),string:{pattern:e,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},s.languages.css.atrule.inside.rest=s.languages.css;var t=s.languages.markup;t&&(t.tag.addInlined("style","css"),s.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:t.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:s.languages.css}},alias:"language-css"}},t.tag))}(s)}s.exports=e,e.displayName="css",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_cssExtras.acbc8b3c.js b/assets/js/react-syntax-highlighter_languages_refractor_cssExtras.acbc8b3c.js new file mode 100644 index 000000000..5a58c80aa --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_cssExtras.acbc8b3c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7475],{4762:e=>{function s(e){e.languages.css.selector={pattern:e.languages.css.selector,inside:{"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-:.\w]+/,id:/#[-:.\w]+/,attribute:{pattern:/\[(?:[^[\]"']|("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1)*\]/,greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)[-*\w\xA0-\uFFFF]*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},attribute:{pattern:/^(\s*)[-\w\xA0-\uFFFF]+/,lookbehind:!0},value:[/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,{pattern:/(=\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}],punctuation:/[()]/}},e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*/i,lookbehind:!0}}),e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:/#[\da-f]{3,8}/i,entity:/\\[\da-f]{1,8}/i,unit:{pattern:/(\d)(?:%|[a-z]+)/,lookbehind:!0},number:/-?[\d.]+/})}e.exports=s,s.displayName="cssExtras",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_cssExtras.b894a917.js b/assets/js/react-syntax-highlighter_languages_refractor_cssExtras.b894a917.js new file mode 100644 index 000000000..a030c107a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_cssExtras.b894a917.js @@ -0,0 +1,95 @@ +"use strict"; +exports.id = 7475; +exports.ids = [7475]; +exports.modules = { + +/***/ 4762: +/***/ ((module) => { + + + +module.exports = cssExtras +cssExtras.displayName = 'cssExtras' +cssExtras.aliases = [] +function cssExtras(Prism) { + Prism.languages.css.selector = { + pattern: Prism.languages.css.selector, + inside: { + 'pseudo-element': /:(?:after|before|first-letter|first-line|selection)|::[-\w]+/, + 'pseudo-class': /:[-\w]+/, + class: /\.[-:.\w]+/, + id: /#[-:.\w]+/, + attribute: { + pattern: /\[(?:[^[\]"']|("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1)*\]/, + greedy: true, + inside: { + punctuation: /^\[|\]$/, + 'case-sensitivity': { + pattern: /(\s)[si]$/i, + lookbehind: true, + alias: 'keyword' + }, + namespace: { + pattern: /^(\s*)[-*\w\xA0-\uFFFF]*\|(?!=)/, + lookbehind: true, + inside: { + punctuation: /\|$/ + } + }, + attribute: { + pattern: /^(\s*)[-\w\xA0-\uFFFF]+/, + lookbehind: true + }, + value: [ + /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + { + pattern: /(=\s*)[-\w\xA0-\uFFFF]+(?=\s*$)/, + lookbehind: true + } + ], + operator: /[|~*^$]?=/ + } + }, + 'n-th': [ + { + pattern: /(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/, + lookbehind: true, + inside: { + number: /[\dn]+/, + operator: /[+-]/ + } + }, + { + pattern: /(\(\s*)(?:even|odd)(?=\s*\))/i, + lookbehind: true + } + ], + punctuation: /[()]/ + } + } + Prism.languages.insertBefore('css', 'property', { + variable: { + pattern: /(^|[^-\w\xA0-\uFFFF])--[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*/i, + lookbehind: true + } + }) + Prism.languages.insertBefore('css', 'function', { + operator: { + pattern: /(\s)[+\-*\/](?=\s)/, + lookbehind: true + }, + hexcode: /#[\da-f]{3,8}/i, + entity: /\\[\da-f]{1,8}/i, + unit: { + pattern: /(\d)(?:%|[a-z]+)/, + lookbehind: true + }, + number: /-?[\d.]+/ + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_d.60c5cccc.js b/assets/js/react-syntax-highlighter_languages_refractor_d.60c5cccc.js new file mode 100644 index 000000000..9a07c7e77 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_d.60c5cccc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3717],{7902:e=>{function t(e){e.languages.d=e.languages.extend("clike",{string:[/\b[rx]"(?:\\[\s\S]|[^\\"])*"[cwd]?/,/\bq"(?:\[[\s\S]*?\]|\([\s\S]*?\)|<[\s\S]*?>|\{[\s\S]*?\})"/,/\bq"([_a-zA-Z][_a-zA-Z\d]*)(?:\r?\n|\r)[\s\S]*?(?:\r?\n|\r)\1"/,/\bq"(.)[\s\S]*?\1"/,/'(?:\\'|\\?[^']+)'/,/(["`])(?:\\[\s\S]|(?!\1)[^\\])*\1[cwd]?/],number:[/\b0x\.?[a-f\d_]+(?:(?!\.\.)\.[a-f\d_]*)?(?:p[+-]?[a-f\d_]+)?[ulfi]*/i,{pattern:/((?:\.\.)?)(?:\b0b\.?|\b|\.)\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:e[+-]?\d[\d_]*)?[ulfi]*/i,lookbehind:!0}],keyword:/\$|\b(?:abstract|alias|align|asm|assert|auto|body|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|inout|int|interface|invariant|ireal|lazy|long|macro|mixin|module|new|nothrow|null|out|override|package|pragma|private|protected|public|pure|real|ref|return|scope|shared|short|static|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|__(?:(?:FILE|MODULE|LINE|FUNCTION|PRETTY_FUNCTION|DATE|EOF|TIME|TIMESTAMP|VENDOR|VERSION)__|gshared|traits|vector|parameters)|string|wstring|dstring|size_t|ptrdiff_t)\b/,operator:/\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/}),e.languages.d.comment=[/^\s*#!.+/,{pattern:/(^|[^\\])\/\+(?:\/\+[\s\S]*?\+\/|[\s\S])*?\+\//,lookbehind:!0}].concat(e.languages.d.comment),e.languages.insertBefore("d","comment",{"token-string":{pattern:/\bq\{(?:\{[^}]*\}|[^}])*\}/,alias:"string"}}),e.languages.insertBefore("d","keyword",{property:/\B@\w*/}),e.languages.insertBefore("d","function",{register:{pattern:/\b(?:[ABCD][LHX]|E[ABCD]X|E?(?:BP|SP|DI|SI)|[ECSDGF]S|CR[0234]|DR[012367]|TR[3-7]|X?MM[0-7]|R[ABCD]X|[BS]PL|R[BS]P|[DS]IL|R[DS]I|R(?:[89]|1[0-5])[BWD]?|XMM(?:[89]|1[0-5])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/,alias:"variable"}})}e.exports=t,t.displayName="d",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_d.a6c52f12.js b/assets/js/react-syntax-highlighter_languages_refractor_d.a6c52f12.js new file mode 100644 index 000000000..9cb0c179d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_d.a6c52f12.js @@ -0,0 +1,72 @@ +"use strict"; +exports.id = 3717; +exports.ids = [3717]; +exports.modules = { + +/***/ 7902: +/***/ ((module) => { + + + +module.exports = d +d.displayName = 'd' +d.aliases = [] +function d(Prism) { + Prism.languages.d = Prism.languages.extend('clike', { + string: [ + // r"", x"" + /\b[rx]"(?:\\[\s\S]|[^\\"])*"[cwd]?/, // q"[]", q"()", q"<>", q"{}" + /\bq"(?:\[[\s\S]*?\]|\([\s\S]*?\)|<[\s\S]*?>|\{[\s\S]*?\})"/, // q"IDENT + // ... + // IDENT" + /\bq"([_a-zA-Z][_a-zA-Z\d]*)(?:\r?\n|\r)[\s\S]*?(?:\r?\n|\r)\1"/, // q"//", q"||", etc. + /\bq"(.)[\s\S]*?\1"/, // Characters + /'(?:\\'|\\?[^']+)'/, + /(["`])(?:\\[\s\S]|(?!\1)[^\\])*\1[cwd]?/ + ], + number: [ + // The lookbehind and the negative look-ahead try to prevent bad highlighting of the .. operator + // Hexadecimal numbers must be handled separately to avoid problems with exponent "e" + /\b0x\.?[a-f\d_]+(?:(?!\.\.)\.[a-f\d_]*)?(?:p[+-]?[a-f\d_]+)?[ulfi]*/i, + { + pattern: /((?:\.\.)?)(?:\b0b\.?|\b|\.)\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:e[+-]?\d[\d_]*)?[ulfi]*/i, + lookbehind: true + } + ], + // In order: $, keywords and special tokens, globally defined symbols + keyword: /\$|\b(?:abstract|alias|align|asm|assert|auto|body|bool|break|byte|case|cast|catch|cdouble|cent|cfloat|char|class|const|continue|creal|dchar|debug|default|delegate|delete|deprecated|do|double|else|enum|export|extern|false|final|finally|float|for|foreach|foreach_reverse|function|goto|idouble|if|ifloat|immutable|import|inout|int|interface|invariant|ireal|lazy|long|macro|mixin|module|new|nothrow|null|out|override|package|pragma|private|protected|public|pure|real|ref|return|scope|shared|short|static|struct|super|switch|synchronized|template|this|throw|true|try|typedef|typeid|typeof|ubyte|ucent|uint|ulong|union|unittest|ushort|version|void|volatile|wchar|while|with|__(?:(?:FILE|MODULE|LINE|FUNCTION|PRETTY_FUNCTION|DATE|EOF|TIME|TIMESTAMP|VENDOR|VERSION)__|gshared|traits|vector|parameters)|string|wstring|dstring|size_t|ptrdiff_t)\b/, + operator: /\|[|=]?|&[&=]?|\+[+=]?|-[-=]?|\.?\.\.|=[>=]?|!(?:i[ns]\b|<>?=?|>=?|=)?|\bi[ns]\b|(?:<[<>]?|>>?>?|\^\^|[*\/%^~])=?/ + }) + Prism.languages.d.comment = [ + // Shebang + /^\s*#!.+/, // /+ +/ + { + // Allow one level of nesting + pattern: /(^|[^\\])\/\+(?:\/\+[\s\S]*?\+\/|[\s\S])*?\+\//, + lookbehind: true + } + ].concat(Prism.languages.d.comment) + Prism.languages.insertBefore('d', 'comment', { + 'token-string': { + // Allow one level of nesting + pattern: /\bq\{(?:\{[^}]*\}|[^}])*\}/, + alias: 'string' + } + }) + Prism.languages.insertBefore('d', 'keyword', { + property: /\B@\w*/ + }) + Prism.languages.insertBefore('d', 'function', { + register: { + // Iasm registers + pattern: /\b(?:[ABCD][LHX]|E[ABCD]X|E?(?:BP|SP|DI|SI)|[ECSDGF]S|CR[0234]|DR[012367]|TR[3-7]|X?MM[0-7]|R[ABCD]X|[BS]PL|R[BS]P|[DS]IL|R[DS]I|R(?:[89]|1[0-5])[BWD]?|XMM(?:[89]|1[0-5])|YMM(?:1[0-5]|\d))\b|\bST(?:\([0-7]\)|\b)/, + alias: 'variable' + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_dart.9b8074af.js b/assets/js/react-syntax-highlighter_languages_refractor_dart.9b8074af.js new file mode 100644 index 000000000..cc7d3d988 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_dart.9b8074af.js @@ -0,0 +1,44 @@ +"use strict"; +exports.id = 7769; +exports.ids = [7769]; +exports.modules = { + +/***/ 28651: +/***/ ((module) => { + + + +module.exports = dart +dart.displayName = 'dart' +dart.aliases = [] +function dart(Prism) { + Prism.languages.dart = Prism.languages.extend('clike', { + string: [ + { + pattern: /r?("""|''')[\s\S]*?\1/, + greedy: true + }, + { + pattern: /r?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + } + ], + keyword: [ + /\b(?:async|sync|yield)\*/, + /\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|default|deferred|do|dynamic|else|enum|export|external|extends|factory|final|finally|for|get|if|implements|import|in|library|new|null|operator|part|rethrow|return|set|static|super|switch|this|throw|try|typedef|var|void|while|with|yield)\b/ + ], + operator: /\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/ + }) + Prism.languages.insertBefore('dart', 'function', { + metadata: { + pattern: /@\w+/, + alias: 'symbol' + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_dart.fc386fed.js b/assets/js/react-syntax-highlighter_languages_refractor_dart.fc386fed.js new file mode 100644 index 000000000..97421e0b7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_dart.fc386fed.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7769],{8651:e=>{function t(e){e.languages.dart=e.languages.extend("clike",{string:[{pattern:/r?("""|''')[\s\S]*?\1/,greedy:!0},{pattern:/r?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],keyword:[/\b(?:async|sync|yield)\*/,/\b(?:abstract|assert|async|await|break|case|catch|class|const|continue|default|deferred|do|dynamic|else|enum|export|external|extends|factory|final|finally|for|get|if|implements|import|in|library|new|null|operator|part|rethrow|return|set|static|super|switch|this|throw|try|typedef|var|void|while|with|yield)\b/],operator:/\bis!|\b(?:as|is)\b|\+\+|--|&&|\|\||<<=?|>>=?|~(?:\/=?)?|[+\-*\/%&^|=!<>]=?|\?/}),e.languages.insertBefore("dart","function",{metadata:{pattern:/@\w+/,alias:"symbol"}})}e.exports=t,t.displayName="dart",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_diff.455dc42c.js b/assets/js/react-syntax-highlighter_languages_refractor_diff.455dc42c.js new file mode 100644 index 000000000..d501b59c4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_diff.455dc42c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6247],{3336:e=>{function a(e){!function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d+.*$/m]};var a={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(a).forEach((function(s){var n=a[s],i=[];/^\w+$/.test(s)||i.push(/\w+/.exec(s)[0]),"diff"===s&&i.push("bold"),e.languages.diff[s]={pattern:RegExp("^(?:["+n+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:i}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:a})}(e)}e.exports=a,a.displayName="diff",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_diff.66279c10.js b/assets/js/react-syntax-highlighter_languages_refractor_diff.66279c10.js new file mode 100644 index 000000000..a05e33bb8 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_diff.66279c10.js @@ -0,0 +1,66 @@ +"use strict"; +exports.id = 6247; +exports.ids = [6247]; +exports.modules = { + +/***/ 93336: +/***/ ((module) => { + + + +module.exports = diff +diff.displayName = 'diff' +diff.aliases = [] +function diff(Prism) { + ;(function(Prism) { + Prism.languages.diff = { + coord: [ + // Match all kinds of coord lines (prefixed by "+++", "---" or "***"). + /^(?:\*{3}|-{3}|\+{3}).*$/m, // Match "@@ ... @@" coord lines in unified diff. + /^@@.*@@$/m, // Match coord lines in normal diff (starts with a number). + /^\d+.*$/m + ] // deleted, inserted, unchanged, diff + } + /** + * A map from the name of a block to its line prefix. + * + * @type {Object<string, string>} + */ + var PREFIXES = { + 'deleted-sign': '-', + 'deleted-arrow': '<', + 'inserted-sign': '+', + 'inserted-arrow': '>', + unchanged: ' ', + diff: '!' + } // add a token for each prefix + Object.keys(PREFIXES).forEach(function(name) { + var prefix = PREFIXES[name] + var alias = [] + if (!/^\w+$/.test(name)) { + // "deleted-sign" -> "deleted" + alias.push(/\w+/.exec(name)[0]) + } + if (name === 'diff') { + alias.push('bold') + } + Prism.languages.diff[name] = { + // pattern: /^(?:[_].*(?:\r\n?|\n|(?![\s\S])))+/m + pattern: RegExp( + '^(?:[' + prefix + '].*(?:\r\n?|\n|(?![\\s\\S])))+', + 'm' + ), + alias: alias + } + }) // make prefixes available to Diff plugin + Object.defineProperty(Prism.languages.diff, 'PREFIXES', { + value: PREFIXES + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_django.32bd36ed.js b/assets/js/react-syntax-highlighter_languages_refractor_django.32bd36ed.js new file mode 100644 index 000000000..b06de17be --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_django.32bd36ed.js @@ -0,0 +1,202 @@ +"use strict"; +exports.id = 7899; +exports.ids = [7899,3047]; +exports.modules = { + +/***/ 13294: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = django +django.displayName = 'django' +django.aliases = ['jinja2'] +function django(Prism) { + Prism.register(refractorMarkupTemplating) + // Django/Jinja2 syntax definition for Prism.js <http://prismjs.com> syntax highlighter. + // Mostly it works OK but can paint code incorrectly on complex html/template tag combinations. + ;(function(Prism) { + Prism.languages.django = { + comment: /^{#[\s\S]*?#}$/, + tag: { + pattern: /(^{%[+-]?\s*)\w+/, + lookbehind: true, + alias: 'keyword' + }, + delimiter: { + pattern: /^{[{%][+-]?|[+-]?[}%]}$/, + alias: 'punctuation' + }, + string: { + pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + filter: { + pattern: /(\|)\w+/, + lookbehind: true, + alias: 'function' + }, + test: { + pattern: /(\bis\s+(?:not\s+)?)(?!not\b)\w+/, + lookbehind: true, + alias: 'function' + }, + function: /\b[a-z_]\w+(?=\s*\()/i, + keyword: /\b(?:and|as|by|else|for|if|import|in|is|loop|not|or|recursive|with|without)\b/, + operator: /[-+*/%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/, + number: /\b\d+(?:\.\d+)?\b/, + boolean: /[Tt]rue|[Ff]alse|[Nn]one/, + variable: /\b\w+?\b/, + punctuation: /[{}[\](),.:;]/ + } + var pattern = /{{[\s\S]*?}}|{%[\s\S]*?%}|{#[\s\S]*?#}/g + var markupTemplating = Prism.languages['markup-templating'] + Prism.hooks.add('before-tokenize', function(env) { + markupTemplating.buildPlaceholders(env, 'django', pattern) + }) + Prism.hooks.add('after-tokenize', function(env) { + markupTemplating.tokenizePlaceholders(env, 'django') + }) // Add an Jinja2 alias + Prism.languages.jinja2 = Prism.languages.django + Prism.hooks.add('before-tokenize', function(env) { + markupTemplating.buildPlaceholders(env, 'jinja2', pattern) + }) + Prism.hooks.add('after-tokenize', function(env) { + markupTemplating.tokenizePlaceholders(env, 'jinja2') + }) + })(Prism) +} + + +/***/ }), + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_django.d1c72479.js b/assets/js/react-syntax-highlighter_languages_refractor_django.d1c72479.js new file mode 100644 index 000000000..eb99f20d8 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_django.d1c72479.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7899,3047],{3294:(e,n,t)=>{var a=t(3205);function o(e){e.register(a),function(e){e.languages.django={comment:/^{#[\s\S]*?#}$/,tag:{pattern:/(^{%[+-]?\s*)\w+/,lookbehind:!0,alias:"keyword"},delimiter:{pattern:/^{[{%][+-]?|[+-]?[}%]}$/,alias:"punctuation"},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},filter:{pattern:/(\|)\w+/,lookbehind:!0,alias:"function"},test:{pattern:/(\bis\s+(?:not\s+)?)(?!not\b)\w+/,lookbehind:!0,alias:"function"},function:/\b[a-z_]\w+(?=\s*\()/i,keyword:/\b(?:and|as|by|else|for|if|import|in|is|loop|not|or|recursive|with|without)\b/,operator:/[-+*/%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,number:/\b\d+(?:\.\d+)?\b/,boolean:/[Tt]rue|[Ff]alse|[Nn]one/,variable:/\b\w+?\b/,punctuation:/[{}[\](),.:;]/};var n=/{{[\s\S]*?}}|{%[\s\S]*?%}|{#[\s\S]*?#}/g,t=e.languages["markup-templating"];e.hooks.add("before-tokenize",(function(e){t.buildPlaceholders(e,"django",n)})),e.hooks.add("after-tokenize",(function(e){t.tokenizePlaceholders(e,"django")})),e.languages.jinja2=e.languages.django,e.hooks.add("before-tokenize",(function(e){t.buildPlaceholders(e,"jinja2",n)})),e.hooks.add("after-tokenize",(function(e){t.tokenizePlaceholders(e,"jinja2")}))}(e)}e.exports=o,o.displayName="django",o.aliases=["jinja2"]},3205:e=>{function n(e){!function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,a,o,i){if(t.language===a){var r=t.tokenStack=[];t.code=t.code.replace(o,(function(e){if("function"==typeof i&&!i(e))return e;for(var o,s=r.length;-1!==t.code.indexOf(o=n(a,s));)++s;return r[s]=e,o})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,a){if(t.language===a&&t.tokenStack){t.grammar=e.languages[a];var o=0,i=Object.keys(t.tokenStack);!function r(s){for(var l=0;l<s.length&&!(o>=i.length);l++){var u=s[l];if("string"==typeof u||u.content&&"string"==typeof u.content){var g=i[o],c=t.tokenStack[g],p="string"==typeof u?u:u.content,f=n(a,g),d=p.indexOf(f);if(d>-1){++o;var k=p.substring(0,d),b=new e.Token(a,e.tokenize(c,t.grammar),"language-"+a,c),h=p.substring(d+f.length),m=[];k&&m.push.apply(m,r([k])),m.push(b),h&&m.push.apply(m,r([h])),"string"==typeof u?s.splice.apply(s,[l,1].concat(m)):u.content=m}}else u.content&&r(u.content)}return s}(t.tokens)}}}})}(e)}e.exports=n,n.displayName="markupTemplating",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_docker.0874a08f.js b/assets/js/react-syntax-highlighter_languages_refractor_docker.0874a08f.js new file mode 100644 index 000000000..83fae31a2 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_docker.0874a08f.js @@ -0,0 +1,31 @@ +"use strict"; +exports.id = 2051; +exports.ids = [2051]; +exports.modules = { + +/***/ 97266: +/***/ ((module) => { + + + +module.exports = docker +docker.displayName = 'docker' +docker.aliases = ['dockerfile'] +function docker(Prism) { + Prism.languages.docker = { + keyword: { + pattern: /(^\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)/im, + lookbehind: true + }, + string: /("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/, + comment: /#.*/, + punctuation: /---|\.\.\.|[:[\]{}\-,|>?]/ + } + Prism.languages.dockerfile = Prism.languages.docker +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_docker.2b9edb3d.js b/assets/js/react-syntax-highlighter_languages_refractor_docker.2b9edb3d.js new file mode 100644 index 000000000..3006f2c19 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_docker.2b9edb3d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2051],{7266:e=>{function s(e){e.languages.docker={keyword:{pattern:/(^\s*)(?:ADD|ARG|CMD|COPY|ENTRYPOINT|ENV|EXPOSE|FROM|HEALTHCHECK|LABEL|MAINTAINER|ONBUILD|RUN|SHELL|STOPSIGNAL|USER|VOLUME|WORKDIR)(?=\s)/im,lookbehind:!0},string:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,comment:/#.*/,punctuation:/---|\.\.\.|[:[\]{}\-,|>?]/},e.languages.dockerfile=e.languages.docker}e.exports=s,s.displayName="docker",s.aliases=["dockerfile"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_eiffel.c56b2ff8.js b/assets/js/react-syntax-highlighter_languages_refractor_eiffel.c56b2ff8.js new file mode 100644 index 000000000..c5fa10188 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_eiffel.c56b2ff8.js @@ -0,0 +1,55 @@ +"use strict"; +exports.id = 2182; +exports.ids = [2182]; +exports.modules = { + +/***/ 50115: +/***/ ((module) => { + + + +module.exports = eiffel +eiffel.displayName = 'eiffel' +eiffel.aliases = [] +function eiffel(Prism) { + Prism.languages.eiffel = { + comment: /--.*/, + string: [ + // Aligned-verbatim-strings + { + pattern: /"([^[]*)\[[\s\S]*?\]\1"/, + greedy: true + }, // Non-aligned-verbatim-strings + { + pattern: /"([^{]*)\{[\s\S]*?\}\1"/, + greedy: true + }, // Single-line string + { + pattern: /"(?:%\s+%|%.|[^%"\r\n])*"/, + greedy: true + } + ], + // normal char | special char | char code + char: /'(?:%.|[^%'\r\n])+'/, + keyword: /\b(?:across|agent|alias|all|and|attached|as|assign|attribute|check|class|convert|create|Current|debug|deferred|detachable|do|else|elseif|end|ensure|expanded|export|external|feature|from|frozen|if|implies|inherit|inspect|invariant|like|local|loop|not|note|obsolete|old|once|or|Precursor|redefine|rename|require|rescue|Result|retry|select|separate|some|then|undefine|until|variant|Void|when|xor)\b/i, + boolean: /\b(?:True|False)\b/i, + // Convention: class-names are always all upper-case characters + 'class-name': { + pattern: /\b[A-Z][\dA-Z_]*\b/, + alias: 'builtin' + }, + number: [ + // hexa | octal | bin + /\b0[xcb][\da-f](?:_*[\da-f])*\b/i, // Decimal + /(?:\d(?:_*\d)*)?\.(?:(?:\d(?:_*\d)*)?e[+-]?)?\d(?:_*\d)*|\d(?:_*\d)*\.?/i + ], + punctuation: /:=|<<|>>|\(\||\|\)|->|\.(?=\w)|[{}[\];(),:?]/, + operator: /\\\\|\|\.\.\||\.\.|\/[~\/=]?|[><]=?|[-+*^=~]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_eiffel.d40538cc.js b/assets/js/react-syntax-highlighter_languages_refractor_eiffel.d40538cc.js new file mode 100644 index 000000000..f394ff356 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_eiffel.d40538cc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2182],{115:e=>{function a(e){e.languages.eiffel={comment:/--.*/,string:[{pattern:/"([^[]*)\[[\s\S]*?\]\1"/,greedy:!0},{pattern:/"([^{]*)\{[\s\S]*?\}\1"/,greedy:!0},{pattern:/"(?:%\s+%|%.|[^%"\r\n])*"/,greedy:!0}],char:/'(?:%.|[^%'\r\n])+'/,keyword:/\b(?:across|agent|alias|all|and|attached|as|assign|attribute|check|class|convert|create|Current|debug|deferred|detachable|do|else|elseif|end|ensure|expanded|export|external|feature|from|frozen|if|implies|inherit|inspect|invariant|like|local|loop|not|note|obsolete|old|once|or|Precursor|redefine|rename|require|rescue|Result|retry|select|separate|some|then|undefine|until|variant|Void|when|xor)\b/i,boolean:/\b(?:True|False)\b/i,"class-name":{pattern:/\b[A-Z][\dA-Z_]*\b/,alias:"builtin"},number:[/\b0[xcb][\da-f](?:_*[\da-f])*\b/i,/(?:\d(?:_*\d)*)?\.(?:(?:\d(?:_*\d)*)?e[+-]?)?\d(?:_*\d)*|\d(?:_*\d)*\.?/i],punctuation:/:=|<<|>>|\(\||\|\)|->|\.(?=\w)|[{}[\];(),:?]/,operator:/\\\\|\|\.\.\||\.\.|\/[~\/=]?|[><]=?|[-+*^=~]/}}e.exports=a,a.displayName="eiffel",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_elixir.9b624bc1.js b/assets/js/react-syntax-highlighter_languages_refractor_elixir.9b624bc1.js new file mode 100644 index 000000000..6cc77ef15 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_elixir.9b624bc1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6343],{1974:e=>{function n(e){e.languages.elixir={comment:/#.*/m,regex:{pattern:/~[rR](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[uismxfr]*/,greedy:!0},string:[{pattern:/~[cCsSwW](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|#\{[^}]+\}|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[csa]?/,greedy:!0,inside:{}},{pattern:/("""|''')[\s\S]*?\1/,greedy:!0,inside:{}},{pattern:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{}}],atom:{pattern:/(^|[^:]):\w+/,lookbehind:!0,alias:"symbol"},"attr-name":/\w+:(?!:)/,capture:{pattern:/(^|[^&])&(?:[^&\s\d()][^\s()]*|(?=\())/,lookbehind:!0,alias:"function"},argument:{pattern:/(^|[^&])&\d+/,lookbehind:!0,alias:"variable"},attribute:{pattern:/@\w+/,alias:"variable"},number:/\b(?:0[box][a-f\d_]+|\d[\d_]*)(?:\.[\d_]+)?(?:e[+-]?[\d_]+)?\b/i,keyword:/\b(?:after|alias|and|case|catch|cond|def(?:callback|exception|impl|module|p|protocol|struct)?|do|else|end|fn|for|if|import|not|or|require|rescue|try|unless|use|when)\b/,boolean:/\b(?:true|false|nil)\b/,operator:[/\bin\b|&&?|\|[|>]?|\\\\|::|\.\.\.?|\+\+?|-[->]?|<[-=>]|>=|!==?|\B!|=(?:==?|[>~])?|[*\/^]/,{pattern:/([^<])<(?!<)/,lookbehind:!0},{pattern:/([^>])>(?!>)/,lookbehind:!0}],punctuation:/<<|>>|[.,%\[\]{}()]/},e.languages.elixir.string.forEach((function(n){n.inside={interpolation:{pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"},rest:e.languages.elixir}}}}))}e.exports=n,n.displayName="elixir",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_elixir.d63653ff.js b/assets/js/react-syntax-highlighter_languages_refractor_elixir.d63653ff.js new file mode 100644 index 000000000..0e444d7d9 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_elixir.d63653ff.js @@ -0,0 +1,109 @@ +"use strict"; +exports.id = 6343; +exports.ids = [6343]; +exports.modules = { + +/***/ 11974: +/***/ ((module) => { + + + +module.exports = elixir +elixir.displayName = 'elixir' +elixir.aliases = [] +function elixir(Prism) { + Prism.languages.elixir = { + comment: /#.*/m, + // ~r"""foo""" (multi-line), ~r'''foo''' (multi-line), ~r/foo/, ~r|foo|, ~r"foo", ~r'foo', ~r(foo), ~r[foo], ~r{foo}, ~r<foo> + regex: { + pattern: /~[rR](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[uismxfr]*/, + greedy: true + }, + string: [ + { + // ~s"""foo""" (multi-line), ~s'''foo''' (multi-line), ~s/foo/, ~s|foo|, ~s"foo", ~s'foo', ~s(foo), ~s[foo], ~s{foo} (with interpolation care), ~s<foo> + pattern: /~[cCsSwW](?:("""|''')(?:\\[\s\S]|(?!\1)[^\\])+\1|([\/|"'])(?:\\.|(?!\2)[^\\\r\n])+\2|\((?:\\.|[^\\)\r\n])+\)|\[(?:\\.|[^\\\]\r\n])+\]|\{(?:\\.|#\{[^}]+\}|[^\\}\r\n])+\}|<(?:\\.|[^\\>\r\n])+>)[csa]?/, + greedy: true, + inside: { + // See interpolation below + } + }, + { + pattern: /("""|''')[\s\S]*?\1/, + greedy: true, + inside: { + // See interpolation below + } + }, + { + // Multi-line strings are allowed + pattern: /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true, + inside: { + // See interpolation below + } + } + ], + atom: { + // Look-behind prevents bad highlighting of the :: operator + pattern: /(^|[^:]):\w+/, + lookbehind: true, + alias: 'symbol' + }, + // Look-ahead prevents bad highlighting of the :: operator + 'attr-name': /\w+:(?!:)/, + capture: { + // Look-behind prevents bad highlighting of the && operator + pattern: /(^|[^&])&(?:[^&\s\d()][^\s()]*|(?=\())/, + lookbehind: true, + alias: 'function' + }, + argument: { + // Look-behind prevents bad highlighting of the && operator + pattern: /(^|[^&])&\d+/, + lookbehind: true, + alias: 'variable' + }, + attribute: { + pattern: /@\w+/, + alias: 'variable' + }, + number: /\b(?:0[box][a-f\d_]+|\d[\d_]*)(?:\.[\d_]+)?(?:e[+-]?[\d_]+)?\b/i, + keyword: /\b(?:after|alias|and|case|catch|cond|def(?:callback|exception|impl|module|p|protocol|struct)?|do|else|end|fn|for|if|import|not|or|require|rescue|try|unless|use|when)\b/, + boolean: /\b(?:true|false|nil)\b/, + operator: [ + /\bin\b|&&?|\|[|>]?|\\\\|::|\.\.\.?|\+\+?|-[->]?|<[-=>]|>=|!==?|\B!|=(?:==?|[>~])?|[*\/^]/, + { + // We don't want to match << + pattern: /([^<])<(?!<)/, + lookbehind: true + }, + { + // We don't want to match >> + pattern: /([^>])>(?!>)/, + lookbehind: true + } + ], + punctuation: /<<|>>|[.,%\[\]{}()]/ + } + Prism.languages.elixir.string.forEach(function(o) { + o.inside = { + interpolation: { + pattern: /#\{[^}]+\}/, + inside: { + delimiter: { + pattern: /^#\{|\}$/, + alias: 'punctuation' + }, + rest: Prism.languages.elixir + } + } + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_elm.1c9cad17.js b/assets/js/react-syntax-highlighter_languages_refractor_elm.1c9cad17.js new file mode 100644 index 000000000..14867f462 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_elm.1c9cad17.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7838],{8645:e=>{function a(e){e.languages.elm={comment:/--.*|{-[\s\S]*?-}/,char:{pattern:/'(?:[^\\'\r\n]|\\(?:[abfnrtv\\']|\d+|x[0-9a-fA-F]+))'/,greedy:!0},string:[{pattern:/"""[\s\S]*?"""/,greedy:!0},{pattern:/"(?:[^\\"\r\n]|\\(?:[abfnrtv\\"]|\d+|x[0-9a-fA-F]+))*"/,greedy:!0}],import_statement:{pattern:/^\s*import\s+[A-Z]\w*(?:\.[A-Z]\w*)*(?:\s+as\s+([A-Z]\w*)(?:\.[A-Z]\w*)*)?(?:\s+exposing\s+)?/m,inside:{keyword:/\b(?:import|as|exposing)\b/}},keyword:/\b(?:alias|as|case|else|exposing|if|in|infixl|infixr|let|module|of|then|type)\b/,builtin:/\b(?:abs|acos|always|asin|atan|atan2|ceiling|clamp|compare|cos|curry|degrees|e|flip|floor|fromPolar|identity|isInfinite|isNaN|logBase|max|min|negate|never|not|pi|radians|rem|round|sin|sqrt|tan|toFloat|toPolar|toString|truncate|turns|uncurry|xor)\b/,number:/\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0x[0-9a-f]+)\b/i,operator:/\s\.\s|[+\-/*=.$<>:&|^?%#@~!]{2,}|[+\-/*=$<>:&|^?%#@~!]/,hvariable:/\b(?:[A-Z]\w*\.)*[a-z]\w*\b/,constant:/\b(?:[A-Z]\w*\.)*[A-Z]\w*\b/,punctuation:/[{}[\]|(),.:]/}}e.exports=a,a.displayName="elm",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_elm.af8b71fb.js b/assets/js/react-syntax-highlighter_languages_refractor_elm.af8b71fb.js new file mode 100644 index 000000000..fb36cbf8d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_elm.af8b71fb.js @@ -0,0 +1,65 @@ +"use strict"; +exports.id = 7838; +exports.ids = [7838]; +exports.modules = { + +/***/ 8645: +/***/ ((module) => { + + + +module.exports = elm +elm.displayName = 'elm' +elm.aliases = [] +function elm(Prism) { + Prism.languages.elm = { + comment: /--.*|{-[\s\S]*?-}/, + char: { + pattern: /'(?:[^\\'\r\n]|\\(?:[abfnrtv\\']|\d+|x[0-9a-fA-F]+))'/, + greedy: true + }, + string: [ + { + // Multiline strings are wrapped in triple ". Quotes may appear unescaped. + pattern: /"""[\s\S]*?"""/, + greedy: true + }, + { + pattern: /"(?:[^\\"\r\n]|\\(?:[abfnrtv\\"]|\d+|x[0-9a-fA-F]+))*"/, + greedy: true + } + ], + import_statement: { + // The imported or hidden names are not included in this import + // statement. This is because we want to highlight those exactly like + // we do for the names in the program. + pattern: /^\s*import\s+[A-Z]\w*(?:\.[A-Z]\w*)*(?:\s+as\s+([A-Z]\w*)(?:\.[A-Z]\w*)*)?(?:\s+exposing\s+)?/m, + inside: { + keyword: /\b(?:import|as|exposing)\b/ + } + }, + keyword: /\b(?:alias|as|case|else|exposing|if|in|infixl|infixr|let|module|of|then|type)\b/, + // These are builtin variables only. Constructors are highlighted later as a constant. + builtin: /\b(?:abs|acos|always|asin|atan|atan2|ceiling|clamp|compare|cos|curry|degrees|e|flip|floor|fromPolar|identity|isInfinite|isNaN|logBase|max|min|negate|never|not|pi|radians|rem|round|sin|sqrt|tan|toFloat|toPolar|toString|truncate|turns|uncurry|xor)\b/, + // decimal integers and floating point numbers | hexadecimal integers + number: /\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0x[0-9a-f]+)\b/i, + // Most of this is needed because of the meaning of a single '.'. + // If it stands alone freely, it is the function composition. + // It may also be a separator between a module name and an identifier => no + // operator. If it comes together with other special characters it is an + // operator too. + // Valid operator characters in 0.18: +-/*=.$<>:&|^?%#@~! + // Ref: https://groups.google.com/forum/#!msg/elm-dev/0AHSnDdkSkQ/E0SVU70JEQAJ + operator: /\s\.\s|[+\-/*=.$<>:&|^?%#@~!]{2,}|[+\-/*=$<>:&|^?%#@~!]/, + // In Elm, nearly everything is a variable, do not highlight these. + hvariable: /\b(?:[A-Z]\w*\.)*[a-z]\w*\b/, + constant: /\b(?:[A-Z]\w*\.)*[A-Z]\w*\b/, + punctuation: /[{}[\]|(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_erb.3063b593.js b/assets/js/react-syntax-highlighter_languages_refractor_erb.3063b593.js new file mode 100644 index 000000000..0b9f22a58 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_erb.3063b593.js @@ -0,0 +1,323 @@ +"use strict"; +exports.id = 2584; +exports.ids = [2584,3047,369]; +exports.modules = { + +/***/ 84790: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +var refractorRuby = __webpack_require__(56939) +module.exports = erb +erb.displayName = 'erb' +erb.aliases = [] +function erb(Prism) { + Prism.register(refractorMarkupTemplating) + Prism.register(refractorRuby) + ;(function(Prism) { + Prism.languages.erb = Prism.languages.extend('ruby', {}) + Prism.languages.insertBefore('erb', 'comment', { + delimiter: { + pattern: /^<%=?|%>$/, + alias: 'punctuation' + } + }) + Prism.hooks.add('before-tokenize', function(env) { + var erbPattern = /<%=?(?:[^\r\n]|[\r\n](?!=begin)|[\r\n]=begin\s[\s\S]*?^=end)+?%>/gm + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'erb', + erbPattern + ) + }) + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders(env, 'erb') + }) + })(Prism) +} + + +/***/ }), + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 56939: +/***/ ((module) => { + + + +module.exports = ruby +ruby.displayName = 'ruby' +ruby.aliases = ['rb'] +function ruby(Prism) { + /** + * Original by Samuel Flores + * + * Adds the following new token classes: + * constant, builtin, variable, symbol, regex + */ + ;(function(Prism) { + Prism.languages.ruby = Prism.languages.extend('clike', { + comment: [ + /#.*/, + { + pattern: /^=begin\s[\s\S]*?^=end/m, + greedy: true + } + ], + keyword: /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/ + }) + var interpolation = { + pattern: /#\{[^}]+\}/, + inside: { + delimiter: { + pattern: /^#\{|\}$/, + alias: 'tag' + }, + rest: Prism.languages.ruby + } + } + delete Prism.languages.ruby.function + Prism.languages.insertBefore('ruby', 'keyword', { + regex: [ + { + pattern: /%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + // Here we need to specifically allow interpolation + pattern: /%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/, + lookbehind: true, + greedy: true + } + ], + variable: /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/, + symbol: { + pattern: /(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/, + lookbehind: true + }, + 'method-definition': { + pattern: /(\bdef\s+)[\w.]+/, + lookbehind: true, + inside: { + function: /\w+$/, + rest: Prism.languages.ruby + } + } + }) + Prism.languages.insertBefore('ruby', 'number', { + builtin: /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/, + constant: /\b[A-Z]\w*(?:[?!]|\b)/ + }) + Prism.languages.ruby.string = [ + { + pattern: /%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + // Here we need to specifically allow interpolation + pattern: /%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true, + inside: { + interpolation: interpolation + } + } + ] + Prism.languages.rb = Prism.languages.ruby + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_erb.d07119ee.js b/assets/js/react-syntax-highlighter_languages_refractor_erb.d07119ee.js new file mode 100644 index 000000000..e983360d6 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_erb.d07119ee.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2584,3047,369],{4790:(e,n,t)=>{var r=t(3205),a=t(6939);function i(e){e.register(r),e.register(a),function(e){e.languages.erb=e.languages.extend("ruby",{}),e.languages.insertBefore("erb","comment",{delimiter:{pattern:/^<%=?|%>$/,alias:"punctuation"}}),e.hooks.add("before-tokenize",(function(n){e.languages["markup-templating"].buildPlaceholders(n,"erb",/<%=?(?:[^\r\n]|[\r\n](?!=begin)|[\r\n]=begin\s[\s\S]*?^=end)+?%>/gm)})),e.hooks.add("after-tokenize",(function(n){e.languages["markup-templating"].tokenizePlaceholders(n,"erb")}))}(e)}e.exports=i,i.displayName="erb",i.aliases=[]},3205:e=>{function n(e){!function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,r,a,i){if(t.language===r){var s=t.tokenStack=[];t.code=t.code.replace(a,(function(e){if("function"==typeof i&&!i(e))return e;for(var a,o=s.length;-1!==t.code.indexOf(a=n(r,o));)++o;return s[o]=e,a})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,r){if(t.language===r&&t.tokenStack){t.grammar=e.languages[r];var a=0,i=Object.keys(t.tokenStack);!function s(o){for(var l=0;l<o.length&&!(a>=i.length);l++){var g=o[l];if("string"==typeof g||g.content&&"string"==typeof g.content){var u=i[a],d=t.tokenStack[u],p="string"==typeof g?g:g.content,c=n(r,u),b=p.indexOf(c);if(b>-1){++a;var f=p.substring(0,b),m=new e.Token(r,e.tokenize(d,t.grammar),"language-"+r,d),y=p.substring(b+c.length),k=[];f&&k.push.apply(k,s([f])),k.push(m),y&&k.push.apply(k,s([y])),"string"==typeof g?o.splice.apply(o,[l,1].concat(k)):g.content=k}}else g.content&&s(g.content)}return o}(t.tokens)}}}})}(e)}e.exports=n,n.displayName="markupTemplating",n.aliases=[]},6939:e=>{function n(e){!function(e){e.languages.ruby=e.languages.extend("clike",{comment:[/#.*/,{pattern:/^=begin\s[\s\S]*?^=end/m,greedy:!0}],keyword:/\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var n={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:e.languages.ruby}};delete e.languages.ruby.function,e.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,lookbehind:!0},"method-definition":{pattern:/(\bdef\s+)[\w.]+/,lookbehind:!0,inside:{function:/\w+$/,rest:e.languages.ruby}}}),e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z]\w*(?:[?!]|\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0,inside:{interpolation:n}},{pattern:/("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:n}}],e.languages.rb=e.languages.ruby}(e)}e.exports=n,n.displayName="ruby",n.aliases=["rb"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_erlang.bf797d8a.js b/assets/js/react-syntax-highlighter_languages_refractor_erlang.bf797d8a.js new file mode 100644 index 000000000..3552e158b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_erlang.bf797d8a.js @@ -0,0 +1,64 @@ +"use strict"; +exports.id = 2013; +exports.ids = [2013]; +exports.modules = { + +/***/ 4502: +/***/ ((module) => { + + + +module.exports = erlang +erlang.displayName = 'erlang' +erlang.aliases = [] +function erlang(Prism) { + Prism.languages.erlang = { + comment: /%.+/, + string: { + pattern: /"(?:\\.|[^\\"\r\n])*"/, + greedy: true + }, + 'quoted-function': { + pattern: /'(?:\\.|[^\\'\r\n])+'(?=\()/, + alias: 'function' + }, + 'quoted-atom': { + pattern: /'(?:\\.|[^\\'\r\n])+'/, + alias: 'atom' + }, + boolean: /\b(?:true|false)\b/, + keyword: /\b(?:fun|when|case|of|end|if|receive|after|try|catch)\b/, + number: [ + /\$\\?./, + /\d+#[a-z0-9]+/i, + /(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i + ], + function: /\b[a-z][\w@]*(?=\()/, + variable: { + // Look-behind is used to prevent wrong highlighting of atoms containing "@" + pattern: /(^|[^@])(?:\b|\?)[A-Z_][\w@]*/, + lookbehind: true + }, + operator: [ + /[=\/<>:]=|=[:\/]=|\+\+?|--?|[=*\/!]|\b(?:bnot|div|rem|band|bor|bxor|bsl|bsr|not|and|or|xor|orelse|andalso)\b/, + { + // We don't want to match << + pattern: /(^|[^<])<(?!<)/, + lookbehind: true + }, + { + // We don't want to match >> + pattern: /(^|[^>])>(?!>)/, + lookbehind: true + } + ], + atom: /\b[a-z][\w@]*/, + punctuation: /[()[\]{}:;,.#|]|<<|>>/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_erlang.d2284921.js b/assets/js/react-syntax-highlighter_languages_refractor_erlang.d2284921.js new file mode 100644 index 000000000..a108b94b1 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_erlang.d2284921.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2013],{4502:e=>{function a(e){e.languages.erlang={comment:/%.+/,string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},"quoted-function":{pattern:/'(?:\\.|[^\\'\r\n])+'(?=\()/,alias:"function"},"quoted-atom":{pattern:/'(?:\\.|[^\\'\r\n])+'/,alias:"atom"},boolean:/\b(?:true|false)\b/,keyword:/\b(?:fun|when|case|of|end|if|receive|after|try|catch)\b/,number:[/\$\\?./,/\d+#[a-z0-9]+/i,/(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i],function:/\b[a-z][\w@]*(?=\()/,variable:{pattern:/(^|[^@])(?:\b|\?)[A-Z_][\w@]*/,lookbehind:!0},operator:[/[=\/<>:]=|=[:\/]=|\+\+?|--?|[=*\/!]|\b(?:bnot|div|rem|band|bor|bxor|bsl|bsr|not|and|or|xor|orelse|andalso)\b/,{pattern:/(^|[^<])<(?!<)/,lookbehind:!0},{pattern:/(^|[^>])>(?!>)/,lookbehind:!0}],atom:/\b[a-z][\w@]*/,punctuation:/[()[\]{}:;,.#|]|<<|>>/}}e.exports=a,a.displayName="erlang",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_flow.5129f398.js b/assets/js/react-syntax-highlighter_languages_refractor_flow.5129f398.js new file mode 100644 index 000000000..b219f1c45 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_flow.5129f398.js @@ -0,0 +1,55 @@ +"use strict"; +exports.id = 9742; +exports.ids = [9742]; +exports.modules = { + +/***/ 37225: +/***/ ((module) => { + + + +module.exports = flow +flow.displayName = 'flow' +flow.aliases = [] +function flow(Prism) { + ;(function(Prism) { + Prism.languages.flow = Prism.languages.extend('javascript', {}) + Prism.languages.insertBefore('flow', 'keyword', { + type: [ + { + pattern: /\b(?:[Nn]umber|[Ss]tring|[Bb]oolean|Function|any|mixed|null|void)\b/, + alias: 'tag' + } + ] + }) + Prism.languages.flow[ + 'function-variable' + ].pattern = /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/i + delete Prism.languages.flow['parameter'] + Prism.languages.insertBefore('flow', 'operator', { + 'flow-punctuation': { + pattern: /\{\||\|\}/, + alias: 'punctuation' + } + }) + if (!Array.isArray(Prism.languages.flow.keyword)) { + Prism.languages.flow.keyword = [Prism.languages.flow.keyword] + } + Prism.languages.flow.keyword.unshift( + { + pattern: /(^|[^$]\b)(?:type|opaque|declare|Class)\b(?!\$)/, + lookbehind: true + }, + { + pattern: /(^|[^$]\B)\$(?:await|Diff|Exact|Keys|ObjMap|PropertyType|Shape|Record|Supertype|Subtype|Enum)\b(?!\$)/, + lookbehind: true + } + ) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_flow.78455277.js b/assets/js/react-syntax-highlighter_languages_refractor_flow.78455277.js new file mode 100644 index 000000000..ad349bf86 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_flow.78455277.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9742],{7225:e=>{function a(e){!function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Nn]umber|[Ss]tring|[Bb]oolean|Function|any|mixed|null|void)\b/,alias:"tag"}]}),e.languages.flow["function-variable"].pattern=/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/i,delete e.languages.flow.parameter,e.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(e.languages.flow.keyword)||(e.languages.flow.keyword=[e.languages.flow.keyword]),e.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:type|opaque|declare|Class)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:await|Diff|Exact|Keys|ObjMap|PropertyType|Shape|Record|Supertype|Subtype|Enum)\b(?!\$)/,lookbehind:!0})}(e)}e.exports=a,a.displayName="flow",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_fortran.710bcdce.js b/assets/js/react-syntax-highlighter_languages_refractor_fortran.710bcdce.js new file mode 100644 index 000000000..3a1e643fa --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_fortran.710bcdce.js @@ -0,0 +1,58 @@ +"use strict"; +exports.id = 2044; +exports.ids = [2044]; +exports.modules = { + +/***/ 16725: +/***/ ((module) => { + + + +module.exports = fortran +fortran.displayName = 'fortran' +fortran.aliases = [] +function fortran(Prism) { + Prism.languages.fortran = { + 'quoted-number': { + pattern: /[BOZ](['"])[A-F0-9]+\1/i, + alias: 'number' + }, + string: { + pattern: /(?:\w+_)?(['"])(?:\1\1|&(?:\r\n?|\n)(?:\s*!.+(?:\r\n?|\n))?|(?!\1).)*(?:\1|&)/, + inside: { + comment: { + pattern: /(&(?:\r\n?|\n)\s*)!.*/, + lookbehind: true + } + } + }, + comment: { + pattern: /!.*/, + greedy: true + }, + boolean: /\.(?:TRUE|FALSE)\.(?:_\w+)?/i, + number: /(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[ED][+-]?\d+)?(?:_\w+)?/i, + keyword: [ + // Types + /\b(?:INTEGER|REAL|DOUBLE ?PRECISION|COMPLEX|CHARACTER|LOGICAL)\b/i, // END statements + /\b(?:END ?)?(?:BLOCK ?DATA|DO|FILE|FORALL|FUNCTION|IF|INTERFACE|MODULE(?! PROCEDURE)|PROGRAM|SELECT|SUBROUTINE|TYPE|WHERE)\b/i, // Statements + /\b(?:ALLOCATABLE|ALLOCATE|BACKSPACE|CALL|CASE|CLOSE|COMMON|CONTAINS|CONTINUE|CYCLE|DATA|DEALLOCATE|DIMENSION|DO|END|EQUIVALENCE|EXIT|EXTERNAL|FORMAT|GO ?TO|IMPLICIT(?: NONE)?|INQUIRE|INTENT|INTRINSIC|MODULE PROCEDURE|NAMELIST|NULLIFY|OPEN|OPTIONAL|PARAMETER|POINTER|PRINT|PRIVATE|PUBLIC|READ|RETURN|REWIND|SAVE|SELECT|STOP|TARGET|WHILE|WRITE)\b/i, // Others + /\b(?:ASSIGNMENT|DEFAULT|ELEMENTAL|ELSE|ELSEWHERE|ELSEIF|ENTRY|IN|INCLUDE|INOUT|KIND|NULL|ONLY|OPERATOR|OUT|PURE|RECURSIVE|RESULT|SEQUENCE|STAT|THEN|USE)\b/i + ], + operator: [ + /\*\*|\/\/|=>|[=\/]=|[<>]=?|::|[+\-*=%]|\.(?:EQ|NE|LT|LE|GT|GE|NOT|AND|OR|EQV|NEQV)\.|\.[A-Z]+\./i, + { + // Use lookbehind to prevent confusion with (/ /) + pattern: /(^|(?!\().)\/(?!\))/, + lookbehind: true + } + ], + punctuation: /\(\/|\/\)|[(),;:&]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_fortran.8bc320ec.js b/assets/js/react-syntax-highlighter_languages_refractor_fortran.8bc320ec.js new file mode 100644 index 000000000..fdd8d591c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_fortran.8bc320ec.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2044],{6725:E=>{function N(E){E.languages.fortran={"quoted-number":{pattern:/[BOZ](['"])[A-F0-9]+\1/i,alias:"number"},string:{pattern:/(?:\w+_)?(['"])(?:\1\1|&(?:\r\n?|\n)(?:\s*!.+(?:\r\n?|\n))?|(?!\1).)*(?:\1|&)/,inside:{comment:{pattern:/(&(?:\r\n?|\n)\s*)!.*/,lookbehind:!0}}},comment:{pattern:/!.*/,greedy:!0},boolean:/\.(?:TRUE|FALSE)\.(?:_\w+)?/i,number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[ED][+-]?\d+)?(?:_\w+)?/i,keyword:[/\b(?:INTEGER|REAL|DOUBLE ?PRECISION|COMPLEX|CHARACTER|LOGICAL)\b/i,/\b(?:END ?)?(?:BLOCK ?DATA|DO|FILE|FORALL|FUNCTION|IF|INTERFACE|MODULE(?! PROCEDURE)|PROGRAM|SELECT|SUBROUTINE|TYPE|WHERE)\b/i,/\b(?:ALLOCATABLE|ALLOCATE|BACKSPACE|CALL|CASE|CLOSE|COMMON|CONTAINS|CONTINUE|CYCLE|DATA|DEALLOCATE|DIMENSION|DO|END|EQUIVALENCE|EXIT|EXTERNAL|FORMAT|GO ?TO|IMPLICIT(?: NONE)?|INQUIRE|INTENT|INTRINSIC|MODULE PROCEDURE|NAMELIST|NULLIFY|OPEN|OPTIONAL|PARAMETER|POINTER|PRINT|PRIVATE|PUBLIC|READ|RETURN|REWIND|SAVE|SELECT|STOP|TARGET|WHILE|WRITE)\b/i,/\b(?:ASSIGNMENT|DEFAULT|ELEMENTAL|ELSE|ELSEWHERE|ELSEIF|ENTRY|IN|INCLUDE|INOUT|KIND|NULL|ONLY|OPERATOR|OUT|PURE|RECURSIVE|RESULT|SEQUENCE|STAT|THEN|USE)\b/i],operator:[/\*\*|\/\/|=>|[=\/]=|[<>]=?|::|[+\-*=%]|\.(?:EQ|NE|LT|LE|GT|GE|NOT|AND|OR|EQV|NEQV)\.|\.[A-Z]+\./i,{pattern:/(^|(?!\().)\/(?!\))/,lookbehind:!0}],punctuation:/\(\/|\/\)|[(),;:&]/}}E.exports=N,N.displayName="fortran",N.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_fsharp.da71f901.js b/assets/js/react-syntax-highlighter_languages_refractor_fsharp.da71f901.js new file mode 100644 index 000000000..8602420ea --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_fsharp.da71f901.js @@ -0,0 +1,88 @@ +"use strict"; +exports.id = 741; +exports.ids = [741]; +exports.modules = { + +/***/ 95559: +/***/ ((module) => { + + + +module.exports = fsharp +fsharp.displayName = 'fsharp' +fsharp.aliases = [] +function fsharp(Prism) { + Prism.languages.fsharp = Prism.languages.extend('clike', { + comment: [ + { + pattern: /(^|[^\\])\(\*[\s\S]*?\*\)/, + lookbehind: true + }, + { + pattern: /(^|[^\\:])\/\/.*/, + lookbehind: true + } + ], + string: { + pattern: /(?:"""[\s\S]*?"""|@"(?:""|[^"])*"|"(?:\\[\s\S]|[^\\"])*")B?|'(?:[^\\']|\\(?:.|\d{3}|x[a-fA-F\d]{2}|u[a-fA-F\d]{4}|U[a-fA-F\d]{8}))'B?/, + greedy: true + }, + 'class-name': { + pattern: /(\b(?:exception|inherit|interface|new|of|type)\s+|\w\s*:\s*|\s:\??>\s*)[.\w]+\b(?:\s*(?:->|\*)\s*[.\w]+\b)*(?!\s*[:.])/, + lookbehind: true, + inside: { + operator: /->|\*/, + punctuation: /\./ + } + }, + keyword: /\b(?:let|return|use|yield)(?:!\B|\b)|\b(abstract|and|as|assert|base|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|global|if|in|inherit|inline|interface|internal|lazy|match|member|module|mutable|namespace|new|not|null|of|open|or|override|private|public|rec|select|static|struct|then|to|true|try|type|upcast|val|void|when|while|with|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|include|method|mixin|object|parallel|process|protected|pure|sealed|tailcall|trait|virtual|volatile)\b/, + number: [ + /\b0x[\da-fA-F]+(?:un|lf|LF)?\b/, + /\b0b[01]+(?:y|uy)?\b/, + /(?:\b\d+\.?\d*|\B\.\d+)(?:[fm]|e[+-]?\d+)?\b/i, + /\b\d+(?:[IlLsy]|u[lsy]?|UL)?\b/ + ], + operator: /([<>~&^])\1\1|([*.:<>&])\2|<-|->|[!=:]=|<?\|{1,3}>?|\??(?:<=|>=|<>|[-+*/%=<>])\??|[!?^&]|~[+~-]|:>|:\?>?/ + }) + Prism.languages.insertBefore('fsharp', 'keyword', { + preprocessor: { + pattern: /^[^\r\n\S]*#.*/m, + alias: 'property', + inside: { + directive: { + pattern: /(\s*#)\b(?:else|endif|if|light|line|nowarn)\b/, + lookbehind: true, + alias: 'keyword' + } + } + } + }) + Prism.languages.insertBefore('fsharp', 'punctuation', { + 'computation-expression': { + pattern: /[_a-z]\w*(?=\s*\{)/i, + alias: 'keyword' + } + }) + Prism.languages.insertBefore('fsharp', 'string', { + annotation: { + pattern: /\[<.+?>\]/, + inside: { + punctuation: /^\[<|>\]$/, + 'class-name': { + pattern: /^\w+$|(^|;\s*)[A-Z]\w*(?=\()/, + lookbehind: true + }, + 'annotation-content': { + pattern: /[\s\S]+/, + inside: Prism.languages.fsharp + } + } + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_fsharp.e1390f70.js b/assets/js/react-syntax-highlighter_languages_refractor_fsharp.e1390f70.js new file mode 100644 index 000000000..f003d315a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_fsharp.e1390f70.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[741],{5559:e=>{function t(e){e.languages.fsharp=e.languages.extend("clike",{comment:[{pattern:/(^|[^\\])\(\*[\s\S]*?\*\)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:{pattern:/(?:"""[\s\S]*?"""|@"(?:""|[^"])*"|"(?:\\[\s\S]|[^\\"])*")B?|'(?:[^\\']|\\(?:.|\d{3}|x[a-fA-F\d]{2}|u[a-fA-F\d]{4}|U[a-fA-F\d]{8}))'B?/,greedy:!0},"class-name":{pattern:/(\b(?:exception|inherit|interface|new|of|type)\s+|\w\s*:\s*|\s:\??>\s*)[.\w]+\b(?:\s*(?:->|\*)\s*[.\w]+\b)*(?!\s*[:.])/,lookbehind:!0,inside:{operator:/->|\*/,punctuation:/\./}},keyword:/\b(?:let|return|use|yield)(?:!\B|\b)|\b(abstract|and|as|assert|base|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|global|if|in|inherit|inline|interface|internal|lazy|match|member|module|mutable|namespace|new|not|null|of|open|or|override|private|public|rec|select|static|struct|then|to|true|try|type|upcast|val|void|when|while|with|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|include|method|mixin|object|parallel|process|protected|pure|sealed|tailcall|trait|virtual|volatile)\b/,number:[/\b0x[\da-fA-F]+(?:un|lf|LF)?\b/,/\b0b[01]+(?:y|uy)?\b/,/(?:\b\d+\.?\d*|\B\.\d+)(?:[fm]|e[+-]?\d+)?\b/i,/\b\d+(?:[IlLsy]|u[lsy]?|UL)?\b/],operator:/([<>~&^])\1\1|([*.:<>&])\2|<-|->|[!=:]=|<?\|{1,3}>?|\??(?:<=|>=|<>|[-+*/%=<>])\??|[!?^&]|~[+~-]|:>|:\?>?/}),e.languages.insertBefore("fsharp","keyword",{preprocessor:{pattern:/^[^\r\n\S]*#.*/m,alias:"property",inside:{directive:{pattern:/(\s*#)\b(?:else|endif|if|light|line|nowarn)\b/,lookbehind:!0,alias:"keyword"}}}}),e.languages.insertBefore("fsharp","punctuation",{"computation-expression":{pattern:/[_a-z]\w*(?=\s*\{)/i,alias:"keyword"}}),e.languages.insertBefore("fsharp","string",{annotation:{pattern:/\[<.+?>\]/,inside:{punctuation:/^\[<|>\]$/,"class-name":{pattern:/^\w+$|(^|;\s*)[A-Z]\w*(?=\()/,lookbehind:!0},"annotation-content":{pattern:/[\s\S]+/,inside:e.languages.fsharp}}}})}e.exports=t,t.displayName="fsharp",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_gedcom.95e27463.js b/assets/js/react-syntax-highlighter_languages_refractor_gedcom.95e27463.js new file mode 100644 index 000000000..317926321 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_gedcom.95e27463.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5867],{1549:e=>{function a(e){e.languages.gedcom={"line-value":{pattern:/(^\s*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?\w+ +).+/m,lookbehind:!0,inside:{pointer:{pattern:/^@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@$/,alias:"variable"}}},tag:{pattern:/(^\s*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?)\w+/m,lookbehind:!0,alias:"string"},level:{pattern:/(^\s*)\d+/m,lookbehind:!0,alias:"number"},pointer:{pattern:/@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@/,alias:"variable"}}}e.exports=a,a.displayName="gedcom",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_gedcom.9e22bda0.js b/assets/js/react-syntax-highlighter_languages_refractor_gedcom.9e22bda0.js new file mode 100644 index 000000000..05365d56f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_gedcom.9e22bda0.js @@ -0,0 +1,49 @@ +"use strict"; +exports.id = 5867; +exports.ids = [5867]; +exports.modules = { + +/***/ 81549: +/***/ ((module) => { + + + +module.exports = gedcom +gedcom.displayName = 'gedcom' +gedcom.aliases = [] +function gedcom(Prism) { + Prism.languages.gedcom = { + 'line-value': { + // Preceded by level, optional pointer, and tag + pattern: /(^\s*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?\w+ +).+/m, + lookbehind: true, + inside: { + pointer: { + pattern: /^@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@$/, + alias: 'variable' + } + } + }, + tag: { + // Preceded by level and optional pointer + pattern: /(^\s*\d+ +(?:@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@ +)?)\w+/m, + lookbehind: true, + alias: 'string' + }, + level: { + pattern: /(^\s*)\d+/m, + lookbehind: true, + alias: 'number' + }, + pointer: { + pattern: /@\w[\w!"$%&'()*+,\-./:;<=>?[\\\]^`{|}~\x80-\xfe #]*@/, + alias: 'variable' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_gherkin.3e641198.js b/assets/js/react-syntax-highlighter_languages_refractor_gherkin.3e641198.js new file mode 100644 index 000000000..154e51bcc --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_gherkin.3e641198.js @@ -0,0 +1,100 @@ +"use strict"; +exports.id = 6051; +exports.ids = [6051]; +exports.modules = { + +/***/ 6024: +/***/ ((module) => { + + + +module.exports = gherkin +gherkin.displayName = 'gherkin' +gherkin.aliases = [] +function gherkin(Prism) { + Prism.languages.gherkin = { + pystring: { + pattern: /("""|''')[\s\S]+?\1/, + alias: 'string' + }, + comment: { + pattern: /((?:^|\r?\n|\r)[ \t]*)#.*/, + lookbehind: true + }, + tag: { + pattern: /((?:^|\r?\n|\r)[ \t]*)@\S*/, + lookbehind: true + }, + feature: { + pattern: /((?:^|\r?\n|\r)[ \t]*)(?:Ability|Ahoy matey!|Arwedd|Aspekt|Besigheid Behoefte|Business Need|Caracteristica|Característica|Egenskab|Egenskap|Eiginleiki|Feature|Fīča|Fitur|Fonctionnalité|Fonksyonalite|Funcionalidade|Funcionalitat|Functionalitate|Funcţionalitate|Funcționalitate|Functionaliteit|Fungsi|Funkcia|Funkcija|Funkcionalitāte|Funkcionalnost|Funkcja|Funksie|Funktionalität|Funktionalitéit|Funzionalità|Hwaet|Hwæt|Jellemző|Karakteristik|laH|Lastnost|Mak|Mogucnost|Mogućnost|Moznosti|Možnosti|OH HAI|Omadus|Ominaisuus|Osobina|Özellik|perbogh|poQbogh malja'|Potrzeba biznesowa|Požadavek|Požiadavka|Pretty much|Qap|Qu'meH 'ut|Savybė|Tính năng|Trajto|Vermoë|Vlastnosť|Właściwość|Značilnost|Δυνατότητα|Λειτουργία|Могућност|Мөмкинлек|Особина|Свойство|Үзенчәлеклелек|Функционал|Функционалност|Функция|Функціонал|תכונה|خاصية|خصوصیت|صلاحیت|کاروبار کی ضرورت|وِیژگی|रूप लेख|ਖਾਸੀਅਤ|ਨਕਸ਼ ਨੁਹਾਰ|ਮੁਹਾਂਦਰਾ|గుణము|ಹೆಚ್ಚಳ|ความต้องการทางธุรกิจ|ความสามารถ|โครงหลัก|기능|フィーチャ|功能|機能):(?:[^:]+(?:\r?\n|\r|$))*/, + lookbehind: true, + inside: { + important: { + pattern: /(:)[^\r\n]+/, + lookbehind: true + }, + keyword: /[^:\r\n]+:/ + } + }, + scenario: { + pattern: /((?:^|\r?\n|\r)[ \t]*)(?:Abstract Scenario|Abstrakt Scenario|Achtergrond|Aer|Ær|Agtergrond|All y'all|Antecedentes|Antecedents|Atburðarás|Atburðarásir|Awww, look mate|B4|Background|Baggrund|Bakgrund|Bakgrunn|Bakgrunnur|Beispiele|Beispiller|Bối cảnh|Cefndir|Cenario|Cenário|Cenario de Fundo|Cenário de Fundo|Cenarios|Cenários|Contesto|Context|Contexte|Contexto|Conto|Contoh|Contone|Dæmi|Dasar|Dead men tell no tales|Delineacao do Cenario|Delineação do Cenário|Dis is what went down|Dữ liệu|Dyagram senaryo|Dyagram Senaryo|Egzanp|Ejemplos|Eksempler|Ekzemploj|Enghreifftiau|Esbozo do escenario|Escenari|Escenario|Esempi|Esquema de l'escenari|Esquema del escenario|Esquema do Cenario|Esquema do Cenário|Examples|EXAMPLZ|Exempel|Exemple|Exemples|Exemplos|First off|Fono|Forgatókönyv|Forgatókönyv vázlat|Fundo|Geçmiş|ghantoH|Grundlage|Hannergrond|Háttér|Heave to|Istorik|Juhtumid|Keadaan|Khung kịch bản|Khung tình huống|Kịch bản|Koncept|Konsep skenario|Kontèks|Kontekst|Kontekstas|Konteksts|Kontext|Konturo de la scenaro|Latar Belakang|lut|lut chovnatlh|lutmey|Lýsing Atburðarásar|Lýsing Dæma|Menggariskan Senario|MISHUN|MISHUN SRSLY|mo'|Náčrt Scenára|Náčrt Scénáře|Náčrt Scenáru|Oris scenarija|Örnekler|Osnova|Osnova Scenára|Osnova scénáře|Osnutek|Ozadje|Paraugs|Pavyzdžiai|Példák|Piemēri|Plan du scénario|Plan du Scénario|Plan senaryo|Plan Senaryo|Plang vum Szenario|Pozadí|Pozadie|Pozadina|Príklady|Příklady|Primer|Primeri|Primjeri|Przykłady|Raamstsenaarium|Reckon it's like|Rerefons|Scenár|Scénář|Scenarie|Scenarij|Scenarijai|Scenarijaus šablonas|Scenariji|Scenārijs|Scenārijs pēc parauga|Scenarijus|Scenario|Scénario|Scenario Amlinellol|Scenario Outline|Scenario Template|Scenariomal|Scenariomall|Scenarios|Scenariu|Scenariusz|Scenaro|Schema dello scenario|Se ðe|Se the|Se þe|Senario|Senaryo|Senaryo deskripsyon|Senaryo Deskripsyon|Senaryo taslağı|Shiver me timbers|Situācija|Situai|Situasie|Situasie Uiteensetting|Skenario|Skenario konsep|Skica|Structura scenariu|Structură scenariu|Struktura scenarija|Stsenaarium|Swa|Swa hwaer swa|Swa hwær swa|Szablon scenariusza|Szenario|Szenariogrundriss|Tapaukset|Tapaus|Tapausaihio|Taust|Tausta|Template Keadaan|Template Senario|Template Situai|The thing of it is|Tình huống|Variantai|Voorbeelde|Voorbeelden|Wharrimean is|Yo\-ho\-ho|You'll wanna|Założenia|Παραδείγματα|Περιγραφή Σεναρίου|Σενάρια|Σενάριο|Υπόβαθρο|Кереш|Контекст|Концепт|Мисаллар|Мисоллар|Основа|Передумова|Позадина|Предистория|Предыстория|Приклади|Пример|Примери|Примеры|Рамка на сценарий|Скица|Структура сценарија|Структура сценария|Структура сценарію|Сценарий|Сценарий структураси|Сценарийның төзелеше|Сценарији|Сценарио|Сценарій|Тарих|Үрнәкләр|דוגמאות|רקע|תבנית תרחיש|תרחיש|الخلفية|الگوی سناریو|امثلة|پس منظر|زمینه|سناریو|سيناريو|سيناريو مخطط|مثالیں|منظر نامے کا خاکہ|منظرنامہ|نمونه ها|उदाहरण|परिदृश्य|परिदृश्य रूपरेखा|पृष्ठभूमि|ਉਦਾਹਰਨਾਂ|ਪਟਕਥਾ|ਪਟਕਥਾ ਢਾਂਚਾ|ਪਟਕਥਾ ਰੂਪ ਰੇਖਾ|ਪਿਛੋਕੜ|ఉదాహరణలు|కథనం|నేపథ్యం|సన్నివేశం|ಉದಾಹರಣೆಗಳು|ಕಥಾಸಾರಾಂಶ|ವಿವರಣೆ|ಹಿನ್ನೆಲೆ|โครงสร้างของเหตุการณ์|ชุดของตัวอย่าง|ชุดของเหตุการณ์|แนวคิด|สรุปเหตุการณ์|เหตุการณ์|배경|시나리오|시나리오 개요|예|サンプル|シナリオ|シナリオアウトライン|シナリオテンプレ|シナリオテンプレート|テンプレ|例|例子|剧本|剧本大纲|劇本|劇本大綱|场景|场景大纲|場景|場景大綱|背景):[^:\r\n]*/, + lookbehind: true, + inside: { + important: { + pattern: /(:)[^\r\n]*/, + lookbehind: true + }, + keyword: /[^:\r\n]+:/ + } + }, + 'table-body': { + // Look-behind is used to skip the table head, which has the same format as any table row + pattern: /((?:\r?\n|\r)[ \t]*\|.+\|[^\r\n]*)+/, + lookbehind: true, + inside: { + outline: { + pattern: /<[^>]+?>/, + alias: 'variable' + }, + td: { + pattern: /\s*[^\s|][^|]*/, + alias: 'string' + }, + punctuation: /\|/ + } + }, + 'table-head': { + pattern: /(?:\r?\n|\r)[ \t]*\|.+\|[^\r\n]*/, + inside: { + th: { + pattern: /\s*[^\s|][^|]*/, + alias: 'variable' + }, + punctuation: /\|/ + } + }, + atrule: { + pattern: /((?:\r?\n|\r)[ \t]+)(?:'ach|'a|'ej|7|a|A také|A taktiež|A tiež|A zároveň|Aber|Ac|Adott|Akkor|Ak|Aleshores|Ale|Ali|Allora|Alors|Als|Ama|Amennyiben|Amikor|Ampak|an|AN|Ananging|And y'all|And|Angenommen|Anrhegedig a|An|Apabila|Atès|Atesa|Atunci|Avast!|Aye|A|awer|Bagi|Banjur|Bet|Biết|Blimey!|Buh|But at the end of the day I reckon|But y'all|But|BUT|Cal|Când|Cando|Cand|Ce|Cuando|Če|Ða ðe|Ða|Dadas|Dada|Dados|Dado|DaH ghu' bejlu'|dann|Dann|Dano|Dan|Dar|Dat fiind|Data|Date fiind|Date|Dati fiind|Dati|Daţi fiind|Dați fiind|Dato|DEN|Den youse gotta|Dengan|De|Diberi|Diyelim ki|Donada|Donat|Donitaĵo|Do|Dun|Duota|Ðurh|Eeldades|Ef|Eğer ki|Entao|Então|Entón|Entonces|En|Epi|E|És|Etant donnée|Etant donné|Et|Étant données|Étant donnée|Étant donné|Etant données|Etant donnés|Étant donnés|Fakat|Gangway!|Gdy|Gegeben seien|Gegeben sei|Gegeven|Gegewe|ghu' noblu'|Gitt|Given y'all|Given|Givet|Givun|Ha|Cho|I CAN HAZ|In|Ir|It's just unbelievable|I|Ja|Jeśli|Jeżeli|Kadar|Kada|Kad|Kai|Kaj|Když|Keď|Kemudian|Ketika|Khi|Kiedy|Ko|Kuid|Kui|Kun|Lan|latlh|Le sa a|Let go and haul|Le|Lè sa a|Lè|Logo|Lorsqu'<|Lorsque|mä|Maar|Mais|Mając|Majd|Maka|Manawa|Mas|Ma|Menawa|Men|Mutta|Nalikaning|Nalika|Nanging|Når|När|Nato|Nhưng|Niin|Njuk|O zaman|Og|Och|Oletetaan|Onda|Ond|Oraz|Pak|Pero|Però|Podano|Pokiaľ|Pokud|Potem|Potom|Privzeto|Pryd|qaSDI'|Quando|Quand|Quan|Så|Sed|Se|Siis|Sipoze ke|Sipoze Ke|Sipoze|Si|Şi|Și|Soit|Stel|Tada|Tad|Takrat|Tak|Tapi|Ter|Tetapi|Tha the|Tha|Then y'all|Then|Thì|Thurh|Toda|Too right|ugeholl|Und|Un|Và|vaj|Vendar|Ve|wann|Wanneer|WEN|Wenn|When y'all|When|Wtedy|Wun|Y'know|Yeah nah|Yna|Youse know like when|Youse know when youse got|Y|Za predpokladu|Za předpokladu|Zadani|Zadano|Zadan|Zadate|Zadato|Zakładając|Zaradi|Zatati|Þa þe|Þa|Þá|Þegar|Þurh|Αλλά|Δεδομένου|Και|Όταν|Τότε|А також|Агар|Але|Али|Аммо|А|Әгәр|Әйтик|Әмма|Бирок|Ва|Вә|Дадено|Дано|Допустим|Если|Задате|Задати|Задато|И|І|К тому же|Када|Кад|Когато|Когда|Коли|Ләкин|Лекин|Нәтиҗәдә|Нехай|Но|Онда|Припустимо, що|Припустимо|Пусть|Также|Та|Тогда|Тоді|То|Унда|Һәм|Якщо|אבל|אזי|אז|בהינתן|וגם|כאשר|آنگاه|اذاً|اگر|اما|اور|با فرض|بالفرض|بفرض|پھر|تب|ثم|جب|عندما|فرض کیا|لكن|لیکن|متى|هنگامی|و|अगर|और|कदा|किन्तु|चूंकि|जब|तथा|तदा|तब|परन्तु|पर|यदि|ਅਤੇ|ਜਦੋਂ|ਜਿਵੇਂ ਕਿ|ਜੇਕਰ|ਤਦ|ਪਰ|అప్పుడు|ఈ పరిస్థితిలో|కాని|చెప్పబడినది|మరియు|ಆದರೆ|ನಂತರ|ನೀಡಿದ|ಮತ್ತು|ಸ್ಥಿತಿಯನ್ನು|กำหนดให้|ดังนั้น|แต่|เมื่อ|และ|그러면<|그리고<|단<|만약<|만일<|먼저<|조건<|하지만<|かつ<|しかし<|ただし<|ならば<|もし<|並且<|但し<|但是<|假如<|假定<|假設<|假设<|前提<|同时<|同時<|并且<|当<|當<|而且<|那么<|那麼<)(?=[ \t]+)/, + lookbehind: true + }, + string: { + pattern: /"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*'/, + inside: { + outline: { + pattern: /<[^>]+?>/, + alias: 'variable' + } + } + }, + outline: { + pattern: /<[^>]+?>/, + alias: 'variable' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_gherkin.798dee61.js b/assets/js/react-syntax-highlighter_languages_refractor_gherkin.798dee61.js new file mode 100644 index 000000000..18ed1d887 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_gherkin.798dee61.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6051],{6024:a=>{function n(a){a.languages.gherkin={pystring:{pattern:/("""|''')[\s\S]+?\1/,alias:"string"},comment:{pattern:/((?:^|\r?\n|\r)[ \t]*)#.*/,lookbehind:!0},tag:{pattern:/((?:^|\r?\n|\r)[ \t]*)@\S*/,lookbehind:!0},feature:{pattern:/((?:^|\r?\n|\r)[ \t]*)(?:Ability|Ahoy matey!|Arwedd|Aspekt|Besigheid Behoefte|Business Need|Caracteristica|Caracter\xedstica|Egenskab|Egenskap|Eiginleiki|Feature|F\u012b\u010da|Fitur|Fonctionnalit\xe9|Fonksyonalite|Funcionalidade|Funcionalitat|Functionalitate|Func\u0163ionalitate|Func\u021bionalitate|Functionaliteit|Fungsi|Funkcia|Funkcija|Funkcionalit\u0101te|Funkcionalnost|Funkcja|Funksie|Funktionalit\xe4t|Funktionalit\xe9it|Funzionalit\xe0|Hwaet|Hw\xe6t|Jellemz\u0151|Karakteristik|laH|Lastnost|Mak|Mogucnost|Mogu\u0107nost|Moznosti|Mo\u017enosti|OH HAI|Omadus|Ominaisuus|Osobina|\xd6zellik|perbogh|poQbogh malja'|Potrzeba biznesowa|Po\u017eadavek|Po\u017eiadavka|Pretty much|Qap|Qu'meH 'ut|Savyb\u0117|T\xednh n\u0103ng|Trajto|Vermo\xeb|Vlastnos\u0165|W\u0142a\u015bciwo\u015b\u0107|Zna\u010dilnost|\u0394\u03c5\u03bd\u03b1\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1|\u039b\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1|\u041c\u043e\u0433\u0443\u045b\u043d\u043e\u0441\u0442|\u041c\u04e9\u043c\u043a\u0438\u043d\u043b\u0435\u043a|\u041e\u0441\u043e\u0431\u0438\u043d\u0430|\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u043e|\u04ae\u0437\u0435\u043d\u0447\u04d9\u043b\u0435\u043a\u043b\u0435\u043b\u0435\u043a|\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b|\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442|\u0424\u0443\u043d\u043a\u0446\u0438\u044f|\u0424\u0443\u043d\u043a\u0446\u0456\u043e\u043d\u0430\u043b|\u05ea\u05db\u05d5\u05e0\u05d4|\u062e\u0627\u0635\u064a\u0629|\u062e\u0635\u0648\u0635\u06cc\u062a|\u0635\u0644\u0627\u062d\u06cc\u062a|\u06a9\u0627\u0631\u0648\u0628\u0627\u0631 \u06a9\u06cc \u0636\u0631\u0648\u0631\u062a|\u0648\u0650\u06cc\u0698\u06af\u06cc|\u0930\u0942\u092a \u0932\u0947\u0916|\u0a16\u0a3e\u0a38\u0a40\u0a05\u0a24|\u0a28\u0a15\u0a36 \u0a28\u0a41\u0a39\u0a3e\u0a30|\u0a2e\u0a41\u0a39\u0a3e\u0a02\u0a26\u0a30\u0a3e|\u0c17\u0c41\u0c23\u0c2e\u0c41|\u0cb9\u0cc6\u0c9a\u0ccd\u0c9a\u0cb3|\u0e04\u0e27\u0e32\u0e21\u0e15\u0e49\u0e2d\u0e07\u0e01\u0e32\u0e23\u0e17\u0e32\u0e07\u0e18\u0e38\u0e23\u0e01\u0e34\u0e08|\u0e04\u0e27\u0e32\u0e21\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16|\u0e42\u0e04\u0e23\u0e07\u0e2b\u0e25\u0e31\u0e01|\uae30\ub2a5|\u30d5\u30a3\u30fc\u30c1\u30e3|\u529f\u80fd|\u6a5f\u80fd):(?:[^:]+(?:\r?\n|\r|$))*/,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]+/,lookbehind:!0},keyword:/[^:\r\n]+:/}},scenario:{pattern:/((?:^|\r?\n|\r)[ \t]*)(?:Abstract Scenario|Abstrakt Scenario|Achtergrond|Aer|\xc6r|Agtergrond|All y'all|Antecedentes|Antecedents|Atbur\xf0ar\xe1s|Atbur\xf0ar\xe1sir|Awww, look mate|B4|Background|Baggrund|Bakgrund|Bakgrunn|Bakgrunnur|Beispiele|Beispiller|B\u1ed1i c\u1ea3nh|Cefndir|Cenario|Cen\xe1rio|Cenario de Fundo|Cen\xe1rio de Fundo|Cenarios|Cen\xe1rios|Contesto|Context|Contexte|Contexto|Conto|Contoh|Contone|D\xe6mi|Dasar|Dead men tell no tales|Delineacao do Cenario|Delinea\xe7\xe3o do Cen\xe1rio|Dis is what went down|D\u1eef li\u1ec7u|Dyagram senaryo|Dyagram Senaryo|Egzanp|Ejemplos|Eksempler|Ekzemploj|Enghreifftiau|Esbozo do escenario|Escenari|Escenario|Esempi|Esquema de l'escenari|Esquema del escenario|Esquema do Cenario|Esquema do Cen\xe1rio|Examples|EXAMPLZ|Exempel|Exemple|Exemples|Exemplos|First off|Fono|Forgat\xf3k\xf6nyv|Forgat\xf3k\xf6nyv v\xe1zlat|Fundo|Ge\xe7mi\u015f|ghantoH|Grundlage|Hannergrond|H\xe1tt\xe9r|Heave to|Istorik|Juhtumid|Keadaan|Khung k\u1ecbch b\u1ea3n|Khung t\xecnh hu\u1ed1ng|K\u1ecbch b\u1ea3n|Koncept|Konsep skenario|Kont\xe8ks|Kontekst|Kontekstas|Konteksts|Kontext|Konturo de la scenaro|Latar Belakang|lut|lut chovnatlh|lutmey|L\xfdsing Atbur\xf0ar\xe1sar|L\xfdsing D\xe6ma|Menggariskan Senario|MISHUN|MISHUN SRSLY|mo'|N\xe1\u010drt Scen\xe1ra|N\xe1\u010drt Sc\xe9n\xe1\u0159e|N\xe1\u010drt Scen\xe1ru|Oris scenarija|\xd6rnekler|Osnova|Osnova Scen\xe1ra|Osnova sc\xe9n\xe1\u0159e|Osnutek|Ozadje|Paraugs|Pavyzd\u017eiai|P\xe9ld\xe1k|Piem\u0113ri|Plan du sc\xe9nario|Plan du Sc\xe9nario|Plan senaryo|Plan Senaryo|Plang vum Szenario|Pozad\xed|Pozadie|Pozadina|Pr\xedklady|P\u0159\xedklady|Primer|Primeri|Primjeri|Przyk\u0142ady|Raamstsenaarium|Reckon it's like|Rerefons|Scen\xe1r|Sc\xe9n\xe1\u0159|Scenarie|Scenarij|Scenarijai|Scenarijaus \u0161ablonas|Scenariji|Scen\u0101rijs|Scen\u0101rijs p\u0113c parauga|Scenarijus|Scenario|Sc\xe9nario|Scenario Amlinellol|Scenario Outline|Scenario Template|Scenariomal|Scenariomall|Scenarios|Scenariu|Scenariusz|Scenaro|Schema dello scenario|Se \xf0e|Se the|Se \xfee|Senario|Senaryo|Senaryo deskripsyon|Senaryo Deskripsyon|Senaryo tasla\u011f\u0131|Shiver me timbers|Situ\u0101cija|Situai|Situasie|Situasie Uiteensetting|Skenario|Skenario konsep|Skica|Structura scenariu|Structur\u0103 scenariu|Struktura scenarija|Stsenaarium|Swa|Swa hwaer swa|Swa hw\xe6r swa|Szablon scenariusza|Szenario|Szenariogrundriss|Tapaukset|Tapaus|Tapausaihio|Taust|Tausta|Template Keadaan|Template Senario|Template Situai|The thing of it is|T\xecnh hu\u1ed1ng|Variantai|Voorbeelde|Voorbeelden|Wharrimean is|Yo\-ho\-ho|You'll wanna|Za\u0142o\u017cenia|\u03a0\u03b1\u03c1\u03b1\u03b4\u03b5\u03af\u03b3\u03bc\u03b1\u03c4\u03b1|\u03a0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03a3\u03b5\u03bd\u03b1\u03c1\u03af\u03bf\u03c5|\u03a3\u03b5\u03bd\u03ac\u03c1\u03b9\u03b1|\u03a3\u03b5\u03bd\u03ac\u03c1\u03b9\u03bf|\u03a5\u03c0\u03cc\u03b2\u03b1\u03b8\u03c1\u03bf|\u041a\u0435\u0440\u0435\u0448|\u041a\u043e\u043d\u0442\u0435\u043a\u0441\u0442|\u041a\u043e\u043d\u0446\u0435\u043f\u0442|\u041c\u0438\u0441\u0430\u043b\u043b\u0430\u0440|\u041c\u0438\u0441\u043e\u043b\u043b\u0430\u0440|\u041e\u0441\u043d\u043e\u0432\u0430|\u041f\u0435\u0440\u0435\u0434\u0443\u043c\u043e\u0432\u0430|\u041f\u043e\u0437\u0430\u0434\u0438\u043d\u0430|\u041f\u0440\u0435\u0434\u0438\u0441\u0442\u043e\u0440\u0438\u044f|\u041f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044f|\u041f\u0440\u0438\u043a\u043b\u0430\u0434\u0438|\u041f\u0440\u0438\u043c\u0435\u0440|\u041f\u0440\u0438\u043c\u0435\u0440\u0438|\u041f\u0440\u0438\u043c\u0435\u0440\u044b|\u0420\u0430\u043c\u043a\u0430 \u043d\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439|\u0421\u043a\u0438\u0446\u0430|\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0458\u0430|\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f|\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0446\u0435\u043d\u0430\u0440\u0456\u044e|\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439|\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u0441\u0438|\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0439\u043d\u044b\u04a3 \u0442\u04e9\u0437\u0435\u043b\u0435\u0448\u0435|\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0458\u0438|\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u043e|\u0421\u0446\u0435\u043d\u0430\u0440\u0456\u0439|\u0422\u0430\u0440\u0438\u0445|\u04ae\u0440\u043d\u04d9\u043a\u043b\u04d9\u0440|\u05d3\u05d5\u05d2\u05de\u05d0\u05d5\u05ea|\u05e8\u05e7\u05e2|\u05ea\u05d1\u05e0\u05d9\u05ea \u05ea\u05e8\u05d7\u05d9\u05e9|\u05ea\u05e8\u05d7\u05d9\u05e9|\u0627\u0644\u062e\u0644\u0641\u064a\u0629|\u0627\u0644\u06af\u0648\u06cc \u0633\u0646\u0627\u0631\u06cc\u0648|\u0627\u0645\u062b\u0644\u0629|\u067e\u0633 \u0645\u0646\u0638\u0631|\u0632\u0645\u06cc\u0646\u0647|\u0633\u0646\u0627\u0631\u06cc\u0648|\u0633\u064a\u0646\u0627\u0631\u064a\u0648|\u0633\u064a\u0646\u0627\u0631\u064a\u0648 \u0645\u062e\u0637\u0637|\u0645\u062b\u0627\u0644\u06cc\u06ba|\u0645\u0646\u0638\u0631 \u0646\u0627\u0645\u06d2 \u06a9\u0627 \u062e\u0627\u06a9\u06c1|\u0645\u0646\u0638\u0631\u0646\u0627\u0645\u06c1|\u0646\u0645\u0648\u0646\u0647 \u0647\u0627|\u0909\u0926\u093e\u0939\u0930\u0923|\u092a\u0930\u093f\u0926\u0943\u0936\u094d\u092f|\u092a\u0930\u093f\u0926\u0943\u0936\u094d\u092f \u0930\u0942\u092a\u0930\u0947\u0916\u093e|\u092a\u0943\u0937\u094d\u0920\u092d\u0942\u092e\u093f|\u0a09\u0a26\u0a3e\u0a39\u0a30\u0a28\u0a3e\u0a02|\u0a2a\u0a1f\u0a15\u0a25\u0a3e|\u0a2a\u0a1f\u0a15\u0a25\u0a3e \u0a22\u0a3e\u0a02\u0a1a\u0a3e|\u0a2a\u0a1f\u0a15\u0a25\u0a3e \u0a30\u0a42\u0a2a \u0a30\u0a47\u0a16\u0a3e|\u0a2a\u0a3f\u0a1b\u0a4b\u0a15\u0a5c|\u0c09\u0c26\u0c3e\u0c39\u0c30\u0c23\u0c32\u0c41|\u0c15\u0c25\u0c28\u0c02|\u0c28\u0c47\u0c2a\u0c25\u0c4d\u0c2f\u0c02|\u0c38\u0c28\u0c4d\u0c28\u0c3f\u0c35\u0c47\u0c36\u0c02|\u0c89\u0ca6\u0cbe\u0cb9\u0cb0\u0ca3\u0cc6\u0c97\u0cb3\u0cc1|\u0c95\u0ca5\u0cbe\u0cb8\u0cbe\u0cb0\u0cbe\u0c82\u0cb6|\u0cb5\u0cbf\u0cb5\u0cb0\u0ca3\u0cc6|\u0cb9\u0cbf\u0ca8\u0ccd\u0ca8\u0cc6\u0cb2\u0cc6|\u0e42\u0e04\u0e23\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e02\u0e2d\u0e07\u0e40\u0e2b\u0e15\u0e38\u0e01\u0e32\u0e23\u0e13\u0e4c|\u0e0a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e15\u0e31\u0e27\u0e2d\u0e22\u0e48\u0e32\u0e07|\u0e0a\u0e38\u0e14\u0e02\u0e2d\u0e07\u0e40\u0e2b\u0e15\u0e38\u0e01\u0e32\u0e23\u0e13\u0e4c|\u0e41\u0e19\u0e27\u0e04\u0e34\u0e14|\u0e2a\u0e23\u0e38\u0e1b\u0e40\u0e2b\u0e15\u0e38\u0e01\u0e32\u0e23\u0e13\u0e4c|\u0e40\u0e2b\u0e15\u0e38\u0e01\u0e32\u0e23\u0e13\u0e4c|\ubc30\uacbd|\uc2dc\ub098\ub9ac\uc624|\uc2dc\ub098\ub9ac\uc624 \uac1c\uc694|\uc608|\u30b5\u30f3\u30d7\u30eb|\u30b7\u30ca\u30ea\u30aa|\u30b7\u30ca\u30ea\u30aa\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3|\u30b7\u30ca\u30ea\u30aa\u30c6\u30f3\u30d7\u30ec|\u30b7\u30ca\u30ea\u30aa\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8|\u30c6\u30f3\u30d7\u30ec|\u4f8b|\u4f8b\u5b50|\u5267\u672c|\u5267\u672c\u5927\u7eb2|\u5287\u672c|\u5287\u672c\u5927\u7db1|\u573a\u666f|\u573a\u666f\u5927\u7eb2|\u5834\u666f|\u5834\u666f\u5927\u7db1|\u80cc\u666f):[^:\r\n]*/,lookbehind:!0,inside:{important:{pattern:/(:)[^\r\n]*/,lookbehind:!0},keyword:/[^:\r\n]+:/}},"table-body":{pattern:/((?:\r?\n|\r)[ \t]*\|.+\|[^\r\n]*)+/,lookbehind:!0,inside:{outline:{pattern:/<[^>]+?>/,alias:"variable"},td:{pattern:/\s*[^\s|][^|]*/,alias:"string"},punctuation:/\|/}},"table-head":{pattern:/(?:\r?\n|\r)[ \t]*\|.+\|[^\r\n]*/,inside:{th:{pattern:/\s*[^\s|][^|]*/,alias:"variable"},punctuation:/\|/}},atrule:{pattern:/((?:\r?\n|\r)[ \t]+)(?:'ach|'a|'ej|7|a|A tak\xe9|A taktie\u017e|A tie\u017e|A z\xe1rove\u0148|Aber|Ac|Adott|Akkor|Ak|Aleshores|Ale|Ali|Allora|Alors|Als|Ama|Amennyiben|Amikor|Ampak|an|AN|Ananging|And y'all|And|Angenommen|Anrhegedig a|An|Apabila|At\xe8s|Atesa|Atunci|Avast!|Aye|A|awer|Bagi|Banjur|Bet|Bi\u1ebft|Blimey!|Buh|But at the end of the day I reckon|But y'all|But|BUT|Cal|C\xe2nd|Cando|Cand|Ce|Cuando|\u010ce|\xd0a \xf0e|\xd0a|Dadas|Dada|Dados|Dado|DaH ghu' bejlu'|dann|Dann|Dano|Dan|Dar|Dat fiind|Data|Date fiind|Date|Dati fiind|Dati|Da\u0163i fiind|Da\u021bi fiind|Dato|DEN|Den youse gotta|Dengan|De|Diberi|Diyelim ki|Donada|Donat|Donita\u0135o|Do|Dun|Duota|\xd0urh|Eeldades|Ef|E\u011fer ki|Entao|Ent\xe3o|Ent\xf3n|Entonces|En|Epi|E|\xc9s|Etant donn\xe9e|Etant donn\xe9|Et|\xc9tant donn\xe9es|\xc9tant donn\xe9e|\xc9tant donn\xe9|Etant donn\xe9es|Etant donn\xe9s|\xc9tant donn\xe9s|Fakat|Gangway!|Gdy|Gegeben seien|Gegeben sei|Gegeven|Gegewe|ghu' noblu'|Gitt|Given y'all|Given|Givet|Givun|Ha|Cho|I CAN HAZ|In|Ir|It's just unbelievable|I|Ja|Je\u015bli|Je\u017celi|Kadar|Kada|Kad|Kai|Kaj|Kdy\u017e|Ke\u010f|Kemudian|Ketika|Khi|Kiedy|Ko|Kuid|Kui|Kun|Lan|latlh|Le sa a|Let go and haul|Le|L\xe8 sa a|L\xe8|Logo|Lorsqu'<|Lorsque|m\xe4|Maar|Mais|Maj\u0105c|Majd|Maka|Manawa|Mas|Ma|Menawa|Men|Mutta|Nalikaning|Nalika|Nanging|N\xe5r|N\xe4r|Nato|Nh\u01b0ng|Niin|Njuk|O zaman|Og|Och|Oletetaan|Onda|Ond|Oraz|Pak|Pero|Per\xf2|Podano|Pokia\u013e|Pokud|Potem|Potom|Privzeto|Pryd|qaSDI'|Quando|Quand|Quan|S\xe5|Sed|Se|Siis|Sipoze ke|Sipoze Ke|Sipoze|Si|\u015ei|\u0218i|Soit|Stel|Tada|Tad|Takrat|Tak|Tapi|Ter|Tetapi|Tha the|Tha|Then y'all|Then|Th\xec|Thurh|Toda|Too right|ugeholl|Und|Un|V\xe0|vaj|Vendar|Ve|wann|Wanneer|WEN|Wenn|When y'all|When|Wtedy|Wun|Y'know|Yeah nah|Yna|Youse know like when|Youse know when youse got|Y|Za predpokladu|Za p\u0159edpokladu|Zadani|Zadano|Zadan|Zadate|Zadato|Zak\u0142adaj\u0105c|Zaradi|Zatati|\xdea \xfee|\xdea|\xde\xe1|\xdeegar|\xdeurh|\u0391\u03bb\u03bb\u03ac|\u0394\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03bf\u03c5|\u039a\u03b1\u03b9|\u038c\u03c4\u03b1\u03bd|\u03a4\u03cc\u03c4\u03b5|\u0410 \u0442\u0430\u043a\u043e\u0436|\u0410\u0433\u0430\u0440|\u0410\u043b\u0435|\u0410\u043b\u0438|\u0410\u043c\u043c\u043e|\u0410|\u04d8\u0433\u04d9\u0440|\u04d8\u0439\u0442\u0438\u043a|\u04d8\u043c\u043c\u0430|\u0411\u0438\u0440\u043e\u043a|\u0412\u0430|\u0412\u04d9|\u0414\u0430\u0434\u0435\u043d\u043e|\u0414\u0430\u043d\u043e|\u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c|\u0415\u0441\u043b\u0438|\u0417\u0430\u0434\u0430\u0442\u0435|\u0417\u0430\u0434\u0430\u0442\u0438|\u0417\u0430\u0434\u0430\u0442\u043e|\u0418|\u0406|\u041a \u0442\u043e\u043c\u0443 \u0436\u0435|\u041a\u0430\u0434\u0430|\u041a\u0430\u0434|\u041a\u043e\u0433\u0430\u0442\u043e|\u041a\u043e\u0433\u0434\u0430|\u041a\u043e\u043b\u0438|\u041b\u04d9\u043a\u0438\u043d|\u041b\u0435\u043a\u0438\u043d|\u041d\u04d9\u0442\u0438\u0497\u04d9\u0434\u04d9|\u041d\u0435\u0445\u0430\u0439|\u041d\u043e|\u041e\u043d\u0434\u0430|\u041f\u0440\u0438\u043f\u0443\u0441\u0442\u0438\u043c\u043e, \u0449\u043e|\u041f\u0440\u0438\u043f\u0443\u0441\u0442\u0438\u043c\u043e|\u041f\u0443\u0441\u0442\u044c|\u0422\u0430\u043a\u0436\u0435|\u0422\u0430|\u0422\u043e\u0433\u0434\u0430|\u0422\u043e\u0434\u0456|\u0422\u043e|\u0423\u043d\u0434\u0430|\u04ba\u04d9\u043c|\u042f\u043a\u0449\u043e|\u05d0\u05d1\u05dc|\u05d0\u05d6\u05d9|\u05d0\u05d6|\u05d1\u05d4\u05d9\u05e0\u05ea\u05df|\u05d5\u05d2\u05dd|\u05db\u05d0\u05e9\u05e8|\u0622\u0646\u06af\u0627\u0647|\u0627\u0630\u0627\u064b|\u0627\u06af\u0631|\u0627\u0645\u0627|\u0627\u0648\u0631|\u0628\u0627 \u0641\u0631\u0636|\u0628\u0627\u0644\u0641\u0631\u0636|\u0628\u0641\u0631\u0636|\u067e\u06be\u0631|\u062a\u0628|\u062b\u0645|\u062c\u0628|\u0639\u0646\u062f\u0645\u0627|\u0641\u0631\u0636 \u06a9\u06cc\u0627|\u0644\u0643\u0646|\u0644\u06cc\u06a9\u0646|\u0645\u062a\u0649|\u0647\u0646\u06af\u0627\u0645\u06cc|\u0648|\u0905\u0917\u0930|\u0914\u0930|\u0915\u0926\u093e|\u0915\u093f\u0928\u094d\u0924\u0941|\u091a\u0942\u0902\u0915\u093f|\u091c\u092c|\u0924\u0925\u093e|\u0924\u0926\u093e|\u0924\u092c|\u092a\u0930\u0928\u094d\u0924\u0941|\u092a\u0930|\u092f\u0926\u093f|\u0a05\u0a24\u0a47|\u0a1c\u0a26\u0a4b\u0a02|\u0a1c\u0a3f\u0a35\u0a47\u0a02 \u0a15\u0a3f|\u0a1c\u0a47\u0a15\u0a30|\u0a24\u0a26|\u0a2a\u0a30|\u0c05\u0c2a\u0c4d\u0c2a\u0c41\u0c21\u0c41|\u0c08 \u0c2a\u0c30\u0c3f\u0c38\u0c4d\u0c25\u0c3f\u0c24\u0c3f\u0c32\u0c4b|\u0c15\u0c3e\u0c28\u0c3f|\u0c1a\u0c46\u0c2a\u0c4d\u0c2a\u0c2c\u0c21\u0c3f\u0c28\u0c26\u0c3f|\u0c2e\u0c30\u0c3f\u0c2f\u0c41|\u0c86\u0ca6\u0cb0\u0cc6|\u0ca8\u0c82\u0ca4\u0cb0|\u0ca8\u0cbf\u0cd5\u0ca1\u0cbf\u0ca6|\u0cae\u0ca4\u0ccd\u0ca4\u0cc1|\u0cb8\u0ccd\u0ca5\u0cbf\u0ca4\u0cbf\u0caf\u0ca8\u0ccd\u0ca8\u0cc1|\u0e01\u0e33\u0e2b\u0e19\u0e14\u0e43\u0e2b\u0e49|\u0e14\u0e31\u0e07\u0e19\u0e31\u0e49\u0e19|\u0e41\u0e15\u0e48|\u0e40\u0e21\u0e37\u0e48\u0e2d|\u0e41\u0e25\u0e30|\uadf8\ub7ec\uba74<|\uadf8\ub9ac\uace0<|\ub2e8<|\ub9cc\uc57d<|\ub9cc\uc77c<|\uba3c\uc800<|\uc870\uac74<|\ud558\uc9c0\ub9cc<|\u304b\u3064<|\u3057\u304b\u3057<|\u305f\u3060\u3057<|\u306a\u3089\u3070<|\u3082\u3057<|\u4e26\u4e14<|\u4f46\u3057<|\u4f46\u662f<|\u5047\u5982<|\u5047\u5b9a<|\u5047\u8a2d<|\u5047\u8bbe<|\u524d\u63d0<|\u540c\u65f6<|\u540c\u6642<|\u5e76\u4e14<|\u5f53<|\u7576<|\u800c\u4e14<|\u90a3\u4e48<|\u90a3\u9ebc<)(?=[ \t]+)/,lookbehind:!0},string:{pattern:/"(?:\\.|[^"\\\r\n])*"|'(?:\\.|[^'\\\r\n])*'/,inside:{outline:{pattern:/<[^>]+?>/,alias:"variable"}}},outline:{pattern:/<[^>]+?>/,alias:"variable"}}}a.exports=n,n.displayName="gherkin",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_git.5691e566.js b/assets/js/react-syntax-highlighter_languages_refractor_git.5691e566.js new file mode 100644 index 000000000..eef754e4f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_git.5691e566.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2564],{4222:e=>{function m(e){e.languages.git={comment:/^#.*/m,deleted:/^[-\u2013].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/m,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/m}},coord:/^@@.*@@$/m,commit_sha1:/^commit \w{40}$/m}}e.exports=m,m.displayName="git",m.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_git.87931bdd.js b/assets/js/react-syntax-highlighter_languages_refractor_git.87931bdd.js new file mode 100644 index 000000000..c01e297d3 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_git.87931bdd.js @@ -0,0 +1,84 @@ +"use strict"; +exports.id = 2564; +exports.ids = [2564]; +exports.modules = { + +/***/ 94222: +/***/ ((module) => { + + + +module.exports = git +git.displayName = 'git' +git.aliases = [] +function git(Prism) { + Prism.languages.git = { + /* + * A simple one line comment like in a git status command + * For instance: + * $ git status + * # On branch infinite-scroll + * # Your branch and 'origin/sharedBranches/frontendTeam/infinite-scroll' have diverged, + * # and have 1 and 2 different commits each, respectively. + * nothing to commit (working directory clean) + */ + comment: /^#.*/m, + /* + * Regexp to match the changed lines in a git diff output. Check the example below. + */ + deleted: /^[-–].*/m, + inserted: /^\+.*/m, + /* + * a string (double and simple quote) + */ + string: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/m, + /* + * a git command. It starts with a random prompt finishing by a $, then "git" then some other parameters + * For instance: + * $ git add file.txt + */ + command: { + pattern: /^.*\$ git .*$/m, + inside: { + /* + * A git command can contain a parameter starting by a single or a double dash followed by a string + * For instance: + * $ git diff --cached + * $ git log -p + */ + parameter: /\s--?\w+/m + } + }, + /* + * Coordinates displayed in a git diff command + * For instance: + * $ git diff + * diff --git file.txt file.txt + * index 6214953..1d54a52 100644 + * --- file.txt + * +++ file.txt + * @@ -1 +1,2 @@ + * -Here's my tetx file + * +Here's my text file + * +And this is the second line + */ + coord: /^@@.*@@$/m, + /* + * Match a "commit [SHA1]" line in a git log output. + * For instance: + * $ git log + * commit a11a14ef7e26f2ca62d4b35eac455ce636d0dc09 + * Author: lgiraudel + * Date: Mon Feb 17 11:18:34 2014 +0100 + * + * Add of a new line + */ + commit_sha1: /^commit \w{40}$/m + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_glsl.1a0e15dd.js b/assets/js/react-syntax-highlighter_languages_refractor_glsl.1a0e15dd.js new file mode 100644 index 000000000..7998ffd2d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_glsl.1a0e15dd.js @@ -0,0 +1,33 @@ +"use strict"; +exports.id = 158; +exports.ids = [158]; +exports.modules = { + +/***/ 3322: +/***/ ((module) => { + + + +module.exports = glsl +glsl.displayName = 'glsl' +glsl.aliases = [] +function glsl(Prism) { + Prism.languages.glsl = Prism.languages.extend('clike', { + comment: [/\/\*[\s\S]*?\*\//, /\/\/(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/], + number: /(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ulf]*/i, + keyword: /\b(?:attribute|const|uniform|varying|buffer|shared|coherent|volatile|restrict|readonly|writeonly|atomic_uint|layout|centroid|flat|smooth|noperspective|patch|sample|break|continue|do|for|while|switch|case|default|if|else|subroutine|in|out|inout|float|double|int|void|bool|true|false|invariant|precise|discard|return|d?mat[234](?:x[234])?|[ibdu]?vec[234]|uint|lowp|mediump|highp|precision|[iu]?sampler[123]D|[iu]?samplerCube|sampler[12]DShadow|samplerCubeShadow|[iu]?sampler[12]DArray|sampler[12]DArrayShadow|[iu]?sampler2DRect|sampler2DRectShadow|[iu]?samplerBuffer|[iu]?sampler2DMS(?:Array)?|[iu]?samplerCubeArray|samplerCubeArrayShadow|[iu]?image[123]D|[iu]?image2DRect|[iu]?imageCube|[iu]?imageBuffer|[iu]?image[12]DArray|[iu]?imageCubeArray|[iu]?image2DMS(?:Array)?|struct|common|partition|active|asm|class|union|enum|typedef|template|this|resource|goto|inline|noinline|public|static|extern|external|interface|long|short|half|fixed|unsigned|superp|input|output|hvec[234]|fvec[234]|sampler3DRect|filter|sizeof|cast|namespace|using)\b/ + }) + Prism.languages.insertBefore('glsl', 'comment', { + preprocessor: { + pattern: /(^[ \t]*)#(?:(?:define|undef|if|ifdef|ifndef|else|elif|endif|error|pragma|extension|version|line)\b)?/m, + lookbehind: true, + alias: 'builtin' + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_glsl.b65557a6.js b/assets/js/react-syntax-highlighter_languages_refractor_glsl.b65557a6.js new file mode 100644 index 000000000..5b3595177 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_glsl.b65557a6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[158],{3322:e=>{function i(e){e.languages.glsl=e.languages.extend("clike",{comment:[/\/\*[\s\S]*?\*\//,/\/\/(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/],number:/(?:\b0x[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ulf]*/i,keyword:/\b(?:attribute|const|uniform|varying|buffer|shared|coherent|volatile|restrict|readonly|writeonly|atomic_uint|layout|centroid|flat|smooth|noperspective|patch|sample|break|continue|do|for|while|switch|case|default|if|else|subroutine|in|out|inout|float|double|int|void|bool|true|false|invariant|precise|discard|return|d?mat[234](?:x[234])?|[ibdu]?vec[234]|uint|lowp|mediump|highp|precision|[iu]?sampler[123]D|[iu]?samplerCube|sampler[12]DShadow|samplerCubeShadow|[iu]?sampler[12]DArray|sampler[12]DArrayShadow|[iu]?sampler2DRect|sampler2DRectShadow|[iu]?samplerBuffer|[iu]?sampler2DMS(?:Array)?|[iu]?samplerCubeArray|samplerCubeArrayShadow|[iu]?image[123]D|[iu]?image2DRect|[iu]?imageCube|[iu]?imageBuffer|[iu]?image[12]DArray|[iu]?imageCubeArray|[iu]?image2DMS(?:Array)?|struct|common|partition|active|asm|class|union|enum|typedef|template|this|resource|goto|inline|noinline|public|static|extern|external|interface|long|short|half|fixed|unsigned|superp|input|output|hvec[234]|fvec[234]|sampler3DRect|filter|sizeof|cast|namespace|using)\b/}),e.languages.insertBefore("glsl","comment",{preprocessor:{pattern:/(^[ \t]*)#(?:(?:define|undef|if|ifdef|ifndef|else|elif|endif|error|pragma|extension|version|line)\b)?/m,lookbehind:!0,alias:"builtin"}})}e.exports=i,i.displayName="glsl",i.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_go.84223c83.js b/assets/js/react-syntax-highlighter_languages_refractor_go.84223c83.js new file mode 100644 index 000000000..1e8efcadf --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_go.84223c83.js @@ -0,0 +1,33 @@ +"use strict"; +exports.id = 6626; +exports.ids = [6626]; +exports.modules = { + +/***/ 51519: +/***/ ((module) => { + + + +module.exports = go +go.displayName = 'go' +go.aliases = [] +function go(Prism) { + Prism.languages.go = Prism.languages.extend('clike', { + 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/, + builtin: /\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/, + boolean: /\b(?:_|iota|nil|true|false)\b/, + operator: /[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./, + number: /(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i, + string: { + pattern: /(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/, + greedy: true + } + }) + delete Prism.languages.go['class-name'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_go.feaf214e.js b/assets/js/react-syntax-highlighter_languages_refractor_go.feaf214e.js new file mode 100644 index 000000000..eabb28756 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_go.feaf214e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6626],{1519:e=>{function a(e){e.languages.go=e.languages.extend("clike",{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/,builtin:/\b(?:bool|byte|complex(?:64|128)|error|float(?:32|64)|rune|string|u?int(?:8|16|32|64)?|uintptr|append|cap|close|complex|copy|delete|imag|len|make|new|panic|print(?:ln)?|real|recover)\b/,boolean:/\b(?:_|iota|nil|true|false)\b/,operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,number:/(?:\b0x[a-f\d]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e[-+]?\d+)?)i?/i,string:{pattern:/(["'`])(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0}}),delete e.languages.go["class-name"]}e.exports=a,a.displayName="go",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_graphql.42c376c9.js b/assets/js/react-syntax-highlighter_languages_refractor_graphql.42c376c9.js new file mode 100644 index 000000000..6f7c196b6 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_graphql.42c376c9.js @@ -0,0 +1,52 @@ +"use strict"; +exports.id = 8921; +exports.ids = [8921]; +exports.modules = { + +/***/ 94055: +/***/ ((module) => { + + + +module.exports = graphql +graphql.displayName = 'graphql' +graphql.aliases = [] +function graphql(Prism) { + Prism.languages.graphql = { + comment: /#.*/, + string: { + pattern: /"(?:\\.|[^\\"\r\n])*"/, + greedy: true + }, + number: /(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i, + boolean: /\b(?:true|false)\b/, + variable: /\$[a-z_]\w*/i, + directive: { + pattern: /@[a-z_]\w*/i, + alias: 'function' + }, + 'attr-name': { + pattern: /[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i, + greedy: true + }, + 'class-name': { + pattern: /(\b(?:enum|implements|interface|on|scalar|type|union)\s+)[a-zA-Z_]\w*/, + lookbehind: true + }, + fragment: { + pattern: /(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/, + lookbehind: true, + alias: 'function' + }, + keyword: /\b(?:enum|fragment|implements|input|interface|mutation|on|query|scalar|schema|type|union)\b/, + operator: /[!=|]|\.{3}/, + punctuation: /[!(){}\[\]:=,]/, + constant: /\b(?!ID\b)[A-Z][A-Z_\d]*\b/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_graphql.e44549a3.js b/assets/js/react-syntax-highlighter_languages_refractor_graphql.e44549a3.js new file mode 100644 index 000000000..57f402695 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_graphql.e44549a3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8921],{4055:e=>{function a(e){e.languages.graphql={comment:/#.*/,string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:true|false)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+)[a-zA-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:enum|fragment|implements|input|interface|mutation|on|query|scalar|schema|type|union)\b/,operator:/[!=|]|\.{3}/,punctuation:/[!(){}\[\]:=,]/,constant:/\b(?!ID\b)[A-Z][A-Z_\d]*\b/}}e.exports=a,a.displayName="graphql",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_groovy.475bd89a.js b/assets/js/react-syntax-highlighter_languages_refractor_groovy.475bd89a.js new file mode 100644 index 000000000..1edeb2062 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_groovy.475bd89a.js @@ -0,0 +1,78 @@ +"use strict"; +exports.id = 5259; +exports.ids = [5259]; +exports.modules = { + +/***/ 43826: +/***/ ((module) => { + + + +module.exports = groovy +groovy.displayName = 'groovy' +groovy.aliases = [] +function groovy(Prism) { + Prism.languages.groovy = Prism.languages.extend('clike', { + keyword: /\b(?:as|def|in|abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|package|private|protected|public|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|trait|transient|try|void|volatile|while)\b/, + string: [ + { + pattern: /("""|''')[\s\S]*?\1|(?:\$\/)(?:\$\/\$|[\s\S])*?\/\$/, + greedy: true + }, + { + pattern: /(["'\/])(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + } + ], + number: /\b(?:0b[01_]+|0x[\da-f_]+(?:\.[\da-f_p\-]+)?|[\d_]+(?:\.[\d_]+)?(?:e[+-]?[\d]+)?)[glidf]?\b/i, + operator: { + pattern: /(^|[^.])(?:~|==?~?|\?[.:]?|\*(?:[.=]|\*=?)?|\.[@&]|\.\.<|\.{1,2}(?!\.)|-[-=>]?|\+[+=]?|!=?|<(?:<=?|=>?)?|>(?:>>?=?|=)?|&[&=]?|\|[|=]?|\/=?|\^=?|%=?)/, + lookbehind: true + }, + punctuation: /\.+|[{}[\];(),:$]/ + }) + Prism.languages.insertBefore('groovy', 'string', { + shebang: { + pattern: /#!.+/, + alias: 'comment' + } + }) + Prism.languages.insertBefore('groovy', 'punctuation', { + 'spock-block': /\b(?:setup|given|when|then|and|cleanup|expect|where):/ + }) + Prism.languages.insertBefore('groovy', 'function', { + annotation: { + alias: 'punctuation', + pattern: /(^|[^.])@\w+/, + lookbehind: true + } + }) // Handle string interpolation + Prism.hooks.add('wrap', function(env) { + if (env.language === 'groovy' && env.type === 'string') { + var delimiter = env.content.value[0] + if (delimiter != "'") { + var pattern = /([^\\])(?:\$(?:\{.*?\}|[\w.]+))/ + if (delimiter === '$') { + pattern = /([^\$])(?:\$(?:\{.*?\}|[\w.]+))/ + } // To prevent double HTML-encoding we have to decode env.content first + env.content.value = env.content.value + .replace(/</g, '<') + .replace(/&/g, '&') + env.content = Prism.highlight(env.content.value, { + expression: { + pattern: pattern, + lookbehind: true, + inside: Prism.languages.groovy + } + }) + env.classes.push(delimiter === '/' ? 'regex' : 'gstring') + } + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_groovy.6616ac51.js b/assets/js/react-syntax-highlighter_languages_refractor_groovy.6616ac51.js new file mode 100644 index 000000000..8c59a38d3 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_groovy.6616ac51.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5259],{3826:e=>{function t(e){e.languages.groovy=e.languages.extend("clike",{keyword:/\b(?:as|def|in|abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|package|private|protected|public|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|trait|transient|try|void|volatile|while)\b/,string:[{pattern:/("""|''')[\s\S]*?\1|(?:\$\/)(?:\$\/\$|[\s\S])*?\/\$/,greedy:!0},{pattern:/(["'\/])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],number:/\b(?:0b[01_]+|0x[\da-f_]+(?:\.[\da-f_p\-]+)?|[\d_]+(?:\.[\d_]+)?(?:e[+-]?[\d]+)?)[glidf]?\b/i,operator:{pattern:/(^|[^.])(?:~|==?~?|\?[.:]?|\*(?:[.=]|\*=?)?|\.[@&]|\.\.<|\.{1,2}(?!\.)|-[-=>]?|\+[+=]?|!=?|<(?:<=?|=>?)?|>(?:>>?=?|=)?|&[&=]?|\|[|=]?|\/=?|\^=?|%=?)/,lookbehind:!0},punctuation:/\.+|[{}[\];(),:$]/}),e.languages.insertBefore("groovy","string",{shebang:{pattern:/#!.+/,alias:"comment"}}),e.languages.insertBefore("groovy","punctuation",{"spock-block":/\b(?:setup|given|when|then|and|cleanup|expect|where):/}),e.languages.insertBefore("groovy","function",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0}}),e.hooks.add("wrap",(function(t){if("groovy"===t.language&&"string"===t.type){var n=t.content.value[0];if("'"!=n){var a=/([^\\])(?:\$(?:\{.*?\}|[\w.]+))/;"$"===n&&(a=/([^\$])(?:\$(?:\{.*?\}|[\w.]+))/),t.content.value=t.content.value.replace(/</g,"<").replace(/&/g,"&"),t.content=e.highlight(t.content.value,{expression:{pattern:a,lookbehind:!0,inside:e.languages.groovy}}),t.classes.push("/"===n?"regex":"gstring")}}}))}e.exports=t,t.displayName="groovy",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_haml.1ea79bf3.js b/assets/js/react-syntax-highlighter_languages_refractor_haml.1ea79bf3.js new file mode 100644 index 000000000..2a6315559 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_haml.1ea79bf3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6487],{9536:e=>{function t(e){!function(e){e.languages.haml={"multiline-comment":{pattern:/((?:^|\r?\n|\r)([\t ]*))(?:\/|-#).*(?:(?:\r?\n|\r)\2[\t ]+.+)*/,lookbehind:!0,alias:"comment"},"multiline-code":[{pattern:/((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*,[\t ]*(?:(?:\r?\n|\r)\2[\t ]+.*,[\t ]*)*(?:(?:\r?\n|\r)\2[\t ]+.+)/,lookbehind:!0,inside:{rest:e.languages.ruby}},{pattern:/((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*\|[\t ]*(?:(?:\r?\n|\r)\2[\t ]+.*\|[\t ]*)*/,lookbehind:!0,inside:{rest:e.languages.ruby}}],filter:{pattern:/((?:^|\r?\n|\r)([\t ]*)):[\w-]+(?:(?:\r?\n|\r)(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/,lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"}}},markup:{pattern:/((?:^|\r?\n|\r)[\t ]*)<.+/,lookbehind:!0,inside:{rest:e.languages.markup}},doctype:{pattern:/((?:^|\r?\n|\r)[\t ]*)!!!(?: .+)?/,lookbehind:!0},tag:{pattern:/((?:^|\r?\n|\r)[\t ]*)[%.#][\w\-#.]*[\w\-](?:\([^)]+\)|\{(?:\{[^}]+\}|[^}])+\}|\[[^\]]+\])*[\/<>]*/,lookbehind:!0,inside:{attributes:[{pattern:/(^|[^#])\{(?:\{[^}]+\}|[^}])+\}/,lookbehind:!0,inside:{rest:e.languages.ruby}},{pattern:/\([^)]+\)/,inside:{"attr-value":{pattern:/(=\s*)(?:"(?:\\.|[^\\"\r\n])*"|[^)\s]+)/,lookbehind:!0},"attr-name":/[\w:-]+(?=\s*!?=|\s*[,)])/,punctuation:/[=(),]/}},{pattern:/\[[^\]]+\]/,inside:{rest:e.languages.ruby}}],punctuation:/[<>]/}},code:{pattern:/((?:^|\r?\n|\r)[\t ]*(?:[~-]|[&!]?=)).+/,lookbehind:!0,inside:{rest:e.languages.ruby}},interpolation:{pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"},rest:e.languages.ruby}},punctuation:{pattern:/((?:^|\r?\n|\r)[\t ]*)[~=\-&!]+/,lookbehind:!0}};for(var t=["css",{filter:"coffee",language:"coffeescript"},"erb","javascript","less","markdown","ruby","scss","textile"],n={},r=0,a=t.length;r<a;r++){var i=t[r];i="string"==typeof i?{filter:i,language:i}:i,e.languages[i.language]&&(n["filter-"+i.filter]={pattern:RegExp("((?:^|\\r?\\n|\\r)([\\t ]*)):{{filter_name}}(?:(?:\\r?\\n|\\r)(?:\\2[\\t ]+.+|\\s*?(?=\\r?\\n|\\r)))+".replace("{{filter_name}}",i.filter)),lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"},rest:e.languages[i.language]}})}e.languages.insertBefore("haml","filter",n)}(e)}e.exports=t,t.displayName="haml",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_haml.c24e97b2.js b/assets/js/react-syntax-highlighter_languages_refractor_haml.c24e97b2.js new file mode 100644 index 000000000..dce7bddec --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_haml.c24e97b2.js @@ -0,0 +1,176 @@ +"use strict"; +exports.id = 6487; +exports.ids = [6487]; +exports.modules = { + +/***/ 29536: +/***/ ((module) => { + + + +module.exports = haml +haml.displayName = 'haml' +haml.aliases = [] +function haml(Prism) { + /* TODO +Handle multiline code after tag +%foo= some | +multiline | +code | +*/ + ;(function(Prism) { + Prism.languages.haml = { + // Multiline stuff should appear before the rest + 'multiline-comment': { + pattern: /((?:^|\r?\n|\r)([\t ]*))(?:\/|-#).*(?:(?:\r?\n|\r)\2[\t ]+.+)*/, + lookbehind: true, + alias: 'comment' + }, + 'multiline-code': [ + { + pattern: /((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*,[\t ]*(?:(?:\r?\n|\r)\2[\t ]+.*,[\t ]*)*(?:(?:\r?\n|\r)\2[\t ]+.+)/, + lookbehind: true, + inside: { + rest: Prism.languages.ruby + } + }, + { + pattern: /((?:^|\r?\n|\r)([\t ]*)(?:[~-]|[&!]?=)).*\|[\t ]*(?:(?:\r?\n|\r)\2[\t ]+.*\|[\t ]*)*/, + lookbehind: true, + inside: { + rest: Prism.languages.ruby + } + } + ], + // See at the end of the file for known filters + filter: { + pattern: /((?:^|\r?\n|\r)([\t ]*)):[\w-]+(?:(?:\r?\n|\r)(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/, + lookbehind: true, + inside: { + 'filter-name': { + pattern: /^:[\w-]+/, + alias: 'variable' + } + } + }, + markup: { + pattern: /((?:^|\r?\n|\r)[\t ]*)<.+/, + lookbehind: true, + inside: { + rest: Prism.languages.markup + } + }, + doctype: { + pattern: /((?:^|\r?\n|\r)[\t ]*)!!!(?: .+)?/, + lookbehind: true + }, + tag: { + // Allows for one nested group of braces + pattern: /((?:^|\r?\n|\r)[\t ]*)[%.#][\w\-#.]*[\w\-](?:\([^)]+\)|\{(?:\{[^}]+\}|[^}])+\}|\[[^\]]+\])*[\/<>]*/, + lookbehind: true, + inside: { + attributes: [ + { + // Lookbehind tries to prevent interpolations from breaking it all + // Allows for one nested group of braces + pattern: /(^|[^#])\{(?:\{[^}]+\}|[^}])+\}/, + lookbehind: true, + inside: { + rest: Prism.languages.ruby + } + }, + { + pattern: /\([^)]+\)/, + inside: { + 'attr-value': { + pattern: /(=\s*)(?:"(?:\\.|[^\\"\r\n])*"|[^)\s]+)/, + lookbehind: true + }, + 'attr-name': /[\w:-]+(?=\s*!?=|\s*[,)])/, + punctuation: /[=(),]/ + } + }, + { + pattern: /\[[^\]]+\]/, + inside: { + rest: Prism.languages.ruby + } + } + ], + punctuation: /[<>]/ + } + }, + code: { + pattern: /((?:^|\r?\n|\r)[\t ]*(?:[~-]|[&!]?=)).+/, + lookbehind: true, + inside: { + rest: Prism.languages.ruby + } + }, + // Interpolations in plain text + interpolation: { + pattern: /#\{[^}]+\}/, + inside: { + delimiter: { + pattern: /^#\{|\}$/, + alias: 'punctuation' + }, + rest: Prism.languages.ruby + } + }, + punctuation: { + pattern: /((?:^|\r?\n|\r)[\t ]*)[~=\-&!]+/, + lookbehind: true + } + } + var filter_pattern = + '((?:^|\\r?\\n|\\r)([\\t ]*)):{{filter_name}}(?:(?:\\r?\\n|\\r)(?:\\2[\\t ]+.+|\\s*?(?=\\r?\\n|\\r)))+' // Non exhaustive list of available filters and associated languages + var filters = [ + 'css', + { + filter: 'coffee', + language: 'coffeescript' + }, + 'erb', + 'javascript', + 'less', + 'markdown', + 'ruby', + 'scss', + 'textile' + ] + var all_filters = {} + for (var i = 0, l = filters.length; i < l; i++) { + var filter = filters[i] + filter = + typeof filter === 'string' + ? { + filter: filter, + language: filter + } + : filter + if (Prism.languages[filter.language]) { + all_filters['filter-' + filter.filter] = { + pattern: RegExp( + filter_pattern.replace('{{filter_name}}', filter.filter) + ), + lookbehind: true, + inside: { + 'filter-name': { + pattern: /^:[\w-]+/, + alias: 'variable' + }, + rest: Prism.languages[filter.language] + } + } + } + } + Prism.languages.insertBefore('haml', 'filter', all_filters) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_handlebars.4a2e64c7.js b/assets/js/react-syntax-highlighter_languages_refractor_handlebars.4a2e64c7.js new file mode 100644 index 000000000..6b26bdb17 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_handlebars.4a2e64c7.js @@ -0,0 +1,190 @@ +"use strict"; +exports.id = 3846; +exports.ids = [3846,3047]; +exports.modules = { + +/***/ 82834: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = handlebars +handlebars.displayName = 'handlebars' +handlebars.aliases = [] +function handlebars(Prism) { + Prism.register(refractorMarkupTemplating) + ;(function(Prism) { + Prism.languages.handlebars = { + comment: /\{\{![\s\S]*?\}\}/, + delimiter: { + pattern: /^\{\{\{?|\}\}\}?$/i, + alias: 'punctuation' + }, + string: /(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/, + number: /\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/, + boolean: /\b(?:true|false)\b/, + block: { + pattern: /^(\s*~?\s*)[#\/]\S+?(?=\s*~?\s*$|\s)/i, + lookbehind: true, + alias: 'keyword' + }, + brackets: { + pattern: /\[[^\]]+\]/, + inside: { + punctuation: /\[|\]/, + variable: /[\s\S]+/ + } + }, + punctuation: /[!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]/, + variable: /[^!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~\s]+/ + } + Prism.hooks.add('before-tokenize', function(env) { + var handlebarsPattern = /\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'handlebars', + handlebarsPattern + ) + }) + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders( + env, + 'handlebars' + ) + }) + })(Prism) +} + + +/***/ }), + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_handlebars.98975109.js b/assets/js/react-syntax-highlighter_languages_refractor_handlebars.98975109.js new file mode 100644 index 000000000..b2df6a698 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_handlebars.98975109.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3846,3047],{2834:(e,n,a)=>{var t=a(3205);function r(e){e.register(t),function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/i,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:true|false)\b/,block:{pattern:/^(\s*~?\s*)[#\/]\S+?(?=\s*~?\s*$|\s)/i,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(n){e.languages["markup-templating"].buildPlaceholders(n,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(n){e.languages["markup-templating"].tokenizePlaceholders(n,"handlebars")}))}(e)}e.exports=r,r.displayName="handlebars",r.aliases=[]},3205:e=>{function n(e){!function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(a,t,r,s){if(a.language===t){var o=a.tokenStack=[];a.code=a.code.replace(r,(function(e){if("function"==typeof s&&!s(e))return e;for(var r,i=o.length;-1!==a.code.indexOf(r=n(t,i));)++i;return o[i]=e,r})),a.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(a,t){if(a.language===t&&a.tokenStack){a.grammar=e.languages[t];var r=0,s=Object.keys(a.tokenStack);!function o(i){for(var l=0;l<i.length&&!(r>=s.length);l++){var u=i[l];if("string"==typeof u||u.content&&"string"==typeof u.content){var c=s[r],p=a.tokenStack[c],g="string"==typeof u?u:u.content,f=n(t,c),d=g.indexOf(f);if(d>-1){++r;var k=g.substring(0,d),b=new e.Token(t,e.tokenize(p,a.grammar),"language-"+t,p),h=g.substring(d+f.length),m=[];k&&m.push.apply(m,o([k])),m.push(b),h&&m.push.apply(m,o([h])),"string"==typeof u?i.splice.apply(i,[l,1].concat(m)):u.content=m}}else u.content&&o(u.content)}return i}(a.tokens)}}}})}(e)}e.exports=n,n.displayName="markupTemplating",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_haskell.dcaa337c.js b/assets/js/react-syntax-highlighter_languages_refractor_haskell.dcaa337c.js new file mode 100644 index 000000000..933c9a71a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_haskell.dcaa337c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1007],{8090:e=>{function a(e){e.languages.haskell={comment:{pattern:/(^|[^-!#$%*+=?&@|~.:<>^\\\/])(?:--[^-!#$%*+=?&@|~.:<>^\\\/].*|{-[\s\S]*?-})/m,lookbehind:!0},char:/'(?:[^\\']|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+))'/,string:{pattern:/"(?:[^\\"]|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+)|\\\s+\\)*"/,greedy:!0},keyword:/\b(?:case|class|data|deriving|do|else|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b/,import_statement:{pattern:/((?:\r?\n|\r|^)\s*)import\s+(?:qualified\s+)?(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*(?:\s+as\s+(?:[A-Z][_a-zA-Z0-9']*)(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m,lookbehind:!0,inside:{keyword:/\b(?:import|qualified|as|hiding)\b/}},builtin:/\b(?:abs|acos|acosh|all|and|any|appendFile|approxRational|asTypeOf|asin|asinh|atan|atan2|atanh|basicIORun|break|catch|ceiling|chr|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|denominator|digitToInt|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldl|foldl1|foldr|foldr1|fromDouble|fromEnum|fromInt|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|group|head|id|inRange|index|init|intToDigit|interact|ioError|isAlpha|isAlphaNum|isAscii|isControl|isDenormalized|isDigit|isHexDigit|isIEEE|isInfinite|isLower|isNaN|isNegativeZero|isOctDigit|isPrint|isSpace|isUpper|iterate|last|lcm|length|lex|lexDigits|lexLitChar|lines|log|logBase|lookup|map|mapM|mapM_|max|maxBound|maximum|maybe|min|minBound|minimum|mod|negate|not|notElem|null|numerator|odd|or|ord|otherwise|pack|pi|pred|primExitWith|print|product|properFraction|putChar|putStr|putStrLn|quot|quotRem|range|rangeSize|read|readDec|readFile|readFloat|readHex|readIO|readInt|readList|readLitChar|readLn|readOct|readParen|readSigned|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequence_|show|showChar|showInt|showList|showLitChar|showParen|showSigned|showString|shows|showsPrec|significand|signum|sin|sinh|snd|sort|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|threadToIOResult|toEnum|toInt|toInteger|toLower|toRational|toUpper|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)\b/,number:/\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0o[0-7]+|0x[0-9a-f]+)\b/i,operator:/\s\.\s|[-!#$%*+=?&@|~.:<>^\\\/]*\.[-!#$%*+=?&@|~.:<>^\\\/]+|[-!#$%*+=?&@|~.:<>^\\\/]+\.[-!#$%*+=?&@|~.:<>^\\\/]*|[-!#$%*+=?&@|~:<>^\\\/]+|`([A-Z][\w']*\.)*[_a-z][\w']*`/,hvariable:/\b(?:[A-Z][\w']*\.)*[_a-z][\w']*\b/,constant:/\b(?:[A-Z][\w']*\.)*[A-Z][\w']*\b/,punctuation:/[{}[\];(),.:]/},e.languages.hs=e.languages.haskell}e.exports=a,a.displayName="haskell",a.aliases=["hs"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_haskell.fe9c3c1d.js b/assets/js/react-syntax-highlighter_languages_refractor_haskell.fe9c3c1d.js new file mode 100644 index 000000000..23a986494 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_haskell.fe9c3c1d.js @@ -0,0 +1,58 @@ +"use strict"; +exports.id = 1007; +exports.ids = [1007]; +exports.modules = { + +/***/ 58090: +/***/ ((module) => { + + + +module.exports = haskell +haskell.displayName = 'haskell' +haskell.aliases = ['hs'] +function haskell(Prism) { + Prism.languages.haskell = { + comment: { + pattern: /(^|[^-!#$%*+=?&@|~.:<>^\\\/])(?:--[^-!#$%*+=?&@|~.:<>^\\\/].*|{-[\s\S]*?-})/m, + lookbehind: true + }, + char: /'(?:[^\\']|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+))'/, + string: { + pattern: /"(?:[^\\"]|\\(?:[abfnrtv\\"'&]|\^[A-Z@[\]^_]|NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|\d+|o[0-7]+|x[0-9a-fA-F]+)|\\\s+\\)*"/, + greedy: true + }, + keyword: /\b(?:case|class|data|deriving|do|else|if|in|infixl|infixr|instance|let|module|newtype|of|primitive|then|type|where)\b/, + import_statement: { + // The imported or hidden names are not included in this import + // statement. This is because we want to highlight those exactly like + // we do for the names in the program. + pattern: /((?:\r?\n|\r|^)\s*)import\s+(?:qualified\s+)?(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*(?:\s+as\s+(?:[A-Z][_a-zA-Z0-9']*)(?:\.[A-Z][\w']*)*)?(?:\s+hiding\b)?/m, + lookbehind: true, + inside: { + keyword: /\b(?:import|qualified|as|hiding)\b/ + } + }, + // These are builtin variables only. Constructors are highlighted later as a constant. + builtin: /\b(?:abs|acos|acosh|all|and|any|appendFile|approxRational|asTypeOf|asin|asinh|atan|atan2|atanh|basicIORun|break|catch|ceiling|chr|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|denominator|digitToInt|div|divMod|drop|dropWhile|either|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldl|foldl1|foldr|foldr1|fromDouble|fromEnum|fromInt|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|group|head|id|inRange|index|init|intToDigit|interact|ioError|isAlpha|isAlphaNum|isAscii|isControl|isDenormalized|isDigit|isHexDigit|isIEEE|isInfinite|isLower|isNaN|isNegativeZero|isOctDigit|isPrint|isSpace|isUpper|iterate|last|lcm|length|lex|lexDigits|lexLitChar|lines|log|logBase|lookup|map|mapM|mapM_|max|maxBound|maximum|maybe|min|minBound|minimum|mod|negate|not|notElem|null|numerator|odd|or|ord|otherwise|pack|pi|pred|primExitWith|print|product|properFraction|putChar|putStr|putStrLn|quot|quotRem|range|rangeSize|read|readDec|readFile|readFloat|readHex|readIO|readInt|readList|readLitChar|readLn|readOct|readParen|readSigned|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequence_|show|showChar|showInt|showList|showLitChar|showParen|showSigned|showString|shows|showsPrec|significand|signum|sin|sinh|snd|sort|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|threadToIOResult|toEnum|toInt|toInteger|toLower|toRational|toUpper|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)\b/, + // decimal integers and floating point numbers | octal integers | hexadecimal integers + number: /\b(?:\d+(?:\.\d+)?(?:e[+-]?\d+)?|0o[0-7]+|0x[0-9a-f]+)\b/i, + // Most of this is needed because of the meaning of a single '.'. + // If it stands alone freely, it is the function composition. + // It may also be a separator between a module name and an identifier => no + // operator. If it comes together with other special characters it is an + // operator too. + operator: /\s\.\s|[-!#$%*+=?&@|~.:<>^\\\/]*\.[-!#$%*+=?&@|~.:<>^\\\/]+|[-!#$%*+=?&@|~.:<>^\\\/]+\.[-!#$%*+=?&@|~.:<>^\\\/]*|[-!#$%*+=?&@|~:<>^\\\/]+|`([A-Z][\w']*\.)*[_a-z][\w']*`/, + // In Haskell, nearly everything is a variable, do not highlight these. + hvariable: /\b(?:[A-Z][\w']*\.)*[_a-z][\w']*\b/, + constant: /\b(?:[A-Z][\w']*\.)*[A-Z][\w']*\b/, + punctuation: /[{}[\];(),.:]/ + } + Prism.languages.hs = Prism.languages.haskell +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_haxe.5c1dbfc7.js b/assets/js/react-syntax-highlighter_languages_refractor_haxe.5c1dbfc7.js new file mode 100644 index 000000000..8f2b97f58 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_haxe.5c1dbfc7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3224],{5121:e=>{function a(e){e.languages.haxe=e.languages.extend("clike",{string:{pattern:/(["'])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:{pattern:/(^|[^\\])\$(?:\w+|\{[^}]+\})/,lookbehind:!0,inside:{interpolation:{pattern:/^\$\w*/,alias:"variable"}}}}},keyword:/\bthis\b|\b(?:abstract|as|break|case|cast|catch|class|continue|default|do|dynamic|else|enum|extends|extern|from|for|function|if|implements|import|in|inline|interface|macro|new|null|override|public|private|return|static|super|switch|throw|to|try|typedef|using|var|while)(?!\.)\b/,operator:/\.{3}|\+\+?|-[->]?|[=!]=?|&&?|\|\|?|<[<=]?|>[>=]?|[*\/%~^]/}),e.languages.insertBefore("haxe","class-name",{regex:{pattern:/~\/(?:[^\/\\\r\n]|\\.)+\/[igmsu]*/,greedy:!0}}),e.languages.insertBefore("haxe","keyword",{preprocessor:{pattern:/#\w+/,alias:"builtin"},metadata:{pattern:/@:?\w+/,alias:"symbol"},reification:{pattern:/\$(?:\w+|(?=\{))/,alias:"variable"}}),e.languages.haxe.string.inside.interpolation.inside.rest=e.languages.haxe,delete e.languages.haxe["class-name"]}e.exports=a,a.displayName="haxe",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_haxe.d5cf678c.js b/assets/js/react-syntax-highlighter_languages_refractor_haxe.d5cf678c.js new file mode 100644 index 000000000..2066924b6 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_haxe.d5cf678c.js @@ -0,0 +1,66 @@ +"use strict"; +exports.id = 3224; +exports.ids = [3224]; +exports.modules = { + +/***/ 95121: +/***/ ((module) => { + + + +module.exports = haxe +haxe.displayName = 'haxe' +haxe.aliases = [] +function haxe(Prism) { + Prism.languages.haxe = Prism.languages.extend('clike', { + // Strings can be multi-line + string: { + pattern: /(["'])(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true, + inside: { + interpolation: { + pattern: /(^|[^\\])\$(?:\w+|\{[^}]+\})/, + lookbehind: true, + inside: { + interpolation: { + pattern: /^\$\w*/, + alias: 'variable' + } // See rest below + } + } + } + }, + // The final look-ahead prevents highlighting of keywords if expressions such as "haxe.macro.Expr" + keyword: /\bthis\b|\b(?:abstract|as|break|case|cast|catch|class|continue|default|do|dynamic|else|enum|extends|extern|from|for|function|if|implements|import|in|inline|interface|macro|new|null|override|public|private|return|static|super|switch|throw|to|try|typedef|using|var|while)(?!\.)\b/, + operator: /\.{3}|\+\+?|-[->]?|[=!]=?|&&?|\|\|?|<[<=]?|>[>=]?|[*\/%~^]/ + }) + Prism.languages.insertBefore('haxe', 'class-name', { + regex: { + pattern: /~\/(?:[^\/\\\r\n]|\\.)+\/[igmsu]*/, + greedy: true + } + }) + Prism.languages.insertBefore('haxe', 'keyword', { + preprocessor: { + pattern: /#\w+/, + alias: 'builtin' + }, + metadata: { + pattern: /@:?\w+/, + alias: 'symbol' + }, + reification: { + pattern: /\$(?:\w+|(?=\{))/, + alias: 'variable' + } + }) + Prism.languages.haxe['string'].inside['interpolation'].inside.rest = + Prism.languages.haxe + delete Prism.languages.haxe['class-name'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_hpkp.94b3c31c.js b/assets/js/react-syntax-highlighter_languages_refractor_hpkp.94b3c31c.js new file mode 100644 index 000000000..70e03f0d4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_hpkp.94b3c31c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6749],{6942:a=>{function e(a){a.languages.hpkp={directive:{pattern:/\b(?:(?:includeSubDomains|preload|strict)(?: |;)|pin-sha256="[a-zA-Z\d+=/]+"|(?:max-age|report-uri)=|report-to )/,alias:"keyword"},safe:{pattern:/\d{7,}/,alias:"selector"},unsafe:{pattern:/\d{1,6}/,alias:"function"}}}a.exports=e,e.displayName="hpkp",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_hpkp.b1146ec2.js b/assets/js/react-syntax-highlighter_languages_refractor_hpkp.b1146ec2.js new file mode 100644 index 000000000..86ddaf143 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_hpkp.b1146ec2.js @@ -0,0 +1,40 @@ +"use strict"; +exports.id = 6749; +exports.ids = [6749]; +exports.modules = { + +/***/ 76942: +/***/ ((module) => { + + + +module.exports = hpkp +hpkp.displayName = 'hpkp' +hpkp.aliases = [] +function hpkp(Prism) { + /** + * Original by Scott Helme. + * + * Reference: https://scotthelme.co.uk/hpkp-cheat-sheet/ + */ + Prism.languages.hpkp = { + directive: { + pattern: /\b(?:(?:includeSubDomains|preload|strict)(?: |;)|pin-sha256="[a-zA-Z\d+=/]+"|(?:max-age|report-uri)=|report-to )/, + alias: 'keyword' + }, + safe: { + pattern: /\d{7,}/, + alias: 'selector' + }, + unsafe: { + pattern: /\d{1,6}/, + alias: 'function' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_hsts.22a2cf93.js b/assets/js/react-syntax-highlighter_languages_refractor_hsts.22a2cf93.js new file mode 100644 index 000000000..6e173f61f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_hsts.22a2cf93.js @@ -0,0 +1,40 @@ +"use strict"; +exports.id = 3140; +exports.ids = [3140]; +exports.modules = { + +/***/ 60561: +/***/ ((module) => { + + + +module.exports = hsts +hsts.displayName = 'hsts' +hsts.aliases = [] +function hsts(Prism) { + /** + * Original by Scott Helme. + * + * Reference: https://scotthelme.co.uk/hsts-cheat-sheet/ + */ + Prism.languages.hsts = { + directive: { + pattern: /\b(?:max-age=|includeSubDomains|preload)/, + alias: 'keyword' + }, + safe: { + pattern: /\d{8,}/, + alias: 'selector' + }, + unsafe: { + pattern: /\d{1,7}/, + alias: 'function' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_hsts.2c734d5e.js b/assets/js/react-syntax-highlighter_languages_refractor_hsts.2c734d5e.js new file mode 100644 index 000000000..cfa8aeb1e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_hsts.2c734d5e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3140],{561:a=>{function e(a){a.languages.hsts={directive:{pattern:/\b(?:max-age=|includeSubDomains|preload)/,alias:"keyword"},safe:{pattern:/\d{8,}/,alias:"selector"},unsafe:{pattern:/\d{1,7}/,alias:"function"}}}a.exports=e,e.displayName="hsts",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_http.38cfb80d.js b/assets/js/react-syntax-highlighter_languages_refractor_http.38cfb80d.js new file mode 100644 index 000000000..baabfd022 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_http.38cfb80d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6508],{9660:t=>{function e(t){!function(t){t.languages.http={"request-line":{pattern:/^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\s(?:https?:\/\/|\/)\S+\sHTTP\/[0-9.]+/m,inside:{property:/^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\b/,"attr-name":/:\w+/}},"response-status":{pattern:/^HTTP\/1.[01] \d+.*/m,inside:{property:{pattern:/(^HTTP\/1.[01] )\d+.*/i,lookbehind:!0}}},"header-name":{pattern:/^[\w-]+:(?=.)/m,alias:"keyword"}};var e,a=t.languages,s={"application/javascript":a.javascript,"application/json":a.json||a.javascript,"application/xml":a.xml,"text/xml":a.xml,"text/html":a.html,"text/css":a.css},n={"application/json":!0,"application/xml":!0};function p(t){var e=t.replace(/^[a-z]+\//,"");return"(?:"+t+"|"+("\\w+/(?:[\\w.-]+\\+)+"+e+"(?![+\\w.-])")+")"}for(var i in s)if(s[i]){e=e||{};var r=n[i]?p(i):i;e[i]={pattern:RegExp("(content-type:\\s*"+r+"[\\s\\S]*?)(?:\\r?\\n|\\r){2}[\\s\\S]*","i"),lookbehind:!0,inside:{rest:s[i]}}}e&&t.languages.insertBefore("http","header-name",e)}(t)}t.exports=e,e.displayName="http",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_http.d1925f6b.js b/assets/js/react-syntax-highlighter_languages_refractor_http.d1925f6b.js new file mode 100644 index 000000000..201cb2579 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_http.d1925f6b.js @@ -0,0 +1,98 @@ +"use strict"; +exports.id = 6508; +exports.ids = [6508]; +exports.modules = { + +/***/ 49660: +/***/ ((module) => { + + + +module.exports = http +http.displayName = 'http' +http.aliases = [] +function http(Prism) { + ;(function(Prism) { + Prism.languages.http = { + 'request-line': { + pattern: /^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\s(?:https?:\/\/|\/)\S+\sHTTP\/[0-9.]+/m, + inside: { + // HTTP Verb + property: /^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\b/, + // Path or query argument + 'attr-name': /:\w+/ + } + }, + 'response-status': { + pattern: /^HTTP\/1.[01] \d+.*/m, + inside: { + // Status, e.g. 200 OK + property: { + pattern: /(^HTTP\/1.[01] )\d+.*/i, + lookbehind: true + } + } + }, + // HTTP header name + 'header-name': { + pattern: /^[\w-]+:(?=.)/m, + alias: 'keyword' + } + } // Create a mapping of Content-Type headers to language definitions + var langs = Prism.languages + var httpLanguages = { + 'application/javascript': langs.javascript, + 'application/json': langs.json || langs.javascript, + 'application/xml': langs.xml, + 'text/xml': langs.xml, + 'text/html': langs.html, + 'text/css': langs.css + } // Declare which types can also be suffixes + var suffixTypes = { + 'application/json': true, + 'application/xml': true + } + /** + * Returns a pattern for the given content type which matches it and any type which has it as a suffix. + * + * @param {string} contentType + * @returns {string} + */ + function getSuffixPattern(contentType) { + var suffix = contentType.replace(/^[a-z]+\//, '') + var suffixPattern = '\\w+/(?:[\\w.-]+\\+)+' + suffix + '(?![+\\w.-])' + return '(?:' + contentType + '|' + suffixPattern + ')' + } // Insert each content type parser that has its associated language + // currently loaded. + var options + for (var contentType in httpLanguages) { + if (httpLanguages[contentType]) { + options = options || {} + var pattern = suffixTypes[contentType] + ? getSuffixPattern(contentType) + : contentType + options[contentType] = { + pattern: RegExp( + '(content-type:\\s*' + + pattern + + '[\\s\\S]*?)(?:\\r?\\n|\\r){2}[\\s\\S]*', + 'i' + ), + lookbehind: true, + inside: { + rest: httpLanguages[contentType] + } + } + } + } + if (options) { + Prism.languages.insertBefore('http', 'header-name', options) + } + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ichigojam.1c8118d0.js b/assets/js/react-syntax-highlighter_languages_refractor_ichigojam.1c8118d0.js new file mode 100644 index 000000000..808c9f0f3 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ichigojam.1c8118d0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5056],{615:E=>{function N(E){E.languages.ichigojam={comment:/(?:\B'|REM)(?:[^\n\r]*)/i,string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,greedy:!0},number:/\B#[0-9A-F]+|\B`[01]+|(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:BEEP|BPS|CASE|CLEAR|CLK|CLO|CLP|CLS|CLT|CLV|CONT|COPY|ELSE|END|FILE|FILES|FOR|GOSUB|GSB|GOTO|IF|INPUT|KBD|LED|LET|LIST|LOAD|LOCATE|LRUN|NEW|NEXT|OUT|RIGHT|PLAY|POKE|PRINT|PWM|REM|RENUM|RESET|RETURN|RTN|RUN|SAVE|SCROLL|SLEEP|SRND|STEP|STOP|SUB|TEMPO|THEN|TO|UART|VIDEO|WAIT)(?:\$|\b)/i,function:/\b(?:ABS|ANA|ASC|BIN|BTN|DEC|END|FREE|HELP|HEX|I2CR|I2CW|IN|INKEY|LEN|LINE|PEEK|RND|SCR|SOUND|STR|TICK|USR|VER|VPEEK|ZER)(?:\$|\b)/i,label:/(?:\B@[^\s]+)/i,operator:/<[=>]?|>=?|\|\||&&|[+\-*\/=|&^~!]|\b(?:AND|NOT|OR)\b/i,punctuation:/[\[,;:()\]]/}}E.exports=N,N.displayName="ichigojam",N.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ichigojam.2b9027a1.js b/assets/js/react-syntax-highlighter_languages_refractor_ichigojam.2b9027a1.js new file mode 100644 index 000000000..9ac8c40e4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ichigojam.2b9027a1.js @@ -0,0 +1,36 @@ +"use strict"; +exports.id = 5056; +exports.ids = [5056]; +exports.modules = { + +/***/ 30615: +/***/ ((module) => { + + + +module.exports = ichigojam +ichigojam.displayName = 'ichigojam' +ichigojam.aliases = [] +function ichigojam(Prism) { + // according to the offical reference (EN) + // https://ichigojam.net/IchigoJam-en.html + Prism.languages.ichigojam = { + comment: /(?:\B'|REM)(?:[^\n\r]*)/i, + string: { + pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i, + greedy: true + }, + number: /\B#[0-9A-F]+|\B`[01]+|(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i, + keyword: /\b(?:BEEP|BPS|CASE|CLEAR|CLK|CLO|CLP|CLS|CLT|CLV|CONT|COPY|ELSE|END|FILE|FILES|FOR|GOSUB|GSB|GOTO|IF|INPUT|KBD|LED|LET|LIST|LOAD|LOCATE|LRUN|NEW|NEXT|OUT|RIGHT|PLAY|POKE|PRINT|PWM|REM|RENUM|RESET|RETURN|RTN|RUN|SAVE|SCROLL|SLEEP|SRND|STEP|STOP|SUB|TEMPO|THEN|TO|UART|VIDEO|WAIT)(?:\$|\b)/i, + function: /\b(?:ABS|ANA|ASC|BIN|BTN|DEC|END|FREE|HELP|HEX|I2CR|I2CW|IN|INKEY|LEN|LINE|PEEK|RND|SCR|SOUND|STR|TICK|USR|VER|VPEEK|ZER)(?:\$|\b)/i, + label: /(?:\B@[^\s]+)/i, + operator: /<[=>]?|>=?|\|\||&&|[+\-*\/=|&^~!]|\b(?:AND|NOT|OR)\b/i, + punctuation: /[\[,;:()\]]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_icon.d39f29f8.js b/assets/js/react-syntax-highlighter_languages_refractor_icon.d39f29f8.js new file mode 100644 index 000000000..d7ca7f3a9 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_icon.d39f29f8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2413],{3865:e=>{function t(e){e.languages.icon={comment:/#.*/,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n_]|\\.|_(?!\1)(?:\r\n|[\s\S]))*\1/,greedy:!0},number:/\b(?:\d+r[a-z\d]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b|\.\d+\b/i,"builtin-keyword":{pattern:/&(?:allocated|ascii|clock|collections|cset|current|date|dateline|digits|dump|e|error(?:number|text|value)?|errout|fail|features|file|host|input|lcase|letters|level|line|main|null|output|phi|pi|pos|progname|random|regions|source|storage|subject|time|trace|ucase|version)\b/,alias:"variable"},directive:{pattern:/\$\w+/,alias:"builtin"},keyword:/\b(?:break|by|case|create|default|do|else|end|every|fail|global|if|initial|invocable|link|local|next|not|of|procedure|record|repeat|return|static|suspend|then|to|until|while)\b/,function:/(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/,operator:/[+-]:(?!=)|(?:[\/?@^%&]|\+\+?|--?|==?=?|~==?=?|\*\*?|\|\|\|?|<(?:->?|<?=?)|>>?=?)(?::=)?|:(?:=:?)?|[!.\\|~]/,punctuation:/[\[\](){},;]/}}e.exports=t,t.displayName="icon",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_icon.e758fe4b.js b/assets/js/react-syntax-highlighter_languages_refractor_icon.e758fe4b.js new file mode 100644 index 000000000..92cee04bb --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_icon.e758fe4b.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 2413; +exports.ids = [2413]; +exports.modules = { + +/***/ 93865: +/***/ ((module) => { + + + +module.exports = icon +icon.displayName = 'icon' +icon.aliases = [] +function icon(Prism) { + Prism.languages.icon = { + comment: /#.*/, + string: { + pattern: /(["'])(?:(?!\1)[^\\\r\n_]|\\.|_(?!\1)(?:\r\n|[\s\S]))*\1/, + greedy: true + }, + number: /\b(?:\d+r[a-z\d]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b|\.\d+\b/i, + 'builtin-keyword': { + pattern: /&(?:allocated|ascii|clock|collections|cset|current|date|dateline|digits|dump|e|error(?:number|text|value)?|errout|fail|features|file|host|input|lcase|letters|level|line|main|null|output|phi|pi|pos|progname|random|regions|source|storage|subject|time|trace|ucase|version)\b/, + alias: 'variable' + }, + directive: { + pattern: /\$\w+/, + alias: 'builtin' + }, + keyword: /\b(?:break|by|case|create|default|do|else|end|every|fail|global|if|initial|invocable|link|local|next|not|of|procedure|record|repeat|return|static|suspend|then|to|until|while)\b/, + function: /(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/, + operator: /[+-]:(?!=)|(?:[\/?@^%&]|\+\+?|--?|==?=?|~==?=?|\*\*?|\|\|\|?|<(?:->?|<?=?)|>>?=?)(?::=)?|:(?:=:?)?|[!.\\|~]/, + punctuation: /[\[\](){},;]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_inform7.3d636901.js b/assets/js/react-syntax-highlighter_languages_refractor_inform7.3d636901.js new file mode 100644 index 000000000..9c5a8ce83 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_inform7.3d636901.js @@ -0,0 +1,80 @@ +"use strict"; +exports.id = 2996; +exports.ids = [2996]; +exports.modules = { + +/***/ 65175: +/***/ ((module) => { + + + +module.exports = inform7 +inform7.displayName = 'inform7' +inform7.aliases = [] +function inform7(Prism) { + Prism.languages.inform7 = { + string: { + pattern: /"[^"]*"/, + inside: { + substitution: { + pattern: /\[[^\]]+\]/, + inside: { + delimiter: { + pattern: /\[|\]/, + alias: 'punctuation' + } // See rest below + } + } + } + }, + comment: { + pattern: /\[[^\]]+\]/, + greedy: true + }, + title: { + pattern: /^[ \t]*(?:volume|book|part(?! of)|chapter|section|table)\b.+/im, + alias: 'important' + }, + number: { + pattern: /(^|[^-])(?:\b\d+(?:\.\d+)?(?:\^\d+)?\w*|\b(?:one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve))\b(?!-)/i, + lookbehind: true + }, + verb: { + pattern: /(^|[^-])\b(?:applying to|are|attacking|answering|asking|be(?:ing)?|burning|buying|called|carries|carry(?! out)|carrying|climbing|closing|conceal(?:s|ing)?|consulting|contain(?:s|ing)?|cutting|drinking|dropping|eating|enclos(?:es?|ing)|entering|examining|exiting|getting|giving|going|ha(?:ve|s|ving)|hold(?:s|ing)?|impl(?:y|ies)|incorporat(?:es?|ing)|inserting|is|jumping|kissing|listening|locking|looking|mean(?:s|ing)?|opening|provid(?:es?|ing)|pulling|pushing|putting|relat(?:es?|ing)|removing|searching|see(?:s|ing)?|setting|showing|singing|sleeping|smelling|squeezing|switching|support(?:s|ing)?|swearing|taking|tasting|telling|thinking|throwing|touching|turning|tying|unlock(?:s|ing)?|var(?:y|ies|ying)|waiting|waking|waving|wear(?:s|ing)?)\b(?!-)/i, + lookbehind: true, + alias: 'operator' + }, + keyword: { + pattern: /(^|[^-])\b(?:after|before|carry out|check|continue the action|definition(?= *:)|do nothing|else|end (?:if|unless|the story)|every turn|if|include|instead(?: of)?|let|move|no|now|otherwise|repeat|report|resume the story|rule for|running through|say(?:ing)?|stop the action|test|try(?:ing)?|understand|unless|use|when|while|yes)\b(?!-)/i, + lookbehind: true + }, + property: { + pattern: /(^|[^-])\b(?:adjacent(?! to)|carried|closed|concealed|contained|dark|described|edible|empty|enclosed|enterable|even|female|fixed in place|full|handled|held|improper-named|incorporated|inedible|invisible|lighted|lit|lock(?:able|ed)|male|marked for listing|mentioned|negative|neuter|non-(?:empty|full|recurring)|odd|opaque|open(?:able)?|plural-named|portable|positive|privately-named|proper-named|provided|publically-named|pushable between rooms|recurring|related|rubbing|scenery|seen|singular-named|supported|swinging|switch(?:able|ed(?: on| off)?)|touch(?:able|ed)|transparent|unconcealed|undescribed|unlit|unlocked|unmarked for listing|unmentioned|unopenable|untouchable|unvisited|variable|visible|visited|wearable|worn)\b(?!-)/i, + lookbehind: true, + alias: 'symbol' + }, + position: { + pattern: /(^|[^-])\b(?:above|adjacent to|back side of|below|between|down|east|everywhere|front side|here|in|inside(?: from)?|north(?:east|west)?|nowhere|on(?: top of)?|other side|outside(?: from)?|parts? of|regionally in|south(?:east|west)?|through|up|west|within)\b(?!-)/i, + lookbehind: true, + alias: 'keyword' + }, + type: { + pattern: /(^|[^-])\b(?:actions?|activit(?:y|ies)|actors?|animals?|backdrops?|containers?|devices?|directions?|doors?|holders?|kinds?|lists?|m[ae]n|nobody|nothing|nouns?|numbers?|objects?|people|persons?|player(?:'s holdall)?|regions?|relations?|rooms?|rule(?:book)?s?|scenes?|someone|something|supporters?|tables?|texts?|things?|time|vehicles?|wom[ae]n)\b(?!-)/i, + lookbehind: true, + alias: 'variable' + }, + punctuation: /[.,:;(){}]/ + } + Prism.languages.inform7['string'].inside['substitution'].inside.rest = + Prism.languages.inform7 // We don't want the remaining text in the substitution to be highlighted as the string. + Prism.languages.inform7['string'].inside['substitution'].inside.rest.text = { + pattern: /\S(?:\s*\S)*/, + alias: 'comment' + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_inform7.4b42c760.js b/assets/js/react-syntax-highlighter_languages_refractor_inform7.4b42c760.js new file mode 100644 index 000000000..1dd40320e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_inform7.4b42c760.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2996],{5175:e=>{function n(e){e.languages.inform7={string:{pattern:/"[^"]*"/,inside:{substitution:{pattern:/\[[^\]]+\]/,inside:{delimiter:{pattern:/\[|\]/,alias:"punctuation"}}}}},comment:{pattern:/\[[^\]]+\]/,greedy:!0},title:{pattern:/^[ \t]*(?:volume|book|part(?! of)|chapter|section|table)\b.+/im,alias:"important"},number:{pattern:/(^|[^-])(?:\b\d+(?:\.\d+)?(?:\^\d+)?\w*|\b(?:one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve))\b(?!-)/i,lookbehind:!0},verb:{pattern:/(^|[^-])\b(?:applying to|are|attacking|answering|asking|be(?:ing)?|burning|buying|called|carries|carry(?! out)|carrying|climbing|closing|conceal(?:s|ing)?|consulting|contain(?:s|ing)?|cutting|drinking|dropping|eating|enclos(?:es?|ing)|entering|examining|exiting|getting|giving|going|ha(?:ve|s|ving)|hold(?:s|ing)?|impl(?:y|ies)|incorporat(?:es?|ing)|inserting|is|jumping|kissing|listening|locking|looking|mean(?:s|ing)?|opening|provid(?:es?|ing)|pulling|pushing|putting|relat(?:es?|ing)|removing|searching|see(?:s|ing)?|setting|showing|singing|sleeping|smelling|squeezing|switching|support(?:s|ing)?|swearing|taking|tasting|telling|thinking|throwing|touching|turning|tying|unlock(?:s|ing)?|var(?:y|ies|ying)|waiting|waking|waving|wear(?:s|ing)?)\b(?!-)/i,lookbehind:!0,alias:"operator"},keyword:{pattern:/(^|[^-])\b(?:after|before|carry out|check|continue the action|definition(?= *:)|do nothing|else|end (?:if|unless|the story)|every turn|if|include|instead(?: of)?|let|move|no|now|otherwise|repeat|report|resume the story|rule for|running through|say(?:ing)?|stop the action|test|try(?:ing)?|understand|unless|use|when|while|yes)\b(?!-)/i,lookbehind:!0},property:{pattern:/(^|[^-])\b(?:adjacent(?! to)|carried|closed|concealed|contained|dark|described|edible|empty|enclosed|enterable|even|female|fixed in place|full|handled|held|improper-named|incorporated|inedible|invisible|lighted|lit|lock(?:able|ed)|male|marked for listing|mentioned|negative|neuter|non-(?:empty|full|recurring)|odd|opaque|open(?:able)?|plural-named|portable|positive|privately-named|proper-named|provided|publically-named|pushable between rooms|recurring|related|rubbing|scenery|seen|singular-named|supported|swinging|switch(?:able|ed(?: on| off)?)|touch(?:able|ed)|transparent|unconcealed|undescribed|unlit|unlocked|unmarked for listing|unmentioned|unopenable|untouchable|unvisited|variable|visible|visited|wearable|worn)\b(?!-)/i,lookbehind:!0,alias:"symbol"},position:{pattern:/(^|[^-])\b(?:above|adjacent to|back side of|below|between|down|east|everywhere|front side|here|in|inside(?: from)?|north(?:east|west)?|nowhere|on(?: top of)?|other side|outside(?: from)?|parts? of|regionally in|south(?:east|west)?|through|up|west|within)\b(?!-)/i,lookbehind:!0,alias:"keyword"},type:{pattern:/(^|[^-])\b(?:actions?|activit(?:y|ies)|actors?|animals?|backdrops?|containers?|devices?|directions?|doors?|holders?|kinds?|lists?|m[ae]n|nobody|nothing|nouns?|numbers?|objects?|people|persons?|player(?:'s holdall)?|regions?|relations?|rooms?|rule(?:book)?s?|scenes?|someone|something|supporters?|tables?|texts?|things?|time|vehicles?|wom[ae]n)\b(?!-)/i,lookbehind:!0,alias:"variable"},punctuation:/[.,:;(){}]/},e.languages.inform7.string.inside.substitution.inside.rest=e.languages.inform7,e.languages.inform7.string.inside.substitution.inside.rest.text={pattern:/\S(?:\s*\S)*/,alias:"comment"}}e.exports=n,n.displayName="inform7",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ini.1982552d.js b/assets/js/react-syntax-highlighter_languages_refractor_ini.1982552d.js new file mode 100644 index 000000000..91ce0732b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ini.1982552d.js @@ -0,0 +1,32 @@ +"use strict"; +exports.id = 6495; +exports.ids = [6495]; +exports.modules = { + +/***/ 14970: +/***/ ((module) => { + + + +module.exports = ini +ini.displayName = 'ini' +ini.aliases = [] +function ini(Prism) { + Prism.languages.ini = { + comment: /^[ \t]*[;#].*$/m, + selector: /^[ \t]*\[.*?\]/m, + constant: /^[ \t]*[^\s=]+?(?=[ \t]*=)/m, + 'attr-value': { + pattern: /=.*/, + inside: { + punctuation: /^[=]/ + } + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ini.b6274ab5.js b/assets/js/react-syntax-highlighter_languages_refractor_ini.b6274ab5.js new file mode 100644 index 000000000..43d571da4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ini.b6274ab5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6495],{4970:t=>{function e(t){t.languages.ini={comment:/^[ \t]*[;#].*$/m,selector:/^[ \t]*\[.*?\]/m,constant:/^[ \t]*[^\s=]+?(?=[ \t]*=)/m,"attr-value":{pattern:/=.*/,inside:{punctuation:/^[=]/}}}}t.exports=e,e.displayName="ini",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_io.104d8bdf.js b/assets/js/react-syntax-highlighter_languages_refractor_io.104d8bdf.js new file mode 100644 index 000000000..bd85f1d3d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_io.104d8bdf.js @@ -0,0 +1,52 @@ +"use strict"; +exports.id = 7801; +exports.ids = [7801]; +exports.modules = { + +/***/ 30764: +/***/ ((module) => { + + + +module.exports = io +io.displayName = 'io' +io.aliases = [] +function io(Prism) { + Prism.languages.io = { + comment: [ + { + pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/, + lookbehind: true + }, + { + pattern: /(^|[^\\])\/\/.*/, + lookbehind: true + }, + { + pattern: /(^|[^\\])#.*/, + lookbehind: true + } + ], + 'triple-quoted-string': { + pattern: /"""(?:\\[\s\S]|(?!""")[^\\])*"""/, + greedy: true, + alias: 'string' + }, + string: { + pattern: /"(?:\\.|[^\\\r\n"])*"/, + greedy: true + }, + keyword: /\b(?:activate|activeCoroCount|asString|block|break|catch|clone|collectGarbage|compileString|continue|do|doFile|doMessage|doString|else|elseif|exit|for|foreach|forward|getSlot|getEnvironmentVariable|hasSlot|if|ifFalse|ifNil|ifNilEval|ifTrue|isActive|isNil|isResumable|list|message|method|parent|pass|pause|perform|performWithArgList|print|println|proto|raise|raiseResumable|removeSlot|resend|resume|schedulerSleepSeconds|self|sender|setSchedulerSleepSeconds|setSlot|shallowCopy|slotNames|super|system|then|thisBlock|thisContext|call|try|type|uniqueId|updateSlot|wait|while|write|yield)\b/, + builtin: /\b(?:Array|AudioDevice|AudioMixer|Block|Box|Buffer|CFunction|CGI|Color|Curses|DBM|DNSResolver|DOConnection|DOProxy|DOServer|Date|Directory|Duration|DynLib|Error|Exception|FFT|File|Fnmatch|Font|Future|GL|GLE|GLScissor|GLU|GLUCylinder|GLUQuadric|GLUSphere|GLUT|Host|Image|Importer|LinkList|List|Lobby|Locals|MD5|MP3Decoder|MP3Encoder|Map|Message|Movie|Notification|Number|Object|OpenGL|Point|Protos|Regex|SGML|SGMLElement|SGMLParser|SQLite|Server|Sequence|ShowMessage|SleepyCat|SleepyCatCursor|Socket|SocketManager|Sound|Soup|Store|String|Tree|UDPSender|UPDReceiver|URL|User|Warning|WeakLink|Random|BigNum|Sequence)\b/, + boolean: /\b(?:true|false|nil)\b/, + number: /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e-?\d+)?/i, + operator: /[=!*/%+-^&|]=|>>?=?|<<?=?|:?:?=|\+\+?|--?|\*\*?|\/\/?|%|\|\|?|&&?|(\b(?:return|and|or|not)\b)|@@?|\?\??|\.\./, + punctuation: /[{}[\];(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_io.367214df.js b/assets/js/react-syntax-highlighter_languages_refractor_io.367214df.js new file mode 100644 index 000000000..d2040783e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_io.367214df.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7801],{764:e=>{function t(e){e.languages.io={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0},{pattern:/(^|[^\\])#.*/,lookbehind:!0}],"triple-quoted-string":{pattern:/"""(?:\\[\s\S]|(?!""")[^\\])*"""/,greedy:!0,alias:"string"},string:{pattern:/"(?:\\.|[^\\\r\n"])*"/,greedy:!0},keyword:/\b(?:activate|activeCoroCount|asString|block|break|catch|clone|collectGarbage|compileString|continue|do|doFile|doMessage|doString|else|elseif|exit|for|foreach|forward|getSlot|getEnvironmentVariable|hasSlot|if|ifFalse|ifNil|ifNilEval|ifTrue|isActive|isNil|isResumable|list|message|method|parent|pass|pause|perform|performWithArgList|print|println|proto|raise|raiseResumable|removeSlot|resend|resume|schedulerSleepSeconds|self|sender|setSchedulerSleepSeconds|setSlot|shallowCopy|slotNames|super|system|then|thisBlock|thisContext|call|try|type|uniqueId|updateSlot|wait|while|write|yield)\b/,builtin:/\b(?:Array|AudioDevice|AudioMixer|Block|Box|Buffer|CFunction|CGI|Color|Curses|DBM|DNSResolver|DOConnection|DOProxy|DOServer|Date|Directory|Duration|DynLib|Error|Exception|FFT|File|Fnmatch|Font|Future|GL|GLE|GLScissor|GLU|GLUCylinder|GLUQuadric|GLUSphere|GLUT|Host|Image|Importer|LinkList|List|Lobby|Locals|MD5|MP3Decoder|MP3Encoder|Map|Message|Movie|Notification|Number|Object|OpenGL|Point|Protos|Regex|SGML|SGMLElement|SGMLParser|SQLite|Server|Sequence|ShowMessage|SleepyCat|SleepyCatCursor|Socket|SocketManager|Sound|Soup|Store|String|Tree|UDPSender|UPDReceiver|URL|User|Warning|WeakLink|Random|BigNum|Sequence)\b/,boolean:/\b(?:true|false|nil)\b/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e-?\d+)?/i,operator:/[=!*/%+-^&|]=|>>?=?|<<?=?|:?:?=|\+\+?|--?|\*\*?|\/\/?|%|\|\|?|&&?|(\b(?:return|and|or|not)\b)|@@?|\?\??|\.\./,punctuation:/[{}[\];(),.:]/}}e.exports=t,t.displayName="io",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_j.0572c594.js b/assets/js/react-syntax-highlighter_languages_refractor_j.0572c594.js new file mode 100644 index 000000000..f25265a77 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_j.0572c594.js @@ -0,0 +1,46 @@ +"use strict"; +exports.id = 4701; +exports.ids = [4701]; +exports.modules = { + +/***/ 87624: +/***/ ((module) => { + + + +module.exports = j +j.displayName = 'j' +j.aliases = [] +function j(Prism) { + Prism.languages.j = { + comment: /\bNB\..*/, + string: { + pattern: /'(?:''|[^'\r\n])*'/, + greedy: true + }, + keyword: /\b(?:(?:adverb|conjunction|CR|def|define|dyad|LF|monad|noun|verb)\b|(?:assert|break|case|catch[dt]?|continue|do|else|elseif|end|fcase|for|for_\w+|goto_\w+|if|label_\w+|return|select|throw|try|while|whilst)\.)/, + verb: { + // Negative look-ahead prevents bad highlighting + // of ^: ;. =. =: !. !: + pattern: /(?!\^:|;\.|[=!][.:])(?:\{(?:\.|::?)?|p(?:\.\.?|:)|[=!\]]|[<>+*\-%$|,#][.:]?|[?^]\.?|[;\[]:?|[~}"i][.:]|[ACeEIjLor]\.|(?:[_\/\\qsux]|_?\d):)/, + alias: 'keyword' + }, + number: /\b_?(?:(?!\d:)\d+(?:\.\d+)?(?:(?:[ejpx]|ad|ar)_?\d+(?:\.\d+)?)*(?:b_?[\da-z]+(?:\.[\da-z]+)?)?|_(?!\.))/, + adverb: { + pattern: /[~}]|[\/\\]\.?|[bfM]\.|t[.:]/, + alias: 'builtin' + }, + operator: /[=a][.:]|_\./, + conjunction: { + pattern: /&(?:\.:?|:)?|[.:@][.:]?|[!D][.:]|[;dHT]\.|`:?|[\^LS]:|"/, + alias: 'variable' + }, + punctuation: /[()]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_j.9b42a226.js b/assets/js/react-syntax-highlighter_languages_refractor_j.9b42a226.js new file mode 100644 index 000000000..0943c867d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_j.9b42a226.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4701],{7624:e=>{function a(e){e.languages.j={comment:/\bNB\..*/,string:{pattern:/'(?:''|[^'\r\n])*'/,greedy:!0},keyword:/\b(?:(?:adverb|conjunction|CR|def|define|dyad|LF|monad|noun|verb)\b|(?:assert|break|case|catch[dt]?|continue|do|else|elseif|end|fcase|for|for_\w+|goto_\w+|if|label_\w+|return|select|throw|try|while|whilst)\.)/,verb:{pattern:/(?!\^:|;\.|[=!][.:])(?:\{(?:\.|::?)?|p(?:\.\.?|:)|[=!\]]|[<>+*\-%$|,#][.:]?|[?^]\.?|[;\[]:?|[~}"i][.:]|[ACeEIjLor]\.|(?:[_\/\\qsux]|_?\d):)/,alias:"keyword"},number:/\b_?(?:(?!\d:)\d+(?:\.\d+)?(?:(?:[ejpx]|ad|ar)_?\d+(?:\.\d+)?)*(?:b_?[\da-z]+(?:\.[\da-z]+)?)?|_(?!\.))/,adverb:{pattern:/[~}]|[\/\\]\.?|[bfM]\.|t[.:]/,alias:"builtin"},operator:/[=a][.:]|_\./,conjunction:{pattern:/&(?:\.:?|:)?|[.:@][.:]?|[!D][.:]|[;dHT]\.|`:?|[\^LS]:|"/,alias:"variable"},punctuation:/[()]/}}e.exports=a,a.displayName="j",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_java.0f55f1c4.js b/assets/js/react-syntax-highlighter_languages_refractor_java.0f55f1c4.js new file mode 100644 index 000000000..13cf2ab39 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_java.0f55f1c4.js @@ -0,0 +1,68 @@ +"use strict"; +exports.id = 3980; +exports.ids = [3980]; +exports.modules = { + +/***/ 15909: +/***/ ((module) => { + + + +module.exports = java +java.displayName = 'java' +java.aliases = [] +function java(Prism) { + ;(function(Prism) { + var keywords = /\b(?:abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while|var|null|exports|module|open|opens|provides|requires|to|transitive|uses|with)\b/ // based on the java naming conventions + var className = /\b[A-Z](?:\w*[a-z]\w*)?\b/ + Prism.languages.java = Prism.languages.extend('clike', { + 'class-name': [ + className, // variables and parameters + // this to support class names (or generic parameters) which do not contain a lower case letter (also works for methods) + /\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/ + ], + keyword: keywords, + function: [ + Prism.languages.clike.function, + { + pattern: /(\:\:)[a-z_]\w*/, + lookbehind: true + } + ], + number: /\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i, + operator: { + pattern: /(^|[^.])(?:<<=?|>>>?=?|->|([-+&|])\2|[?:~]|[-+*/%&|^!=<>]=?)/m, + lookbehind: true + } + }) + Prism.languages.insertBefore('java', 'class-name', { + annotation: { + alias: 'punctuation', + pattern: /(^|[^.])@\w+/, + lookbehind: true + }, + namespace: { + pattern: /(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(\.[a-z]\w*)+/, + lookbehind: true, + inside: { + punctuation: /\./ + } + }, + generics: { + pattern: /<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/, + inside: { + 'class-name': className, + keyword: keywords, + punctuation: /[<>(),.:]/, + operator: /[?&|]/ + } + } + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_java.7cb15ab8.js b/assets/js/react-syntax-highlighter_languages_refractor_java.7cb15ab8.js new file mode 100644 index 000000000..ccadda4d2 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_java.7cb15ab8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3980],{5909:e=>{function a(e){!function(e){var a=/\b(?:abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while|var|null|exports|module|open|opens|provides|requires|to|transitive|uses|with)\b/,t=/\b[A-Z](?:\w*[a-z]\w*)?\b/;e.languages.java=e.languages.extend("clike",{"class-name":[t,/\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/],keyword:a,function:[e.languages.clike.function,{pattern:/(\:\:)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|([-+&|])\2|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),e.languages.insertBefore("java","class-name",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0},namespace:{pattern:/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(\.[a-z]\w*)+/,lookbehind:!0,inside:{punctuation:/\./}},generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":t,keyword:a,punctuation:/[<>(),.:]/,operator:/[?&|]/}}})}(e)}e.exports=a,a.displayName="java",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_javascript.29ee4b5b.js b/assets/js/react-syntax-highlighter_languages_refractor_javascript.29ee4b5b.js new file mode 100644 index 000000000..0b3f2b6da --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_javascript.29ee4b5b.js @@ -0,0 +1,109 @@ +"use strict"; +exports.id = 7279; +exports.ids = [7279]; +exports.modules = { + +/***/ 36155: +/***/ ((module) => { + + + +module.exports = javascript +javascript.displayName = 'javascript' +javascript.aliases = ['js'] +function javascript(Prism) { + Prism.languages.javascript = Prism.languages.extend('clike', { + 'class-name': [ + Prism.languages.clike['class-name'], + { + pattern: /(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/, + lookbehind: true + } + ], + keyword: [ + { + pattern: /((?:^|})\s*)(?:catch|finally)\b/, + lookbehind: true + }, + { + pattern: /(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|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)\b/, + lookbehind: true + } + ], + number: /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/, + // Allow for all non-ASCII characters (See http://stackoverflow.com/a/2008444) + function: /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/, + operator: /-[-=]?|\+[+=]?|!=?=?|<<?=?|>>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/ + }) + Prism.languages.javascript[ + 'class-name' + ][0].pattern = /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/ + Prism.languages.insertBefore('javascript', 'keyword', { + regex: { + pattern: /((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/, + lookbehind: true, + greedy: true + }, + // This must be declared before keyword because we use "function" inside the look-forward + 'function-variable': { + pattern: /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/, + alias: 'function' + }, + parameter: [ + { + pattern: /(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/, + lookbehind: true, + inside: Prism.languages.javascript + }, + { + pattern: /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i, + inside: Prism.languages.javascript + }, + { + pattern: /(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/, + lookbehind: true, + inside: Prism.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]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/, + lookbehind: true, + inside: Prism.languages.javascript + } + ], + constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/ + }) + Prism.languages.insertBefore('javascript', 'string', { + 'template-string': { + pattern: /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/, + greedy: true, + inside: { + 'template-punctuation': { + pattern: /^`|`$/, + alias: 'string' + }, + interpolation: { + pattern: /((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/, + lookbehind: true, + inside: { + 'interpolation-punctuation': { + pattern: /^\${|}$/, + alias: 'punctuation' + }, + rest: Prism.languages.javascript + } + }, + string: /[\s\S]+/ + } + } + }) + if (Prism.languages.markup) { + Prism.languages.markup.tag.addInlined('script', 'javascript') + } + Prism.languages.js = Prism.languages.javascript +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_javascript.e60db6fc.js b/assets/js/react-syntax-highlighter_languages_refractor_javascript.e60db6fc.js new file mode 100644 index 000000000..1d97c2c5b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_javascript.e60db6fc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7279],{6155:e=>{function a(e){e.languages.javascript=e.languages.extend("clike",{"class-name":[e.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|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)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<<?=?|>>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),e.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,e.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:e.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:e.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:e.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]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:e.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),e.languages.insertBefore("javascript","string",{"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:e.languages.javascript}},string:/[\s\S]+/}}}),e.languages.markup&&e.languages.markup.tag.addInlined("script","javascript"),e.languages.js=e.languages.javascript}e.exports=a,a.displayName="javascript",a.aliases=["js"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_jolie.586bdc4d.js b/assets/js/react-syntax-highlighter_languages_refractor_jolie.586bdc4d.js new file mode 100644 index 000000000..1047b3876 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_jolie.586bdc4d.js @@ -0,0 +1,73 @@ +"use strict"; +exports.id = 8458; +exports.ids = [8458]; +exports.modules = { + +/***/ 66604: +/***/ ((module) => { + + + +module.exports = jolie +jolie.displayName = 'jolie' +jolie.aliases = [] +function jolie(Prism) { + Prism.languages.jolie = Prism.languages.extend('clike', { + keyword: /\b(?:include|define|is_defined|undef|main|init|outputPort|inputPort|Location|Protocol|Interfaces|RequestResponse|OneWay|type|interface|extender|throws|cset|csets|forward|Aggregates|Redirects|embedded|courier|execution|sequential|concurrent|single|scope|install|throw|comp|cH|default|global|linkIn|linkOut|synchronized|this|new|for|if|else|while|in|Jolie|Java|Javascript|nullProcess|spawn|constants|with|provide|until|exit|foreach|instanceof|over|service)\b/, + builtin: /\b(?:undefined|string|int|void|long|Byte|bool|double|float|char|any)\b/, + number: /(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?l?/i, + operator: /-[-=>]?|\+[+=]?|<[<=]?|[>=*!]=?|&&|\|\||[:?\/%^]/, + symbol: /[|;@]/, + punctuation: /[,.]/, + string: { + pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true + } + }) + delete Prism.languages.jolie['class-name'] + Prism.languages.insertBefore('jolie', 'keyword', { + function: { + pattern: /((?:\b(?:outputPort|inputPort|in|service|courier)\b|@)\s*)\w+/, + lookbehind: true + }, + aggregates: { + pattern: /(\bAggregates\s*:\s*)(?:\w+(?:\s+with\s+\w+)?\s*,\s*)*\w+(?:\s+with\s+\w+)?/, + lookbehind: true, + inside: { + withExtension: { + pattern: /\bwith\s+\w+/, + inside: { + keyword: /\bwith\b/ + } + }, + function: { + pattern: /\w+/ + }, + punctuation: { + pattern: /,/ + } + } + }, + redirects: { + pattern: /(\bRedirects\s*:\s*)(?:\w+\s*=>\s*\w+\s*,\s*)*(?:\w+\s*=>\s*\w+)/, + lookbehind: true, + inside: { + punctuation: { + pattern: /,/ + }, + function: { + pattern: /\w+/ + }, + symbol: { + pattern: /=>/ + } + } + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_jolie.e6083a86.js b/assets/js/react-syntax-highlighter_languages_refractor_jolie.e6083a86.js new file mode 100644 index 000000000..b3a4e33fb --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_jolie.e6083a86.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8458],{6604:e=>{function t(e){e.languages.jolie=e.languages.extend("clike",{keyword:/\b(?:include|define|is_defined|undef|main|init|outputPort|inputPort|Location|Protocol|Interfaces|RequestResponse|OneWay|type|interface|extender|throws|cset|csets|forward|Aggregates|Redirects|embedded|courier|execution|sequential|concurrent|single|scope|install|throw|comp|cH|default|global|linkIn|linkOut|synchronized|this|new|for|if|else|while|in|Jolie|Java|Javascript|nullProcess|spawn|constants|with|provide|until|exit|foreach|instanceof|over|service)\b/,builtin:/\b(?:undefined|string|int|void|long|Byte|bool|double|float|char|any)\b/,number:/(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?l?/i,operator:/-[-=>]?|\+[+=]?|<[<=]?|[>=*!]=?|&&|\|\||[:?\/%^]/,symbol:/[|;@]/,punctuation:/[,.]/,string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0}}),delete e.languages.jolie["class-name"],e.languages.insertBefore("jolie","keyword",{function:{pattern:/((?:\b(?:outputPort|inputPort|in|service|courier)\b|@)\s*)\w+/,lookbehind:!0},aggregates:{pattern:/(\bAggregates\s*:\s*)(?:\w+(?:\s+with\s+\w+)?\s*,\s*)*\w+(?:\s+with\s+\w+)?/,lookbehind:!0,inside:{withExtension:{pattern:/\bwith\s+\w+/,inside:{keyword:/\bwith\b/}},function:{pattern:/\w+/},punctuation:{pattern:/,/}}},redirects:{pattern:/(\bRedirects\s*:\s*)(?:\w+\s*=>\s*\w+\s*,\s*)*(?:\w+\s*=>\s*\w+)/,lookbehind:!0,inside:{punctuation:{pattern:/,/},function:{pattern:/\w+/},symbol:{pattern:/=>/}}}})}e.exports=t,t.displayName="jolie",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_json.59b8b15f.js b/assets/js/react-syntax-highlighter_languages_refractor_json.59b8b15f.js new file mode 100644 index 000000000..9829d708f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_json.59b8b15f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3657],{5950:e=>{function n(e){e.languages.json={property:{pattern:/"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,greedy:!0},string:{pattern:/"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,greedy:!0},comment:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,number:/-?\d+\.?\d*(e[+-]?\d+)?/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:true|false)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}}}e.exports=n,n.displayName="json",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_json.f825c4b7.js b/assets/js/react-syntax-highlighter_languages_refractor_json.f825c4b7.js new file mode 100644 index 000000000..98ad5e5a2 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_json.f825c4b7.js @@ -0,0 +1,40 @@ +"use strict"; +exports.id = 3657; +exports.ids = [3657]; +exports.modules = { + +/***/ 45950: +/***/ ((module) => { + + + +module.exports = json +json.displayName = 'json' +json.aliases = [] +function json(Prism) { + Prism.languages.json = { + property: { + pattern: /"(?:\\.|[^\\"\r\n])*"(?=\s*:)/, + greedy: true + }, + string: { + pattern: /"(?:\\.|[^\\"\r\n])*"(?!\s*:)/, + greedy: true + }, + comment: /\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/, + number: /-?\d+\.?\d*(e[+-]?\d+)?/i, + punctuation: /[{}[\],]/, + operator: /:/, + boolean: /\b(?:true|false)\b/, + null: { + pattern: /\bnull\b/, + alias: 'keyword' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_jsx.3f3349ac.js b/assets/js/react-syntax-highlighter_languages_refractor_jsx.3f3349ac.js new file mode 100644 index 000000000..51d3001dd --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_jsx.3f3349ac.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4657],{6412:t=>{function n(t){!function(t){var n=t.util.clone(t.languages.javascript);t.languages.jsx=t.languages.extend("markup",n),t.languages.jsx.tag.pattern=/<\/?(?:[\w.:-]+\s*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i,t.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/i,t.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">]+)/i,t.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,t.languages.insertBefore("inside","attr-name",{spread:{pattern:/\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/,inside:{punctuation:/\.{3}|[{}.]/,"attr-value":/\w+/}}},t.languages.jsx.tag),t.languages.insertBefore("inside","attr-value",{script:{pattern:/=(\{(?:\{(?:\{[^}]*\}|[^}])*\}|[^}])+\})/i,inside:{"script-punctuation":{pattern:/^=(?={)/,alias:"punctuation"},rest:t.languages.jsx},alias:"language-javascript"}},t.languages.jsx.tag);var e=function(t){return t?"string"==typeof t?t:"string"==typeof t.content?t.content:t.content.map(e).join(""):""},a=function(n){for(var s=[],g=0;g<n.length;g++){var i=n[g],o=!1;if("string"!=typeof i&&("tag"===i.type&&i.content[0]&&"tag"===i.content[0].type?"</"===i.content[0].content[0].content?s.length>0&&s[s.length-1].tagName===e(i.content[0].content[1])&&s.pop():"/>"===i.content[i.content.length-1].content||s.push({tagName:e(i.content[0].content[1]),openedBraces:0}):s.length>0&&"punctuation"===i.type&&"{"===i.content?s[s.length-1].openedBraces++:s.length>0&&s[s.length-1].openedBraces>0&&"punctuation"===i.type&&"}"===i.content?s[s.length-1].openedBraces--:o=!0),(o||"string"==typeof i)&&s.length>0&&0===s[s.length-1].openedBraces){var p=e(i);g<n.length-1&&("string"==typeof n[g+1]||"plain-text"===n[g+1].type)&&(p+=e(n[g+1]),n.splice(g+1,1)),g>0&&("string"==typeof n[g-1]||"plain-text"===n[g-1].type)&&(p=e(n[g-1])+p,n.splice(g-1,1),g--),n[g]=new t.Token("plain-text",p,null,p)}i.content&&"string"!=typeof i.content&&a(i.content)}};t.hooks.add("after-tokenize",(function(t){"jsx"!==t.language&&"tsx"!==t.language||a(t.tokens)}))}(t)}t.exports=n,n.displayName="jsx",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_jsx.d24b3ace.js b/assets/js/react-syntax-highlighter_languages_refractor_jsx.d24b3ace.js new file mode 100644 index 000000000..f6203a905 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_jsx.d24b3ace.js @@ -0,0 +1,174 @@ +"use strict"; +exports.id = 4657; +exports.ids = [4657]; +exports.modules = { + +/***/ 96412: +/***/ ((module) => { + + + +module.exports = jsx +jsx.displayName = 'jsx' +jsx.aliases = [] +function jsx(Prism) { + ;(function(Prism) { + var javascript = Prism.util.clone(Prism.languages.javascript) + Prism.languages.jsx = Prism.languages.extend('markup', javascript) + Prism.languages.jsx.tag.pattern = /<\/?(?:[\w.:-]+\s*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i + Prism.languages.jsx.tag.inside['tag'].pattern = /^<\/?[^\s>\/]*/i + Prism.languages.jsx.tag.inside[ + 'attr-value' + ].pattern = /=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">]+)/i + Prism.languages.jsx.tag.inside['tag'].inside[ + 'class-name' + ] = /^[A-Z]\w*(?:\.[A-Z]\w*)*$/ + Prism.languages.insertBefore( + 'inside', + 'attr-name', + { + spread: { + pattern: /\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/, + inside: { + punctuation: /\.{3}|[{}.]/, + 'attr-value': /\w+/ + } + } + }, + Prism.languages.jsx.tag + ) + Prism.languages.insertBefore( + 'inside', + 'attr-value', + { + script: { + // Allow for two levels of nesting + pattern: /=(\{(?:\{(?:\{[^}]*\}|[^}])*\}|[^}])+\})/i, + inside: { + 'script-punctuation': { + pattern: /^=(?={)/, + alias: 'punctuation' + }, + rest: Prism.languages.jsx + }, + alias: 'language-javascript' + } + }, + Prism.languages.jsx.tag + ) // The following will handle plain text inside tags + var stringifyToken = function(token) { + if (!token) { + return '' + } + if (typeof token === 'string') { + return token + } + if (typeof token.content === 'string') { + return token.content + } + return token.content.map(stringifyToken).join('') + } + var walkTokens = function(tokens) { + var openedTags = [] + for (var i = 0; i < tokens.length; i++) { + var token = tokens[i] + var notTagNorBrace = false + if (typeof token !== 'string') { + if ( + token.type === 'tag' && + token.content[0] && + token.content[0].type === 'tag' + ) { + // We found a tag, now find its kind + if (token.content[0].content[0].content === '</') { + // Closing tag + if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].tagName === + stringifyToken(token.content[0].content[1]) + ) { + // Pop matching opening tag + openedTags.pop() + } + } else { + if (token.content[token.content.length - 1].content === '/>') { + // Autoclosed tag, ignore + } else { + // Opening tag + openedTags.push({ + tagName: stringifyToken(token.content[0].content[1]), + openedBraces: 0 + }) + } + } + } else if ( + openedTags.length > 0 && + token.type === 'punctuation' && + token.content === '{' + ) { + // Here we might have entered a JSX context inside a tag + openedTags[openedTags.length - 1].openedBraces++ + } else if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].openedBraces > 0 && + token.type === 'punctuation' && + token.content === '}' + ) { + // Here we might have left a JSX context inside a tag + openedTags[openedTags.length - 1].openedBraces-- + } else { + notTagNorBrace = true + } + } + if (notTagNorBrace || typeof token === 'string') { + if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].openedBraces === 0 + ) { + // Here we are inside a tag, and not inside a JSX context. + // That's plain text: drop any tokens matched. + var plainText = stringifyToken(token) // And merge text with adjacent text + if ( + i < tokens.length - 1 && + (typeof tokens[i + 1] === 'string' || + tokens[i + 1].type === 'plain-text') + ) { + plainText += stringifyToken(tokens[i + 1]) + tokens.splice(i + 1, 1) + } + if ( + i > 0 && + (typeof tokens[i - 1] === 'string' || + tokens[i - 1].type === 'plain-text') + ) { + plainText = stringifyToken(tokens[i - 1]) + plainText + tokens.splice(i - 1, 1) + i-- + } + tokens[i] = new Prism.Token( + 'plain-text', + plainText, + null, + plainText + ) + } + } + if (token.content && typeof token.content !== 'string') { + walkTokens(token.content) + } + } + } + Prism.hooks.add('after-tokenize', function(env) { + if (env.language !== 'jsx' && env.language !== 'tsx') { + return + } + walkTokens(env.tokens) + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_julia.735b2336.js b/assets/js/react-syntax-highlighter_languages_refractor_julia.735b2336.js new file mode 100644 index 000000000..ccc2eba1e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_julia.735b2336.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5508],{9259:e=>{function t(e){e.languages.julia={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},string:/("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2/,keyword:/\b(?:abstract|baremodule|begin|bitstype|break|catch|ccall|const|continue|do|else|elseif|end|export|finally|for|function|global|if|immutable|import|importall|in|let|local|macro|module|print|println|quote|return|struct|try|type|typealias|using|while)\b/,boolean:/\b(?:true|false)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[box])?(?:[\da-f]+\.?\d*|\.\d+)(?:[efp][+-]?\d+)?j?/i,operator:/[-+*^%\xf7&$\\]=?|\/[\/=]?|!=?=?|\|[=>]?|<(?:<=?|[=:])?|>(?:=|>>?=?)?|==?=?|[~\u2260\u2264\u2265]/,punctuation:/[{}[\];(),.:]/,constant:/\b(?:(?:NaN|Inf)(?:16|32|64)?)\b/}}e.exports=t,t.displayName="julia",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_julia.7b8fa7d0.js b/assets/js/react-syntax-highlighter_languages_refractor_julia.7b8fa7d0.js new file mode 100644 index 000000000..fc227b10a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_julia.7b8fa7d0.js @@ -0,0 +1,34 @@ +"use strict"; +exports.id = 5508; +exports.ids = [5508]; +exports.modules = { + +/***/ 39259: +/***/ ((module) => { + + + +module.exports = julia +julia.displayName = 'julia' +julia.aliases = [] +function julia(Prism) { + Prism.languages.julia = { + comment: { + pattern: /(^|[^\\])#.*/, + lookbehind: true + }, + string: /("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2/, + keyword: /\b(?:abstract|baremodule|begin|bitstype|break|catch|ccall|const|continue|do|else|elseif|end|export|finally|for|function|global|if|immutable|import|importall|in|let|local|macro|module|print|println|quote|return|struct|try|type|typealias|using|while)\b/, + boolean: /\b(?:true|false)\b/, + number: /(?:\b(?=\d)|\B(?=\.))(?:0[box])?(?:[\da-f]+\.?\d*|\.\d+)(?:[efp][+-]?\d+)?j?/i, + operator: /[-+*^%÷&$\\]=?|\/[\/=]?|!=?=?|\|[=>]?|<(?:<=?|[=:])?|>(?:=|>>?=?)?|==?=?|[~≠≤≥]/, + punctuation: /[{}[\];(),.:]/, + constant: /\b(?:(?:NaN|Inf)(?:16|32|64)?)\b/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_keyman.5c625d4d.js b/assets/js/react-syntax-highlighter_languages_refractor_keyman.5c625d4d.js new file mode 100644 index 000000000..4df9270c7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_keyman.5c625d4d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3819],{5760:e=>{function a(e){e.languages.keyman={comment:/\bc\s.*/i,function:/\[\s*(?:(?:CTRL|SHIFT|ALT|LCTRL|RCTRL|LALT|RALT|CAPS|NCAPS)\s+)*(?:[TKU]_[\w?]+|".+?"|'.+?')\s*\]/i,string:/("|').*?\1/,bold:[/&(?:baselayout|bitmap|capsononly|capsalwaysoff|shiftfreescaps|copyright|ethnologuecode|hotkey|includecodes|keyboardversion|kmw_embedcss|kmw_embedjs|kmw_helpfile|kmw_helptext|kmw_rtl|language|layer|layoutfile|message|mnemoniclayout|name|oldcharposmatching|platform|targets|version|visualkeyboard|windowslanguages)\b/i,/\b(?:bitmap|bitmaps|caps on only|caps always off|shift frees caps|copyright|hotkey|language|layout|message|name|version)\b/i],keyword:/\b(?:any|baselayout|beep|call|context|deadkey|dk|if|index|layer|notany|nul|outs|platform|return|reset|save|set|store|use)\b/i,atrule:/\b(?:ansi|begin|unicode|group|using keys|match|nomatch)\b/i,number:/\b(?:U\+[\dA-F]+|d\d+|x[\da-f]+|\d+)\b/i,operator:/[+>\\,()]/,tag:/\$(?:keyman|kmfl|weaver|keymanweb|keymanonly):/i}}e.exports=a,a.displayName="keyman",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_keyman.71eadc86.js b/assets/js/react-syntax-highlighter_languages_refractor_keyman.71eadc86.js new file mode 100644 index 000000000..8e9dcf61d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_keyman.71eadc86.js @@ -0,0 +1,40 @@ +"use strict"; +exports.id = 3819; +exports.ids = [3819]; +exports.modules = { + +/***/ 35760: +/***/ ((module) => { + + + +module.exports = keyman +keyman.displayName = 'keyman' +keyman.aliases = [] +function keyman(Prism) { + Prism.languages.keyman = { + comment: /\bc\s.*/i, + function: /\[\s*(?:(?:CTRL|SHIFT|ALT|LCTRL|RCTRL|LALT|RALT|CAPS|NCAPS)\s+)*(?:[TKU]_[\w?]+|".+?"|'.+?')\s*\]/i, + // virtual key + string: /("|').*?\1/, + bold: [ + // header statements, system stores and variable system stores + /&(?:baselayout|bitmap|capsononly|capsalwaysoff|shiftfreescaps|copyright|ethnologuecode|hotkey|includecodes|keyboardversion|kmw_embedcss|kmw_embedjs|kmw_helpfile|kmw_helptext|kmw_rtl|language|layer|layoutfile|message|mnemoniclayout|name|oldcharposmatching|platform|targets|version|visualkeyboard|windowslanguages)\b/i, + /\b(?:bitmap|bitmaps|caps on only|caps always off|shift frees caps|copyright|hotkey|language|layout|message|name|version)\b/i + ], + keyword: /\b(?:any|baselayout|beep|call|context|deadkey|dk|if|index|layer|notany|nul|outs|platform|return|reset|save|set|store|use)\b/i, + // rule keywords + atrule: /\b(?:ansi|begin|unicode|group|using keys|match|nomatch)\b/i, + // structural keywords + number: /\b(?:U\+[\dA-F]+|d\d+|x[\da-f]+|\d+)\b/i, + // U+####, x###, d### characters and numbers + operator: /[+>\\,()]/, + tag: /\$(?:keyman|kmfl|weaver|keymanweb|keymanonly):/i // prefixes + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_kotlin.59923adf.js b/assets/js/react-syntax-highlighter_languages_refractor_kotlin.59923adf.js new file mode 100644 index 000000000..de0a931a6 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_kotlin.59923adf.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4630],{9715:e=>{function n(e){!function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[/\w+(?=\s*\()/,{pattern:/(\.)\w+(?=\s*\{)/,lookbehind:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"],e.languages.insertBefore("kotlin","string",{"raw-string":{pattern:/("""|''')[\s\S]*?\1/,alias:"string"}}),e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\w+@|@\w+/,alias:"symbol"}});var n=[{pattern:/\$\{[^}]+\}/,inside:{delimiter:{pattern:/^\$\{|\}$/,alias:"variable"},rest:e.languages.kotlin}},{pattern:/\$\w+/,alias:"variable"}];e.languages.kotlin.string.inside=e.languages.kotlin["raw-string"].inside={interpolation:n}}(e)}e.exports=n,n.displayName="kotlin",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_kotlin.f6e16f95.js b/assets/js/react-syntax-highlighter_languages_refractor_kotlin.f6e16f95.js new file mode 100644 index 000000000..6414b077c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_kotlin.f6e16f95.js @@ -0,0 +1,79 @@ +"use strict"; +exports.id = 4630; +exports.ids = [4630]; +exports.modules = { + +/***/ 19715: +/***/ ((module) => { + + + +module.exports = kotlin +kotlin.displayName = 'kotlin' +kotlin.aliases = [] +function kotlin(Prism) { + ;(function(Prism) { + Prism.languages.kotlin = Prism.languages.extend('clike', { + keyword: { + // The lookbehind prevents wrong highlighting of e.g. kotlin.properties.get + pattern: /(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/, + lookbehind: true + }, + function: [ + /\w+(?=\s*\()/, + { + pattern: /(\.)\w+(?=\s*\{)/, + lookbehind: true + } + ], + number: /\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/, + operator: /\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/ + }) + delete Prism.languages.kotlin['class-name'] + Prism.languages.insertBefore('kotlin', 'string', { + 'raw-string': { + pattern: /("""|''')[\s\S]*?\1/, + alias: 'string' // See interpolation below + } + }) + Prism.languages.insertBefore('kotlin', 'keyword', { + annotation: { + pattern: /\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/, + alias: 'builtin' + } + }) + Prism.languages.insertBefore('kotlin', 'function', { + label: { + pattern: /\w+@|@\w+/, + alias: 'symbol' + } + }) + var interpolation = [ + { + pattern: /\$\{[^}]+\}/, + inside: { + delimiter: { + pattern: /^\$\{|\}$/, + alias: 'variable' + }, + rest: Prism.languages.kotlin + } + }, + { + pattern: /\$\w+/, + alias: 'variable' + } + ] + Prism.languages.kotlin['string'].inside = Prism.languages.kotlin[ + 'raw-string' + ].inside = { + interpolation: interpolation + } + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_latex.ba040658.js b/assets/js/react-syntax-highlighter_languages_refractor_latex.ba040658.js new file mode 100644 index 000000000..0f667fea3 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_latex.ba040658.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4732],{2876:a=>{function e(a){!function(a){var e=/\\(?:[^a-z()[\]]|[a-z*]+)/i,t={"equation-command":{pattern:e,alias:"regex"}};a.languages.latex={comment:/%.*/m,cdata:{pattern:/(\\begin\{((?:verbatim|lstlisting)\*?)\})[\s\S]*?(?=\\end\{\2\})/,lookbehind:!0},equation:[{pattern:/\$\$(?:\\[\s\S]|[^\\$])+\$\$|\$(?:\\[\s\S]|[^\\$])+\$|\\\([\s\S]*?\\\)|\\\[[\s\S]*?\\\]/,inside:t,alias:"string"},{pattern:/(\\begin\{((?:equation|math|eqnarray|align|multline|gather)\*?)\})[\s\S]*?(?=\\end\{\2\})/,lookbehind:!0,inside:t,alias:"string"}],keyword:{pattern:/(\\(?:begin|end|ref|cite|label|usepackage|documentclass)(?:\[[^\]]+\])?\{)[^}]+(?=\})/,lookbehind:!0},url:{pattern:/(\\url\{)[^}]+(?=\})/,lookbehind:!0},headline:{pattern:/(\\(?:part|chapter|section|subsection|frametitle|subsubsection|paragraph|subparagraph|subsubparagraph|subsubsubparagraph)\*?(?:\[[^\]]+\])?\{)[^}]+(?=\}(?:\[[^\]]+\])?)/,lookbehind:!0,alias:"class-name"},function:{pattern:e,alias:"selector"},punctuation:/[[\]{}&]/},a.languages.tex=a.languages.latex,a.languages.context=a.languages.latex}(a)}a.exports=e,e.displayName="latex",e.aliases=["tex","context"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_latex.fef9581a.js b/assets/js/react-syntax-highlighter_languages_refractor_latex.fef9581a.js new file mode 100644 index 000000000..359f09fa7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_latex.fef9581a.js @@ -0,0 +1,83 @@ +"use strict"; +exports.id = 4732; +exports.ids = [4732]; +exports.modules = { + +/***/ 42876: +/***/ ((module) => { + + + +module.exports = latex +latex.displayName = 'latex' +latex.aliases = ['tex', 'context'] +function latex(Prism) { + ;(function(Prism) { + var funcPattern = /\\(?:[^a-z()[\]]|[a-z*]+)/i + var insideEqu = { + 'equation-command': { + pattern: funcPattern, + alias: 'regex' + } + } + Prism.languages.latex = { + comment: /%.*/m, + // the verbatim environment prints whitespace to the document + cdata: { + pattern: /(\\begin\{((?:verbatim|lstlisting)\*?)\})[\s\S]*?(?=\\end\{\2\})/, + lookbehind: true + }, + /* + * equations can be between $$ $$ or $ $ or \( \) or \[ \] + * (all are multiline) + */ + equation: [ + { + pattern: /\$\$(?:\\[\s\S]|[^\\$])+\$\$|\$(?:\\[\s\S]|[^\\$])+\$|\\\([\s\S]*?\\\)|\\\[[\s\S]*?\\\]/, + inside: insideEqu, + alias: 'string' + }, + { + pattern: /(\\begin\{((?:equation|math|eqnarray|align|multline|gather)\*?)\})[\s\S]*?(?=\\end\{\2\})/, + lookbehind: true, + inside: insideEqu, + alias: 'string' + } + ], + /* + * arguments which are keywords or references are highlighted + * as keywords + */ + keyword: { + pattern: /(\\(?:begin|end|ref|cite|label|usepackage|documentclass)(?:\[[^\]]+\])?\{)[^}]+(?=\})/, + lookbehind: true + }, + url: { + pattern: /(\\url\{)[^}]+(?=\})/, + lookbehind: true + }, + /* + * section or chapter headlines are highlighted as bold so that + * they stand out more + */ + headline: { + pattern: /(\\(?:part|chapter|section|subsection|frametitle|subsubsection|paragraph|subparagraph|subsubparagraph|subsubsubparagraph)\*?(?:\[[^\]]+\])?\{)[^}]+(?=\}(?:\[[^\]]+\])?)/, + lookbehind: true, + alias: 'class-name' + }, + function: { + pattern: funcPattern, + alias: 'selector' + }, + punctuation: /[[\]{}&]/ + } + Prism.languages.tex = Prism.languages.latex + Prism.languages.context = Prism.languages.latex + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_less.1f93c26a.js b/assets/js/react-syntax-highlighter_languages_refractor_less.1f93c26a.js new file mode 100644 index 000000000..455961193 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_less.1f93c26a.js @@ -0,0 +1,70 @@ +"use strict"; +exports.id = 5951; +exports.ids = [5951]; +exports.modules = { + +/***/ 41701: +/***/ ((module) => { + + + +module.exports = less +less.displayName = 'less' +less.aliases = [] +function less(Prism) { + /* FIXME : +:extend() is not handled specifically : its highlighting is buggy. +Mixin usage must be inside a ruleset to be highlighted. +At-rules (e.g. import) containing interpolations are buggy. +Detached rulesets are highlighted as at-rules. +A comment before a mixin usage prevents the latter to be properly highlighted. +*/ + Prism.languages.less = Prism.languages.extend('css', { + comment: [ + /\/\*[\s\S]*?\*\//, + { + pattern: /(^|[^\\])\/\/.*/, + lookbehind: true + } + ], + atrule: { + pattern: /@[\w-]+?(?:\([^{}]+\)|[^(){};])*?(?=\s*\{)/i, + inside: { + punctuation: /[:()]/ + } + }, + // selectors and mixins are considered the same + selector: { + pattern: /(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\([^{}]*\)|[^{};@])*?(?=\s*\{)/, + inside: { + // mixin parameters + variable: /@+[\w-]+/ + } + }, + property: /(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i, + operator: /[+\-*\/]/ + }) + Prism.languages.insertBefore('less', 'property', { + variable: [ + // Variable declaration (the colon must be consumed!) + { + pattern: /@[\w-]+\s*:/, + inside: { + punctuation: /:/ + } + }, // Variable usage + /@@?[\w-]+/ + ], + 'mixin-usage': { + pattern: /([{;]\s*)[.#](?!\d)[\w-]+.*?(?=[(;])/, + lookbehind: true, + alias: 'function' + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_less.7878f75a.js b/assets/js/react-syntax-highlighter_languages_refractor_less.7878f75a.js new file mode 100644 index 000000000..c1b8abbeb --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_less.7878f75a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5951],{1701:e=>{function s(e){e.languages.less=e.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-]+?(?:\([^{}]+\)|[^(){};])*?(?=\s*\{)/i,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\([^{}]*\)|[^{};@])*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i,operator:/[+\-*\/]/}),e.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-]+.*?(?=[(;])/,lookbehind:!0,alias:"function"}})}e.exports=s,s.displayName="less",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_liquid.5861d940.js b/assets/js/react-syntax-highlighter_languages_refractor_liquid.5861d940.js new file mode 100644 index 000000000..79b6db8a4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_liquid.5861d940.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1323],{4927:e=>{function s(e){e.languages.liquid={keyword:/\b(?:comment|endcomment|if|elsif|else|endif|unless|endunless|for|endfor|case|endcase|when|in|break|assign|continue|limit|offset|range|reversed|raw|endraw|capture|endcapture|tablerow|endtablerow)\b/,number:/\b0b[01]+\b|\b0x[\da-f]*\.?[\da-fp-]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?[df]?/i,operator:{pattern:/(^|[^.])(?:\+[+=]?|-[-=]?|!=?|<<?=?|>>?>?=?|==?|&[&=]?|\|[|=]?|\*=?|\/=?|%=?|\^=?|[?:~])/m,lookbehind:!0},function:{pattern:/(^|[\s;|&])(?:append|prepend|capitalize|cycle|cols|increment|decrement|abs|at_least|at_most|ceil|compact|concat|date|default|divided_by|downcase|escape|escape_once|first|floor|join|last|lstrip|map|minus|modulo|newline_to_br|plus|remove|remove_first|replace|replace_first|reverse|round|rstrip|size|slice|sort|sort_natural|split|strip|strip_html|strip_newlines|times|truncate|truncatewords|uniq|upcase|url_decode|url_encode|include|paginate)(?=$|[\s;|&])/,lookbehind:!0}}}e.exports=s,s.displayName="liquid",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_liquid.817dca8d.js b/assets/js/react-syntax-highlighter_languages_refractor_liquid.817dca8d.js new file mode 100644 index 000000000..80f09f190 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_liquid.817dca8d.js @@ -0,0 +1,33 @@ +"use strict"; +exports.id = 1323; +exports.ids = [1323]; +exports.modules = { + +/***/ 34927: +/***/ ((module) => { + + + +module.exports = liquid +liquid.displayName = 'liquid' +liquid.aliases = [] +function liquid(Prism) { + Prism.languages.liquid = { + keyword: /\b(?:comment|endcomment|if|elsif|else|endif|unless|endunless|for|endfor|case|endcase|when|in|break|assign|continue|limit|offset|range|reversed|raw|endraw|capture|endcapture|tablerow|endtablerow)\b/, + number: /\b0b[01]+\b|\b0x[\da-f]*\.?[\da-fp-]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?[df]?/i, + operator: { + pattern: /(^|[^.])(?:\+[+=]?|-[-=]?|!=?|<<?=?|>>?>?=?|==?|&[&=]?|\|[|=]?|\*=?|\/=?|%=?|\^=?|[?:~])/m, + lookbehind: true + }, + function: { + pattern: /(^|[\s;|&])(?:append|prepend|capitalize|cycle|cols|increment|decrement|abs|at_least|at_most|ceil|compact|concat|date|default|divided_by|downcase|escape|escape_once|first|floor|join|last|lstrip|map|minus|modulo|newline_to_br|plus|remove|remove_first|replace|replace_first|reverse|round|rstrip|size|slice|sort|sort_natural|split|strip|strip_html|strip_newlines|times|truncate|truncatewords|uniq|upcase|url_decode|url_encode|include|paginate)(?=$|[\s;|&])/, + lookbehind: true + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_lisp.417060dc.js b/assets/js/react-syntax-highlighter_languages_refractor_lisp.417060dc.js new file mode 100644 index 000000000..7393b3d6e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_lisp.417060dc.js @@ -0,0 +1,206 @@ +"use strict"; +exports.id = 3520; +exports.ids = [3520]; +exports.modules = { + +/***/ 3848: +/***/ ((module) => { + + + +module.exports = lisp +lisp.displayName = 'lisp' +lisp.aliases = [] +function lisp(Prism) { + ;(function(Prism) { + // Functions to construct regular expressions + // simple form + // e.g. (interactive ... or (interactive) + function simple_form(name) { + return RegExp('(\\()' + name + '(?=[\\s\\)])') + } // booleans and numbers + function primitive(pattern) { + return RegExp('([\\s([])' + pattern + '(?=[\\s)])') + } // Patterns in regular expressions + // Symbol name. See https://www.gnu.org/software/emacs/manual/html_node/elisp/Symbol-Type.html + // & and : are excluded as they are usually used for special purposes + var symbol = '[-+*/_~!@$%^=<>{}\\w]+' // symbol starting with & used in function arguments + var marker = '&' + symbol // Open parenthesis for look-behind + var par = '(\\()' + var endpar = '(?=\\))' // End the pattern with look-ahead space + var space = '(?=\\s)' + var language = { + // Three or four semicolons are considered a heading. + // See https://www.gnu.org/software/emacs/manual/html_node/elisp/Comment-Tips.html + heading: { + pattern: /;;;.*/, + alias: ['comment', 'title'] + }, + comment: /;.*/, + string: { + pattern: /"(?:[^"\\]|\\.)*"/, + greedy: true, + inside: { + argument: /[-A-Z]+(?=[.,\s])/, + symbol: RegExp('`' + symbol + "'") + } + }, + 'quoted-symbol': { + pattern: RegExp("#?'" + symbol), + alias: ['variable', 'symbol'] + }, + 'lisp-property': { + pattern: RegExp(':' + symbol), + alias: 'property' + }, + splice: { + pattern: RegExp(',@?' + symbol), + alias: ['symbol', 'variable'] + }, + keyword: [ + { + pattern: RegExp( + par + + '(?:(?:lexical-)?let\\*?|(?:cl-)?letf|if|when|while|unless|cons|cl-loop|and|or|not|cond|setq|error|message|null|require|provide|use-package)' + + space + ), + lookbehind: true + }, + { + pattern: RegExp( + par + + '(?:for|do|collect|return|finally|append|concat|in|by)' + + space + ), + lookbehind: true + } + ], + declare: { + pattern: simple_form('declare'), + lookbehind: true, + alias: 'keyword' + }, + interactive: { + pattern: simple_form('interactive'), + lookbehind: true, + alias: 'keyword' + }, + boolean: { + pattern: primitive('(?:t|nil)'), + lookbehind: true + }, + number: { + pattern: primitive('[-+]?\\d+(?:\\.\\d*)?'), + lookbehind: true + }, + defvar: { + pattern: RegExp(par + 'def(?:var|const|custom|group)\\s+' + symbol), + lookbehind: true, + inside: { + keyword: /^def[a-z]+/, + variable: RegExp(symbol) + } + }, + defun: { + pattern: RegExp( + par + + '(?:cl-)?(?:defun\\*?|defmacro)\\s+' + + symbol + + '\\s+\\([\\s\\S]*?\\)' + ), + lookbehind: true, + inside: { + keyword: /^(?:cl-)?def\S+/, + // See below, this property needs to be defined later so that it can + // reference the language object. + arguments: null, + function: { + pattern: RegExp('(^\\s)' + symbol), + lookbehind: true + }, + punctuation: /[()]/ + } + }, + lambda: { + pattern: RegExp(par + 'lambda\\s+\\((?:&?' + symbol + '\\s*)*\\)'), + lookbehind: true, + inside: { + keyword: /^lambda/, + // See below, this property needs to be defined later so that it can + // reference the language object. + arguments: null, + punctuation: /[()]/ + } + }, + car: { + pattern: RegExp(par + symbol), + lookbehind: true + }, + punctuation: [ + // open paren, brackets, and close paren + /(['`,]?\(|[)\[\]])/, // cons + { + pattern: /(\s)\.(?=\s)/, + lookbehind: true + } + ] + } + var arg = { + 'lisp-marker': RegExp(marker), + rest: { + argument: { + pattern: RegExp(symbol), + alias: 'variable' + }, + varform: { + pattern: RegExp(par + symbol + '\\s+\\S[\\s\\S]*' + endpar), + lookbehind: true, + inside: { + string: language.string, + boolean: language.boolean, + number: language.number, + symbol: language.symbol, + punctuation: /[()]/ + } + } + } + } + var forms = '\\S+(?:\\s+\\S+)*' + var arglist = { + pattern: RegExp(par + '[\\s\\S]*' + endpar), + lookbehind: true, + inside: { + 'rest-vars': { + pattern: RegExp('&(?:rest|body)\\s+' + forms), + inside: arg + }, + 'other-marker-vars': { + pattern: RegExp('&(?:optional|aux)\\s+' + forms), + inside: arg + }, + keys: { + pattern: RegExp('&key\\s+' + forms + '(?:\\s+&allow-other-keys)?'), + inside: arg + }, + argument: { + pattern: RegExp(symbol), + alias: 'variable' + }, + punctuation: /[()]/ + } + } + language['lambda'].inside.arguments = arglist + language['defun'].inside.arguments = Prism.util.clone(arglist) + language['defun'].inside.arguments.inside.sublist = arglist + Prism.languages.lisp = language + Prism.languages.elisp = language + Prism.languages.emacs = language + Prism.languages['emacs-lisp'] = language + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_lisp.6a751930.js b/assets/js/react-syntax-highlighter_languages_refractor_lisp.6a751930.js new file mode 100644 index 000000000..573de6cd1 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_lisp.6a751930.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3520],{3848:e=>{function n(e){!function(e){function n(e){return RegExp("(\\()"+e+"(?=[\\s\\)])")}function a(e){return RegExp("([\\s([])"+e+"(?=[\\s)])")}var t="[-+*/_~!@$%^=<>{}\\w]+",s="(\\()",i="(?=\\))",r={heading:{pattern:/;;;.*/,alias:["comment","title"]},comment:/;.*/,string:{pattern:/"(?:[^"\\]|\\.)*"/,greedy:!0,inside:{argument:/[-A-Z]+(?=[.,\s])/,symbol:RegExp("`"+t+"'")}},"quoted-symbol":{pattern:RegExp("#?'"+t),alias:["variable","symbol"]},"lisp-property":{pattern:RegExp(":"+t),alias:"property"},splice:{pattern:RegExp(",@?"+t),alias:["symbol","variable"]},keyword:[{pattern:RegExp("(\\()(?:(?:lexical-)?let\\*?|(?:cl-)?letf|if|when|while|unless|cons|cl-loop|and|or|not|cond|setq|error|message|null|require|provide|use-package)(?=\\s)"),lookbehind:!0},{pattern:RegExp("(\\()(?:for|do|collect|return|finally|append|concat|in|by)(?=\\s)"),lookbehind:!0}],declare:{pattern:n("declare"),lookbehind:!0,alias:"keyword"},interactive:{pattern:n("interactive"),lookbehind:!0,alias:"keyword"},boolean:{pattern:a("(?:t|nil)"),lookbehind:!0},number:{pattern:a("[-+]?\\d+(?:\\.\\d*)?"),lookbehind:!0},defvar:{pattern:RegExp("(\\()def(?:var|const|custom|group)\\s+"+t),lookbehind:!0,inside:{keyword:/^def[a-z]+/,variable:RegExp(t)}},defun:{pattern:RegExp("(\\()(?:cl-)?(?:defun\\*?|defmacro)\\s+"+t+"\\s+\\([\\s\\S]*?\\)"),lookbehind:!0,inside:{keyword:/^(?:cl-)?def\S+/,arguments:null,function:{pattern:RegExp("(^\\s)"+t),lookbehind:!0},punctuation:/[()]/}},lambda:{pattern:RegExp("(\\()lambda\\s+\\((?:&?"+t+"\\s*)*\\)"),lookbehind:!0,inside:{keyword:/^lambda/,arguments:null,punctuation:/[()]/}},car:{pattern:RegExp(s+t),lookbehind:!0},punctuation:[/(['`,]?\(|[)\[\]])/,{pattern:/(\s)\.(?=\s)/,lookbehind:!0}]},l={"lisp-marker":RegExp("&[-+*/_~!@$%^=<>{}\\w]+"),rest:{argument:{pattern:RegExp(t),alias:"variable"},varform:{pattern:RegExp(s+t+"\\s+\\S[\\s\\S]*"+i),lookbehind:!0,inside:{string:r.string,boolean:r.boolean,number:r.number,symbol:r.symbol,punctuation:/[()]/}}}},o="\\S+(?:\\s+\\S+)*",p={pattern:RegExp("(\\()[\\s\\S]*(?=\\))"),lookbehind:!0,inside:{"rest-vars":{pattern:RegExp("&(?:rest|body)\\s+"+o),inside:l},"other-marker-vars":{pattern:RegExp("&(?:optional|aux)\\s+"+o),inside:l},keys:{pattern:RegExp("&key\\s+"+o+"(?:\\s+&allow-other-keys)?"),inside:l},argument:{pattern:RegExp(t),alias:"variable"},punctuation:/[()]/}};r.lambda.inside.arguments=p,r.defun.inside.arguments=e.util.clone(p),r.defun.inside.arguments.inside.sublist=p,e.languages.lisp=r,e.languages.elisp=r,e.languages.emacs=r,e.languages["emacs-lisp"]=r}(e)}e.exports=n,n.displayName="lisp",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_livescript.2ea254a8.js b/assets/js/react-syntax-highlighter_languages_refractor_livescript.2ea254a8.js new file mode 100644 index 000000000..3068a5818 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_livescript.2ea254a8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4698],{1469:e=>{function t(e){e.languages.livescript={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\])#.*/,lookbehind:!0}],"interpolated-string":{pattern:/(^|[^"])("""|")(?:\\[\s\S]|(?!\2)[^\\])*\2(?!")/,lookbehind:!0,greedy:!0,inside:{variable:{pattern:/(^|[^\\])#[a-z_](?:-?[a-z]|[\d_])*/m,lookbehind:!0},interpolation:{pattern:/(^|[^\\])#\{[^}]+\}/m,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^#\{|\}$/,alias:"variable"}}},string:/[\s\S]+/}},string:[{pattern:/('''|')(?:\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},{pattern:/<\[[\s\S]*?\]>/,greedy:!0},/\\[^\s,;\])}]+/],regex:[{pattern:/\/\/(\[.+?]|\\.|(?!\/\/)[^\\])+\/\/[gimyu]{0,5}/,greedy:!0,inside:{comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0}}},{pattern:/\/(\[.+?]|\\.|[^/\\\r\n])+\/[gimyu]{0,5}/,greedy:!0}],keyword:{pattern:/(^|(?!-).)\b(?:break|case|catch|class|const|continue|default|do|else|extends|fallthrough|finally|for(?: ever)?|function|if|implements|it|let|loop|new|null|otherwise|own|return|super|switch|that|then|this|throw|try|unless|until|var|void|when|while|yield)(?!-)\b/m,lookbehind:!0},"keyword-operator":{pattern:/(^|[^-])\b(?:(?:delete|require|typeof)!|(?:and|by|delete|export|from|import(?: all)?|in|instanceof|is(?:nt| not)?|not|of|or|til|to|typeof|with|xor)(?!-)\b)/m,lookbehind:!0,alias:"operator"},boolean:{pattern:/(^|[^-])\b(?:false|no|off|on|true|yes)(?!-)\b/m,lookbehind:!0},argument:{pattern:/(^|(?!\.&\.)[^&])&(?!&)\d*/m,lookbehind:!0,alias:"variable"},number:/\b(?:\d+~[\da-z]+|\d[\d_]*(?:\.\d[\d_]*)?(?:[a-z]\w*)?)/i,identifier:/[a-z_](?:-?[a-z]|[\d_])*/i,operator:[{pattern:/( )\.(?= )/,lookbehind:!0},/\.(?:[=~]|\.\.?)|\.(?:[&|^]|<<|>>>?)\.|:(?:=|:=?)|&&|\|[|>]|<(?:<<?<?|--?!?|~~?!?|[|=?])?|>[>=?]?|-(?:->?|>)?|\+\+?|@@?|%%?|\*\*?|!(?:~?=|--?>|~?~>)?|~(?:~?>|=)?|==?|\^\^?|[\/?]/],punctuation:/[(){}\[\]|.,:;`]/},e.languages.livescript["interpolated-string"].inside.interpolation.inside.rest=e.languages.livescript}e.exports=t,t.displayName="livescript",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_livescript.d21ac3bc.js b/assets/js/react-syntax-highlighter_languages_refractor_livescript.d21ac3bc.js new file mode 100644 index 000000000..8ee85c6c0 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_livescript.d21ac3bc.js @@ -0,0 +1,139 @@ +"use strict"; +exports.id = 4698; +exports.ids = [4698]; +exports.modules = { + +/***/ 41469: +/***/ ((module) => { + + + +module.exports = livescript +livescript.displayName = 'livescript' +livescript.aliases = [] +function livescript(Prism) { + Prism.languages.livescript = { + comment: [ + { + pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, + lookbehind: true + }, + { + pattern: /(^|[^\\])#.*/, + lookbehind: true + } + ], + 'interpolated-string': { + /* Look-behind and look-ahead prevents wrong behavior of the greedy pattern + * forcing it to match """-quoted string when it would otherwise match "-quoted first. */ + pattern: /(^|[^"])("""|")(?:\\[\s\S]|(?!\2)[^\\])*\2(?!")/, + lookbehind: true, + greedy: true, + inside: { + variable: { + pattern: /(^|[^\\])#[a-z_](?:-?[a-z]|[\d_])*/m, + lookbehind: true + }, + interpolation: { + pattern: /(^|[^\\])#\{[^}]+\}/m, + lookbehind: true, + inside: { + 'interpolation-punctuation': { + pattern: /^#\{|\}$/, + alias: 'variable' + } // See rest below + } + }, + string: /[\s\S]+/ + } + }, + string: [ + { + pattern: /('''|')(?:\\[\s\S]|(?!\1)[^\\])*\1/, + greedy: true + }, + { + pattern: /<\[[\s\S]*?\]>/, + greedy: true + }, + /\\[^\s,;\])}]+/ + ], + regex: [ + { + pattern: /\/\/(\[.+?]|\\.|(?!\/\/)[^\\])+\/\/[gimyu]{0,5}/, + greedy: true, + inside: { + comment: { + pattern: /(^|[^\\])#.*/, + lookbehind: true + } + } + }, + { + pattern: /\/(\[.+?]|\\.|[^/\\\r\n])+\/[gimyu]{0,5}/, + greedy: true + } + ], + keyword: { + pattern: /(^|(?!-).)\b(?:break|case|catch|class|const|continue|default|do|else|extends|fallthrough|finally|for(?: ever)?|function|if|implements|it|let|loop|new|null|otherwise|own|return|super|switch|that|then|this|throw|try|unless|until|var|void|when|while|yield)(?!-)\b/m, + lookbehind: true + }, + 'keyword-operator': { + pattern: /(^|[^-])\b(?:(?:delete|require|typeof)!|(?:and|by|delete|export|from|import(?: all)?|in|instanceof|is(?:nt| not)?|not|of|or|til|to|typeof|with|xor)(?!-)\b)/m, + lookbehind: true, + alias: 'operator' + }, + boolean: { + pattern: /(^|[^-])\b(?:false|no|off|on|true|yes)(?!-)\b/m, + lookbehind: true + }, + argument: { + // Don't match .&. nor && + pattern: /(^|(?!\.&\.)[^&])&(?!&)\d*/m, + lookbehind: true, + alias: 'variable' + }, + number: /\b(?:\d+~[\da-z]+|\d[\d_]*(?:\.\d[\d_]*)?(?:[a-z]\w*)?)/i, + identifier: /[a-z_](?:-?[a-z]|[\d_])*/i, + operator: [ + // Spaced . + { + pattern: /( )\.(?= )/, + lookbehind: true + }, // Full list, in order: + // .= .~ .. ... + // .&. .^. .<<. .>>. .>>>. + // := :: ::= + // && + // || |> + // < << <<< <<<< + // <- <-- <-! <--! + // <~ <~~ <~! <~~! + // <| <= <? + // > >> >= >? + // - -- -> --> + // + ++ + // @ @@ + // % %% + // * ** + // ! != !~= + // !~> !~~> + // !-> !--> + // ~ ~> ~~> ~= + // = == + // ^ ^^ + // / ? + /\.(?:[=~]|\.\.?)|\.(?:[&|^]|<<|>>>?)\.|:(?:=|:=?)|&&|\|[|>]|<(?:<<?<?|--?!?|~~?!?|[|=?])?|>[>=?]?|-(?:->?|>)?|\+\+?|@@?|%%?|\*\*?|!(?:~?=|--?>|~?~>)?|~(?:~?>|=)?|==?|\^\^?|[\/?]/ + ], + punctuation: /[(){}\[\]|.,:;`]/ + } + Prism.languages.livescript['interpolated-string'].inside[ + 'interpolation' + ].inside.rest = Prism.languages.livescript +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_lolcode.499fe289.js b/assets/js/react-syntax-highlighter_languages_refractor_lolcode.499fe289.js new file mode 100644 index 000000000..d56b41fb0 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_lolcode.499fe289.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7719],{8789:I=>{function e(I){I.languages.lolcode={comment:[/\bOBTW\s+[\s\S]*?\s+TLDR\b/,/\bBTW.+/],string:{pattern:/"(?::.|[^"])*"/,inside:{variable:/:\{[^}]+\}/,symbol:[/:\([a-f\d]+\)/i,/:\[[^\]]+\]/,/:[)>o":]/]},greedy:!0},number:/(?:\B-)?(?:\b\d+\.?\d*|\B\.\d+)/,symbol:{pattern:/(^|\s)(?:A )?(?:YARN|NUMBR|NUMBAR|TROOF|BUKKIT|NOOB)(?=\s|,|$)/,lookbehind:!0,inside:{keyword:/A(?=\s)/}},label:{pattern:/((?:^|\s)(?:IM IN YR|IM OUTTA YR) )[a-zA-Z]\w*/,lookbehind:!0,alias:"string"},function:{pattern:/((?:^|\s)(?:I IZ|HOW IZ I|IZ) )[a-zA-Z]\w*/,lookbehind:!0},keyword:[{pattern:/(^|\s)(?:O HAI IM|KTHX|HAI|KTHXBYE|I HAS A|ITZ(?: A)?|R|AN|MKAY|SMOOSH|MAEK|IS NOW(?: A)?|VISIBLE|GIMMEH|O RLY\?|YA RLY|NO WAI|OIC|MEBBE|WTF\?|OMG|OMGWTF|GTFO|IM IN YR|IM OUTTA YR|FOUND YR|YR|TIL|WILE|UPPIN|NERFIN|I IZ|HOW IZ I|IF U SAY SO|SRS|HAS A|LIEK(?: A)?|IZ)(?=\s|,|$)/,lookbehind:!0},/'Z(?=\s|,|$)/],boolean:{pattern:/(^|\s)(?:WIN|FAIL)(?=\s|,|$)/,lookbehind:!0},variable:{pattern:/(^|\s)IT(?=\s|,|$)/,lookbehind:!0},operator:{pattern:/(^|\s)(?:NOT|BOTH SAEM|DIFFRINT|(?:SUM|DIFF|PRODUKT|QUOSHUNT|MOD|BIGGR|SMALLR|BOTH|EITHER|WON|ALL|ANY) OF)(?=\s|,|$)/,lookbehind:!0},punctuation:/\.{3}|\u2026|,|!/}}I.exports=e,e.displayName="lolcode",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_lolcode.ecb926a9.js b/assets/js/react-syntax-highlighter_languages_refractor_lolcode.ecb926a9.js new file mode 100644 index 000000000..feceaed3a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_lolcode.ecb926a9.js @@ -0,0 +1,69 @@ +"use strict"; +exports.id = 7719; +exports.ids = [7719]; +exports.modules = { + +/***/ 8789: +/***/ ((module) => { + + + +module.exports = lolcode +lolcode.displayName = 'lolcode' +lolcode.aliases = [] +function lolcode(Prism) { + Prism.languages.lolcode = { + comment: [/\bOBTW\s+[\s\S]*?\s+TLDR\b/, /\bBTW.+/], + string: { + pattern: /"(?::.|[^"])*"/, + inside: { + variable: /:\{[^}]+\}/, + symbol: [/:\([a-f\d]+\)/i, /:\[[^\]]+\]/, /:[)>o":]/] + }, + greedy: true + }, + number: /(?:\B-)?(?:\b\d+\.?\d*|\B\.\d+)/, + symbol: { + pattern: /(^|\s)(?:A )?(?:YARN|NUMBR|NUMBAR|TROOF|BUKKIT|NOOB)(?=\s|,|$)/, + lookbehind: true, + inside: { + keyword: /A(?=\s)/ + } + }, + label: { + pattern: /((?:^|\s)(?:IM IN YR|IM OUTTA YR) )[a-zA-Z]\w*/, + lookbehind: true, + alias: 'string' + }, + function: { + pattern: /((?:^|\s)(?:I IZ|HOW IZ I|IZ) )[a-zA-Z]\w*/, + lookbehind: true + }, + keyword: [ + { + pattern: /(^|\s)(?:O HAI IM|KTHX|HAI|KTHXBYE|I HAS A|ITZ(?: A)?|R|AN|MKAY|SMOOSH|MAEK|IS NOW(?: A)?|VISIBLE|GIMMEH|O RLY\?|YA RLY|NO WAI|OIC|MEBBE|WTF\?|OMG|OMGWTF|GTFO|IM IN YR|IM OUTTA YR|FOUND YR|YR|TIL|WILE|UPPIN|NERFIN|I IZ|HOW IZ I|IF U SAY SO|SRS|HAS A|LIEK(?: A)?|IZ)(?=\s|,|$)/, + lookbehind: true + }, + /'Z(?=\s|,|$)/ + ], + boolean: { + pattern: /(^|\s)(?:WIN|FAIL)(?=\s|,|$)/, + lookbehind: true + }, + variable: { + pattern: /(^|\s)IT(?=\s|,|$)/, + lookbehind: true + }, + operator: { + pattern: /(^|\s)(?:NOT|BOTH SAEM|DIFFRINT|(?:SUM|DIFF|PRODUKT|QUOSHUNT|MOD|BIGGR|SMALLR|BOTH|EITHER|WON|ALL|ANY) OF)(?=\s|,|$)/, + lookbehind: true + }, + punctuation: /\.{3}|…|,|!/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_lua.95a20b40.js b/assets/js/react-syntax-highlighter_languages_refractor_lua.95a20b40.js new file mode 100644 index 000000000..79cd1785f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_lua.95a20b40.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8119],{9803:e=>{function n(e){e.languages.lua={comment:/^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[\s\S]))*\1|\[(=*)\[[\s\S]*?\]\2\]/,greedy:!0},number:/\b0x[a-f\d]+\.?[a-f\d]*(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|\.?\d*(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i,keyword:/\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,function:/(?!\d)\w+(?=\s*(?:[({]))/,operator:[/[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/,{pattern:/(^|[^.])\.\.(?!\.)/,lookbehind:!0}],punctuation:/[\[\](){},;]|\.+|:+/}}e.exports=n,n.displayName="lua",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_lua.aa1b687b.js b/assets/js/react-syntax-highlighter_languages_refractor_lua.aa1b687b.js new file mode 100644 index 000000000..9a76e92c3 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_lua.aa1b687b.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 8119; +exports.ids = [8119]; +exports.modules = { + +/***/ 59803: +/***/ ((module) => { + + + +module.exports = lua +lua.displayName = 'lua' +lua.aliases = [] +function lua(Prism) { + Prism.languages.lua = { + comment: /^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m, + // \z may be used to skip the following space + string: { + pattern: /(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[\s\S]))*\1|\[(=*)\[[\s\S]*?\]\2\]/, + greedy: true + }, + number: /\b0x[a-f\d]+\.?[a-f\d]*(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|\.?\d*(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i, + keyword: /\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/, + function: /(?!\d)\w+(?=\s*(?:[({]))/, + operator: [ + /[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/, + { + // Match ".." but don't break "..." + pattern: /(^|[^.])\.\.(?!\.)/, + lookbehind: true + } + ], + punctuation: /[\[\](){},;]|\.+|:+/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_makefile.5ae3bd6e.js b/assets/js/react-syntax-highlighter_languages_refractor_makefile.5ae3bd6e.js new file mode 100644 index 000000000..4d12beb59 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_makefile.5ae3bd6e.js @@ -0,0 +1,51 @@ +"use strict"; +exports.id = 7576; +exports.ids = [7576]; +exports.modules = { + +/***/ 33055: +/***/ ((module) => { + + + +module.exports = makefile +makefile.displayName = 'makefile' +makefile.aliases = [] +function makefile(Prism) { + Prism.languages.makefile = { + comment: { + pattern: /(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/, + lookbehind: true + }, + string: { + pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + // Built-in target names + builtin: /\.[A-Z][^:#=\s]+(?=\s*:(?!=))/, + // Targets + symbol: { + pattern: /^[^:=\r\n]+(?=\s*:(?!=))/m, + inside: { + variable: /\$+(?:[^(){}:#=\s]+|(?=[({]))/ + } + }, + variable: /\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/, + keyword: [ + // Directives + /-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/, // Functions + { + pattern: /(\()(?:addsuffix|abspath|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(?:s|list)?)(?=[ \t])/, + lookbehind: true + } + ], + operator: /(?:::|[?:+!])?=|[|@]/, + punctuation: /[:;(){}]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_makefile.5c3e216b.js b/assets/js/react-syntax-highlighter_languages_refractor_makefile.5c3e216b.js new file mode 100644 index 000000000..a14726615 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_makefile.5c3e216b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7576],{3055:e=>{function i(e){e.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:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,symbol:{pattern:/^[^:=\r\n]+(?=\s*:(?!=))/m,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/,{pattern:/(\()(?:addsuffix|abspath|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(?:s|list)?)(?=[ \t])/,lookbehind:!0}],operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/}}e.exports=i,i.displayName="makefile",i.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_markdown.3e575f41.js b/assets/js/react-syntax-highlighter_languages_refractor_markdown.3e575f41.js new file mode 100644 index 000000000..e879a424c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_markdown.3e575f41.js @@ -0,0 +1,370 @@ +"use strict"; +exports.id = 9835; +exports.ids = [9835]; +exports.modules = { + +/***/ 90542: +/***/ ((module) => { + + + +module.exports = markdown +markdown.displayName = 'markdown' +markdown.aliases = ['md'] +function markdown(Prism) { + ;(function(Prism) { + // Allow only one line break + var inner = /(?:\\.|[^\\\n\r]|(?:\r?\n|\r)(?!\r?\n|\r))/.source + /** + * This function is intended for the creation of the bold or italic pattern. + * + * This also adds a lookbehind group to the given pattern to ensure that the pattern is not backslash-escaped. + * + * _Note:_ Keep in mind that this adds a capturing group. + * + * @param {string} pattern + * @param {boolean} starAlternative Whether to also add an alternative where all `_`s are replaced with `*`s. + * @returns {RegExp} + */ + function createInline(pattern, starAlternative) { + pattern = pattern.replace(/<inner>/g, inner) + if (starAlternative) { + pattern = pattern + '|' + pattern.replace(/_/g, '\\*') + } + return RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + '(?:' + pattern + ')') + } + var tableCell = /(?:\\.|``.+?``|`[^`\r\n]+`|[^\\|\r\n`])+/.source + var tableRow = /\|?__(?:\|__)+\|?(?:(?:\r?\n|\r)|$)/.source.replace( + /__/g, + tableCell + ) + var tableLine = /\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\r?\n|\r)/ + .source + Prism.languages.markdown = Prism.languages.extend('markup', {}) + Prism.languages.insertBefore('markdown', 'prolog', { + blockquote: { + // > ... + pattern: /^>(?:[\t ]*>)*/m, + alias: 'punctuation' + }, + table: { + pattern: RegExp( + '^' + tableRow + tableLine + '(?:' + tableRow + ')*', + 'm' + ), + inside: { + 'table-data-rows': { + pattern: RegExp( + '^(' + tableRow + tableLine + ')(?:' + tableRow + ')*$' + ), + lookbehind: true, + inside: { + 'table-data': { + pattern: RegExp(tableCell), + inside: Prism.languages.markdown + }, + punctuation: /\|/ + } + }, + 'table-line': { + pattern: RegExp('^(' + tableRow + ')' + tableLine + '$'), + lookbehind: true, + inside: { + punctuation: /\||:?-{3,}:?/ + } + }, + 'table-header-row': { + pattern: RegExp('^' + tableRow + '$'), + inside: { + 'table-header': { + pattern: RegExp(tableCell), + alias: 'important', + inside: Prism.languages.markdown + }, + punctuation: /\|/ + } + } + } + }, + code: [ + { + // Prefixed by 4 spaces or 1 tab and preceded by an empty line + pattern: /(^[ \t]*(?:\r?\n|\r))(?: {4}|\t).+(?:(?:\r?\n|\r)(?: {4}|\t).+)*/m, + lookbehind: true, + alias: 'keyword' + }, + { + // `code` + // ``code`` + pattern: /``.+?``|`[^`\r\n]+`/, + alias: 'keyword' + }, + { + // ```optional language + // code block + // ``` + pattern: /^```[\s\S]*?^```$/m, + greedy: true, + inside: { + 'code-block': { + pattern: /^(```.*(?:\r?\n|\r))[\s\S]+?(?=(?:\r?\n|\r)^```$)/m, + lookbehind: true + }, + 'code-language': { + pattern: /^(```).+/, + lookbehind: true + }, + punctuation: /```/ + } + } + ], + title: [ + { + // title 1 + // ======= + // title 2 + // ------- + pattern: /\S.*(?:\r?\n|\r)(?:==+|--+)(?=[ \t]*$)/m, + alias: 'important', + inside: { + punctuation: /==+$|--+$/ + } + }, + { + // # title 1 + // ###### title 6 + pattern: /(^\s*)#+.+/m, + lookbehind: true, + alias: 'important', + inside: { + punctuation: /^#+|#+$/ + } + } + ], + hr: { + // *** + // --- + // * * * + // ----------- + pattern: /(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m, + lookbehind: true, + alias: 'punctuation' + }, + list: { + // * item + // + item + // - item + // 1. item + pattern: /(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m, + lookbehind: true, + alias: 'punctuation' + }, + 'url-reference': { + // [id]: http://example.com "Optional title" + // [id]: http://example.com 'Optional title' + // [id]: http://example.com (Optional title) + // [id]: <http://example.com> "Optional title" + pattern: /!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/, + inside: { + variable: { + pattern: /^(!?\[)[^\]]+/, + lookbehind: true + }, + string: /(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/, + punctuation: /^[\[\]!:]|[<>]/ + }, + alias: 'url' + }, + bold: { + // **strong** + // __strong__ + // allow one nested instance of italic text using the same delimiter + pattern: createInline( + /__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__/.source, + true + ), + lookbehind: true, + greedy: true, + inside: { + content: { + pattern: /(^..)[\s\S]+(?=..$)/, + lookbehind: true, + inside: {} // see below + }, + punctuation: /\*\*|__/ + } + }, + italic: { + // *em* + // _em_ + // allow one nested instance of bold text using the same delimiter + pattern: createInline( + /_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_/.source, + true + ), + lookbehind: true, + greedy: true, + inside: { + content: { + pattern: /(^.)[\s\S]+(?=.$)/, + lookbehind: true, + inside: {} // see below + }, + punctuation: /[*_]/ + } + }, + strike: { + // ~~strike through~~ + // ~strike~ + pattern: createInline(/(~~?)(?:(?!~)<inner>)+?\2/.source, false), + lookbehind: true, + greedy: true, + inside: { + content: { + pattern: /(^~~?)[\s\S]+(?=\1$)/, + lookbehind: true, + inside: {} // see below + }, + punctuation: /~~?/ + } + }, + url: { + // [example](http://example.com "Optional title") + // [example][id] + // [example] [id] + pattern: createInline( + /!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[(?:(?!\])<inner>)+\])/ + .source, + false + ), + lookbehind: true, + greedy: true, + inside: { + variable: { + pattern: /(\[)[^\]]+(?=\]$)/, + lookbehind: true + }, + content: { + pattern: /(^!?\[)[^\]]+(?=\])/, + lookbehind: true, + inside: {} // see below + }, + string: { + pattern: /"(?:\\.|[^"\\])*"(?=\)$)/ + } + } + } + }) + ;['url', 'bold', 'italic', 'strike'].forEach(function(token) { + ;['url', 'bold', 'italic', 'strike'].forEach(function(inside) { + if (token !== inside) { + Prism.languages.markdown[token].inside.content.inside[inside] = + Prism.languages.markdown[inside] + } + }) + }) + Prism.hooks.add('after-tokenize', function(env) { + if (env.language !== 'markdown' && env.language !== 'md') { + return + } + function walkTokens(tokens) { + if (!tokens || typeof tokens === 'string') { + return + } + for (var i = 0, l = tokens.length; i < l; i++) { + var token = tokens[i] + if (token.type !== 'code') { + walkTokens(token.content) + continue + } + /* + * Add the correct `language-xxxx` class to this code block. Keep in mind that the `code-language` token + * is optional. But the grammar is defined so that there is only one case we have to handle: + * + * token.content = [ + * <span class="punctuation">```</span>, + * <span class="code-language">xxxx</span>, + * '\n', // exactly one new lines (\r or \n or \r\n) + * <span class="code-block">...</span>, + * '\n', // exactly one new lines again + * <span class="punctuation">```</span> + * ]; + */ + var codeLang = token.content[1] + var codeBlock = token.content[3] + if ( + codeLang && + codeBlock && + codeLang.type === 'code-language' && + codeBlock.type === 'code-block' && + typeof codeLang.content === 'string' + ) { + // this might be a language that Prism does not support + var alias = + 'language-' + + codeLang.content + .trim() + .split(/\s+/)[0] + .toLowerCase() // add alias + if (!codeBlock.alias) { + codeBlock.alias = [alias] + } else if (typeof codeBlock.alias === 'string') { + codeBlock.alias = [codeBlock.alias, alias] + } else { + codeBlock.alias.push(alias) + } + } + } + } + walkTokens(env.tokens) + }) + Prism.hooks.add('wrap', function(env) { + if (env.type !== 'code-block') { + return + } + var codeLang = '' + for (var i = 0, l = env.classes.length; i < l; i++) { + var cls = env.classes[i] + var match = /language-(.+)/.exec(cls) + if (match) { + codeLang = match[1] + break + } + } + var grammar = Prism.languages[codeLang] + if (!grammar) { + if (codeLang && codeLang !== 'none' && Prism.plugins.autoloader) { + var id = + 'md-' + + new Date().valueOf() + + '-' + + Math.floor(Math.random() * 1e16) + env.attributes['id'] = id + Prism.plugins.autoloader.loadLanguages(codeLang, function() { + var ele = document.getElementById(id) + if (ele) { + ele.innerHTML = Prism.highlight( + ele.textContent, + Prism.languages[codeLang], + codeLang + ) + } + }) + } + } else { + // reverse Prism.util.encode + var code = env.content.value + .replace(/</g, '<') + .replace(/&/g, '&') + env.content = Prism.highlight(code, grammar, codeLang) + } + }) + Prism.languages.md = Prism.languages.markdown + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_markdown.b0aa4135.js b/assets/js/react-syntax-highlighter_languages_refractor_markdown.b0aa4135.js new file mode 100644 index 000000000..8d5fc3341 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_markdown.b0aa4135.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9835],{542:e=>{function n(e){!function(e){var n=/(?:\\.|[^\\\n\r]|(?:\r?\n|\r)(?!\r?\n|\r))/.source;function t(e,t){return e=e.replace(/<inner>/g,n),t&&(e=e+"|"+e.replace(/_/g,"\\*")),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var a=/(?:\\.|``.+?``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,i=/\|?__(?:\|__)+\|?(?:(?:\r?\n|\r)|$)/.source.replace(/__/g,a),r=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\r?\n|\r)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+i+r+"(?:"+i+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+i+r+")(?:"+i+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(a),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+i+")"+r+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+i+"$"),inside:{"table-header":{pattern:RegExp(a),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/(^[ \t]*(?:\r?\n|\r))(?: {4}|\t).+(?:(?:\r?\n|\r)(?: {4}|\t).+)*/m,lookbehind:!0,alias:"keyword"},{pattern:/``.+?``|`[^`\r\n]+`/,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\r?\n|\r))[\s\S]+?(?=(?:\r?\n|\r)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\r?\n|\r)(?:==+|--+)(?=[ \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:t(/__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__/.source,!0),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:t(/_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_/.source,!0),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:t(/(~~?)(?:(?!~)<inner>)+?\2/.source,!1),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},url:{pattern:t(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[(?:(?!\])<inner>)+\])/.source,!1),lookbehind:!0,greedy:!0,inside:{variable:{pattern:/(\[)[^\]]+(?=\]$)/,lookbehind:!0},content:{pattern:/(^!?\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},string:{pattern:/"(?:\\.|[^"\\])*"(?=\)$)/}}}}),["url","bold","italic","strike"].forEach((function(n){["url","bold","italic","strike"].forEach((function(t){n!==t&&(e.languages.markdown[n].inside.content.inside[t]=e.languages.markdown[t])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(n){if(n&&"string"!=typeof n)for(var t=0,a=n.length;t<a;t++){var i=n[t];if("code"===i.type){var r=i.content[1],o=i.content[3];if(r&&o&&"code-language"===r.type&&"code-block"===o.type&&"string"==typeof r.content){var s="language-"+r.content.trim().split(/\s+/)[0].toLowerCase();o.alias?"string"==typeof o.alias?o.alias=[o.alias,s]:o.alias.push(s):o.alias=[s]}}else e(i.content)}}(e.tokens)})),e.hooks.add("wrap",(function(n){if("code-block"===n.type){for(var t="",a=0,i=n.classes.length;a<i;a++){var r=n.classes[a],o=/language-(.+)/.exec(r);if(o){t=o[1];break}}var s=e.languages[t];if(s){var l=n.content.value.replace(/</g,"<").replace(/&/g,"&");n.content=e.highlight(l,s,t)}else if(t&&"none"!==t&&e.plugins.autoloader){var d="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random());n.attributes.id=d,e.plugins.autoloader.loadLanguages(t,(function(){var n=document.getElementById(d);n&&(n.innerHTML=e.highlight(n.textContent,e.languages[t],t))}))}}})),e.languages.md=e.languages.markdown}(e)}e.exports=n,n.displayName="markdown",n.aliases=["md"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_markup.8765d09b.js b/assets/js/react-syntax-highlighter_languages_refractor_markup.8765d09b.js new file mode 100644 index 000000000..fc990c3f4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_markup.8765d09b.js @@ -0,0 +1,117 @@ +"use strict"; +exports.id = 2496; +exports.ids = [2496]; +exports.modules = { + +/***/ 2717: +/***/ ((module) => { + + + +module.exports = markup +markup.displayName = 'markup' +markup.aliases = ['xml', 'html', 'mathml', 'svg'] +function markup(Prism) { + Prism.languages.markup = { + comment: /<!--[\s\S]*?-->/, + prolog: /<\?[\s\S]+?\?>/, + doctype: /<!DOCTYPE[\s\S]+?>/i, + cdata: /<!\[CDATA\[[\s\S]*?]]>/i, + tag: { + pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i, + greedy: true, + inside: { + tag: { + pattern: /^<\/?[^\s>\/]+/i, + inside: { + punctuation: /^<\/?/, + namespace: /^[^\s>\/:]+:/ + } + }, + 'attr-value': { + pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i, + inside: { + punctuation: [ + /^=/, + { + pattern: /^(\s*)["']|["']$/, + lookbehind: true + } + ] + } + }, + punctuation: /\/?>/, + 'attr-name': { + pattern: /[^\s>\/]+/, + inside: { + namespace: /^[^\s>\/:]+:/ + } + } + } + }, + entity: /&#?[\da-z]{1,8};/i + } + Prism.languages.markup['tag'].inside['attr-value'].inside['entity'] = + Prism.languages.markup['entity'] // Plugin to make entity title show the real entity, idea by Roman Komarov + Prism.hooks.add('wrap', function(env) { + if (env.type === 'entity') { + env.attributes['title'] = env.content.value.replace(/&/, '&') + } + }) + Object.defineProperty(Prism.languages.markup.tag, 'addInlined', { + /** + * Adds an inlined language to markup. + * + * An example of an inlined language is CSS with `<style>` tags. + * + * @param {string} tagName The name of the tag that contains the inlined language. This name will be treated as + * case insensitive. + * @param {string} lang The language key. + * @example + * addInlined('style', 'css'); + */ + value: function addInlined(tagName, lang) { + var includedCdataInside = {} + includedCdataInside['language-' + lang] = { + pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i, + lookbehind: true, + inside: Prism.languages[lang] + } + includedCdataInside['cdata'] = /^<!\[CDATA\[|\]\]>$/i + var inside = { + 'included-cdata': { + pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i, + inside: includedCdataInside + } + } + inside['language-' + lang] = { + pattern: /[\s\S]+/, + inside: Prism.languages[lang] + } + var def = {} + def[tagName] = { + pattern: RegExp( + /(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace( + /__/g, + tagName + ), + 'i' + ), + lookbehind: true, + greedy: true, + inside: inside + } + Prism.languages.insertBefore('markup', 'cdata', def) + } + }) + Prism.languages.xml = Prism.languages.extend('markup', {}) + Prism.languages.html = Prism.languages.markup + Prism.languages.mathml = Prism.languages.markup + Prism.languages.svg = Prism.languages.markup +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_markup.b37432d1.js b/assets/js/react-syntax-highlighter_languages_refractor_markup.b37432d1.js new file mode 100644 index 000000000..5e7fef614 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_markup.b37432d1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2496],{2717:a=>{function e(a){a.languages.markup={comment:/<!--[\s\S]*?-->/,prolog:/<\?[\s\S]+?\?>/,doctype:/<!DOCTYPE[\s\S]+?>/i,cdata:/<!\[CDATA\[[\s\S]*?]]>/i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.hooks.add("wrap",(function(a){"entity"===a.type&&(a.attributes.title=a.content.value.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,s){var t={};t["language-"+s]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:a.languages[s]},t.cdata=/^<!\[CDATA\[|\]\]>$/i;var n={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:t}};n["language-"+s]={pattern:/[\s\S]+/,inside:a.languages[s]};var i={};i[e]={pattern:RegExp(/(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g,e),"i"),lookbehind:!0,greedy:!0,inside:n},a.languages.insertBefore("markup","cdata",i)}}),a.languages.xml=a.languages.extend("markup",{}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup}a.exports=e,e.displayName="markup",e.aliases=["xml","html","mathml","svg"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_markupTemplating.40dc9d85.js b/assets/js/react-syntax-highlighter_languages_refractor_markupTemplating.40dc9d85.js new file mode 100644 index 000000000..97d5b4477 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_markupTemplating.40dc9d85.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3047],{3205:e=>{function n(e){!function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,a,r,o){if(t.language===a){var u=t.tokenStack=[];t.code=t.code.replace(r,(function(e){if("function"==typeof o&&!o(e))return e;for(var r,i=u.length;-1!==t.code.indexOf(r=n(a,i));)++i;return u[i]=e,r})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,a){if(t.language===a&&t.tokenStack){t.grammar=e.languages[a];var r=0,o=Object.keys(t.tokenStack);!function u(i){for(var s=0;s<i.length&&!(r>=o.length);s++){var c=i[s];if("string"==typeof c||c.content&&"string"==typeof c.content){var g=o[r],p=t.tokenStack[g],l="string"==typeof c?c:c.content,f=n(a,g),k=l.indexOf(f);if(k>-1){++r;var h=l.substring(0,k),m=new e.Token(a,e.tokenize(p,t.grammar),"language-"+a,p),d=l.substring(k+f.length),y=[];h&&y.push.apply(y,u([h])),y.push(m),d&&y.push.apply(y,u([d])),"string"==typeof c?i.splice.apply(i,[s,1].concat(y)):c.content=y}}else c.content&&u(c.content)}return i}(t.tokens)}}}})}(e)}e.exports=n,n.displayName="markupTemplating",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_markupTemplating.cc9d00a1.js b/assets/js/react-syntax-highlighter_languages_refractor_markupTemplating.cc9d00a1.js new file mode 100644 index 000000000..ff1bb7135 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_markupTemplating.cc9d00a1.js @@ -0,0 +1,135 @@ +"use strict"; +exports.id = 3047; +exports.ids = [3047]; +exports.modules = { + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_matlab.cbb7c262.js b/assets/js/react-syntax-highlighter_languages_refractor_matlab.cbb7c262.js new file mode 100644 index 000000000..50d1c87ea --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_matlab.cbb7c262.js @@ -0,0 +1,34 @@ +"use strict"; +exports.id = 8404; +exports.ids = [8404]; +exports.modules = { + +/***/ 27992: +/***/ ((module) => { + + + +module.exports = matlab +matlab.displayName = 'matlab' +matlab.aliases = [] +function matlab(Prism) { + Prism.languages.matlab = { + comment: [/%\{[\s\S]*?\}%/, /%.+/], + string: { + pattern: /\B'(?:''|[^'\r\n])*'/, + greedy: true + }, + // FIXME We could handle imaginary numbers as a whole + number: /(?:\b\d+\.?\d*|\B\.\d+)(?:[eE][+-]?\d+)?(?:[ij])?|\b[ij]\b/, + keyword: /\b(?:break|case|catch|continue|else|elseif|end|for|function|if|inf|NaN|otherwise|parfor|pause|pi|return|switch|try|while)\b/, + function: /(?!\d)\w+(?=\s*\()/, + operator: /\.?[*^\/\\']|[+\-:@]|[<>=~]=?|&&?|\|\|?/, + punctuation: /\.{3}|[.,;\[\](){}!]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_matlab.fb6b728f.js b/assets/js/react-syntax-highlighter_languages_refractor_matlab.fb6b728f.js new file mode 100644 index 000000000..c904fe99c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_matlab.fb6b728f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8404],{7992:e=>{function a(e){e.languages.matlab={comment:[/%\{[\s\S]*?\}%/,/%.+/],string:{pattern:/\B'(?:''|[^'\r\n])*'/,greedy:!0},number:/(?:\b\d+\.?\d*|\B\.\d+)(?:[eE][+-]?\d+)?(?:[ij])?|\b[ij]\b/,keyword:/\b(?:break|case|catch|continue|else|elseif|end|for|function|if|inf|NaN|otherwise|parfor|pause|pi|return|switch|try|while)\b/,function:/(?!\d)\w+(?=\s*\()/,operator:/\.?[*^\/\\']|[+\-:@]|[<>=~]=?|&&?|\|\|?/,punctuation:/\.{3}|[.,;\[\](){}!]/}}e.exports=a,a.displayName="matlab",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_mel.409eb688.js b/assets/js/react-syntax-highlighter_languages_refractor_mel.409eb688.js new file mode 100644 index 000000000..7b3c7adf4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_mel.409eb688.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[226],{606:e=>{function t(e){e.languages.mel={comment:/\/\/.*/,code:{pattern:/`(?:\\.|[^\\`\r\n])*`/,greedy:!0,alias:"italic",inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"}}},string:{pattern:/"(?:\\.|[^\\"\r\n])*"/,greedy:!0},variable:/\$\w+/,number:/\b0x[\da-fA-F]+\b|\b\d+\.?\d*|\B\.\d+/,flag:{pattern:/-[^\d\W]\w*/,alias:"operator"},keyword:/\b(?:break|case|continue|default|do|else|float|for|global|if|in|int|matrix|proc|return|string|switch|vector|while)\b/,function:/\w+(?=\()|\b(?:about|abs|addAttr|addAttributeEditorNodeHelp|addDynamic|addNewShelfTab|addPP|addPanelCategory|addPrefixToName|advanceToNextDrivenKey|affectedNet|affects|aimConstraint|air|alias|aliasAttr|align|alignCtx|alignCurve|alignSurface|allViewFit|ambientLight|angle|angleBetween|animCone|animCurveEditor|animDisplay|animView|annotate|appendStringArray|applicationName|applyAttrPreset|applyTake|arcLenDimContext|arcLengthDimension|arclen|arrayMapper|art3dPaintCtx|artAttrCtx|artAttrPaintVertexCtx|artAttrSkinPaintCtx|artAttrTool|artBuildPaintMenu|artFluidAttrCtx|artPuttyCtx|artSelectCtx|artSetPaintCtx|artUserPaintCtx|assignCommand|assignInputDevice|assignViewportFactories|attachCurve|attachDeviceAttr|attachSurface|attrColorSliderGrp|attrCompatibility|attrControlGrp|attrEnumOptionMenu|attrEnumOptionMenuGrp|attrFieldGrp|attrFieldSliderGrp|attrNavigationControlGrp|attrPresetEditWin|attributeExists|attributeInfo|attributeMenu|attributeQuery|autoKeyframe|autoPlace|bakeClip|bakeFluidShading|bakePartialHistory|bakeResults|bakeSimulation|basename|basenameEx|batchRender|bessel|bevel|bevelPlus|binMembership|bindSkin|blend2|blendShape|blendShapeEditor|blendShapePanel|blendTwoAttr|blindDataType|boneLattice|boundary|boxDollyCtx|boxZoomCtx|bufferCurve|buildBookmarkMenu|buildKeyframeMenu|button|buttonManip|CBG|cacheFile|cacheFileCombine|cacheFileMerge|cacheFileTrack|camera|cameraView|canCreateManip|canvas|capitalizeString|catch|catchQuiet|ceil|changeSubdivComponentDisplayLevel|changeSubdivRegion|channelBox|character|characterMap|characterOutlineEditor|characterize|chdir|checkBox|checkBoxGrp|checkDefaultRenderGlobals|choice|circle|circularFillet|clamp|clear|clearCache|clip|clipEditor|clipEditorCurrentTimeCtx|clipSchedule|clipSchedulerOutliner|clipTrimBefore|closeCurve|closeSurface|cluster|cmdFileOutput|cmdScrollFieldExecuter|cmdScrollFieldReporter|cmdShell|coarsenSubdivSelectionList|collision|color|colorAtPoint|colorEditor|colorIndex|colorIndexSliderGrp|colorSliderButtonGrp|colorSliderGrp|columnLayout|commandEcho|commandLine|commandPort|compactHairSystem|componentEditor|compositingInterop|computePolysetVolume|condition|cone|confirmDialog|connectAttr|connectControl|connectDynamic|connectJoint|connectionInfo|constrain|constrainValue|constructionHistory|container|containsMultibyte|contextInfo|control|convertFromOldLayers|convertIffToPsd|convertLightmap|convertSolidTx|convertTessellation|convertUnit|copyArray|copyFlexor|copyKey|copySkinWeights|cos|cpButton|cpCache|cpClothSet|cpCollision|cpConstraint|cpConvClothToMesh|cpForces|cpGetSolverAttr|cpPanel|cpProperty|cpRigidCollisionFilter|cpSeam|cpSetEdit|cpSetSolverAttr|cpSolver|cpSolverTypes|cpTool|cpUpdateClothUVs|createDisplayLayer|createDrawCtx|createEditor|createLayeredPsdFile|createMotionField|createNewShelf|createNode|createRenderLayer|createSubdivRegion|cross|crossProduct|ctxAbort|ctxCompletion|ctxEditMode|ctxTraverse|currentCtx|currentTime|currentTimeCtx|currentUnit|curve|curveAddPtCtx|curveCVCtx|curveEPCtx|curveEditorCtx|curveIntersect|curveMoveEPCtx|curveOnSurface|curveSketchCtx|cutKey|cycleCheck|cylinder|dagPose|date|defaultLightListCheckBox|defaultNavigation|defineDataServer|defineVirtualDevice|deformer|deg_to_rad|delete|deleteAttr|deleteShadingGroupsAndMaterials|deleteShelfTab|deleteUI|deleteUnusedBrushes|delrandstr|detachCurve|detachDeviceAttr|detachSurface|deviceEditor|devicePanel|dgInfo|dgdirty|dgeval|dgtimer|dimWhen|directKeyCtx|directionalLight|dirmap|dirname|disable|disconnectAttr|disconnectJoint|diskCache|displacementToPoly|displayAffected|displayColor|displayCull|displayLevelOfDetail|displayPref|displayRGBColor|displaySmoothness|displayStats|displayString|displaySurface|distanceDimContext|distanceDimension|doBlur|dolly|dollyCtx|dopeSheetEditor|dot|dotProduct|doubleProfileBirailSurface|drag|dragAttrContext|draggerContext|dropoffLocator|duplicate|duplicateCurve|duplicateSurface|dynCache|dynControl|dynExport|dynExpression|dynGlobals|dynPaintEditor|dynParticleCtx|dynPref|dynRelEdPanel|dynRelEditor|dynamicLoad|editAttrLimits|editDisplayLayerGlobals|editDisplayLayerMembers|editRenderLayerAdjustment|editRenderLayerGlobals|editRenderLayerMembers|editor|editorTemplate|effector|emit|emitter|enableDevice|encodeString|endString|endsWith|env|equivalent|equivalentTol|erf|error|eval|evalDeferred|evalEcho|event|exactWorldBoundingBox|exclusiveLightCheckBox|exec|executeForEachObject|exists|exp|expression|expressionEditorListen|extendCurve|extendSurface|extrude|fcheck|fclose|feof|fflush|fgetline|fgetword|file|fileBrowserDialog|fileDialog|fileExtension|fileInfo|filetest|filletCurve|filter|filterCurve|filterExpand|filterStudioImport|findAllIntersections|findAnimCurves|findKeyframe|findMenuItem|findRelatedSkinCluster|finder|firstParentOf|fitBspline|flexor|floatEq|floatField|floatFieldGrp|floatScrollBar|floatSlider|floatSlider2|floatSliderButtonGrp|floatSliderGrp|floor|flow|fluidCacheInfo|fluidEmitter|fluidVoxelInfo|flushUndo|fmod|fontDialog|fopen|formLayout|format|fprint|frameLayout|fread|freeFormFillet|frewind|fromNativePath|fwrite|gamma|gauss|geometryConstraint|getApplicationVersionAsFloat|getAttr|getClassification|getDefaultBrush|getFileList|getFluidAttr|getInputDeviceRange|getMayaPanelTypes|getModifiers|getPanel|getParticleAttr|getPluginResource|getenv|getpid|glRender|glRenderEditor|globalStitch|gmatch|goal|gotoBindPose|grabColor|gradientControl|gradientControlNoAttr|graphDollyCtx|graphSelectContext|graphTrackCtx|gravity|grid|gridLayout|group|groupObjectsByName|HfAddAttractorToAS|HfAssignAS|HfBuildEqualMap|HfBuildFurFiles|HfBuildFurImages|HfCancelAFR|HfConnectASToHF|HfCreateAttractor|HfDeleteAS|HfEditAS|HfPerformCreateAS|HfRemoveAttractorFromAS|HfSelectAttached|HfSelectAttractors|HfUnAssignAS|hardenPointCurve|hardware|hardwareRenderPanel|headsUpDisplay|headsUpMessage|help|helpLine|hermite|hide|hilite|hitTest|hotBox|hotkey|hotkeyCheck|hsv_to_rgb|hudButton|hudSlider|hudSliderButton|hwReflectionMap|hwRender|hwRenderLoad|hyperGraph|hyperPanel|hyperShade|hypot|iconTextButton|iconTextCheckBox|iconTextRadioButton|iconTextRadioCollection|iconTextScrollList|iconTextStaticLabel|ikHandle|ikHandleCtx|ikHandleDisplayScale|ikSolver|ikSplineHandleCtx|ikSystem|ikSystemInfo|ikfkDisplayMethod|illustratorCurves|image|imfPlugins|inheritTransform|insertJoint|insertJointCtx|insertKeyCtx|insertKnotCurve|insertKnotSurface|instance|instanceable|instancer|intField|intFieldGrp|intScrollBar|intSlider|intSliderGrp|interToUI|internalVar|intersect|iprEngine|isAnimCurve|isConnected|isDirty|isParentOf|isSameObject|isTrue|isValidObjectName|isValidString|isValidUiName|isolateSelect|itemFilter|itemFilterAttr|itemFilterRender|itemFilterType|joint|jointCluster|jointCtx|jointDisplayScale|jointLattice|keyTangent|keyframe|keyframeOutliner|keyframeRegionCurrentTimeCtx|keyframeRegionDirectKeyCtx|keyframeRegionDollyCtx|keyframeRegionInsertKeyCtx|keyframeRegionMoveKeyCtx|keyframeRegionScaleKeyCtx|keyframeRegionSelectKeyCtx|keyframeRegionSetKeyCtx|keyframeRegionTrackCtx|keyframeStats|lassoContext|lattice|latticeDeformKeyCtx|launch|launchImageEditor|layerButton|layeredShaderPort|layeredTexturePort|layout|layoutDialog|lightList|lightListEditor|lightListPanel|lightlink|lineIntersection|linearPrecision|linstep|listAnimatable|listAttr|listCameras|listConnections|listDeviceAttachments|listHistory|listInputDeviceAxes|listInputDeviceButtons|listInputDevices|listMenuAnnotation|listNodeTypes|listPanelCategories|listRelatives|listSets|listTransforms|listUnselected|listerEditor|loadFluid|loadNewShelf|loadPlugin|loadPluginLanguageResources|loadPrefObjects|localizedPanelLabel|lockNode|loft|log|longNameOf|lookThru|ls|lsThroughFilter|lsType|lsUI|Mayatomr|mag|makeIdentity|makeLive|makePaintable|makeRoll|makeSingleSurface|makeTubeOn|makebot|manipMoveContext|manipMoveLimitsCtx|manipOptions|manipRotateContext|manipRotateLimitsCtx|manipScaleContext|manipScaleLimitsCtx|marker|match|max|memory|menu|menuBarLayout|menuEditor|menuItem|menuItemToShelf|menuSet|menuSetPref|messageLine|min|minimizeApp|mirrorJoint|modelCurrentTimeCtx|modelEditor|modelPanel|mouse|movIn|movOut|move|moveIKtoFK|moveKeyCtx|moveVertexAlongDirection|multiProfileBirailSurface|mute|nParticle|nameCommand|nameField|namespace|namespaceInfo|newPanelItems|newton|nodeCast|nodeIconButton|nodeOutliner|nodePreset|nodeType|noise|nonLinear|normalConstraint|normalize|nurbsBoolean|nurbsCopyUVSet|nurbsCube|nurbsEditUV|nurbsPlane|nurbsSelect|nurbsSquare|nurbsToPoly|nurbsToPolygonsPref|nurbsToSubdiv|nurbsToSubdivPref|nurbsUVSet|nurbsViewDirectionVector|objExists|objectCenter|objectLayer|objectType|objectTypeUI|obsoleteProc|oceanNurbsPreviewPlane|offsetCurve|offsetCurveOnSurface|offsetSurface|openGLExtension|openMayaPref|optionMenu|optionMenuGrp|optionVar|orbit|orbitCtx|orientConstraint|outlinerEditor|outlinerPanel|overrideModifier|paintEffectsDisplay|pairBlend|palettePort|paneLayout|panel|panelConfiguration|panelHistory|paramDimContext|paramDimension|paramLocator|parent|parentConstraint|particle|particleExists|particleInstancer|particleRenderInfo|partition|pasteKey|pathAnimation|pause|pclose|percent|performanceOptions|pfxstrokes|pickWalk|picture|pixelMove|planarSrf|plane|play|playbackOptions|playblast|plugAttr|plugNode|pluginInfo|pluginResourceUtil|pointConstraint|pointCurveConstraint|pointLight|pointMatrixMult|pointOnCurve|pointOnSurface|pointPosition|poleVectorConstraint|polyAppend|polyAppendFacetCtx|polyAppendVertex|polyAutoProjection|polyAverageNormal|polyAverageVertex|polyBevel|polyBlendColor|polyBlindData|polyBoolOp|polyBridgeEdge|polyCacheMonitor|polyCheck|polyChipOff|polyClipboard|polyCloseBorder|polyCollapseEdge|polyCollapseFacet|polyColorBlindData|polyColorDel|polyColorPerVertex|polyColorSet|polyCompare|polyCone|polyCopyUV|polyCrease|polyCreaseCtx|polyCreateFacet|polyCreateFacetCtx|polyCube|polyCut|polyCutCtx|polyCylinder|polyCylindricalProjection|polyDelEdge|polyDelFacet|polyDelVertex|polyDuplicateAndConnect|polyDuplicateEdge|polyEditUV|polyEditUVShell|polyEvaluate|polyExtrudeEdge|polyExtrudeFacet|polyExtrudeVertex|polyFlipEdge|polyFlipUV|polyForceUV|polyGeoSampler|polyHelix|polyInfo|polyInstallAction|polyLayoutUV|polyListComponentConversion|polyMapCut|polyMapDel|polyMapSew|polyMapSewMove|polyMergeEdge|polyMergeEdgeCtx|polyMergeFacet|polyMergeFacetCtx|polyMergeUV|polyMergeVertex|polyMirrorFace|polyMoveEdge|polyMoveFacet|polyMoveFacetUV|polyMoveUV|polyMoveVertex|polyNormal|polyNormalPerVertex|polyNormalizeUV|polyOptUvs|polyOptions|polyOutput|polyPipe|polyPlanarProjection|polyPlane|polyPlatonicSolid|polyPoke|polyPrimitive|polyPrism|polyProjection|polyPyramid|polyQuad|polyQueryBlindData|polyReduce|polySelect|polySelectConstraint|polySelectConstraintMonitor|polySelectCtx|polySelectEditCtx|polySeparate|polySetToFaceNormal|polySewEdge|polyShortestPathCtx|polySmooth|polySoftEdge|polySphere|polySphericalProjection|polySplit|polySplitCtx|polySplitEdge|polySplitRing|polySplitVertex|polyStraightenUVBorder|polySubdivideEdge|polySubdivideFacet|polyToSubdiv|polyTorus|polyTransfer|polyTriangulate|polyUVSet|polyUnite|polyWedgeFace|popen|popupMenu|pose|pow|preloadRefEd|print|progressBar|progressWindow|projFileViewer|projectCurve|projectTangent|projectionContext|projectionManip|promptDialog|propModCtx|propMove|psdChannelOutliner|psdEditTextureFile|psdExport|psdTextureFile|putenv|pwd|python|querySubdiv|quit|rad_to_deg|radial|radioButton|radioButtonGrp|radioCollection|radioMenuItemCollection|rampColorPort|rand|randomizeFollicles|randstate|rangeControl|readTake|rebuildCurve|rebuildSurface|recordAttr|recordDevice|redo|reference|referenceEdit|referenceQuery|refineSubdivSelectionList|refresh|refreshAE|registerPluginResource|rehash|reloadImage|removeJoint|removeMultiInstance|removePanelCategory|rename|renameAttr|renameSelectionList|renameUI|render|renderGlobalsNode|renderInfo|renderLayerButton|renderLayerParent|renderLayerPostProcess|renderLayerUnparent|renderManip|renderPartition|renderQualityNode|renderSettings|renderThumbnailUpdate|renderWindowEditor|renderWindowSelectContext|renderer|reorder|reorderDeformers|requires|reroot|resampleFluid|resetAE|resetPfxToPolyCamera|resetTool|resolutionNode|retarget|reverseCurve|reverseSurface|revolve|rgb_to_hsv|rigidBody|rigidSolver|roll|rollCtx|rootOf|rot|rotate|rotationInterpolation|roundConstantRadius|rowColumnLayout|rowLayout|runTimeCommand|runup|sampleImage|saveAllShelves|saveAttrPreset|saveFluid|saveImage|saveInitialState|saveMenu|savePrefObjects|savePrefs|saveShelf|saveToolSettings|scale|scaleBrushBrightness|scaleComponents|scaleConstraint|scaleKey|scaleKeyCtx|sceneEditor|sceneUIReplacement|scmh|scriptCtx|scriptEditorInfo|scriptJob|scriptNode|scriptTable|scriptToShelf|scriptedPanel|scriptedPanelType|scrollField|scrollLayout|sculpt|searchPathArray|seed|selLoadSettings|select|selectContext|selectCurveCV|selectKey|selectKeyCtx|selectKeyframeRegionCtx|selectMode|selectPref|selectPriority|selectType|selectedNodes|selectionConnection|separator|setAttr|setAttrEnumResource|setAttrMapping|setAttrNiceNameResource|setConstraintRestPosition|setDefaultShadingGroup|setDrivenKeyframe|setDynamic|setEditCtx|setEditor|setFluidAttr|setFocus|setInfinity|setInputDeviceMapping|setKeyCtx|setKeyPath|setKeyframe|setKeyframeBlendshapeTargetWts|setMenuMode|setNodeNiceNameResource|setNodeTypeFlag|setParent|setParticleAttr|setPfxToPolyCamera|setPluginResource|setProject|setStampDensity|setStartupMessage|setState|setToolTo|setUITemplate|setXformManip|sets|shadingConnection|shadingGeometryRelCtx|shadingLightRelCtx|shadingNetworkCompare|shadingNode|shapeCompare|shelfButton|shelfLayout|shelfTabLayout|shellField|shortNameOf|showHelp|showHidden|showManipCtx|showSelectionInTitle|showShadingGroupAttrEditor|showWindow|sign|simplify|sin|singleProfileBirailSurface|size|sizeBytes|skinCluster|skinPercent|smoothCurve|smoothTangentSurface|smoothstep|snap2to2|snapKey|snapMode|snapTogetherCtx|snapshot|soft|softMod|softModCtx|sort|sound|soundControl|source|spaceLocator|sphere|sphrand|spotLight|spotLightPreviewPort|spreadSheetEditor|spring|sqrt|squareSurface|srtContext|stackTrace|startString|startsWith|stitchAndExplodeShell|stitchSurface|stitchSurfacePoints|strcmp|stringArrayCatenate|stringArrayContains|stringArrayCount|stringArrayInsertAtIndex|stringArrayIntersector|stringArrayRemove|stringArrayRemoveAtIndex|stringArrayRemoveDuplicates|stringArrayRemoveExact|stringArrayToString|stringToStringArray|strip|stripPrefixFromName|stroke|subdAutoProjection|subdCleanTopology|subdCollapse|subdDuplicateAndConnect|subdEditUV|subdListComponentConversion|subdMapCut|subdMapSewMove|subdMatchTopology|subdMirror|subdToBlind|subdToPoly|subdTransferUVsToCache|subdiv|subdivCrease|subdivDisplaySmoothness|substitute|substituteAllString|substituteGeometry|substring|surface|surfaceSampler|surfaceShaderList|swatchDisplayPort|switchTable|symbolButton|symbolCheckBox|sysFile|system|tabLayout|tan|tangentConstraint|texLatticeDeformContext|texManipContext|texMoveContext|texMoveUVShellContext|texRotateContext|texScaleContext|texSelectContext|texSelectShortestPathCtx|texSmudgeUVContext|texWinToolCtx|text|textCurves|textField|textFieldButtonGrp|textFieldGrp|textManip|textScrollList|textToShelf|textureDisplacePlane|textureHairColor|texturePlacementContext|textureWindow|threadCount|threePointArcCtx|timeControl|timePort|timerX|toNativePath|toggle|toggleAxis|toggleWindowVisibility|tokenize|tokenizeList|tolerance|tolower|toolButton|toolCollection|toolDropped|toolHasOptions|toolPropertyWindow|torus|toupper|trace|track|trackCtx|transferAttributes|transformCompare|transformLimits|translator|trim|trunc|truncateFluidCache|truncateHairCache|tumble|tumbleCtx|turbulence|twoPointArcCtx|uiRes|uiTemplate|unassignInputDevice|undo|undoInfo|ungroup|uniform|unit|unloadPlugin|untangleUV|untitledFileName|untrim|upAxis|updateAE|userCtx|uvLink|uvSnapshot|validateShelfName|vectorize|view2dToolCtx|viewCamera|viewClipPlane|viewFit|viewHeadOn|viewLookAt|viewManip|viewPlace|viewSet|visor|volumeAxis|vortex|waitCursor|warning|webBrowser|webBrowserPrefs|whatIs|window|windowPref|wire|wireContext|workspace|wrinkle|wrinkleContext|writeTake|xbmLangPathList|xform)\b/,operator:[/\+[+=]?|-[-=]?|&&|\|\||[<>]=|[*\/!=]=?|[%^]/,{pattern:/(^|[^<])<(?!<)/,lookbehind:!0},{pattern:/(^|[^>])>(?!>)/,lookbehind:!0}],punctuation:/<<|>>|[.,:;?\[\](){}]/},e.languages.mel.code.inside.rest=e.languages.mel}e.exports=t,t.displayName="mel",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_mel.970c0c64.js b/assets/js/react-syntax-highlighter_languages_refractor_mel.970c0c64.js new file mode 100644 index 000000000..d550536c0 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_mel.970c0c64.js @@ -0,0 +1,62 @@ +"use strict"; +exports.id = 226; +exports.ids = [226]; +exports.modules = { + +/***/ 606: +/***/ ((module) => { + + + +module.exports = mel +mel.displayName = 'mel' +mel.aliases = [] +function mel(Prism) { + Prism.languages.mel = { + comment: /\/\/.*/, + code: { + pattern: /`(?:\\.|[^\\`\r\n])*`/, + greedy: true, + alias: 'italic', + inside: { + delimiter: { + pattern: /^`|`$/, + alias: 'punctuation' + } // See rest below + } + }, + string: { + pattern: /"(?:\\.|[^\\"\r\n])*"/, + greedy: true + }, + variable: /\$\w+/, + number: /\b0x[\da-fA-F]+\b|\b\d+\.?\d*|\B\.\d+/, + flag: { + pattern: /-[^\d\W]\w*/, + alias: 'operator' + }, + keyword: /\b(?:break|case|continue|default|do|else|float|for|global|if|in|int|matrix|proc|return|string|switch|vector|while)\b/, + function: /\w+(?=\()|\b(?:about|abs|addAttr|addAttributeEditorNodeHelp|addDynamic|addNewShelfTab|addPP|addPanelCategory|addPrefixToName|advanceToNextDrivenKey|affectedNet|affects|aimConstraint|air|alias|aliasAttr|align|alignCtx|alignCurve|alignSurface|allViewFit|ambientLight|angle|angleBetween|animCone|animCurveEditor|animDisplay|animView|annotate|appendStringArray|applicationName|applyAttrPreset|applyTake|arcLenDimContext|arcLengthDimension|arclen|arrayMapper|art3dPaintCtx|artAttrCtx|artAttrPaintVertexCtx|artAttrSkinPaintCtx|artAttrTool|artBuildPaintMenu|artFluidAttrCtx|artPuttyCtx|artSelectCtx|artSetPaintCtx|artUserPaintCtx|assignCommand|assignInputDevice|assignViewportFactories|attachCurve|attachDeviceAttr|attachSurface|attrColorSliderGrp|attrCompatibility|attrControlGrp|attrEnumOptionMenu|attrEnumOptionMenuGrp|attrFieldGrp|attrFieldSliderGrp|attrNavigationControlGrp|attrPresetEditWin|attributeExists|attributeInfo|attributeMenu|attributeQuery|autoKeyframe|autoPlace|bakeClip|bakeFluidShading|bakePartialHistory|bakeResults|bakeSimulation|basename|basenameEx|batchRender|bessel|bevel|bevelPlus|binMembership|bindSkin|blend2|blendShape|blendShapeEditor|blendShapePanel|blendTwoAttr|blindDataType|boneLattice|boundary|boxDollyCtx|boxZoomCtx|bufferCurve|buildBookmarkMenu|buildKeyframeMenu|button|buttonManip|CBG|cacheFile|cacheFileCombine|cacheFileMerge|cacheFileTrack|camera|cameraView|canCreateManip|canvas|capitalizeString|catch|catchQuiet|ceil|changeSubdivComponentDisplayLevel|changeSubdivRegion|channelBox|character|characterMap|characterOutlineEditor|characterize|chdir|checkBox|checkBoxGrp|checkDefaultRenderGlobals|choice|circle|circularFillet|clamp|clear|clearCache|clip|clipEditor|clipEditorCurrentTimeCtx|clipSchedule|clipSchedulerOutliner|clipTrimBefore|closeCurve|closeSurface|cluster|cmdFileOutput|cmdScrollFieldExecuter|cmdScrollFieldReporter|cmdShell|coarsenSubdivSelectionList|collision|color|colorAtPoint|colorEditor|colorIndex|colorIndexSliderGrp|colorSliderButtonGrp|colorSliderGrp|columnLayout|commandEcho|commandLine|commandPort|compactHairSystem|componentEditor|compositingInterop|computePolysetVolume|condition|cone|confirmDialog|connectAttr|connectControl|connectDynamic|connectJoint|connectionInfo|constrain|constrainValue|constructionHistory|container|containsMultibyte|contextInfo|control|convertFromOldLayers|convertIffToPsd|convertLightmap|convertSolidTx|convertTessellation|convertUnit|copyArray|copyFlexor|copyKey|copySkinWeights|cos|cpButton|cpCache|cpClothSet|cpCollision|cpConstraint|cpConvClothToMesh|cpForces|cpGetSolverAttr|cpPanel|cpProperty|cpRigidCollisionFilter|cpSeam|cpSetEdit|cpSetSolverAttr|cpSolver|cpSolverTypes|cpTool|cpUpdateClothUVs|createDisplayLayer|createDrawCtx|createEditor|createLayeredPsdFile|createMotionField|createNewShelf|createNode|createRenderLayer|createSubdivRegion|cross|crossProduct|ctxAbort|ctxCompletion|ctxEditMode|ctxTraverse|currentCtx|currentTime|currentTimeCtx|currentUnit|curve|curveAddPtCtx|curveCVCtx|curveEPCtx|curveEditorCtx|curveIntersect|curveMoveEPCtx|curveOnSurface|curveSketchCtx|cutKey|cycleCheck|cylinder|dagPose|date|defaultLightListCheckBox|defaultNavigation|defineDataServer|defineVirtualDevice|deformer|deg_to_rad|delete|deleteAttr|deleteShadingGroupsAndMaterials|deleteShelfTab|deleteUI|deleteUnusedBrushes|delrandstr|detachCurve|detachDeviceAttr|detachSurface|deviceEditor|devicePanel|dgInfo|dgdirty|dgeval|dgtimer|dimWhen|directKeyCtx|directionalLight|dirmap|dirname|disable|disconnectAttr|disconnectJoint|diskCache|displacementToPoly|displayAffected|displayColor|displayCull|displayLevelOfDetail|displayPref|displayRGBColor|displaySmoothness|displayStats|displayString|displaySurface|distanceDimContext|distanceDimension|doBlur|dolly|dollyCtx|dopeSheetEditor|dot|dotProduct|doubleProfileBirailSurface|drag|dragAttrContext|draggerContext|dropoffLocator|duplicate|duplicateCurve|duplicateSurface|dynCache|dynControl|dynExport|dynExpression|dynGlobals|dynPaintEditor|dynParticleCtx|dynPref|dynRelEdPanel|dynRelEditor|dynamicLoad|editAttrLimits|editDisplayLayerGlobals|editDisplayLayerMembers|editRenderLayerAdjustment|editRenderLayerGlobals|editRenderLayerMembers|editor|editorTemplate|effector|emit|emitter|enableDevice|encodeString|endString|endsWith|env|equivalent|equivalentTol|erf|error|eval|evalDeferred|evalEcho|event|exactWorldBoundingBox|exclusiveLightCheckBox|exec|executeForEachObject|exists|exp|expression|expressionEditorListen|extendCurve|extendSurface|extrude|fcheck|fclose|feof|fflush|fgetline|fgetword|file|fileBrowserDialog|fileDialog|fileExtension|fileInfo|filetest|filletCurve|filter|filterCurve|filterExpand|filterStudioImport|findAllIntersections|findAnimCurves|findKeyframe|findMenuItem|findRelatedSkinCluster|finder|firstParentOf|fitBspline|flexor|floatEq|floatField|floatFieldGrp|floatScrollBar|floatSlider|floatSlider2|floatSliderButtonGrp|floatSliderGrp|floor|flow|fluidCacheInfo|fluidEmitter|fluidVoxelInfo|flushUndo|fmod|fontDialog|fopen|formLayout|format|fprint|frameLayout|fread|freeFormFillet|frewind|fromNativePath|fwrite|gamma|gauss|geometryConstraint|getApplicationVersionAsFloat|getAttr|getClassification|getDefaultBrush|getFileList|getFluidAttr|getInputDeviceRange|getMayaPanelTypes|getModifiers|getPanel|getParticleAttr|getPluginResource|getenv|getpid|glRender|glRenderEditor|globalStitch|gmatch|goal|gotoBindPose|grabColor|gradientControl|gradientControlNoAttr|graphDollyCtx|graphSelectContext|graphTrackCtx|gravity|grid|gridLayout|group|groupObjectsByName|HfAddAttractorToAS|HfAssignAS|HfBuildEqualMap|HfBuildFurFiles|HfBuildFurImages|HfCancelAFR|HfConnectASToHF|HfCreateAttractor|HfDeleteAS|HfEditAS|HfPerformCreateAS|HfRemoveAttractorFromAS|HfSelectAttached|HfSelectAttractors|HfUnAssignAS|hardenPointCurve|hardware|hardwareRenderPanel|headsUpDisplay|headsUpMessage|help|helpLine|hermite|hide|hilite|hitTest|hotBox|hotkey|hotkeyCheck|hsv_to_rgb|hudButton|hudSlider|hudSliderButton|hwReflectionMap|hwRender|hwRenderLoad|hyperGraph|hyperPanel|hyperShade|hypot|iconTextButton|iconTextCheckBox|iconTextRadioButton|iconTextRadioCollection|iconTextScrollList|iconTextStaticLabel|ikHandle|ikHandleCtx|ikHandleDisplayScale|ikSolver|ikSplineHandleCtx|ikSystem|ikSystemInfo|ikfkDisplayMethod|illustratorCurves|image|imfPlugins|inheritTransform|insertJoint|insertJointCtx|insertKeyCtx|insertKnotCurve|insertKnotSurface|instance|instanceable|instancer|intField|intFieldGrp|intScrollBar|intSlider|intSliderGrp|interToUI|internalVar|intersect|iprEngine|isAnimCurve|isConnected|isDirty|isParentOf|isSameObject|isTrue|isValidObjectName|isValidString|isValidUiName|isolateSelect|itemFilter|itemFilterAttr|itemFilterRender|itemFilterType|joint|jointCluster|jointCtx|jointDisplayScale|jointLattice|keyTangent|keyframe|keyframeOutliner|keyframeRegionCurrentTimeCtx|keyframeRegionDirectKeyCtx|keyframeRegionDollyCtx|keyframeRegionInsertKeyCtx|keyframeRegionMoveKeyCtx|keyframeRegionScaleKeyCtx|keyframeRegionSelectKeyCtx|keyframeRegionSetKeyCtx|keyframeRegionTrackCtx|keyframeStats|lassoContext|lattice|latticeDeformKeyCtx|launch|launchImageEditor|layerButton|layeredShaderPort|layeredTexturePort|layout|layoutDialog|lightList|lightListEditor|lightListPanel|lightlink|lineIntersection|linearPrecision|linstep|listAnimatable|listAttr|listCameras|listConnections|listDeviceAttachments|listHistory|listInputDeviceAxes|listInputDeviceButtons|listInputDevices|listMenuAnnotation|listNodeTypes|listPanelCategories|listRelatives|listSets|listTransforms|listUnselected|listerEditor|loadFluid|loadNewShelf|loadPlugin|loadPluginLanguageResources|loadPrefObjects|localizedPanelLabel|lockNode|loft|log|longNameOf|lookThru|ls|lsThroughFilter|lsType|lsUI|Mayatomr|mag|makeIdentity|makeLive|makePaintable|makeRoll|makeSingleSurface|makeTubeOn|makebot|manipMoveContext|manipMoveLimitsCtx|manipOptions|manipRotateContext|manipRotateLimitsCtx|manipScaleContext|manipScaleLimitsCtx|marker|match|max|memory|menu|menuBarLayout|menuEditor|menuItem|menuItemToShelf|menuSet|menuSetPref|messageLine|min|minimizeApp|mirrorJoint|modelCurrentTimeCtx|modelEditor|modelPanel|mouse|movIn|movOut|move|moveIKtoFK|moveKeyCtx|moveVertexAlongDirection|multiProfileBirailSurface|mute|nParticle|nameCommand|nameField|namespace|namespaceInfo|newPanelItems|newton|nodeCast|nodeIconButton|nodeOutliner|nodePreset|nodeType|noise|nonLinear|normalConstraint|normalize|nurbsBoolean|nurbsCopyUVSet|nurbsCube|nurbsEditUV|nurbsPlane|nurbsSelect|nurbsSquare|nurbsToPoly|nurbsToPolygonsPref|nurbsToSubdiv|nurbsToSubdivPref|nurbsUVSet|nurbsViewDirectionVector|objExists|objectCenter|objectLayer|objectType|objectTypeUI|obsoleteProc|oceanNurbsPreviewPlane|offsetCurve|offsetCurveOnSurface|offsetSurface|openGLExtension|openMayaPref|optionMenu|optionMenuGrp|optionVar|orbit|orbitCtx|orientConstraint|outlinerEditor|outlinerPanel|overrideModifier|paintEffectsDisplay|pairBlend|palettePort|paneLayout|panel|panelConfiguration|panelHistory|paramDimContext|paramDimension|paramLocator|parent|parentConstraint|particle|particleExists|particleInstancer|particleRenderInfo|partition|pasteKey|pathAnimation|pause|pclose|percent|performanceOptions|pfxstrokes|pickWalk|picture|pixelMove|planarSrf|plane|play|playbackOptions|playblast|plugAttr|plugNode|pluginInfo|pluginResourceUtil|pointConstraint|pointCurveConstraint|pointLight|pointMatrixMult|pointOnCurve|pointOnSurface|pointPosition|poleVectorConstraint|polyAppend|polyAppendFacetCtx|polyAppendVertex|polyAutoProjection|polyAverageNormal|polyAverageVertex|polyBevel|polyBlendColor|polyBlindData|polyBoolOp|polyBridgeEdge|polyCacheMonitor|polyCheck|polyChipOff|polyClipboard|polyCloseBorder|polyCollapseEdge|polyCollapseFacet|polyColorBlindData|polyColorDel|polyColorPerVertex|polyColorSet|polyCompare|polyCone|polyCopyUV|polyCrease|polyCreaseCtx|polyCreateFacet|polyCreateFacetCtx|polyCube|polyCut|polyCutCtx|polyCylinder|polyCylindricalProjection|polyDelEdge|polyDelFacet|polyDelVertex|polyDuplicateAndConnect|polyDuplicateEdge|polyEditUV|polyEditUVShell|polyEvaluate|polyExtrudeEdge|polyExtrudeFacet|polyExtrudeVertex|polyFlipEdge|polyFlipUV|polyForceUV|polyGeoSampler|polyHelix|polyInfo|polyInstallAction|polyLayoutUV|polyListComponentConversion|polyMapCut|polyMapDel|polyMapSew|polyMapSewMove|polyMergeEdge|polyMergeEdgeCtx|polyMergeFacet|polyMergeFacetCtx|polyMergeUV|polyMergeVertex|polyMirrorFace|polyMoveEdge|polyMoveFacet|polyMoveFacetUV|polyMoveUV|polyMoveVertex|polyNormal|polyNormalPerVertex|polyNormalizeUV|polyOptUvs|polyOptions|polyOutput|polyPipe|polyPlanarProjection|polyPlane|polyPlatonicSolid|polyPoke|polyPrimitive|polyPrism|polyProjection|polyPyramid|polyQuad|polyQueryBlindData|polyReduce|polySelect|polySelectConstraint|polySelectConstraintMonitor|polySelectCtx|polySelectEditCtx|polySeparate|polySetToFaceNormal|polySewEdge|polyShortestPathCtx|polySmooth|polySoftEdge|polySphere|polySphericalProjection|polySplit|polySplitCtx|polySplitEdge|polySplitRing|polySplitVertex|polyStraightenUVBorder|polySubdivideEdge|polySubdivideFacet|polyToSubdiv|polyTorus|polyTransfer|polyTriangulate|polyUVSet|polyUnite|polyWedgeFace|popen|popupMenu|pose|pow|preloadRefEd|print|progressBar|progressWindow|projFileViewer|projectCurve|projectTangent|projectionContext|projectionManip|promptDialog|propModCtx|propMove|psdChannelOutliner|psdEditTextureFile|psdExport|psdTextureFile|putenv|pwd|python|querySubdiv|quit|rad_to_deg|radial|radioButton|radioButtonGrp|radioCollection|radioMenuItemCollection|rampColorPort|rand|randomizeFollicles|randstate|rangeControl|readTake|rebuildCurve|rebuildSurface|recordAttr|recordDevice|redo|reference|referenceEdit|referenceQuery|refineSubdivSelectionList|refresh|refreshAE|registerPluginResource|rehash|reloadImage|removeJoint|removeMultiInstance|removePanelCategory|rename|renameAttr|renameSelectionList|renameUI|render|renderGlobalsNode|renderInfo|renderLayerButton|renderLayerParent|renderLayerPostProcess|renderLayerUnparent|renderManip|renderPartition|renderQualityNode|renderSettings|renderThumbnailUpdate|renderWindowEditor|renderWindowSelectContext|renderer|reorder|reorderDeformers|requires|reroot|resampleFluid|resetAE|resetPfxToPolyCamera|resetTool|resolutionNode|retarget|reverseCurve|reverseSurface|revolve|rgb_to_hsv|rigidBody|rigidSolver|roll|rollCtx|rootOf|rot|rotate|rotationInterpolation|roundConstantRadius|rowColumnLayout|rowLayout|runTimeCommand|runup|sampleImage|saveAllShelves|saveAttrPreset|saveFluid|saveImage|saveInitialState|saveMenu|savePrefObjects|savePrefs|saveShelf|saveToolSettings|scale|scaleBrushBrightness|scaleComponents|scaleConstraint|scaleKey|scaleKeyCtx|sceneEditor|sceneUIReplacement|scmh|scriptCtx|scriptEditorInfo|scriptJob|scriptNode|scriptTable|scriptToShelf|scriptedPanel|scriptedPanelType|scrollField|scrollLayout|sculpt|searchPathArray|seed|selLoadSettings|select|selectContext|selectCurveCV|selectKey|selectKeyCtx|selectKeyframeRegionCtx|selectMode|selectPref|selectPriority|selectType|selectedNodes|selectionConnection|separator|setAttr|setAttrEnumResource|setAttrMapping|setAttrNiceNameResource|setConstraintRestPosition|setDefaultShadingGroup|setDrivenKeyframe|setDynamic|setEditCtx|setEditor|setFluidAttr|setFocus|setInfinity|setInputDeviceMapping|setKeyCtx|setKeyPath|setKeyframe|setKeyframeBlendshapeTargetWts|setMenuMode|setNodeNiceNameResource|setNodeTypeFlag|setParent|setParticleAttr|setPfxToPolyCamera|setPluginResource|setProject|setStampDensity|setStartupMessage|setState|setToolTo|setUITemplate|setXformManip|sets|shadingConnection|shadingGeometryRelCtx|shadingLightRelCtx|shadingNetworkCompare|shadingNode|shapeCompare|shelfButton|shelfLayout|shelfTabLayout|shellField|shortNameOf|showHelp|showHidden|showManipCtx|showSelectionInTitle|showShadingGroupAttrEditor|showWindow|sign|simplify|sin|singleProfileBirailSurface|size|sizeBytes|skinCluster|skinPercent|smoothCurve|smoothTangentSurface|smoothstep|snap2to2|snapKey|snapMode|snapTogetherCtx|snapshot|soft|softMod|softModCtx|sort|sound|soundControl|source|spaceLocator|sphere|sphrand|spotLight|spotLightPreviewPort|spreadSheetEditor|spring|sqrt|squareSurface|srtContext|stackTrace|startString|startsWith|stitchAndExplodeShell|stitchSurface|stitchSurfacePoints|strcmp|stringArrayCatenate|stringArrayContains|stringArrayCount|stringArrayInsertAtIndex|stringArrayIntersector|stringArrayRemove|stringArrayRemoveAtIndex|stringArrayRemoveDuplicates|stringArrayRemoveExact|stringArrayToString|stringToStringArray|strip|stripPrefixFromName|stroke|subdAutoProjection|subdCleanTopology|subdCollapse|subdDuplicateAndConnect|subdEditUV|subdListComponentConversion|subdMapCut|subdMapSewMove|subdMatchTopology|subdMirror|subdToBlind|subdToPoly|subdTransferUVsToCache|subdiv|subdivCrease|subdivDisplaySmoothness|substitute|substituteAllString|substituteGeometry|substring|surface|surfaceSampler|surfaceShaderList|swatchDisplayPort|switchTable|symbolButton|symbolCheckBox|sysFile|system|tabLayout|tan|tangentConstraint|texLatticeDeformContext|texManipContext|texMoveContext|texMoveUVShellContext|texRotateContext|texScaleContext|texSelectContext|texSelectShortestPathCtx|texSmudgeUVContext|texWinToolCtx|text|textCurves|textField|textFieldButtonGrp|textFieldGrp|textManip|textScrollList|textToShelf|textureDisplacePlane|textureHairColor|texturePlacementContext|textureWindow|threadCount|threePointArcCtx|timeControl|timePort|timerX|toNativePath|toggle|toggleAxis|toggleWindowVisibility|tokenize|tokenizeList|tolerance|tolower|toolButton|toolCollection|toolDropped|toolHasOptions|toolPropertyWindow|torus|toupper|trace|track|trackCtx|transferAttributes|transformCompare|transformLimits|translator|trim|trunc|truncateFluidCache|truncateHairCache|tumble|tumbleCtx|turbulence|twoPointArcCtx|uiRes|uiTemplate|unassignInputDevice|undo|undoInfo|ungroup|uniform|unit|unloadPlugin|untangleUV|untitledFileName|untrim|upAxis|updateAE|userCtx|uvLink|uvSnapshot|validateShelfName|vectorize|view2dToolCtx|viewCamera|viewClipPlane|viewFit|viewHeadOn|viewLookAt|viewManip|viewPlace|viewSet|visor|volumeAxis|vortex|waitCursor|warning|webBrowser|webBrowserPrefs|whatIs|window|windowPref|wire|wireContext|workspace|wrinkle|wrinkleContext|writeTake|xbmLangPathList|xform)\b/, + operator: [ + /\+[+=]?|-[-=]?|&&|\|\||[<>]=|[*\/!=]=?|[%^]/, + { + // We don't want to match << + pattern: /(^|[^<])<(?!<)/, + lookbehind: true + }, + { + // We don't want to match >> + pattern: /(^|[^>])>(?!>)/, + lookbehind: true + } + ], + punctuation: /<<|>>|[.,:;?\[\](){}]/ + } + Prism.languages.mel['code'].inside.rest = Prism.languages.mel +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_mizar.484b0619.js b/assets/js/react-syntax-highlighter_languages_refractor_mizar.484b0619.js new file mode 100644 index 000000000..db48ad452 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_mizar.484b0619.js @@ -0,0 +1,33 @@ +"use strict"; +exports.id = 4069; +exports.ids = [4069]; +exports.modules = { + +/***/ 23388: +/***/ ((module) => { + + + +module.exports = mizar +mizar.displayName = 'mizar' +mizar.aliases = [] +function mizar(Prism) { + Prism.languages.mizar = { + comment: /::.+/, + keyword: /@proof\b|\b(?:according|aggregate|all|and|antonym|are|as|associativity|assume|asymmetry|attr|be|begin|being|by|canceled|case|cases|clusters?|coherence|commutativity|compatibility|connectedness|consider|consistency|constructors|contradiction|correctness|def|deffunc|define|definitions?|defpred|do|does|equals|end|environ|ex|exactly|existence|for|from|func|given|hence|hereby|holds|idempotence|identity|iff?|implies|involutiveness|irreflexivity|is|it|let|means|mode|non|not|notations?|now|of|or|otherwise|over|per|pred|prefix|projectivity|proof|provided|qua|reconsider|redefine|reduce|reducibility|reflexivity|registrations?|requirements|reserve|sch|schemes?|section|selector|set|sethood|st|struct|such|suppose|symmetry|synonym|take|that|the|then|theorems?|thesis|thus|to|transitivity|uniqueness|vocabular(?:y|ies)|when|where|with|wrt)\b/, + parameter: { + pattern: /\$(?:10|\d)/, + alias: 'variable' + }, + variable: /\w+(?=:)/, + number: /(?:\b|-)\d+\b/, + operator: /\.\.\.|->|&|\.?=/, + punctuation: /\(#|#\)|[,:;\[\](){}]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_mizar.ef4fef1f.js b/assets/js/react-syntax-highlighter_languages_refractor_mizar.ef4fef1f.js new file mode 100644 index 000000000..1f43f23e4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_mizar.ef4fef1f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4069],{3388:e=>{function t(e){e.languages.mizar={comment:/::.+/,keyword:/@proof\b|\b(?:according|aggregate|all|and|antonym|are|as|associativity|assume|asymmetry|attr|be|begin|being|by|canceled|case|cases|clusters?|coherence|commutativity|compatibility|connectedness|consider|consistency|constructors|contradiction|correctness|def|deffunc|define|definitions?|defpred|do|does|equals|end|environ|ex|exactly|existence|for|from|func|given|hence|hereby|holds|idempotence|identity|iff?|implies|involutiveness|irreflexivity|is|it|let|means|mode|non|not|notations?|now|of|or|otherwise|over|per|pred|prefix|projectivity|proof|provided|qua|reconsider|redefine|reduce|reducibility|reflexivity|registrations?|requirements|reserve|sch|schemes?|section|selector|set|sethood|st|struct|such|suppose|symmetry|synonym|take|that|the|then|theorems?|thesis|thus|to|transitivity|uniqueness|vocabular(?:y|ies)|when|where|with|wrt)\b/,parameter:{pattern:/\$(?:10|\d)/,alias:"variable"},variable:/\w+(?=:)/,number:/(?:\b|-)\d+\b/,operator:/\.\.\.|->|&|\.?=/,punctuation:/\(#|#\)|[,:;\[\](){}]/}}e.exports=t,t.displayName="mizar",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_monkey.2079520d.js b/assets/js/react-syntax-highlighter_languages_refractor_monkey.2079520d.js new file mode 100644 index 000000000..4b490b76e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_monkey.2079520d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8513],{5721:e=>{function t(e){e.languages.monkey={string:/"[^"\r\n]*"/,comment:[{pattern:/^#Rem\s+[\s\S]*?^#End/im,greedy:!0},{pattern:/'.+/,greedy:!0}],preprocessor:{pattern:/(^[ \t]*)#.+/m,lookbehind:!0,alias:"comment"},function:/\w+(?=\()/,"type-char":{pattern:/(\w)[?%#$]/,lookbehind:!0,alias:"variable"},number:{pattern:/((?:\.\.)?)(?:(?:\b|\B-\.?|\B\.)\d+(?:(?!\.\.)\.\d*)?|\$[\da-f]+)/i,lookbehind:!0},keyword:/\b(?:Void|Strict|Public|Private|Property|Bool|Int|Float|String|Array|Object|Continue|Exit|Import|Extern|New|Self|Super|Try|Catch|Eachin|True|False|Extends|Abstract|Final|Select|Case|Default|Const|Local|Global|Field|Method|Function|Class|End|If|Then|Else|ElseIf|EndIf|While|Wend|Repeat|Until|Forever|For|To|Step|Next|Return|Module|Interface|Implements|Inline|Throw|Null)\b/i,operator:/\.\.|<[=>]?|>=?|:?=|(?:[+\-*\/&~|]|\b(?:Mod|Shl|Shr)\b)=?|\b(?:And|Not|Or)\b/i,punctuation:/[.,:;()\[\]]/}}e.exports=t,t.displayName="monkey",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_monkey.f40cb178.js b/assets/js/react-syntax-highlighter_languages_refractor_monkey.f40cb178.js new file mode 100644 index 000000000..e9d788df4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_monkey.f40cb178.js @@ -0,0 +1,52 @@ +"use strict"; +exports.id = 8513; +exports.ids = [8513]; +exports.modules = { + +/***/ 95721: +/***/ ((module) => { + + + +module.exports = monkey +monkey.displayName = 'monkey' +monkey.aliases = [] +function monkey(Prism) { + Prism.languages.monkey = { + string: /"[^"\r\n]*"/, + comment: [ + { + pattern: /^#Rem\s+[\s\S]*?^#End/im, + greedy: true + }, + { + pattern: /'.+/, + greedy: true + } + ], + preprocessor: { + pattern: /(^[ \t]*)#.+/m, + lookbehind: true, + alias: 'comment' + }, + function: /\w+(?=\()/, + 'type-char': { + pattern: /(\w)[?%#$]/, + lookbehind: true, + alias: 'variable' + }, + number: { + pattern: /((?:\.\.)?)(?:(?:\b|\B-\.?|\B\.)\d+(?:(?!\.\.)\.\d*)?|\$[\da-f]+)/i, + lookbehind: true + }, + keyword: /\b(?:Void|Strict|Public|Private|Property|Bool|Int|Float|String|Array|Object|Continue|Exit|Import|Extern|New|Self|Super|Try|Catch|Eachin|True|False|Extends|Abstract|Final|Select|Case|Default|Const|Local|Global|Field|Method|Function|Class|End|If|Then|Else|ElseIf|EndIf|While|Wend|Repeat|Until|Forever|For|To|Step|Next|Return|Module|Interface|Implements|Inline|Throw|Null)\b/i, + operator: /\.\.|<[=>]?|>=?|:?=|(?:[+\-*\/&~|]|\b(?:Mod|Shl|Shr)\b)=?|\b(?:And|Not|Or)\b/i, + punctuation: /[.,:;()\[\]]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_n4js.9baa9fa4.js b/assets/js/react-syntax-highlighter_languages_refractor_n4js.9baa9fa4.js new file mode 100644 index 000000000..87a7442a6 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_n4js.9baa9fa4.js @@ -0,0 +1,33 @@ +"use strict"; +exports.id = 5014; +exports.ids = [5014]; +exports.modules = { + +/***/ 70896: +/***/ ((module) => { + + + +module.exports = n4js +n4js.displayName = 'n4js' +n4js.aliases = [] +function n4js(Prism) { + Prism.languages.n4js = Prism.languages.extend('javascript', { + // Keywords from N4JS language spec: https://numberfour.github.io/n4js/spec/N4JSSpec.html + keyword: /\b(?:any|Array|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/ + }) + Prism.languages.insertBefore('n4js', 'constant', { + // Annotations in N4JS spec: https://numberfour.github.io/n4js/spec/N4JSSpec.html#_annotations + annotation: { + pattern: /@+\w+/, + alias: 'operator' + } + }) + Prism.languages.n4jsd = Prism.languages.n4js +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_n4js.c0dd0131.js b/assets/js/react-syntax-highlighter_languages_refractor_n4js.c0dd0131.js new file mode 100644 index 000000000..75c51c726 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_n4js.c0dd0131.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5014],{896:e=>{function t(e){e.languages.n4js=e.languages.extend("javascript",{keyword:/\b(?:any|Array|boolean|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|false|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|module|new|null|number|package|private|protected|public|return|set|static|string|super|switch|this|throw|true|try|typeof|var|void|while|with|yield)\b/}),e.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),e.languages.n4jsd=e.languages.n4js}e.exports=t,t.displayName="n4js",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nasm.9c7dbc68.js b/assets/js/react-syntax-highlighter_languages_refractor_nasm.9c7dbc68.js new file mode 100644 index 000000000..76c527360 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nasm.9c7dbc68.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7253],{293:a=>{function e(a){a.languages.nasm={comment:/;.*$/m,string:/(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/,label:{pattern:/(^\s*)[A-Za-z._?$][\w.?$@~#]*:/m,lookbehind:!0,alias:"function"},keyword:[/\[?BITS (?:16|32|64)\]?/,{pattern:/(^\s*)section\s*[a-zA-Z.]+:?/im,lookbehind:!0},/(?:extern|global)[^;\r\n]*/i,/(?:CPU|FLOAT|DEFAULT).*$/m],register:{pattern:/\b(?:st\d|[xyz]mm\d\d?|[cdt]r\d|r\d\d?[bwd]?|[er]?[abcd]x|[abcd][hl]|[er]?(?:bp|sp|si|di)|[cdefgs]s)\b/i,alias:"variable"},number:/(?:\b|(?=\$))(?:0[hx][\da-f]*\.?[\da-f]+(?:p[+-]?\d+)?|\d[\da-f]+[hx]|\$\d[\da-f]*|0[oq][0-7]+|[0-7]+[oq]|0[by][01]+|[01]+[by]|0[dt]\d+|\d*\.?\d+(?:\.?e[+-]?\d+)?[dt]?)\b/i,operator:/[\[\]*+\-\/%<>=&|$!]/}}a.exports=e,e.displayName="nasm",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nasm.a216aede.js b/assets/js/react-syntax-highlighter_languages_refractor_nasm.a216aede.js new file mode 100644 index 000000000..7ac6ec64c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nasm.a216aede.js @@ -0,0 +1,45 @@ +"use strict"; +exports.id = 7253; +exports.ids = [7253]; +exports.modules = { + +/***/ 293: +/***/ ((module) => { + + + +module.exports = nasm +nasm.displayName = 'nasm' +nasm.aliases = [] +function nasm(Prism) { + Prism.languages.nasm = { + comment: /;.*$/m, + string: /(["'`])(?:\\.|(?!\1)[^\\\r\n])*\1/, + label: { + pattern: /(^\s*)[A-Za-z._?$][\w.?$@~#]*:/m, + lookbehind: true, + alias: 'function' + }, + keyword: [ + /\[?BITS (?:16|32|64)\]?/, + { + pattern: /(^\s*)section\s*[a-zA-Z.]+:?/im, + lookbehind: true + }, + /(?:extern|global)[^;\r\n]*/i, + /(?:CPU|FLOAT|DEFAULT).*$/m + ], + register: { + pattern: /\b(?:st\d|[xyz]mm\d\d?|[cdt]r\d|r\d\d?[bwd]?|[er]?[abcd]x|[abcd][hl]|[er]?(?:bp|sp|si|di)|[cdefgs]s)\b/i, + alias: 'variable' + }, + number: /(?:\b|(?=\$))(?:0[hx][\da-f]*\.?[\da-f]+(?:p[+-]?\d+)?|\d[\da-f]+[hx]|\$\d[\da-f]*|0[oq][0-7]+|[0-7]+[oq]|0[by][01]+|[01]+[by]|0[dt]\d+|\d*\.?\d+(?:\.?e[+-]?\d+)?[dt]?)\b/i, + operator: /[\[\]*+\-\/%<>=&|$!]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nginx.9850bb35.js b/assets/js/react-syntax-highlighter_languages_refractor_nginx.9850bb35.js new file mode 100644 index 000000000..5d752b902 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nginx.9850bb35.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4052],{221:e=>{function _(e){e.languages.nginx=e.languages.extend("clike",{comment:{pattern:/(^|[^"{\\])#.*/,lookbehind:!0},keyword:/\b(?:CONTENT_|DOCUMENT_|GATEWAY_|HTTP_|HTTPS|if_not_empty|PATH_|QUERY_|REDIRECT_|REMOTE_|REQUEST_|SCGI|SCRIPT_|SERVER_|http|events|accept_mutex|accept_mutex_delay|access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth|auth_basic|auth_basic_user_file|auth_http|auth_http_header|auth_http_timeout|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|debug_connection|debug_points|default_type|deny|devpoll_changes|devpoll_events|directio|directio_alignment|disable_symlinks|empty_gif|env|epoll_events|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_methods|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_purge|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_redirect_errors|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|google_perftools_profiles|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|imap_capabilities|imap_client_buffer|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|kqueue_changes|kqueue_events|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|lock_file|log_format|log_format_combined|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|multi_accept|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|pop3_auth|pop3_capabilities|port_in_redirect|post_action|postpone_output|protocol|proxy|proxy_buffer|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_methods|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_headers_hash_bucket_size|proxy_headers_hash_max_size|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_method|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_error_message|proxy_pass_header|proxy_pass_request_body|proxy_pass_request_headers|proxy_read_timeout|proxy_redirect|proxy_redirect_errors|proxy_send_lowat|proxy_send_timeout|proxy_set_body|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|proxy_timeout|proxy_upstream_fail_timeout|proxy_upstream_max_fails|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|rtsig_overflow_events|rtsig_overflow_test|rtsig_overflow_threshold|rtsig_signo|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|smtp_auth|smtp_capabilities|so_keepalive|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssi_value_length|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|starttls|stub_status|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timeout|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|use|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_connections|worker_cpu_affinity|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|worker_rlimit_sigpending|working_directory|xclient|xml_entities|xslt_entities|xslt_stylesheet|xslt_types|ssl_session_tickets|ssl_stapling|ssl_stapling_verify|ssl_ecdh_curve|ssl_trusted_certificate|more_set_headers|ssl_early_data)\b/i}),e.languages.insertBefore("nginx","keyword",{variable:/\$[a-z_]+/i})}e.exports=_,_.displayName="nginx",_.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nginx.fc5cea86.js b/assets/js/react-syntax-highlighter_languages_refractor_nginx.fc5cea86.js new file mode 100644 index 000000000..2fba85b6e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nginx.fc5cea86.js @@ -0,0 +1,31 @@ +"use strict"; +exports.id = 4052; +exports.ids = [4052]; +exports.modules = { + +/***/ 60221: +/***/ ((module) => { + + + +module.exports = nginx +nginx.displayName = 'nginx' +nginx.aliases = [] +function nginx(Prism) { + Prism.languages.nginx = Prism.languages.extend('clike', { + comment: { + pattern: /(^|[^"{\\])#.*/, + lookbehind: true + }, + keyword: /\b(?:CONTENT_|DOCUMENT_|GATEWAY_|HTTP_|HTTPS|if_not_empty|PATH_|QUERY_|REDIRECT_|REMOTE_|REQUEST_|SCGI|SCRIPT_|SERVER_|http|events|accept_mutex|accept_mutex_delay|access_log|add_after_body|add_before_body|add_header|addition_types|aio|alias|allow|ancient_browser|ancient_browser_value|auth|auth_basic|auth_basic_user_file|auth_http|auth_http_header|auth_http_timeout|autoindex|autoindex_exact_size|autoindex_localtime|break|charset|charset_map|charset_types|chunked_transfer_encoding|client_body_buffer_size|client_body_in_file_only|client_body_in_single_buffer|client_body_temp_path|client_body_timeout|client_header_buffer_size|client_header_timeout|client_max_body_size|connection_pool_size|create_full_put_path|daemon|dav_access|dav_methods|debug_connection|debug_points|default_type|deny|devpoll_changes|devpoll_events|directio|directio_alignment|disable_symlinks|empty_gif|env|epoll_events|error_log|error_page|expires|fastcgi_buffer_size|fastcgi_buffers|fastcgi_busy_buffers_size|fastcgi_cache|fastcgi_cache_bypass|fastcgi_cache_key|fastcgi_cache_lock|fastcgi_cache_lock_timeout|fastcgi_cache_methods|fastcgi_cache_min_uses|fastcgi_cache_path|fastcgi_cache_purge|fastcgi_cache_use_stale|fastcgi_cache_valid|fastcgi_connect_timeout|fastcgi_hide_header|fastcgi_ignore_client_abort|fastcgi_ignore_headers|fastcgi_index|fastcgi_intercept_errors|fastcgi_keep_conn|fastcgi_max_temp_file_size|fastcgi_next_upstream|fastcgi_no_cache|fastcgi_param|fastcgi_pass|fastcgi_pass_header|fastcgi_read_timeout|fastcgi_redirect_errors|fastcgi_send_timeout|fastcgi_split_path_info|fastcgi_store|fastcgi_store_access|fastcgi_temp_file_write_size|fastcgi_temp_path|flv|geo|geoip_city|geoip_country|google_perftools_profiles|gzip|gzip_buffers|gzip_comp_level|gzip_disable|gzip_http_version|gzip_min_length|gzip_proxied|gzip_static|gzip_types|gzip_vary|if|if_modified_since|ignore_invalid_headers|image_filter|image_filter_buffer|image_filter_jpeg_quality|image_filter_sharpen|image_filter_transparency|imap_capabilities|imap_client_buffer|include|index|internal|ip_hash|keepalive|keepalive_disable|keepalive_requests|keepalive_timeout|kqueue_changes|kqueue_events|large_client_header_buffers|limit_conn|limit_conn_log_level|limit_conn_zone|limit_except|limit_rate|limit_rate_after|limit_req|limit_req_log_level|limit_req_zone|limit_zone|lingering_close|lingering_time|lingering_timeout|listen|location|lock_file|log_format|log_format_combined|log_not_found|log_subrequest|map|map_hash_bucket_size|map_hash_max_size|master_process|max_ranges|memcached_buffer_size|memcached_connect_timeout|memcached_next_upstream|memcached_pass|memcached_read_timeout|memcached_send_timeout|merge_slashes|min_delete_depth|modern_browser|modern_browser_value|mp4|mp4_buffer_size|mp4_max_buffer_size|msie_padding|msie_refresh|multi_accept|open_file_cache|open_file_cache_errors|open_file_cache_min_uses|open_file_cache_valid|open_log_file_cache|optimize_server_names|override_charset|pcre_jit|perl|perl_modules|perl_require|perl_set|pid|pop3_auth|pop3_capabilities|port_in_redirect|post_action|postpone_output|protocol|proxy|proxy_buffer|proxy_buffer_size|proxy_buffering|proxy_buffers|proxy_busy_buffers_size|proxy_cache|proxy_cache_bypass|proxy_cache_key|proxy_cache_lock|proxy_cache_lock_timeout|proxy_cache_methods|proxy_cache_min_uses|proxy_cache_path|proxy_cache_use_stale|proxy_cache_valid|proxy_connect_timeout|proxy_cookie_domain|proxy_cookie_path|proxy_headers_hash_bucket_size|proxy_headers_hash_max_size|proxy_hide_header|proxy_http_version|proxy_ignore_client_abort|proxy_ignore_headers|proxy_intercept_errors|proxy_max_temp_file_size|proxy_method|proxy_next_upstream|proxy_no_cache|proxy_pass|proxy_pass_error_message|proxy_pass_header|proxy_pass_request_body|proxy_pass_request_headers|proxy_read_timeout|proxy_redirect|proxy_redirect_errors|proxy_send_lowat|proxy_send_timeout|proxy_set_body|proxy_set_header|proxy_ssl_session_reuse|proxy_store|proxy_store_access|proxy_temp_file_write_size|proxy_temp_path|proxy_timeout|proxy_upstream_fail_timeout|proxy_upstream_max_fails|random_index|read_ahead|real_ip_header|recursive_error_pages|request_pool_size|reset_timedout_connection|resolver|resolver_timeout|return|rewrite|root|rtsig_overflow_events|rtsig_overflow_test|rtsig_overflow_threshold|rtsig_signo|satisfy|satisfy_any|secure_link_secret|send_lowat|send_timeout|sendfile|sendfile_max_chunk|server|server_name|server_name_in_redirect|server_names_hash_bucket_size|server_names_hash_max_size|server_tokens|set|set_real_ip_from|smtp_auth|smtp_capabilities|so_keepalive|source_charset|split_clients|ssi|ssi_silent_errors|ssi_types|ssi_value_length|ssl|ssl_certificate|ssl_certificate_key|ssl_ciphers|ssl_client_certificate|ssl_crl|ssl_dhparam|ssl_engine|ssl_prefer_server_ciphers|ssl_protocols|ssl_session_cache|ssl_session_timeout|ssl_verify_client|ssl_verify_depth|starttls|stub_status|sub_filter|sub_filter_once|sub_filter_types|tcp_nodelay|tcp_nopush|timeout|timer_resolution|try_files|types|types_hash_bucket_size|types_hash_max_size|underscores_in_headers|uninitialized_variable_warn|upstream|use|user|userid|userid_domain|userid_expires|userid_name|userid_p3p|userid_path|userid_service|valid_referers|variables_hash_bucket_size|variables_hash_max_size|worker_connections|worker_cpu_affinity|worker_priority|worker_processes|worker_rlimit_core|worker_rlimit_nofile|worker_rlimit_sigpending|working_directory|xclient|xml_entities|xslt_entities|xslt_stylesheet|xslt_types|ssl_session_tickets|ssl_stapling|ssl_stapling_verify|ssl_ecdh_curve|ssl_trusted_certificate|more_set_headers|ssl_early_data)\b/i + }) + Prism.languages.insertBefore('nginx', 'keyword', { + variable: /\$[a-z_]+/i + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nim.8cee27cc.js b/assets/js/react-syntax-highlighter_languages_refractor_nim.8cee27cc.js new file mode 100644 index 000000000..d061efdc7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nim.8cee27cc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3025],{4188:e=>{function t(e){e.languages.nim={comment:/#.*/,string:{pattern:/(?:(?:\b(?!\d)(?:\w|\\x[8-9a-fA-F][0-9a-fA-F])+)?(?:"""[\s\S]*?"""(?!")|"(?:\\[\s\S]|""|[^"\\])*")|'(?:\\(?:\d+|x[\da-fA-F]{2}|.)|[^'])')/,greedy:!0},number:/\b(?:0[xXoObB][\da-fA-F_]+|\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:[eE][+-]?\d[\d_]*)?)(?:'?[iuf]\d*)?/,keyword:/\b(?:addr|as|asm|atomic|bind|block|break|case|cast|concept|const|continue|converter|defer|discard|distinct|do|elif|else|end|enum|except|export|finally|for|from|func|generic|if|import|include|interface|iterator|let|macro|method|mixin|nil|object|out|proc|ptr|raise|ref|return|static|template|try|tuple|type|using|var|when|while|with|without|yield)\b/,function:{pattern:/(?:(?!\d)(?:\w|\\x[8-9a-fA-F][0-9a-fA-F])+|`[^`\r\n]+`)\*?(?:\[[^\]]+\])?(?=\s*\()/,inside:{operator:/\*$/}},ignore:{pattern:/`[^`\r\n]+`/,inside:{punctuation:/`/}},operator:{pattern:/(^|[({\[](?=\.\.)|(?![({\[]\.).)(?:(?:[=+\-*\/<>@$~&%|!?^:\\]|\.\.|\.(?![)}\]]))+|\b(?:and|div|of|or|in|is|isnot|mod|not|notin|shl|shr|xor)\b)/m,lookbehind:!0},punctuation:/[({\[]\.|\.[)}\]]|[`(){}\[\],:]/}}e.exports=t,t.displayName="nim",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nim.d506cc81.js b/assets/js/react-syntax-highlighter_languages_refractor_nim.d506cc81.js new file mode 100644 index 000000000..07d74d8ec --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nim.d506cc81.js @@ -0,0 +1,54 @@ +"use strict"; +exports.id = 3025; +exports.ids = [3025]; +exports.modules = { + +/***/ 44188: +/***/ ((module) => { + + + +module.exports = nim +nim.displayName = 'nim' +nim.aliases = [] +function nim(Prism) { + Prism.languages.nim = { + comment: /#.*/, + // Double-quoted strings can be prefixed by an identifier (Generalized raw string literals) + // Character literals are handled specifically to prevent issues with numeric type suffixes + string: { + pattern: /(?:(?:\b(?!\d)(?:\w|\\x[8-9a-fA-F][0-9a-fA-F])+)?(?:"""[\s\S]*?"""(?!")|"(?:\\[\s\S]|""|[^"\\])*")|'(?:\\(?:\d+|x[\da-fA-F]{2}|.)|[^'])')/, + greedy: true + }, + // The negative look ahead prevents wrong highlighting of the .. operator + number: /\b(?:0[xXoObB][\da-fA-F_]+|\d[\d_]*(?:(?!\.\.)\.[\d_]*)?(?:[eE][+-]?\d[\d_]*)?)(?:'?[iuf]\d*)?/, + keyword: /\b(?:addr|as|asm|atomic|bind|block|break|case|cast|concept|const|continue|converter|defer|discard|distinct|do|elif|else|end|enum|except|export|finally|for|from|func|generic|if|import|include|interface|iterator|let|macro|method|mixin|nil|object|out|proc|ptr|raise|ref|return|static|template|try|tuple|type|using|var|when|while|with|without|yield)\b/, + function: { + pattern: /(?:(?!\d)(?:\w|\\x[8-9a-fA-F][0-9a-fA-F])+|`[^`\r\n]+`)\*?(?:\[[^\]]+\])?(?=\s*\()/, + inside: { + operator: /\*$/ + } + }, + // We don't want to highlight operators inside backticks + ignore: { + pattern: /`[^`\r\n]+`/, + inside: { + punctuation: /`/ + } + }, + operator: { + // Look behind and look ahead prevent wrong highlighting of punctuations [. .] {. .} (. .) + // but allow the slice operator .. to take precedence over them + // One can define his own operators in Nim so all combination of operators might be an operator. + pattern: /(^|[({\[](?=\.\.)|(?![({\[]\.).)(?:(?:[=+\-*\/<>@$~&%|!?^:\\]|\.\.|\.(?![)}\]]))+|\b(?:and|div|of|or|in|is|isnot|mod|not|notin|shl|shr|xor)\b)/m, + lookbehind: true + }, + punctuation: /[({\[]\.|\.[)}\]]|[`(){}\[\],:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nix.4bccbf66.js b/assets/js/react-syntax-highlighter_languages_refractor_nix.4bccbf66.js new file mode 100644 index 000000000..ec3c32904 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nix.4bccbf66.js @@ -0,0 +1,60 @@ +"use strict"; +exports.id = 3821; +exports.ids = [3821]; +exports.modules = { + +/***/ 74426: +/***/ ((module) => { + + + +module.exports = nix +nix.displayName = 'nix' +nix.aliases = [] +function nix(Prism) { + Prism.languages.nix = { + comment: /\/\*[\s\S]*?\*\/|#.*/, + string: { + pattern: /"(?:[^"\\]|\\[\s\S])*"|''(?:(?!'')[\s\S]|''(?:'|\\|\$\{))*''/, + greedy: true, + inside: { + interpolation: { + // The lookbehind ensures the ${} is not preceded by \ or '' + pattern: /(^|(?:^|(?!'').)[^\\])\$\{(?:[^}]|\{[^}]*\})*}/, + lookbehind: true, + inside: { + antiquotation: { + pattern: /^\$(?=\{)/, + alias: 'variable' + } // See rest below + } + } + } + }, + url: [ + /\b(?:[a-z]{3,7}:\/\/)[\w\-+%~\/.:#=?&]+/, + { + pattern: /([^\/])(?:[\w\-+%~.:#=?&]*(?!\/\/)[\w\-+%~\/.:#=?&])?(?!\/\/)\/[\w\-+%~\/.:#=?&]*/, + lookbehind: true + } + ], + antiquotation: { + pattern: /\$(?=\{)/, + alias: 'variable' + }, + number: /\b\d+\b/, + keyword: /\b(?:assert|builtins|else|if|in|inherit|let|null|or|then|with)\b/, + function: /\b(?:abort|add|all|any|attrNames|attrValues|baseNameOf|compareVersions|concatLists|currentSystem|deepSeq|derivation|dirOf|div|elem(?:At)?|fetch(?:url|Tarball)|filter(?:Source)?|fromJSON|genList|getAttr|getEnv|hasAttr|hashString|head|import|intersectAttrs|is(?:Attrs|Bool|Function|Int|List|Null|String)|length|lessThan|listToAttrs|map|mul|parseDrvName|pathExists|read(?:Dir|File)|removeAttrs|replaceStrings|seq|sort|stringLength|sub(?:string)?|tail|throw|to(?:File|JSON|Path|String|XML)|trace|typeOf)\b|\bfoldl'\B/, + boolean: /\b(?:true|false)\b/, + operator: /[=!<>]=?|\+\+?|\|\||&&|\/\/|->?|[?@]/, + punctuation: /[{}()[\].,:;]/ + } + Prism.languages.nix.string.inside.interpolation.inside.rest = + Prism.languages.nix +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nix.e5f674b2.js b/assets/js/react-syntax-highlighter_languages_refractor_nix.e5f674b2.js new file mode 100644 index 000000000..7cfdbefc9 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nix.e5f674b2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3821],{4426:t=>{function e(t){t.languages.nix={comment:/\/\*[\s\S]*?\*\/|#.*/,string:{pattern:/"(?:[^"\\]|\\[\s\S])*"|''(?:(?!'')[\s\S]|''(?:'|\\|\$\{))*''/,greedy:!0,inside:{interpolation:{pattern:/(^|(?:^|(?!'').)[^\\])\$\{(?:[^}]|\{[^}]*\})*}/,lookbehind:!0,inside:{antiquotation:{pattern:/^\$(?=\{)/,alias:"variable"}}}}},url:[/\b(?:[a-z]{3,7}:\/\/)[\w\-+%~\/.:#=?&]+/,{pattern:/([^\/])(?:[\w\-+%~.:#=?&]*(?!\/\/)[\w\-+%~\/.:#=?&])?(?!\/\/)\/[\w\-+%~\/.:#=?&]*/,lookbehind:!0}],antiquotation:{pattern:/\$(?=\{)/,alias:"variable"},number:/\b\d+\b/,keyword:/\b(?:assert|builtins|else|if|in|inherit|let|null|or|then|with)\b/,function:/\b(?:abort|add|all|any|attrNames|attrValues|baseNameOf|compareVersions|concatLists|currentSystem|deepSeq|derivation|dirOf|div|elem(?:At)?|fetch(?:url|Tarball)|filter(?:Source)?|fromJSON|genList|getAttr|getEnv|hasAttr|hashString|head|import|intersectAttrs|is(?:Attrs|Bool|Function|Int|List|Null|String)|length|lessThan|listToAttrs|map|mul|parseDrvName|pathExists|read(?:Dir|File)|removeAttrs|replaceStrings|seq|sort|stringLength|sub(?:string)?|tail|throw|to(?:File|JSON|Path|String|XML)|trace|typeOf)\b|\bfoldl'\B/,boolean:/\b(?:true|false)\b/,operator:/[=!<>]=?|\+\+?|\|\||&&|\/\/|->?|[?@]/,punctuation:/[{}()[\].,:;]/},t.languages.nix.string.inside.interpolation.inside.rest=t.languages.nix}t.exports=e,e.displayName="nix",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nsis.d791ead2.js b/assets/js/react-syntax-highlighter_languages_refractor_nsis.d791ead2.js new file mode 100644 index 000000000..de8618d8a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nsis.d791ead2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3502],{8447:e=>{function t(e){e.languages.nsis={comment:{pattern:/(^|[^\\])(\/\*[\s\S]*?\*\/|[#;].*)/,lookbehind:!0},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},keyword:{pattern:/(^\s*)(?:Abort|Add(?:BrandingImage|Size)|AdvSplash|Allow(?:RootDirInstall|SkipFiles)|AutoCloseWindow|Banner|BG(?:Font|Gradient|Image)|BrandingText|BringToFront|Call(?:InstDLL)?|Caption|ChangeUI|CheckBitmap|ClearErrors|CompletedText|ComponentText|CopyFiles|CRCCheck|Create(?:Directory|Font|ShortCut)|Delete(?:INISec|INIStr|RegKey|RegValue)?|Detail(?:Print|sButtonText)|Dialer|Dir(?:Text|Var|Verify)|EnableWindow|Enum(?:RegKey|RegValue)|Exch|Exec(?:Shell(?:Wait)?|Wait)?|ExpandEnvStrings|File(?:BufSize|Close|ErrorText|Open|Read|ReadByte|ReadUTF16LE|ReadWord|WriteUTF16LE|Seek|Write|WriteByte|WriteWord)?|Find(?:Close|First|Next|Window)|FlushINI|Get(?:CurInstType|CurrentAddress|DlgItem|DLLVersion(?:Local)?|ErrorLevel|FileTime(?:Local)?|FullPathName|Function(?:Address|End)?|InstDirError|LabelAddress|TempFileName)|Goto|HideWindow|Icon|If(?:Abort|Errors|FileExists|RebootFlag|Silent)|InitPluginsDir|Install(?:ButtonText|Colors|Dir(?:RegKey)?)|InstProgressFlags|Inst(?:Type(?:GetText|SetText)?)|Int(?:64|Ptr)?CmpU?|Int(?:64)?Fmt|Int(?:Ptr)?Op|IsWindow|Lang(?:DLL|String)|License(?:BkColor|Data|ForceSelection|LangString|Text)|LoadLanguageFile|LockWindow|Log(?:Set|Text)|Manifest(?:DPIAware|SupportedOS)|Math|MessageBox|MiscButtonText|Name|Nop|ns(?:Dialogs|Exec)|NSISdl|OutFile|Page(?:Callbacks)?|PE(?:DllCharacteristics|SubsysVer)|Pop|Push|Quit|Read(?:EnvStr|INIStr|RegDWORD|RegStr)|Reboot|RegDLL|Rename|RequestExecutionLevel|ReserveFile|Return|RMDir|SearchPath|Section(?:End|GetFlags|GetInstTypes|GetSize|GetText|Group|In|SetFlags|SetInstTypes|SetSize|SetText)?|SendMessage|Set(?:AutoClose|BrandingImage|Compress|Compressor(?:DictSize)?|CtlColors|CurInstType|DatablockOptimize|DateSave|Details(?:Print|View)|ErrorLevel|Errors|FileAttributes|Font|OutPath|Overwrite|PluginUnload|RebootFlag|RegView|ShellVarContext|Silent)|Show(?:InstDetails|UninstDetails|Window)|Silent(?:Install|UnInstall)|Sleep|SpaceTexts|Splash|StartMenu|Str(?:CmpS?|Cpy|Len)|SubCaption|System|Unicode|Uninstall(?:ButtonText|Caption|Icon|SubCaption|Text)|UninstPage|UnRegDLL|UserInfo|Var|VI(?:AddVersionKey|FileVersion|ProductVersion)|VPatch|WindowIcon|Write(?:INIStr|Reg(?:Bin|DWORD|ExpandStr|MultiStr|None|Str)|Uninstaller)|XPStyle)\b/m,lookbehind:!0},property:/\b(?:admin|all|auto|both|colored|false|force|hide|highest|lastused|leave|listonly|none|normal|notset|off|on|open|print|show|silent|silentlog|smooth|textonly|true|user|ARCHIVE|FILE_(ATTRIBUTE_ARCHIVE|ATTRIBUTE_NORMAL|ATTRIBUTE_OFFLINE|ATTRIBUTE_READONLY|ATTRIBUTE_SYSTEM|ATTRIBUTE_TEMPORARY)|HK((CR|CU|LM)(32|64)?|DD|PD|U)|HKEY_(CLASSES_ROOT|CURRENT_CONFIG|CURRENT_USER|DYN_DATA|LOCAL_MACHINE|PERFORMANCE_DATA|USERS)|ID(ABORT|CANCEL|IGNORE|NO|OK|RETRY|YES)|MB_(ABORTRETRYIGNORE|DEFBUTTON1|DEFBUTTON2|DEFBUTTON3|DEFBUTTON4|ICONEXCLAMATION|ICONINFORMATION|ICONQUESTION|ICONSTOP|OK|OKCANCEL|RETRYCANCEL|RIGHT|RTLREADING|SETFOREGROUND|TOPMOST|USERICON|YESNO)|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SYSTEM|TEMPORARY)\b/,constant:/\${[\w\.:\^-]+}|\$\([\w\.:\^-]+\)/i,variable:/\$\w+/i,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--?|\+\+?|<=?|>=?|==?=?|&&?|\|\|?|[?*\/~^%]/,punctuation:/[{}[\];(),.:]/,important:{pattern:/(^\s*)!(?:addincludedir|addplugindir|appendfile|cd|define|delfile|echo|else|endif|error|execute|finalize|getdllversion|gettlbversion|ifdef|ifmacrodef|ifmacrondef|ifndef|if|include|insertmacro|macroend|macro|makensis|packhdr|pragma|searchparse|searchreplace|system|tempfile|undef|verbose|warning)\b/im,lookbehind:!0}}}e.exports=t,t.displayName="nsis",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_nsis.f98168b6.js b/assets/js/react-syntax-highlighter_languages_refractor_nsis.f98168b6.js new file mode 100644 index 000000000..9e6858999 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_nsis.f98168b6.js @@ -0,0 +1,50 @@ +"use strict"; +exports.id = 3502; +exports.ids = [3502]; +exports.modules = { + +/***/ 88447: +/***/ ((module) => { + + + +module.exports = nsis +nsis.displayName = 'nsis' +nsis.aliases = [] +function nsis(Prism) { + /** + * Original by Jan T. Sott (http://github.com/idleberg) + * + * Includes all commands and plug-ins shipped with NSIS 3.02 + */ + Prism.languages.nsis = { + comment: { + pattern: /(^|[^\\])(\/\*[\s\S]*?\*\/|[#;].*)/, + lookbehind: true + }, + string: { + pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + keyword: { + pattern: /(^\s*)(?:Abort|Add(?:BrandingImage|Size)|AdvSplash|Allow(?:RootDirInstall|SkipFiles)|AutoCloseWindow|Banner|BG(?:Font|Gradient|Image)|BrandingText|BringToFront|Call(?:InstDLL)?|Caption|ChangeUI|CheckBitmap|ClearErrors|CompletedText|ComponentText|CopyFiles|CRCCheck|Create(?:Directory|Font|ShortCut)|Delete(?:INISec|INIStr|RegKey|RegValue)?|Detail(?:Print|sButtonText)|Dialer|Dir(?:Text|Var|Verify)|EnableWindow|Enum(?:RegKey|RegValue)|Exch|Exec(?:Shell(?:Wait)?|Wait)?|ExpandEnvStrings|File(?:BufSize|Close|ErrorText|Open|Read|ReadByte|ReadUTF16LE|ReadWord|WriteUTF16LE|Seek|Write|WriteByte|WriteWord)?|Find(?:Close|First|Next|Window)|FlushINI|Get(?:CurInstType|CurrentAddress|DlgItem|DLLVersion(?:Local)?|ErrorLevel|FileTime(?:Local)?|FullPathName|Function(?:Address|End)?|InstDirError|LabelAddress|TempFileName)|Goto|HideWindow|Icon|If(?:Abort|Errors|FileExists|RebootFlag|Silent)|InitPluginsDir|Install(?:ButtonText|Colors|Dir(?:RegKey)?)|InstProgressFlags|Inst(?:Type(?:GetText|SetText)?)|Int(?:64|Ptr)?CmpU?|Int(?:64)?Fmt|Int(?:Ptr)?Op|IsWindow|Lang(?:DLL|String)|License(?:BkColor|Data|ForceSelection|LangString|Text)|LoadLanguageFile|LockWindow|Log(?:Set|Text)|Manifest(?:DPIAware|SupportedOS)|Math|MessageBox|MiscButtonText|Name|Nop|ns(?:Dialogs|Exec)|NSISdl|OutFile|Page(?:Callbacks)?|PE(?:DllCharacteristics|SubsysVer)|Pop|Push|Quit|Read(?:EnvStr|INIStr|RegDWORD|RegStr)|Reboot|RegDLL|Rename|RequestExecutionLevel|ReserveFile|Return|RMDir|SearchPath|Section(?:End|GetFlags|GetInstTypes|GetSize|GetText|Group|In|SetFlags|SetInstTypes|SetSize|SetText)?|SendMessage|Set(?:AutoClose|BrandingImage|Compress|Compressor(?:DictSize)?|CtlColors|CurInstType|DatablockOptimize|DateSave|Details(?:Print|View)|ErrorLevel|Errors|FileAttributes|Font|OutPath|Overwrite|PluginUnload|RebootFlag|RegView|ShellVarContext|Silent)|Show(?:InstDetails|UninstDetails|Window)|Silent(?:Install|UnInstall)|Sleep|SpaceTexts|Splash|StartMenu|Str(?:CmpS?|Cpy|Len)|SubCaption|System|Unicode|Uninstall(?:ButtonText|Caption|Icon|SubCaption|Text)|UninstPage|UnRegDLL|UserInfo|Var|VI(?:AddVersionKey|FileVersion|ProductVersion)|VPatch|WindowIcon|Write(?:INIStr|Reg(?:Bin|DWORD|ExpandStr|MultiStr|None|Str)|Uninstaller)|XPStyle)\b/m, + lookbehind: true + }, + property: /\b(?:admin|all|auto|both|colored|false|force|hide|highest|lastused|leave|listonly|none|normal|notset|off|on|open|print|show|silent|silentlog|smooth|textonly|true|user|ARCHIVE|FILE_(ATTRIBUTE_ARCHIVE|ATTRIBUTE_NORMAL|ATTRIBUTE_OFFLINE|ATTRIBUTE_READONLY|ATTRIBUTE_SYSTEM|ATTRIBUTE_TEMPORARY)|HK((CR|CU|LM)(32|64)?|DD|PD|U)|HKEY_(CLASSES_ROOT|CURRENT_CONFIG|CURRENT_USER|DYN_DATA|LOCAL_MACHINE|PERFORMANCE_DATA|USERS)|ID(ABORT|CANCEL|IGNORE|NO|OK|RETRY|YES)|MB_(ABORTRETRYIGNORE|DEFBUTTON1|DEFBUTTON2|DEFBUTTON3|DEFBUTTON4|ICONEXCLAMATION|ICONINFORMATION|ICONQUESTION|ICONSTOP|OK|OKCANCEL|RETRYCANCEL|RIGHT|RTLREADING|SETFOREGROUND|TOPMOST|USERICON|YESNO)|NORMAL|OFFLINE|READONLY|SHCTX|SHELL_CONTEXT|SYSTEM|TEMPORARY)\b/, + constant: /\${[\w\.:\^-]+}|\$\([\w\.:\^-]+\)/i, + variable: /\$\w+/i, + number: /\b0x[\dA-Fa-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee]-?\d+)?/, + operator: /--?|\+\+?|<=?|>=?|==?=?|&&?|\|\|?|[?*\/~^%]/, + punctuation: /[{}[\];(),.:]/, + important: { + pattern: /(^\s*)!(?:addincludedir|addplugindir|appendfile|cd|define|delfile|echo|else|endif|error|execute|finalize|getdllversion|gettlbversion|ifdef|ifmacrodef|ifmacrondef|ifndef|if|include|insertmacro|macroend|macro|makensis|packhdr|pragma|searchparse|searchreplace|system|tempfile|undef|verbose|warning)\b/im, + lookbehind: true + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_objectivec.4a41522c.js b/assets/js/react-syntax-highlighter_languages_refractor_objectivec.4a41522c.js new file mode 100644 index 000000000..11a777a03 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_objectivec.4a41522c.js @@ -0,0 +1,76 @@ +"use strict"; +exports.id = 8336; +exports.ids = [8336,8950]; +exports.modules = { + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }), + +/***/ 16032: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +module.exports = objectivec +objectivec.displayName = 'objectivec' +objectivec.aliases = [] +function objectivec(Prism) { + Prism.register(refractorC) + Prism.languages.objectivec = Prism.languages.extend('c', { + keyword: /\b(?:asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while|in|self|super)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/, + string: /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|@"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/, + operator: /-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/ + }) + delete Prism.languages.objectivec['class-name'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_objectivec.9e2a00d2.js b/assets/js/react-syntax-highlighter_languages_refractor_objectivec.9e2a00d2.js new file mode 100644 index 000000000..4a8cb6039 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_objectivec.9e2a00d2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8336,8950],{5806:e=>{function t(e){e.languages.c=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),e.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete e.languages.c.boolean}e.exports=t,t.displayName="c",t.aliases=[]},6032:(e,t,n)=>{var i=n(5806);function s(e){e.register(i),e.languages.objectivec=e.languages.extend("c",{keyword:/\b(?:asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while|in|self|super)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,string:/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1|@"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete e.languages.objectivec["class-name"]}e.exports=s,s.displayName="objectivec",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ocaml.520df09d.js b/assets/js/react-syntax-highlighter_languages_refractor_ocaml.520df09d.js new file mode 100644 index 000000000..20f2f91a2 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ocaml.520df09d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8992],{3607:e=>{function t(e){e.languages.ocaml={comment:/\(\*[\s\S]*?\*\)/,string:[{pattern:/"(?:\\.|[^\\\r\n"])*"/,greedy:!0},{pattern:/(['`])(?:\\(?:\d+|x[\da-f]+|.)|(?!\1)[^\\\r\n])\1/i,greedy:!0}],number:/\b(?:0x[\da-f][\da-f_]+|(?:0[bo])?\d[\d_]*\.?[\d_]*(?:e[+-]?[\d_]+)?)/i,type:{pattern:/\B['`]\w*/,alias:"variable"},directive:{pattern:/\B#\w+/,alias:"function"},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|object|of|open|prefix|private|rec|then|sig|struct|to|try|type|val|value|virtual|where|while|with)\b/,boolean:/\b(?:false|true)\b/,operator:/:=|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lxor|lsl|lsr|mod|nor|or)\b/,punctuation:/[(){}\[\]|_.,:;]/}}e.exports=t,t.displayName="ocaml",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ocaml.aab7b0d5.js b/assets/js/react-syntax-highlighter_languages_refractor_ocaml.aab7b0d5.js new file mode 100644 index 000000000..920b2f884 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ocaml.aab7b0d5.js @@ -0,0 +1,48 @@ +"use strict"; +exports.id = 8992; +exports.ids = [8992]; +exports.modules = { + +/***/ 33607: +/***/ ((module) => { + + + +module.exports = ocaml +ocaml.displayName = 'ocaml' +ocaml.aliases = [] +function ocaml(Prism) { + Prism.languages.ocaml = { + comment: /\(\*[\s\S]*?\*\)/, + string: [ + { + pattern: /"(?:\\.|[^\\\r\n"])*"/, + greedy: true + }, + { + pattern: /(['`])(?:\\(?:\d+|x[\da-f]+|.)|(?!\1)[^\\\r\n])\1/i, + greedy: true + } + ], + number: /\b(?:0x[\da-f][\da-f_]+|(?:0[bo])?\d[\d_]*\.?[\d_]*(?:e[+-]?[\d_]+)?)/i, + type: { + pattern: /\B['`]\w*/, + alias: 'variable' + }, + directive: { + pattern: /\B#\w+/, + alias: 'function' + }, + 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|object|of|open|prefix|private|rec|then|sig|struct|to|try|type|val|value|virtual|where|while|with)\b/, + boolean: /\b(?:false|true)\b/, + // Custom operators are allowed + operator: /:=|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lxor|lsl|lsr|mod|nor|or)\b/, + punctuation: /[(){}\[\]|_.,:;]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_opencl.85faa382.js b/assets/js/react-syntax-highlighter_languages_refractor_opencl.85faa382.js new file mode 100644 index 000000000..1bb259e4e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_opencl.85faa382.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8e3,8950,9692],{5806:_=>{function E(_){_.languages.c=_.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),_.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete _.languages.c.boolean}_.exports=E,E.displayName="c",E.aliases=[]},96:(_,E,e)=>{var t=e(5806);function I(_){_.register(t),_.languages.cpp=_.languages.extend("c",{"class-name":{pattern:/(\b(?:class|enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i,greedy:!0},operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:true|false)\b/}),_.languages.insertBefore("cpp","string",{"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}})}_.exports=I,I.displayName="cpp",I.aliases=[]},2001:(_,E,e)=>{var t=e(5806),I=e(96);function R(_){_.register(t),_.register(I),function(_){_.languages.opencl=_.languages.extend("c",{keyword:/\b(?:__attribute__|(?:__)?(?:constant|global|kernel|local|private|read_only|read_write|write_only)|_cl_(?:command_queue|context|device_id|event|kernel|mem|platform_id|program|sampler)|auto|break|case|cl_(?:image_format|mem_fence_flags)|clk_event_t|complex|const|continue|default|do|(?:float|double)(?:16(?:x(?:1|16|2|4|8))?|1x(?:1|16|2|4|8)|2(?:x(?:1|16|2|4|8))?|3|4(?:x(?:1|16|2|4|8))?|8(?:x(?:1|16|2|4|8))?)?|else|enum|event_t|extern|for|goto|(?:u?(?:char|short|int|long)|half|quad|bool)(?:2|3|4|8|16)?|if|image(?:1d_(?:array_|buffer_)?t|2d_(?:array_(?:depth_|msaa_depth_|msaa_)?|depth_|msaa_depth_|msaa_)?t|3d_t)|imaginary|inline|intptr_t|ndrange_t|packed|pipe|ptrdiff_t|queue_t|register|reserve_id_t|restrict|return|sampler_t|signed|size_t|sizeof|static|struct|switch|typedef|uintptr_t|uniform|union|unsigned|void|volatile|while)\b/,"function-opencl-kernel":{pattern:/\b(?:abs(?:_diff)?|a?(?:cos|sin)(?:h|pi)?|add_sat|aligned|all|and|any|async(?:_work_group_copy|_work_group_strided_copy)?|atan(?:2?(?:pi)?|h)?|atom_(?:add|and|cmpxchg|dec|inc|max|min|or|sub|xchg|xor)|barrier|bitselect|cbrt|ceil|clamp|clz|copies|copysign|cross|degrees|distance|dot|endian|erf|erfc|exp(?:2|10)?|expm1|fabs|fast_(?:distance|length|normalize)|fdim|floor|fma|fmax|fmin|fract|frexp|fro|from|get_(?:global_(?:id|offset|size)|group_id|image_(?:channel_data_type|channel_order|depth|dim|height|width)|local(?:_id|_size)|num_groups|work_dim)|hadd|(?:half|native)_(?:cos|divide|exp(?:2|10)?|log(?:2|10)?|powr|recip|r?sqrt|sin|tan)|hypot|ilogb|is(?:equal|finite|greater(?:equal)?|inf|less(?:equal|greater)?|nan|normal|notequal|(?:un)?ordered)|ldexp|length|lgamma|lgamma_r|log(?:b|1p|2|10)?|mad(?:24|_hi|_sat)?|max|mem(?:_fence)?|min|mix|modf|mul24|mul_hi|nan|nextafter|normalize|pow[nr]?|prefetch|radians|read_(?:image)(?:f|h|u?i)|read_mem_fence|remainder|remquo|reqd_work_group_size|rhadd|rint|rootn|rotate|round|rsqrt|select|shuffle2?|sign|signbit|sincos|smoothstep|sqrt|step|sub_sat|tan|tanh|tanpi|tgamma|to|trunc|upsample|vec_(?:step|type_hint)|v(?:load|store)(?:_half)?(?:2|3|4|8|16)?|v(?:loada_half|storea?(?:_half)?)(?:2|3|4|8|16)?(?:_(?:rte|rtn|rtp|rtz))?|wait_group_events|work_group_size_hint|write_image(?:f|h|u?i)|write_mem_fence)\b/,alias:"function"},"constant-opencl-kernel":{pattern:/\b(?:CHAR_(?:BIT|MAX|MIN)|CLK_(?:ADDRESS_(?:CLAMP(?:_TO_EDGE)?|NONE|REPEAT)|FILTER_(?:LINEAR|NEAREST)|(?:LOCAL|GLOBAL)_MEM_FENCE|NORMALIZED_COORDS_(?:FALSE|TRUE))|CL_(?:BGRA|(?:HALF_)?FLOAT|INTENSITY|LUMINANCE|A?R?G?B?[Ax]?|(?:(?:UN)?SIGNED|[US]NORM)_(?:INT(?:8|16|32))|UNORM_(?:INT_101010|SHORT_(?:555|565)))|(?:DBL|FLT)_(?:DIG|EPSILON|MANT_DIG|(?:MIN|MAX)(?:(?:_10)?_EXP)?)|FLT_RADIX|HUGE_VALF|INFINITY|(?:INT|LONG|SCHAR|SHRT|UCHAR|UINT|ULONG)_(?:MAX|MIN)|MAXFLOAT|M_(?:[12]_PI|2_SQRTPI|E|LN(?:2|10)|LOG(?:10|2)E?|PI[24]?|SQRT(?:1_2|2))|NAN)\b/,alias:"constant"}});var E={"type-opencl-host":{pattern:/\b(?:cl_(?:GLenum|GLint|GLuin|addressing_mode|bitfield|bool|buffer_create_type|build_status|channel_(?:order|type)|(?:u?(?:char|short|int|long)|float|double)(?:2|3|4|8|16)?|command_(?:queue(?:_info|_properties)?|type)|context(?:_info|_properties)?|device_(?:exec_capabilities|fp_config|id|info|local_mem_type|mem_cache_type|type)|(?:event|sampler)(?:_info)?|filter_mode|half|image_info|kernel(?:_info|_work_group_info)?|map_flags|mem(?:_flags|_info|_object_type)?|platform_(?:id|info)|profiling_info|program(?:_build_info|_info)?))\b/,alias:"keyword"},"boolean-opencl-host":{pattern:/\bCL_(?:TRUE|FALSE)\b/,alias:"boolean"},"constant-opencl-host":{pattern:/\bCL_(?:A|ABGR|ADDRESS_(?:CLAMP(?:_TO_EDGE)?|MIRRORED_REPEAT|NONE|REPEAT)|ARGB|BGRA|BLOCKING|BUFFER_CREATE_TYPE_REGION|BUILD_(?:ERROR|IN_PROGRESS|NONE|PROGRAM_FAILURE|SUCCESS)|COMMAND_(?:ACQUIRE_GL_OBJECTS|BARRIER|COPY_(?:BUFFER(?:_RECT|_TO_IMAGE)?|IMAGE(?:_TO_BUFFER)?)|FILL_(?:BUFFER|IMAGE)|MAP(?:_BUFFER|_IMAGE)|MARKER|MIGRATE(?:_SVM)?_MEM_OBJECTS|NATIVE_KERNEL|NDRANGE_KERNEL|READ_(?:BUFFER(?:_RECT)?|IMAGE)|RELEASE_GL_OBJECTS|SVM_(?:FREE|MAP|MEMCPY|MEMFILL|UNMAP)|TASK|UNMAP_MEM_OBJECT|USER|WRITE_(?:BUFFER(?:_RECT)?|IMAGE))|COMPILER_NOT_AVAILABLE|COMPILE_PROGRAM_FAILURE|COMPLETE|CONTEXT_(?:DEVICES|INTEROP_USER_SYNC|NUM_DEVICES|PLATFORM|PROPERTIES|REFERENCE_COUNT)|DEPTH(?:_STENCIL)?|DEVICE_(?:ADDRESS_BITS|AFFINITY_DOMAIN_(?:L[1-4]_CACHE|NEXT_PARTITIONABLE|NUMA)|AVAILABLE|BUILT_IN_KERNELS|COMPILER_AVAILABLE|DOUBLE_FP_CONFIG|ENDIAN_LITTLE|ERROR_CORRECTION_SUPPORT|EXECUTION_CAPABILITIES|EXTENSIONS|GLOBAL_(?:MEM_(?:CACHELINE_SIZE|CACHE_SIZE|CACHE_TYPE|SIZE)|VARIABLE_PREFERRED_TOTAL_SIZE)|HOST_UNIFIED_MEMORY|IL_VERSION|IMAGE(?:2D_MAX_(?:HEIGHT|WIDTH)|3D_MAX_(?:DEPTH|HEIGHT|WIDTH)|_BASE_ADDRESS_ALIGNMENT|_MAX_ARRAY_SIZE|_MAX_BUFFER_SIZE|_PITCH_ALIGNMENT|_SUPPORT)|LINKER_AVAILABLE|LOCAL_MEM_SIZE|LOCAL_MEM_TYPE|MAX_(?:CLOCK_FREQUENCY|COMPUTE_UNITS|CONSTANT_ARGS|CONSTANT_BUFFER_SIZE|GLOBAL_VARIABLE_SIZE|MEM_ALLOC_SIZE|NUM_SUB_GROUPS|ON_DEVICE_(?:EVENTS|QUEUES)|PARAMETER_SIZE|PIPE_ARGS|READ_IMAGE_ARGS|READ_WRITE_IMAGE_ARGS|SAMPLERS|WORK_GROUP_SIZE|WORK_ITEM_DIMENSIONS|WORK_ITEM_SIZES|WRITE_IMAGE_ARGS)|MEM_BASE_ADDR_ALIGN|MIN_DATA_TYPE_ALIGN_SIZE|NAME|NATIVE_VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT)|NOT_(?:AVAILABLE|FOUND)|OPENCL_C_VERSION|PARENT_DEVICE|PARTITION_(?:AFFINITY_DOMAIN|BY_AFFINITY_DOMAIN|BY_COUNTS|BY_COUNTS_LIST_END|EQUALLY|FAILED|MAX_SUB_DEVICES|PROPERTIES|TYPE)|PIPE_MAX_(?:ACTIVE_RESERVATIONS|PACKET_SIZE)|PLATFORM|PREFERRED_(?:GLOBAL_ATOMIC_ALIGNMENT|INTEROP_USER_SYNC|LOCAL_ATOMIC_ALIGNMENT|PLATFORM_ATOMIC_ALIGNMENT|VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT))|PRINTF_BUFFER_SIZE|PROFILE|PROFILING_TIMER_RESOLUTION|QUEUE_(?:ON_(?:DEVICE_(?:MAX_SIZE|PREFERRED_SIZE|PROPERTIES)|HOST_PROPERTIES)|PROPERTIES)|REFERENCE_COUNT|SINGLE_FP_CONFIG|SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS|SVM_(?:ATOMICS|CAPABILITIES|COARSE_GRAIN_BUFFER|FINE_GRAIN_BUFFER|FINE_GRAIN_SYSTEM)|TYPE(?:_ACCELERATOR|_ALL|_CPU|_CUSTOM|_DEFAULT|_GPU)?|VENDOR(?:_ID)?|VERSION)|DRIVER_VERSION|EVENT_(?:COMMAND_(?:EXECUTION_STATUS|QUEUE|TYPE)|CONTEXT|REFERENCE_COUNT)|EXEC_(?:KERNEL|NATIVE_KERNEL|STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST)|FILTER_(?:LINEAR|NEAREST)|FLOAT|FP_(?:CORRECTLY_ROUNDED_DIVIDE_SQRT|DENORM|FMA|INF_NAN|ROUND_TO_INF|ROUND_TO_NEAREST|ROUND_TO_ZERO|SOFT_FLOAT)|GLOBAL|HALF_FLOAT|IMAGE_(?:ARRAY_SIZE|BUFFER|DEPTH|ELEMENT_SIZE|FORMAT|FORMAT_MISMATCH|FORMAT_NOT_SUPPORTED|HEIGHT|NUM_MIP_LEVELS|NUM_SAMPLES|ROW_PITCH|SLICE_PITCH|WIDTH)|INTENSITY|INVALID_(?:ARG_INDEX|ARG_SIZE|ARG_VALUE|BINARY|BUFFER_SIZE|BUILD_OPTIONS|COMMAND_QUEUE|COMPILER_OPTIONS|CONTEXT|DEVICE|DEVICE_PARTITION_COUNT|DEVICE_QUEUE|DEVICE_TYPE|EVENT|EVENT_WAIT_LIST|GLOBAL_OFFSET|GLOBAL_WORK_SIZE|GL_OBJECT|HOST_PTR|IMAGE_DESCRIPTOR|IMAGE_FORMAT_DESCRIPTOR|IMAGE_SIZE|KERNEL|KERNEL_ARGS|KERNEL_DEFINITION|KERNEL_NAME|LINKER_OPTIONS|MEM_OBJECT|MIP_LEVEL|OPERATION|PIPE_SIZE|PLATFORM|PROGRAM|PROGRAM_EXECUTABLE|PROPERTY|QUEUE_PROPERTIES|SAMPLER|VALUE|WORK_DIMENSION|WORK_GROUP_SIZE|WORK_ITEM_SIZE)|KERNEL_(?:ARG_(?:ACCESS_(?:NONE|QUALIFIER|READ_ONLY|READ_WRITE|WRITE_ONLY)|ADDRESS_(?:CONSTANT|GLOBAL|LOCAL|PRIVATE|QUALIFIER)|INFO_NOT_AVAILABLE|NAME|TYPE_(?:CONST|NAME|NONE|PIPE|QUALIFIER|RESTRICT|VOLATILE))|ATTRIBUTES|COMPILE_NUM_SUB_GROUPS|COMPILE_WORK_GROUP_SIZE|CONTEXT|EXEC_INFO_SVM_FINE_GRAIN_SYSTEM|EXEC_INFO_SVM_PTRS|FUNCTION_NAME|GLOBAL_WORK_SIZE|LOCAL_MEM_SIZE|LOCAL_SIZE_FOR_SUB_GROUP_COUNT|MAX_NUM_SUB_GROUPS|MAX_SUB_GROUP_SIZE_FOR_NDRANGE|NUM_ARGS|PREFERRED_WORK_GROUP_SIZE_MULTIPLE|PRIVATE_MEM_SIZE|PROGRAM|REFERENCE_COUNT|SUB_GROUP_COUNT_FOR_NDRANGE|WORK_GROUP_SIZE)|LINKER_NOT_AVAILABLE|LINK_PROGRAM_FAILURE|LOCAL|LUMINANCE|MAP_(?:FAILURE|READ|WRITE|WRITE_INVALIDATE_REGION)|MEM_(?:ALLOC_HOST_PTR|ASSOCIATED_MEMOBJECT|CONTEXT|COPY_HOST_PTR|COPY_OVERLAP|FLAGS|HOST_NO_ACCESS|HOST_PTR|HOST_READ_ONLY|HOST_WRITE_ONLY|KERNEL_READ_AND_WRITE|MAP_COUNT|OBJECT_(?:ALLOCATION_FAILURE|BUFFER|IMAGE1D|IMAGE1D_ARRAY|IMAGE1D_BUFFER|IMAGE2D|IMAGE2D_ARRAY|IMAGE3D|PIPE)|OFFSET|READ_ONLY|READ_WRITE|REFERENCE_COUNT|SIZE|SVM_ATOMICS|SVM_FINE_GRAIN_BUFFER|TYPE|USES_SVM_POINTER|USE_HOST_PTR|WRITE_ONLY)|MIGRATE_MEM_OBJECT_(?:CONTENT_UNDEFINED|HOST)|MISALIGNED_SUB_BUFFER_OFFSET|NONE|NON_BLOCKING|OUT_OF_(?:HOST_MEMORY|RESOURCES)|PIPE_(?:MAX_PACKETS|PACKET_SIZE)|PLATFORM_(?:EXTENSIONS|HOST_TIMER_RESOLUTION|NAME|PROFILE|VENDOR|VERSION)|PROFILING_(?:COMMAND_(?:COMPLETE|END|QUEUED|START|SUBMIT)|INFO_NOT_AVAILABLE)|PROGRAM_(?:BINARIES|BINARY_SIZES|BINARY_TYPE(?:_COMPILED_OBJECT|_EXECUTABLE|_LIBRARY|_NONE)?|BUILD_(?:GLOBAL_VARIABLE_TOTAL_SIZE|LOG|OPTIONS|STATUS)|CONTEXT|DEVICES|IL|KERNEL_NAMES|NUM_DEVICES|NUM_KERNELS|REFERENCE_COUNT|SOURCE)|QUEUED|QUEUE_(?:CONTEXT|DEVICE|DEVICE_DEFAULT|ON_DEVICE|ON_DEVICE_DEFAULT|OUT_OF_ORDER_EXEC_MODE_ENABLE|PROFILING_ENABLE|PROPERTIES|REFERENCE_COUNT|SIZE)|R|RA|READ_(?:ONLY|WRITE)_CACHE|RG|RGB|RGBA|RGBx|RGx|RUNNING|Rx|SAMPLER_(?:ADDRESSING_MODE|CONTEXT|FILTER_MODE|LOD_MAX|LOD_MIN|MIP_FILTER_MODE|NORMALIZED_COORDS|REFERENCE_COUNT)|(?:UN)?SIGNED_INT(?:8|16|32)|SNORM_INT(?:8|16)|SUBMITTED|SUCCESS|UNORM_INT(?:16|24|8|_101010|_101010_2)|UNORM_SHORT_(?:555|565)|VERSION_(?:1_0|1_1|1_2|2_0|2_1)|sBGRA|sRGB|sRGBA|sRGBx)\b/,alias:"constant"},"function-opencl-host":{pattern:/\bcl(?:BuildProgram|CloneKernel|CompileProgram|Create(?:Buffer|CommandQueue(?:WithProperties)?|Context|ContextFromType|Image|Image2D|Image3D|Kernel|KernelsInProgram|Pipe|ProgramWith(?:Binary|BuiltInKernels|IL|Source)|Sampler|SamplerWithProperties|SubBuffer|SubDevices|UserEvent)|Enqueue(?:(?:Barrier|Marker)(?:WithWaitList)?|Copy(?:Buffer(?:Rect|ToImage)?|Image(?:ToBuffer)?)|(?:Fill|Map)(?:Buffer|Image)|MigrateMemObjects|NDRangeKernel|NativeKernel|(?:Read|Write)(?:Buffer(?:Rect)?|Image)|SVM(?:Free|Map|MemFill|Memcpy|MigrateMem|Unmap)|Task|UnmapMemObject|WaitForEvents)|Finish|Flush|Get(?:CommandQueueInfo|ContextInfo|Device(?:AndHostTimer|IDs|Info)|Event(?:Profiling)?Info|ExtensionFunctionAddress(?:ForPlatform)?|HostTimer|ImageInfo|Kernel(?:ArgInfo|Info|SubGroupInfo|WorkGroupInfo)|MemObjectInfo|PipeInfo|Platform(?:IDs|Info)|Program(?:Build)?Info|SamplerInfo|SupportedImageFormats)|LinkProgram|(?:Release|Retain)(?:CommandQueue|Context|Device|Event|Kernel|MemObject|Program|Sampler)|SVM(?:Alloc|Free)|Set(?:CommandQueueProperty|DefaultDeviceCommandQueue|EventCallback|Kernel(?:Arg(?:SVMPointer)?|ExecInfo)|Kernel|MemObjectDestructorCallback|UserEventStatus)|Unload(?:Platform)?Compiler|WaitForEvents)\b/,alias:"function"}};_.languages.insertBefore("c","keyword",E),E["type-opencl-host-c++"]={pattern:/\b(?:Buffer|BufferGL|BufferRenderGL|CommandQueue|Context|Device|DeviceCommandQueue|EnqueueArgs|Event|Image|Image1D|Image1DArray|Image1DBuffer|Image2D|Image2DArray|Image2DGL|Image3D|Image3DGL|ImageFormat|ImageGL|Kernel|KernelFunctor|LocalSpaceArg|Memory|NDRange|Pipe|Platform|Program|Sampler|SVMAllocator|SVMTraitAtomic|SVMTraitCoarse|SVMTraitFine|SVMTraitReadOnly|SVMTraitReadWrite|SVMTraitWriteOnly|UserEvent)\b/,alias:"keyword"},_.languages.insertBefore("cpp","keyword",E)}(_)}_.exports=R,R.displayName="opencl",R.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_opencl.e3941aa2.js b/assets/js/react-syntax-highlighter_languages_refractor_opencl.e3941aa2.js new file mode 100644 index 000000000..9c43291a4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_opencl.e3941aa2.js @@ -0,0 +1,152 @@ +"use strict"; +exports.id = 8000; +exports.ids = [8000,8950,9692]; +exports.modules = { + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }), + +/***/ 80096: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +module.exports = cpp +cpp.displayName = 'cpp' +cpp.aliases = [] +function cpp(Prism) { + Prism.register(refractorC) + Prism.languages.cpp = Prism.languages.extend('c', { + 'class-name': { + pattern: /(\b(?:class|enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/, + number: { + pattern: /(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i, + greedy: true + }, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/, + boolean: /\b(?:true|false)\b/ + }) + Prism.languages.insertBefore('cpp', 'string', { + 'raw-string': { + pattern: /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/, + alias: 'string', + greedy: true + } + }) +} + + +/***/ }), + +/***/ 22001: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +var refractorCpp = __webpack_require__(80096) +module.exports = opencl +opencl.displayName = 'opencl' +opencl.aliases = [] +function opencl(Prism) { + Prism.register(refractorC) + Prism.register(refractorCpp) + ;(function(Prism) { + /* OpenCL kernel language */ + Prism.languages.opencl = Prism.languages.extend('c', { + // Extracted from the official specs (2.0) and http://streamcomputing.eu/downloads/?opencl.lang (opencl-keywords, opencl-types) and http://sourceforge.net/tracker/?func=detail&aid=2957794&group_id=95717&atid=612384 (Words2, partly Words3) + keyword: /\b(?:__attribute__|(?:__)?(?:constant|global|kernel|local|private|read_only|read_write|write_only)|_cl_(?:command_queue|context|device_id|event|kernel|mem|platform_id|program|sampler)|auto|break|case|cl_(?:image_format|mem_fence_flags)|clk_event_t|complex|const|continue|default|do|(?:float|double)(?:16(?:x(?:1|16|2|4|8))?|1x(?:1|16|2|4|8)|2(?:x(?:1|16|2|4|8))?|3|4(?:x(?:1|16|2|4|8))?|8(?:x(?:1|16|2|4|8))?)?|else|enum|event_t|extern|for|goto|(?:u?(?:char|short|int|long)|half|quad|bool)(?:2|3|4|8|16)?|if|image(?:1d_(?:array_|buffer_)?t|2d_(?:array_(?:depth_|msaa_depth_|msaa_)?|depth_|msaa_depth_|msaa_)?t|3d_t)|imaginary|inline|intptr_t|ndrange_t|packed|pipe|ptrdiff_t|queue_t|register|reserve_id_t|restrict|return|sampler_t|signed|size_t|sizeof|static|struct|switch|typedef|uintptr_t|uniform|union|unsigned|void|volatile|while)\b/, + // Extracted from http://streamcomputing.eu/downloads/?opencl.lang (global-vars, opencl-dev) + 'function-opencl-kernel': { + pattern: /\b(?:abs(?:_diff)?|a?(?:cos|sin)(?:h|pi)?|add_sat|aligned|all|and|any|async(?:_work_group_copy|_work_group_strided_copy)?|atan(?:2?(?:pi)?|h)?|atom_(?:add|and|cmpxchg|dec|inc|max|min|or|sub|xchg|xor)|barrier|bitselect|cbrt|ceil|clamp|clz|copies|copysign|cross|degrees|distance|dot|endian|erf|erfc|exp(?:2|10)?|expm1|fabs|fast_(?:distance|length|normalize)|fdim|floor|fma|fmax|fmin|fract|frexp|fro|from|get_(?:global_(?:id|offset|size)|group_id|image_(?:channel_data_type|channel_order|depth|dim|height|width)|local(?:_id|_size)|num_groups|work_dim)|hadd|(?:half|native)_(?:cos|divide|exp(?:2|10)?|log(?:2|10)?|powr|recip|r?sqrt|sin|tan)|hypot|ilogb|is(?:equal|finite|greater(?:equal)?|inf|less(?:equal|greater)?|nan|normal|notequal|(?:un)?ordered)|ldexp|length|lgamma|lgamma_r|log(?:b|1p|2|10)?|mad(?:24|_hi|_sat)?|max|mem(?:_fence)?|min|mix|modf|mul24|mul_hi|nan|nextafter|normalize|pow[nr]?|prefetch|radians|read_(?:image)(?:f|h|u?i)|read_mem_fence|remainder|remquo|reqd_work_group_size|rhadd|rint|rootn|rotate|round|rsqrt|select|shuffle2?|sign|signbit|sincos|smoothstep|sqrt|step|sub_sat|tan|tanh|tanpi|tgamma|to|trunc|upsample|vec_(?:step|type_hint)|v(?:load|store)(?:_half)?(?:2|3|4|8|16)?|v(?:loada_half|storea?(?:_half)?)(?:2|3|4|8|16)?(?:_(?:rte|rtn|rtp|rtz))?|wait_group_events|work_group_size_hint|write_image(?:f|h|u?i)|write_mem_fence)\b/, + alias: 'function' + }, + // Extracted from http://streamcomputing.eu/downloads/?opencl.lang (opencl-const) + 'constant-opencl-kernel': { + pattern: /\b(?:CHAR_(?:BIT|MAX|MIN)|CLK_(?:ADDRESS_(?:CLAMP(?:_TO_EDGE)?|NONE|REPEAT)|FILTER_(?:LINEAR|NEAREST)|(?:LOCAL|GLOBAL)_MEM_FENCE|NORMALIZED_COORDS_(?:FALSE|TRUE))|CL_(?:BGRA|(?:HALF_)?FLOAT|INTENSITY|LUMINANCE|A?R?G?B?[Ax]?|(?:(?:UN)?SIGNED|[US]NORM)_(?:INT(?:8|16|32))|UNORM_(?:INT_101010|SHORT_(?:555|565)))|(?:DBL|FLT)_(?:DIG|EPSILON|MANT_DIG|(?:MIN|MAX)(?:(?:_10)?_EXP)?)|FLT_RADIX|HUGE_VALF|INFINITY|(?:INT|LONG|SCHAR|SHRT|UCHAR|UINT|ULONG)_(?:MAX|MIN)|MAXFLOAT|M_(?:[12]_PI|2_SQRTPI|E|LN(?:2|10)|LOG(?:10|2)E?|PI[24]?|SQRT(?:1_2|2))|NAN)\b/, + alias: 'constant' + } + }) + var attributes = { + // Extracted from http://streamcomputing.eu/downloads/?opencl_host.lang (opencl-types and opencl-host) + 'type-opencl-host': { + pattern: /\b(?:cl_(?:GLenum|GLint|GLuin|addressing_mode|bitfield|bool|buffer_create_type|build_status|channel_(?:order|type)|(?:u?(?:char|short|int|long)|float|double)(?:2|3|4|8|16)?|command_(?:queue(?:_info|_properties)?|type)|context(?:_info|_properties)?|device_(?:exec_capabilities|fp_config|id|info|local_mem_type|mem_cache_type|type)|(?:event|sampler)(?:_info)?|filter_mode|half|image_info|kernel(?:_info|_work_group_info)?|map_flags|mem(?:_flags|_info|_object_type)?|platform_(?:id|info)|profiling_info|program(?:_build_info|_info)?))\b/, + alias: 'keyword' + }, + 'boolean-opencl-host': { + pattern: /\bCL_(?:TRUE|FALSE)\b/, + alias: 'boolean' + }, + // Extracted from cl.h (2.0) and http://streamcomputing.eu/downloads/?opencl_host.lang (opencl-const) + 'constant-opencl-host': { + pattern: /\bCL_(?:A|ABGR|ADDRESS_(?:CLAMP(?:_TO_EDGE)?|MIRRORED_REPEAT|NONE|REPEAT)|ARGB|BGRA|BLOCKING|BUFFER_CREATE_TYPE_REGION|BUILD_(?:ERROR|IN_PROGRESS|NONE|PROGRAM_FAILURE|SUCCESS)|COMMAND_(?:ACQUIRE_GL_OBJECTS|BARRIER|COPY_(?:BUFFER(?:_RECT|_TO_IMAGE)?|IMAGE(?:_TO_BUFFER)?)|FILL_(?:BUFFER|IMAGE)|MAP(?:_BUFFER|_IMAGE)|MARKER|MIGRATE(?:_SVM)?_MEM_OBJECTS|NATIVE_KERNEL|NDRANGE_KERNEL|READ_(?:BUFFER(?:_RECT)?|IMAGE)|RELEASE_GL_OBJECTS|SVM_(?:FREE|MAP|MEMCPY|MEMFILL|UNMAP)|TASK|UNMAP_MEM_OBJECT|USER|WRITE_(?:BUFFER(?:_RECT)?|IMAGE))|COMPILER_NOT_AVAILABLE|COMPILE_PROGRAM_FAILURE|COMPLETE|CONTEXT_(?:DEVICES|INTEROP_USER_SYNC|NUM_DEVICES|PLATFORM|PROPERTIES|REFERENCE_COUNT)|DEPTH(?:_STENCIL)?|DEVICE_(?:ADDRESS_BITS|AFFINITY_DOMAIN_(?:L[1-4]_CACHE|NEXT_PARTITIONABLE|NUMA)|AVAILABLE|BUILT_IN_KERNELS|COMPILER_AVAILABLE|DOUBLE_FP_CONFIG|ENDIAN_LITTLE|ERROR_CORRECTION_SUPPORT|EXECUTION_CAPABILITIES|EXTENSIONS|GLOBAL_(?:MEM_(?:CACHELINE_SIZE|CACHE_SIZE|CACHE_TYPE|SIZE)|VARIABLE_PREFERRED_TOTAL_SIZE)|HOST_UNIFIED_MEMORY|IL_VERSION|IMAGE(?:2D_MAX_(?:HEIGHT|WIDTH)|3D_MAX_(?:DEPTH|HEIGHT|WIDTH)|_BASE_ADDRESS_ALIGNMENT|_MAX_ARRAY_SIZE|_MAX_BUFFER_SIZE|_PITCH_ALIGNMENT|_SUPPORT)|LINKER_AVAILABLE|LOCAL_MEM_SIZE|LOCAL_MEM_TYPE|MAX_(?:CLOCK_FREQUENCY|COMPUTE_UNITS|CONSTANT_ARGS|CONSTANT_BUFFER_SIZE|GLOBAL_VARIABLE_SIZE|MEM_ALLOC_SIZE|NUM_SUB_GROUPS|ON_DEVICE_(?:EVENTS|QUEUES)|PARAMETER_SIZE|PIPE_ARGS|READ_IMAGE_ARGS|READ_WRITE_IMAGE_ARGS|SAMPLERS|WORK_GROUP_SIZE|WORK_ITEM_DIMENSIONS|WORK_ITEM_SIZES|WRITE_IMAGE_ARGS)|MEM_BASE_ADDR_ALIGN|MIN_DATA_TYPE_ALIGN_SIZE|NAME|NATIVE_VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT)|NOT_(?:AVAILABLE|FOUND)|OPENCL_C_VERSION|PARENT_DEVICE|PARTITION_(?:AFFINITY_DOMAIN|BY_AFFINITY_DOMAIN|BY_COUNTS|BY_COUNTS_LIST_END|EQUALLY|FAILED|MAX_SUB_DEVICES|PROPERTIES|TYPE)|PIPE_MAX_(?:ACTIVE_RESERVATIONS|PACKET_SIZE)|PLATFORM|PREFERRED_(?:GLOBAL_ATOMIC_ALIGNMENT|INTEROP_USER_SYNC|LOCAL_ATOMIC_ALIGNMENT|PLATFORM_ATOMIC_ALIGNMENT|VECTOR_WIDTH_(?:CHAR|DOUBLE|FLOAT|HALF|INT|LONG|SHORT))|PRINTF_BUFFER_SIZE|PROFILE|PROFILING_TIMER_RESOLUTION|QUEUE_(?:ON_(?:DEVICE_(?:MAX_SIZE|PREFERRED_SIZE|PROPERTIES)|HOST_PROPERTIES)|PROPERTIES)|REFERENCE_COUNT|SINGLE_FP_CONFIG|SUB_GROUP_INDEPENDENT_FORWARD_PROGRESS|SVM_(?:ATOMICS|CAPABILITIES|COARSE_GRAIN_BUFFER|FINE_GRAIN_BUFFER|FINE_GRAIN_SYSTEM)|TYPE(?:_ACCELERATOR|_ALL|_CPU|_CUSTOM|_DEFAULT|_GPU)?|VENDOR(?:_ID)?|VERSION)|DRIVER_VERSION|EVENT_(?:COMMAND_(?:EXECUTION_STATUS|QUEUE|TYPE)|CONTEXT|REFERENCE_COUNT)|EXEC_(?:KERNEL|NATIVE_KERNEL|STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST)|FILTER_(?:LINEAR|NEAREST)|FLOAT|FP_(?:CORRECTLY_ROUNDED_DIVIDE_SQRT|DENORM|FMA|INF_NAN|ROUND_TO_INF|ROUND_TO_NEAREST|ROUND_TO_ZERO|SOFT_FLOAT)|GLOBAL|HALF_FLOAT|IMAGE_(?:ARRAY_SIZE|BUFFER|DEPTH|ELEMENT_SIZE|FORMAT|FORMAT_MISMATCH|FORMAT_NOT_SUPPORTED|HEIGHT|NUM_MIP_LEVELS|NUM_SAMPLES|ROW_PITCH|SLICE_PITCH|WIDTH)|INTENSITY|INVALID_(?:ARG_INDEX|ARG_SIZE|ARG_VALUE|BINARY|BUFFER_SIZE|BUILD_OPTIONS|COMMAND_QUEUE|COMPILER_OPTIONS|CONTEXT|DEVICE|DEVICE_PARTITION_COUNT|DEVICE_QUEUE|DEVICE_TYPE|EVENT|EVENT_WAIT_LIST|GLOBAL_OFFSET|GLOBAL_WORK_SIZE|GL_OBJECT|HOST_PTR|IMAGE_DESCRIPTOR|IMAGE_FORMAT_DESCRIPTOR|IMAGE_SIZE|KERNEL|KERNEL_ARGS|KERNEL_DEFINITION|KERNEL_NAME|LINKER_OPTIONS|MEM_OBJECT|MIP_LEVEL|OPERATION|PIPE_SIZE|PLATFORM|PROGRAM|PROGRAM_EXECUTABLE|PROPERTY|QUEUE_PROPERTIES|SAMPLER|VALUE|WORK_DIMENSION|WORK_GROUP_SIZE|WORK_ITEM_SIZE)|KERNEL_(?:ARG_(?:ACCESS_(?:NONE|QUALIFIER|READ_ONLY|READ_WRITE|WRITE_ONLY)|ADDRESS_(?:CONSTANT|GLOBAL|LOCAL|PRIVATE|QUALIFIER)|INFO_NOT_AVAILABLE|NAME|TYPE_(?:CONST|NAME|NONE|PIPE|QUALIFIER|RESTRICT|VOLATILE))|ATTRIBUTES|COMPILE_NUM_SUB_GROUPS|COMPILE_WORK_GROUP_SIZE|CONTEXT|EXEC_INFO_SVM_FINE_GRAIN_SYSTEM|EXEC_INFO_SVM_PTRS|FUNCTION_NAME|GLOBAL_WORK_SIZE|LOCAL_MEM_SIZE|LOCAL_SIZE_FOR_SUB_GROUP_COUNT|MAX_NUM_SUB_GROUPS|MAX_SUB_GROUP_SIZE_FOR_NDRANGE|NUM_ARGS|PREFERRED_WORK_GROUP_SIZE_MULTIPLE|PRIVATE_MEM_SIZE|PROGRAM|REFERENCE_COUNT|SUB_GROUP_COUNT_FOR_NDRANGE|WORK_GROUP_SIZE)|LINKER_NOT_AVAILABLE|LINK_PROGRAM_FAILURE|LOCAL|LUMINANCE|MAP_(?:FAILURE|READ|WRITE|WRITE_INVALIDATE_REGION)|MEM_(?:ALLOC_HOST_PTR|ASSOCIATED_MEMOBJECT|CONTEXT|COPY_HOST_PTR|COPY_OVERLAP|FLAGS|HOST_NO_ACCESS|HOST_PTR|HOST_READ_ONLY|HOST_WRITE_ONLY|KERNEL_READ_AND_WRITE|MAP_COUNT|OBJECT_(?:ALLOCATION_FAILURE|BUFFER|IMAGE1D|IMAGE1D_ARRAY|IMAGE1D_BUFFER|IMAGE2D|IMAGE2D_ARRAY|IMAGE3D|PIPE)|OFFSET|READ_ONLY|READ_WRITE|REFERENCE_COUNT|SIZE|SVM_ATOMICS|SVM_FINE_GRAIN_BUFFER|TYPE|USES_SVM_POINTER|USE_HOST_PTR|WRITE_ONLY)|MIGRATE_MEM_OBJECT_(?:CONTENT_UNDEFINED|HOST)|MISALIGNED_SUB_BUFFER_OFFSET|NONE|NON_BLOCKING|OUT_OF_(?:HOST_MEMORY|RESOURCES)|PIPE_(?:MAX_PACKETS|PACKET_SIZE)|PLATFORM_(?:EXTENSIONS|HOST_TIMER_RESOLUTION|NAME|PROFILE|VENDOR|VERSION)|PROFILING_(?:COMMAND_(?:COMPLETE|END|QUEUED|START|SUBMIT)|INFO_NOT_AVAILABLE)|PROGRAM_(?:BINARIES|BINARY_SIZES|BINARY_TYPE(?:_COMPILED_OBJECT|_EXECUTABLE|_LIBRARY|_NONE)?|BUILD_(?:GLOBAL_VARIABLE_TOTAL_SIZE|LOG|OPTIONS|STATUS)|CONTEXT|DEVICES|IL|KERNEL_NAMES|NUM_DEVICES|NUM_KERNELS|REFERENCE_COUNT|SOURCE)|QUEUED|QUEUE_(?:CONTEXT|DEVICE|DEVICE_DEFAULT|ON_DEVICE|ON_DEVICE_DEFAULT|OUT_OF_ORDER_EXEC_MODE_ENABLE|PROFILING_ENABLE|PROPERTIES|REFERENCE_COUNT|SIZE)|R|RA|READ_(?:ONLY|WRITE)_CACHE|RG|RGB|RGBA|RGBx|RGx|RUNNING|Rx|SAMPLER_(?:ADDRESSING_MODE|CONTEXT|FILTER_MODE|LOD_MAX|LOD_MIN|MIP_FILTER_MODE|NORMALIZED_COORDS|REFERENCE_COUNT)|(?:UN)?SIGNED_INT(?:8|16|32)|SNORM_INT(?:8|16)|SUBMITTED|SUCCESS|UNORM_INT(?:16|24|8|_101010|_101010_2)|UNORM_SHORT_(?:555|565)|VERSION_(?:1_0|1_1|1_2|2_0|2_1)|sBGRA|sRGB|sRGBA|sRGBx)\b/, + alias: 'constant' + }, + // Extracted from cl.h (2.0) and http://streamcomputing.eu/downloads/?opencl_host.lang (opencl-host) + 'function-opencl-host': { + pattern: /\bcl(?:BuildProgram|CloneKernel|CompileProgram|Create(?:Buffer|CommandQueue(?:WithProperties)?|Context|ContextFromType|Image|Image2D|Image3D|Kernel|KernelsInProgram|Pipe|ProgramWith(?:Binary|BuiltInKernels|IL|Source)|Sampler|SamplerWithProperties|SubBuffer|SubDevices|UserEvent)|Enqueue(?:(?:Barrier|Marker)(?:WithWaitList)?|Copy(?:Buffer(?:Rect|ToImage)?|Image(?:ToBuffer)?)|(?:Fill|Map)(?:Buffer|Image)|MigrateMemObjects|NDRangeKernel|NativeKernel|(?:Read|Write)(?:Buffer(?:Rect)?|Image)|SVM(?:Free|Map|MemFill|Memcpy|MigrateMem|Unmap)|Task|UnmapMemObject|WaitForEvents)|Finish|Flush|Get(?:CommandQueueInfo|ContextInfo|Device(?:AndHostTimer|IDs|Info)|Event(?:Profiling)?Info|ExtensionFunctionAddress(?:ForPlatform)?|HostTimer|ImageInfo|Kernel(?:ArgInfo|Info|SubGroupInfo|WorkGroupInfo)|MemObjectInfo|PipeInfo|Platform(?:IDs|Info)|Program(?:Build)?Info|SamplerInfo|SupportedImageFormats)|LinkProgram|(?:Release|Retain)(?:CommandQueue|Context|Device|Event|Kernel|MemObject|Program|Sampler)|SVM(?:Alloc|Free)|Set(?:CommandQueueProperty|DefaultDeviceCommandQueue|EventCallback|Kernel(?:Arg(?:SVMPointer)?|ExecInfo)|Kernel|MemObjectDestructorCallback|UserEventStatus)|Unload(?:Platform)?Compiler|WaitForEvents)\b/, + alias: 'function' + } + } + /* OpenCL host API */ + Prism.languages.insertBefore('c', 'keyword', attributes) // Extracted from doxygen class list http://github.khronos.org/OpenCL-CLHPP/annotated.html + attributes['type-opencl-host-c++'] = { + pattern: /\b(?:Buffer|BufferGL|BufferRenderGL|CommandQueue|Context|Device|DeviceCommandQueue|EnqueueArgs|Event|Image|Image1D|Image1DArray|Image1DBuffer|Image2D|Image2DArray|Image2DGL|Image3D|Image3DGL|ImageFormat|ImageGL|Kernel|KernelFunctor|LocalSpaceArg|Memory|NDRange|Pipe|Platform|Program|Sampler|SVMAllocator|SVMTraitAtomic|SVMTraitCoarse|SVMTraitFine|SVMTraitReadOnly|SVMTraitReadWrite|SVMTraitWriteOnly|UserEvent)\b/, + alias: 'keyword' + } // C++ includes everything from the OpenCL C host API plus the classes defined in cl2.h + Prism.languages.insertBefore('cpp', 'keyword', attributes) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_oz.83cc67d9.js b/assets/js/react-syntax-highlighter_languages_refractor_oz.83cc67d9.js new file mode 100644 index 000000000..e979db69e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_oz.83cc67d9.js @@ -0,0 +1,46 @@ +"use strict"; +exports.id = 7658; +exports.ids = [7658]; +exports.modules = { + +/***/ 23254: +/***/ ((module) => { + + + +module.exports = oz +oz.displayName = 'oz' +oz.aliases = [] +function oz(Prism) { + Prism.languages.oz = { + comment: /\/\*[\s\S]*?\*\/|%.*/, + string: { + pattern: /"(?:[^"\\]|\\[\s\S])*"/, + greedy: true + }, + atom: { + pattern: /'(?:[^'\\]|\\[\s\S])*'/, + greedy: true, + alias: 'builtin' + }, + keyword: /[$_]|\[\]|\b(?:at|attr|case|catch|choice|class|cond|declare|define|dis|else(?:case|if)?|end|export|fail|false|feat|finally|from|fun|functor|if|import|in|local|lock|meth|nil|not|of|or|prepare|proc|prop|raise|require|self|skip|then|thread|true|try|unit)\b/, + function: [ + /[a-z][A-Za-z\d]*(?=\()/, + { + pattern: /(\{)[A-Z][A-Za-z\d]*/, + lookbehind: true + } + ], + number: /\b(?:0[bx][\da-f]+|\d+\.?\d*(?:e~?\d+)?\b)|&(?:[^\\]|\\(?:\d{3}|.))/i, + variable: /\b[A-Z][A-Za-z\d]*|`(?:[^`\\]|\\.)+`/, + 'attr-name': /\w+(?=:)/, + operator: /:(?:=|::?)|<[-:=]?|=(?:=|<?:?)|>=?:?|\\=:?|!!?|[|#+\-*\/,~^@]|\b(?:andthen|div|mod|orelse)\b/, + punctuation: /[\[\](){}.:;?]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_oz.9b54401b.js b/assets/js/react-syntax-highlighter_languages_refractor_oz.9b54401b.js new file mode 100644 index 000000000..33bb8cac4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_oz.9b54401b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7658],{3254:e=>{function a(e){e.languages.oz={comment:/\/\*[\s\S]*?\*\/|%.*/,string:{pattern:/"(?:[^"\\]|\\[\s\S])*"/,greedy:!0},atom:{pattern:/'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,alias:"builtin"},keyword:/[$_]|\[\]|\b(?:at|attr|case|catch|choice|class|cond|declare|define|dis|else(?:case|if)?|end|export|fail|false|feat|finally|from|fun|functor|if|import|in|local|lock|meth|nil|not|of|or|prepare|proc|prop|raise|require|self|skip|then|thread|true|try|unit)\b/,function:[/[a-z][A-Za-z\d]*(?=\()/,{pattern:/(\{)[A-Z][A-Za-z\d]*/,lookbehind:!0}],number:/\b(?:0[bx][\da-f]+|\d+\.?\d*(?:e~?\d+)?\b)|&(?:[^\\]|\\(?:\d{3}|.))/i,variable:/\b[A-Z][A-Za-z\d]*|`(?:[^`\\]|\\.)+`/,"attr-name":/\w+(?=:)/,operator:/:(?:=|::?)|<[-:=]?|=(?:=|<?:?)|>=?:?|\\=:?|!!?|[|#+\-*\/,~^@]|\b(?:andthen|div|mod|orelse)\b/,punctuation:/[\[\](){}.:;?]/}}e.exports=a,a.displayName="oz",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_parigp.202382a5.js b/assets/js/react-syntax-highlighter_languages_refractor_parigp.202382a5.js new file mode 100644 index 000000000..1adc63f39 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_parigp.202382a5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9979],{2694:r=>{function e(r){var e;r.languages.parigp={comment:/\/\*[\s\S]*?\*\/|\\\\.*/,string:{pattern:/"(?:[^"\\\r\n]|\\.)*"/,greedy:!0},keyword:(e=["breakpoint","break","dbg_down","dbg_err","dbg_up","dbg_x","forcomposite","fordiv","forell","forpart","forprime","forstep","forsubgroup","forvec","for","iferr","if","local","my","next","return","until","while"],e=e.map((function(r){return r.split("").join(" *")})).join("|"),RegExp("\\b(?:"+e+")\\b")),function:/\w[\w ]*?(?= *\()/,number:{pattern:/((?:\. *\. *)?)(?:\d(?: *\d)*(?: *(?!\. *\.)\.(?: *\d)*)?|\. *\d(?: *\d)*)(?: *e *[+-]? *\d(?: *\d)*)?/i,lookbehind:!0},operator:/\. *\.|[*\/!](?: *=)?|%(?: *=|(?: *#)?(?: *')*)?|\+(?: *[+=])?|-(?: *[-=>])?|<(?:(?: *<)?(?: *=)?| *>)?|>(?: *>)?(?: *=)?|=(?: *=){0,2}|\\(?: *\/)?(?: *=)?|&(?: *&)?|\| *\||['#~^]/,punctuation:/[\[\]{}().,:;|]/}}r.exports=e,e.displayName="parigp",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_parigp.eec60f5a.js b/assets/js/react-syntax-highlighter_languages_refractor_parigp.eec60f5a.js new file mode 100644 index 000000000..08dba7a57 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_parigp.eec60f5a.js @@ -0,0 +1,72 @@ +"use strict"; +exports.id = 9979; +exports.ids = [9979]; +exports.modules = { + +/***/ 92694: +/***/ ((module) => { + + + +module.exports = parigp +parigp.displayName = 'parigp' +parigp.aliases = [] +function parigp(Prism) { + Prism.languages.parigp = { + comment: /\/\*[\s\S]*?\*\/|\\\\.*/, + string: { + pattern: /"(?:[^"\\\r\n]|\\.)*"/, + greedy: true + }, + // PARI/GP does not care about white spaces at all + // so let's process the keywords to build an appropriate regexp + // (e.g. "b *r *e *a *k", etc.) + keyword: (function() { + var keywords = [ + 'breakpoint', + 'break', + 'dbg_down', + 'dbg_err', + 'dbg_up', + 'dbg_x', + 'forcomposite', + 'fordiv', + 'forell', + 'forpart', + 'forprime', + 'forstep', + 'forsubgroup', + 'forvec', + 'for', + 'iferr', + 'if', + 'local', + 'my', + 'next', + 'return', + 'until', + 'while' + ] + keywords = keywords + .map(function(keyword) { + return keyword.split('').join(' *') + }) + .join('|') + return RegExp('\\b(?:' + keywords + ')\\b') + })(), + function: /\w[\w ]*?(?= *\()/, + number: { + // The lookbehind and the negative lookahead prevent from breaking the .. operator + pattern: /((?:\. *\. *)?)(?:\d(?: *\d)*(?: *(?!\. *\.)\.(?: *\d)*)?|\. *\d(?: *\d)*)(?: *e *[+-]? *\d(?: *\d)*)?/i, + lookbehind: true + }, + operator: /\. *\.|[*\/!](?: *=)?|%(?: *=|(?: *#)?(?: *')*)?|\+(?: *[+=])?|-(?: *[-=>])?|<(?:(?: *<)?(?: *=)?| *>)?|>(?: *>)?(?: *=)?|=(?: *=){0,2}|\\(?: *\/)?(?: *=)?|&(?: *&)?|\| *\||['#~^]/, + punctuation: /[\[\]{}().,:;|]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_parser.12834edb.js b/assets/js/react-syntax-highlighter_languages_refractor_parser.12834edb.js new file mode 100644 index 000000000..c4f99f213 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_parser.12834edb.js @@ -0,0 +1,95 @@ +"use strict"; +exports.id = 672; +exports.ids = [672]; +exports.modules = { + +/***/ 43273: +/***/ ((module) => { + + + +module.exports = parser +parser.displayName = 'parser' +parser.aliases = [] +function parser(Prism) { + ;(function(Prism) { + var parser = (Prism.languages.parser = Prism.languages.extend('markup', { + keyword: { + pattern: /(^|[^^])(?:\^(?:case|eval|for|if|switch|throw)\b|@(?:BASE|CLASS|GET(?:_DEFAULT)?|OPTIONS|SET_DEFAULT|USE)\b)/, + lookbehind: true + }, + variable: { + pattern: /(^|[^^])\B\$(?:\w+|(?=[.{]))(?:(?:\.|::?)\w+)*(?:\.|::?)?/, + lookbehind: true, + inside: { + punctuation: /\.|:+/ + } + }, + function: { + pattern: /(^|[^^])\B[@^]\w+(?:(?:\.|::?)\w+)*(?:\.|::?)?/, + lookbehind: true, + inside: { + keyword: { + pattern: /(^@)(?:GET_|SET_)/, + lookbehind: true + }, + punctuation: /\.|:+/ + } + }, + escape: { + pattern: /\^(?:[$^;@()\[\]{}"':]|#[a-f\d]*)/i, + alias: 'builtin' + }, + punctuation: /[\[\](){};]/ + })) + parser = Prism.languages.insertBefore('parser', 'keyword', { + 'parser-comment': { + pattern: /(\s)#.*/, + lookbehind: true, + alias: 'comment' + }, + expression: { + // Allow for 3 levels of depth + pattern: /(^|[^^])\((?:[^()]|\((?:[^()]|\((?:[^()])*\))*\))*\)/, + greedy: true, + lookbehind: true, + inside: { + string: { + pattern: /(^|[^^])(["'])(?:(?!\2)[^^]|\^[\s\S])*\2/, + lookbehind: true + }, + keyword: parser.keyword, + variable: parser.variable, + function: parser.function, + boolean: /\b(?:true|false)\b/, + number: /\b(?:0x[a-f\d]+|\d+\.?\d*(?:e[+-]?\d+)?)\b/i, + escape: parser.escape, + operator: /[~+*\/\\%]|!(?:\|\|?|=)?|&&?|\|\|?|==|<[<=]?|>[>=]?|-[fd]?|\b(?:def|eq|ge|gt|in|is|le|lt|ne)\b/, + punctuation: parser.punctuation + } + } + }) + parser = Prism.languages.insertBefore( + 'inside', + 'punctuation', + { + expression: parser.expression, + keyword: parser.keyword, + variable: parser.variable, + function: parser.function, + escape: parser.escape, + 'parser-punctuation': { + pattern: parser.punctuation, + alias: 'punctuation' + } + }, + parser['tag'].inside['attr-value'] + ) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_parser.7caea74e.js b/assets/js/react-syntax-highlighter_languages_refractor_parser.7caea74e.js new file mode 100644 index 000000000..60e990110 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_parser.7caea74e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[672],{3273:e=>{function n(e){!function(e){var n=e.languages.parser=e.languages.extend("markup",{keyword:{pattern:/(^|[^^])(?:\^(?:case|eval|for|if|switch|throw)\b|@(?:BASE|CLASS|GET(?:_DEFAULT)?|OPTIONS|SET_DEFAULT|USE)\b)/,lookbehind:!0},variable:{pattern:/(^|[^^])\B\$(?:\w+|(?=[.{]))(?:(?:\.|::?)\w+)*(?:\.|::?)?/,lookbehind:!0,inside:{punctuation:/\.|:+/}},function:{pattern:/(^|[^^])\B[@^]\w+(?:(?:\.|::?)\w+)*(?:\.|::?)?/,lookbehind:!0,inside:{keyword:{pattern:/(^@)(?:GET_|SET_)/,lookbehind:!0},punctuation:/\.|:+/}},escape:{pattern:/\^(?:[$^;@()\[\]{}"':]|#[a-f\d]*)/i,alias:"builtin"},punctuation:/[\[\](){};]/});n=e.languages.insertBefore("parser","keyword",{"parser-comment":{pattern:/(\s)#.*/,lookbehind:!0,alias:"comment"},expression:{pattern:/(^|[^^])\((?:[^()]|\((?:[^()]|\((?:[^()])*\))*\))*\)/,greedy:!0,lookbehind:!0,inside:{string:{pattern:/(^|[^^])(["'])(?:(?!\2)[^^]|\^[\s\S])*\2/,lookbehind:!0},keyword:n.keyword,variable:n.variable,function:n.function,boolean:/\b(?:true|false)\b/,number:/\b(?:0x[a-f\d]+|\d+\.?\d*(?:e[+-]?\d+)?)\b/i,escape:n.escape,operator:/[~+*\/\\%]|!(?:\|\|?|=)?|&&?|\|\|?|==|<[<=]?|>[>=]?|-[fd]?|\b(?:def|eq|ge|gt|in|is|le|lt|ne)\b/,punctuation:n.punctuation}}}),n=e.languages.insertBefore("inside","punctuation",{expression:n.expression,keyword:n.keyword,variable:n.variable,function:n.function,escape:n.escape,"parser-punctuation":{pattern:n.punctuation,alias:"punctuation"}},n.tag.inside["attr-value"])}(e)}e.exports=n,n.displayName="parser",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_pascal.0b8b7675.js b/assets/js/react-syntax-highlighter_languages_refractor_pascal.0b8b7675.js new file mode 100644 index 000000000..2f3f9d94b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_pascal.0b8b7675.js @@ -0,0 +1,68 @@ +"use strict"; +exports.id = 7833; +exports.ids = [7833]; +exports.modules = { + +/***/ 60718: +/***/ ((module) => { + + + +module.exports = pascal +pascal.displayName = 'pascal' +pascal.aliases = ['objectpascal'] +function pascal(Prism) { + // Based on Free Pascal + /* TODO +Support inline asm ? +*/ + Prism.languages.pascal = { + comment: [/\(\*[\s\S]+?\*\)/, /\{[\s\S]+?\}/, /\/\/.*/], + string: { + pattern: /(?:'(?:''|[^'\r\n])*'|#[&$%]?[a-f\d]+)+|\^[a-z]/i, + greedy: true + }, + keyword: [ + { + // Turbo Pascal + pattern: /(^|[^&])\b(?:absolute|array|asm|begin|case|const|constructor|destructor|do|downto|else|end|file|for|function|goto|if|implementation|inherited|inline|interface|label|nil|object|of|operator|packed|procedure|program|record|reintroduce|repeat|self|set|string|then|to|type|unit|until|uses|var|while|with)\b/i, + lookbehind: true + }, + { + // Free Pascal + pattern: /(^|[^&])\b(?:dispose|exit|false|new|true)\b/i, + lookbehind: true + }, + { + // Object Pascal + pattern: /(^|[^&])\b(?:class|dispinterface|except|exports|finalization|finally|initialization|inline|library|on|out|packed|property|raise|resourcestring|threadvar|try)\b/i, + lookbehind: true + }, + { + // Modifiers + pattern: /(^|[^&])\b(?:absolute|abstract|alias|assembler|bitpacked|break|cdecl|continue|cppdecl|cvar|default|deprecated|dynamic|enumerator|experimental|export|external|far|far16|forward|generic|helper|implements|index|interrupt|iochecks|local|message|name|near|nodefault|noreturn|nostackframe|oldfpccall|otherwise|overload|override|pascal|platform|private|protected|public|published|read|register|reintroduce|result|safecall|saveregisters|softfloat|specialize|static|stdcall|stored|strict|unaligned|unimplemented|varargs|virtual|write)\b/i, + lookbehind: true + } + ], + number: [ + // Hexadecimal, octal and binary + /(?:[&%]\d+|\$[a-f\d]+)/i, // Decimal + /\b\d+(?:\.\d+)?(?:e[+-]?\d+)?/i + ], + operator: [ + /\.\.|\*\*|:=|<[<=>]?|>[>=]?|[+\-*\/]=?|[@^=]/i, + { + pattern: /(^|[^&])\b(?:and|as|div|exclude|in|include|is|mod|not|or|shl|shr|xor)\b/, + lookbehind: true + } + ], + punctuation: /\(\.|\.\)|[()\[\]:;,.]/ + } + Prism.languages.objectpascal = Prism.languages.pascal +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_pascal.749a7257.js b/assets/js/react-syntax-highlighter_languages_refractor_pascal.749a7257.js new file mode 100644 index 000000000..6e8af7f33 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_pascal.749a7257.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7833],{718:e=>{function a(e){e.languages.pascal={comment:[/\(\*[\s\S]+?\*\)/,/\{[\s\S]+?\}/,/\/\/.*/],string:{pattern:/(?:'(?:''|[^'\r\n])*'|#[&$%]?[a-f\d]+)+|\^[a-z]/i,greedy:!0},keyword:[{pattern:/(^|[^&])\b(?:absolute|array|asm|begin|case|const|constructor|destructor|do|downto|else|end|file|for|function|goto|if|implementation|inherited|inline|interface|label|nil|object|of|operator|packed|procedure|program|record|reintroduce|repeat|self|set|string|then|to|type|unit|until|uses|var|while|with)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:dispose|exit|false|new|true)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:class|dispinterface|except|exports|finalization|finally|initialization|inline|library|on|out|packed|property|raise|resourcestring|threadvar|try)\b/i,lookbehind:!0},{pattern:/(^|[^&])\b(?:absolute|abstract|alias|assembler|bitpacked|break|cdecl|continue|cppdecl|cvar|default|deprecated|dynamic|enumerator|experimental|export|external|far|far16|forward|generic|helper|implements|index|interrupt|iochecks|local|message|name|near|nodefault|noreturn|nostackframe|oldfpccall|otherwise|overload|override|pascal|platform|private|protected|public|published|read|register|reintroduce|result|safecall|saveregisters|softfloat|specialize|static|stdcall|stored|strict|unaligned|unimplemented|varargs|virtual|write)\b/i,lookbehind:!0}],number:[/(?:[&%]\d+|\$[a-f\d]+)/i,/\b\d+(?:\.\d+)?(?:e[+-]?\d+)?/i],operator:[/\.\.|\*\*|:=|<[<=>]?|>[>=]?|[+\-*\/]=?|[@^=]/i,{pattern:/(^|[^&])\b(?:and|as|div|exclude|in|include|is|mod|not|or|shl|shr|xor)\b/,lookbehind:!0}],punctuation:/\(\.|\.\)|[()\[\]:;,.]/},e.languages.objectpascal=e.languages.pascal}e.exports=a,a.displayName="pascal",a.aliases=["objectpascal"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_perl.07d8cce0.js b/assets/js/react-syntax-highlighter_languages_refractor_perl.07d8cce0.js new file mode 100644 index 000000000..f2f59d81e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_perl.07d8cce0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4157],{4212:e=>{function s(e){e.languages.perl={comment:[{pattern:/(^\s*)=\w+[\s\S]*?=cut.*/m,lookbehind:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0}],string:[{pattern:/\b(?:q|qq|qx|qw)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*\{(?:[^{}\\]|\\[\s\S])*\}/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*\[(?:[^[\]\\]|\\[\s\S])*\]/,greedy:!0},{pattern:/\b(?:q|qq|qx|qw)\s*<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0},{pattern:/("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/'(?:[^'\\\r\n]|\\.)*'/,greedy:!0}],regex:[{pattern:/\b(?:m|qr)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngc]*/,greedy:!0},{pattern:/\b(?:m|qr)\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngc]*/,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s+([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*\((?:[^()\\]|\\[\s\S])*\)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*\{(?:[^{}\\]|\\[\s\S])*\}\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*\[(?:[^[\]\\]|\\[\s\S])*\]\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/(^|[^-]\b)(?:s|tr|y)\s*<(?:[^<>\\]|\\[\s\S])*>\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngcer]*/,lookbehind:!0,greedy:!0},{pattern:/\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(lt|gt|le|ge|eq|ne|cmp|not|and|or|xor|x)\b))/,greedy:!0}],variable:[/[&*$@%]\{\^[A-Z]+\}/,/[&*$@%]\^[A-Z_]/,/[&*$@%]#?(?=\{)/,/[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+)+(?:::)*/i,/[&*$@%]\d+/,/(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/],filehandle:{pattern:/<(?![<=])\S*>|\b_\b/,alias:"symbol"},vstring:{pattern:/v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/,alias:"string"},function:{pattern:/sub [a-z0-9_]+/i,inside:{keyword:/sub/}},keyword:/\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/,number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:\d(?:_?\d)*)?\.?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/,operator:/-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:lt|gt|le|ge|eq|ne|cmp|not|and|or|xor)\b/,punctuation:/[{}[\];(),:]/}}e.exports=s,s.displayName="perl",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_perl.b3f61fab.js b/assets/js/react-syntax-highlighter_languages_refractor_perl.b3f61fab.js new file mode 100644 index 000000000..bf0a98804 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_perl.b3f61fab.js @@ -0,0 +1,168 @@ +"use strict"; +exports.id = 4157; +exports.ids = [4157]; +exports.modules = { + +/***/ 74212: +/***/ ((module) => { + + + +module.exports = perl +perl.displayName = 'perl' +perl.aliases = [] +function perl(Prism) { + Prism.languages.perl = { + comment: [ + { + // POD + pattern: /(^\s*)=\w+[\s\S]*?=cut.*/m, + lookbehind: true + }, + { + pattern: /(^|[^\\$])#.*/, + lookbehind: true + } + ], + // TODO Could be nice to handle Heredoc too. + string: [ + // q/.../ + { + pattern: /\b(?:q|qq|qx|qw)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true + }, // q a...a + { + pattern: /\b(?:q|qq|qx|qw)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true + }, // q(...) + { + pattern: /\b(?:q|qq|qx|qw)\s*\((?:[^()\\]|\\[\s\S])*\)/, + greedy: true + }, // q{...} + { + pattern: /\b(?:q|qq|qx|qw)\s*\{(?:[^{}\\]|\\[\s\S])*\}/, + greedy: true + }, // q[...] + { + pattern: /\b(?:q|qq|qx|qw)\s*\[(?:[^[\]\\]|\\[\s\S])*\]/, + greedy: true + }, // q<...> + { + pattern: /\b(?:q|qq|qx|qw)\s*<(?:[^<>\\]|\\[\s\S])*>/, + greedy: true + }, // "...", `...` + { + pattern: /("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true + }, // '...' + // FIXME Multi-line single-quoted strings are not supported as they would break variables containing ' + { + pattern: /'(?:[^'\\\r\n]|\\.)*'/, + greedy: true + } + ], + regex: [ + // m/.../ + { + pattern: /\b(?:m|qr)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/, + greedy: true + }, // m a...a + { + pattern: /\b(?:m|qr)\s+([a-zA-Z0-9])(?:(?!\1)[^\\]|\\[\s\S])*\1[msixpodualngc]*/, + greedy: true + }, // m(...) + { + pattern: /\b(?:m|qr)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngc]*/, + greedy: true + }, // m{...} + { + pattern: /\b(?:m|qr)\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngc]*/, + greedy: true + }, // m[...] + { + pattern: /\b(?:m|qr)\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngc]*/, + greedy: true + }, // m<...> + { + pattern: /\b(?:m|qr)\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngc]*/, + greedy: true + }, // The lookbehinds prevent -s from breaking + // FIXME We don't handle change of separator like s(...)[...] + // s/.../.../ + { + pattern: /(^|[^-]\b)(?:s|tr|y)\s*([^a-zA-Z0-9\s{(\[<])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/, + lookbehind: true, + greedy: true + }, // s a...a...a + { + pattern: /(^|[^-]\b)(?:s|tr|y)\s+([a-zA-Z0-9])(?:(?!\2)[^\\]|\\[\s\S])*\2(?:(?!\2)[^\\]|\\[\s\S])*\2[msixpodualngcer]*/, + lookbehind: true, + greedy: true + }, // s(...)(...) + { + pattern: /(^|[^-]\b)(?:s|tr|y)\s*\((?:[^()\\]|\\[\s\S])*\)\s*\((?:[^()\\]|\\[\s\S])*\)[msixpodualngcer]*/, + lookbehind: true, + greedy: true + }, // s{...}{...} + { + pattern: /(^|[^-]\b)(?:s|tr|y)\s*\{(?:[^{}\\]|\\[\s\S])*\}\s*\{(?:[^{}\\]|\\[\s\S])*\}[msixpodualngcer]*/, + lookbehind: true, + greedy: true + }, // s[...][...] + { + pattern: /(^|[^-]\b)(?:s|tr|y)\s*\[(?:[^[\]\\]|\\[\s\S])*\]\s*\[(?:[^[\]\\]|\\[\s\S])*\][msixpodualngcer]*/, + lookbehind: true, + greedy: true + }, // s<...><...> + { + pattern: /(^|[^-]\b)(?:s|tr|y)\s*<(?:[^<>\\]|\\[\s\S])*>\s*<(?:[^<>\\]|\\[\s\S])*>[msixpodualngcer]*/, + lookbehind: true, + greedy: true + }, // /.../ + // The look-ahead tries to prevent two divisions on + // the same line from being highlighted as regex. + // This does not support multi-line regex. + { + pattern: /\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(lt|gt|le|ge|eq|ne|cmp|not|and|or|xor|x)\b))/, + greedy: true + } + ], + // FIXME Not sure about the handling of ::, ', and # + variable: [ + // ${^POSTMATCH} + /[&*$@%]\{\^[A-Z]+\}/, // $^V + /[&*$@%]\^[A-Z_]/, // ${...} + /[&*$@%]#?(?=\{)/, // $foo + /[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+)+(?:::)*/i, // $1 + /[&*$@%]\d+/, // $_, @_, %! + // The negative lookahead prevents from breaking the %= operator + /(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/ + ], + filehandle: { + // <>, <FOO>, _ + pattern: /<(?![<=])\S*>|\b_\b/, + alias: 'symbol' + }, + vstring: { + // v1.2, 1.2.3 + pattern: /v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/, + alias: 'string' + }, + function: { + pattern: /sub [a-z0-9_]+/i, + inside: { + keyword: /sub/ + } + }, + keyword: /\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/, + number: /\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:\d(?:_?\d)*)?\.?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/, + operator: /-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:lt|gt|le|ge|eq|ne|cmp|not|and|or|xor)\b/, + punctuation: /[{}[\];(),:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_php.3e131b48.js b/assets/js/react-syntax-highlighter_languages_refractor_php.3e131b48.js new file mode 100644 index 000000000..acda70da7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_php.3e131b48.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2227,3047],{3205:e=>{function n(e){!function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,a,i,r){if(t.language===a){var s=t.tokenStack=[];t.code=t.code.replace(i,(function(e){if("function"==typeof r&&!r(e))return e;for(var i,o=s.length;-1!==t.code.indexOf(i=n(a,o));)++o;return s[o]=e,i})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,a){if(t.language===a&&t.tokenStack){t.grammar=e.languages[a];var i=0,r=Object.keys(t.tokenStack);!function s(o){for(var l=0;l<o.length&&!(i>=r.length);l++){var p=o[l];if("string"==typeof p||p.content&&"string"==typeof p.content){var c=r[i],g=t.tokenStack[c],u="string"==typeof p?p:p.content,d=n(a,c),f=u.indexOf(d);if(f>-1){++i;var h=u.substring(0,f),k=new e.Token(a,e.tokenize(g,t.grammar),"language-"+a,g),m=u.substring(f+d.length),b=[];h&&b.push.apply(b,s([h])),b.push(k),m&&b.push.apply(b,s([m])),"string"==typeof p?o.splice.apply(o,[l,1].concat(b)):p.content=b}}else p.content&&s(p.content)}return o}(t.tokens)}}}})}(e)}e.exports=n,n.displayName="markupTemplating",n.aliases=[]},8262:(e,n,t)=>{var a=t(3205);function i(e){e.register(a),function(e){e.languages.php=e.languages.extend("clike",{keyword:/\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i,boolean:{pattern:/\b(?:false|true)\b/i,alias:"constant"},constant:[/\b[A-Z_][A-Z0-9_]*\b/,/\b(?:null)\b/i],comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0}}),e.languages.insertBefore("php","string",{"shell-comment":{pattern:/(^|[^\\])#.*/,lookbehind:!0,alias:"comment"}}),e.languages.insertBefore("php","comment",{delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"}}),e.languages.insertBefore("php","keyword",{variable:/\$+(?:\w+\b|(?={))/i,package:{pattern:/(\\|namespace\s+|use\s+)[\w\\]+/,lookbehind:!0,inside:{punctuation:/\\/}}}),e.languages.insertBefore("php","operator",{property:{pattern:/(->)[\w]+/,lookbehind:!0}});var n={pattern:/{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/,lookbehind:!0,inside:{rest:e.languages.php}};e.languages.insertBefore("php","string",{"nowdoc-string":{pattern:/<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},"heredoc-string":{pattern:/<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:n}},"single-quoted-string":{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,alias:"string",inside:{interpolation:n}}}),delete e.languages.php.string,e.hooks.add("before-tokenize",(function(n){if(/<\?/.test(n.code)){e.languages["markup-templating"].buildPlaceholders(n,"php",/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/gi)}})),e.hooks.add("after-tokenize",(function(n){e.languages["markup-templating"].tokenizePlaceholders(n,"php")}))}(e)}e.exports=i,i.displayName="php",i.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_php.d64a6337.js b/assets/js/react-syntax-highlighter_languages_refractor_php.d64a6337.js new file mode 100644 index 000000000..2ddd68d4f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_php.d64a6337.js @@ -0,0 +1,271 @@ +"use strict"; +exports.id = 2227; +exports.ids = [2227,3047]; +exports.modules = { + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 88262: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = php +php.displayName = 'php' +php.aliases = [] +function php(Prism) { + Prism.register(refractorMarkupTemplating) + /** + * Original by Aaron Harun: http://aahacreative.com/2012/07/31/php-syntax-highlighting-prism/ + * Modified by Miles Johnson: http://milesj.me + * + * Supports the following: + * - Extends clike syntax + * - Support for PHP 5.3+ (namespaces, traits, generators, etc) + * - Smarter constant and function matching + * + * Adds the following new token classes: + * constant, delimiter, variable, function, package + */ + ;(function(Prism) { + Prism.languages.php = Prism.languages.extend('clike', { + keyword: /\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i, + boolean: { + pattern: /\b(?:false|true)\b/i, + alias: 'constant' + }, + constant: [/\b[A-Z_][A-Z0-9_]*\b/, /\b(?:null)\b/i], + comment: { + pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/, + lookbehind: true + } + }) + Prism.languages.insertBefore('php', 'string', { + 'shell-comment': { + pattern: /(^|[^\\])#.*/, + lookbehind: true, + alias: 'comment' + } + }) + Prism.languages.insertBefore('php', 'comment', { + delimiter: { + pattern: /\?>$|^<\?(?:php(?=\s)|=)?/i, + alias: 'important' + } + }) + Prism.languages.insertBefore('php', 'keyword', { + variable: /\$+(?:\w+\b|(?={))/i, + package: { + pattern: /(\\|namespace\s+|use\s+)[\w\\]+/, + lookbehind: true, + inside: { + punctuation: /\\/ + } + } + }) // Must be defined after the function pattern + Prism.languages.insertBefore('php', 'operator', { + property: { + pattern: /(->)[\w]+/, + lookbehind: true + } + }) + var string_interpolation = { + pattern: /{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/, + lookbehind: true, + inside: { + rest: Prism.languages.php + } + } + Prism.languages.insertBefore('php', 'string', { + 'nowdoc-string': { + pattern: /<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/, + greedy: true, + alias: 'string', + inside: { + delimiter: { + pattern: /^<<<'[^']+'|[a-z_]\w*;$/i, + alias: 'symbol', + inside: { + punctuation: /^<<<'?|[';]$/ + } + } + } + }, + 'heredoc-string': { + pattern: /<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i, + greedy: true, + alias: 'string', + inside: { + delimiter: { + pattern: /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i, + alias: 'symbol', + inside: { + punctuation: /^<<<"?|[";]$/ + } + }, + interpolation: string_interpolation // See below + } + }, + 'single-quoted-string': { + pattern: /'(?:\\[\s\S]|[^\\'])*'/, + greedy: true, + alias: 'string' + }, + 'double-quoted-string': { + pattern: /"(?:\\[\s\S]|[^\\"])*"/, + greedy: true, + alias: 'string', + inside: { + interpolation: string_interpolation // See below + } + } + }) // The different types of PHP strings "replace" the C-like standard string + delete Prism.languages.php['string'] + Prism.hooks.add('before-tokenize', function(env) { + if (!/<\?/.test(env.code)) { + return + } + var phpPattern = /<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/gi + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'php', + phpPattern + ) + }) + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders(env, 'php') + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_phpExtras.14cdd0ca.js b/assets/js/react-syntax-highlighter_languages_refractor_phpExtras.14cdd0ca.js new file mode 100644 index 000000000..c480e9f4a --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_phpExtras.14cdd0ca.js @@ -0,0 +1,297 @@ +"use strict"; +exports.id = 5793; +exports.ids = [5793,3047,2227]; +exports.modules = { + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 5137: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorPhp = __webpack_require__(88262) +module.exports = phpExtras +phpExtras.displayName = 'phpExtras' +phpExtras.aliases = [] +function phpExtras(Prism) { + Prism.register(refractorPhp) + Prism.languages.insertBefore('php', 'variable', { + this: /\$this\b/, + global: /\$(?:_(?:SERVER|GET|POST|FILES|REQUEST|SESSION|ENV|COOKIE)|GLOBALS|HTTP_RAW_POST_DATA|argc|argv|php_errormsg|http_response_header)\b/, + scope: { + pattern: /\b[\w\\]+::/, + inside: { + keyword: /static|self|parent/, + punctuation: /::|\\/ + } + } + }) +} + + +/***/ }), + +/***/ 88262: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = php +php.displayName = 'php' +php.aliases = [] +function php(Prism) { + Prism.register(refractorMarkupTemplating) + /** + * Original by Aaron Harun: http://aahacreative.com/2012/07/31/php-syntax-highlighting-prism/ + * Modified by Miles Johnson: http://milesj.me + * + * Supports the following: + * - Extends clike syntax + * - Support for PHP 5.3+ (namespaces, traits, generators, etc) + * - Smarter constant and function matching + * + * Adds the following new token classes: + * constant, delimiter, variable, function, package + */ + ;(function(Prism) { + Prism.languages.php = Prism.languages.extend('clike', { + keyword: /\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i, + boolean: { + pattern: /\b(?:false|true)\b/i, + alias: 'constant' + }, + constant: [/\b[A-Z_][A-Z0-9_]*\b/, /\b(?:null)\b/i], + comment: { + pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/, + lookbehind: true + } + }) + Prism.languages.insertBefore('php', 'string', { + 'shell-comment': { + pattern: /(^|[^\\])#.*/, + lookbehind: true, + alias: 'comment' + } + }) + Prism.languages.insertBefore('php', 'comment', { + delimiter: { + pattern: /\?>$|^<\?(?:php(?=\s)|=)?/i, + alias: 'important' + } + }) + Prism.languages.insertBefore('php', 'keyword', { + variable: /\$+(?:\w+\b|(?={))/i, + package: { + pattern: /(\\|namespace\s+|use\s+)[\w\\]+/, + lookbehind: true, + inside: { + punctuation: /\\/ + } + } + }) // Must be defined after the function pattern + Prism.languages.insertBefore('php', 'operator', { + property: { + pattern: /(->)[\w]+/, + lookbehind: true + } + }) + var string_interpolation = { + pattern: /{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/, + lookbehind: true, + inside: { + rest: Prism.languages.php + } + } + Prism.languages.insertBefore('php', 'string', { + 'nowdoc-string': { + pattern: /<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/, + greedy: true, + alias: 'string', + inside: { + delimiter: { + pattern: /^<<<'[^']+'|[a-z_]\w*;$/i, + alias: 'symbol', + inside: { + punctuation: /^<<<'?|[';]$/ + } + } + } + }, + 'heredoc-string': { + pattern: /<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i, + greedy: true, + alias: 'string', + inside: { + delimiter: { + pattern: /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i, + alias: 'symbol', + inside: { + punctuation: /^<<<"?|[";]$/ + } + }, + interpolation: string_interpolation // See below + } + }, + 'single-quoted-string': { + pattern: /'(?:\\[\s\S]|[^\\'])*'/, + greedy: true, + alias: 'string' + }, + 'double-quoted-string': { + pattern: /"(?:\\[\s\S]|[^\\"])*"/, + greedy: true, + alias: 'string', + inside: { + interpolation: string_interpolation // See below + } + } + }) // The different types of PHP strings "replace" the C-like standard string + delete Prism.languages.php['string'] + Prism.hooks.add('before-tokenize', function(env) { + if (!/<\?/.test(env.code)) { + return + } + var phpPattern = /<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/gi + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'php', + phpPattern + ) + }) + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders(env, 'php') + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_phpExtras.15b447bc.js b/assets/js/react-syntax-highlighter_languages_refractor_phpExtras.15b447bc.js new file mode 100644 index 000000000..bb38c147d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_phpExtras.15b447bc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5793,3047,2227],{3205:e=>{function n(e){!function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,a,i,r){if(t.language===a){var s=t.tokenStack=[];t.code=t.code.replace(i,(function(e){if("function"==typeof r&&!r(e))return e;for(var i,o=s.length;-1!==t.code.indexOf(i=n(a,o));)++o;return s[o]=e,i})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,a){if(t.language===a&&t.tokenStack){t.grammar=e.languages[a];var i=0,r=Object.keys(t.tokenStack);!function s(o){for(var l=0;l<o.length&&!(i>=r.length);l++){var p=o[l];if("string"==typeof p||p.content&&"string"==typeof p.content){var c=r[i],g=t.tokenStack[c],u="string"==typeof p?p:p.content,d=n(a,c),f=u.indexOf(d);if(f>-1){++i;var h=u.substring(0,f),b=new e.Token(a,e.tokenize(g,t.grammar),"language-"+a,g),m=u.substring(f+d.length),k=[];h&&k.push.apply(k,s([h])),k.push(b),m&&k.push.apply(k,s([m])),"string"==typeof p?o.splice.apply(o,[l,1].concat(k)):p.content=k}}else p.content&&s(p.content)}return o}(t.tokens)}}}})}(e)}e.exports=n,n.displayName="markupTemplating",n.aliases=[]},5137:(e,n,t)=>{var a=t(8262);function i(e){e.register(a),e.languages.insertBefore("php","variable",{this:/\$this\b/,global:/\$(?:_(?:SERVER|GET|POST|FILES|REQUEST|SESSION|ENV|COOKIE)|GLOBALS|HTTP_RAW_POST_DATA|argc|argv|php_errormsg|http_response_header)\b/,scope:{pattern:/\b[\w\\]+::/,inside:{keyword:/static|self|parent/,punctuation:/::|\\/}}})}e.exports=i,i.displayName="phpExtras",i.aliases=[]},8262:(e,n,t)=>{var a=t(3205);function i(e){e.register(a),function(e){e.languages.php=e.languages.extend("clike",{keyword:/\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i,boolean:{pattern:/\b(?:false|true)\b/i,alias:"constant"},constant:[/\b[A-Z_][A-Z0-9_]*\b/,/\b(?:null)\b/i],comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0}}),e.languages.insertBefore("php","string",{"shell-comment":{pattern:/(^|[^\\])#.*/,lookbehind:!0,alias:"comment"}}),e.languages.insertBefore("php","comment",{delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"}}),e.languages.insertBefore("php","keyword",{variable:/\$+(?:\w+\b|(?={))/i,package:{pattern:/(\\|namespace\s+|use\s+)[\w\\]+/,lookbehind:!0,inside:{punctuation:/\\/}}}),e.languages.insertBefore("php","operator",{property:{pattern:/(->)[\w]+/,lookbehind:!0}});var n={pattern:/{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/,lookbehind:!0,inside:{rest:e.languages.php}};e.languages.insertBefore("php","string",{"nowdoc-string":{pattern:/<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},"heredoc-string":{pattern:/<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i,greedy:!0,alias:"string",inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:n}},"single-quoted-string":{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,alias:"string",inside:{interpolation:n}}}),delete e.languages.php.string,e.hooks.add("before-tokenize",(function(n){if(/<\?/.test(n.code)){e.languages["markup-templating"].buildPlaceholders(n,"php",/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/gi)}})),e.hooks.add("after-tokenize",(function(n){e.languages["markup-templating"].tokenizePlaceholders(n,"php")}))}(e)}e.exports=i,i.displayName="php",i.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_plsql.4ba7b65f.js b/assets/js/react-syntax-highlighter_languages_refractor_plsql.4ba7b65f.js new file mode 100644 index 000000000..4f4cb9cc5 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_plsql.4ba7b65f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8840,7055],{9149:(E,T,I)=>{var A=I(1114);function R(E){E.register(A),function(E){var T=E.languages.plsql=E.languages.extend("sql",{comment:[/\/\*[\s\S]*?\*\//,/--.*/]}),I=T.keyword;Array.isArray(I)||(I=T.keyword=[I]),I.unshift(/\b(?:ACCESS|AGENT|AGGREGATE|ARRAY|ARROW|AT|ATTRIBUTE|AUDIT|AUTHID|BFILE_BASE|BLOB_BASE|BLOCK|BODY|BOTH|BOUND|BYTE|CALLING|CHAR_BASE|CHARSET(?:FORM|ID)|CLOB_BASE|COLAUTH|COLLECT|CLUSTERS?|COMPILED|COMPRESS|CONSTANT|CONSTRUCTOR|CONTEXT|CRASH|CUSTOMDATUM|DANGLING|DATE_BASE|DEFINE|DETERMINISTIC|DURATION|ELEMENT|EMPTY|EXCEPTIONS?|EXCLUSIVE|EXTERNAL|FINAL|FORALL|FORM|FOUND|GENERAL|HEAP|HIDDEN|IDENTIFIED|IMMEDIATE|INCLUDING|INCREMENT|INDICATOR|INDEXES|INDICES|INFINITE|INITIAL|ISOPEN|INSTANTIABLE|INTERFACE|INVALIDATE|JAVA|LARGE|LEADING|LENGTH|LIBRARY|LIKE[24C]|LIMITED|LONG|LOOP|MAP|MAXEXTENTS|MAXLEN|MEMBER|MINUS|MLSLABEL|MULTISET|NAME|NAN|NATIVE|NEW|NOAUDIT|NOCOMPRESS|NOCOPY|NOTFOUND|NOWAIT|NUMBER(?:_BASE)?|OBJECT|OCI(?:COLL|DATE|DATETIME|DURATION|INTERVAL|LOBLOCATOR|NUMBER|RAW|REF|REFCURSOR|ROWID|STRING|TYPE)|OFFLINE|ONLINE|ONLY|OPAQUE|OPERATOR|ORACLE|ORADATA|ORGANIZATION|ORL(?:ANY|VARY)|OTHERS|OVERLAPS|OVERRIDING|PACKAGE|PARALLEL_ENABLE|PARAMETERS?|PASCAL|PCTFREE|PIPE(?:LINED)?|PRAGMA|PRIOR|PRIVATE|RAISE|RANGE|RAW|RECORD|REF|REFERENCE|REM|REMAINDER|RESULT|RESOURCE|RETURNING|REVERSE|ROW(?:ID|NUM|TYPE)|SAMPLE|SB[124]|SEGMENT|SELF|SEPARATE|SEQUENCE|SHORT|SIZE(?:_T)?|SPARSE|SQL(?:CODE|DATA|NAME|STATE)|STANDARD|STATIC|STDDEV|STORED|STRING|STRUCT|STYLE|SUBMULTISET|SUBPARTITION|SUBSTITUTABLE|SUBTYPE|SUCCESSFUL|SYNONYM|SYSDATE|TABAUTH|TDO|THE|TIMEZONE_(?:ABBR|HOUR|MINUTE|REGION)|TRAILING|TRANSAC(?:TIONAL)?|TRUSTED|UB[124]|UID|UNDER|UNTRUSTED|VALIDATE|VALIST|VARCHAR2|VARIABLE|VARIANCE|VARRAY|VIEWS|VOID|WHENEVER|WRAPPED|ZONE)\b/i);var A=T.operator;Array.isArray(A)||(A=T.operator=[A]),A.unshift(/:=/)}(E)}E.exports=R,R.displayName="plsql",R.aliases=[]},1114:E=>{function T(E){E.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:TRUE|FALSE|NULL)\b/i,number:/\b0x[\da-f]+\b|\b\d+\.?\d*|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}E.exports=T,T.displayName="sql",T.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_plsql.fb5b0daf.js b/assets/js/react-syntax-highlighter_languages_refractor_plsql.fb5b0daf.js new file mode 100644 index 000000000..98be30ac5 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_plsql.fb5b0daf.js @@ -0,0 +1,78 @@ +"use strict"; +exports.id = 8840; +exports.ids = [8840,7055]; +exports.modules = { + +/***/ 59149: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorSql = __webpack_require__(11114) +module.exports = plsql +plsql.displayName = 'plsql' +plsql.aliases = [] +function plsql(Prism) { + Prism.register(refractorSql) + ;(function(Prism) { + var plsql = (Prism.languages.plsql = Prism.languages.extend('sql', { + comment: [/\/\*[\s\S]*?\*\//, /--.*/] + })) + var keyword = plsql['keyword'] + if (!Array.isArray(keyword)) { + keyword = plsql['keyword'] = [keyword] + } + keyword.unshift( + /\b(?:ACCESS|AGENT|AGGREGATE|ARRAY|ARROW|AT|ATTRIBUTE|AUDIT|AUTHID|BFILE_BASE|BLOB_BASE|BLOCK|BODY|BOTH|BOUND|BYTE|CALLING|CHAR_BASE|CHARSET(?:FORM|ID)|CLOB_BASE|COLAUTH|COLLECT|CLUSTERS?|COMPILED|COMPRESS|CONSTANT|CONSTRUCTOR|CONTEXT|CRASH|CUSTOMDATUM|DANGLING|DATE_BASE|DEFINE|DETERMINISTIC|DURATION|ELEMENT|EMPTY|EXCEPTIONS?|EXCLUSIVE|EXTERNAL|FINAL|FORALL|FORM|FOUND|GENERAL|HEAP|HIDDEN|IDENTIFIED|IMMEDIATE|INCLUDING|INCREMENT|INDICATOR|INDEXES|INDICES|INFINITE|INITIAL|ISOPEN|INSTANTIABLE|INTERFACE|INVALIDATE|JAVA|LARGE|LEADING|LENGTH|LIBRARY|LIKE[24C]|LIMITED|LONG|LOOP|MAP|MAXEXTENTS|MAXLEN|MEMBER|MINUS|MLSLABEL|MULTISET|NAME|NAN|NATIVE|NEW|NOAUDIT|NOCOMPRESS|NOCOPY|NOTFOUND|NOWAIT|NUMBER(?:_BASE)?|OBJECT|OCI(?:COLL|DATE|DATETIME|DURATION|INTERVAL|LOBLOCATOR|NUMBER|RAW|REF|REFCURSOR|ROWID|STRING|TYPE)|OFFLINE|ONLINE|ONLY|OPAQUE|OPERATOR|ORACLE|ORADATA|ORGANIZATION|ORL(?:ANY|VARY)|OTHERS|OVERLAPS|OVERRIDING|PACKAGE|PARALLEL_ENABLE|PARAMETERS?|PASCAL|PCTFREE|PIPE(?:LINED)?|PRAGMA|PRIOR|PRIVATE|RAISE|RANGE|RAW|RECORD|REF|REFERENCE|REM|REMAINDER|RESULT|RESOURCE|RETURNING|REVERSE|ROW(?:ID|NUM|TYPE)|SAMPLE|SB[124]|SEGMENT|SELF|SEPARATE|SEQUENCE|SHORT|SIZE(?:_T)?|SPARSE|SQL(?:CODE|DATA|NAME|STATE)|STANDARD|STATIC|STDDEV|STORED|STRING|STRUCT|STYLE|SUBMULTISET|SUBPARTITION|SUBSTITUTABLE|SUBTYPE|SUCCESSFUL|SYNONYM|SYSDATE|TABAUTH|TDO|THE|TIMEZONE_(?:ABBR|HOUR|MINUTE|REGION)|TRAILING|TRANSAC(?:TIONAL)?|TRUSTED|UB[124]|UID|UNDER|UNTRUSTED|VALIDATE|VALIST|VARCHAR2|VARIABLE|VARIANCE|VARRAY|VIEWS|VOID|WHENEVER|WRAPPED|ZONE)\b/i + ) + var operator = plsql['operator'] + if (!Array.isArray(operator)) { + operator = plsql['operator'] = [operator] + } + operator.unshift(/:=/) + })(Prism) +} + + +/***/ }), + +/***/ 11114: +/***/ ((module) => { + + + +module.exports = sql +sql.displayName = 'sql' +sql.aliases = [] +function sql(Prism) { + Prism.languages.sql = { + comment: { + pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/, + lookbehind: true + }, + variable: [ + { + pattern: /@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/, + greedy: true + }, + /@[\w.$]+/ + ], + string: { + pattern: /(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/, + greedy: true, + lookbehind: true + }, + function: /\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i, + // Should we highlight user defined functions too? + keyword: /\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i, + boolean: /\b(?:TRUE|FALSE|NULL)\b/i, + number: /\b0x[\da-f]+\b|\b\d+\.?\d*|\B\.\d+\b/i, + operator: /[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i, + punctuation: /[;[\]()`,.]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_powershell.40a820a3.js b/assets/js/react-syntax-highlighter_languages_refractor_powershell.40a820a3.js new file mode 100644 index 000000000..eca42d383 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_powershell.40a820a3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[342],{1777:e=>{function t(e){!function(e){var t=e.languages.powershell={comment:[{pattern:/(^|[^`])<#[\s\S]*?#>/,lookbehind:!0},{pattern:/(^|[^`])#.*/,lookbehind:!0}],string:[{pattern:/"(?:`[\s\S]|[^`"])*"/,greedy:!0,inside:{function:{pattern:/(^|[^`])\$\((?:\$\(.*?\)|(?!\$\()[^\r\n)])*\)/,lookbehind:!0,inside:{}}}},{pattern:/'(?:[^']|'')*'/,greedy:!0}],namespace:/\[[a-z](?:\[(?:\[[^\]]*]|[^\[\]])*]|[^\[\]])*]/i,boolean:/\$(?:true|false)\b/i,variable:/\$\w+\b/i,function:[/\b(?:Add-(?:Computer|Content|History|Member|PSSnapin|Type)|Checkpoint-Computer|Clear-(?:Content|EventLog|History|Item|ItemProperty|Variable)|Compare-Object|Complete-Transaction|Connect-PSSession|ConvertFrom-(?:Csv|Json|StringData)|Convert-Path|ConvertTo-(?:Csv|Html|Json|Xml)|Copy-(?:Item|ItemProperty)|Debug-Process|Disable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Disconnect-PSSession|Enable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Enter-PSSession|Exit-PSSession|Export-(?:Alias|Clixml|Console|Csv|FormatData|ModuleMember|PSSession)|ForEach-Object|Format-(?:Custom|List|Table|Wide)|Get-(?:Alias|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Culture|Date|Event|EventLog|EventSubscriber|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|WmiObject)|Group-Object|Import-(?:Alias|Clixml|Csv|LocalizedData|Module|PSSession)|Invoke-(?:Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)|Join-Path|Limit-EventLog|Measure-(?:Command|Object)|Move-(?:Item|ItemProperty)|New-(?:Alias|Event|EventLog|Item|ItemProperty|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy)|Out-(?:Default|File|GridView|Host|Null|Printer|String)|Pop-Location|Push-Location|Read-Host|Receive-(?:Job|PSSession)|Register-(?:EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)|Remove-(?:Computer|Event|EventLog|Item|ItemProperty|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)|Rename-(?:Computer|Item|ItemProperty)|Reset-ComputerMachinePassword|Resolve-Path|Restart-(?:Computer|Service)|Restore-Computer|Resume-(?:Job|Service)|Save-Help|Select-(?:Object|String|Xml)|Send-MailMessage|Set-(?:Alias|Content|Date|Item|ItemProperty|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)|Show-(?:Command|ControlPanelItem|EventLog)|Sort-Object|Split-Path|Start-(?:Job|Process|Service|Sleep|Transaction)|Stop-(?:Computer|Job|Process|Service)|Suspend-(?:Job|Service)|Tee-Object|Test-(?:ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)|Trace-Command|Unblock-File|Undo-Transaction|Unregister-(?:Event|PSSessionConfiguration)|Update-(?:FormatData|Help|List|TypeData)|Use-Transaction|Wait-(?:Event|Job|Process)|Where-Object|Write-(?:Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning))\b/i,/\b(?:ac|cat|chdir|clc|cli|clp|clv|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|ebp|echo|epal|epcsv|epsn|erase|fc|fl|ft|fw|gal|gbp|gc|gci|gcs|gdr|gi|gl|gm|gp|gps|group|gsv|gu|gv|gwmi|iex|ii|ipal|ipcsv|ipsn|irm|iwmi|iwr|kill|lp|ls|measure|mi|mount|move|mp|mv|nal|ndr|ni|nv|ogv|popd|ps|pushd|pwd|rbp|rd|rdr|ren|ri|rm|rmdir|rni|rnp|rp|rv|rvpa|rwmi|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls|sort|sp|spps|spsv|start|sv|swmi|tee|trcm|type|write)\b/i],keyword:/\b(?:Begin|Break|Catch|Class|Continue|Data|Define|Do|DynamicParam|Else|ElseIf|End|Exit|Filter|Finally|For|ForEach|From|Function|If|InlineScript|Parallel|Param|Process|Return|Sequence|Switch|Throw|Trap|Try|Until|Using|Var|While|Workflow)\b/i,operator:{pattern:/(\W?)(?:!|-(eq|ne|gt|ge|lt|le|sh[lr]|not|b?(?:and|x?or)|(?:Not)?(?:Like|Match|Contains|In)|Replace|Join|is(?:Not)?|as)\b|-[-=]?|\+[+=]?|[*\/%]=?)/i,lookbehind:!0},punctuation:/[|{}[\];(),.]/},o=t.string[0].inside;o.boolean=t.boolean,o.variable=t.variable,o.function.inside=t}(e)}e.exports=t,t.displayName="powershell",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_powershell.51fee594.js b/assets/js/react-syntax-highlighter_languages_refractor_powershell.51fee594.js new file mode 100644 index 000000000..67b9ad73f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_powershell.51fee594.js @@ -0,0 +1,77 @@ +"use strict"; +exports.id = 342; +exports.ids = [342]; +exports.modules = { + +/***/ 61777: +/***/ ((module) => { + + + +module.exports = powershell +powershell.displayName = 'powershell' +powershell.aliases = [] +function powershell(Prism) { + ;(function(Prism) { + var powershell = (Prism.languages.powershell = { + comment: [ + { + pattern: /(^|[^`])<#[\s\S]*?#>/, + lookbehind: true + }, + { + pattern: /(^|[^`])#.*/, + lookbehind: true + } + ], + string: [ + { + pattern: /"(?:`[\s\S]|[^`"])*"/, + greedy: true, + inside: { + function: { + // Allow for one level of nesting + pattern: /(^|[^`])\$\((?:\$\(.*?\)|(?!\$\()[^\r\n)])*\)/, + lookbehind: true, + // Populated at end of file + inside: {} + } + } + }, + { + pattern: /'(?:[^']|'')*'/, + greedy: true + } + ], + // Matches name spaces as well as casts, attribute decorators. Force starting with letter to avoid matching array indices + // Supports two levels of nested brackets (e.g. `[OutputType([System.Collections.Generic.List[int]])]`) + namespace: /\[[a-z](?:\[(?:\[[^\]]*]|[^\[\]])*]|[^\[\]])*]/i, + boolean: /\$(?:true|false)\b/i, + variable: /\$\w+\b/i, + // Cmdlets and aliases. Aliases should come last, otherwise "write" gets preferred over "write-host" for example + // Get-Command | ?{ $_.ModuleName -match "Microsoft.PowerShell.(Util|Core|Management)" } + // Get-Alias | ?{ $_.ReferencedCommand.Module.Name -match "Microsoft.PowerShell.(Util|Core|Management)" } + function: [ + /\b(?:Add-(?:Computer|Content|History|Member|PSSnapin|Type)|Checkpoint-Computer|Clear-(?:Content|EventLog|History|Item|ItemProperty|Variable)|Compare-Object|Complete-Transaction|Connect-PSSession|ConvertFrom-(?:Csv|Json|StringData)|Convert-Path|ConvertTo-(?:Csv|Html|Json|Xml)|Copy-(?:Item|ItemProperty)|Debug-Process|Disable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Disconnect-PSSession|Enable-(?:ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)|Enter-PSSession|Exit-PSSession|Export-(?:Alias|Clixml|Console|Csv|FormatData|ModuleMember|PSSession)|ForEach-Object|Format-(?:Custom|List|Table|Wide)|Get-(?:Alias|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Culture|Date|Event|EventLog|EventSubscriber|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|WmiObject)|Group-Object|Import-(?:Alias|Clixml|Csv|LocalizedData|Module|PSSession)|Invoke-(?:Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)|Join-Path|Limit-EventLog|Measure-(?:Command|Object)|Move-(?:Item|ItemProperty)|New-(?:Alias|Event|EventLog|Item|ItemProperty|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy)|Out-(?:Default|File|GridView|Host|Null|Printer|String)|Pop-Location|Push-Location|Read-Host|Receive-(?:Job|PSSession)|Register-(?:EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)|Remove-(?:Computer|Event|EventLog|Item|ItemProperty|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)|Rename-(?:Computer|Item|ItemProperty)|Reset-ComputerMachinePassword|Resolve-Path|Restart-(?:Computer|Service)|Restore-Computer|Resume-(?:Job|Service)|Save-Help|Select-(?:Object|String|Xml)|Send-MailMessage|Set-(?:Alias|Content|Date|Item|ItemProperty|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)|Show-(?:Command|ControlPanelItem|EventLog)|Sort-Object|Split-Path|Start-(?:Job|Process|Service|Sleep|Transaction)|Stop-(?:Computer|Job|Process|Service)|Suspend-(?:Job|Service)|Tee-Object|Test-(?:ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)|Trace-Command|Unblock-File|Undo-Transaction|Unregister-(?:Event|PSSessionConfiguration)|Update-(?:FormatData|Help|List|TypeData)|Use-Transaction|Wait-(?:Event|Job|Process)|Where-Object|Write-(?:Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning))\b/i, + /\b(?:ac|cat|chdir|clc|cli|clp|clv|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|ebp|echo|epal|epcsv|epsn|erase|fc|fl|ft|fw|gal|gbp|gc|gci|gcs|gdr|gi|gl|gm|gp|gps|group|gsv|gu|gv|gwmi|iex|ii|ipal|ipcsv|ipsn|irm|iwmi|iwr|kill|lp|ls|measure|mi|mount|move|mp|mv|nal|ndr|ni|nv|ogv|popd|ps|pushd|pwd|rbp|rd|rdr|ren|ri|rm|rmdir|rni|rnp|rp|rv|rvpa|rwmi|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls|sort|sp|spps|spsv|start|sv|swmi|tee|trcm|type|write)\b/i + ], + // per http://technet.microsoft.com/en-us/library/hh847744.aspx + keyword: /\b(?:Begin|Break|Catch|Class|Continue|Data|Define|Do|DynamicParam|Else|ElseIf|End|Exit|Filter|Finally|For|ForEach|From|Function|If|InlineScript|Parallel|Param|Process|Return|Sequence|Switch|Throw|Trap|Try|Until|Using|Var|While|Workflow)\b/i, + operator: { + pattern: /(\W?)(?:!|-(eq|ne|gt|ge|lt|le|sh[lr]|not|b?(?:and|x?or)|(?:Not)?(?:Like|Match|Contains|In)|Replace|Join|is(?:Not)?|as)\b|-[-=]?|\+[+=]?|[*\/%]=?)/i, + lookbehind: true + }, + punctuation: /[|{}[\];(),.]/ + }) // Variable interpolation inside strings, and nested expressions + var stringInside = powershell.string[0].inside + stringInside.boolean = powershell.boolean + stringInside.variable = powershell.variable + stringInside.function.inside = powershell + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_processing.5d72be35.js b/assets/js/react-syntax-highlighter_languages_refractor_processing.5d72be35.js new file mode 100644 index 000000000..6ecedfa88 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_processing.5d72be35.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9770],{3623:e=>{function a(e){e.languages.processing=e.languages.extend("clike",{keyword:/\b(?:break|catch|case|class|continue|default|else|extends|final|for|if|implements|import|new|null|private|public|return|static|super|switch|this|try|void|while)\b/,operator:/<[<=]?|>[>=]?|&&?|\|\|?|[%?]|[!=+\-*\/]=?/}),e.languages.insertBefore("processing","number",{constant:/\b(?!XML\b)[A-Z][A-Z\d_]+\b/,type:{pattern:/\b(?:boolean|byte|char|color|double|float|int|XML|[A-Z]\w*)\b/,alias:"variable"}}),e.languages.processing.function.pattern=/\w+(?=\s*\()/,e.languages.processing["class-name"].alias="variable"}e.exports=a,a.displayName="processing",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_processing.77e86b3c.js b/assets/js/react-syntax-highlighter_languages_refractor_processing.77e86b3c.js new file mode 100644 index 000000000..cb99fc45b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_processing.77e86b3c.js @@ -0,0 +1,35 @@ +"use strict"; +exports.id = 9770; +exports.ids = [9770]; +exports.modules = { + +/***/ 3623: +/***/ ((module) => { + + + +module.exports = processing +processing.displayName = 'processing' +processing.aliases = [] +function processing(Prism) { + Prism.languages.processing = Prism.languages.extend('clike', { + keyword: /\b(?:break|catch|case|class|continue|default|else|extends|final|for|if|implements|import|new|null|private|public|return|static|super|switch|this|try|void|while)\b/, + operator: /<[<=]?|>[>=]?|&&?|\|\|?|[%?]|[!=+\-*\/]=?/ + }) + Prism.languages.insertBefore('processing', 'number', { + // Special case: XML is a type + constant: /\b(?!XML\b)[A-Z][A-Z\d_]+\b/, + type: { + pattern: /\b(?:boolean|byte|char|color|double|float|int|XML|[A-Z]\w*)\b/, + alias: 'variable' + } + }) // Spaces are allowed between function name and parenthesis + Prism.languages.processing['function'].pattern = /\w+(?=\s*\()/ // Class-names is not styled by default + Prism.languages.processing['class-name'].alias = 'variable' +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_prolog.ad37b162.js b/assets/js/react-syntax-highlighter_languages_refractor_prolog.ad37b162.js new file mode 100644 index 000000000..db0bea302 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_prolog.ad37b162.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[4045],{2707:e=>{function n(e){e.languages.prolog={comment:[/%.+/,/\/\*[\s\S]*?\*\//],string:{pattern:/(["'])(?:\1\1|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},builtin:/\b(?:fx|fy|xf[xy]?|yfx?)\b/,variable:/\b[A-Z_]\w*/,function:/\b[a-z]\w*(?:(?=\()|\/\d+)/,number:/\b\d+\.?\d*/,operator:/[:\\=><\-?*@\/;+^|!$.]+|\b(?:is|mod|not|xor)\b/,punctuation:/[(){}\[\],]/}}e.exports=n,n.displayName="prolog",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_prolog.f075d073.js b/assets/js/react-syntax-highlighter_languages_refractor_prolog.f075d073.js new file mode 100644 index 000000000..ed22dbc50 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_prolog.f075d073.js @@ -0,0 +1,38 @@ +"use strict"; +exports.id = 4045; +exports.ids = [4045]; +exports.modules = { + +/***/ 82707: +/***/ ((module) => { + + + +module.exports = prolog +prolog.displayName = 'prolog' +prolog.aliases = [] +function prolog(Prism) { + Prism.languages.prolog = { + // Syntax depends on the implementation + comment: [/%.+/, /\/\*[\s\S]*?\*\//], + // Depending on the implementation, strings may allow escaped newlines and quote-escape + string: { + pattern: /(["'])(?:\1\1|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + builtin: /\b(?:fx|fy|xf[xy]?|yfx?)\b/, + variable: /\b[A-Z_]\w*/, + // FIXME: Should we list all null-ary predicates (not followed by a parenthesis) like halt, trace, etc.? + function: /\b[a-z]\w*(?:(?=\()|\/\d+)/, + number: /\b\d+\.?\d*/, + // Custom operators are allowed + operator: /[:\\=><\-?*@\/;+^|!$.]+|\b(?:is|mod|not|xor)\b/, + punctuation: /[(){}\[\],]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_properties.237c7511.js b/assets/js/react-syntax-highlighter_languages_refractor_properties.237c7511.js new file mode 100644 index 000000000..33ad83519 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_properties.237c7511.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[81],{6267:e=>{function t(e){e.languages.properties={comment:/^[ \t]*[#!].*$/m,"attr-value":{pattern:/(^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?: *[=:] *| ))(?:\\(?:\r\n|[\s\S])|[^\\\r\n])+/m,lookbehind:!0},"attr-name":/^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?= *[=:] *| )/m,punctuation:/[=:]/}}e.exports=t,t.displayName="properties",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_properties.d0ac081e.js b/assets/js/react-syntax-highlighter_languages_refractor_properties.d0ac081e.js new file mode 100644 index 000000000..90c31b28c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_properties.d0ac081e.js @@ -0,0 +1,30 @@ +"use strict"; +exports.id = 81; +exports.ids = [81]; +exports.modules = { + +/***/ 56267: +/***/ ((module) => { + + + +module.exports = properties +properties.displayName = 'properties' +properties.aliases = [] +function properties(Prism) { + Prism.languages.properties = { + comment: /^[ \t]*[#!].*$/m, + 'attr-value': { + pattern: /(^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?: *[=:] *| ))(?:\\(?:\r\n|[\s\S])|[^\\\r\n])+/m, + lookbehind: true + }, + 'attr-name': /^[ \t]*(?:\\(?:\r\n|[\s\S])|[^\\\s:=])+?(?= *[=:] *| )/m, + punctuation: /[=:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_protobuf.2da3caf4.js b/assets/js/react-syntax-highlighter_languages_refractor_protobuf.2da3caf4.js new file mode 100644 index 000000000..c90f5c00c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_protobuf.2da3caf4.js @@ -0,0 +1,53 @@ +"use strict"; +exports.id = 979; +exports.ids = [979]; +exports.modules = { + +/***/ 98809: +/***/ ((module) => { + + + +module.exports = protobuf +protobuf.displayName = 'protobuf' +protobuf.aliases = [] +function protobuf(Prism) { + ;(function(Prism) { + var builtinTypes = /\b(?:double|float|[su]?int(?:32|64)|s?fixed(?:32|64)|bool|string|bytes)\b/ + Prism.languages.protobuf = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|extend|message|service)\s+)[A-Za-z_]\w*(?=\s*\{)/, + lookbehind: true + }, + keyword: /\b(?:enum|extend|extensions|import|message|oneof|option|optional|package|public|repeated|required|reserved|service|syntax|to)\b/ + }) + Prism.languages.insertBefore('protobuf', 'operator', { + map: { + pattern: /\bmap<\s*[\w.]+\s*,\s*[\w.]+\s*>(?=\s+[A-Za-z_]\w*\s*[=;])/, + alias: 'class-name', + inside: { + punctuation: /[<>.,]/, + builtin: builtinTypes + } + }, + builtin: builtinTypes, + 'positional-class-name': { + pattern: /(?:\b|\B\.)[A-Za-z_]\w*(?:\.[A-Za-z_]\w*)*(?=\s+[A-Za-z_]\w*\s*[=;])/, + alias: 'class-name', + inside: { + punctuation: /\./ + } + }, + annotation: { + pattern: /(\[\s*)[A-Za-z_]\w*(?=\s*=)/, + lookbehind: true + } + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_protobuf.c760fa6c.js b/assets/js/react-syntax-highlighter_languages_refractor_protobuf.c760fa6c.js new file mode 100644 index 000000000..3db4d4580 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_protobuf.c760fa6c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[979],{8809:e=>{function s(e){!function(e){var s=/\b(?:double|float|[su]?int(?:32|64)|s?fixed(?:32|64)|bool|string|bytes)\b/;e.languages.protobuf=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|extend|message|service)\s+)[A-Za-z_]\w*(?=\s*\{)/,lookbehind:!0},keyword:/\b(?:enum|extend|extensions|import|message|oneof|option|optional|package|public|repeated|required|reserved|service|syntax|to)\b/}),e.languages.insertBefore("protobuf","operator",{map:{pattern:/\bmap<\s*[\w.]+\s*,\s*[\w.]+\s*>(?=\s+[A-Za-z_]\w*\s*[=;])/,alias:"class-name",inside:{punctuation:/[<>.,]/,builtin:s}},builtin:s,"positional-class-name":{pattern:/(?:\b|\B\.)[A-Za-z_]\w*(?:\.[A-Za-z_]\w*)*(?=\s+[A-Za-z_]\w*\s*[=;])/,alias:"class-name",inside:{punctuation:/\./}},annotation:{pattern:/(\[\s*)[A-Za-z_]\w*(?=\s*=)/,lookbehind:!0}})}(e)}e.exports=s,s.displayName="protobuf",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_pug.478cf3e8.js b/assets/js/react-syntax-highlighter_languages_refractor_pug.478cf3e8.js new file mode 100644 index 000000000..64315ddba --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_pug.478cf3e8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9851],{2161:e=>{function t(e){!function(e){e.languages.pug={comment:{pattern:/(^([\t ]*))\/\/.*(?:(?:\r?\n|\r)\2[\t ]+.+)*/m,lookbehind:!0},"multiline-script":{pattern:/(^([\t ]*)script\b.*\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0,inside:{rest:e.languages.javascript}},filter:{pattern:/(^([\t ]*)):.+(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"}}},"multiline-plain-text":{pattern:/(^([\t ]*)[\w\-#.]+\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m,lookbehind:!0},markup:{pattern:/(^[\t ]*)<.+/m,lookbehind:!0,inside:{rest:e.languages.markup}},doctype:{pattern:/((?:^|\n)[\t ]*)doctype(?: .+)?/,lookbehind:!0},"flow-control":{pattern:/(^[\t ]*)(?:if|unless|else|case|when|default|each|while)\b(?: .+)?/m,lookbehind:!0,inside:{each:{pattern:/^each .+? in\b/,inside:{keyword:/\b(?:each|in)\b/,punctuation:/,/}},branch:{pattern:/^(?:if|unless|else|case|when|default|while)\b/,alias:"keyword"},rest:e.languages.javascript}},keyword:{pattern:/(^[\t ]*)(?:block|extends|include|append|prepend)\b.+/m,lookbehind:!0},mixin:[{pattern:/(^[\t ]*)mixin .+/m,lookbehind:!0,inside:{keyword:/^mixin/,function:/\w+(?=\s*\(|\s*$)/,punctuation:/[(),.]/}},{pattern:/(^[\t ]*)\+.+/m,lookbehind:!0,inside:{name:{pattern:/^\+\w+/,alias:"function"},rest:e.languages.javascript}}],script:{pattern:/(^[\t ]*script(?:(?:&[^(]+)?\([^)]+\))*[\t ]+).+/m,lookbehind:!0,inside:{rest:e.languages.javascript}},"plain-text":{pattern:/(^[\t ]*(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?[\t ]+).+/m,lookbehind:!0},tag:{pattern:/(^[\t ]*)(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?:?/m,lookbehind:!0,inside:{attributes:[{pattern:/&[^(]+\([^)]+\)/,inside:{rest:e.languages.javascript}},{pattern:/\([^)]+\)/,inside:{"attr-value":{pattern:/(=\s*)(?:\{[^}]*\}|[^,)\r\n]+)/,lookbehind:!0,inside:{rest:e.languages.javascript}},"attr-name":/[\w-]+(?=\s*!?=|\s*[,)])/,punctuation:/[!=(),]+/}}],punctuation:/:/}},code:[{pattern:/(^[\t ]*(?:-|!?=)).+/m,lookbehind:!0,inside:{rest:e.languages.javascript}}],punctuation:/[.\-!=|]+/};for(var t=/(^([\t ]*)):{{filter_name}}(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/.source,n=[{filter:"atpl",language:"twig"},{filter:"coffee",language:"coffeescript"},"ejs","handlebars","less","livescript","markdown",{filter:"sass",language:"scss"},"stylus"],a={},i=0,r=n.length;i<r;i++){var s=n[i];s="string"==typeof s?{filter:s,language:s}:s,e.languages[s.language]&&(a["filter-"+s.filter]={pattern:RegExp(t.replace("{{filter_name}}",s.filter),"m"),lookbehind:!0,inside:{"filter-name":{pattern:/^:[\w-]+/,alias:"variable"},rest:e.languages[s.language]}})}e.languages.insertBefore("pug","filter",a)}(e)}e.exports=t,t.displayName="pug",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_pug.85e182de.js b/assets/js/react-syntax-highlighter_languages_refractor_pug.85e182de.js new file mode 100644 index 000000000..1a21c8feb --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_pug.85e182de.js @@ -0,0 +1,219 @@ +"use strict"; +exports.id = 9851; +exports.ids = [9851]; +exports.modules = { + +/***/ 82161: +/***/ ((module) => { + + + +module.exports = pug +pug.displayName = 'pug' +pug.aliases = [] +function pug(Prism) { + ;(function(Prism) { + // TODO: + // - Add CSS highlighting inside <style> tags + // - Add support for multi-line code blocks + // - Add support for interpolation #{} and !{} + // - Add support for tag interpolation #[] + // - Add explicit support for plain text using | + // - Add support for markup embedded in plain text + Prism.languages.pug = { + // Multiline stuff should appear before the rest + // This handles both single-line and multi-line comments + comment: { + pattern: /(^([\t ]*))\/\/.*(?:(?:\r?\n|\r)\2[\t ]+.+)*/m, + lookbehind: true + }, + // All the tag-related part is in lookbehind + // so that it can be highlighted by the "tag" pattern + 'multiline-script': { + pattern: /(^([\t ]*)script\b.*\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m, + lookbehind: true, + inside: { + rest: Prism.languages.javascript + } + }, + // See at the end of the file for known filters + filter: { + pattern: /(^([\t ]*)):.+(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m, + lookbehind: true, + inside: { + 'filter-name': { + pattern: /^:[\w-]+/, + alias: 'variable' + } + } + }, + 'multiline-plain-text': { + pattern: /(^([\t ]*)[\w\-#.]+\.[\t ]*)(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/m, + lookbehind: true + }, + markup: { + pattern: /(^[\t ]*)<.+/m, + lookbehind: true, + inside: { + rest: Prism.languages.markup + } + }, + doctype: { + pattern: /((?:^|\n)[\t ]*)doctype(?: .+)?/, + lookbehind: true + }, + // This handle all conditional and loop keywords + 'flow-control': { + pattern: /(^[\t ]*)(?:if|unless|else|case|when|default|each|while)\b(?: .+)?/m, + lookbehind: true, + inside: { + each: { + pattern: /^each .+? in\b/, + inside: { + keyword: /\b(?:each|in)\b/, + punctuation: /,/ + } + }, + branch: { + pattern: /^(?:if|unless|else|case|when|default|while)\b/, + alias: 'keyword' + }, + rest: Prism.languages.javascript + } + }, + keyword: { + pattern: /(^[\t ]*)(?:block|extends|include|append|prepend)\b.+/m, + lookbehind: true + }, + mixin: [ + // Declaration + { + pattern: /(^[\t ]*)mixin .+/m, + lookbehind: true, + inside: { + keyword: /^mixin/, + function: /\w+(?=\s*\(|\s*$)/, + punctuation: /[(),.]/ + } + }, // Usage + { + pattern: /(^[\t ]*)\+.+/m, + lookbehind: true, + inside: { + name: { + pattern: /^\+\w+/, + alias: 'function' + }, + rest: Prism.languages.javascript + } + } + ], + script: { + pattern: /(^[\t ]*script(?:(?:&[^(]+)?\([^)]+\))*[\t ]+).+/m, + lookbehind: true, + inside: { + rest: Prism.languages.javascript + } + }, + 'plain-text': { + pattern: /(^[\t ]*(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?[\t ]+).+/m, + lookbehind: true + }, + tag: { + pattern: /(^[\t ]*)(?!-)[\w\-#.]*[\w\-](?:(?:&[^(]+)?\([^)]+\))*\/?:?/m, + lookbehind: true, + inside: { + attributes: [ + { + pattern: /&[^(]+\([^)]+\)/, + inside: { + rest: Prism.languages.javascript + } + }, + { + pattern: /\([^)]+\)/, + inside: { + 'attr-value': { + pattern: /(=\s*)(?:\{[^}]*\}|[^,)\r\n]+)/, + lookbehind: true, + inside: { + rest: Prism.languages.javascript + } + }, + 'attr-name': /[\w-]+(?=\s*!?=|\s*[,)])/, + punctuation: /[!=(),]+/ + } + } + ], + punctuation: /:/ + } + }, + code: [ + { + pattern: /(^[\t ]*(?:-|!?=)).+/m, + lookbehind: true, + inside: { + rest: Prism.languages.javascript + } + } + ], + punctuation: /[.\-!=|]+/ + } + var filter_pattern = /(^([\t ]*)):{{filter_name}}(?:(?:\r?\n|\r(?!\n))(?:\2[\t ]+.+|\s*?(?=\r?\n|\r)))+/ + .source // Non exhaustive list of available filters and associated languages + var filters = [ + { + filter: 'atpl', + language: 'twig' + }, + { + filter: 'coffee', + language: 'coffeescript' + }, + 'ejs', + 'handlebars', + 'less', + 'livescript', + 'markdown', + { + filter: 'sass', + language: 'scss' + }, + 'stylus' + ] + var all_filters = {} + for (var i = 0, l = filters.length; i < l; i++) { + var filter = filters[i] + filter = + typeof filter === 'string' + ? { + filter: filter, + language: filter + } + : filter + if (Prism.languages[filter.language]) { + all_filters['filter-' + filter.filter] = { + pattern: RegExp( + filter_pattern.replace('{{filter_name}}', filter.filter), + 'm' + ), + lookbehind: true, + inside: { + 'filter-name': { + pattern: /^:[\w-]+/, + alias: 'variable' + }, + rest: Prism.languages[filter.language] + } + } + } + } + Prism.languages.insertBefore('pug', 'filter', all_filters) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_puppet.66df5a3e.js b/assets/js/react-syntax-highlighter_languages_refractor_puppet.66df5a3e.js new file mode 100644 index 000000000..ffc28c009 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_puppet.66df5a3e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6861],{625:e=>{function n(e){!function(e){e.languages.puppet={heredoc:[{pattern:/(@\("([^"\r\n\/):]+)"(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r))*?[ \t]*\|?[ \t]*-?[ \t]*\2/,lookbehind:!0,alias:"string",inside:{punctuation:/(?=\S).*\S(?= *$)/}},{pattern:/(@\(([^"\r\n\/):]+)(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r))*?[ \t]*\|?[ \t]*-?[ \t]*\2/,lookbehind:!0,greedy:!0,alias:"string",inside:{punctuation:/(?=\S).*\S(?= *$)/}},{pattern:/@\("?(?:[^"\r\n\/):]+)"?(?:\/[nrts$uL]*)?\)/,alias:"string",inside:{punctuation:{pattern:/(\().+?(?=\))/,lookbehind:!0}}}],"multiline-comment":{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0,greedy:!0,alias:"comment"},regex:{pattern:/((?:\bnode\s+|[~=\(\[\{,]\s*|[=+]>\s*|^\s*))\/(?:[^\/\\]|\\[\s\S])+\/(?:[imx]+\b|\B)/,lookbehind:!0,greedy:!0,inside:{"extended-regex":{pattern:/^\/(?:[^\/\\]|\\[\s\S])+\/[im]*x[im]*$/,inside:{comment:/#.*/}}}},comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},string:{pattern:/(["'])(?:\$\{(?:[^'"}]|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}|(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{"double-quoted":{pattern:/^"[\s\S]*"$/,inside:{}}}},variable:{pattern:/\$(?:::)?\w+(?:::\w+)*/,inside:{punctuation:/::/}},"attr-name":/(?:\w+|\*)(?=\s*=>)/,function:[{pattern:/(\.)(?!\d)\w+/,lookbehind:!0},/\b(?:contain|debug|err|fail|include|info|notice|realize|require|tag|warning)\b|\b(?!\d)\w+(?=\()/],number:/\b(?:0x[a-f\d]+|\d+(?:\.\d+)?(?:e-?\d+)?)\b/i,boolean:/\b(?:true|false)\b/,keyword:/\b(?:application|attr|case|class|consumes|default|define|else|elsif|function|if|import|inherits|node|private|produces|type|undef|unless)\b/,datatype:{pattern:/\b(?:Any|Array|Boolean|Callable|Catalogentry|Class|Collection|Data|Default|Enum|Float|Hash|Integer|NotUndef|Numeric|Optional|Pattern|Regexp|Resource|Runtime|Scalar|String|Struct|Tuple|Type|Undef|Variant)\b/,alias:"symbol"},operator:/=[=~>]?|![=~]?|<(?:<\|?|[=~|-])?|>[>=]?|->?|~>|\|>?>?|[*\/%+?]|\b(?:and|in|or)\b/,punctuation:/[\[\]{}().,;]|:+/};var n=[{pattern:/(^|[^\\])\$\{(?:[^'"{}]|\{[^}]*\}|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}/,lookbehind:!0,inside:{"short-variable":{pattern:/(^\$\{)(?!\w+\()(?:::)?\w+(?:::\w+)*/,lookbehind:!0,alias:"variable",inside:{punctuation:/::/}},delimiter:{pattern:/^\$/,alias:"variable"},rest:e.languages.puppet}},{pattern:/(^|[^\\])\$(?:::)?\w+(?:::\w+)*/,lookbehind:!0,alias:"variable",inside:{punctuation:/::/}}];e.languages.puppet.heredoc[0].inside.interpolation=n,e.languages.puppet.string.inside["double-quoted"].inside.interpolation=n}(e)}e.exports=n,n.displayName="puppet",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_puppet.d1a803a1.js b/assets/js/react-syntax-highlighter_languages_refractor_puppet.d1a803a1.js new file mode 100644 index 000000000..6db325a8d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_puppet.d1a803a1.js @@ -0,0 +1,155 @@ +"use strict"; +exports.id = 6861; +exports.ids = [6861]; +exports.modules = { + +/***/ 80625: +/***/ ((module) => { + + + +module.exports = puppet +puppet.displayName = 'puppet' +puppet.aliases = [] +function puppet(Prism) { + ;(function(Prism) { + Prism.languages.puppet = { + heredoc: [ + // Matches the content of a quoted heredoc string (subject to interpolation) + { + pattern: /(@\("([^"\r\n\/):]+)"(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r))*?[ \t]*\|?[ \t]*-?[ \t]*\2/, + lookbehind: true, + alias: 'string', + inside: { + // Matches the end tag + punctuation: /(?=\S).*\S(?= *$)/ // See interpolation below + } + }, // Matches the content of an unquoted heredoc string (no interpolation) + { + pattern: /(@\(([^"\r\n\/):]+)(?:\/[nrts$uL]*)?\).*(?:\r?\n|\r))(?:.*(?:\r?\n|\r))*?[ \t]*\|?[ \t]*-?[ \t]*\2/, + lookbehind: true, + greedy: true, + alias: 'string', + inside: { + // Matches the end tag + punctuation: /(?=\S).*\S(?= *$)/ + } + }, // Matches the start tag of heredoc strings + { + pattern: /@\("?(?:[^"\r\n\/):]+)"?(?:\/[nrts$uL]*)?\)/, + alias: 'string', + inside: { + punctuation: { + pattern: /(\().+?(?=\))/, + lookbehind: true + } + } + } + ], + 'multiline-comment': { + pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, + lookbehind: true, + greedy: true, + alias: 'comment' + }, + regex: { + // Must be prefixed with the keyword "node" or a non-word char + pattern: /((?:\bnode\s+|[~=\(\[\{,]\s*|[=+]>\s*|^\s*))\/(?:[^\/\\]|\\[\s\S])+\/(?:[imx]+\b|\B)/, + lookbehind: true, + greedy: true, + inside: { + // Extended regexes must have the x flag. They can contain single-line comments. + 'extended-regex': { + pattern: /^\/(?:[^\/\\]|\\[\s\S])+\/[im]*x[im]*$/, + inside: { + comment: /#.*/ + } + } + } + }, + comment: { + pattern: /(^|[^\\])#.*/, + lookbehind: true, + greedy: true + }, + string: { + // Allow for one nested level of double quotes inside interpolation + pattern: /(["'])(?:\$\{(?:[^'"}]|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}|(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true, + inside: { + 'double-quoted': { + pattern: /^"[\s\S]*"$/, + inside: { + // See interpolation below + } + } + } + }, + variable: { + pattern: /\$(?:::)?\w+(?:::\w+)*/, + inside: { + punctuation: /::/ + } + }, + 'attr-name': /(?:\w+|\*)(?=\s*=>)/, + function: [ + { + pattern: /(\.)(?!\d)\w+/, + lookbehind: true + }, + /\b(?:contain|debug|err|fail|include|info|notice|realize|require|tag|warning)\b|\b(?!\d)\w+(?=\()/ + ], + number: /\b(?:0x[a-f\d]+|\d+(?:\.\d+)?(?:e-?\d+)?)\b/i, + boolean: /\b(?:true|false)\b/, + // Includes words reserved for future use + keyword: /\b(?:application|attr|case|class|consumes|default|define|else|elsif|function|if|import|inherits|node|private|produces|type|undef|unless)\b/, + datatype: { + pattern: /\b(?:Any|Array|Boolean|Callable|Catalogentry|Class|Collection|Data|Default|Enum|Float|Hash|Integer|NotUndef|Numeric|Optional|Pattern|Regexp|Resource|Runtime|Scalar|String|Struct|Tuple|Type|Undef|Variant)\b/, + alias: 'symbol' + }, + operator: /=[=~>]?|![=~]?|<(?:<\|?|[=~|-])?|>[>=]?|->?|~>|\|>?>?|[*\/%+?]|\b(?:and|in|or)\b/, + punctuation: /[\[\]{}().,;]|:+/ + } + var interpolation = [ + { + // Allow for one nested level of braces inside interpolation + pattern: /(^|[^\\])\$\{(?:[^'"{}]|\{[^}]*\}|(["'])(?:(?!\2)[^\\]|\\[\s\S])*\2)+\}/, + lookbehind: true, + inside: { + 'short-variable': { + // Negative look-ahead prevent wrong highlighting of functions + pattern: /(^\$\{)(?!\w+\()(?:::)?\w+(?:::\w+)*/, + lookbehind: true, + alias: 'variable', + inside: { + punctuation: /::/ + } + }, + delimiter: { + pattern: /^\$/, + alias: 'variable' + }, + rest: Prism.languages.puppet + } + }, + { + pattern: /(^|[^\\])\$(?:::)?\w+(?:::\w+)*/, + lookbehind: true, + alias: 'variable', + inside: { + punctuation: /::/ + } + } + ] + Prism.languages.puppet['heredoc'][0].inside.interpolation = interpolation + Prism.languages.puppet['string'].inside[ + 'double-quoted' + ].inside.interpolation = interpolation + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_pure.85e4ab22.js b/assets/js/react-syntax-highlighter_languages_refractor_pure.85e4ab22.js new file mode 100644 index 000000000..d34dd65af --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_pure.85e4ab22.js @@ -0,0 +1,157 @@ +"use strict"; +exports.id = 9315; +exports.ids = [9315,8950]; +exports.modules = { + +/***/ 65806: +/***/ ((module) => { + + + +module.exports = c +c.displayName = 'c' +c.aliases = [] +function c(Prism) { + Prism.languages.c = Prism.languages.extend('clike', { + 'class-name': { + pattern: /(\b(?:enum|struct)\s+)\w+/, + lookbehind: true + }, + keyword: /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/, + operator: />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/, + number: /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i + }) + Prism.languages.insertBefore('c', 'string', { + macro: { + // allow for multiline macro definitions + // spaces after the # character compile fine with gcc + pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im, + lookbehind: true, + alias: 'property', + inside: { + // highlight the path of the include statement as a string + string: { + pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/, + lookbehind: true + }, + // highlight macro directives as keywords + directive: { + pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/, + lookbehind: true, + alias: 'keyword' + } + } + }, + // highlight predefined macros as constants + constant: /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/ + }) + delete Prism.languages.c['boolean'] +} + + +/***/ }), + +/***/ 88393: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorC = __webpack_require__(65806) +module.exports = pure +pure.displayName = 'pure' +pure.aliases = [] +function pure(Prism) { + Prism.register(refractorC) + ;(function(Prism) { + Prism.languages.pure = { + comment: [ + { + pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, + lookbehind: true + }, + { + pattern: /(^|[^\\:])\/\/.*/, + lookbehind: true + }, + /#!.+/ + ], + 'inline-lang': { + pattern: /%<[\s\S]+?%>/, + greedy: true, + inside: { + lang: { + pattern: /(^%< *)-\*-.+?-\*-/, + lookbehind: true, + alias: 'comment' + }, + delimiter: { + pattern: /^%<.*|%>$/, + alias: 'punctuation' + } + } + }, + string: { + pattern: /"(?:\\.|[^"\\\r\n])*"/, + greedy: true + }, + number: { + // The look-behind prevents wrong highlighting of the .. operator + pattern: /((?:\.\.)?)(?:\b(?:inf|nan)\b|\b0x[\da-f]+|(?:\b(?:0b)?\d+(?:\.\d)?|\B\.\d)\d*(?:e[+-]?\d+)?L?)/i, + lookbehind: true + }, + keyword: /\b(?:ans|break|bt|case|catch|cd|clear|const|def|del|dump|else|end|exit|extern|false|force|help|if|infix[lr]?|interface|let|ls|mem|namespace|nonfix|NULL|of|otherwise|outfix|override|postfix|prefix|private|public|pwd|quit|run|save|show|stats|then|throw|trace|true|type|underride|using|when|with)\b/, + function: /\b(?:abs|add_(?:(?:fundef|interface|macdef|typedef)(?:_at)?|addr|constdef|vardef)|all|any|applp?|arity|bigintp?|blob(?:_crc|_size|p)?|boolp?|byte_(?:matrix|pointer)|byte_c?string(?:_pointer)?|calloc|cat|catmap|ceil|char[ps]?|check_ptrtag|chr|clear_sentry|clearsym|closurep?|cmatrixp?|cols?|colcat(?:map)?|colmap|colrev|colvector(?:p|seq)?|complex(?:_float_(?:matrix|pointer)|_matrix(?:_view)?|_pointer|p)?|conj|cookedp?|cst|cstring(?:_(?:dup|list|vector))?|curry3?|cyclen?|del_(?:constdef|fundef|interface|macdef|typedef|vardef)|delete|diag(?:mat)?|dim|dmatrixp?|do|double(?:_matrix(?:_view)?|_pointer|p)?|dowith3?|drop|dropwhile|eval(?:cmd)?|exactp|filter|fix|fixity|flip|float(?:_matrix|_pointer)|floor|fold[lr]1?|frac|free|funp?|functionp?|gcd|get(?:_(?:byte|constdef|double|float|fundef|int(?:64)?|interface(?:_typedef)?|long|macdef|pointer|ptrtag|short|sentry|string|typedef|vardef))?|globsym|hash|head|id|im|imatrixp?|index|inexactp|infp|init|insert|int(?:_matrix(?:_view)?|_pointer|p)?|int64_(?:matrix|pointer)|integerp?|iteraten?|iterwhile|join|keys?|lambdap?|last(?:err(?:pos)?)?|lcd|list[2p]?|listmap|make_ptrtag|malloc|map|matcat|matrixp?|max|member|min|nanp|nargs|nmatrixp?|null|numberp?|ord|pack(?:ed)?|pointer(?:_cast|_tag|_type|p)?|pow|pred|ptrtag|put(?:_(?:byte|double|float|int(?:64)?|long|pointer|short|string))?|rationalp?|re|realp?|realloc|recordp?|redim|reduce(?:_with)?|refp?|repeatn?|reverse|rlistp?|round|rows?|rowcat(?:map)?|rowmap|rowrev|rowvector(?:p|seq)?|same|scan[lr]1?|sentry|sgn|short_(?:matrix|pointer)|slice|smatrixp?|sort|split|str|strcat|stream|stride|string(?:_(?:dup|list|vector)|p)?|subdiag(?:mat)?|submat|subseq2?|substr|succ|supdiag(?:mat)?|symbolp?|tail|take|takewhile|thunkp?|transpose|trunc|tuplep?|typep|ubyte|uint(?:64)?|ulong|uncurry3?|unref|unzip3?|update|ushort|vals?|varp?|vector(?:p|seq)?|void|zip3?|zipwith3?)\b/, + special: { + pattern: /\b__[a-z]+__\b/i, + alias: 'builtin' + }, + // Any combination of operator chars can be an operator + operator: /(?=\b_|[^_])[!"#$%&'*+,\-.\/:<=>?@\\^_`|~\u00a1-\u00bf\u00d7-\u00f7\u20d0-\u2bff]+|\b(?:and|div|mod|not|or)\b/, + // FIXME: How can we prevent | and , to be highlighted as operator when they are used alone? + punctuation: /[(){}\[\];,|]/ + } + var inlineLanguages = [ + 'c', + { + lang: 'c++', + alias: 'cpp' + }, + 'fortran' + ] + var inlineLanguageRe = /%< *-\*- *{lang}\d* *-\*-[\s\S]+?%>/.source + inlineLanguages.forEach(function(lang) { + var alias = lang + if (typeof lang !== 'string') { + alias = lang.alias + lang = lang.lang + } + if (Prism.languages[alias]) { + var o = {} + o['inline-lang-' + alias] = { + pattern: RegExp( + inlineLanguageRe.replace( + '{lang}', + lang.replace(/([.+*?\/\\(){}\[\]])/g, '\\$1') + ), + 'i' + ), + inside: Prism.util.clone(Prism.languages.pure['inline-lang'].inside) + } + o['inline-lang-' + alias].inside.rest = Prism.util.clone( + Prism.languages[alias] + ) + Prism.languages.insertBefore('pure', 'inline-lang', o) + } + }) // C is the default inline language + if (Prism.languages.c) { + Prism.languages.pure['inline-lang'].inside.rest = Prism.util.clone( + Prism.languages.c + ) + } + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_pure.9f24f7d7.js b/assets/js/react-syntax-highlighter_languages_refractor_pure.9f24f7d7.js new file mode 100644 index 000000000..52e0bf91b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_pure.9f24f7d7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9315,8950],{5806:e=>{function t(e){e.languages.c=e.languages.extend("clike",{"class-name":{pattern:/(\b(?:enum|struct)\s+)\w+/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,number:/(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i}),e.languages.insertBefore("c","string",{macro:{pattern:/(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,alias:"property",inside:{string:{pattern:/(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,lookbehind:!0},directive:{pattern:/(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,lookbehind:!0,alias:"keyword"}}},constant:/\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/}),delete e.languages.c.boolean}e.exports=t,t.displayName="c",t.aliases=[]},8393:(e,t,a)=>{var i=a(5806);function n(e){e.register(i),function(e){e.languages.pure={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0},/#!.+/],"inline-lang":{pattern:/%<[\s\S]+?%>/,greedy:!0,inside:{lang:{pattern:/(^%< *)-\*-.+?-\*-/,lookbehind:!0,alias:"comment"},delimiter:{pattern:/^%<.*|%>$/,alias:"punctuation"}}},string:{pattern:/"(?:\\.|[^"\\\r\n])*"/,greedy:!0},number:{pattern:/((?:\.\.)?)(?:\b(?:inf|nan)\b|\b0x[\da-f]+|(?:\b(?:0b)?\d+(?:\.\d)?|\B\.\d)\d*(?:e[+-]?\d+)?L?)/i,lookbehind:!0},keyword:/\b(?:ans|break|bt|case|catch|cd|clear|const|def|del|dump|else|end|exit|extern|false|force|help|if|infix[lr]?|interface|let|ls|mem|namespace|nonfix|NULL|of|otherwise|outfix|override|postfix|prefix|private|public|pwd|quit|run|save|show|stats|then|throw|trace|true|type|underride|using|when|with)\b/,function:/\b(?:abs|add_(?:(?:fundef|interface|macdef|typedef)(?:_at)?|addr|constdef|vardef)|all|any|applp?|arity|bigintp?|blob(?:_crc|_size|p)?|boolp?|byte_(?:matrix|pointer)|byte_c?string(?:_pointer)?|calloc|cat|catmap|ceil|char[ps]?|check_ptrtag|chr|clear_sentry|clearsym|closurep?|cmatrixp?|cols?|colcat(?:map)?|colmap|colrev|colvector(?:p|seq)?|complex(?:_float_(?:matrix|pointer)|_matrix(?:_view)?|_pointer|p)?|conj|cookedp?|cst|cstring(?:_(?:dup|list|vector))?|curry3?|cyclen?|del_(?:constdef|fundef|interface|macdef|typedef|vardef)|delete|diag(?:mat)?|dim|dmatrixp?|do|double(?:_matrix(?:_view)?|_pointer|p)?|dowith3?|drop|dropwhile|eval(?:cmd)?|exactp|filter|fix|fixity|flip|float(?:_matrix|_pointer)|floor|fold[lr]1?|frac|free|funp?|functionp?|gcd|get(?:_(?:byte|constdef|double|float|fundef|int(?:64)?|interface(?:_typedef)?|long|macdef|pointer|ptrtag|short|sentry|string|typedef|vardef))?|globsym|hash|head|id|im|imatrixp?|index|inexactp|infp|init|insert|int(?:_matrix(?:_view)?|_pointer|p)?|int64_(?:matrix|pointer)|integerp?|iteraten?|iterwhile|join|keys?|lambdap?|last(?:err(?:pos)?)?|lcd|list[2p]?|listmap|make_ptrtag|malloc|map|matcat|matrixp?|max|member|min|nanp|nargs|nmatrixp?|null|numberp?|ord|pack(?:ed)?|pointer(?:_cast|_tag|_type|p)?|pow|pred|ptrtag|put(?:_(?:byte|double|float|int(?:64)?|long|pointer|short|string))?|rationalp?|re|realp?|realloc|recordp?|redim|reduce(?:_with)?|refp?|repeatn?|reverse|rlistp?|round|rows?|rowcat(?:map)?|rowmap|rowrev|rowvector(?:p|seq)?|same|scan[lr]1?|sentry|sgn|short_(?:matrix|pointer)|slice|smatrixp?|sort|split|str|strcat|stream|stride|string(?:_(?:dup|list|vector)|p)?|subdiag(?:mat)?|submat|subseq2?|substr|succ|supdiag(?:mat)?|symbolp?|tail|take|takewhile|thunkp?|transpose|trunc|tuplep?|typep|ubyte|uint(?:64)?|ulong|uncurry3?|unref|unzip3?|update|ushort|vals?|varp?|vector(?:p|seq)?|void|zip3?|zipwith3?)\b/,special:{pattern:/\b__[a-z]+__\b/i,alias:"builtin"},operator:/(?=\b_|[^_])[!"#$%&'*+,\-.\/:<=>?@\\^_`|~\u00a1-\u00bf\u00d7-\u00f7\u20d0-\u2bff]+|\b(?:and|div|mod|not|or)\b/,punctuation:/[(){}\[\];,|]/};var t=/%< *-\*- *{lang}\d* *-\*-[\s\S]+?%>/.source;["c",{lang:"c++",alias:"cpp"},"fortran"].forEach((function(a){var i=a;if("string"!=typeof a&&(i=a.alias,a=a.lang),e.languages[i]){var n={};n["inline-lang-"+i]={pattern:RegExp(t.replace("{lang}",a.replace(/([.+*?\/\\(){}\[\]])/g,"\\$1")),"i"),inside:e.util.clone(e.languages.pure["inline-lang"].inside)},n["inline-lang-"+i].inside.rest=e.util.clone(e.languages[i]),e.languages.insertBefore("pure","inline-lang",n)}})),e.languages.c&&(e.languages.pure["inline-lang"].inside.rest=e.util.clone(e.languages.c))}(e)}e.exports=n,n.displayName="pure",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_python.374d36f1.js b/assets/js/react-syntax-highlighter_languages_refractor_python.374d36f1.js new file mode 100644 index 000000000..6965086f2 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_python.374d36f1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2891],{2992:e=>{function t(e){e.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},"string-interpolation":{pattern:/(?:f|rf|fr)(?:("""|''')[\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]|rb|br)?("""|''')[\s\S]+?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|rb|br)?("|')(?:\\.|(?!\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:/(^\s*)@\w+(?:\.\w+)*/i,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|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(?:True|False|None)\b/,number:/(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},e.languages.python["string-interpolation"].inside.interpolation.inside.rest=e.languages.python,e.languages.py=e.languages.python}e.exports=t,t.displayName="python",t.aliases=["py"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_python.e8cff8ae.js b/assets/js/react-syntax-highlighter_languages_refractor_python.e8cff8ae.js new file mode 100644 index 000000000..6cb41e965 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_python.e8cff8ae.js @@ -0,0 +1,85 @@ +"use strict"; +exports.id = 2891; +exports.ids = [2891]; +exports.modules = { + +/***/ 52992: +/***/ ((module) => { + + + +module.exports = python +python.displayName = 'python' +python.aliases = ['py'] +function python(Prism) { + Prism.languages.python = { + comment: { + pattern: /(^|[^\\])#.*/, + lookbehind: true + }, + 'string-interpolation': { + pattern: /(?:f|rf|fr)(?:("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i, + greedy: true, + inside: { + interpolation: { + // "{" <expression> <optional "!s", "!r", or "!a"> <optional ":" format specifier> "}" + pattern: /((?:^|[^{])(?:{{)*){(?!{)(?:[^{}]|{(?!{)(?:[^{}]|{(?!{)(?:[^{}])+})+})+}/, + lookbehind: true, + inside: { + 'format-spec': { + pattern: /(:)[^:(){}]+(?=}$)/, + lookbehind: true + }, + 'conversion-option': { + pattern: /![sra](?=[:}]$)/, + alias: 'punctuation' + }, + rest: null + } + }, + string: /[\s\S]+/ + } + }, + 'triple-quoted-string': { + pattern: /(?:[rub]|rb|br)?("""|''')[\s\S]+?\1/i, + greedy: true, + alias: 'string' + }, + string: { + pattern: /(?:[rub]|rb|br)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i, + greedy: true + }, + function: { + pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g, + lookbehind: true + }, + 'class-name': { + pattern: /(\bclass\s+)\w+/i, + lookbehind: true + }, + decorator: { + pattern: /(^\s*)@\w+(?:\.\w+)*/i, + lookbehind: true, + alias: ['annotation', 'punctuation'], + inside: { + punctuation: /\./ + } + }, + keyword: /\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|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(?:True|False|None)\b/, + number: /(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i, + operator: /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/, + punctuation: /[{}[\];(),.:]/ + } + Prism.languages.python['string-interpolation'].inside[ + 'interpolation' + ].inside.rest = Prism.languages.python + Prism.languages.py = Prism.languages.python +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_q.81b3dd06.js b/assets/js/react-syntax-highlighter_languages_refractor_q.81b3dd06.js new file mode 100644 index 000000000..9cf740b86 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_q.81b3dd06.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1751],{5762:e=>{function s(e){e.languages.q={string:/"(?:\\.|[^"\\\r\n])*"/,comment:[{pattern:/([\t )\]}])\/.*/,lookbehind:!0,greedy:!0},{pattern:/(^|\r?\n|\r)\/[\t ]*(?:(?:\r?\n|\r)(?:.*(?:\r?\n|\r))*?(?:\\(?=[\t ]*(?:\r?\n|\r))|$)|\S.*)/,lookbehind:!0,greedy:!0},{pattern:/^\\[\t ]*(?:\r?\n|\r)[\s\S]+/m,greedy:!0},{pattern:/^#!.+/m,greedy:!0}],symbol:/`(?::\S+|[\w.]*)/,datetime:{pattern:/0N[mdzuvt]|0W[dtz]|\d{4}\.\d\d(?:m|\.\d\d(?:T(?:\d\d(?::\d\d(?::\d\d(?:[.:]\d\d\d)?)?)?)?)?[dz]?)|\d\d:\d\d(?::\d\d(?:[.:]\d\d\d)?)?[uvt]?/,alias:"number"},number:/\b(?![01]:)(?:0[wn]|0W[hj]?|0N[hje]?|0x[\da-fA-F]+|\d+\.?\d*(?:e[+-]?\d+)?[hjfeb]?)/,keyword:/\\\w+\b|\b(?:abs|acos|aj0?|all|and|any|asc|asin|asof|atan|attr|avgs?|binr?|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|ej|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|identity|idesc|if|ij|in|insert|inter|inv|keys?|last|like|list|ljf?|load|log|lower|lsq|ltime|ltrim|mavg|maxs?|mcount|md5|mdev|med|meta|mins?|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|plist|prds?|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ssr?|string|sublist|sums?|sv|svar|system|tables|tan|til|trim|txf|type|uj|ungroup|union|update|upper|upsert|value|var|views?|vs|wavg|where|while|within|wj1?|wsum|ww|xasc|xbar|xcols?|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)\b/,adverb:{pattern:/['\/\\]:?|\beach\b/,alias:"function"},verb:{pattern:/(?:\B\.\B|\b[01]:|<[=>]?|>=?|[:+\-*%,!?_~=|$&#@^]):?/,alias:"operator"},punctuation:/[(){}\[\];.]/}}e.exports=s,s.displayName="q",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_q.b5ca7f6b.js b/assets/js/react-syntax-highlighter_languages_refractor_q.b5ca7f6b.js new file mode 100644 index 000000000..89e69c42c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_q.b5ca7f6b.js @@ -0,0 +1,69 @@ +"use strict"; +exports.id = 1751; +exports.ids = [1751]; +exports.modules = { + +/***/ 55762: +/***/ ((module) => { + + + +module.exports = q +q.displayName = 'q' +q.aliases = [] +function q(Prism) { + Prism.languages.q = { + string: /"(?:\\.|[^"\\\r\n])*"/, + comment: [ + // From http://code.kx.com/wiki/Reference/Slash: + // When / is following a space (or a right parenthesis, bracket, or brace), it is ignored with the rest of the line. + { + pattern: /([\t )\]}])\/.*/, + lookbehind: true, + greedy: true + }, // From http://code.kx.com/wiki/Reference/Slash: + // A line which has / as its first character and contains at least one other non-whitespace character is a whole-line comment and is ignored entirely. + // A / on a line by itself begins a multiline comment which is terminated by the next \ on a line by itself. + // If a / is not matched by a \, the multiline comment is unterminated and continues to end of file. + // The / and \ must be the first char on the line, but may be followed by any amount of whitespace. + { + pattern: /(^|\r?\n|\r)\/[\t ]*(?:(?:\r?\n|\r)(?:.*(?:\r?\n|\r))*?(?:\\(?=[\t ]*(?:\r?\n|\r))|$)|\S.*)/, + lookbehind: true, + greedy: true + }, // From http://code.kx.com/wiki/Reference/Slash: + // A \ on a line by itself with no preceding matching / will comment to end of file. + { + pattern: /^\\[\t ]*(?:\r?\n|\r)[\s\S]+/m, + greedy: true + }, + { + pattern: /^#!.+/m, + greedy: true + } + ], + symbol: /`(?::\S+|[\w.]*)/, + datetime: { + pattern: /0N[mdzuvt]|0W[dtz]|\d{4}\.\d\d(?:m|\.\d\d(?:T(?:\d\d(?::\d\d(?::\d\d(?:[.:]\d\d\d)?)?)?)?)?[dz]?)|\d\d:\d\d(?::\d\d(?:[.:]\d\d\d)?)?[uvt]?/, + alias: 'number' + }, + // The negative look-ahead prevents bad highlighting + // of verbs 0: and 1: + number: /\b(?![01]:)(?:0[wn]|0W[hj]?|0N[hje]?|0x[\da-fA-F]+|\d+\.?\d*(?:e[+-]?\d+)?[hjfeb]?)/, + keyword: /\\\w+\b|\b(?:abs|acos|aj0?|all|and|any|asc|asin|asof|atan|attr|avgs?|binr?|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|ej|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|identity|idesc|if|ij|in|insert|inter|inv|keys?|last|like|list|ljf?|load|log|lower|lsq|ltime|ltrim|mavg|maxs?|mcount|md5|mdev|med|meta|mins?|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|plist|prds?|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ssr?|string|sublist|sums?|sv|svar|system|tables|tan|til|trim|txf|type|uj|ungroup|union|update|upper|upsert|value|var|views?|vs|wavg|where|while|within|wj1?|wsum|ww|xasc|xbar|xcols?|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)\b/, + adverb: { + pattern: /['\/\\]:?|\beach\b/, + alias: 'function' + }, + verb: { + pattern: /(?:\B\.\B|\b[01]:|<[=>]?|>=?|[:+\-*%,!?_~=|$&#@^]):?/, + alias: 'operator' + }, + punctuation: /[(){}\[\];.]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_qore.4be95dac.js b/assets/js/react-syntax-highlighter_languages_refractor_qore.4be95dac.js new file mode 100644 index 000000000..d7b0448a0 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_qore.4be95dac.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2547],{8260:e=>{function t(e){e.languages.qore=e.languages.extend("clike",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:\/\/|#).*)/,lookbehind:!0},string:{pattern:/("|')(\\[\s\S]|(?!\1)[^\\])*\1/,greedy:!0},variable:/\$(?!\d)\w+\b/,keyword:/\b(?:abstract|any|assert|binary|bool|boolean|break|byte|case|catch|char|class|code|const|continue|data|default|do|double|else|enum|extends|final|finally|float|for|goto|hash|if|implements|import|inherits|instanceof|int|interface|long|my|native|new|nothing|null|object|our|own|private|reference|rethrow|return|short|soft(?:int|float|number|bool|string|date|list)|static|strictfp|string|sub|super|switch|synchronized|this|throw|throws|transient|try|void|volatile|while)\b/,number:/\b(?:0b[01]+|0x[\da-f]*\.?[\da-fp\-]+|\d*\.?\d+e?\d*[df]|\d*\.?\d+)\b/i,boolean:/\b(?:true|false)\b/i,operator:{pattern:/(^|[^.])(?:\+[+=]?|-[-=]?|[!=](?:==?|~)?|>>?=?|<(?:=>?|<=?)?|&[&=]?|\|[|=]?|[*\/%^]=?|[~?])/,lookbehind:!0},function:/\$?\b(?!\d)\w+(?=\()/})}e.exports=t,t.displayName="qore",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_qore.6187a8d3.js b/assets/js/react-syntax-highlighter_languages_refractor_qore.6187a8d3.js new file mode 100644 index 000000000..9eb860846 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_qore.6187a8d3.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 2547; +exports.ids = [2547]; +exports.modules = { + +/***/ 28260: +/***/ ((module) => { + + + +module.exports = qore +qore.displayName = 'qore' +qore.aliases = [] +function qore(Prism) { + Prism.languages.qore = Prism.languages.extend('clike', { + comment: { + pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:\/\/|#).*)/, + lookbehind: true + }, + // Overridden to allow unescaped multi-line strings + string: { + pattern: /("|')(\\[\s\S]|(?!\1)[^\\])*\1/, + greedy: true + }, + variable: /\$(?!\d)\w+\b/, + keyword: /\b(?:abstract|any|assert|binary|bool|boolean|break|byte|case|catch|char|class|code|const|continue|data|default|do|double|else|enum|extends|final|finally|float|for|goto|hash|if|implements|import|inherits|instanceof|int|interface|long|my|native|new|nothing|null|object|our|own|private|reference|rethrow|return|short|soft(?:int|float|number|bool|string|date|list)|static|strictfp|string|sub|super|switch|synchronized|this|throw|throws|transient|try|void|volatile|while)\b/, + number: /\b(?:0b[01]+|0x[\da-f]*\.?[\da-fp\-]+|\d*\.?\d+e?\d*[df]|\d*\.?\d+)\b/i, + boolean: /\b(?:true|false)\b/i, + operator: { + pattern: /(^|[^.])(?:\+[+=]?|-[-=]?|[!=](?:==?|~)?|>>?=?|<(?:=>?|<=?)?|&[&=]?|\|[|=]?|[*\/%^]=?|[~?])/, + lookbehind: true + }, + function: /\$?\b(?!\d)\w+(?=\()/ + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_r.635ac7a8.js b/assets/js/react-syntax-highlighter_languages_refractor_r.635ac7a8.js new file mode 100644 index 000000000..7cf0deaa5 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_r.635ac7a8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7882],{9308:e=>{function a(e){e.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:"operator"},boolean:/\b(?:TRUE|FALSE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:NaN|Inf)\b/,/(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+\.?\d*|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/],keyword:/\b(?:if|else|repeat|while|function|for|in|next|break|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_)\b/,operator:/->?>?|<(?:=|<?-)?|[>=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}}e.exports=a,a.displayName="r",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_r.d98352b6.js b/assets/js/react-syntax-highlighter_languages_refractor_r.d98352b6.js new file mode 100644 index 000000000..0e7c9f803 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_r.d98352b6.js @@ -0,0 +1,43 @@ +"use strict"; +exports.id = 7882; +exports.ids = [7882]; +exports.modules = { + +/***/ 29308: +/***/ ((module) => { + + + +module.exports = r +r.displayName = 'r' +r.aliases = [] +function r(Prism) { + Prism.languages.r = { + comment: /#.*/, + string: { + pattern: /(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + 'percent-operator': { + // Includes user-defined operators + // and %%, %*%, %/%, %in%, %o%, %x% + pattern: /%[^%\s]*%/, + alias: 'operator' + }, + boolean: /\b(?:TRUE|FALSE)\b/, + ellipsis: /\.\.(?:\.|\d+)/, + number: [ + /\b(?:NaN|Inf)\b/, + /(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+\.?\d*|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/ + ], + keyword: /\b(?:if|else|repeat|while|function|for|in|next|break|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_)\b/, + operator: /->?>?|<(?:=|<?-)?|[>=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/, + punctuation: /[(){}\[\],;]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_reason.193d2d22.js b/assets/js/react-syntax-highlighter_languages_refractor_reason.193d2d22.js new file mode 100644 index 000000000..1f863bd58 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_reason.193d2d22.js @@ -0,0 +1,51 @@ +"use strict"; +exports.id = 8811; +exports.ids = [8811]; +exports.modules = { + +/***/ 5755: +/***/ ((module) => { + + + +module.exports = reason +reason.displayName = 'reason' +reason.aliases = [] +function reason(Prism) { + Prism.languages.reason = Prism.languages.extend('clike', { + comment: { + pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, + lookbehind: true + }, + string: { + pattern: /"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/, + greedy: true + }, + // 'class-name' must be matched *after* 'constructor' defined below + '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(?:mod|land|lor|lxor|lsl|lsr|asr)\b/ + }) + Prism.languages.insertBefore('reason', 'class-name', { + character: { + pattern: /'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/, + alias: 'string' + }, + constructor: { + // Negative look-ahead prevents from matching things like String.capitalize + pattern: /\b[A-Z]\w*\b(?!\s*\.)/, + alias: 'variable' + }, + label: { + pattern: /\b[a-z]\w*(?=::)/, + alias: 'symbol' + } + }) // We can't match functions property, so let's not even try. + delete Prism.languages.reason.function +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_reason.cdfb4347.js b/assets/js/react-syntax-highlighter_languages_refractor_reason.cdfb4347.js new file mode 100644 index 000000000..01df5439f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_reason.cdfb4347.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8811],{5755:e=>{function a(e){e.languages.reason=e.languages.extend("clike",{comment:{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},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(?:mod|land|lor|lxor|lsl|lsr|asr)\b/}),e.languages.insertBefore("reason","class-name",{character:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,alias:"string"},constructor:{pattern:/\b[A-Z]\w*\b(?!\s*\.)/,alias:"variable"},label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete e.languages.reason.function}e.exports=a,a.displayName="reason",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_renpy.27207ad9.js b/assets/js/react-syntax-highlighter_languages_refractor_renpy.27207ad9.js new file mode 100644 index 000000000..1e0615b08 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_renpy.27207ad9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9291],{5108:e=>{function t(e){e.languages.renpy={comment:{pattern:/(^|[^\\])#.+/,lookbehind:!0},string:{pattern:/("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2|(?:^#?(?:(?:[0-9a-fA-F]{2}){3}|(?:[0-9a-fA-F]){3})$)/m,greedy:!0},function:/[a-z_]\w*(?=\()/i,property:/\b(?:insensitive|idle|hover|selected_idle|selected_hover|background|position|alt|xpos|ypos|pos|xanchor|yanchor|anchor|xalign|yalign|align|xcenter|ycenter|xofsset|yoffset|ymaximum|maximum|xmaximum|xminimum|yminimum|minimum|xsize|ysizexysize|xfill|yfill|area|antialias|black_color|bold|caret|color|first_indent|font|size|italic|justify|kerning|language|layout|line_leading|line_overlap_split|line_spacing|min_width|newline_indent|outlines|rest_indent|ruby_style|slow_cps|slow_cps_multiplier|strikethrough|text_align|underline|hyperlink_functions|vertical|hinting|foreground|left_margin|xmargin|top_margin|bottom_margin|ymargin|left_padding|right_padding|xpadding|top_padding|bottom_padding|ypadding|size_group|child|hover_sound|activate_sound|mouse|focus_mask|keyboard_focus|bar_vertical|bar_invert|bar_resizing|left_gutter|right_gutter|top_gutter|bottom_gutter|left_bar|right_bar|top_bar|bottom_bar|thumb|thumb_shadow|thumb_offset|unscrollable|spacing|first_spacing|box_reverse|box_wrap|order_reverse|fit_first|ysize|thumbnail_width|thumbnail_height|help|text_ypos|text_xpos|idle_color|hover_color|selected_idle_color|selected_hover_color|insensitive_color|alpha|insensitive_background|hover_background|zorder|value|width|xadjustment|xanchoraround|xaround|xinitial|xoffset|xzoom|yadjustment|yanchoraround|yaround|yinitial|yzoom|zoom|ground|height|text_style|text_y_fudge|selected_insensitive|has_sound|has_music|has_voice|focus|hovered|image_style|length|minwidth|mousewheel|offset|prefix|radius|range|right_margin|rotate|rotate_pad|developer|screen_width|screen_height|window_title|name|version|windows_icon|default_fullscreen|default_text_cps|default_afm_time|main_menu_music|sample_sound|enter_sound|exit_sound|save_directory|enter_transition|exit_transition|intra_transition|main_game_transition|game_main_transition|end_splash_transition|end_game_transition|after_load_transition|window_show_transition|window_hide_transition|adv_nvl_transition|nvl_adv_transition|enter_yesno_transition|exit_yesno_transition|enter_replay_transition|exit_replay_transition|say_attribute_transition|directory_name|executable_name|include_update|window_icon|modal|google_play_key|google_play_salt|drag_name|drag_handle|draggable|dragged|droppable|dropped|narrator_menu|action|default_afm_enable|version_name|version_tuple|inside|fadeout|fadein|layers|layer_clipping|linear|scrollbars|side_xpos|side_ypos|side_spacing|edgescroll|drag_joined|drag_raise|drop_shadow|drop_shadow_color|subpixel|easein|easeout|time|crop|auto|update|get_installed_packages|can_update|UpdateVersion|Update|overlay_functions|translations|window_left_padding|show_side_image|show_two_window)\b/,tag:/\b(?:label|image|menu|[hv]box|frame|text|imagemap|imagebutton|bar|vbar|screen|textbutton|buttoscreenn|fixed|grid|input|key|mousearea|side|timer|viewport|window|hotspot|hotbar|self|button|drag|draggroup|tag|mm_menu_frame|nvl|block|parallel)\b|\$/,keyword:/\b(?:as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|pass|print|raise|return|try|while|yield|adjustment|alignaround|allow|angle|around|box_layout|cache|changed|child_size|clicked|clipping|corner1|corner2|default|delay|exclude|scope|slow|slow_abortable|slow_done|sound|style_group|substitute|suffix|transform_anchor|transpose|unhovered|config|theme|mm_root|gm_root|rounded_window|build|disabled_text|disabled|widget_selected|widget_text|widget_hover|widget|updater|behind|call|expression|hide|init|jump|onlayer|python|renpy|scene|set|show|transform|play|queue|stop|pause|define|window|repeat|contains|choice|on|function|event|animation|clockwise|counterclockwise|circles|knot|null|None|random|has|add|use|fade|dissolve|style|store|id|voice|center|left|right|less_rounded|music|movie|clear|persistent|ui)\b/,boolean:/\b(?:[Tt]rue|[Ff]alse)\b/,number:/(?:\b(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*)|\B\.\d+)(?:e[+-]?\d+)?j?/i,operator:/[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not|with|at)\b/,punctuation:/[{}[\];(),.:]/}}e.exports=t,t.displayName="renpy",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_renpy.6d8713c3.js b/assets/js/react-syntax-highlighter_languages_refractor_renpy.6d8713c3.js new file mode 100644 index 000000000..afbd1906b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_renpy.6d8713c3.js @@ -0,0 +1,40 @@ +"use strict"; +exports.id = 9291; +exports.ids = [9291]; +exports.modules = { + +/***/ 35108: +/***/ ((module) => { + + + +module.exports = renpy +renpy.displayName = 'renpy' +renpy.aliases = [] +function renpy(Prism) { + Prism.languages.renpy = { + // TODO Write tests. + comment: { + pattern: /(^|[^\\])#.+/, + lookbehind: true + }, + string: { + pattern: /("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2|(?:^#?(?:(?:[0-9a-fA-F]{2}){3}|(?:[0-9a-fA-F]){3})$)/m, + greedy: true + }, + function: /[a-z_]\w*(?=\()/i, + property: /\b(?:insensitive|idle|hover|selected_idle|selected_hover|background|position|alt|xpos|ypos|pos|xanchor|yanchor|anchor|xalign|yalign|align|xcenter|ycenter|xofsset|yoffset|ymaximum|maximum|xmaximum|xminimum|yminimum|minimum|xsize|ysizexysize|xfill|yfill|area|antialias|black_color|bold|caret|color|first_indent|font|size|italic|justify|kerning|language|layout|line_leading|line_overlap_split|line_spacing|min_width|newline_indent|outlines|rest_indent|ruby_style|slow_cps|slow_cps_multiplier|strikethrough|text_align|underline|hyperlink_functions|vertical|hinting|foreground|left_margin|xmargin|top_margin|bottom_margin|ymargin|left_padding|right_padding|xpadding|top_padding|bottom_padding|ypadding|size_group|child|hover_sound|activate_sound|mouse|focus_mask|keyboard_focus|bar_vertical|bar_invert|bar_resizing|left_gutter|right_gutter|top_gutter|bottom_gutter|left_bar|right_bar|top_bar|bottom_bar|thumb|thumb_shadow|thumb_offset|unscrollable|spacing|first_spacing|box_reverse|box_wrap|order_reverse|fit_first|ysize|thumbnail_width|thumbnail_height|help|text_ypos|text_xpos|idle_color|hover_color|selected_idle_color|selected_hover_color|insensitive_color|alpha|insensitive_background|hover_background|zorder|value|width|xadjustment|xanchoraround|xaround|xinitial|xoffset|xzoom|yadjustment|yanchoraround|yaround|yinitial|yzoom|zoom|ground|height|text_style|text_y_fudge|selected_insensitive|has_sound|has_music|has_voice|focus|hovered|image_style|length|minwidth|mousewheel|offset|prefix|radius|range|right_margin|rotate|rotate_pad|developer|screen_width|screen_height|window_title|name|version|windows_icon|default_fullscreen|default_text_cps|default_afm_time|main_menu_music|sample_sound|enter_sound|exit_sound|save_directory|enter_transition|exit_transition|intra_transition|main_game_transition|game_main_transition|end_splash_transition|end_game_transition|after_load_transition|window_show_transition|window_hide_transition|adv_nvl_transition|nvl_adv_transition|enter_yesno_transition|exit_yesno_transition|enter_replay_transition|exit_replay_transition|say_attribute_transition|directory_name|executable_name|include_update|window_icon|modal|google_play_key|google_play_salt|drag_name|drag_handle|draggable|dragged|droppable|dropped|narrator_menu|action|default_afm_enable|version_name|version_tuple|inside|fadeout|fadein|layers|layer_clipping|linear|scrollbars|side_xpos|side_ypos|side_spacing|edgescroll|drag_joined|drag_raise|drop_shadow|drop_shadow_color|subpixel|easein|easeout|time|crop|auto|update|get_installed_packages|can_update|UpdateVersion|Update|overlay_functions|translations|window_left_padding|show_side_image|show_two_window)\b/, + tag: /\b(?:label|image|menu|[hv]box|frame|text|imagemap|imagebutton|bar|vbar|screen|textbutton|buttoscreenn|fixed|grid|input|key|mousearea|side|timer|viewport|window|hotspot|hotbar|self|button|drag|draggroup|tag|mm_menu_frame|nvl|block|parallel)\b|\$/, + keyword: /\b(?:as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|pass|print|raise|return|try|while|yield|adjustment|alignaround|allow|angle|around|box_layout|cache|changed|child_size|clicked|clipping|corner1|corner2|default|delay|exclude|scope|slow|slow_abortable|slow_done|sound|style_group|substitute|suffix|transform_anchor|transpose|unhovered|config|theme|mm_root|gm_root|rounded_window|build|disabled_text|disabled|widget_selected|widget_text|widget_hover|widget|updater|behind|call|expression|hide|init|jump|onlayer|python|renpy|scene|set|show|transform|play|queue|stop|pause|define|window|repeat|contains|choice|on|function|event|animation|clockwise|counterclockwise|circles|knot|null|None|random|has|add|use|fade|dissolve|style|store|id|voice|center|left|right|less_rounded|music|movie|clear|persistent|ui)\b/, + boolean: /\b(?:[Tt]rue|[Ff]alse)\b/, + number: /(?:\b(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*)|\B\.\d+)(?:e[+-]?\d+)?j?/i, + operator: /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]|\b(?:or|and|not|with|at)\b/, + punctuation: /[{}[\];(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_rest.c1c30f77.js b/assets/js/react-syntax-highlighter_languages_refractor_rest.c1c30f77.js new file mode 100644 index 000000000..79deb6527 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_rest.c1c30f77.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2348],{6678:n=>{function t(n){n.languages.rest={table:[{pattern:/(\s*)(?:\+[=-]+)+\+(?:\r?\n|\r)(?:\1(?:[+|].+)+[+|](?:\r?\n|\r))+\1(?:\+[=-]+)+\+/,lookbehind:!0,inside:{punctuation:/\||(?:\+[=-]+)+\+/}},{pattern:/(\s*)(?:=+ +)+=+(?:(?:\r?\n|\r)\1.+)+(?:\r?\n|\r)\1(?:=+ +)+=+(?=(?:\r?\n|\r){2}|\s*$)/,lookbehind:!0,inside:{punctuation:/[=-]+/}}],"substitution-def":{pattern:/(^\s*\.\. )\|(?:[^|\s](?:[^|]*[^|\s])?)\| [^:]+::/m,lookbehind:!0,inside:{substitution:{pattern:/^\|(?:[^|\s]|[^|\s][^|]*[^|\s])\|/,alias:"attr-value",inside:{punctuation:/^\||\|$/}},directive:{pattern:/( +)[^:]+::/,lookbehind:!0,alias:"function",inside:{punctuation:/::$/}}}},"link-target":[{pattern:/(^\s*\.\. )\[[^\]]+\]/m,lookbehind:!0,alias:"string",inside:{punctuation:/^\[|\]$/}},{pattern:/(^\s*\.\. )_(?:`[^`]+`|(?:[^:\\]|\\.)+):/m,lookbehind:!0,alias:"string",inside:{punctuation:/^_|:$/}}],directive:{pattern:/(^\s*\.\. )[^:]+::/m,lookbehind:!0,alias:"function",inside:{punctuation:/::$/}},comment:{pattern:/(^\s*\.\.)(?:(?: .+)?(?:(?:\r?\n|\r).+)+| .+)(?=(?:\r?\n|\r){2}|$)/m,lookbehind:!0},title:[{pattern:/^(([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+)(?:\r?\n|\r).+(?:\r?\n|\r)\1$/m,inside:{punctuation:/^[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+|[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/,important:/.+/}},{pattern:/(^|(?:\r?\n|\r){2}).+(?:\r?\n|\r)([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+(?=\r?\n|\r|$)/,lookbehind:!0,inside:{punctuation:/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/,important:/.+/}}],hr:{pattern:/((?:\r?\n|\r){2})([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2{3,}(?=(?:\r?\n|\r){2})/,lookbehind:!0,alias:"punctuation"},field:{pattern:/(^\s*):[^:\r\n]+:(?= )/m,lookbehind:!0,alias:"attr-name"},"command-line-option":{pattern:/(^\s*)(?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?(?:, (?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?)*(?=(?:\r?\n|\r)? {2,}\S)/im,lookbehind:!0,alias:"symbol"},"literal-block":{pattern:/::(?:\r?\n|\r){2}([ \t]+).+(?:(?:\r?\n|\r)\1.+)*/,inside:{"literal-block-punctuation":{pattern:/^::/,alias:"punctuation"}}},"quoted-literal-block":{pattern:/::(?:\r?\n|\r){2}([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]).*(?:(?:\r?\n|\r)\1.*)*/,inside:{"literal-block-punctuation":{pattern:/^(?:::|([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\1*)/m,alias:"punctuation"}}},"list-bullet":{pattern:/(^\s*)(?:[*+\-\u2022\u2023\u2043]|\(?(?:\d+|[a-z]|[ivxdclm]+)\)|(?:\d+|[a-z]|[ivxdclm]+)\.)(?= )/im,lookbehind:!0,alias:"punctuation"},"doctest-block":{pattern:/(^\s*)>>> .+(?:(?:\r?\n|\r).+)*/m,lookbehind:!0,inside:{punctuation:/^>>>/}},inline:[{pattern:/(^|[\s\-:\/'"<(\[{])(?::[^:]+:`.*?`|`.*?`:[^:]+:|(\*\*?|``?|\|)(?!\s).*?[^\s]\2(?=[\s\-.,:;!?\\\/'")\]}]|$))/m,lookbehind:!0,inside:{bold:{pattern:/(^\*\*).+(?=\*\*$)/,lookbehind:!0},italic:{pattern:/(^\*).+(?=\*$)/,lookbehind:!0},"inline-literal":{pattern:/(^``).+(?=``$)/,lookbehind:!0,alias:"symbol"},role:{pattern:/^:[^:]+:|:[^:]+:$/,alias:"function",inside:{punctuation:/^:|:$/}},"interpreted-text":{pattern:/(^`).+(?=`$)/,lookbehind:!0,alias:"attr-value"},substitution:{pattern:/(^\|).+(?=\|$)/,lookbehind:!0,alias:"attr-value"},punctuation:/\*\*?|``?|\|/}}],link:[{pattern:/\[[^\]]+\]_(?=[\s\-.,:;!?\\\/'")\]}]|$)/,alias:"string",inside:{punctuation:/^\[|\]_$/}},{pattern:/(?:\b[a-z\d]+(?:[_.:+][a-z\d]+)*_?_|`[^`]+`_?_|_`[^`]+`)(?=[\s\-.,:;!?\\\/'")\]}]|$)/i,alias:"string",inside:{punctuation:/^_?`|`$|`?_?_$/}}],punctuation:{pattern:/(^\s*)(?:\|(?= |$)|(?:---?|\u2014|\.\.|__)(?= )|\.\.$)/m,lookbehind:!0}}}n.exports=t,t.displayName="rest",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_rest.ff2008c3.js b/assets/js/react-syntax-highlighter_languages_refractor_rest.ff2008c3.js new file mode 100644 index 000000000..0a0d5505e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_rest.ff2008c3.js @@ -0,0 +1,218 @@ +"use strict"; +exports.id = 2348; +exports.ids = [2348]; +exports.modules = { + +/***/ 46678: +/***/ ((module) => { + + + +module.exports = rest +rest.displayName = 'rest' +rest.aliases = [] +function rest(Prism) { + Prism.languages.rest = { + table: [ + { + pattern: /(\s*)(?:\+[=-]+)+\+(?:\r?\n|\r)(?:\1(?:[+|].+)+[+|](?:\r?\n|\r))+\1(?:\+[=-]+)+\+/, + lookbehind: true, + inside: { + punctuation: /\||(?:\+[=-]+)+\+/ + } + }, + { + pattern: /(\s*)(?:=+ +)+=+(?:(?:\r?\n|\r)\1.+)+(?:\r?\n|\r)\1(?:=+ +)+=+(?=(?:\r?\n|\r){2}|\s*$)/, + lookbehind: true, + inside: { + punctuation: /[=-]+/ + } + } + ], + // Directive-like patterns + 'substitution-def': { + pattern: /(^\s*\.\. )\|(?:[^|\s](?:[^|]*[^|\s])?)\| [^:]+::/m, + lookbehind: true, + inside: { + substitution: { + pattern: /^\|(?:[^|\s]|[^|\s][^|]*[^|\s])\|/, + alias: 'attr-value', + inside: { + punctuation: /^\||\|$/ + } + }, + directive: { + pattern: /( +)[^:]+::/, + lookbehind: true, + alias: 'function', + inside: { + punctuation: /::$/ + } + } + } + }, + 'link-target': [ + { + pattern: /(^\s*\.\. )\[[^\]]+\]/m, + lookbehind: true, + alias: 'string', + inside: { + punctuation: /^\[|\]$/ + } + }, + { + pattern: /(^\s*\.\. )_(?:`[^`]+`|(?:[^:\\]|\\.)+):/m, + lookbehind: true, + alias: 'string', + inside: { + punctuation: /^_|:$/ + } + } + ], + directive: { + pattern: /(^\s*\.\. )[^:]+::/m, + lookbehind: true, + alias: 'function', + inside: { + punctuation: /::$/ + } + }, + comment: { + // The two alternatives try to prevent highlighting of blank comments + pattern: /(^\s*\.\.)(?:(?: .+)?(?:(?:\r?\n|\r).+)+| .+)(?=(?:\r?\n|\r){2}|$)/m, + lookbehind: true + }, + title: [ + // Overlined and underlined + { + pattern: /^(([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+)(?:\r?\n|\r).+(?:\r?\n|\r)\1$/m, + inside: { + punctuation: /^[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+|[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/, + important: /.+/ + } + }, // Underlined only + { + pattern: /(^|(?:\r?\n|\r){2}).+(?:\r?\n|\r)([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2+(?=\r?\n|\r|$)/, + lookbehind: true, + inside: { + punctuation: /[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]+$/, + important: /.+/ + } + } + ], + hr: { + pattern: /((?:\r?\n|\r){2})([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\2{3,}(?=(?:\r?\n|\r){2})/, + lookbehind: true, + alias: 'punctuation' + }, + field: { + pattern: /(^\s*):[^:\r\n]+:(?= )/m, + lookbehind: true, + alias: 'attr-name' + }, + 'command-line-option': { + pattern: /(^\s*)(?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?(?:, (?:[+-][a-z\d]|(?:--|\/)[a-z\d-]+)(?:[ =](?:[a-z][\w-]*|<[^<>]+>))?)*(?=(?:\r?\n|\r)? {2,}\S)/im, + lookbehind: true, + alias: 'symbol' + }, + 'literal-block': { + pattern: /::(?:\r?\n|\r){2}([ \t]+).+(?:(?:\r?\n|\r)\1.+)*/, + inside: { + 'literal-block-punctuation': { + pattern: /^::/, + alias: 'punctuation' + } + } + }, + 'quoted-literal-block': { + pattern: /::(?:\r?\n|\r){2}([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~]).*(?:(?:\r?\n|\r)\1.*)*/, + inside: { + 'literal-block-punctuation': { + pattern: /^(?:::|([!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~])\1*)/m, + alias: 'punctuation' + } + } + }, + 'list-bullet': { + pattern: /(^\s*)(?:[*+\-•‣⁃]|\(?(?:\d+|[a-z]|[ivxdclm]+)\)|(?:\d+|[a-z]|[ivxdclm]+)\.)(?= )/im, + lookbehind: true, + alias: 'punctuation' + }, + 'doctest-block': { + pattern: /(^\s*)>>> .+(?:(?:\r?\n|\r).+)*/m, + lookbehind: true, + inside: { + punctuation: /^>>>/ + } + }, + inline: [ + { + pattern: /(^|[\s\-:\/'"<(\[{])(?::[^:]+:`.*?`|`.*?`:[^:]+:|(\*\*?|``?|\|)(?!\s).*?[^\s]\2(?=[\s\-.,:;!?\\\/'")\]}]|$))/m, + lookbehind: true, + inside: { + bold: { + pattern: /(^\*\*).+(?=\*\*$)/, + lookbehind: true + }, + italic: { + pattern: /(^\*).+(?=\*$)/, + lookbehind: true + }, + 'inline-literal': { + pattern: /(^``).+(?=``$)/, + lookbehind: true, + alias: 'symbol' + }, + role: { + pattern: /^:[^:]+:|:[^:]+:$/, + alias: 'function', + inside: { + punctuation: /^:|:$/ + } + }, + 'interpreted-text': { + pattern: /(^`).+(?=`$)/, + lookbehind: true, + alias: 'attr-value' + }, + substitution: { + pattern: /(^\|).+(?=\|$)/, + lookbehind: true, + alias: 'attr-value' + }, + punctuation: /\*\*?|``?|\|/ + } + } + ], + link: [ + { + pattern: /\[[^\]]+\]_(?=[\s\-.,:;!?\\\/'")\]}]|$)/, + alias: 'string', + inside: { + punctuation: /^\[|\]_$/ + } + }, + { + pattern: /(?:\b[a-z\d]+(?:[_.:+][a-z\d]+)*_?_|`[^`]+`_?_|_`[^`]+`)(?=[\s\-.,:;!?\\\/'")\]}]|$)/i, + alias: 'string', + inside: { + punctuation: /^_?`|`$|`?_?_$/ + } + } + ], + // Line block start, + // quote attribution, + // explicit markup start, + // and anonymous hyperlink target shortcut (__) + punctuation: { + pattern: /(^\s*)(?:\|(?= |$)|(?:---?|—|\.\.|__)(?= )|\.\.$)/m, + lookbehind: true + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_rip.0ac85475.js b/assets/js/react-syntax-highlighter_languages_refractor_rip.0ac85475.js new file mode 100644 index 000000000..b0ba8333e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_rip.0ac85475.js @@ -0,0 +1,44 @@ +"use strict"; +exports.id = 1768; +exports.ids = [1768]; +exports.modules = { + +/***/ 47496: +/***/ ((module) => { + + + +module.exports = rip +rip.displayName = 'rip' +rip.aliases = [] +function rip(Prism) { + Prism.languages.rip = { + comment: /#.*/, + keyword: /(?:=>|->)|\b(?:class|if|else|switch|case|return|exit|try|catch|finally|raise)\b/, + builtin: /@|\bSystem\b/, + boolean: /\b(?:true|false)\b/, + date: /\b\d{4}-\d{2}-\d{2}\b/, + time: /\b\d{2}:\d{2}:\d{2}\b/, + datetime: /\b\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\b/, + character: /\B`[^\s`'",.:;#\/\\()<>\[\]{}]\b/, + regex: { + pattern: /(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/(?=\s*($|[\r\n,.;})]))/, + lookbehind: true, + greedy: true + }, + symbol: /:[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/, + string: { + pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + }, + number: /[+-]?(?:(?:\d+\.\d+)|(?:\d+))/, + punctuation: /(?:\.{2,3})|[`,.:;=\/\\()<>\[\]{}]/, + reference: /[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_rip.7db00dad.js b/assets/js/react-syntax-highlighter_languages_refractor_rip.7db00dad.js new file mode 100644 index 000000000..253b31c46 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_rip.7db00dad.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1768],{7496:e=>{function s(e){e.languages.rip={comment:/#.*/,keyword:/(?:=>|->)|\b(?:class|if|else|switch|case|return|exit|try|catch|finally|raise)\b/,builtin:/@|\bSystem\b/,boolean:/\b(?:true|false)\b/,date:/\b\d{4}-\d{2}-\d{2}\b/,time:/\b\d{2}:\d{2}:\d{2}\b/,datetime:/\b\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\b/,character:/\B`[^\s`'",.:;#\/\\()<>\[\]{}]\b/,regex:{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0},symbol:/:[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/,string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},number:/[+-]?(?:(?:\d+\.\d+)|(?:\d+))/,punctuation:/(?:\.{2,3})|[`,.:;=\/\\()<>\[\]{}]/,reference:/[^\d\s`'",.:;#\/\\()<>\[\]{}][^\s`'",.:;#\/\\()<>\[\]{}]*/}}e.exports=s,s.displayName="rip",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_roboconf.1e240531.js b/assets/js/react-syntax-highlighter_languages_refractor_roboconf.1e240531.js new file mode 100644 index 000000000..75e06e4f8 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_roboconf.1e240531.js @@ -0,0 +1,48 @@ +"use strict"; +exports.id = 3236; +exports.ids = [3236]; +exports.modules = { + +/***/ 30527: +/***/ ((module) => { + + + +module.exports = roboconf +roboconf.displayName = 'roboconf' +roboconf.aliases = [] +function roboconf(Prism) { + Prism.languages.roboconf = { + comment: /#.*/, + keyword: { + pattern: /(^|\s)(?:(?:facet|instance of)(?=[ \t]+[\w-]+[ \t]*\{)|(?:external|import)\b)/, + lookbehind: true + }, + component: { + pattern: /[\w-]+(?=[ \t]*\{)/, + alias: 'variable' + }, + property: /[\w.-]+(?=[ \t]*:)/, + value: { + pattern: /(=[ \t]*)[^,;]+/, + lookbehind: true, + alias: 'attr-value' + }, + optional: { + pattern: /\(optional\)/, + alias: 'builtin' + }, + wildcard: { + pattern: /(\.)\*/, + lookbehind: true, + alias: 'operator' + }, + punctuation: /[{},.;:=]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_roboconf.28ea6486.js b/assets/js/react-syntax-highlighter_languages_refractor_roboconf.28ea6486.js new file mode 100644 index 000000000..90b7cbbfb --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_roboconf.28ea6486.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3236],{527:a=>{function t(a){a.languages.roboconf={comment:/#.*/,keyword:{pattern:/(^|\s)(?:(?:facet|instance of)(?=[ \t]+[\w-]+[ \t]*\{)|(?:external|import)\b)/,lookbehind:!0},component:{pattern:/[\w-]+(?=[ \t]*\{)/,alias:"variable"},property:/[\w.-]+(?=[ \t]*:)/,value:{pattern:/(=[ \t]*)[^,;]+/,lookbehind:!0,alias:"attr-value"},optional:{pattern:/\(optional\)/,alias:"builtin"},wildcard:{pattern:/(\.)\*/,lookbehind:!0,alias:"operator"},punctuation:/[{},.;:=]/}}a.exports=t,t.displayName="roboconf",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ruby.09a46cf4.js b/assets/js/react-syntax-highlighter_languages_refractor_ruby.09a46cf4.js new file mode 100644 index 000000000..2282d3eca --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ruby.09a46cf4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[369],{6939:e=>{function n(e){!function(e){e.languages.ruby=e.languages.extend("clike",{comment:[/#.*/,{pattern:/^=begin\s[\s\S]*?^=end/m,greedy:!0}],keyword:/\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/});var n={pattern:/#\{[^}]+\}/,inside:{delimiter:{pattern:/^#\{|\}$/,alias:"tag"},rest:e.languages.ruby}};delete e.languages.ruby.function,e.languages.insertBefore("ruby","keyword",{regex:[{pattern:/%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,greedy:!0,inside:{interpolation:n}},{pattern:/(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/,lookbehind:!0,greedy:!0}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:{pattern:/(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,lookbehind:!0},"method-definition":{pattern:/(\bdef\s+)[\w.]+/,lookbehind:!0,inside:{function:/\w+$/,rest:e.languages.ruby}}}),e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,constant:/\b[A-Z]\w*(?:[?!]|\b)/}),e.languages.ruby.string=[{pattern:/%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,greedy:!0,inside:{interpolation:n}},{pattern:/%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,greedy:!0,inside:{interpolation:n}},{pattern:/("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:n}}],e.languages.rb=e.languages.ruby}(e)}e.exports=n,n.displayName="ruby",n.aliases=["rb"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_ruby.466039e4.js b/assets/js/react-syntax-highlighter_languages_refractor_ruby.466039e4.js new file mode 100644 index 000000000..496d4cbdb --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_ruby.466039e4.js @@ -0,0 +1,158 @@ +"use strict"; +exports.id = 369; +exports.ids = [369]; +exports.modules = { + +/***/ 56939: +/***/ ((module) => { + + + +module.exports = ruby +ruby.displayName = 'ruby' +ruby.aliases = ['rb'] +function ruby(Prism) { + /** + * Original by Samuel Flores + * + * Adds the following new token classes: + * constant, builtin, variable, symbol, regex + */ + ;(function(Prism) { + Prism.languages.ruby = Prism.languages.extend('clike', { + comment: [ + /#.*/, + { + pattern: /^=begin\s[\s\S]*?^=end/m, + greedy: true + } + ], + keyword: /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|false|for|if|in|module|new|next|nil|not|or|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|true|undef|unless|until|when|while|yield)\b/ + }) + var interpolation = { + pattern: /#\{[^}]+\}/, + inside: { + delimiter: { + pattern: /^#\{|\}$/, + alias: 'tag' + }, + rest: Prism.languages.ruby + } + } + delete Prism.languages.ruby.function + Prism.languages.insertBefore('ruby', 'keyword', { + regex: [ + { + pattern: /%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + // Here we need to specifically allow interpolation + pattern: /%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /(^|[^/])\/(?!\/)(\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*($|[\r\n,.;})]))/, + lookbehind: true, + greedy: true + } + ], + variable: /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/, + symbol: { + pattern: /(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/, + lookbehind: true + }, + 'method-definition': { + pattern: /(\bdef\s+)[\w.]+/, + lookbehind: true, + inside: { + function: /\w+$/, + rest: Prism.languages.ruby + } + } + }) + Prism.languages.insertBefore('ruby', 'number', { + builtin: /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/, + constant: /\b[A-Z]\w*(?:[?!]|\b)/ + }) + Prism.languages.ruby.string = [ + { + pattern: /%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + // Here we need to specifically allow interpolation + pattern: /%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/, + greedy: true, + inside: { + interpolation: interpolation + } + }, + { + pattern: /("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true, + inside: { + interpolation: interpolation + } + } + ] + Prism.languages.rb = Prism.languages.ruby + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_rust.138f676f.js b/assets/js/react-syntax-highlighter_languages_refractor_rust.138f676f.js new file mode 100644 index 000000000..fcfc415b3 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_rust.138f676f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1001],{3648:e=>{function t(e){e.languages.rust={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0}],string:[{pattern:/b?r(#*)"(?:\\.|(?!"\1)[^\\\r\n])*"\1/,greedy:!0},{pattern:/b?"(?:\\.|[^\\\r\n"])*"/,greedy:!0}],char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u{(?:[\da-fA-F]_*){1,6}|.)|[^\\\r\n\t'])'/,alias:"string"},"lifetime-annotation":{pattern:/'[^\s>']+/,alias:"symbol"},keyword:/\b(?:abstract|alignof|as|async|await|be|box|break|const|continue|crate|do|dyn|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|match|mod|move|mut|offsetof|once|override|priv|pub|pure|ref|return|sizeof|static|self|Self|struct|super|true|trait|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,attribute:{pattern:/#!?\[.+?\]/,greedy:!0,alias:"attr-name"},function:[/\w+(?=\s*\()/,/\w+!(?=\s*\(|\[)/],"macro-rules":{pattern:/\w+!/,alias:"function"},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(\d(?:_?\d)*)?\.?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:[iu](?:8|16|32|64)?|f32|f64))?\b/,"closure-params":{pattern:/\|[^|]*\|(?=\s*[{-])/,inside:{punctuation:/[|:,]/,operator:/[&*]/}},punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/}}e.exports=t,t.displayName="rust",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_rust.1a48c5e0.js b/assets/js/react-syntax-highlighter_languages_refractor_rust.1a48c5e0.js new file mode 100644 index 000000000..21a5de489 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_rust.1a48c5e0.js @@ -0,0 +1,83 @@ +"use strict"; +exports.id = 1001; +exports.ids = [1001]; +exports.modules = { + +/***/ 83648: +/***/ ((module) => { + + + +module.exports = rust +rust.displayName = 'rust' +rust.aliases = [] +function rust(Prism) { + /* TODO +Add support for Markdown notation inside doc comments +Add support for nested block comments... +Match closure params even when not followed by dash or brace +Add better support for macro definition +*/ + Prism.languages.rust = { + comment: [ + { + pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, + lookbehind: true + }, + { + pattern: /(^|[^\\:])\/\/.*/, + lookbehind: true + } + ], + string: [ + { + pattern: /b?r(#*)"(?:\\.|(?!"\1)[^\\\r\n])*"\1/, + greedy: true + }, + { + pattern: /b?"(?:\\.|[^\\\r\n"])*"/, + greedy: true + } + ], + char: { + pattern: /b?'(?:\\(?:x[0-7][\da-fA-F]|u{(?:[\da-fA-F]_*){1,6}|.)|[^\\\r\n\t'])'/, + alias: 'string' + }, + 'lifetime-annotation': { + pattern: /'[^\s>']+/, + alias: 'symbol' + }, + keyword: /\b(?:abstract|alignof|as|async|await|be|box|break|const|continue|crate|do|dyn|else|enum|extern|false|final|fn|for|if|impl|in|let|loop|match|mod|move|mut|offsetof|once|override|priv|pub|pure|ref|return|sizeof|static|self|Self|struct|super|true|trait|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/, + attribute: { + pattern: /#!?\[.+?\]/, + greedy: true, + alias: 'attr-name' + }, + function: [ + /\w+(?=\s*\()/, // Macros can use parens or brackets + /\w+!(?=\s*\(|\[)/ + ], + 'macro-rules': { + pattern: /\w+!/, + alias: 'function' + }, + // Hex, oct, bin, dec numbers with visual separators and type suffix + number: /\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(\d(?:_?\d)*)?\.?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:[iu](?:8|16|32|64)?|f32|f64))?\b/, + // Closure params should not be confused with bitwise OR | + 'closure-params': { + pattern: /\|[^|]*\|(?=\s*[{-])/, + inside: { + punctuation: /[|:,]/, + operator: /[&*]/ + } + }, + punctuation: /->|\.\.=|\.{1,3}|::|[{}[\];(),:]/, + operator: /[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_sas.0335dc08.js b/assets/js/react-syntax-highlighter_languages_refractor_sas.0335dc08.js new file mode 100644 index 000000000..a709e4649 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_sas.0335dc08.js @@ -0,0 +1,55 @@ +"use strict"; +exports.id = 8067; +exports.ids = [8067]; +exports.modules = { + +/***/ 16009: +/***/ ((module) => { + + + +module.exports = sas +sas.displayName = 'sas' +sas.aliases = [] +function sas(Prism) { + Prism.languages.sas = { + datalines: { + pattern: /^\s*(?:(?:data)?lines|cards);[\s\S]+?(?:\r?\n|\r);/im, + alias: 'string', + inside: { + keyword: { + pattern: /^(\s*)(?:(?:data)?lines|cards)/i, + lookbehind: true + }, + punctuation: /;/ + } + }, + comment: [ + { + pattern: /(^\s*|;\s*)\*.*;/m, + lookbehind: true + }, + /\/\*[\s\S]+?\*\// + ], + datetime: { + // '1jan2013'd, '9:25:19pm't, '18jan2003:9:27:05am'dt + pattern: /'[^']+'(?:dt?|t)\b/i, + alias: 'number' + }, + string: { + pattern: /(["'])(?:\1\1|(?!\1)[\s\S])*\1/, + greedy: true + }, + keyword: /\b(?:data|else|format|if|input|proc\s\w+|quit|run|then|libname|set|output|options)\b/i, + // Decimal (1.2e23), hexadecimal (0c1x) + number: /\b(?:[\da-f]+x|\d+(?:\.\d+)?(?:e[+-]?\d+)?)/i, + operator: /\*\*?|\|\|?|!!?|¦¦?|<[>=]?|>[<=]?|[-+\/=&]|[~¬^]=?|\b(?:eq|ne|gt|lt|ge|le|in|not)\b/i, + punctuation: /[$%@.(){}\[\];,\\]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_sas.f39d6f7c.js b/assets/js/react-syntax-highlighter_languages_refractor_sas.f39d6f7c.js new file mode 100644 index 000000000..2cf034258 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_sas.f39d6f7c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8067],{6009:t=>{function e(t){t.languages.sas={datalines:{pattern:/^\s*(?:(?:data)?lines|cards);[\s\S]+?(?:\r?\n|\r);/im,alias:"string",inside:{keyword:{pattern:/^(\s*)(?:(?:data)?lines|cards)/i,lookbehind:!0},punctuation:/;/}},comment:[{pattern:/(^\s*|;\s*)\*.*;/m,lookbehind:!0},/\/\*[\s\S]+?\*\//],datetime:{pattern:/'[^']+'(?:dt?|t)\b/i,alias:"number"},string:{pattern:/(["'])(?:\1\1|(?!\1)[\s\S])*\1/,greedy:!0},keyword:/\b(?:data|else|format|if|input|proc\s\w+|quit|run|then|libname|set|output|options)\b/i,number:/\b(?:[\da-f]+x|\d+(?:\.\d+)?(?:e[+-]?\d+)?)/i,operator:/\*\*?|\|\|?|!!?|\xa6\xa6?|<[>=]?|>[<=]?|[-+\/=&]|[~\xac^]=?|\b(?:eq|ne|gt|lt|ge|le|in|not)\b/i,punctuation:/[$%@.(){}\[\];,\\]/}}t.exports=e,e.displayName="sas",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_sass.7c9661d3.js b/assets/js/react-syntax-highlighter_languages_refractor_sass.7c9661d3.js new file mode 100644 index 000000000..9884afde7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_sass.7c9661d3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9797],{1720:e=>{function s(e){!function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t]+.+)*/m,lookbehind:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,inside:{atrule:/(?:@[\w-]+|[+=])/m}}}),delete e.languages.sass.atrule;var s=/\$[-\w]+|#\{\$[-\w]+\}/,a=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or|not)\b/,{pattern:/(\s+)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,inside:{punctuation:/:/,variable:s,operator:a}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s]+.*)/m,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:s,operator:a,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)\1[ \t]+\S(?:,?[^,\r\n]+)*)*/,lookbehind:!0}})}(e)}e.exports=s,s.displayName="sass",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_sass.d122d11a.js b/assets/js/react-syntax-highlighter_languages_refractor_sass.d122d11a.js new file mode 100644 index 000000000..a32d1d299 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_sass.d122d11a.js @@ -0,0 +1,86 @@ +"use strict"; +exports.id = 9797; +exports.ids = [9797]; +exports.modules = { + +/***/ 41720: +/***/ ((module) => { + + + +module.exports = sass +sass.displayName = 'sass' +sass.aliases = [] +function sass(Prism) { + ;(function(Prism) { + Prism.languages.sass = Prism.languages.extend('css', { + // Sass comments don't need to be closed, only indented + comment: { + pattern: /^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t]+.+)*/m, + lookbehind: true + } + }) + Prism.languages.insertBefore('sass', 'atrule', { + // We want to consume the whole line + 'atrule-line': { + // Includes support for = and + shortcuts + pattern: /^(?:[ \t]*)[@+=].+/m, + inside: { + atrule: /(?:@[\w-]+|[+=])/m + } + } + }) + delete Prism.languages.sass.atrule + var variable = /\$[-\w]+|#\{\$[-\w]+\}/ + var operator = [ + /[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or|not)\b/, + { + pattern: /(\s+)-(?=\s)/, + lookbehind: true + } + ] + Prism.languages.insertBefore('sass', 'property', { + // We want to consume the whole line + 'variable-line': { + pattern: /^[ \t]*\$.+/m, + inside: { + punctuation: /:/, + variable: variable, + operator: operator + } + }, + // We want to consume the whole line + 'property-line': { + pattern: /^[ \t]*(?:[^:\s]+ *:.*|:[^:\s]+.*)/m, + inside: { + property: [ + /[^:\s]+(?=\s*:)/, + { + pattern: /(:)[^:\s]+/, + lookbehind: true + } + ], + punctuation: /:/, + variable: variable, + operator: operator, + important: Prism.languages.sass.important + } + } + }) + delete Prism.languages.sass.property + delete Prism.languages.sass.important // Now that whole lines for other patterns are consumed, + // what's left should be selectors + Prism.languages.insertBefore('sass', 'punctuation', { + selector: { + pattern: /([ \t]*)\S(?:,?[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,?[^,\r\n]+)*)*/, + lookbehind: true + } + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_scala.a99c0500.js b/assets/js/react-syntax-highlighter_languages_refractor_scala.a99c0500.js new file mode 100644 index 000000000..aa37f124d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_scala.a99c0500.js @@ -0,0 +1,101 @@ +"use strict"; +exports.id = 3818; +exports.ids = [3818,3980]; +exports.modules = { + +/***/ 15909: +/***/ ((module) => { + + + +module.exports = java +java.displayName = 'java' +java.aliases = [] +function java(Prism) { + ;(function(Prism) { + var keywords = /\b(?:abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while|var|null|exports|module|open|opens|provides|requires|to|transitive|uses|with)\b/ // based on the java naming conventions + var className = /\b[A-Z](?:\w*[a-z]\w*)?\b/ + Prism.languages.java = Prism.languages.extend('clike', { + 'class-name': [ + className, // variables and parameters + // this to support class names (or generic parameters) which do not contain a lower case letter (also works for methods) + /\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/ + ], + keyword: keywords, + function: [ + Prism.languages.clike.function, + { + pattern: /(\:\:)[a-z_]\w*/, + lookbehind: true + } + ], + number: /\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i, + operator: { + pattern: /(^|[^.])(?:<<=?|>>>?=?|->|([-+&|])\2|[?:~]|[-+*/%&|^!=<>]=?)/m, + lookbehind: true + } + }) + Prism.languages.insertBefore('java', 'class-name', { + annotation: { + alias: 'punctuation', + pattern: /(^|[^.])@\w+/, + lookbehind: true + }, + namespace: { + pattern: /(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(\.[a-z]\w*)+/, + lookbehind: true, + inside: { + punctuation: /\./ + } + }, + generics: { + pattern: /<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/, + inside: { + 'class-name': className, + keyword: keywords, + punctuation: /[<>(),.:]/, + operator: /[?&|]/ + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 6054: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorJava = __webpack_require__(15909) +module.exports = scala +scala.displayName = 'scala' +scala.aliases = [] +function scala(Prism) { + Prism.register(refractorJava) + Prism.languages.scala = Prism.languages.extend('java', { + keyword: /<-|=>|\b(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|null|object|override|package|private|protected|return|sealed|self|super|this|throw|trait|try|type|val|var|while|with|yield)\b/, + string: [ + { + pattern: /"""[\s\S]*?"""/, + greedy: true + }, + { + pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/, + greedy: true + } + ], + builtin: /\b(?:String|Int|Long|Short|Byte|Boolean|Double|Float|Char|Any|AnyRef|AnyVal|Unit|Nothing)\b/, + number: /\b0x[\da-f]*\.?[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e\d+)?[dfl]?/i, + symbol: /'[^\d\s\\]\w*/ + }) + delete Prism.languages.scala['class-name'] + delete Prism.languages.scala['function'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_scala.ea29acb6.js b/assets/js/react-syntax-highlighter_languages_refractor_scala.ea29acb6.js new file mode 100644 index 000000000..4c3819861 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_scala.ea29acb6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3818,3980],{5909:e=>{function a(e){!function(e){var a=/\b(?:abstract|continue|for|new|switch|assert|default|goto|package|synchronized|boolean|do|if|private|this|break|double|implements|protected|throw|byte|else|import|public|throws|case|enum|instanceof|return|transient|catch|extends|int|short|try|char|final|interface|static|void|class|finally|long|strictfp|volatile|const|float|native|super|while|var|null|exports|module|open|opens|provides|requires|to|transitive|uses|with)\b/,t=/\b[A-Z](?:\w*[a-z]\w*)?\b/;e.languages.java=e.languages.extend("clike",{"class-name":[t,/\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/],keyword:a,function:[e.languages.clike.function,{pattern:/(\:\:)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|([-+&|])\2|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),e.languages.insertBefore("java","class-name",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0},namespace:{pattern:/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(\.[a-z]\w*)+/,lookbehind:!0,inside:{punctuation:/\./}},generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":t,keyword:a,punctuation:/[<>(),.:]/,operator:/[?&|]/}}})}(e)}e.exports=a,a.displayName="java",a.aliases=[]},6054:(e,a,t)=>{var n=t(5909);function s(e){e.register(n),e.languages.scala=e.languages.extend("java",{keyword:/<-|=>|\b(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|null|object|override|package|private|protected|return|sealed|self|super|this|throw|trait|try|type|val|var|while|with|yield)\b/,string:[{pattern:/"""[\s\S]*?"""/,greedy:!0},{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0}],builtin:/\b(?:String|Int|Long|Short|Byte|Boolean|Double|Float|Char|Any|AnyRef|AnyVal|Unit|Nothing)\b/,number:/\b0x[\da-f]*\.?[\da-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:e\d+)?[dfl]?/i,symbol:/'[^\d\s\\]\w*/}),delete e.languages.scala["class-name"],delete e.languages.scala.function}e.exports=s,s.displayName="scala",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_scheme.918ecf45.js b/assets/js/react-syntax-highlighter_languages_refractor_scheme.918ecf45.js new file mode 100644 index 000000000..ad3693f2e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_scheme.918ecf45.js @@ -0,0 +1,54 @@ +"use strict"; +exports.id = 5085; +exports.ids = [5085]; +exports.modules = { + +/***/ 9997: +/***/ ((module) => { + + + +module.exports = scheme +scheme.displayName = 'scheme' +scheme.aliases = [] +function scheme(Prism) { + Prism.languages.scheme = { + comment: /;.*/, + string: { + pattern: /"(?:[^"\\]|\\.)*"|'[^()#'\s]+/, + greedy: true + }, + character: { + pattern: /#\\(?:[ux][a-fA-F\d]+|[a-zA-Z]+|\S)/, + alias: 'string' + }, + keyword: { + pattern: /(\()(?:define(?:-syntax|-library|-values)?|(?:case-)?lambda|let(?:\*|rec)?(?:-values)?|else|if|cond|begin|delay(?:-force)?|parameterize|guard|set!|(?:quasi-)?quote|syntax-rules)(?=[()\s])/, + lookbehind: true + }, + builtin: { + pattern: /(\()(?:(?:cons|car|cdr|list|call-with-current-continuation|call\/cc|append|abs|apply|eval)\b|null\?|pair\?|boolean\?|eof-object\?|char\?|procedure\?|number\?|port\?|string\?|vector\?|symbol\?|bytevector\?)(?=[()\s])/, + lookbehind: true + }, + number: { + pattern: /([\s()])[-+]?(?:\d+\/\d+|\d*\.?\d+(?:\s*[-+]\s*\d*\.?\d+i)?)\b/, + lookbehind: true + }, + boolean: /#[tf]/, + operator: { + pattern: /(\()(?:[-+*%\/]|[<>]=?|=>?)(?=\s|$)/, + lookbehind: true + }, + function: { + pattern: /(\()[^()'\s]+(?=[()\s)]|$)/, + lookbehind: true + }, + punctuation: /[()']/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_scheme.a98bd00e.js b/assets/js/react-syntax-highlighter_languages_refractor_scheme.a98bd00e.js new file mode 100644 index 000000000..7e200b4c7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_scheme.a98bd00e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5085],{9997:e=>{function a(e){e.languages.scheme={comment:/;.*/,string:{pattern:/"(?:[^"\\]|\\.)*"|'[^()#'\s]+/,greedy:!0},character:{pattern:/#\\(?:[ux][a-fA-F\d]+|[a-zA-Z]+|\S)/,alias:"string"},keyword:{pattern:/(\()(?:define(?:-syntax|-library|-values)?|(?:case-)?lambda|let(?:\*|rec)?(?:-values)?|else|if|cond|begin|delay(?:-force)?|parameterize|guard|set!|(?:quasi-)?quote|syntax-rules)(?=[()\s])/,lookbehind:!0},builtin:{pattern:/(\()(?:(?:cons|car|cdr|list|call-with-current-continuation|call\/cc|append|abs|apply|eval)\b|null\?|pair\?|boolean\?|eof-object\?|char\?|procedure\?|number\?|port\?|string\?|vector\?|symbol\?|bytevector\?)(?=[()\s])/,lookbehind:!0},number:{pattern:/([\s()])[-+]?(?:\d+\/\d+|\d*\.?\d+(?:\s*[-+]\s*\d*\.?\d+i)?)\b/,lookbehind:!0},boolean:/#[tf]/,operator:{pattern:/(\()(?:[-+*%\/]|[<>]=?|=>?)(?=\s|$)/,lookbehind:!0},function:{pattern:/(\()[^()'\s]+(?=[()\s)]|$)/,lookbehind:!0},punctuation:/[()']/}}e.exports=a,a.displayName="scheme",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_scss.5b8c9052.js b/assets/js/react-syntax-highlighter_languages_refractor_scss.5b8c9052.js new file mode 100644 index 000000000..c05c2b335 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_scss.5b8c9052.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7286],{4296:e=>{function s(e){e.languages.scss=e.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-]+(?:\([^()]+\)|[^(])*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()]|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}]+[:{][^}]+))/m,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[\w-]|\$[-\w]+|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),e.languages.insertBefore("scss","atrule",{keyword:[/@(?:if|else(?: if)?|for|each|while|import|extend|debug|warn|mixin|include|function|return|content)/i,{pattern:/( +)(?:from|through)(?= )/,lookbehind:!0}]}),e.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),e.languages.insertBefore("scss","function",{placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:true|false)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or|not)(?=\s)/,lookbehind:!0}}),e.languages.scss.atrule.inside.rest=e.languages.scss}e.exports=s,s.displayName="scss",s.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_scss.d0a7c9bf.js b/assets/js/react-syntax-highlighter_languages_refractor_scss.d0a7c9bf.js new file mode 100644 index 000000000..dbfc3e8ec --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_scss.d0a7c9bf.js @@ -0,0 +1,93 @@ +"use strict"; +exports.id = 7286; +exports.ids = [7286]; +exports.modules = { + +/***/ 24296: +/***/ ((module) => { + + + +module.exports = scss +scss.displayName = 'scss' +scss.aliases = [] +function scss(Prism) { + Prism.languages.scss = Prism.languages.extend('css', { + comment: { + pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/, + lookbehind: true + }, + atrule: { + pattern: /@[\w-]+(?:\([^()]+\)|[^(])*?(?=\s+[{;])/, + inside: { + rule: /@[\w-]+/ // See rest below + } + }, + // url, compassified + url: /(?:[-a-z]+-)?url(?=\()/i, + // CSS selector regex is not appropriate for Sass + // since there can be lot more things (var, @ directive, nesting..) + // a selector must start at the end of a property or after a brace (end of other rules or nesting) + // it can contain some characters that aren't used for defining rules or end of selector, & (parent selector), or interpolated variable + // the end of a selector is found when there is no rules in it ( {} or {\s}) or if there is a property (because an interpolated var + // can "pass" as a selector- e.g: proper#{$erty}) + // this one was hard to do, so please be careful if you edit this one :) + selector: { + // Initial look-ahead is used to prevent matching of blank selectors + pattern: /(?=\S)[^@;{}()]?(?:[^@;{}()]|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}]+[:{][^}]+))/m, + inside: { + parent: { + pattern: /&/, + alias: 'important' + }, + placeholder: /%[-\w]+/, + variable: /\$[-\w]+|#\{\$[-\w]+\}/ + } + }, + property: { + pattern: /(?:[\w-]|\$[-\w]+|#\{\$[-\w]+\})+(?=\s*:)/, + inside: { + variable: /\$[-\w]+|#\{\$[-\w]+\}/ + } + } + }) + Prism.languages.insertBefore('scss', 'atrule', { + keyword: [ + /@(?:if|else(?: if)?|for|each|while|import|extend|debug|warn|mixin|include|function|return|content)/i, + { + pattern: /( +)(?:from|through)(?= )/, + lookbehind: true + } + ] + }) + Prism.languages.insertBefore('scss', 'important', { + // var and interpolated vars + variable: /\$[-\w]+|#\{\$[-\w]+\}/ + }) + Prism.languages.insertBefore('scss', 'function', { + placeholder: { + pattern: /%[-\w]+/, + alias: 'selector' + }, + statement: { + pattern: /\B!(?:default|optional)\b/i, + alias: 'keyword' + }, + boolean: /\b(?:true|false)\b/, + null: { + pattern: /\bnull\b/, + alias: 'keyword' + }, + operator: { + pattern: /(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or|not)(?=\s)/, + lookbehind: true + } + }) + Prism.languages.scss['atrule'].inside.rest = Prism.languages.scss +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_smalltalk.0ab2859b.js b/assets/js/react-syntax-highlighter_languages_refractor_smalltalk.0ab2859b.js new file mode 100644 index 000000000..8737fabc4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_smalltalk.0ab2859b.js @@ -0,0 +1,52 @@ +"use strict"; +exports.id = 2822; +exports.ids = [2822]; +exports.modules = { + +/***/ 11037: +/***/ ((module) => { + + + +module.exports = smalltalk +smalltalk.displayName = 'smalltalk' +smalltalk.aliases = [] +function smalltalk(Prism) { + Prism.languages.smalltalk = { + comment: /"(?:""|[^"])*"/, + string: /'(?:''|[^'])*'/, + symbol: /#[\da-z]+|#(?:-|([+\/\\*~<>=@%|&?!])\1?)|#(?=\()/i, + 'block-arguments': { + pattern: /(\[\s*):[^\[|]*\|/, + lookbehind: true, + inside: { + variable: /:[\da-z]+/i, + punctuation: /\|/ + } + }, + 'temporary-variables': { + pattern: /\|[^|]+\|/, + inside: { + variable: /[\da-z]+/i, + punctuation: /\|/ + } + }, + keyword: /\b(?:nil|true|false|self|super|new)\b/, + character: { + pattern: /\$./, + alias: 'string' + }, + number: [ + /\d+r-?[\dA-Z]+(?:\.[\dA-Z]+)?(?:e-?\d+)?/, + /\b\d+(?:\.\d+)?(?:e-?\d+)?/ + ], + operator: /[<=]=?|:=|~[~=]|\/\/?|\\\\|>[>=]?|[!^+\-*&|,@]/, + punctuation: /[.;:?\[\](){}]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_smalltalk.9a058a40.js b/assets/js/react-syntax-highlighter_languages_refractor_smalltalk.9a058a40.js new file mode 100644 index 000000000..8750bc755 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_smalltalk.9a058a40.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2822],{1037:a=>{function e(a){a.languages.smalltalk={comment:/"(?:""|[^"])*"/,string:/'(?:''|[^'])*'/,symbol:/#[\da-z]+|#(?:-|([+\/\\*~<>=@%|&?!])\1?)|#(?=\()/i,"block-arguments":{pattern:/(\[\s*):[^\[|]*\|/,lookbehind:!0,inside:{variable:/:[\da-z]+/i,punctuation:/\|/}},"temporary-variables":{pattern:/\|[^|]+\|/,inside:{variable:/[\da-z]+/i,punctuation:/\|/}},keyword:/\b(?:nil|true|false|self|super|new)\b/,character:{pattern:/\$./,alias:"string"},number:[/\d+r-?[\dA-Z]+(?:\.[\dA-Z]+)?(?:e-?\d+)?/,/\b\d+(?:\.\d+)?(?:e-?\d+)?/],operator:/[<=]=?|:=|~[~=]|\/\/?|\\\\|>[>=]?|[!^+\-*&|,@]/,punctuation:/[.;:?\[\](){}]/}}a.exports=e,e.displayName="smalltalk",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_smarty.08222491.js b/assets/js/react-syntax-highlighter_languages_refractor_smarty.08222491.js new file mode 100644 index 000000000..9b7328859 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_smarty.08222491.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[849,3047],{3205:e=>{function t(e){!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,a,o,r){if(n.language===a){var i=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof r&&!r(e))return e;for(var o,s=i.length;-1!==n.code.indexOf(o=t(a,s));)++s;return i[s]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,a){if(n.language===a&&n.tokenStack){n.grammar=e.languages[a];var o=0,r=Object.keys(n.tokenStack);!function i(s){for(var l=0;l<s.length&&!(o>=r.length);l++){var u=s[l];if("string"==typeof u||u.content&&"string"==typeof u.content){var p=r[o],d=n.tokenStack[p],g="string"==typeof u?u:u.content,c=t(a,p),f=g.indexOf(c);if(f>-1){++o;var k=g.substring(0,f),b=new e.Token(a,e.tokenize(d,n.grammar),"language-"+a,d),m=g.substring(f+c.length),h=[];k&&h.push.apply(h,i([k])),h.push(b),m&&h.push.apply(h,i([m])),"string"==typeof u?s.splice.apply(s,[l,1].concat(h)):u.content=h}}else u.content&&i(u.content)}return s}(n.tokens)}}}})}(e)}e.exports=t,t.displayName="markupTemplating",t.aliases=[]},4020:(e,t,n)=>{var a=n(3205);function o(e){e.register(a),function(e){e.languages.smarty={comment:/\{\*[\s\S]*?\*\}/,delimiter:{pattern:/^\{|\}$/i,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][-+]?\d+)?/,variable:[/\$(?!\d)\w+/,/#(?!\d)\w+#/,{pattern:/(\.|->)(?!\d)\w+/,lookbehind:!0},{pattern:/(\[)(?!\d)\w+(?=\])/,lookbehind:!0}],function:[{pattern:/(\|\s*)@?(?!\d)\w+/,lookbehind:!0},/^\/?(?!\d)\w+/,/(?!\d)\w+(?=\()/],"attr-name":{pattern:/\w+\s*=\s*(?:(?!\d)\w+)?/,inside:{variable:{pattern:/(=\s*)(?!\d)\w+/,lookbehind:!0},operator:/=/}},punctuation:[/[\[\]().,:`]|->/],operator:[/[+\-*\/%]|==?=?|[!<>]=?|&&|\|\|?/,/\bis\s+(?:not\s+)?(?:div|even|odd)(?:\s+by)?\b/,/\b(?:eq|neq?|gt|lt|gt?e|lt?e|not|mod|or|and)\b/],keyword:/\b(?:false|off|on|no|true|yes)\b/},e.hooks.add("before-tokenize",(function(t){var n=!1;e.languages["markup-templating"].buildPlaceholders(t,"smarty",/\{\*[\s\S]*?\*\}|\{[\s\S]+?\}/g,(function(e){return"{/literal}"===e&&(n=!1),!n&&("{literal}"===e&&(n=!0),!0)}))})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"smarty")}))}(e)}e.exports=o,o.displayName="smarty",o.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_smarty.fc64e9fb.js b/assets/js/react-syntax-highlighter_languages_refractor_smarty.fc64e9fb.js new file mode 100644 index 000000000..62b5390df --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_smarty.fc64e9fb.js @@ -0,0 +1,230 @@ +"use strict"; +exports.id = 849; +exports.ids = [849,3047]; +exports.modules = { + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 64020: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = smarty +smarty.displayName = 'smarty' +smarty.aliases = [] +function smarty(Prism) { + Prism.register(refractorMarkupTemplating) + /* TODO +Add support for variables inside double quoted strings +Add support for {php} +*/ + ;(function(Prism) { + Prism.languages.smarty = { + comment: /\{\*[\s\S]*?\*\}/, + delimiter: { + pattern: /^\{|\}$/i, + alias: 'punctuation' + }, + string: /(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/, + number: /\b0x[\dA-Fa-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][-+]?\d+)?/, + variable: [ + /\$(?!\d)\w+/, + /#(?!\d)\w+#/, + { + pattern: /(\.|->)(?!\d)\w+/, + lookbehind: true + }, + { + pattern: /(\[)(?!\d)\w+(?=\])/, + lookbehind: true + } + ], + function: [ + { + pattern: /(\|\s*)@?(?!\d)\w+/, + lookbehind: true + }, + /^\/?(?!\d)\w+/, + /(?!\d)\w+(?=\()/ + ], + 'attr-name': { + // Value is made optional because it may have already been tokenized + pattern: /\w+\s*=\s*(?:(?!\d)\w+)?/, + inside: { + variable: { + pattern: /(=\s*)(?!\d)\w+/, + lookbehind: true + }, + operator: /=/ + } + }, + punctuation: [/[\[\]().,:`]|->/], + operator: [ + /[+\-*\/%]|==?=?|[!<>]=?|&&|\|\|?/, + /\bis\s+(?:not\s+)?(?:div|even|odd)(?:\s+by)?\b/, + /\b(?:eq|neq?|gt|lt|gt?e|lt?e|not|mod|or|and)\b/ + ], + keyword: /\b(?:false|off|on|no|true|yes)\b/ + } // Tokenize all inline Smarty expressions + Prism.hooks.add('before-tokenize', function(env) { + var smartyPattern = /\{\*[\s\S]*?\*\}|\{[\s\S]+?\}/g + var smartyLitteralStart = '{literal}' + var smartyLitteralEnd = '{/literal}' + var smartyLitteralMode = false + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'smarty', + smartyPattern, + function(match) { + // Smarty tags inside {literal} block are ignored + if (match === smartyLitteralEnd) { + smartyLitteralMode = false + } + if (!smartyLitteralMode) { + if (match === smartyLitteralStart) { + smartyLitteralMode = true + } + return true + } + return false + } + ) + }) // Re-insert the tokens after tokenizing + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders(env, 'smarty') + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_soy.2fe409b9.js b/assets/js/react-syntax-highlighter_languages_refractor_soy.2fe409b9.js new file mode 100644 index 000000000..6fa8be747 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_soy.2fe409b9.js @@ -0,0 +1,242 @@ +"use strict"; +exports.id = 1423; +exports.ids = [1423,3047]; +exports.modules = { + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 38181: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = soy +soy.displayName = 'soy' +soy.aliases = [] +function soy(Prism) { + Prism.register(refractorMarkupTemplating) + ;(function(Prism) { + var stringPattern = /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/ + var numberPattern = /\b\d+(?:\.\d+)?(?:[eE][+-]?\d+)?\b|\b0x[\dA-F]+\b/ + Prism.languages.soy = { + comment: [ + /\/\*[\s\S]*?\*\//, + { + pattern: /(\s)\/\/.*/, + lookbehind: true, + greedy: true + } + ], + 'command-arg': { + pattern: /({+\/?\s*(?:alias|call|delcall|delpackage|deltemplate|namespace|template)\s+)\.?[\w.]+/, + lookbehind: true, + alias: 'string', + inside: { + punctuation: /\./ + } + }, + parameter: { + pattern: /({+\/?\s*@?param\??\s+)\.?[\w.]+/, + lookbehind: true, + alias: 'variable' + }, + keyword: [ + { + pattern: /({+\/?[^\S\r\n]*)(?:\\[nrt]|alias|call|case|css|default|delcall|delpackage|deltemplate|else(?:if)?|fallbackmsg|for(?:each)?|if(?:empty)?|lb|let|literal|msg|namespace|nil|@?param\??|rb|sp|switch|template|xid)/, + lookbehind: true + }, + /\b(?:any|as|attributes|bool|css|float|in|int|js|html|list|map|null|number|string|uri)\b/ + ], + delimiter: { + pattern: /^{+\/?|\/?}+$/, + alias: 'punctuation' + }, + property: /\w+(?==)/, + variable: { + pattern: /\$[^\W\d]\w*(?:\??(?:\.\w+|\[[^\]]+]))*/, + inside: { + string: { + pattern: stringPattern, + greedy: true + }, + number: numberPattern, + punctuation: /[\[\].?]/ + } + }, + string: { + pattern: stringPattern, + greedy: true + }, + function: [ + /\w+(?=\()/, + { + pattern: /(\|[^\S\r\n]*)\w+/, + lookbehind: true + } + ], + boolean: /\b(?:true|false)\b/, + number: numberPattern, + operator: /\?:?|<=?|>=?|==?|!=|[+*/%-]|\b(?:and|not|or)\b/, + punctuation: /[{}()\[\]|.,:]/ + } // Tokenize all inline Soy expressions + Prism.hooks.add('before-tokenize', function(env) { + var soyPattern = /{{.+?}}|{.+?}|\s\/\/.*|\/\*[\s\S]*?\*\//g + var soyLitteralStart = '{literal}' + var soyLitteralEnd = '{/literal}' + var soyLitteralMode = false + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'soy', + soyPattern, + function(match) { + // Soy tags inside {literal} block are ignored + if (match === soyLitteralEnd) { + soyLitteralMode = false + } + if (!soyLitteralMode) { + if (match === soyLitteralStart) { + soyLitteralMode = true + } + return true + } + return false + } + ) + }) // Re-insert the tokens after tokenizing + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders(env, 'soy') + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_soy.a9f290c6.js b/assets/js/react-syntax-highlighter_languages_refractor_soy.a9f290c6.js new file mode 100644 index 000000000..f56d1ea44 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_soy.a9f290c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1423,3047],{3205:e=>{function a(e){!function(e){function a(e,a){return"___"+e.toUpperCase()+a+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,n,r,l){if(t.language===n){var i=t.tokenStack=[];t.code=t.code.replace(r,(function(e){if("function"==typeof l&&!l(e))return e;for(var r,o=i.length;-1!==t.code.indexOf(r=a(n,o));)++o;return i[o]=e,r})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,n){if(t.language===n&&t.tokenStack){t.grammar=e.languages[n];var r=0,l=Object.keys(t.tokenStack);!function i(o){for(var s=0;s<o.length&&!(r>=l.length);s++){var p=o[s];if("string"==typeof p||p.content&&"string"==typeof p.content){var u=l[r],c=t.tokenStack[u],g="string"==typeof p?p:p.content,d=a(n,u),f=g.indexOf(d);if(f>-1){++r;var m=g.substring(0,f),b=new e.Token(n,e.tokenize(c,t.grammar),"language-"+n,c),k=g.substring(f+d.length),h=[];m&&h.push.apply(h,i([m])),h.push(b),k&&h.push.apply(h,i([k])),"string"==typeof p?o.splice.apply(o,[s,1].concat(h)):p.content=h}}else p.content&&i(p.content)}return o}(t.tokens)}}}})}(e)}e.exports=a,a.displayName="markupTemplating",a.aliases=[]},8181:(e,a,t)=>{var n=t(3205);function r(e){e.register(n),function(e){var a=/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,t=/\b\d+(?:\.\d+)?(?:[eE][+-]?\d+)?\b|\b0x[\dA-F]+\b/;e.languages.soy={comment:[/\/\*[\s\S]*?\*\//,{pattern:/(\s)\/\/.*/,lookbehind:!0,greedy:!0}],"command-arg":{pattern:/({+\/?\s*(?:alias|call|delcall|delpackage|deltemplate|namespace|template)\s+)\.?[\w.]+/,lookbehind:!0,alias:"string",inside:{punctuation:/\./}},parameter:{pattern:/({+\/?\s*@?param\??\s+)\.?[\w.]+/,lookbehind:!0,alias:"variable"},keyword:[{pattern:/({+\/?[^\S\r\n]*)(?:\\[nrt]|alias|call|case|css|default|delcall|delpackage|deltemplate|else(?:if)?|fallbackmsg|for(?:each)?|if(?:empty)?|lb|let|literal|msg|namespace|nil|@?param\??|rb|sp|switch|template|xid)/,lookbehind:!0},/\b(?:any|as|attributes|bool|css|float|in|int|js|html|list|map|null|number|string|uri)\b/],delimiter:{pattern:/^{+\/?|\/?}+$/,alias:"punctuation"},property:/\w+(?==)/,variable:{pattern:/\$[^\W\d]\w*(?:\??(?:\.\w+|\[[^\]]+]))*/,inside:{string:{pattern:a,greedy:!0},number:t,punctuation:/[\[\].?]/}},string:{pattern:a,greedy:!0},function:[/\w+(?=\()/,{pattern:/(\|[^\S\r\n]*)\w+/,lookbehind:!0}],boolean:/\b(?:true|false)\b/,number:t,operator:/\?:?|<=?|>=?|==?|!=|[+*/%-]|\b(?:and|not|or)\b/,punctuation:/[{}()\[\]|.,:]/},e.hooks.add("before-tokenize",(function(a){var t=!1;e.languages["markup-templating"].buildPlaceholders(a,"soy",/{{.+?}}|{.+?}|\s\/\/.*|\/\*[\s\S]*?\*\//g,(function(e){return"{/literal}"===e&&(t=!1),!t&&("{literal}"===e&&(t=!0),!0)}))})),e.hooks.add("after-tokenize",(function(a){e.languages["markup-templating"].tokenizePlaceholders(a,"soy")}))}(e)}e.exports=r,r.displayName="soy",r.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_sql.9099a250.js b/assets/js/react-syntax-highlighter_languages_refractor_sql.9099a250.js new file mode 100644 index 000000000..8dc97b9c8 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_sql.9099a250.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7055],{1114:E=>{function T(E){E.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:TRUE|FALSE|NULL)\b/i,number:/\b0x[\da-f]+\b|\b\d+\.?\d*|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}E.exports=T,T.displayName="sql",T.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_sql.ae7be8dd.js b/assets/js/react-syntax-highlighter_languages_refractor_sql.ae7be8dd.js new file mode 100644 index 000000000..372c1c5ed --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_sql.ae7be8dd.js @@ -0,0 +1,46 @@ +"use strict"; +exports.id = 7055; +exports.ids = [7055]; +exports.modules = { + +/***/ 11114: +/***/ ((module) => { + + + +module.exports = sql +sql.displayName = 'sql' +sql.aliases = [] +function sql(Prism) { + Prism.languages.sql = { + comment: { + pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/, + lookbehind: true + }, + variable: [ + { + pattern: /@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/, + greedy: true + }, + /@[\w.$]+/ + ], + string: { + pattern: /(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/, + greedy: true, + lookbehind: true + }, + function: /\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i, + // Should we highlight user defined functions too? + keyword: /\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:_INSERT|COL)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURNS?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i, + boolean: /\b(?:TRUE|FALSE|NULL)\b/i, + number: /\b0x[\da-f]+\b|\b\d+\.?\d*|\B\.\d+\b/i, + operator: /[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|IN|LIKE|NOT|OR|IS|DIV|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i, + punctuation: /[;[\]()`,.]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_stylus.3d2e7195.js b/assets/js/react-syntax-highlighter_languages_refractor_stylus.3d2e7195.js new file mode 100644 index 000000000..5e3343415 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_stylus.3d2e7195.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1621],{9168:n=>{function t(n){!function(n){var t={url:/url\((["']?).*?\1\)/i,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+)(?:(?:if|else|for|return|unless)(?=\s+|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,number:/\b\d+(?:\.\d+)?%?/,boolean:/\b(?:true|false)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.+|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],punctuation:/[{}()\[\];:,]/};t.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^{|}$/,alias:"punctuation"},rest:t}},t.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:t}},n.languages.stylus={comment:{pattern:/(^|[^\\])(\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},"atrule-declaration":{pattern:/(^\s*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:t}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:(?:\{[^}]*\}|.+)|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:t}},statement:{pattern:/(^[ \t]*)(?:if|else|for|return|unless)[ \t]+.+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:t}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)[^{\r\n]*(?:;|[^{\r\n,](?=$)(?!(\r?\n|\r)(?:\{|\2[ \t]+)))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:t.interpolation}},rest:t}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t]+)))/m,lookbehind:!0,inside:{interpolation:t.interpolation,punctuation:/[{},]/}},func:t.func,string:t.string,interpolation:t.interpolation,punctuation:/[{}()\[\];:.]/}}(n)}n.exports=t,t.displayName="stylus",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_stylus.5666bfe9.js b/assets/js/react-syntax-highlighter_languages_refractor_stylus.5666bfe9.js new file mode 100644 index 000000000..fbb9d2fdf --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_stylus.5666bfe9.js @@ -0,0 +1,126 @@ +"use strict"; +exports.id = 1621; +exports.ids = [1621]; +exports.modules = { + +/***/ 49168: +/***/ ((module) => { + + + +module.exports = stylus +stylus.displayName = 'stylus' +stylus.aliases = [] +function stylus(Prism) { + ;(function(Prism) { + var inside = { + url: /url\((["']?).*?\1\)/i, + string: { + pattern: /("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/, + greedy: true + }, + interpolation: null, + // See below + func: null, + // See below + important: /\B!(?:important|optional)\b/i, + keyword: { + pattern: /(^|\s+)(?:(?:if|else|for|return|unless)(?=\s+|$)|@[\w-]+)/, + lookbehind: true + }, + hexcode: /#[\da-f]{3,6}/i, + number: /\b\d+(?:\.\d+)?%?/, + boolean: /\b(?:true|false)\b/, + operator: [ + // We want non-word chars around "-" because it is + // accepted in property names. + /~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.+|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/ + ], + punctuation: /[{}()\[\];:,]/ + } + inside['interpolation'] = { + pattern: /\{[^\r\n}:]+\}/, + alias: 'variable', + inside: { + delimiter: { + pattern: /^{|}$/, + alias: 'punctuation' + }, + rest: inside + } + } + inside['func'] = { + pattern: /[\w-]+\([^)]*\).*/, + inside: { + function: /^[^(]+/, + rest: inside + } + } + Prism.languages.stylus = { + comment: { + pattern: /(^|[^\\])(\/\*[\s\S]*?\*\/|\/\/.*)/, + lookbehind: true + }, + 'atrule-declaration': { + pattern: /(^\s*)@.+/m, + lookbehind: true, + inside: { + atrule: /^@[\w-]+/, + rest: inside + } + }, + 'variable-declaration': { + pattern: /(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:(?:\{[^}]*\}|.+)|$)/m, + lookbehind: true, + inside: { + variable: /^\S+/, + rest: inside + } + }, + statement: { + pattern: /(^[ \t]*)(?:if|else|for|return|unless)[ \t]+.+/m, + lookbehind: true, + inside: { + keyword: /^\S+/, + rest: inside + } + }, + // A property/value pair cannot end with a comma or a brace + // It cannot have indented content unless it ended with a semicolon + 'property-declaration': { + pattern: /((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)[^{\r\n]*(?:;|[^{\r\n,](?=$)(?!(\r?\n|\r)(?:\{|\2[ \t]+)))/m, + lookbehind: true, + inside: { + property: { + pattern: /^[^\s:]+/, + inside: { + interpolation: inside.interpolation + } + }, + rest: inside + } + }, + // A selector can contain parentheses only as part of a pseudo-element + // It can span multiple lines. + // It must end with a comma or an accolade or have indented content. + selector: { + pattern: /(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\))?|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t]+)))/m, + lookbehind: true, + inside: { + interpolation: inside.interpolation, + punctuation: /[{},]/ + } + }, + func: inside.func, + string: inside.string, + interpolation: inside.interpolation, + punctuation: /[{}()\[\];:.]/ + } + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_swift.11e6a851.js b/assets/js/react-syntax-highlighter_languages_refractor_swift.11e6a851.js new file mode 100644 index 000000000..ef80f8a4f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_swift.11e6a851.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3327],{3651:e=>{function t(e){e.languages.swift=e.languages.extend("clike",{string:{pattern:/("|')(\\(?:\((?:[^()]|\([^)]+\))+\)|\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0,inside:{interpolation:{pattern:/\\\((?:[^()]|\([^)]+\))+\)/,inside:{delimiter:{pattern:/^\\\(|\)$/,alias:"variable"}}}}},keyword:/\b(?:as|associativity|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic(?:Type)?|else|enum|extension|fallthrough|final|for|func|get|guard|if|import|in|infix|init|inout|internal|is|lazy|left|let|mutating|new|none|nonmutating|operator|optional|override|postfix|precedence|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|Self|set|static|struct|subscript|super|switch|throws?|try|Type|typealias|unowned|unsafe|var|weak|where|while|willSet|__(?:COLUMN__|FILE__|FUNCTION__|LINE__))\b/,number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,constant:/\b(?:nil|[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,atrule:/@\b(?:IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|noreturn|NS(?:Copying|Managed)|objc|UIApplicationMain|auto_closure)\b/,builtin:/\b(?:[A-Z]\S+|abs|advance|alignof(?:Value)?|assert|contains|count(?:Elements)?|debugPrint(?:ln)?|distance|drop(?:First|Last)|dump|enumerate|equal|filter|find|first|getVaList|indices|isEmpty|join|last|lexicographicalCompare|map|max(?:Element)?|min(?:Element)?|numericCast|overlaps|partition|print(?:ln)?|reduce|reflect|reverse|sizeof(?:Value)?|sort(?:ed)?|split|startsWith|stride(?:of(?:Value)?)?|suffix|swap|toDebugString|toString|transcode|underestimateCount|unsafeBitCast|with(?:ExtendedLifetime|Unsafe(?:MutablePointers?|Pointers?)|VaList))\b/}),e.languages.swift.string.inside.interpolation.inside.rest=e.languages.swift}e.exports=t,t.displayName="swift",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_swift.609cfc72.js b/assets/js/react-syntax-highlighter_languages_refractor_swift.609cfc72.js new file mode 100644 index 000000000..e8c038314 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_swift.609cfc72.js @@ -0,0 +1,46 @@ +"use strict"; +exports.id = 3327; +exports.ids = [3327]; +exports.modules = { + +/***/ 23651: +/***/ ((module) => { + + + +module.exports = swift +swift.displayName = 'swift' +swift.aliases = [] +function swift(Prism) { + // issues: nested multiline comments + Prism.languages.swift = Prism.languages.extend('clike', { + string: { + pattern: /("|')(\\(?:\((?:[^()]|\([^)]+\))+\)|\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/, + greedy: true, + inside: { + interpolation: { + pattern: /\\\((?:[^()]|\([^)]+\))+\)/, + inside: { + delimiter: { + pattern: /^\\\(|\)$/, + alias: 'variable' + } // See rest below + } + } + } + }, + keyword: /\b(?:as|associativity|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic(?:Type)?|else|enum|extension|fallthrough|final|for|func|get|guard|if|import|in|infix|init|inout|internal|is|lazy|left|let|mutating|new|none|nonmutating|operator|optional|override|postfix|precedence|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|Self|set|static|struct|subscript|super|switch|throws?|try|Type|typealias|unowned|unsafe|var|weak|where|while|willSet|__(?:COLUMN__|FILE__|FUNCTION__|LINE__))\b/, + number: /\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i, + constant: /\b(?:nil|[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/, + atrule: /@\b(?:IB(?:Outlet|Designable|Action|Inspectable)|class_protocol|exported|noreturn|NS(?:Copying|Managed)|objc|UIApplicationMain|auto_closure)\b/, + builtin: /\b(?:[A-Z]\S+|abs|advance|alignof(?:Value)?|assert|contains|count(?:Elements)?|debugPrint(?:ln)?|distance|drop(?:First|Last)|dump|enumerate|equal|filter|find|first|getVaList|indices|isEmpty|join|last|lexicographicalCompare|map|max(?:Element)?|min(?:Element)?|numericCast|overlaps|partition|print(?:ln)?|reduce|reflect|reverse|sizeof(?:Value)?|sort(?:ed)?|split|startsWith|stride(?:of(?:Value)?)?|suffix|swap|toDebugString|toString|transcode|underestimateCount|unsafeBitCast|with(?:ExtendedLifetime|Unsafe(?:MutablePointers?|Pointers?)|VaList))\b/ + }) + Prism.languages.swift['string'].inside['interpolation'].inside.rest = + Prism.languages.swift +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tap.5d931a5c.js b/assets/js/react-syntax-highlighter_languages_refractor_tap.5d931a5c.js new file mode 100644 index 000000000..bb864d99f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tap.5d931a5c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6975],{7290:a=>{function e(a){a.languages.tap={fail:/not ok[^#{\n\r]*/,pass:/ok[^#{\n\r]*/,pragma:/pragma [+-][a-z]+/,bailout:/bail out!.*/i,version:/TAP version \d+/i,plan:/\d+\.\.\d+(?: +#.*)?/,subtest:{pattern:/# Subtest(?:: .*)?/,greedy:!0},punctuation:/[{}]/,directive:/#.*/,yamlish:{pattern:/(^[^\S\r\n]*)---(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?[^\S\r\n]*\.\.\.$/m,lookbehind:!0,inside:a.languages.yaml,alias:"language-yaml"}}}a.exports=e,e.displayName="tap",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tap.a08ff2be.js b/assets/js/react-syntax-highlighter_languages_refractor_tap.a08ff2be.js new file mode 100644 index 000000000..c90aa42d7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tap.a08ff2be.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 6975; +exports.ids = [6975]; +exports.modules = { + +/***/ 17290: +/***/ ((module) => { + + + +module.exports = tap +tap.displayName = 'tap' +tap.aliases = [] +function tap(Prism) { + Prism.languages.tap = { + fail: /not ok[^#{\n\r]*/, + pass: /ok[^#{\n\r]*/, + pragma: /pragma [+-][a-z]+/, + bailout: /bail out!.*/i, + version: /TAP version \d+/i, + plan: /\d+\.\.\d+(?: +#.*)?/, + subtest: { + pattern: /# Subtest(?:: .*)?/, + greedy: true + }, + punctuation: /[{}]/, + directive: /#.*/, + yamlish: { + pattern: /(^[^\S\r\n]*)---(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?[^\S\r\n]*\.\.\.$/m, + lookbehind: true, + inside: Prism.languages.yaml, + alias: 'language-yaml' + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tcl.05f06cb2.js b/assets/js/react-syntax-highlighter_languages_refractor_tcl.05f06cb2.js new file mode 100644 index 000000000..6cda483a5 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tcl.05f06cb2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5165],{7989:e=>{function t(e){e.languages.tcl={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0},string:{pattern:/"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"/,greedy:!0},variable:[{pattern:/(\$)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/,lookbehind:!0},{pattern:/(\$){[^}]+}/,lookbehind:!0},{pattern:/(^\s*set[ \t]+)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/m,lookbehind:!0}],function:{pattern:/(^\s*proc[ \t]+)[^\s]+/m,lookbehind:!0},builtin:[{pattern:/(^\s*)(?:proc|return|class|error|eval|exit|for|foreach|if|switch|while|break|continue)\b/m,lookbehind:!0},/\b(?:elseif|else)\b/],scope:{pattern:/(^\s*)(?:global|upvar|variable)\b/m,lookbehind:!0,alias:"constant"},keyword:{pattern:/(^\s*|\[)(?:after|append|apply|array|auto_(?:execok|import|load|mkindex|qualify|reset)|automkindex_old|bgerror|binary|catch|cd|chan|clock|close|concat|dde|dict|encoding|eof|exec|expr|fblocked|fconfigure|fcopy|file(?:event|name)?|flush|gets|glob|history|http|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|math(?:func|op)|memory|msgcat|namespace|open|package|parray|pid|pkg_mkIndex|platform|puts|pwd|re_syntax|read|refchan|regexp|registry|regsub|rename|Safe_Base|scan|seek|set|socket|source|split|string|subst|Tcl|tcl(?:_endOfWord|_findLibrary|startOf(?:Next|Previous)Word|wordBreak(?:After|Before)|test|vars)|tell|time|tm|trace|unknown|unload|unset|update|uplevel|vwait)\b/m,lookbehind:!0},operator:/!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|ne|in|ni)\b/,punctuation:/[{}()\[\]]/}}e.exports=t,t.displayName="tcl",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tcl.45670d52.js b/assets/js/react-syntax-highlighter_languages_refractor_tcl.45670d52.js new file mode 100644 index 000000000..098f4814f --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tcl.45670d52.js @@ -0,0 +1,67 @@ +"use strict"; +exports.id = 5165; +exports.ids = [5165]; +exports.modules = { + +/***/ 67989: +/***/ ((module) => { + + + +module.exports = tcl +tcl.displayName = 'tcl' +tcl.aliases = [] +function tcl(Prism) { + Prism.languages.tcl = { + comment: { + pattern: /(^|[^\\])#.*/, + lookbehind: true + }, + string: { + pattern: /"(?:[^"\\\r\n]|\\(?:\r\n|[\s\S]))*"/, + greedy: true + }, + variable: [ + { + pattern: /(\$)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/, + lookbehind: true + }, + { + pattern: /(\$){[^}]+}/, + lookbehind: true + }, + { + pattern: /(^\s*set[ \t]+)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/m, + lookbehind: true + } + ], + function: { + pattern: /(^\s*proc[ \t]+)[^\s]+/m, + lookbehind: true + }, + builtin: [ + { + pattern: /(^\s*)(?:proc|return|class|error|eval|exit|for|foreach|if|switch|while|break|continue)\b/m, + lookbehind: true + }, + /\b(?:elseif|else)\b/ + ], + scope: { + pattern: /(^\s*)(?:global|upvar|variable)\b/m, + lookbehind: true, + alias: 'constant' + }, + keyword: { + pattern: /(^\s*|\[)(?:after|append|apply|array|auto_(?:execok|import|load|mkindex|qualify|reset)|automkindex_old|bgerror|binary|catch|cd|chan|clock|close|concat|dde|dict|encoding|eof|exec|expr|fblocked|fconfigure|fcopy|file(?:event|name)?|flush|gets|glob|history|http|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|math(?:func|op)|memory|msgcat|namespace|open|package|parray|pid|pkg_mkIndex|platform|puts|pwd|re_syntax|read|refchan|regexp|registry|regsub|rename|Safe_Base|scan|seek|set|socket|source|split|string|subst|Tcl|tcl(?:_endOfWord|_findLibrary|startOf(?:Next|Previous)Word|wordBreak(?:After|Before)|test|vars)|tell|time|tm|trace|unknown|unload|unset|update|uplevel|vwait)\b/m, + lookbehind: true + }, + operator: /!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|ne|in|ni)\b/, + punctuation: /[{}()\[\]]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_textile.74024259.js b/assets/js/react-syntax-highlighter_languages_refractor_textile.74024259.js new file mode 100644 index 000000000..92040eedc --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_textile.74024259.js @@ -0,0 +1,284 @@ +"use strict"; +exports.id = 7097; +exports.ids = [7097]; +exports.modules = { + +/***/ 31065: +/***/ ((module) => { + + + +module.exports = textile +textile.displayName = 'textile' +textile.aliases = [] +function textile(Prism) { + ;(function(Prism) { + // We don't allow for pipes inside parentheses + // to not break table pattern |(. foo |). bar | + var modifierRegex = /(?:\([^|)]+\)|\[[^\]]+\]|\{[^}]+\})+/.source + var modifierTokens = { + css: { + pattern: /\{[^}]+\}/, + inside: { + rest: Prism.languages.css + } + }, + 'class-id': { + pattern: /(\()[^)]+(?=\))/, + lookbehind: true, + alias: 'attr-value' + }, + lang: { + pattern: /(\[)[^\]]+(?=\])/, + lookbehind: true, + alias: 'attr-value' + }, + // Anything else is punctuation (the first pattern is for row/col spans inside tables) + punctuation: /[\\\/]\d+|\S/ + } + var textile = (Prism.languages.textile = Prism.languages.extend('markup', { + phrase: { + pattern: /(^|\r|\n)\S[\s\S]*?(?=$|\r?\n\r?\n|\r\r)/, + lookbehind: true, + inside: { + // h1. Header 1 + 'block-tag': { + pattern: RegExp('^[a-z]\\w*(?:' + modifierRegex + '|[<>=()])*\\.'), + inside: { + modifier: { + pattern: RegExp( + '(^[a-z]\\w*)(?:' + modifierRegex + '|[<>=()])+(?=\\.)' + ), + lookbehind: true, + inside: modifierTokens + }, + tag: /^[a-z]\w*/, + punctuation: /\.$/ + } + }, + // # List item + // * List item + list: { + pattern: RegExp('^[*#]+(?:' + modifierRegex + ')?\\s+.+', 'm'), + inside: { + modifier: { + pattern: RegExp('(^[*#]+)' + modifierRegex), + lookbehind: true, + inside: modifierTokens + }, + punctuation: /^[*#]+/ + } + }, + // | cell | cell | cell | + table: { + // Modifiers can be applied to the row: {color:red}.|1|2|3| + // or the cell: |{color:red}.1|2|3| + pattern: RegExp( + '^(?:(?:' + + modifierRegex + + '|[<>=()^~])+\\.\\s*)?(?:\\|(?:(?:' + + modifierRegex + + '|[<>=()^~_]|[\\\\/]\\d+)+\\.)?[^|]*)+\\|', + 'm' + ), + inside: { + modifier: { + // Modifiers for rows after the first one are + // preceded by a pipe and a line feed + pattern: RegExp( + '(^|\\|(?:\\r?\\n|\\r)?)(?:' + + modifierRegex + + '|[<>=()^~_]|[\\\\/]\\d+)+(?=\\.)' + ), + lookbehind: true, + inside: modifierTokens + }, + punctuation: /\||^\./ + } + }, + inline: { + pattern: RegExp( + '(\\*\\*|__|\\?\\?|[*_%@+\\-^~])(?:' + modifierRegex + ')?.+?\\1' + ), + inside: { + // Note: superscripts and subscripts are not handled specifically + // *bold*, **bold** + bold: { + pattern: RegExp( + '(^(\\*\\*?)(?:' + modifierRegex + ')?).+?(?=\\2)' + ), + lookbehind: true + }, + // _italic_, __italic__ + italic: { + pattern: RegExp('(^(__?)(?:' + modifierRegex + ')?).+?(?=\\2)'), + lookbehind: true + }, + // ??cite?? + cite: { + pattern: RegExp( + '(^\\?\\?(?:' + modifierRegex + ')?).+?(?=\\?\\?)' + ), + lookbehind: true, + alias: 'string' + }, + // @code@ + code: { + pattern: RegExp('(^@(?:' + modifierRegex + ')?).+?(?=@)'), + lookbehind: true, + alias: 'keyword' + }, + // +inserted+ + inserted: { + pattern: RegExp('(^\\+(?:' + modifierRegex + ')?).+?(?=\\+)'), + lookbehind: true + }, + // -deleted- + deleted: { + pattern: RegExp('(^-(?:' + modifierRegex + ')?).+?(?=-)'), + lookbehind: true + }, + // %span% + span: { + pattern: RegExp('(^%(?:' + modifierRegex + ')?).+?(?=%)'), + lookbehind: true + }, + modifier: { + pattern: RegExp( + '(^\\*\\*|__|\\?\\?|[*_%@+\\-^~])' + modifierRegex + ), + lookbehind: true, + inside: modifierTokens + }, + punctuation: /[*_%?@+\-^~]+/ + } + }, + // [alias]http://example.com + 'link-ref': { + pattern: /^\[[^\]]+\]\S+$/m, + inside: { + string: { + pattern: /(\[)[^\]]+(?=\])/, + lookbehind: true + }, + url: { + pattern: /(\])\S+$/, + lookbehind: true + }, + punctuation: /[\[\]]/ + } + }, + // "text":http://example.com + // "text":link-ref + link: { + pattern: RegExp( + '"(?:' + modifierRegex + ')?[^"]+":.+?(?=[^\\w/]?(?:\\s|$))' + ), + inside: { + text: { + pattern: RegExp('(^"(?:' + modifierRegex + ')?)[^"]+(?=")'), + lookbehind: true + }, + modifier: { + pattern: RegExp('(^")' + modifierRegex), + lookbehind: true, + inside: modifierTokens + }, + url: { + pattern: /(:).+/, + lookbehind: true + }, + punctuation: /[":]/ + } + }, + // !image.jpg! + // !image.jpg(Title)!:http://example.com + image: { + pattern: RegExp( + '!(?:' + + modifierRegex + + '|[<>=()])*[^!\\s()]+(?:\\([^)]+\\))?!(?::.+?(?=[^\\w/]?(?:\\s|$)))?' + ), + inside: { + source: { + pattern: RegExp( + '(^!(?:' + + modifierRegex + + '|[<>=()])*)[^!\\s()]+(?:\\([^)]+\\))?(?=!)' + ), + lookbehind: true, + alias: 'url' + }, + modifier: { + pattern: RegExp('(^!)(?:' + modifierRegex + '|[<>=()])+'), + lookbehind: true, + inside: modifierTokens + }, + url: { + pattern: /(:).+/, + lookbehind: true + }, + punctuation: /[!:]/ + } + }, + // Footnote[1] + footnote: { + pattern: /\b\[\d+\]/, + alias: 'comment', + inside: { + punctuation: /\[|\]/ + } + }, + // CSS(Cascading Style Sheet) + acronym: { + pattern: /\b[A-Z\d]+\([^)]+\)/, + inside: { + comment: { + pattern: /(\()[^)]+(?=\))/, + lookbehind: true + }, + punctuation: /[()]/ + } + }, + // Prism(C) + mark: { + pattern: /\b\((?:TM|R|C)\)/, + alias: 'comment', + inside: { + punctuation: /[()]/ + } + } + } + } + })) + var phraseInside = textile['phrase'].inside + var nestedPatterns = { + inline: phraseInside['inline'], + link: phraseInside['link'], + image: phraseInside['image'], + footnote: phraseInside['footnote'], + acronym: phraseInside['acronym'], + mark: phraseInside['mark'] + } // Only allow alpha-numeric HTML tags, not XML tags + textile.tag.pattern = /<\/?(?!\d)[a-z0-9]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i // Allow some nesting + var phraseInlineInside = phraseInside['inline'].inside + phraseInlineInside['bold'].inside = nestedPatterns + phraseInlineInside['italic'].inside = nestedPatterns + phraseInlineInside['inserted'].inside = nestedPatterns + phraseInlineInside['deleted'].inside = nestedPatterns + phraseInlineInside['span'].inside = nestedPatterns // Allow some styles inside table cells + var phraseTableInside = phraseInside['table'].inside + phraseTableInside['inline'] = nestedPatterns['inline'] + phraseTableInside['link'] = nestedPatterns['link'] + phraseTableInside['image'] = nestedPatterns['image'] + phraseTableInside['footnote'] = nestedPatterns['footnote'] + phraseTableInside['acronym'] = nestedPatterns['acronym'] + phraseTableInside['mark'] = nestedPatterns['mark'] + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_textile.f64df953.js b/assets/js/react-syntax-highlighter_languages_refractor_textile.f64df953.js new file mode 100644 index 000000000..feb4b159c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_textile.f64df953.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[7097],{1065:e=>{function n(e){!function(e){var n=/(?:\([^|)]+\)|\[[^\]]+\]|\{[^}]+\})+/.source,i={css:{pattern:/\{[^}]+\}/,inside:{rest:e.languages.css}},"class-id":{pattern:/(\()[^)]+(?=\))/,lookbehind:!0,alias:"attr-value"},lang:{pattern:/(\[)[^\]]+(?=\])/,lookbehind:!0,alias:"attr-value"},punctuation:/[\\\/]\d+|\S/},t=e.languages.textile=e.languages.extend("markup",{phrase:{pattern:/(^|\r|\n)\S[\s\S]*?(?=$|\r?\n\r?\n|\r\r)/,lookbehind:!0,inside:{"block-tag":{pattern:RegExp("^[a-z]\\w*(?:"+n+"|[<>=()])*\\."),inside:{modifier:{pattern:RegExp("(^[a-z]\\w*)(?:"+n+"|[<>=()])+(?=\\.)"),lookbehind:!0,inside:i},tag:/^[a-z]\w*/,punctuation:/\.$/}},list:{pattern:RegExp("^[*#]+(?:"+n+")?\\s+.+","m"),inside:{modifier:{pattern:RegExp("(^[*#]+)"+n),lookbehind:!0,inside:i},punctuation:/^[*#]+/}},table:{pattern:RegExp("^(?:(?:"+n+"|[<>=()^~])+\\.\\s*)?(?:\\|(?:(?:"+n+"|[<>=()^~_]|[\\\\/]\\d+)+\\.)?[^|]*)+\\|","m"),inside:{modifier:{pattern:RegExp("(^|\\|(?:\\r?\\n|\\r)?)(?:"+n+"|[<>=()^~_]|[\\\\/]\\d+)+(?=\\.)"),lookbehind:!0,inside:i},punctuation:/\||^\./}},inline:{pattern:RegExp("(\\*\\*|__|\\?\\?|[*_%@+\\-^~])(?:"+n+")?.+?\\1"),inside:{bold:{pattern:RegExp("(^(\\*\\*?)(?:"+n+")?).+?(?=\\2)"),lookbehind:!0},italic:{pattern:RegExp("(^(__?)(?:"+n+")?).+?(?=\\2)"),lookbehind:!0},cite:{pattern:RegExp("(^\\?\\?(?:"+n+")?).+?(?=\\?\\?)"),lookbehind:!0,alias:"string"},code:{pattern:RegExp("(^@(?:"+n+")?).+?(?=@)"),lookbehind:!0,alias:"keyword"},inserted:{pattern:RegExp("(^\\+(?:"+n+")?).+?(?=\\+)"),lookbehind:!0},deleted:{pattern:RegExp("(^-(?:"+n+")?).+?(?=-)"),lookbehind:!0},span:{pattern:RegExp("(^%(?:"+n+")?).+?(?=%)"),lookbehind:!0},modifier:{pattern:RegExp("(^\\*\\*|__|\\?\\?|[*_%@+\\-^~])"+n),lookbehind:!0,inside:i},punctuation:/[*_%?@+\-^~]+/}},"link-ref":{pattern:/^\[[^\]]+\]\S+$/m,inside:{string:{pattern:/(\[)[^\]]+(?=\])/,lookbehind:!0},url:{pattern:/(\])\S+$/,lookbehind:!0},punctuation:/[\[\]]/}},link:{pattern:RegExp('"(?:'+n+')?[^"]+":.+?(?=[^\\w/]?(?:\\s|$))'),inside:{text:{pattern:RegExp('(^"(?:'+n+')?)[^"]+(?=")'),lookbehind:!0},modifier:{pattern:RegExp('(^")'+n),lookbehind:!0,inside:i},url:{pattern:/(:).+/,lookbehind:!0},punctuation:/[":]/}},image:{pattern:RegExp("!(?:"+n+"|[<>=()])*[^!\\s()]+(?:\\([^)]+\\))?!(?::.+?(?=[^\\w/]?(?:\\s|$)))?"),inside:{source:{pattern:RegExp("(^!(?:"+n+"|[<>=()])*)[^!\\s()]+(?:\\([^)]+\\))?(?=!)"),lookbehind:!0,alias:"url"},modifier:{pattern:RegExp("(^!)(?:"+n+"|[<>=()])+"),lookbehind:!0,inside:i},url:{pattern:/(:).+/,lookbehind:!0},punctuation:/[!:]/}},footnote:{pattern:/\b\[\d+\]/,alias:"comment",inside:{punctuation:/\[|\]/}},acronym:{pattern:/\b[A-Z\d]+\([^)]+\)/,inside:{comment:{pattern:/(\()[^)]+(?=\))/,lookbehind:!0},punctuation:/[()]/}},mark:{pattern:/\b\((?:TM|R|C)\)/,alias:"comment",inside:{punctuation:/[()]/}}}}}),a=t.phrase.inside,o={inline:a.inline,link:a.link,image:a.image,footnote:a.footnote,acronym:a.acronym,mark:a.mark};t.tag.pattern=/<\/?(?!\d)[a-z0-9]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i;var r=a.inline.inside;r.bold.inside=o,r.italic.inside=o,r.inserted.inside=o,r.deleted.inside=o,r.span.inside=o;var p=a.table.inside;p.inline=o.inline,p.link=o.link,p.image=o.image,p.footnote=o.footnote,p.acronym=o.acronym,p.mark=o.mark}(e)}e.exports=n,n.displayName="textile",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tsx.03fd1508.js b/assets/js/react-syntax-highlighter_languages_refractor_tsx.03fd1508.js new file mode 100644 index 000000000..b9c26985d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tsx.03fd1508.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2509,4657,9461],{6412:e=>{function t(e){!function(e){var t=e.util.clone(e.languages.javascript);e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=/<\/?(?:[\w.:-]+\s*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i,e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/i,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">]+)/i,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.insertBefore("inside","attr-name",{spread:{pattern:/\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/,inside:{punctuation:/\.{3}|[{}.]/,"attr-value":/\w+/}}},e.languages.jsx.tag),e.languages.insertBefore("inside","attr-value",{script:{pattern:/=(\{(?:\{(?:\{[^}]*\}|[^}])*\}|[^}])+\})/i,inside:{"script-punctuation":{pattern:/^=(?={)/,alias:"punctuation"},rest:e.languages.jsx},alias:"language-javascript"}},e.languages.jsx.tag);var n=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(n).join(""):""},a=function(t){for(var s=[],i=0;i<t.length;i++){var o=t[i],g=!1;if("string"!=typeof o&&("tag"===o.type&&o.content[0]&&"tag"===o.content[0].type?"</"===o.content[0].content[0].content?s.length>0&&s[s.length-1].tagName===n(o.content[0].content[1])&&s.pop():"/>"===o.content[o.content.length-1].content||s.push({tagName:n(o.content[0].content[1]),openedBraces:0}):s.length>0&&"punctuation"===o.type&&"{"===o.content?s[s.length-1].openedBraces++:s.length>0&&s[s.length-1].openedBraces>0&&"punctuation"===o.type&&"}"===o.content?s[s.length-1].openedBraces--:g=!0),(g||"string"==typeof o)&&s.length>0&&0===s[s.length-1].openedBraces){var r=n(o);i<t.length-1&&("string"==typeof t[i+1]||"plain-text"===t[i+1].type)&&(r+=n(t[i+1]),t.splice(i+1,1)),i>0&&("string"==typeof t[i-1]||"plain-text"===t[i-1].type)&&(r=n(t[i-1])+r,t.splice(i-1,1),i--),t[i]=new e.Token("plain-text",r,null,r)}o.content&&"string"!=typeof o.content&&a(o.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||a(e.tokens)}))}(e)}e.exports=t,t.displayName="jsx",t.aliases=[]},7041:(e,t,n)=>{var a=n(6412),s=n(4979);function i(e){e.register(a),e.register(s);var t=e.util.clone(e.languages.typescript);e.languages.tsx=e.languages.extend("jsx",t)}e.exports=i,i.displayName="tsx",i.aliases=[]},4979:e=>{function t(e){e.languages.typescript=e.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/}),e.languages.ts=e.languages.typescript}e.exports=t,t.displayName="typescript",t.aliases=["ts"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tsx.ad6d7a77.js b/assets/js/react-syntax-highlighter_languages_refractor_tsx.ad6d7a77.js new file mode 100644 index 000000000..89a233e47 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tsx.ad6d7a77.js @@ -0,0 +1,213 @@ +"use strict"; +exports.id = 2509; +exports.ids = [2509,4657,9461]; +exports.modules = { + +/***/ 96412: +/***/ ((module) => { + + + +module.exports = jsx +jsx.displayName = 'jsx' +jsx.aliases = [] +function jsx(Prism) { + ;(function(Prism) { + var javascript = Prism.util.clone(Prism.languages.javascript) + Prism.languages.jsx = Prism.languages.extend('markup', javascript) + Prism.languages.jsx.tag.pattern = /<\/?(?:[\w.:-]+\s*(?:\s+(?:[\w.:-]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s{'">=]+|\{(?:\{(?:\{[^}]*\}|[^{}])*\}|[^{}])+\}))?|\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}))*\s*\/?)?>/i + Prism.languages.jsx.tag.inside['tag'].pattern = /^<\/?[^\s>\/]*/i + Prism.languages.jsx.tag.inside[ + 'attr-value' + ].pattern = /=(?!\{)(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">]+)/i + Prism.languages.jsx.tag.inside['tag'].inside[ + 'class-name' + ] = /^[A-Z]\w*(?:\.[A-Z]\w*)*$/ + Prism.languages.insertBefore( + 'inside', + 'attr-name', + { + spread: { + pattern: /\{\.{3}[a-z_$][\w$]*(?:\.[a-z_$][\w$]*)*\}/, + inside: { + punctuation: /\.{3}|[{}.]/, + 'attr-value': /\w+/ + } + } + }, + Prism.languages.jsx.tag + ) + Prism.languages.insertBefore( + 'inside', + 'attr-value', + { + script: { + // Allow for two levels of nesting + pattern: /=(\{(?:\{(?:\{[^}]*\}|[^}])*\}|[^}])+\})/i, + inside: { + 'script-punctuation': { + pattern: /^=(?={)/, + alias: 'punctuation' + }, + rest: Prism.languages.jsx + }, + alias: 'language-javascript' + } + }, + Prism.languages.jsx.tag + ) // The following will handle plain text inside tags + var stringifyToken = function(token) { + if (!token) { + return '' + } + if (typeof token === 'string') { + return token + } + if (typeof token.content === 'string') { + return token.content + } + return token.content.map(stringifyToken).join('') + } + var walkTokens = function(tokens) { + var openedTags = [] + for (var i = 0; i < tokens.length; i++) { + var token = tokens[i] + var notTagNorBrace = false + if (typeof token !== 'string') { + if ( + token.type === 'tag' && + token.content[0] && + token.content[0].type === 'tag' + ) { + // We found a tag, now find its kind + if (token.content[0].content[0].content === '</') { + // Closing tag + if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].tagName === + stringifyToken(token.content[0].content[1]) + ) { + // Pop matching opening tag + openedTags.pop() + } + } else { + if (token.content[token.content.length - 1].content === '/>') { + // Autoclosed tag, ignore + } else { + // Opening tag + openedTags.push({ + tagName: stringifyToken(token.content[0].content[1]), + openedBraces: 0 + }) + } + } + } else if ( + openedTags.length > 0 && + token.type === 'punctuation' && + token.content === '{' + ) { + // Here we might have entered a JSX context inside a tag + openedTags[openedTags.length - 1].openedBraces++ + } else if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].openedBraces > 0 && + token.type === 'punctuation' && + token.content === '}' + ) { + // Here we might have left a JSX context inside a tag + openedTags[openedTags.length - 1].openedBraces-- + } else { + notTagNorBrace = true + } + } + if (notTagNorBrace || typeof token === 'string') { + if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].openedBraces === 0 + ) { + // Here we are inside a tag, and not inside a JSX context. + // That's plain text: drop any tokens matched. + var plainText = stringifyToken(token) // And merge text with adjacent text + if ( + i < tokens.length - 1 && + (typeof tokens[i + 1] === 'string' || + tokens[i + 1].type === 'plain-text') + ) { + plainText += stringifyToken(tokens[i + 1]) + tokens.splice(i + 1, 1) + } + if ( + i > 0 && + (typeof tokens[i - 1] === 'string' || + tokens[i - 1].type === 'plain-text') + ) { + plainText = stringifyToken(tokens[i - 1]) + plainText + tokens.splice(i - 1, 1) + i-- + } + tokens[i] = new Prism.Token( + 'plain-text', + plainText, + null, + plainText + ) + } + } + if (token.content && typeof token.content !== 'string') { + walkTokens(token.content) + } + } + } + Prism.hooks.add('after-tokenize', function(env) { + if (env.language !== 'jsx' && env.language !== 'tsx') { + return + } + walkTokens(env.tokens) + }) + })(Prism) +} + + +/***/ }), + +/***/ 87041: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorJsx = __webpack_require__(96412) +var refractorTypescript = __webpack_require__(4979) +module.exports = tsx +tsx.displayName = 'tsx' +tsx.aliases = [] +function tsx(Prism) { + Prism.register(refractorJsx) + Prism.register(refractorTypescript) + var typescript = Prism.util.clone(Prism.languages.typescript) + Prism.languages.tsx = Prism.languages.extend('jsx', typescript) +} + + +/***/ }), + +/***/ 4979: +/***/ ((module) => { + + + +module.exports = typescript +typescript.displayName = 'typescript' +typescript.aliases = ['ts'] +function typescript(Prism) { + Prism.languages.typescript = Prism.languages.extend('javascript', { + // From JavaScript Prism keyword list and TypeScript language spec: https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#221-reserved-words + keyword: /\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/, + builtin: /\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/ + }) + Prism.languages.ts = Prism.languages.typescript +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tt2.3507d3cb.js b/assets/js/react-syntax-highlighter_languages_refractor_tt2.3507d3cb.js new file mode 100644 index 000000000..0bd5556a4 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tt2.3507d3cb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3444,3047],{3205:e=>{function t(e){!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,a,r,i){if(n.language===a){var s=n.tokenStack=[];n.code=n.code.replace(r,(function(e){if("function"==typeof i&&!i(e))return e;for(var r,o=s.length;-1!==n.code.indexOf(r=t(a,o));)++o;return s[o]=e,r})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,a){if(n.language===a&&n.tokenStack){n.grammar=e.languages[a];var r=0,i=Object.keys(n.tokenStack);!function s(o){for(var g=0;g<o.length&&!(r>=i.length);g++){var u=o[g];if("string"==typeof u||u.content&&"string"==typeof u.content){var l=i[r],p=n.tokenStack[l],c="string"==typeof u?u:u.content,f=t(a,l),d=c.indexOf(f);if(d>-1){++r;var k=c.substring(0,d),E=new e.Token(a,e.tokenize(p,n.grammar),"language-"+a,p),S=c.substring(d+f.length),m=[];k&&m.push.apply(m,s([k])),m.push(E),S&&m.push.apply(m,s([S])),"string"==typeof u?o.splice.apply(o,[g,1].concat(m)):u.content=m}}else u.content&&s(u.content)}return o}(n.tokens)}}}})}(e)}e.exports=t,t.displayName="markupTemplating",t.aliases=[]},1028:(e,t,n)=>{var a=n(3205);function r(e){e.register(a),function(e){e.languages.tt2=e.languages.extend("clike",{comment:/#.*|\[%#[\s\S]*?%\]/,keyword:/\b(?:BLOCK|CALL|CASE|CATCH|CLEAR|DEBUG|DEFAULT|ELSE|ELSIF|END|FILTER|FINAL|FOREACH|GET|IF|IN|INCLUDE|INSERT|LAST|MACRO|META|NEXT|PERL|PROCESS|RAWPERL|RETURN|SET|STOP|TAGS|THROW|TRY|SWITCH|UNLESS|USE|WHILE|WRAPPER)\b/,punctuation:/[[\]{},()]/}),e.languages.insertBefore("tt2","number",{operator:/=[>=]?|!=?|<=?|>=?|&&|\|\|?|\b(?:and|or|not)\b/,variable:{pattern:/[a-z]\w*(?:\s*\.\s*(?:\d+|\$?[a-z]\w*))*/i}}),e.languages.insertBefore("tt2","keyword",{delimiter:{pattern:/^(?:\[%|%%)-?|-?%]$/,alias:"punctuation"}}),e.languages.insertBefore("tt2","string",{"single-quoted-string":{pattern:/'[^\\']*(?:\\[\s\S][^\\']*)*'/,greedy:!0,alias:"string"},"double-quoted-string":{pattern:/"[^\\"]*(?:\\[\s\S][^\\"]*)*"/,greedy:!0,alias:"string",inside:{variable:{pattern:/\$(?:[a-z]\w*(?:\.(?:\d+|\$?[a-z]\w*))*)/i}}}}),delete e.languages.tt2.string,e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"tt2",/\[%[\s\S]+?%\]/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"tt2")}))}(e)}e.exports=r,r.displayName="tt2",r.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_tt2.f9beb27c.js b/assets/js/react-syntax-highlighter_languages_refractor_tt2.f9beb27c.js new file mode 100644 index 000000000..6eb98c486 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_tt2.f9beb27c.js @@ -0,0 +1,198 @@ +"use strict"; +exports.id = 3444; +exports.ids = [3444,3047]; +exports.modules = { + +/***/ 93205: +/***/ ((module) => { + + + +module.exports = markupTemplating +markupTemplating.displayName = 'markupTemplating' +markupTemplating.aliases = [] +function markupTemplating(Prism) { + ;(function(Prism) { + /** + * Returns the placeholder for the given language id and index. + * + * @param {string} language + * @param {string|number} index + * @returns {string} + */ + function getPlaceholder(language, index) { + return '___' + language.toUpperCase() + index + '___' + } + Object.defineProperties((Prism.languages['markup-templating'] = {}), { + buildPlaceholders: { + /** + * Tokenize all inline templating expressions matching `placeholderPattern`. + * + * If `replaceFilter` is provided, only matches of `placeholderPattern` for which `replaceFilter` returns + * `true` will be replaced. + * + * @param {object} env The environment of the `before-tokenize` hook. + * @param {string} language The language id. + * @param {RegExp} placeholderPattern The matches of this pattern will be replaced by placeholders. + * @param {(match: string) => boolean} [replaceFilter] + */ + value: function(env, language, placeholderPattern, replaceFilter) { + if (env.language !== language) { + return + } + var tokenStack = (env.tokenStack = []) + env.code = env.code.replace(placeholderPattern, function(match) { + if (typeof replaceFilter === 'function' && !replaceFilter(match)) { + return match + } + var i = tokenStack.length + var placeholder // Check for existing strings + while ( + env.code.indexOf((placeholder = getPlaceholder(language, i))) !== + -1 + ) + ++i // Create a sparse array + tokenStack[i] = match + return placeholder + }) // Switch the grammar to markup + env.grammar = Prism.languages.markup + } + }, + tokenizePlaceholders: { + /** + * Replace placeholders with proper tokens after tokenizing. + * + * @param {object} env The environment of the `after-tokenize` hook. + * @param {string} language The language id. + */ + value: function(env, language) { + if (env.language !== language || !env.tokenStack) { + return + } // Switch the grammar back + env.grammar = Prism.languages[language] + var j = 0 + var keys = Object.keys(env.tokenStack) + function walkTokens(tokens) { + for (var i = 0; i < tokens.length; i++) { + // all placeholders are replaced already + if (j >= keys.length) { + break + } + var token = tokens[i] + if ( + typeof token === 'string' || + (token.content && typeof token.content === 'string') + ) { + var k = keys[j] + var t = env.tokenStack[k] + var s = typeof token === 'string' ? token : token.content + var placeholder = getPlaceholder(language, k) + var index = s.indexOf(placeholder) + if (index > -1) { + ++j + var before = s.substring(0, index) + var middle = new Prism.Token( + language, + Prism.tokenize(t, env.grammar), + 'language-' + language, + t + ) + var after = s.substring(index + placeholder.length) + var replacement = [] + if (before) { + replacement.push.apply(replacement, walkTokens([before])) + } + replacement.push(middle) + if (after) { + replacement.push.apply(replacement, walkTokens([after])) + } + if (typeof token === 'string') { + tokens.splice.apply(tokens, [i, 1].concat(replacement)) + } else { + token.content = replacement + } + } + } else if ( + token.content + /* && typeof token.content !== 'string' */ + ) { + walkTokens(token.content) + } + } + return tokens + } + walkTokens(env.tokens) + } + } + }) + })(Prism) +} + + +/***/ }), + +/***/ 61028: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorMarkupTemplating = __webpack_require__(93205) +module.exports = tt2 +tt2.displayName = 'tt2' +tt2.aliases = [] +function tt2(Prism) { + Prism.register(refractorMarkupTemplating) + ;(function(Prism) { + Prism.languages.tt2 = Prism.languages.extend('clike', { + comment: /#.*|\[%#[\s\S]*?%\]/, + keyword: /\b(?:BLOCK|CALL|CASE|CATCH|CLEAR|DEBUG|DEFAULT|ELSE|ELSIF|END|FILTER|FINAL|FOREACH|GET|IF|IN|INCLUDE|INSERT|LAST|MACRO|META|NEXT|PERL|PROCESS|RAWPERL|RETURN|SET|STOP|TAGS|THROW|TRY|SWITCH|UNLESS|USE|WHILE|WRAPPER)\b/, + punctuation: /[[\]{},()]/ + }) + Prism.languages.insertBefore('tt2', 'number', { + operator: /=[>=]?|!=?|<=?|>=?|&&|\|\|?|\b(?:and|or|not)\b/, + variable: { + pattern: /[a-z]\w*(?:\s*\.\s*(?:\d+|\$?[a-z]\w*))*/i + } + }) + Prism.languages.insertBefore('tt2', 'keyword', { + delimiter: { + pattern: /^(?:\[%|%%)-?|-?%]$/, + alias: 'punctuation' + } + }) + Prism.languages.insertBefore('tt2', 'string', { + 'single-quoted-string': { + pattern: /'[^\\']*(?:\\[\s\S][^\\']*)*'/, + greedy: true, + alias: 'string' + }, + 'double-quoted-string': { + pattern: /"[^\\"]*(?:\\[\s\S][^\\"]*)*"/, + greedy: true, + alias: 'string', + inside: { + variable: { + pattern: /\$(?:[a-z]\w*(?:\.(?:\d+|\$?[a-z]\w*))*)/i + } + } + } + }) // The different types of TT2 strings "replace" the C-like standard string + delete Prism.languages.tt2.string + Prism.hooks.add('before-tokenize', function(env) { + var tt2Pattern = /\[%[\s\S]+?%\]/g + Prism.languages['markup-templating'].buildPlaceholders( + env, + 'tt2', + tt2Pattern + ) + }) + Prism.hooks.add('after-tokenize', function(env) { + Prism.languages['markup-templating'].tokenizePlaceholders(env, 'tt2') + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_twig.14ec5157.js b/assets/js/react-syntax-highlighter_languages_refractor_twig.14ec5157.js new file mode 100644 index 000000000..c09adcd70 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_twig.14ec5157.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8827],{9892:t=>{function e(t){t.languages.twig={comment:/\{#[\s\S]*?#\}/,tag:{pattern:/\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}/,inside:{ld:{pattern:/^(?:\{\{-?|\{%-?\s*\w+)/,inside:{punctuation:/^(?:\{\{|\{%)-?/,keyword:/\w+/}},rd:{pattern:/-?(?:%\}|\}\})$/,inside:{punctuation:/.+/}},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,inside:{punctuation:/^['"]|['"]$/}},keyword:/\b(?:even|if|odd)\b/,boolean:/\b(?:true|false|null)\b/,number:/\b0x[\dA-Fa-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][-+]?\d+)?/,operator:[{pattern:/(\s)(?:and|b-and|b-xor|b-or|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/,lookbehind:!0},/[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/],property:/\b[a-zA-Z_]\w*\b/,punctuation:/[()\[\]{}:.,]/}},other:{pattern:/\S(?:[\s\S]*\S)?/,inside:t.languages.markup}}}t.exports=e,e.displayName="twig",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_twig.b1dcd03d.js b/assets/js/react-syntax-highlighter_languages_refractor_twig.b1dcd03d.js new file mode 100644 index 000000000..8a5c87e06 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_twig.b1dcd03d.js @@ -0,0 +1,66 @@ +"use strict"; +exports.id = 8827; +exports.ids = [8827]; +exports.modules = { + +/***/ 19892: +/***/ ((module) => { + + + +module.exports = twig +twig.displayName = 'twig' +twig.aliases = [] +function twig(Prism) { + Prism.languages.twig = { + comment: /\{#[\s\S]*?#\}/, + tag: { + pattern: /\{\{[\s\S]*?\}\}|\{%[\s\S]*?%\}/, + inside: { + ld: { + pattern: /^(?:\{\{-?|\{%-?\s*\w+)/, + inside: { + punctuation: /^(?:\{\{|\{%)-?/, + keyword: /\w+/ + } + }, + rd: { + pattern: /-?(?:%\}|\}\})$/, + inside: { + punctuation: /.+/ + } + }, + string: { + pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/, + inside: { + punctuation: /^['"]|['"]$/ + } + }, + keyword: /\b(?:even|if|odd)\b/, + boolean: /\b(?:true|false|null)\b/, + number: /\b0x[\dA-Fa-f]+|(?:\b\d+\.?\d*|\B\.\d+)(?:[Ee][-+]?\d+)?/, + operator: [ + { + pattern: /(\s)(?:and|b-and|b-xor|b-or|ends with|in|is|matches|not|or|same as|starts with)(?=\s)/, + lookbehind: true + }, + /[=<>]=?|!=|\*\*?|\/\/?|\?:?|[-+~%|]/ + ], + property: /\b[a-zA-Z_]\w*\b/, + punctuation: /[()\[\]{}:.,]/ + } + }, + // The rest can be parsed as HTML + other: { + // We want non-blank matches + pattern: /\S(?:[\s\S]*\S)?/, + inside: Prism.languages.markup + } + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_typescript.83d39f79.js b/assets/js/react-syntax-highlighter_languages_refractor_typescript.83d39f79.js new file mode 100644 index 000000000..626b6fae7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_typescript.83d39f79.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[9461],{4979:e=>{function t(e){e.languages.typescript=e.languages.extend("javascript",{keyword:/\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/,builtin:/\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/}),e.languages.ts=e.languages.typescript}e.exports=t,t.displayName="typescript",t.aliases=["ts"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_typescript.8d64fbf6.js b/assets/js/react-syntax-highlighter_languages_refractor_typescript.8d64fbf6.js new file mode 100644 index 000000000..504aa19be --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_typescript.8d64fbf6.js @@ -0,0 +1,27 @@ +"use strict"; +exports.id = 9461; +exports.ids = [9461]; +exports.modules = { + +/***/ 4979: +/***/ ((module) => { + + + +module.exports = typescript +typescript.displayName = 'typescript' +typescript.aliases = ['ts'] +function typescript(Prism) { + Prism.languages.typescript = Prism.languages.extend('javascript', { + // From JavaScript Prism keyword list and TypeScript language spec: https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#221-reserved-words + keyword: /\b(?:abstract|as|async|await|break|case|catch|class|const|constructor|continue|debugger|declare|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|is|keyof|let|module|namespace|new|null|of|package|private|protected|public|readonly|return|require|set|static|super|switch|this|throw|try|type|typeof|var|void|while|with|yield)\b/, + builtin: /\b(?:string|Function|any|number|boolean|Array|symbol|console|Promise|unknown|never)\b/ + }) + Prism.languages.ts = Prism.languages.typescript +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_vbnet.277f273b.js b/assets/js/react-syntax-highlighter_languages_refractor_vbnet.277f273b.js new file mode 100644 index 000000000..acbffd583 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_vbnet.277f273b.js @@ -0,0 +1,68 @@ +"use strict"; +exports.id = 5896; +exports.ids = [5896,7504]; +exports.modules = { + +/***/ 46241: +/***/ ((module) => { + + + +module.exports = basic +basic.displayName = 'basic' +basic.aliases = [] +function basic(Prism) { + Prism.languages.basic = { + comment: { + pattern: /(?:!|REM\b).+/i, + inside: { + keyword: /^REM/i + } + }, + string: { + pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i, + greedy: true + }, + number: /(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i, + keyword: /\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i, + function: /\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i, + operator: /<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i, + punctuation: /[,;:()]/ + } +} + + +/***/ }), + +/***/ 53813: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + + +var refractorBasic = __webpack_require__(46241) +module.exports = vbnet +vbnet.displayName = 'vbnet' +vbnet.aliases = [] +function vbnet(Prism) { + Prism.register(refractorBasic) + Prism.languages.vbnet = Prism.languages.extend('basic', { + keyword: /(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDEC|CDBL|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEFAULT|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LINE INPUT|LET|LIB|LIKE|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPERATOR|OPEN|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHORT|SINGLE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SYNCLOCK|SWAP|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i, + comment: [ + { + pattern: /(?:!|REM\b).+/i, + inside: { + keyword: /^REM/i + } + }, + { + pattern: /(^|[^\\:])'.*/, + lookbehind: true + } + ] + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_vbnet.ddd4e43f.js b/assets/js/react-syntax-highlighter_languages_refractor_vbnet.ddd4e43f.js new file mode 100644 index 000000000..c203ecc16 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_vbnet.ddd4e43f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5896,7504],{6241:E=>{function T(E){E.languages.basic={comment:{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,greedy:!0},number:/(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,function:/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}}E.exports=T,T.displayName="basic",T.aliases=[]},3813:(E,T,R)=>{var N=R(6241);function I(E){E.register(N),E.languages.vbnet=E.languages.extend("basic",{keyword:/(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDEC|CDBL|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEFAULT|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LINE INPUT|LET|LIB|LIKE|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPERATOR|OPEN|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHORT|SINGLE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SYNCLOCK|SWAP|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i,comment:[{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},{pattern:/(^|[^\\:])'.*/,lookbehind:!0}]})}E.exports=I,I.displayName="vbnet",I.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_velocity.2cb5fdf9.js b/assets/js/react-syntax-highlighter_languages_refractor_velocity.2cb5fdf9.js new file mode 100644 index 000000000..c755b06a7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_velocity.2cb5fdf9.js @@ -0,0 +1,89 @@ +"use strict"; +exports.id = 2980; +exports.ids = [2980]; +exports.modules = { + +/***/ 46891: +/***/ ((module) => { + + + +module.exports = velocity +velocity.displayName = 'velocity' +velocity.aliases = [] +function velocity(Prism) { + ;(function(Prism) { + Prism.languages.velocity = Prism.languages.extend('markup', {}) + var velocity = { + variable: { + pattern: /(^|[^\\](?:\\\\)*)\$!?(?:[a-z][\w-]*(?:\([^)]*\))?(?:\.[a-z][\w-]*(?:\([^)]*\))?|\[[^\]]+])*|{[^}]+})/i, + lookbehind: true, + inside: {} // See below + }, + string: { + pattern: /"[^"]*"|'[^']*'/, + greedy: true + }, + number: /\b\d+\b/, + boolean: /\b(?:true|false)\b/, + operator: /[=!<>]=?|[+*/%-]|&&|\|\||\.\.|\b(?:eq|g[et]|l[et]|n(?:e|ot))\b/, + punctuation: /[(){}[\]:,.]/ + } + velocity.variable.inside = { + string: velocity['string'], + function: { + pattern: /([^\w-])[a-z][\w-]*(?=\()/, + lookbehind: true + }, + number: velocity['number'], + boolean: velocity['boolean'], + punctuation: velocity['punctuation'] + } + Prism.languages.insertBefore('velocity', 'comment', { + unparsed: { + pattern: /(^|[^\\])#\[\[[\s\S]*?]]#/, + lookbehind: true, + greedy: true, + inside: { + punctuation: /^#\[\[|]]#$/ + } + }, + 'velocity-comment': [ + { + pattern: /(^|[^\\])#\*[\s\S]*?\*#/, + lookbehind: true, + greedy: true, + alias: 'comment' + }, + { + pattern: /(^|[^\\])##.*/, + lookbehind: true, + greedy: true, + alias: 'comment' + } + ], + directive: { + pattern: /(^|[^\\](?:\\\\)*)#@?(?:[a-z][\w-]*|{[a-z][\w-]*})(?:\s*\((?:[^()]|\([^()]*\))*\))?/i, + lookbehind: true, + inside: { + keyword: { + pattern: /^#@?(?:[a-z][\w-]*|{[a-z][\w-]*})|\bin\b/, + inside: { + punctuation: /[{}]/ + } + }, + rest: velocity + } + }, + variable: velocity['variable'] + }) + Prism.languages.velocity['tag'].inside['attr-value'].inside.rest = + Prism.languages.velocity + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_velocity.a0191111.js b/assets/js/react-syntax-highlighter_languages_refractor_velocity.a0191111.js new file mode 100644 index 000000000..39ab03683 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_velocity.a0191111.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[2980],{6891:e=>{function n(e){!function(e){e.languages.velocity=e.languages.extend("markup",{});var n={variable:{pattern:/(^|[^\\](?:\\\\)*)\$!?(?:[a-z][\w-]*(?:\([^)]*\))?(?:\.[a-z][\w-]*(?:\([^)]*\))?|\[[^\]]+])*|{[^}]+})/i,lookbehind:!0,inside:{}},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},number:/\b\d+\b/,boolean:/\b(?:true|false)\b/,operator:/[=!<>]=?|[+*/%-]|&&|\|\||\.\.|\b(?:eq|g[et]|l[et]|n(?:e|ot))\b/,punctuation:/[(){}[\]:,.]/};n.variable.inside={string:n.string,function:{pattern:/([^\w-])[a-z][\w-]*(?=\()/,lookbehind:!0},number:n.number,boolean:n.boolean,punctuation:n.punctuation},e.languages.insertBefore("velocity","comment",{unparsed:{pattern:/(^|[^\\])#\[\[[\s\S]*?]]#/,lookbehind:!0,greedy:!0,inside:{punctuation:/^#\[\[|]]#$/}},"velocity-comment":[{pattern:/(^|[^\\])#\*[\s\S]*?\*#/,lookbehind:!0,greedy:!0,alias:"comment"},{pattern:/(^|[^\\])##.*/,lookbehind:!0,greedy:!0,alias:"comment"}],directive:{pattern:/(^|[^\\](?:\\\\)*)#@?(?:[a-z][\w-]*|{[a-z][\w-]*})(?:\s*\((?:[^()]|\([^()]*\))*\))?/i,lookbehind:!0,inside:{keyword:{pattern:/^#@?(?:[a-z][\w-]*|{[a-z][\w-]*})|\bin\b/,inside:{punctuation:/[{}]/}},rest:n}},variable:n.variable}),e.languages.velocity.tag.inside["attr-value"].inside.rest=e.languages.velocity}(e)}e.exports=n,n.displayName="velocity",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_verilog.f65a2cf9.js b/assets/js/react-syntax-highlighter_languages_refractor_verilog.f65a2cf9.js new file mode 100644 index 000000000..7311c4a5e --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_verilog.f65a2cf9.js @@ -0,0 +1,41 @@ +"use strict"; +exports.id = 8819; +exports.ids = [8819]; +exports.modules = { + +/***/ 91824: +/***/ ((module) => { + + + +module.exports = verilog +verilog.displayName = 'verilog' +verilog.aliases = [] +function verilog(Prism) { + Prism.languages.verilog = { + comment: /\/\/.*|\/\*[\s\S]*?\*\//, + string: { + pattern: /"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/, + greedy: true + }, + // support for any kernel function (ex: $display()) + property: /\B\$\w+\b/, + // support for user defined constants (ex: `define) + constant: /\B`\w+\b/, + function: /\w+(?=\()/, + // support for verilog and system verilog keywords + keyword: /\b(?:alias|and|assert|assign|assume|automatic|before|begin|bind|bins|binsof|bit|break|buf|bufif0|bufif1|byte|class|case|casex|casez|cell|chandle|clocking|cmos|config|const|constraint|context|continue|cover|covergroup|coverpoint|cross|deassign|default|defparam|design|disable|dist|do|edge|else|end|endcase|endclass|endclocking|endconfig|endfunction|endgenerate|endgroup|endinterface|endmodule|endpackage|endprimitive|endprogram|endproperty|endspecify|endsequence|endtable|endtask|enum|event|expect|export|extends|extern|final|first_match|for|force|foreach|forever|fork|forkjoin|function|generate|genvar|highz0|highz1|if|iff|ifnone|ignore_bins|illegal_bins|import|incdir|include|initial|inout|input|inside|instance|int|integer|interface|intersect|join|join_any|join_none|large|liblist|library|local|localparam|logic|longint|macromodule|matches|medium|modport|module|nand|negedge|new|nmos|nor|noshowcancelled|not|notif0|notif1|null|or|output|package|packed|parameter|pmos|posedge|primitive|priority|program|property|protected|pull0|pull1|pulldown|pullup|pulsestyle_onevent|pulsestyle_ondetect|pure|rand|randc|randcase|randsequence|rcmos|real|realtime|ref|reg|release|repeat|return|rnmos|rpmos|rtran|rtranif0|rtranif1|scalared|sequence|shortint|shortreal|showcancelled|signed|small|solve|specify|specparam|static|string|strong0|strong1|struct|super|supply0|supply1|table|tagged|task|this|throughout|time|timeprecision|timeunit|tran|tranif0|tranif1|tri|tri0|tri1|triand|trior|trireg|type|typedef|union|unique|unsigned|use|uwire|var|vectored|virtual|void|wait|wait_order|wand|weak0|weak1|while|wildcard|wire|with|within|wor|xnor|xor)\b/, + // bold highlighting for all verilog and system verilog logic blocks + important: /\b(?:always_latch|always_comb|always_ff|always)\b ?@?/, + // support for time ticks, vectors, and real numbers + number: /\B##?\d+|(?:\b\d+)?'[odbh] ?[\da-fzx_?]+|\b\d*[._]?\d+(?:e[-+]?\d+)?/i, + operator: /[-+{}^~%*\/?=!<>&|]+/, + punctuation: /[[\];(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_verilog.f74c46b1.js b/assets/js/react-syntax-highlighter_languages_refractor_verilog.f74c46b1.js new file mode 100644 index 000000000..7ae1dd320 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_verilog.f74c46b1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[8819],{1824:e=>{function n(e){e.languages.verilog={comment:/\/\/.*|\/\*[\s\S]*?\*\//,string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},property:/\B\$\w+\b/,constant:/\B`\w+\b/,function:/\w+(?=\()/,keyword:/\b(?:alias|and|assert|assign|assume|automatic|before|begin|bind|bins|binsof|bit|break|buf|bufif0|bufif1|byte|class|case|casex|casez|cell|chandle|clocking|cmos|config|const|constraint|context|continue|cover|covergroup|coverpoint|cross|deassign|default|defparam|design|disable|dist|do|edge|else|end|endcase|endclass|endclocking|endconfig|endfunction|endgenerate|endgroup|endinterface|endmodule|endpackage|endprimitive|endprogram|endproperty|endspecify|endsequence|endtable|endtask|enum|event|expect|export|extends|extern|final|first_match|for|force|foreach|forever|fork|forkjoin|function|generate|genvar|highz0|highz1|if|iff|ifnone|ignore_bins|illegal_bins|import|incdir|include|initial|inout|input|inside|instance|int|integer|interface|intersect|join|join_any|join_none|large|liblist|library|local|localparam|logic|longint|macromodule|matches|medium|modport|module|nand|negedge|new|nmos|nor|noshowcancelled|not|notif0|notif1|null|or|output|package|packed|parameter|pmos|posedge|primitive|priority|program|property|protected|pull0|pull1|pulldown|pullup|pulsestyle_onevent|pulsestyle_ondetect|pure|rand|randc|randcase|randsequence|rcmos|real|realtime|ref|reg|release|repeat|return|rnmos|rpmos|rtran|rtranif0|rtranif1|scalared|sequence|shortint|shortreal|showcancelled|signed|small|solve|specify|specparam|static|string|strong0|strong1|struct|super|supply0|supply1|table|tagged|task|this|throughout|time|timeprecision|timeunit|tran|tranif0|tranif1|tri|tri0|tri1|triand|trior|trireg|type|typedef|union|unique|unsigned|use|uwire|var|vectored|virtual|void|wait|wait_order|wand|weak0|weak1|while|wildcard|wire|with|within|wor|xnor|xor)\b/,important:/\b(?:always_latch|always_comb|always_ff|always)\b ?@?/,number:/\B##?\d+|(?:\b\d+)?'[odbh] ?[\da-fzx_?]+|\b\d*[._]?\d+(?:e[-+]?\d+)?/i,operator:/[-+{}^~%*\/?=!<>&|]+/,punctuation:/[[\];(),.:]/}}e.exports=n,n.displayName="verilog",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_vhdl.4f0734f6.js b/assets/js/react-syntax-highlighter_languages_refractor_vhdl.4f0734f6.js new file mode 100644 index 000000000..62ec7454b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_vhdl.4f0734f6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1167],{9447:e=>{function t(e){e.languages.vhdl={comment:/--.+/,"vhdl-vectors":{pattern:/\b[oxb]"[\da-f_]+"|"[01uxzwlh-]+"/i,alias:"number"},"quoted-function":{pattern:/"\S+?"(?=\()/,alias:"function"},string:/"(?:[^\\"\r\n]|\\(?:\r\n|[\s\S]))*"/,constant:/\b(?:use|library)\b/i,keyword:/\b(?:'active|'ascending|'base|'delayed|'driving|'driving_value|'event|'high|'image|'instance_name|'last_active|'last_event|'last_value|'left|'leftof|'length|'low|'path_name|'pos|'pred|'quiet|'range|'reverse_range|'right|'rightof|'simple_name|'stable|'succ|'transaction|'val|'value|access|after|alias|all|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|new|next|null|of|on|open|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|report|return|select|severity|shared|signal|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with)\b/i,boolean:/\b(?:true|false)\b/i,function:/\w+(?=\()/,number:/'[01uxzwlh-]'|\b(?:\d+#[\da-f_.]+#|\d[\d_.]*)(?:e[-+]?\d+)?/i,operator:/[<>]=?|:=|[-+*/&=]|\b(?:abs|not|mod|rem|sll|srl|sla|sra|rol|ror|and|or|nand|xnor|xor|nor)\b/i,punctuation:/[{}[\];(),.:]/}}e.exports=t,t.displayName="vhdl",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_vhdl.6e9b0f8c.js b/assets/js/react-syntax-highlighter_languages_refractor_vhdl.6e9b0f8c.js new file mode 100644 index 000000000..0038e33f8 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_vhdl.6e9b0f8c.js @@ -0,0 +1,44 @@ +"use strict"; +exports.id = 1167; +exports.ids = [1167]; +exports.modules = { + +/***/ 9447: +/***/ ((module) => { + + + +module.exports = vhdl +vhdl.displayName = 'vhdl' +vhdl.aliases = [] +function vhdl(Prism) { + Prism.languages.vhdl = { + comment: /--.+/, + // support for all logic vectors + 'vhdl-vectors': { + pattern: /\b[oxb]"[\da-f_]+"|"[01uxzwlh-]+"/i, + alias: 'number' + }, + // support for operator overloading included + 'quoted-function': { + pattern: /"\S+?"(?=\()/, + alias: 'function' + }, + string: /"(?:[^\\"\r\n]|\\(?:\r\n|[\s\S]))*"/, + constant: /\b(?:use|library)\b/i, + // support for predefined attributes included + keyword: /\b(?:'active|'ascending|'base|'delayed|'driving|'driving_value|'event|'high|'image|'instance_name|'last_active|'last_event|'last_value|'left|'leftof|'length|'low|'path_name|'pos|'pred|'quiet|'range|'reverse_range|'right|'rightof|'simple_name|'stable|'succ|'transaction|'val|'value|access|after|alias|all|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|new|next|null|of|on|open|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|report|return|select|severity|shared|signal|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with)\b/i, + boolean: /\b(?:true|false)\b/i, + function: /\w+(?=\()/, + // decimal, based, physical, and exponential numbers supported + number: /'[01uxzwlh-]'|\b(?:\d+#[\da-f_.]+#|\d[\d_.]*)(?:e[-+]?\d+)?/i, + operator: /[<>]=?|:=|[-+*/&=]|\b(?:abs|not|mod|rem|sll|srl|sla|sra|rol|ror|and|or|nand|xnor|xor|nor)\b/i, + punctuation: /[{}[\];(),.:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_vim.400edf5a.js b/assets/js/react-syntax-highlighter_languages_refractor_vim.400edf5a.js new file mode 100644 index 000000000..417cd45f5 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_vim.400edf5a.js @@ -0,0 +1,31 @@ +"use strict"; +exports.id = 1929; +exports.ids = [1929]; +exports.modules = { + +/***/ 53062: +/***/ ((module) => { + + + +module.exports = vim +vim.displayName = 'vim' +vim.aliases = [] +function vim(Prism) { + Prism.languages.vim = { + string: /"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/, + comment: /".*/, + function: /\w+(?=\()/, + keyword: /\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\b/, + builtin: /\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\b/, + number: /\b(?:0x[\da-f]+|\d+(?:\.\d+)?)\b/i, + operator: /\|\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\/%?]|\b(?:is(?:not)?)\b/, + punctuation: /[{}[\](),;:]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_vim.8aac0526.js b/assets/js/react-syntax-highlighter_languages_refractor_vim.8aac0526.js new file mode 100644 index 000000000..8e0cf6cd8 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_vim.8aac0526.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1929],{3062:e=>{function n(e){e.languages.vim={string:/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\r\n]|'')*'/,comment:/".*/,function:/\w+(?=\()/,keyword:/\b(?:ab|abbreviate|abc|abclear|abo|aboveleft|al|all|arga|argadd|argd|argdelete|argdo|arge|argedit|argg|argglobal|argl|arglocal|ar|args|argu|argument|as|ascii|bad|badd|ba|ball|bd|bdelete|be|bel|belowright|bf|bfirst|bl|blast|bm|bmodified|bn|bnext|bN|bNext|bo|botright|bp|bprevious|brea|break|breaka|breakadd|breakd|breakdel|breakl|breaklist|br|brewind|bro|browse|bufdo|b|buffer|buffers|bun|bunload|bw|bwipeout|ca|cabbrev|cabc|cabclear|caddb|caddbuffer|cad|caddexpr|caddf|caddfile|cal|call|cat|catch|cb|cbuffer|cc|ccl|cclose|cd|ce|center|cex|cexpr|cf|cfile|cfir|cfirst|cgetb|cgetbuffer|cgete|cgetexpr|cg|cgetfile|c|change|changes|chd|chdir|che|checkpath|checkt|checktime|cla|clast|cl|clist|clo|close|cmapc|cmapclear|cnew|cnewer|cn|cnext|cN|cNext|cnf|cnfile|cNfcNfile|cnorea|cnoreabbrev|col|colder|colo|colorscheme|comc|comclear|comp|compiler|conf|confirm|con|continue|cope|copen|co|copy|cpf|cpfile|cp|cprevious|cq|cquit|cr|crewind|cuna|cunabbrev|cu|cunmap|cw|cwindow|debugg|debuggreedy|delc|delcommand|d|delete|delf|delfunction|delm|delmarks|diffg|diffget|diffoff|diffpatch|diffpu|diffput|diffsplit|diffthis|diffu|diffupdate|dig|digraphs|di|display|dj|djump|dl|dlist|dr|drop|ds|dsearch|dsp|dsplit|earlier|echoe|echoerr|echom|echomsg|echon|e|edit|el|else|elsei|elseif|em|emenu|endfo|endfor|endf|endfunction|endfun|en|endif|endt|endtry|endw|endwhile|ene|enew|ex|exi|exit|exu|exusage|f|file|files|filetype|fina|finally|fin|find|fini|finish|fir|first|fix|fixdel|fo|fold|foldc|foldclose|folddoc|folddoclosed|foldd|folddoopen|foldo|foldopen|for|fu|fun|function|go|goto|gr|grep|grepa|grepadd|ha|hardcopy|h|help|helpf|helpfind|helpg|helpgrep|helpt|helptags|hid|hide|his|history|ia|iabbrev|iabc|iabclear|if|ij|ijump|il|ilist|imapc|imapclear|in|inorea|inoreabbrev|isearch|isp|isplit|iuna|iunabbrev|iu|iunmap|j|join|ju|jumps|k|keepalt|keepj|keepjumps|kee|keepmarks|laddb|laddbuffer|lad|laddexpr|laddf|laddfile|lan|language|la|last|later|lb|lbuffer|lc|lcd|lch|lchdir|lcl|lclose|let|left|lefta|leftabove|lex|lexpr|lf|lfile|lfir|lfirst|lgetb|lgetbuffer|lgete|lgetexpr|lg|lgetfile|lgr|lgrep|lgrepa|lgrepadd|lh|lhelpgrep|l|list|ll|lla|llast|lli|llist|lmak|lmake|lm|lmap|lmapc|lmapclear|lnew|lnewer|lne|lnext|lN|lNext|lnf|lnfile|lNf|lNfile|ln|lnoremap|lo|loadview|loc|lockmarks|lockv|lockvar|lol|lolder|lop|lopen|lpf|lpfile|lp|lprevious|lr|lrewind|ls|lt|ltag|lu|lunmap|lv|lvimgrep|lvimgrepa|lvimgrepadd|lw|lwindow|mak|make|ma|mark|marks|mat|match|menut|menutranslate|mk|mkexrc|mks|mksession|mksp|mkspell|mkvie|mkview|mkv|mkvimrc|mod|mode|m|move|mzf|mzfile|mz|mzscheme|nbkey|new|n|next|N|Next|nmapc|nmapclear|noh|nohlsearch|norea|noreabbrev|nu|number|nun|nunmap|omapc|omapclear|on|only|o|open|opt|options|ou|ounmap|pc|pclose|ped|pedit|pe|perl|perld|perldo|po|pop|popu|popup|pp|ppop|pre|preserve|prev|previous|p|print|P|Print|profd|profdel|prof|profile|promptf|promptfind|promptr|promptrepl|ps|psearch|pta|ptag|ptf|ptfirst|ptj|ptjump|ptl|ptlast|ptn|ptnext|ptN|ptNext|ptp|ptprevious|ptr|ptrewind|pts|ptselect|pu|put|pw|pwd|pyf|pyfile|py|python|qa|qall|q|quit|quita|quitall|r|read|rec|recover|redi|redir|red|redo|redr|redraw|redraws|redrawstatus|reg|registers|res|resize|ret|retab|retu|return|rew|rewind|ri|right|rightb|rightbelow|rub|ruby|rubyd|rubydo|rubyf|rubyfile|ru|runtime|rv|rviminfo|sal|sall|san|sandbox|sa|sargument|sav|saveas|sba|sball|sbf|sbfirst|sbl|sblast|sbm|sbmodified|sbn|sbnext|sbN|sbNext|sbp|sbprevious|sbr|sbrewind|sb|sbuffer|scripte|scriptencoding|scrip|scriptnames|se|set|setf|setfiletype|setg|setglobal|setl|setlocal|sf|sfind|sfir|sfirst|sh|shell|sign|sil|silent|sim|simalt|sla|slast|sl|sleep|sm|smagic|sm|smap|smapc|smapclear|sme|smenu|sn|snext|sN|sNext|sni|sniff|sno|snomagic|snor|snoremap|snoreme|snoremenu|sor|sort|so|source|spelld|spelldump|spe|spellgood|spelli|spellinfo|spellr|spellrepall|spellu|spellundo|spellw|spellwrong|sp|split|spr|sprevious|sre|srewind|sta|stag|startg|startgreplace|star|startinsert|startr|startreplace|stj|stjump|st|stop|stopi|stopinsert|sts|stselect|sun|sunhide|sunm|sunmap|sus|suspend|sv|sview|syncbind|t|tab|tabc|tabclose|tabd|tabdo|tabe|tabedit|tabf|tabfind|tabfir|tabfirst|tabl|tablast|tabm|tabmove|tabnew|tabn|tabnext|tabN|tabNext|tabo|tabonly|tabp|tabprevious|tabr|tabrewind|tabs|ta|tag|tags|tc|tcl|tcld|tcldo|tclf|tclfile|te|tearoff|tf|tfirst|th|throw|tj|tjump|tl|tlast|tm|tm|tmenu|tn|tnext|tN|tNext|to|topleft|tp|tprevious|tr|trewind|try|ts|tselect|tu|tu|tunmenu|una|unabbreviate|u|undo|undoj|undojoin|undol|undolist|unh|unhide|unlet|unlo|unlockvar|unm|unmap|up|update|verb|verbose|ve|version|vert|vertical|vie|view|vim|vimgrep|vimgrepa|vimgrepadd|vi|visual|viu|viusage|vmapc|vmapclear|vne|vnew|vs|vsplit|vu|vunmap|wa|wall|wh|while|winc|wincmd|windo|winp|winpos|win|winsize|wn|wnext|wN|wNext|wp|wprevious|wq|wqa|wqall|w|write|ws|wsverb|wv|wviminfo|X|xa|xall|x|xit|xm|xmap|xmapc|xmapclear|xme|xmenu|XMLent|XMLns|xn|xnoremap|xnoreme|xnoremenu|xu|xunmap|y|yank)\b/,builtin:/\b(?:autocmd|acd|ai|akm|aleph|allowrevins|altkeymap|ambiwidth|ambw|anti|antialias|arab|arabic|arabicshape|ari|arshape|autochdir|autoindent|autoread|autowrite|autowriteall|aw|awa|background|backspace|backup|backupcopy|backupdir|backupext|backupskip|balloondelay|ballooneval|balloonexpr|bdir|bdlay|beval|bex|bexpr|bg|bh|bin|binary|biosk|bioskey|bk|bkc|bomb|breakat|brk|browsedir|bs|bsdir|bsk|bt|bufhidden|buflisted|buftype|casemap|ccv|cdpath|cedit|cfu|ch|charconvert|ci|cin|cindent|cink|cinkeys|cino|cinoptions|cinw|cinwords|clipboard|cmdheight|cmdwinheight|cmp|cms|columns|com|comments|commentstring|compatible|complete|completefunc|completeopt|consk|conskey|copyindent|cot|cpo|cpoptions|cpt|cscopepathcomp|cscopeprg|cscopequickfix|cscopetag|cscopetagorder|cscopeverbose|cspc|csprg|csqf|cst|csto|csverb|cuc|cul|cursorcolumn|cursorline|cwh|debug|deco|def|define|delcombine|dex|dg|dict|dictionary|diff|diffexpr|diffopt|digraph|dip|dir|directory|dy|ea|ead|eadirection|eb|ed|edcompatible|ef|efm|ei|ek|enc|encoding|endofline|eol|ep|equalalways|equalprg|errorbells|errorfile|errorformat|esckeys|et|eventignore|expandtab|exrc|fcl|fcs|fdc|fde|fdi|fdl|fdls|fdm|fdn|fdo|fdt|fen|fenc|fencs|fex|ff|ffs|fileencoding|fileencodings|fileformat|fileformats|fillchars|fk|fkmap|flp|fml|fmr|foldcolumn|foldenable|foldexpr|foldignore|foldlevel|foldlevelstart|foldmarker|foldmethod|foldminlines|foldnestmax|foldtext|formatexpr|formatlistpat|formatoptions|formatprg|fp|fs|fsync|ft|gcr|gd|gdefault|gfm|gfn|gfs|gfw|ghr|gp|grepformat|grepprg|gtl|gtt|guicursor|guifont|guifontset|guifontwide|guiheadroom|guioptions|guipty|guitablabel|guitabtooltip|helpfile|helpheight|helplang|hf|hh|hi|hidden|highlight|hk|hkmap|hkmapp|hkp|hl|hlg|hls|hlsearch|ic|icon|iconstring|ignorecase|im|imactivatekey|imak|imc|imcmdline|imd|imdisable|imi|iminsert|ims|imsearch|inc|include|includeexpr|incsearch|inde|indentexpr|indentkeys|indk|inex|inf|infercase|insertmode|isf|isfname|isi|isident|isk|iskeyword|isprint|joinspaces|js|key|keymap|keymodel|keywordprg|km|kmp|kp|langmap|langmenu|laststatus|lazyredraw|lbr|lcs|linebreak|lines|linespace|lisp|lispwords|listchars|loadplugins|lpl|lsp|lz|macatsui|magic|makeef|makeprg|matchpairs|matchtime|maxcombine|maxfuncdepth|maxmapdepth|maxmem|maxmempattern|maxmemtot|mco|mef|menuitems|mfd|mh|mis|mkspellmem|ml|mls|mm|mmd|mmp|mmt|modeline|modelines|modifiable|modified|more|mouse|mousef|mousefocus|mousehide|mousem|mousemodel|mouses|mouseshape|mouset|mousetime|mp|mps|msm|mzq|mzquantum|nf|nrformats|numberwidth|nuw|odev|oft|ofu|omnifunc|opendevice|operatorfunc|opfunc|osfiletype|pa|para|paragraphs|paste|pastetoggle|patchexpr|patchmode|path|pdev|penc|pex|pexpr|pfn|ph|pheader|pi|pm|pmbcs|pmbfn|popt|preserveindent|previewheight|previewwindow|printdevice|printencoding|printexpr|printfont|printheader|printmbcharset|printmbfont|printoptions|prompt|pt|pumheight|pvh|pvw|qe|quoteescape|readonly|remap|report|restorescreen|revins|rightleft|rightleftcmd|rl|rlc|ro|rs|rtp|ruf|ruler|rulerformat|runtimepath|sbo|sc|scb|scr|scroll|scrollbind|scrolljump|scrolloff|scrollopt|scs|sect|sections|secure|sel|selection|selectmode|sessionoptions|sft|shcf|shellcmdflag|shellpipe|shellquote|shellredir|shellslash|shelltemp|shelltype|shellxquote|shiftround|shiftwidth|shm|shortmess|shortname|showbreak|showcmd|showfulltag|showmatch|showmode|showtabline|shq|si|sidescroll|sidescrolloff|siso|sj|slm|smartcase|smartindent|smarttab|smc|smd|softtabstop|sol|spc|spell|spellcapcheck|spellfile|spelllang|spellsuggest|spf|spl|splitbelow|splitright|sps|sr|srr|ss|ssl|ssop|stal|startofline|statusline|stl|stmp|su|sua|suffixes|suffixesadd|sw|swapfile|swapsync|swb|swf|switchbuf|sws|sxq|syn|synmaxcol|syntax|tabline|tabpagemax|tabstop|tagbsearch|taglength|tagrelative|tagstack|tal|tb|tbi|tbidi|tbis|tbs|tenc|term|termbidi|termencoding|terse|textauto|textmode|textwidth|tgst|thesaurus|tildeop|timeout|timeoutlen|title|titlelen|titleold|titlestring|toolbar|toolbariconsize|top|tpm|tsl|tsr|ttimeout|ttimeoutlen|ttm|tty|ttybuiltin|ttyfast|ttym|ttymouse|ttyscroll|ttytype|tw|tx|uc|ul|undolevels|updatecount|updatetime|ut|vb|vbs|vdir|verbosefile|vfile|viewdir|viewoptions|viminfo|virtualedit|visualbell|vop|wak|warn|wb|wc|wcm|wd|weirdinvert|wfh|wfw|whichwrap|wi|wig|wildchar|wildcharm|wildignore|wildmenu|wildmode|wildoptions|wim|winaltkeys|window|winfixheight|winfixwidth|winheight|winminheight|winminwidth|winwidth|wiv|wiw|wm|wmh|wmnu|wmw|wop|wrap|wrapmargin|wrapscan|writeany|writebackup|writedelay|ww|noacd|noai|noakm|noallowrevins|noaltkeymap|noanti|noantialias|noar|noarab|noarabic|noarabicshape|noari|noarshape|noautochdir|noautoindent|noautoread|noautowrite|noautowriteall|noaw|noawa|nobackup|noballooneval|nobeval|nobin|nobinary|nobiosk|nobioskey|nobk|nobl|nobomb|nobuflisted|nocf|noci|nocin|nocindent|nocompatible|noconfirm|noconsk|noconskey|nocopyindent|nocp|nocscopetag|nocscopeverbose|nocst|nocsverb|nocuc|nocul|nocursorcolumn|nocursorline|nodeco|nodelcombine|nodg|nodiff|nodigraph|nodisable|noea|noeb|noed|noedcompatible|noek|noendofline|noeol|noequalalways|noerrorbells|noesckeys|noet|noex|noexpandtab|noexrc|nofen|nofk|nofkmap|nofoldenable|nogd|nogdefault|noguipty|nohid|nohidden|nohk|nohkmap|nohkmapp|nohkp|nohls|noic|noicon|noignorecase|noim|noimc|noimcmdline|noimd|noincsearch|noinf|noinfercase|noinsertmode|nois|nojoinspaces|nojs|nolazyredraw|nolbr|nolinebreak|nolisp|nolist|noloadplugins|nolpl|nolz|noma|nomacatsui|nomagic|nomh|noml|nomod|nomodeline|nomodifiable|nomodified|nomore|nomousef|nomousefocus|nomousehide|nonu|nonumber|noodev|noopendevice|nopaste|nopi|nopreserveindent|nopreviewwindow|noprompt|nopvw|noreadonly|noremap|norestorescreen|norevins|nori|norightleft|norightleftcmd|norl|norlc|noro|nors|noru|noruler|nosb|nosc|noscb|noscrollbind|noscs|nosecure|nosft|noshellslash|noshelltemp|noshiftround|noshortname|noshowcmd|noshowfulltag|noshowmatch|noshowmode|nosi|nosm|nosmartcase|nosmartindent|nosmarttab|nosmd|nosn|nosol|nospell|nosplitbelow|nosplitright|nospr|nosr|nossl|nosta|nostartofline|nostmp|noswapfile|noswf|nota|notagbsearch|notagrelative|notagstack|notbi|notbidi|notbs|notermbidi|noterse|notextauto|notextmode|notf|notgst|notildeop|notimeout|notitle|noto|notop|notr|nottimeout|nottybuiltin|nottyfast|notx|novb|novisualbell|nowa|nowarn|nowb|noweirdinvert|nowfh|nowfw|nowildmenu|nowinfixheight|nowinfixwidth|nowiv|nowmnu|nowrap|nowrapscan|nowrite|nowriteany|nowritebackup|nows|invacd|invai|invakm|invallowrevins|invaltkeymap|invanti|invantialias|invar|invarab|invarabic|invarabicshape|invari|invarshape|invautochdir|invautoindent|invautoread|invautowrite|invautowriteall|invaw|invawa|invbackup|invballooneval|invbeval|invbin|invbinary|invbiosk|invbioskey|invbk|invbl|invbomb|invbuflisted|invcf|invci|invcin|invcindent|invcompatible|invconfirm|invconsk|invconskey|invcopyindent|invcp|invcscopetag|invcscopeverbose|invcst|invcsverb|invcuc|invcul|invcursorcolumn|invcursorline|invdeco|invdelcombine|invdg|invdiff|invdigraph|invdisable|invea|inveb|inved|invedcompatible|invek|invendofline|inveol|invequalalways|inverrorbells|invesckeys|invet|invex|invexpandtab|invexrc|invfen|invfk|invfkmap|invfoldenable|invgd|invgdefault|invguipty|invhid|invhidden|invhk|invhkmap|invhkmapp|invhkp|invhls|invhlsearch|invic|invicon|invignorecase|invim|invimc|invimcmdline|invimd|invincsearch|invinf|invinfercase|invinsertmode|invis|invjoinspaces|invjs|invlazyredraw|invlbr|invlinebreak|invlisp|invlist|invloadplugins|invlpl|invlz|invma|invmacatsui|invmagic|invmh|invml|invmod|invmodeline|invmodifiable|invmodified|invmore|invmousef|invmousefocus|invmousehide|invnu|invnumber|invodev|invopendevice|invpaste|invpi|invpreserveindent|invpreviewwindow|invprompt|invpvw|invreadonly|invremap|invrestorescreen|invrevins|invri|invrightleft|invrightleftcmd|invrl|invrlc|invro|invrs|invru|invruler|invsb|invsc|invscb|invscrollbind|invscs|invsecure|invsft|invshellslash|invshelltemp|invshiftround|invshortname|invshowcmd|invshowfulltag|invshowmatch|invshowmode|invsi|invsm|invsmartcase|invsmartindent|invsmarttab|invsmd|invsn|invsol|invspell|invsplitbelow|invsplitright|invspr|invsr|invssl|invsta|invstartofline|invstmp|invswapfile|invswf|invta|invtagbsearch|invtagrelative|invtagstack|invtbi|invtbidi|invtbs|invtermbidi|invterse|invtextauto|invtextmode|invtf|invtgst|invtildeop|invtimeout|invtitle|invto|invtop|invtr|invttimeout|invttybuiltin|invttyfast|invtx|invvb|invvisualbell|invwa|invwarn|invwb|invweirdinvert|invwfh|invwfw|invwildmenu|invwinfixheight|invwinfixwidth|invwiv|invwmnu|invwrap|invwrapscan|invwrite|invwriteany|invwritebackup|invws|t_AB|t_AF|t_al|t_AL|t_bc|t_cd|t_ce|t_Ce|t_cl|t_cm|t_Co|t_cs|t_Cs|t_CS|t_CV|t_da|t_db|t_dl|t_DL|t_EI|t_F1|t_F2|t_F3|t_F4|t_F5|t_F6|t_F7|t_F8|t_F9|t_fs|t_IE|t_IS|t_k1|t_K1|t_k2|t_k3|t_K3|t_k4|t_K4|t_k5|t_K5|t_k6|t_K6|t_k7|t_K7|t_k8|t_K8|t_k9|t_K9|t_KA|t_kb|t_kB|t_KB|t_KC|t_kd|t_kD|t_KD|t_ke|t_KE|t_KF|t_KG|t_kh|t_KH|t_kI|t_KI|t_KJ|t_KK|t_kl|t_KL|t_kN|t_kP|t_kr|t_ks|t_ku|t_le|t_mb|t_md|t_me|t_mr|t_ms|t_nd|t_op|t_RI|t_RV|t_Sb|t_se|t_Sf|t_SI|t_so|t_sr|t_te|t_ti|t_ts|t_ue|t_us|t_ut|t_vb|t_ve|t_vi|t_vs|t_WP|t_WS|t_xs|t_ZH|t_ZR)\b/,number:/\b(?:0x[\da-f]+|\d+(?:\.\d+)?)\b/i,operator:/\|\||&&|[-+.]=?|[=!](?:[=~][#?]?)?|[<>]=?[#?]?|[*\/%?]|\b(?:is(?:not)?)\b/,punctuation:/[{}[\](),;:]/}}e.exports=n,n.displayName="vim",n.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_visualBasic.57b8dde4.js b/assets/js/react-syntax-highlighter_languages_refractor_visualBasic.57b8dde4.js new file mode 100644 index 000000000..a0d1c62ad --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_visualBasic.57b8dde4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6558],{6215:e=>{function r(e){e.languages["visual-basic"]={comment:{pattern:/(?:['\u2018\u2019]|REM\b).*/i,inside:{keyword:/^REM/i}},directive:{pattern:/#(?:Const|Else|ElseIf|End|ExternalChecksum|ExternalSource|If|Region)(?:[^\S\r\n]_[^\S\r\n]*(?:\r\n?|\n)|.)+/i,alias:"comment",greedy:!0},string:{pattern:/\$?["\u201c\u201d](?:["\u201c\u201d]{2}|[^"\u201c\u201d])*["\u201c\u201d]C?/i,greedy:!0},date:{pattern:/#[^\S\r\n]*(?:\d+([/-])\d+\1\d+(?:[^\S\r\n]+(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))?|(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))[^\S\r\n]*#/i,alias:"builtin"},number:/(?:(?:\b\d+(?:\.\d+)?|\.\d+)(?:E[+-]?\d+)?|&[HO][\dA-F]+)(?:U?[ILS]|[FRD])?/i,boolean:/\b(?:True|False|Nothing)\b/i,keyword:/\b(?:AddHandler|AddressOf|Alias|And(?:Also)?|As|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|C(?:Bool|Byte|Char|Date|Dbl|Dec|Int|Lng|Obj|SByte|Short|Sng|Str|Type|UInt|ULng|UShort)|Char|Class|Const|Continue|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else(?:If)?|End(?:If)?|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get(?:Type|XMLNamespace)?|Global|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|IsNot|Let|Lib|Like|Long|Loop|Me|Mod|Module|Must(?:Inherit|Override)|My(?:Base|Class)|Namespace|Narrowing|New|Next|Not(?:Inheritable|Overridable)?|Object|Of|On|Operator|Option(?:al)?|Or(?:Else)?|Out|Overloads|Overridable|Overrides|ParamArray|Partial|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|SByte|Select|Set|Shadows|Shared|short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TryCast|TypeOf|U(?:Integer|Long|Short)|Using|Variant|Wend|When|While|Widening|With(?:Events)?|WriteOnly|Xor)\b/i,operator:[/[+\-*/\\^<=>&#@$%!]/,{pattern:/([^\S\r\n])_(?=[^\S\r\n]*[\r\n])/,lookbehind:!0}],punctuation:/[{}().,:?]/},e.languages.vb=e.languages["visual-basic"]}e.exports=r,r.displayName="visualBasic",r.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_visualBasic.d8b43b34.js b/assets/js/react-syntax-highlighter_languages_refractor_visualBasic.d8b43b34.js new file mode 100644 index 000000000..c75d88170 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_visualBasic.d8b43b34.js @@ -0,0 +1,54 @@ +"use strict"; +exports.id = 6558; +exports.ids = [6558]; +exports.modules = { + +/***/ 46215: +/***/ ((module) => { + + + +module.exports = visualBasic +visualBasic.displayName = 'visualBasic' +visualBasic.aliases = [] +function visualBasic(Prism) { + Prism.languages['visual-basic'] = { + comment: { + pattern: /(?:['‘’]|REM\b).*/i, + inside: { + keyword: /^REM/i + } + }, + directive: { + pattern: /#(?:Const|Else|ElseIf|End|ExternalChecksum|ExternalSource|If|Region)(?:[^\S\r\n]_[^\S\r\n]*(?:\r\n?|\n)|.)+/i, + alias: 'comment', + greedy: true + }, + string: { + pattern: /\$?["“”](?:["“”]{2}|[^"“”])*["“”]C?/i, + greedy: true + }, + date: { + pattern: /#[^\S\r\n]*(?:\d+([/-])\d+\1\d+(?:[^\S\r\n]+(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))?|(?:\d+[^\S\r\n]*(?:AM|PM)|\d+:\d+(?::\d+)?(?:[^\S\r\n]*(?:AM|PM))?))[^\S\r\n]*#/i, + alias: 'builtin' + }, + number: /(?:(?:\b\d+(?:\.\d+)?|\.\d+)(?:E[+-]?\d+)?|&[HO][\dA-F]+)(?:U?[ILS]|[FRD])?/i, + boolean: /\b(?:True|False|Nothing)\b/i, + keyword: /\b(?:AddHandler|AddressOf|Alias|And(?:Also)?|As|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|C(?:Bool|Byte|Char|Date|Dbl|Dec|Int|Lng|Obj|SByte|Short|Sng|Str|Type|UInt|ULng|UShort)|Char|Class|Const|Continue|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else(?:If)?|End(?:If)?|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get(?:Type|XMLNamespace)?|Global|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|IsNot|Let|Lib|Like|Long|Loop|Me|Mod|Module|Must(?:Inherit|Override)|My(?:Base|Class)|Namespace|Narrowing|New|Next|Not(?:Inheritable|Overridable)?|Object|Of|On|Operator|Option(?:al)?|Or(?:Else)?|Out|Overloads|Overridable|Overrides|ParamArray|Partial|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|SByte|Select|Set|Shadows|Shared|short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TryCast|TypeOf|U(?:Integer|Long|Short)|Using|Variant|Wend|When|While|Widening|With(?:Events)?|WriteOnly|Xor)\b/i, + operator: [ + /[+\-*/\\^<=>&#@$%!]/, + { + pattern: /([^\S\r\n])_(?=[^\S\r\n]*[\r\n])/, + lookbehind: true + } + ], + punctuation: /[{}().,:?]/ + } + Prism.languages.vb = Prism.languages['visual-basic'] +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_wasm.1c3b5ad7.js b/assets/js/react-syntax-highlighter_languages_refractor_wasm.1c3b5ad7.js new file mode 100644 index 000000000..4a1251cea --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_wasm.1c3b5ad7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[206],{7684:e=>{function t(e){e.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|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|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!#$%&'*+\-./:<=>?@\\^_`|~]+/i,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:/[()]/}}e.exports=t,t.displayName="wasm",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_wasm.332e9f6b.js b/assets/js/react-syntax-highlighter_languages_refractor_wasm.332e9f6b.js new file mode 100644 index 000000000..6fc71cdf7 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_wasm.332e9f6b.js @@ -0,0 +1,52 @@ +"use strict"; +exports.id = 206; +exports.ids = [206]; +exports.modules = { + +/***/ 17684: +/***/ ((module) => { + + + +module.exports = wasm +wasm.displayName = 'wasm' +wasm.aliases = [] +function wasm(Prism) { + Prism.languages.wasm = { + comment: [ + /\(;[\s\S]*?;\)/, + { + pattern: /;;.*/, + greedy: true + } + ], + string: { + pattern: /"(?:\\[\s\S]|[^"\\])*"/, + greedy: true + }, + 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|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|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!#$%&'*+\-./:<=>?@\\^_`|~]+/i, + 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: /[()]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_wiki.03061a3c.js b/assets/js/react-syntax-highlighter_languages_refractor_wiki.03061a3c.js new file mode 100644 index 000000000..25f154a44 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_wiki.03061a3c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[1253],{8191:i=>{function e(i){i.languages.wiki=i.languages.extend("markup",{"block-comment":{pattern:/(^|[^\\])\/\*[\s\S]*?\*\//,lookbehind:!0,alias:"comment"},heading:{pattern:/^(=+).+?\1/m,inside:{punctuation:/^=+|=+$/,important:/.+/}},emphasis:{pattern:/('{2,5}).+?\1/,inside:{"bold italic":{pattern:/(''''').+?(?=\1)/,lookbehind:!0},bold:{pattern:/(''')[^'](?:.*?[^'])?(?=\1)/,lookbehind:!0},italic:{pattern:/('')[^'](?:.*?[^'])?(?=\1)/,lookbehind:!0},punctuation:/^''+|''+$/}},hr:{pattern:/^-{4,}/m,alias:"punctuation"},url:[/ISBN +(?:97[89][ -]?)?(?:\d[ -]?){9}[\dx]\b|(?:RFC|PMID) +\d+/i,/\[\[.+?\]\]|\[.+?\]/],variable:[/__[A-Z]+__/,/\{{3}.+?\}{3}/,/\{\{.+?\}\}/],symbol:[/^#redirect/im,/~{3,5}/],"table-tag":{pattern:/((?:^|[|!])[|!])[^|\r\n]+\|(?!\|)/m,lookbehind:!0,inside:{"table-bar":{pattern:/\|$/,alias:"punctuation"},rest:i.languages.markup.tag.inside}},punctuation:/^(?:\{\||\|\}|\|-|[*#:;!|])|\|\||!!/m}),i.languages.insertBefore("wiki","tag",{nowiki:{pattern:/<(nowiki|pre|source)\b[\s\S]*?>[\s\S]*?<\/\1>/i,inside:{tag:{pattern:/<(?:nowiki|pre|source)\b[\s\S]*?>|<\/(?:nowiki|pre|source)>/i,inside:i.languages.markup.tag.inside}}}})}i.exports=e,e.displayName="wiki",e.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_wiki.3de26cbc.js b/assets/js/react-syntax-highlighter_languages_refractor_wiki.3de26cbc.js new file mode 100644 index 000000000..f7d7720cc --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_wiki.3de26cbc.js @@ -0,0 +1,97 @@ +"use strict"; +exports.id = 1253; +exports.ids = [1253]; +exports.modules = { + +/***/ 18191: +/***/ ((module) => { + + + +module.exports = wiki +wiki.displayName = 'wiki' +wiki.aliases = [] +function wiki(Prism) { + Prism.languages.wiki = Prism.languages.extend('markup', { + 'block-comment': { + pattern: /(^|[^\\])\/\*[\s\S]*?\*\//, + lookbehind: true, + alias: 'comment' + }, + heading: { + pattern: /^(=+).+?\1/m, + inside: { + punctuation: /^=+|=+$/, + important: /.+/ + } + }, + emphasis: { + // TODO Multi-line + pattern: /('{2,5}).+?\1/, + inside: { + 'bold italic': { + pattern: /(''''').+?(?=\1)/, + lookbehind: true + }, + bold: { + pattern: /(''')[^'](?:.*?[^'])?(?=\1)/, + lookbehind: true + }, + italic: { + pattern: /('')[^'](?:.*?[^'])?(?=\1)/, + lookbehind: true + }, + punctuation: /^''+|''+$/ + } + }, + hr: { + pattern: /^-{4,}/m, + alias: 'punctuation' + }, + url: [ + /ISBN +(?:97[89][ -]?)?(?:\d[ -]?){9}[\dx]\b|(?:RFC|PMID) +\d+/i, + /\[\[.+?\]\]|\[.+?\]/ + ], + variable: [ + /__[A-Z]+__/, // FIXME Nested structures should be handled + // {{formatnum:{{#expr:{{{3}}}}}}} + /\{{3}.+?\}{3}/, + /\{\{.+?\}\}/ + ], + symbol: [/^#redirect/im, /~{3,5}/], + // Handle table attrs: + // {| + // ! style="text-align:left;"| Item + // |} + 'table-tag': { + pattern: /((?:^|[|!])[|!])[^|\r\n]+\|(?!\|)/m, + lookbehind: true, + inside: { + 'table-bar': { + pattern: /\|$/, + alias: 'punctuation' + }, + rest: Prism.languages.markup['tag'].inside + } + }, + punctuation: /^(?:\{\||\|\}|\|-|[*#:;!|])|\|\||!!/m + }) + Prism.languages.insertBefore('wiki', 'tag', { + // Prevent highlighting inside <nowiki>, <source> and <pre> tags + nowiki: { + pattern: /<(nowiki|pre|source)\b[\s\S]*?>[\s\S]*?<\/\1>/i, + inside: { + tag: { + pattern: /<(?:nowiki|pre|source)\b[\s\S]*?>|<\/(?:nowiki|pre|source)>/i, + inside: Prism.languages.markup['tag'].inside + } + } + } + }) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_xeora.55d07d32.js b/assets/js/react-syntax-highlighter_languages_refractor_xeora.55d07d32.js new file mode 100644 index 000000000..4d71a470b --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_xeora.55d07d32.js @@ -0,0 +1,137 @@ +"use strict"; +exports.id = 6574; +exports.ids = [6574]; +exports.modules = { + +/***/ 97202: +/***/ ((module) => { + + + +module.exports = xeora +xeora.displayName = 'xeora' +xeora.aliases = ['xeoracube'] +function xeora(Prism) { + ;(function(Prism) { + Prism.languages.xeora = Prism.languages.extend('markup', { + constant: { + pattern: /\$(?:DomainContents|PageRenderDuration)\$/, + inside: { + punctuation: { + pattern: /\$/ + } + } + }, + variable: { + pattern: /\$@?(?:#+|[-+*~=^])?[\w.]+\$/, + inside: { + punctuation: { + pattern: /[$.]/ + }, + operator: { + pattern: /#+|[-+*~=^@]/ + } + } + }, + 'function-inline': { + pattern: /\$F:[-\w.]+\?[-\w.]+(?:,(?:\|?(?:[-#.^+*~]*(?:[\w+][^$]*)|=(?:[\S+][^$]*)|@[-#]*(?:\w+.)[\w+.]+)?)*)?\$/, + inside: { + variable: { + pattern: /(?:[,|])@?(?:#+|[-+*~=^])?[\w.]+/, + inside: { + punctuation: { + pattern: /[,.|]/ + }, + operator: { + pattern: /#+|[-+*~=^@]/ + } + } + }, + punctuation: { + pattern: /\$\w:|[$:?.,|]/ + } + }, + alias: 'function' + }, + 'function-block': { + pattern: /\$XF:{[-\w.]+\?[-\w.]+(?:,(?:\|?(?:[-#.^+*~]*(?:[\w+][^$]*)|=(?:[\S+][^$]*)|@[-#]*(?:\w+.)[\w+.]+)?)*)?}:XF\$/, + inside: { + punctuation: { + pattern: /[$:{}?.,|]/ + } + }, + alias: 'function' + }, + 'directive-inline': { + pattern: /\$\w(?:#\d+\+?)?(?:\[[-\w.]+])?:[-\/\w.]+\$/, + inside: { + punctuation: { + pattern: /\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/, + inside: { + tag: { + pattern: /#\d/ + } + } + } + }, + alias: 'function' + }, + 'directive-block-open': { + pattern: /\$\w+:{|\$\w(?:#\d+\+?)?(?:\[[-\w.]+])?:[-\w.]+:{(![A-Z]+)?/, + inside: { + punctuation: { + pattern: /\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/, + inside: { + tag: { + pattern: /#\d/ + } + } + }, + attribute: { + pattern: /![A-Z]+$/, + inside: { + punctuation: { + pattern: /!/ + } + }, + alias: 'keyword' + } + }, + alias: 'function' + }, + 'directive-block-separator': { + pattern: /}:[-\w.]+:{/, + inside: { + punctuation: { + pattern: /[:{}]/ + } + }, + alias: 'function' + }, + 'directive-block-close': { + pattern: /}:[-\w.]+\$/, + inside: { + punctuation: { + pattern: /[:{}$]/ + } + }, + alias: 'function' + } + }) + Prism.languages.insertBefore( + 'inside', + 'punctuation', + { + variable: Prism.languages.xeora['function-inline'].inside['variable'] + }, + Prism.languages.xeora['function-block'] + ) + Prism.languages.xeoracube = Prism.languages.xeora + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_xeora.987a162f.js b/assets/js/react-syntax-highlighter_languages_refractor_xeora.987a162f.js new file mode 100644 index 000000000..2620dc527 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_xeora.987a162f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[6574],{7202:n=>{function t(n){!function(n){n.languages.xeora=n.languages.extend("markup",{constant:{pattern:/\$(?:DomainContents|PageRenderDuration)\$/,inside:{punctuation:{pattern:/\$/}}},variable:{pattern:/\$@?(?:#+|[-+*~=^])?[\w.]+\$/,inside:{punctuation:{pattern:/[$.]/},operator:{pattern:/#+|[-+*~=^@]/}}},"function-inline":{pattern:/\$F:[-\w.]+\?[-\w.]+(?:,(?:\|?(?:[-#.^+*~]*(?:[\w+][^$]*)|=(?:[\S+][^$]*)|@[-#]*(?:\w+.)[\w+.]+)?)*)?\$/,inside:{variable:{pattern:/(?:[,|])@?(?:#+|[-+*~=^])?[\w.]+/,inside:{punctuation:{pattern:/[,.|]/},operator:{pattern:/#+|[-+*~=^@]/}}},punctuation:{pattern:/\$\w:|[$:?.,|]/}},alias:"function"},"function-block":{pattern:/\$XF:{[-\w.]+\?[-\w.]+(?:,(?:\|?(?:[-#.^+*~]*(?:[\w+][^$]*)|=(?:[\S+][^$]*)|@[-#]*(?:\w+.)[\w+.]+)?)*)?}:XF\$/,inside:{punctuation:{pattern:/[$:{}?.,|]/}},alias:"function"},"directive-inline":{pattern:/\$\w(?:#\d+\+?)?(?:\[[-\w.]+])?:[-\/\w.]+\$/,inside:{punctuation:{pattern:/\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,inside:{tag:{pattern:/#\d/}}}},alias:"function"},"directive-block-open":{pattern:/\$\w+:{|\$\w(?:#\d+\+?)?(?:\[[-\w.]+])?:[-\w.]+:{(![A-Z]+)?/,inside:{punctuation:{pattern:/\$(?:\w:|C(?:\[|#\d))?|[:{[\]]/,inside:{tag:{pattern:/#\d/}}},attribute:{pattern:/![A-Z]+$/,inside:{punctuation:{pattern:/!/}},alias:"keyword"}},alias:"function"},"directive-block-separator":{pattern:/}:[-\w.]+:{/,inside:{punctuation:{pattern:/[:{}]/}},alias:"function"},"directive-block-close":{pattern:/}:[-\w.]+\$/,inside:{punctuation:{pattern:/[:{}$]/}},alias:"function"}}),n.languages.insertBefore("inside","punctuation",{variable:n.languages.xeora["function-inline"].inside.variable},n.languages.xeora["function-block"]),n.languages.xeoracube=n.languages.xeora}(n)}n.exports=t,t.displayName="xeora",t.aliases=["xeoracube"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_xojo.3b4ca97d.js b/assets/js/react-syntax-highlighter_languages_refractor_xojo.3b4ca97d.js new file mode 100644 index 000000000..6a2e9155c --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_xojo.3b4ca97d.js @@ -0,0 +1,38 @@ +"use strict"; +exports.id = 3116; +exports.ids = [3116]; +exports.modules = { + +/***/ 21301: +/***/ ((module) => { + + + +module.exports = xojo +xojo.displayName = 'xojo' +xojo.aliases = [] +function xojo(Prism) { + Prism.languages.xojo = { + comment: { + pattern: /(?:'|\/\/|Rem\b).+/i, + inside: { + keyword: /^Rem/i + } + }, + string: { + pattern: /"(?:""|[^"])*"/, + greedy: true + }, + number: [/(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i, /&[bchou][a-z\d]+/i], + symbol: /#(?:If|Else|ElseIf|Endif|Pragma)\b/i, + keyword: /\b(?:AddHandler|App|Array|As(?:signs)?|By(?:Ref|Val)|Break|Call|Case|Catch|Const|Continue|CurrentMethodName|Declare|Dim|Do(?:wnTo)?|Each|Else(?:If)?|End|Exit|Extends|False|Finally|For|Global|If|In|Lib|Loop|Me|Next|Nil|Optional|ParamArray|Raise(?:Event)?|ReDim|Rem|RemoveHandler|Return|Select|Self|Soft|Static|Step|Super|Then|To|True|Try|Ubound|Until|Using|Wend|While)\b/i, + operator: /<[=>]?|>=?|[+\-*\/\\^=]|\b(?:AddressOf|And|Ctype|IsA?|Mod|New|Not|Or|Xor|WeakAddressOf)\b/i, + punctuation: /[.,;:()]/ + } +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_xojo.bfcadb32.js b/assets/js/react-syntax-highlighter_languages_refractor_xojo.bfcadb32.js new file mode 100644 index 000000000..0086cf045 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_xojo.bfcadb32.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[3116],{1301:e=>{function a(e){e.languages.xojo={comment:{pattern:/(?:'|\/\/|Rem\b).+/i,inside:{keyword:/^Rem/i}},string:{pattern:/"(?:""|[^"])*"/,greedy:!0},number:[/(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,/&[bchou][a-z\d]+/i],symbol:/#(?:If|Else|ElseIf|Endif|Pragma)\b/i,keyword:/\b(?:AddHandler|App|Array|As(?:signs)?|By(?:Ref|Val)|Break|Call|Case|Catch|Const|Continue|CurrentMethodName|Declare|Dim|Do(?:wnTo)?|Each|Else(?:If)?|End|Exit|Extends|False|Finally|For|Global|If|In|Lib|Loop|Me|Next|Nil|Optional|ParamArray|Raise(?:Event)?|ReDim|Rem|RemoveHandler|Return|Select|Self|Soft|Static|Step|Super|Then|To|True|Try|Ubound|Until|Using|Wend|While)\b/i,operator:/<[=>]?|>=?|[+\-*\/\\^=]|\b(?:AddressOf|And|Ctype|IsA?|Mod|New|Not|Or|Xor|WeakAddressOf)\b/i,punctuation:/[.,;:()]/}}e.exports=a,a.displayName="xojo",a.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_xquery.567a1323.js b/assets/js/react-syntax-highlighter_languages_refractor_xquery.567a1323.js new file mode 100644 index 000000000..71a08d108 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_xquery.567a1323.js @@ -0,0 +1,207 @@ +"use strict"; +exports.id = 982; +exports.ids = [982]; +exports.modules = { + +/***/ 20349: +/***/ ((module) => { + + + +module.exports = xquery +xquery.displayName = 'xquery' +xquery.aliases = [] +function xquery(Prism) { + ;(function(Prism) { + Prism.languages.xquery = Prism.languages.extend('markup', { + 'xquery-comment': { + pattern: /\(:[\s\S]*?:\)/, + greedy: true, + alias: 'comment' + }, + string: { + pattern: /(["'])(?:\1\1|(?!\1)[\s\S])*\1/, + greedy: true + }, + extension: { + pattern: /\(#.+?#\)/, + alias: 'symbol' + }, + variable: /\$[\w-:]+/, + axis: { + pattern: /(^|[^-])(?:ancestor(?:-or-self)?|attribute|child|descendant(?:-or-self)?|following(?:-sibling)?|parent|preceding(?:-sibling)?|self)(?=::)/, + lookbehind: true, + alias: 'operator' + }, + 'keyword-operator': { + pattern: /(^|[^:-])\b(?:and|castable as|div|eq|except|ge|gt|idiv|instance of|intersect|is|le|lt|mod|ne|or|union)\b(?=$|[^:-])/, + lookbehind: true, + alias: 'operator' + }, + keyword: { + pattern: /(^|[^:-])\b(?:as|ascending|at|base-uri|boundary-space|case|cast as|collation|construction|copy-namespaces|declare|default|descending|else|empty (?:greatest|least)|encoding|every|external|for|function|if|import|in|inherit|lax|let|map|module|namespace|no-inherit|no-preserve|option|order(?: by|ed|ing)?|preserve|return|satisfies|schema|some|stable|strict|strip|then|to|treat as|typeswitch|unordered|validate|variable|version|where|xquery)\b(?=$|[^:-])/, + lookbehind: true + }, + function: /[\w-]+(?::[\w-]+)*(?=\s*\()/, + 'xquery-element': { + pattern: /(element\s+)[\w-]+(?::[\w-]+)*/, + lookbehind: true, + alias: 'tag' + }, + 'xquery-attribute': { + pattern: /(attribute\s+)[\w-]+(?::[\w-]+)*/, + lookbehind: true, + alias: 'attr-name' + }, + builtin: { + pattern: /(^|[^:-])\b(?:attribute|comment|document|element|processing-instruction|text|xs:(?:anyAtomicType|anyType|anyURI|base64Binary|boolean|byte|date|dateTime|dayTimeDuration|decimal|double|duration|ENTITIES|ENTITY|float|gDay|gMonth|gMonthDay|gYear|gYearMonth|hexBinary|ID|IDREFS?|int|integer|language|long|Name|NCName|negativeInteger|NMTOKENS?|nonNegativeInteger|nonPositiveInteger|normalizedString|NOTATION|positiveInteger|QName|short|string|time|token|unsigned(?:Byte|Int|Long|Short)|untyped(?:Atomic)?|yearMonthDuration))\b(?=$|[^:-])/, + lookbehind: true + }, + number: /\b\d+(?:\.\d+)?(?:E[+-]?\d+)?/, + operator: [ + /[+*=?|@]|\.\.?|:=|!=|<[=<]?|>[=>]?/, + { + pattern: /(\s)-(?=\s)/, + lookbehind: true + } + ], + punctuation: /[[\](){},;:/]/ + }) + Prism.languages.xquery.tag.pattern = /<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i + Prism.languages.xquery['tag'].inside[ + 'attr-value' + ].pattern = /=(?:("|')(?:\\[\s\S]|{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}|(?!\1)[^\\])*\1|[^\s'">=]+)/i + Prism.languages.xquery['tag'].inside['attr-value'].inside[ + 'punctuation' + ] = /^="|"$/ + Prism.languages.xquery['tag'].inside['attr-value'].inside['expression'] = { + // Allow for two levels of nesting + pattern: /{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}/, + inside: { + rest: Prism.languages.xquery + }, + alias: 'language-xquery' + } // The following will handle plain text inside tags + var stringifyToken = function(token) { + if (typeof token === 'string') { + return token + } + if (typeof token.content === 'string') { + return token.content + } + return token.content.map(stringifyToken).join('') + } + var walkTokens = function(tokens) { + var openedTags = [] + for (var i = 0; i < tokens.length; i++) { + var token = tokens[i] + var notTagNorBrace = false + if (typeof token !== 'string') { + if ( + token.type === 'tag' && + token.content[0] && + token.content[0].type === 'tag' + ) { + // We found a tag, now find its kind + if (token.content[0].content[0].content === '</') { + // Closing tag + if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].tagName === + stringifyToken(token.content[0].content[1]) + ) { + // Pop matching opening tag + openedTags.pop() + } + } else { + if (token.content[token.content.length - 1].content === '/>') { + // Autoclosed tag, ignore + } else { + // Opening tag + openedTags.push({ + tagName: stringifyToken(token.content[0].content[1]), + openedBraces: 0 + }) + } + } + } else if ( + openedTags.length > 0 && + token.type === 'punctuation' && + token.content === '{' && // Ignore `{{` + (!tokens[i + 1] || + tokens[i + 1].type !== 'punctuation' || + tokens[i + 1].content !== '{') && + (!tokens[i - 1] || + tokens[i - 1].type !== 'plain-text' || + tokens[i - 1].content !== '{') + ) { + // Here we might have entered an XQuery expression inside a tag + openedTags[openedTags.length - 1].openedBraces++ + } else if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].openedBraces > 0 && + token.type === 'punctuation' && + token.content === '}' + ) { + // Here we might have left an XQuery expression inside a tag + openedTags[openedTags.length - 1].openedBraces-- + } else if (token.type !== 'comment') { + notTagNorBrace = true + } + } + if (notTagNorBrace || typeof token === 'string') { + if ( + openedTags.length > 0 && + openedTags[openedTags.length - 1].openedBraces === 0 + ) { + // Here we are inside a tag, and not inside an XQuery expression. + // That's plain text: drop any tokens matched. + var plainText = stringifyToken(token) // And merge text with adjacent text + if ( + i < tokens.length - 1 && + (typeof tokens[i + 1] === 'string' || + tokens[i + 1].type === 'plain-text') + ) { + plainText += stringifyToken(tokens[i + 1]) + tokens.splice(i + 1, 1) + } + if ( + i > 0 && + (typeof tokens[i - 1] === 'string' || + tokens[i - 1].type === 'plain-text') + ) { + plainText = stringifyToken(tokens[i - 1]) + plainText + tokens.splice(i - 1, 1) + i-- + } + if (/^\s+$/.test(plainText)) { + tokens[i] = plainText + } else { + tokens[i] = new Prism.Token( + 'plain-text', + plainText, + null, + plainText + ) + } + } + } + if (token.content && typeof token.content !== 'string') { + walkTokens(token.content) + } + } + } + Prism.hooks.add('after-tokenize', function(env) { + if (env.language !== 'xquery') { + return + } + walkTokens(env.tokens) + }) + })(Prism) +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_xquery.91a41e00.js b/assets/js/react-syntax-highlighter_languages_refractor_xquery.91a41e00.js new file mode 100644 index 000000000..638ae9bfa --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_xquery.91a41e00.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[982],{349:e=>{function t(e){!function(e){e.languages.xquery=e.languages.extend("markup",{"xquery-comment":{pattern:/\(:[\s\S]*?:\)/,greedy:!0,alias:"comment"},string:{pattern:/(["'])(?:\1\1|(?!\1)[\s\S])*\1/,greedy:!0},extension:{pattern:/\(#.+?#\)/,alias:"symbol"},variable:/\$[\w-:]+/,axis:{pattern:/(^|[^-])(?:ancestor(?:-or-self)?|attribute|child|descendant(?:-or-self)?|following(?:-sibling)?|parent|preceding(?:-sibling)?|self)(?=::)/,lookbehind:!0,alias:"operator"},"keyword-operator":{pattern:/(^|[^:-])\b(?:and|castable as|div|eq|except|ge|gt|idiv|instance of|intersect|is|le|lt|mod|ne|or|union)\b(?=$|[^:-])/,lookbehind:!0,alias:"operator"},keyword:{pattern:/(^|[^:-])\b(?:as|ascending|at|base-uri|boundary-space|case|cast as|collation|construction|copy-namespaces|declare|default|descending|else|empty (?:greatest|least)|encoding|every|external|for|function|if|import|in|inherit|lax|let|map|module|namespace|no-inherit|no-preserve|option|order(?: by|ed|ing)?|preserve|return|satisfies|schema|some|stable|strict|strip|then|to|treat as|typeswitch|unordered|validate|variable|version|where|xquery)\b(?=$|[^:-])/,lookbehind:!0},function:/[\w-]+(?::[\w-]+)*(?=\s*\()/,"xquery-element":{pattern:/(element\s+)[\w-]+(?::[\w-]+)*/,lookbehind:!0,alias:"tag"},"xquery-attribute":{pattern:/(attribute\s+)[\w-]+(?::[\w-]+)*/,lookbehind:!0,alias:"attr-name"},builtin:{pattern:/(^|[^:-])\b(?:attribute|comment|document|element|processing-instruction|text|xs:(?:anyAtomicType|anyType|anyURI|base64Binary|boolean|byte|date|dateTime|dayTimeDuration|decimal|double|duration|ENTITIES|ENTITY|float|gDay|gMonth|gMonthDay|gYear|gYearMonth|hexBinary|ID|IDREFS?|int|integer|language|long|Name|NCName|negativeInteger|NMTOKENS?|nonNegativeInteger|nonPositiveInteger|normalizedString|NOTATION|positiveInteger|QName|short|string|time|token|unsigned(?:Byte|Int|Long|Short)|untyped(?:Atomic)?|yearMonthDuration))\b(?=$|[^:-])/,lookbehind:!0},number:/\b\d+(?:\.\d+)?(?:E[+-]?\d+)?/,operator:[/[+*=?|@]|\.\.?|:=|!=|<[=<]?|>[=>]?/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}],punctuation:/[[\](){},;:/]/}),e.languages.xquery.tag.pattern=/<\/?(?!\d)[^\s>\/=$<%]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/i,e.languages.xquery.tag.inside["attr-value"].pattern=/=(?:("|')(?:\\[\s\S]|{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}|(?!\1)[^\\])*\1|[^\s'">=]+)/i,e.languages.xquery.tag.inside["attr-value"].inside.punctuation=/^="|"$/,e.languages.xquery.tag.inside["attr-value"].inside.expression={pattern:/{(?!{)(?:{(?:{[^}]*}|[^}])*}|[^}])+}/,inside:{rest:e.languages.xquery},alias:"language-xquery"};var t=function(e){return"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(t).join("")},n=function(a){for(var o=[],i=0;i<a.length;i++){var r=a[i],s=!1;if("string"!=typeof r&&("tag"===r.type&&r.content[0]&&"tag"===r.content[0].type?"</"===r.content[0].content[0].content?o.length>0&&o[o.length-1].tagName===t(r.content[0].content[1])&&o.pop():"/>"===r.content[r.content.length-1].content||o.push({tagName:t(r.content[0].content[1]),openedBraces:0}):!(o.length>0&&"punctuation"===r.type&&"{"===r.content)||a[i+1]&&"punctuation"===a[i+1].type&&"{"===a[i+1].content||a[i-1]&&"plain-text"===a[i-1].type&&"{"===a[i-1].content?o.length>0&&o[o.length-1].openedBraces>0&&"punctuation"===r.type&&"}"===r.content?o[o.length-1].openedBraces--:"comment"!==r.type&&(s=!0):o[o.length-1].openedBraces++),(s||"string"==typeof r)&&o.length>0&&0===o[o.length-1].openedBraces){var l=t(r);i<a.length-1&&("string"==typeof a[i+1]||"plain-text"===a[i+1].type)&&(l+=t(a[i+1]),a.splice(i+1,1)),i>0&&("string"==typeof a[i-1]||"plain-text"===a[i-1].type)&&(l=t(a[i-1])+l,a.splice(i-1,1),i--),/^\s+$/.test(l)?a[i]=l:a[i]=new e.Token("plain-text",l,null,l)}r.content&&"string"!=typeof r.content&&n(r.content)}};e.hooks.add("after-tokenize",(function(e){"xquery"===e.language&&n(e.tokens)}))}(e)}e.exports=t,t.displayName="xquery",t.aliases=[]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_yaml.1faf58d7.js b/assets/js/react-syntax-highlighter_languages_refractor_yaml.1faf58d7.js new file mode 100644 index 000000000..9cc3229b1 --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_yaml.1faf58d7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[]).push([[5983],{5039:t=>{function a(t){t.languages.yaml={scalar:{pattern:/([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/,lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:/(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/,lookbehind:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\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*)?)?)(?=[ \t]*(?:$|,|]|}))/m,lookbehind:!0,alias:"number"},boolean:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},null:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im,lookbehind:!0,alias:"important"},string:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}|\s*#))/m,lookbehind:!0,greedy:!0},number:{pattern:/([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im,lookbehind:!0},tag:/![^\s]+/,important:/[&*][\w]+/,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},t.languages.yml=t.languages.yaml}t.exports=a,a.displayName="yaml",a.aliases=["yml"]}}]); \ No newline at end of file diff --git a/assets/js/react-syntax-highlighter_languages_refractor_yaml.7fbf1558.js b/assets/js/react-syntax-highlighter_languages_refractor_yaml.7fbf1558.js new file mode 100644 index 000000000..518d9a53d --- /dev/null +++ b/assets/js/react-syntax-highlighter_languages_refractor_yaml.7fbf1558.js @@ -0,0 +1,67 @@ +"use strict"; +exports.id = 5983; +exports.ids = [5983]; +exports.modules = { + +/***/ 65039: +/***/ ((module) => { + + + +module.exports = yaml +yaml.displayName = 'yaml' +yaml.aliases = ['yml'] +function yaml(Prism) { + Prism.languages.yaml = { + scalar: { + pattern: /([\-:]\s*(?:![^\s]+)?[ \t]*[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\2[^\r\n]+)*)/, + lookbehind: true, + alias: 'string' + }, + comment: /#.*/, + key: { + pattern: /(\s*(?:^|[:\-,[{\r\n?])[ \t]*(?:![^\s]+)?[ \t]*)[^\r\n{[\]},#\s]+?(?=\s*:\s)/, + lookbehind: true, + alias: 'atrule' + }, + directive: { + pattern: /(^[ \t]*)%.+/m, + lookbehind: true, + alias: 'important' + }, + datetime: { + pattern: /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:\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*)?)?)(?=[ \t]*(?:$|,|]|}))/m, + lookbehind: true, + alias: 'number' + }, + boolean: { + pattern: /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:true|false)[ \t]*(?=$|,|]|})/im, + lookbehind: true, + alias: 'important' + }, + null: { + pattern: /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)(?:null|~)[ \t]*(?=$|,|]|})/im, + lookbehind: true, + alias: 'important' + }, + string: { + pattern: /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)("|')(?:(?!\2)[^\\\r\n]|\\.)*\2(?=[ \t]*(?:$|,|]|}|\s*#))/m, + lookbehind: true, + greedy: true + }, + number: { + pattern: /([:\-,[{]\s*(?:![^\s]+)?[ \t]*)[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+\.?\d*|\.?\d+)(?:e[+-]?\d+)?|\.inf|\.nan)[ \t]*(?=$|,|]|})/im, + lookbehind: true + }, + tag: /![^\s]+/, + important: /[&*][\w]+/, + punctuation: /---|[:[\]{}\-,|>?]|\.\.\./ + } + Prism.languages.yml = Prism.languages.yaml +} + + +/***/ }) + +}; +; \ No newline at end of file diff --git a/assets/js/runtime~main.3fc27542.js b/assets/js/runtime~main.3fc27542.js new file mode 100644 index 000000000..80685d5d9 --- /dev/null +++ b/assets/js/runtime~main.3fc27542.js @@ -0,0 +1 @@ +(()=>{"use strict";var a,r,e,t,g,h={},_={};function c(a){var r=_[a];if(void 0!==r)return r.exports;var e=_[a]={id:a,loaded:!1,exports:{}};return h[a].call(e.exports,e,e.exports,c),e.loaded=!0,e.exports}c.m=h,c.c=_,a=[],c.O=(r,e,t,g)=>{if(!e){var h=1/0;for(l=0;l<a.length;l++){e=a[l][0],t=a[l][1],g=a[l][2];for(var _=!0,i=0;i<e.length;i++)(!1&g||h>=g)&&Object.keys(c.O).every((a=>c.O[a](e[i])))?e.splice(i--,1):(_=!1,g<h&&(h=g));if(_){a.splice(l--,1);var s=t();void 0!==s&&(r=s)}}return r}g=g||0;for(var l=a.length;l>0&&a[l-1][2]>g;l--)a[l]=a[l-1];a[l]=[e,t,g]},c.n=a=>{var r=a&&a.__esModule?()=>a.default:()=>a;return c.d(r,{a:r}),r},e=Object.getPrototypeOf?a=>Object.getPrototypeOf(a):a=>a.__proto__,c.t=function(a,t){if(1&t&&(a=this(a)),8&t)return a;if("object"==typeof a&&a){if(4&t&&a.__esModule)return a;if(16&t&&"function"==typeof a.then)return a}var g=Object.create(null);c.r(g);var h={};r=r||[null,e({}),e([]),e(e)];for(var _=2&t&&a;"object"==typeof _&&!~r.indexOf(_);_=e(_))Object.getOwnPropertyNames(_).forEach((r=>h[r]=()=>a[r]));return h.default=()=>a,c.d(g,h),g},c.d=(a,r)=>{for(var e in r)c.o(r,e)&&!c.o(a,e)&&Object.defineProperty(a,e,{enumerable:!0,get:r[e]})},c.f={},c.e=a=>Promise.all(Object.keys(c.f).reduce(((r,e)=>(c.f[e](a,r),r)),[])),c.u=a=>"assets/js/"+({53:"935f2afb",81:"react-syntax-highlighter_languages_refractor_properties",131:"react-syntax-highlighter_languages_refractor_clike",158:"react-syntax-highlighter_languages_refractor_glsl",189:"b6f6bc54",206:"react-syntax-highlighter_languages_refractor_wasm",215:"e771231d",226:"react-syntax-highlighter_languages_refractor_mel",342:"react-syntax-highlighter_languages_refractor_powershell",369:"react-syntax-highlighter_languages_refractor_ruby",400:"react-syntax-highlighter_languages_refractor_batch",672:"react-syntax-highlighter_languages_refractor_parser",710:"8a49c96a",741:"react-syntax-highlighter_languages_refractor_fsharp",849:"react-syntax-highlighter_languages_refractor_smarty",948:"react-syntax-highlighter_languages_refractor_bison",979:"react-syntax-highlighter_languages_refractor_protobuf",982:"react-syntax-highlighter_languages_refractor_xquery",1001:"react-syntax-highlighter_languages_refractor_rust",1007:"react-syntax-highlighter_languages_refractor_haskell",1130:"react-syntax-highlighter_languages_refractor_crystal",1167:"react-syntax-highlighter_languages_refractor_vhdl",1253:"react-syntax-highlighter_languages_refractor_wiki",1323:"react-syntax-highlighter_languages_refractor_liquid",1423:"react-syntax-highlighter_languages_refractor_soy",1438:"react-syntax-highlighter_languages_refractor_arff",1535:"ebbeac85",1554:"react-syntax-highlighter_languages_refractor_asciidoc",1621:"react-syntax-highlighter_languages_refractor_stylus",1751:"react-syntax-highlighter_languages_refractor_q",1768:"react-syntax-highlighter_languages_refractor_rip",1842:"4d4b16c0",1929:"react-syntax-highlighter_languages_refractor_vim",2013:"react-syntax-highlighter_languages_refractor_erlang",2044:"react-syntax-highlighter_languages_refractor_fortran",2051:"react-syntax-highlighter_languages_refractor_docker",2065:"react-syntax-highlighter_languages_refractor_autohotkey",2182:"react-syntax-highlighter_languages_refractor_eiffel",2227:"react-syntax-highlighter_languages_refractor_php",2240:"25433785",2348:"react-syntax-highlighter_languages_refractor_rest",2412:"547e2c82",2413:"react-syntax-highlighter_languages_refractor_icon",2496:"react-syntax-highlighter_languages_refractor_markup",2509:"react-syntax-highlighter_languages_refractor_tsx",2535:"814f3328",2547:"react-syntax-highlighter_languages_refractor_qore",2564:"react-syntax-highlighter_languages_refractor_git",2584:"react-syntax-highlighter_languages_refractor_erb",2646:"0d608b87",2822:"react-syntax-highlighter_languages_refractor_smalltalk",2865:"94015949",2891:"react-syntax-highlighter_languages_refractor_python",2980:"react-syntax-highlighter_languages_refractor_velocity",2996:"react-syntax-highlighter_languages_refractor_inform7",3025:"react-syntax-highlighter_languages_refractor_nim",3047:"react-syntax-highlighter_languages_refractor_markupTemplating",3071:"c21a21f5",3089:"a6aa9e1f",3116:"react-syntax-highlighter_languages_refractor_xojo",3140:"react-syntax-highlighter_languages_refractor_hsts",3224:"react-syntax-highlighter_languages_refractor_haxe",3236:"react-syntax-highlighter_languages_refractor_roboconf",3237:"1df93b7f",3318:"react-syntax-highlighter_languages_refractor_csharp",3327:"react-syntax-highlighter_languages_refractor_swift",3384:"react-syntax-highlighter_languages_refractor_arduino",3412:"react-syntax-highlighter_languages_refractor_abap",3444:"react-syntax-highlighter_languages_refractor_tt2",3502:"react-syntax-highlighter_languages_refractor_nsis",3520:"react-syntax-highlighter_languages_refractor_lisp",3600:"fe6674c8",3608:"9e4087bc",3657:"react-syntax-highlighter_languages_refractor_json",3694:"react-syntax-highlighter_languages_refractor_bro",3717:"react-syntax-highlighter_languages_refractor_d",3751:"3720c009",3818:"react-syntax-highlighter_languages_refractor_scala",3819:"react-syntax-highlighter_languages_refractor_keyman",3821:"react-syntax-highlighter_languages_refractor_nix",3846:"react-syntax-highlighter_languages_refractor_handlebars",3971:"react-syntax-highlighter_languages_refractor_actionscript",3980:"react-syntax-highlighter_languages_refractor_java",4045:"react-syntax-highlighter_languages_refractor_prolog",4052:"react-syntax-highlighter_languages_refractor_nginx",4069:"react-syntax-highlighter_languages_refractor_mizar",4098:"react-syntax-highlighter_languages_refractor_applescript",4121:"55960ee5",4157:"react-syntax-highlighter_languages_refractor_perl",4630:"react-syntax-highlighter_languages_refractor_kotlin",4657:"react-syntax-highlighter_languages_refractor_jsx",4666:"31d81a60",4698:"react-syntax-highlighter_languages_refractor_livescript",4701:"react-syntax-highlighter_languages_refractor_j",4732:"react-syntax-highlighter_languages_refractor_latex",4776:"f2237b27",4891:"d512bf0e",5008:"react-syntax-highlighter_languages_refractor_css",5014:"react-syntax-highlighter_languages_refractor_n4js",5047:"c0eb0060",5056:"react-syntax-highlighter_languages_refractor_ichigojam",5082:"react-syntax-highlighter/refractor-core-import",5085:"react-syntax-highlighter_languages_refractor_scheme",5165:"react-syntax-highlighter_languages_refractor_tcl",5259:"react-syntax-highlighter_languages_refractor_groovy",5299:"react-syntax-highlighter_languages_refractor_csp",5378:"3ba8fa9f",5508:"react-syntax-highlighter_languages_refractor_julia",5524:"react-syntax-highlighter_languages_refractor_apacheconf",5539:"react-syntax-highlighter_languages_refractor_brainfuck",5696:"react-syntax-highlighter_languages_refractor_asm6502",5793:"react-syntax-highlighter_languages_refractor_phpExtras",5809:"cffc60f8",5867:"react-syntax-highlighter_languages_refractor_gedcom",5896:"react-syntax-highlighter_languages_refractor_vbnet",5951:"react-syntax-highlighter_languages_refractor_less",5983:"react-syntax-highlighter_languages_refractor_yaml",6051:"react-syntax-highlighter_languages_refractor_gherkin",6084:"react-syntax-highlighter_languages_refractor_ada",6103:"ccc49370",6118:"react-syntax-highlighter_languages_refractor_coffeescript",6247:"react-syntax-highlighter_languages_refractor_diff",6343:"react-syntax-highlighter_languages_refractor_elixir",6487:"react-syntax-highlighter_languages_refractor_haml",6495:"react-syntax-highlighter_languages_refractor_ini",6508:"react-syntax-highlighter_languages_refractor_http",6549:"995533e1",6558:"react-syntax-highlighter_languages_refractor_visualBasic",6574:"react-syntax-highlighter_languages_refractor_xeora",6626:"react-syntax-highlighter_languages_refractor_go",6670:"react-syntax-highlighter_languages_refractor_apl",6749:"react-syntax-highlighter_languages_refractor_hpkp",6766:"56c273c5",6861:"react-syntax-highlighter_languages_refractor_puppet",6975:"react-syntax-highlighter_languages_refractor_tap",7055:"react-syntax-highlighter_languages_refractor_sql",7097:"react-syntax-highlighter_languages_refractor_textile",7253:"react-syntax-highlighter_languages_refractor_nasm",7279:"react-syntax-highlighter_languages_refractor_javascript",7286:"react-syntax-highlighter_languages_refractor_scss",7475:"react-syntax-highlighter_languages_refractor_cssExtras",7504:"react-syntax-highlighter_languages_refractor_basic",7576:"react-syntax-highlighter_languages_refractor_makefile",7658:"react-syntax-highlighter_languages_refractor_oz",7719:"react-syntax-highlighter_languages_refractor_lolcode",7769:"react-syntax-highlighter_languages_refractor_dart",7801:"react-syntax-highlighter_languages_refractor_io",7833:"react-syntax-highlighter_languages_refractor_pascal",7838:"react-syntax-highlighter_languages_refractor_elm",7882:"react-syntax-highlighter_languages_refractor_r",7899:"react-syntax-highlighter_languages_refractor_django",7918:"17896441",7966:"react-syntax-highlighter_languages_refractor_clojure",8e3:"react-syntax-highlighter_languages_refractor_opencl",8030:"react-syntax-highlighter_languages_refractor_aspnet",8067:"react-syntax-highlighter_languages_refractor_sas",8119:"react-syntax-highlighter_languages_refractor_lua",8333:"react-syntax-highlighter_languages_refractor_autoit",8336:"react-syntax-highlighter_languages_refractor_objectivec",8404:"react-syntax-highlighter_languages_refractor_matlab",8458:"react-syntax-highlighter_languages_refractor_jolie",8513:"react-syntax-highlighter_languages_refractor_monkey",8765:"react-syntax-highlighter_languages_refractor_bash",8781:"38cc22d9",8811:"react-syntax-highlighter_languages_refractor_reason",8819:"react-syntax-highlighter_languages_refractor_verilog",8827:"react-syntax-highlighter_languages_refractor_twig",8840:"react-syntax-highlighter_languages_refractor_plsql",8921:"react-syntax-highlighter_languages_refractor_graphql",8950:"react-syntax-highlighter_languages_refractor_c",8992:"react-syntax-highlighter_languages_refractor_ocaml",9111:"f94952d7",9291:"react-syntax-highlighter_languages_refractor_renpy",9315:"react-syntax-highlighter_languages_refractor_pure",9461:"react-syntax-highlighter_languages_refractor_typescript",9514:"1be78505",9692:"react-syntax-highlighter_languages_refractor_cpp",9722:"b8a8b340",9742:"react-syntax-highlighter_languages_refractor_flow",9770:"react-syntax-highlighter_languages_refractor_processing",9797:"react-syntax-highlighter_languages_refractor_sass",9835:"react-syntax-highlighter_languages_refractor_markdown",9851:"react-syntax-highlighter_languages_refractor_pug",9872:"f3bd417c",9924:"df203c0f",9979:"react-syntax-highlighter_languages_refractor_parigp"}[a]||a)+"."+{53:"aa579c6b",81:"237c7511",131:"96409169",158:"b65557a6",189:"b9ffbd90",206:"1c3b5ad7",215:"fe2120e4",226:"409eb688",342:"40a820a3",369:"09a46cf4",400:"9e4787e6",672:"7caea74e",710:"6adbe3ec",741:"e1390f70",849:"08222491",948:"0792de46",979:"c760fa6c",982:"91a41e00",1001:"138f676f",1007:"dcaa337c",1130:"37d79a34",1167:"4f0734f6",1253:"03061a3c",1323:"5861d940",1423:"a9f290c6",1438:"68e650ea",1535:"392f3cdc",1554:"5ebb45da",1621:"3d2e7195",1751:"81b3dd06",1768:"7db00dad",1842:"7bbc3c3b",1929:"8aac0526",2013:"d2284921",2044:"8bc320ec",2051:"2b9edb3d",2065:"e0945af7",2182:"d40538cc",2227:"3e131b48",2240:"49cba232",2252:"3fa558ad",2348:"c1c30f77",2412:"fdfd6d38",2413:"d39f29f8",2496:"b37432d1",2509:"03fd1508",2535:"107a60a0",2547:"4be95dac",2564:"5691e566",2584:"d07119ee",2646:"2c2d2c1e",2822:"9a058a40",2865:"113a9c71",2891:"374d36f1",2980:"a0191111",2996:"4b42c760",3025:"8cee27cc",3047:"40dc9d85",3071:"e26bf9d3",3089:"5d0325ed",3116:"bfcadb32",3140:"2c734d5e",3224:"5c1dbfc7",3236:"28ea6486",3237:"03fb2257",3318:"f1b58c0f",3327:"11e6a851",3384:"90976a56",3412:"52db2474",3444:"3507d3cb",3502:"d791ead2",3520:"6a751930",3600:"6d6409c6",3608:"9e0c12ec",3657:"59b8b15f",3694:"0dfbf8b3",3717:"60c5cccc",3751:"ff51a9ee",3818:"ea29acb6",3819:"5c625d4d",3821:"e5f674b2",3846:"98975109",3971:"50b90d07",3980:"7cb15ab8",4045:"ad37b162",4052:"9850bb35",4069:"ef4fef1f",4098:"7edd58ca",4121:"237c06ab",4157:"07d8cce0",4630:"59923adf",4657:"3f3349ac",4666:"29449a25",4698:"2ea254a8",4701:"9b42a226",4732:"ba040658",4776:"9dfb2216",4891:"a0151f74",4972:"4502320a",5008:"b71c0003",5014:"c0dd0131",5047:"ff522a80",5056:"1c8118d0",5082:"50b52eb3",5085:"a98bd00e",5165:"05f06cb2",5259:"6616ac51",5299:"4a54fe69",5378:"afb35fef",5508:"735b2336",5524:"3864ba94",5539:"5a05e7db",5696:"4731dd8e",5793:"15b447bc",5809:"c7e2b74e",5867:"95e27463",5896:"ddd4e43f",5951:"7878f75a",5983:"1faf58d7",6048:"933a9962",6051:"798dee61",6084:"810b7b73",6103:"4914a03e",6118:"b32bf02f",6247:"455dc42c",6343:"9b624bc1",6487:"1ea79bf3",6495:"b6274ab5",6508:"38cfb80d",6549:"1b81c85e",6558:"57b8dde4",6574:"987a162f",6626:"feaf214e",6670:"9757dd44",6749:"94b3c31c",6766:"930ad200",6861:"66df5a3e",6975:"5d931a5c",7036:"bde6ae16",7055:"9099a250",7097:"f64df953",7253:"9c7dbc68",7279:"e60db6fc",7286:"5b8c9052",7475:"acbc8b3c",7504:"75124d16",7576:"5c3e216b",7658:"9b54401b",7719:"499fe289",7769:"fc386fed",7801:"367214df",7833:"749a7257",7838:"1c9cad17",7882:"635ac7a8",7899:"d1c72479",7918:"8e8a22a5",7966:"828ab4e9",8e3:"85faa382",8030:"6e993221",8067:"f39d6f7c",8119:"95a20b40",8333:"325f567d",8336:"9e2a00d2",8404:"fb6b728f",8458:"e6083a86",8513:"2079520d",8765:"718e3894",8781:"5d4a7144",8811:"cdfb4347",8819:"f74c46b1",8827:"14ec5157",8840:"4ba7b65f",8921:"e44549a3",8950:"aeed971b",8992:"520df09d",9111:"8d0cffd4",9291:"27207ad9",9315:"9f24f7d7",9461:"83d39f79",9514:"433e1c98",9692:"c40cbeba",9722:"e1f5335a",9742:"78455277",9770:"5d72be35",9797:"7c9661d3",9835:"b0aa4135",9851:"478cf3e8",9872:"d3e0e816",9924:"852a4cee",9979:"202382a5"}[a]+".js",c.miniCssF=a=>{},c.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(a){if("object"==typeof window)return window}}(),c.o=(a,r)=>Object.prototype.hasOwnProperty.call(a,r),t={},g="github-pages:",c.l=(a,r,e,h)=>{if(t[a])t[a].push(r);else{var _,i;if(void 0!==e)for(var s=document.getElementsByTagName("script"),l=0;l<s.length;l++){var n=s[l];if(n.getAttribute("src")==a||n.getAttribute("data-webpack")==g+e){_=n;break}}_||(i=!0,(_=document.createElement("script")).charset="utf-8",_.timeout=120,c.nc&&_.setAttribute("nonce",c.nc),_.setAttribute("data-webpack",g+e),_.src=a),t[a]=[r];var f=(r,e)=>{_.onerror=_.onload=null,clearTimeout(o);var g=t[a];if(delete t[a],_.parentNode&&_.parentNode.removeChild(_),g&&g.forEach((a=>a(e))),r)return r(e)},o=setTimeout(f.bind(null,void 0,{type:"timeout",target:_}),12e4);_.onerror=f.bind(null,_.onerror),_.onload=f.bind(null,_.onload),i&&document.head.appendChild(_)}},c.r=a=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})},c.p="/azure-webpubsub/",c.gca=function(a){return a={17896441:"7918",25433785:"2240",94015949:"2865","935f2afb":"53","react-syntax-highlighter_languages_refractor_properties":"81","react-syntax-highlighter_languages_refractor_clike":"131","react-syntax-highlighter_languages_refractor_glsl":"158",b6f6bc54:"189","react-syntax-highlighter_languages_refractor_wasm":"206",e771231d:"215","react-syntax-highlighter_languages_refractor_mel":"226","react-syntax-highlighter_languages_refractor_powershell":"342","react-syntax-highlighter_languages_refractor_ruby":"369","react-syntax-highlighter_languages_refractor_batch":"400","react-syntax-highlighter_languages_refractor_parser":"672","8a49c96a":"710","react-syntax-highlighter_languages_refractor_fsharp":"741","react-syntax-highlighter_languages_refractor_smarty":"849","react-syntax-highlighter_languages_refractor_bison":"948","react-syntax-highlighter_languages_refractor_protobuf":"979","react-syntax-highlighter_languages_refractor_xquery":"982","react-syntax-highlighter_languages_refractor_rust":"1001","react-syntax-highlighter_languages_refractor_haskell":"1007","react-syntax-highlighter_languages_refractor_crystal":"1130","react-syntax-highlighter_languages_refractor_vhdl":"1167","react-syntax-highlighter_languages_refractor_wiki":"1253","react-syntax-highlighter_languages_refractor_liquid":"1323","react-syntax-highlighter_languages_refractor_soy":"1423","react-syntax-highlighter_languages_refractor_arff":"1438",ebbeac85:"1535","react-syntax-highlighter_languages_refractor_asciidoc":"1554","react-syntax-highlighter_languages_refractor_stylus":"1621","react-syntax-highlighter_languages_refractor_q":"1751","react-syntax-highlighter_languages_refractor_rip":"1768","4d4b16c0":"1842","react-syntax-highlighter_languages_refractor_vim":"1929","react-syntax-highlighter_languages_refractor_erlang":"2013","react-syntax-highlighter_languages_refractor_fortran":"2044","react-syntax-highlighter_languages_refractor_docker":"2051","react-syntax-highlighter_languages_refractor_autohotkey":"2065","react-syntax-highlighter_languages_refractor_eiffel":"2182","react-syntax-highlighter_languages_refractor_php":"2227","react-syntax-highlighter_languages_refractor_rest":"2348","547e2c82":"2412","react-syntax-highlighter_languages_refractor_icon":"2413","react-syntax-highlighter_languages_refractor_markup":"2496","react-syntax-highlighter_languages_refractor_tsx":"2509","814f3328":"2535","react-syntax-highlighter_languages_refractor_qore":"2547","react-syntax-highlighter_languages_refractor_git":"2564","react-syntax-highlighter_languages_refractor_erb":"2584","0d608b87":"2646","react-syntax-highlighter_languages_refractor_smalltalk":"2822","react-syntax-highlighter_languages_refractor_python":"2891","react-syntax-highlighter_languages_refractor_velocity":"2980","react-syntax-highlighter_languages_refractor_inform7":"2996","react-syntax-highlighter_languages_refractor_nim":"3025","react-syntax-highlighter_languages_refractor_markupTemplating":"3047",c21a21f5:"3071",a6aa9e1f:"3089","react-syntax-highlighter_languages_refractor_xojo":"3116","react-syntax-highlighter_languages_refractor_hsts":"3140","react-syntax-highlighter_languages_refractor_haxe":"3224","react-syntax-highlighter_languages_refractor_roboconf":"3236","1df93b7f":"3237","react-syntax-highlighter_languages_refractor_csharp":"3318","react-syntax-highlighter_languages_refractor_swift":"3327","react-syntax-highlighter_languages_refractor_arduino":"3384","react-syntax-highlighter_languages_refractor_abap":"3412","react-syntax-highlighter_languages_refractor_tt2":"3444","react-syntax-highlighter_languages_refractor_nsis":"3502","react-syntax-highlighter_languages_refractor_lisp":"3520",fe6674c8:"3600","9e4087bc":"3608","react-syntax-highlighter_languages_refractor_json":"3657","react-syntax-highlighter_languages_refractor_bro":"3694","react-syntax-highlighter_languages_refractor_d":"3717","3720c009":"3751","react-syntax-highlighter_languages_refractor_scala":"3818","react-syntax-highlighter_languages_refractor_keyman":"3819","react-syntax-highlighter_languages_refractor_nix":"3821","react-syntax-highlighter_languages_refractor_handlebars":"3846","react-syntax-highlighter_languages_refractor_actionscript":"3971","react-syntax-highlighter_languages_refractor_java":"3980","react-syntax-highlighter_languages_refractor_prolog":"4045","react-syntax-highlighter_languages_refractor_nginx":"4052","react-syntax-highlighter_languages_refractor_mizar":"4069","react-syntax-highlighter_languages_refractor_applescript":"4098","55960ee5":"4121","react-syntax-highlighter_languages_refractor_perl":"4157","react-syntax-highlighter_languages_refractor_kotlin":"4630","react-syntax-highlighter_languages_refractor_jsx":"4657","31d81a60":"4666","react-syntax-highlighter_languages_refractor_livescript":"4698","react-syntax-highlighter_languages_refractor_j":"4701","react-syntax-highlighter_languages_refractor_latex":"4732",f2237b27:"4776",d512bf0e:"4891","react-syntax-highlighter_languages_refractor_css":"5008","react-syntax-highlighter_languages_refractor_n4js":"5014",c0eb0060:"5047","react-syntax-highlighter_languages_refractor_ichigojam":"5056","react-syntax-highlighter/refractor-core-import":"5082","react-syntax-highlighter_languages_refractor_scheme":"5085","react-syntax-highlighter_languages_refractor_tcl":"5165","react-syntax-highlighter_languages_refractor_groovy":"5259","react-syntax-highlighter_languages_refractor_csp":"5299","3ba8fa9f":"5378","react-syntax-highlighter_languages_refractor_julia":"5508","react-syntax-highlighter_languages_refractor_apacheconf":"5524","react-syntax-highlighter_languages_refractor_brainfuck":"5539","react-syntax-highlighter_languages_refractor_asm6502":"5696","react-syntax-highlighter_languages_refractor_phpExtras":"5793",cffc60f8:"5809","react-syntax-highlighter_languages_refractor_gedcom":"5867","react-syntax-highlighter_languages_refractor_vbnet":"5896","react-syntax-highlighter_languages_refractor_less":"5951","react-syntax-highlighter_languages_refractor_yaml":"5983","react-syntax-highlighter_languages_refractor_gherkin":"6051","react-syntax-highlighter_languages_refractor_ada":"6084",ccc49370:"6103","react-syntax-highlighter_languages_refractor_coffeescript":"6118","react-syntax-highlighter_languages_refractor_diff":"6247","react-syntax-highlighter_languages_refractor_elixir":"6343","react-syntax-highlighter_languages_refractor_haml":"6487","react-syntax-highlighter_languages_refractor_ini":"6495","react-syntax-highlighter_languages_refractor_http":"6508","995533e1":"6549","react-syntax-highlighter_languages_refractor_visualBasic":"6558","react-syntax-highlighter_languages_refractor_xeora":"6574","react-syntax-highlighter_languages_refractor_go":"6626","react-syntax-highlighter_languages_refractor_apl":"6670","react-syntax-highlighter_languages_refractor_hpkp":"6749","56c273c5":"6766","react-syntax-highlighter_languages_refractor_puppet":"6861","react-syntax-highlighter_languages_refractor_tap":"6975","react-syntax-highlighter_languages_refractor_sql":"7055","react-syntax-highlighter_languages_refractor_textile":"7097","react-syntax-highlighter_languages_refractor_nasm":"7253","react-syntax-highlighter_languages_refractor_javascript":"7279","react-syntax-highlighter_languages_refractor_scss":"7286","react-syntax-highlighter_languages_refractor_cssExtras":"7475","react-syntax-highlighter_languages_refractor_basic":"7504","react-syntax-highlighter_languages_refractor_makefile":"7576","react-syntax-highlighter_languages_refractor_oz":"7658","react-syntax-highlighter_languages_refractor_lolcode":"7719","react-syntax-highlighter_languages_refractor_dart":"7769","react-syntax-highlighter_languages_refractor_io":"7801","react-syntax-highlighter_languages_refractor_pascal":"7833","react-syntax-highlighter_languages_refractor_elm":"7838","react-syntax-highlighter_languages_refractor_r":"7882","react-syntax-highlighter_languages_refractor_django":"7899","react-syntax-highlighter_languages_refractor_clojure":"7966","react-syntax-highlighter_languages_refractor_opencl":"8000","react-syntax-highlighter_languages_refractor_aspnet":"8030","react-syntax-highlighter_languages_refractor_sas":"8067","react-syntax-highlighter_languages_refractor_lua":"8119","react-syntax-highlighter_languages_refractor_autoit":"8333","react-syntax-highlighter_languages_refractor_objectivec":"8336","react-syntax-highlighter_languages_refractor_matlab":"8404","react-syntax-highlighter_languages_refractor_jolie":"8458","react-syntax-highlighter_languages_refractor_monkey":"8513","react-syntax-highlighter_languages_refractor_bash":"8765","38cc22d9":"8781","react-syntax-highlighter_languages_refractor_reason":"8811","react-syntax-highlighter_languages_refractor_verilog":"8819","react-syntax-highlighter_languages_refractor_twig":"8827","react-syntax-highlighter_languages_refractor_plsql":"8840","react-syntax-highlighter_languages_refractor_graphql":"8921","react-syntax-highlighter_languages_refractor_c":"8950","react-syntax-highlighter_languages_refractor_ocaml":"8992",f94952d7:"9111","react-syntax-highlighter_languages_refractor_renpy":"9291","react-syntax-highlighter_languages_refractor_pure":"9315","react-syntax-highlighter_languages_refractor_typescript":"9461","1be78505":"9514","react-syntax-highlighter_languages_refractor_cpp":"9692",b8a8b340:"9722","react-syntax-highlighter_languages_refractor_flow":"9742","react-syntax-highlighter_languages_refractor_processing":"9770","react-syntax-highlighter_languages_refractor_sass":"9797","react-syntax-highlighter_languages_refractor_markdown":"9835","react-syntax-highlighter_languages_refractor_pug":"9851",f3bd417c:"9872",df203c0f:"9924","react-syntax-highlighter_languages_refractor_parigp":"9979"}[a]||a,c.p+c.u(a)},(()=>{var a={1303:0,532:0};c.f.j=(r,e)=>{var t=c.o(a,r)?a[r]:void 0;if(0!==t)if(t)e.push(t[2]);else if(/^(1303|532)$/.test(r))a[r]=0;else{var g=new Promise(((e,g)=>t=a[r]=[e,g]));e.push(t[2]=g);var h=c.p+c.u(r),_=new Error;c.l(h,(e=>{if(c.o(a,r)&&(0!==(t=a[r])&&(a[r]=void 0),t)){var g=e&&("load"===e.type?"missing":e.type),h=e&&e.target&&e.target.src;_.message="Loading chunk "+r+" failed.\n("+g+": "+h+")",_.name="ChunkLoadError",_.type=g,_.request=h,t[1](_)}}),"chunk-"+r,r)}},c.O.j=r=>0===a[r];var r=(r,e)=>{var t,g,h=e[0],_=e[1],i=e[2],s=0;if(h.some((r=>0!==a[r]))){for(t in _)c.o(_,t)&&(c.m[t]=_[t]);if(i)var l=i(c)}for(r&&r(e);s<h.length;s++)g=h[s],c.o(a,g)&&a[g]&&a[g][0](),a[g]=0;return c.O(l)},e=self.webpackChunkgithub_pages=self.webpackChunkgithub_pages||[];e.forEach(r.bind(null,0)),e.push=r.bind(null,e.push.bind(e))})()})(); \ No newline at end of file diff --git a/blog.html b/blog.html new file mode 100644 index 000000000..abfbc48fa --- /dev/null +++ b/blog.html @@ -0,0 +1,34 @@ +<!doctype html> +<html lang="en" dir="ltr" class="blog-wrapper blog-list-page plugin-blog plugin-id-default"> +<head> +<meta charset="UTF-8"> +<meta name="generator" content="Docusaurus v2.2.0"> +<title data-rh="true">Blog | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

· 4 min read
Kevin Guo

TL;DR

Socket.IO library is natively supported on Azure.

Since we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it’s suitable for use in production.

🔗 Follow this quickstarts guide to try out the feature.

🔗 Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.

Solve scalability issue without code rewrite

When we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It’s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it’s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago.

Developers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what’s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure’s massive scale (million+ concurrent users).

Introduce additional benefits to enterprise-level applications

Web PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features.

  • Cross-region replication to make your application more resilient by running in independent Azure regions
  • Custom domain to add an extra layer of security
  • Auto-scaling to dynamically scale up and down based on usage

An example showing how easy it is to migrate a Socket.IO app to Azure

Server-side code

Developers only need to call useAzureSocketIO() to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program.

server.js
const { Server } = require("socket.io");
const { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");

let io = new Server(3000);

// Use the following line to integrate with Web PubSub for Socket.IO
useAzureSocketIO(io, {
hub: "Hub", // The hub name can be any valid string.
connectionString: "<connection-string>"
});

io.on("connection", (socket) => {
// Sends a message to the client
socket.emit("hello", "world");

// Receives a message from the client
socket.on("howdy", (arg) => {
console.log(arg); // Prints "stranger"
})

Client-side code

The change to the client-side code is also minimal. Notice that we are using socket.io-client package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program.

client.js
const io = require("socket.io-client");

const socket = io("<web-pubsub-socketio-endpoint>", {
path: "/clients/socketio/hubs/Hub",
});

// Receives a message from the server
socket.on("hello", (arg) => {
console.log(arg);
});

// Sends a message to the server
socket.emit("howdy", "stranger")

How does it work?

As you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if “I need to send messages to 1000+ clients”. All that’s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this.

Architecture of Socket.IO managed by Azure

You can read more about how it works behind the scenes 🔗 by reading the article.

Now generally available.

Since public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure’s ticket system.

Resources and references

· 3 min read
Jialin Xin
Kevin Guo

Summary

This article is the second of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Full-duplex

To put it simply, “full-duplex” means that data can be transmitted at the same time in both directions. Like “bidirectional” we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the TIMING of sending data.

A phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time.

A walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak.

Picture of a walkie-talkie

The web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie.

Imagine if you are talking with your grandma using a walkie-talkie and you ask “Grandma, what’s like when you were growing up in the countryside?” Grandma presses the “Talk button” and she starts from the Great Depression, World War 1 and on with World War 2… While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.)

Picture of a grandma and her granddaughter

The walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users’ screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web.

To conclude

“Bidirectional” and “full-duplex” are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications. +Some scenarios that can be enabled by WebSocket

Credits:
+The walkie-talkie and the grandma photographs were taken by 🔗 cottonbro studio.

· 3 min read
Jialin Xin
Kevin Guo

Summary

This article is the first of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Let us unpack this loaded sentence together and try to understand the italicized words (technical jargon).

Bidirectional

The prefix “bi-“ means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions.

Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking

However, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.  In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit www.nytimes.com, the browser sends an HTTP request on the user’s behalf and waits for an HTTP response from its server.

What is relevant to our discussion here is that the client ALWAYS initiates the communication, in other words, the client always asks before the server responds. We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet.

Client makes request and server responds.

As the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web.

WebSocket enables bi-directional communication

In the second part, we will explore the idea of “full-duplex”.


Credits:
+The bicycle photograph is taken by 🔗 Philipp M.
+The bi-fold door photograph is taken by 🔗 sena.

· One min read
Wanpeng Li

This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.

Azure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates.

Check out the demos on the site and let us know what you think.

+ + + + \ No newline at end of file diff --git a/blog/archive.html b/blog/archive.html new file mode 100644 index 000000000..9b36a3585 --- /dev/null +++ b/blog/archive.html @@ -0,0 +1,28 @@ + + + + + +Archive | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/blog/atom.xml b/blog/atom.xml new file mode 100644 index 000000000..bb83f1b77 --- /dev/null +++ b/blog/atom.xml @@ -0,0 +1,72 @@ + + + https://azure.github.io/azure-webpubsub/blog + Demos for Azure Web PubSub Blog + 2023-11-20T00:00:00.000Z + https://github.com/jpmonette/feed + + Demos for Azure Web PubSub Blog + https://azure.github.io/azure-webpubsub/img/favicon.ico + + <![CDATA[Azure Web PubSub for Socket.IO is now generally available]]> + azure-web-pubsub-for-socketio-generally-available + + 2023-11-20T00:00:00.000Z + + TL;DR

Socket.IO library is natively supported on Azure.

Since we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it’s suitable for use in production.

🔗 Follow this quickstarts guide to try out the feature.

🔗 Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.

Solve scalability issue without code rewrite

When we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It’s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it’s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago.

Developers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what’s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure’s massive scale (million+ concurrent users).

Introduce additional benefits to enterprise-level applications

Web PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features.

  • Cross-region replication to make your application more resilient by running in independent Azure regions
  • Custom domain to add an extra layer of security
  • Auto-scaling to dynamically scale up and down based on usage

An example showing how easy it is to migrate a Socket.IO app to Azure

Server-side code

Developers only need to call useAzureSocketIO() to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program.

server.js
const { Server } = require("socket.io");
const { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");

let io = new Server(3000);

// Use the following line to integrate with Web PubSub for Socket.IO
useAzureSocketIO(io, {
hub: "Hub", // The hub name can be any valid string.
connectionString: "<connection-string>"
});

io.on("connection", (socket) => {
// Sends a message to the client
socket.emit("hello", "world");

// Receives a message from the client
socket.on("howdy", (arg) => {
console.log(arg); // Prints "stranger"
})

Client-side code

The change to the client-side code is also minimal. Notice that we are using socket.io-client package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program.

client.js
const io = require("socket.io-client");

const socket = io("<web-pubsub-socketio-endpoint>", {
path: "/clients/socketio/hubs/Hub",
});

// Receives a message from the server
socket.on("hello", (arg) => {
console.log(arg);
});

// Sends a message to the server
socket.emit("howdy", "stranger")

How does it work?

As you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if “I need to send messages to 1000+ clients”. All that’s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this.

Architecture of Socket.IO managed by Azure

You can read more about how it works behind the scenes 🔗 by reading the article.

Now generally available.

Since public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure’s ticket system.

Resources and references

]]>
+ + Kevin Guo + https://github.com/kevinguo-ed + +
+ + <![CDATA[What is WebSocket? (part 2/2)]]> + what_is_websocket_part2 + + 2022-11-25T00:00:00.000Z + + Summary

This article is the second of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Full-duplex

To put it simply, “full-duplex” means that data can be transmitted at the same time in both directions. Like “bidirectional” we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the TIMING of sending data.

A phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time.

A walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak.

Picture of a walkie-talkie

The web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie.

Imagine if you are talking with your grandma using a walkie-talkie and you ask “Grandma, what’s like when you were growing up in the countryside?” Grandma presses the “Talk button” and she starts from the Great Depression, World War 1 and on with World War 2… While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.)

Picture of a grandma and her granddaughter

The walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users’ screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web.

To conclude

“Bidirectional” and “full-duplex” are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications. +Some scenarios that can be enabled by WebSocket

Credits:
+The walkie-talkie and the grandma photographs were taken by 🔗 cottonbro studio.

]]>
+ + Jialin Xin + https://github.com/JialinXin + + + Kevin Guo + https://github.com/kevinguo-ed + +
+ + <![CDATA[What is WebSocket? (part 1/2)]]> + what_is_websocket_part1 + + 2022-11-14T00:00:00.000Z + + Summary

This article is the first of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Let us unpack this loaded sentence together and try to understand the italicized words (technical jargon).

Bidirectional

The prefix “bi-“ means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions.

Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking

However, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.  In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit www.nytimes.com, the browser sends an HTTP request on the user’s behalf and waits for an HTTP response from its server.

What is relevant to our discussion here is that the client ALWAYS initiates the communication, in other words, the client always asks before the server responds. We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet.

Client makes request and server responds.

As the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web.

WebSocket enables bi-directional communication

In the second part, we will explore the idea of “full-duplex”.


Credits:
+The bicycle photograph is taken by 🔗 Philipp M.
+The bi-fold door photograph is taken by 🔗 sena.

]]>
+ + Jialin Xin + https://github.com/JialinXin + + + Kevin Guo + https://github.com/kevinguo-ed + +
+ + <![CDATA[Welcome]]> + welcome + + 2022-06-29T00:00:00.000Z + + This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.

Azure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates.

Check out the demos on the site and let us know what you think.

]]>
+ + Wanpeng Li + https://github.com/wanlwanl + +
+
\ No newline at end of file diff --git a/blog/azure-web-pubsub-for-socketio-generally-available.html b/blog/azure-web-pubsub-for-socketio-generally-available.html new file mode 100644 index 000000000..fd99f117b --- /dev/null +++ b/blog/azure-web-pubsub-for-socketio-generally-available.html @@ -0,0 +1,28 @@ + + + + + +Azure Web PubSub for Socket.IO is now generally available | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

Azure Web PubSub for Socket.IO is now generally available

· 4 min read
Kevin Guo

TL;DR

Socket.IO library is natively supported on Azure.

Since we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it’s suitable for use in production.

🔗 Follow this quickstarts guide to try out the feature.

🔗 Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.

Solve scalability issue without code rewrite

When we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It’s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it’s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago.

Developers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what’s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure’s massive scale (million+ concurrent users).

Introduce additional benefits to enterprise-level applications

Web PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features.

  • Cross-region replication to make your application more resilient by running in independent Azure regions
  • Custom domain to add an extra layer of security
  • Auto-scaling to dynamically scale up and down based on usage

An example showing how easy it is to migrate a Socket.IO app to Azure

Server-side code

Developers only need to call useAzureSocketIO() to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program.

server.js
const { Server } = require("socket.io");
const { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");

let io = new Server(3000);

// Use the following line to integrate with Web PubSub for Socket.IO
useAzureSocketIO(io, {
hub: "Hub", // The hub name can be any valid string.
connectionString: "<connection-string>"
});

io.on("connection", (socket) => {
// Sends a message to the client
socket.emit("hello", "world");

// Receives a message from the client
socket.on("howdy", (arg) => {
console.log(arg); // Prints "stranger"
})

Client-side code

The change to the client-side code is also minimal. Notice that we are using socket.io-client package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program.

client.js
const io = require("socket.io-client");

const socket = io("<web-pubsub-socketio-endpoint>", {
path: "/clients/socketio/hubs/Hub",
});

// Receives a message from the server
socket.on("hello", (arg) => {
console.log(arg);
});

// Sends a message to the server
socket.emit("howdy", "stranger")

How does it work?

As you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if “I need to send messages to 1000+ clients”. All that’s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this.

Architecture of Socket.IO managed by Azure

You can read more about how it works behind the scenes 🔗 by reading the article.

Now generally available.

Since public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure’s ticket system.

Resources and references

+ + + + \ No newline at end of file diff --git a/blog/rss.xml b/blog/rss.xml new file mode 100644 index 000000000..403088201 --- /dev/null +++ b/blog/rss.xml @@ -0,0 +1,50 @@ + + + + Demos for Azure Web PubSub Blog + https://azure.github.io/azure-webpubsub/blog + Demos for Azure Web PubSub Blog + Mon, 20 Nov 2023 00:00:00 GMT + https://validator.w3.org/feed/docs/rss2.html + https://github.com/jpmonette/feed + en + + <![CDATA[Azure Web PubSub for Socket.IO is now generally available]]> + https://azure.github.io/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-available + azure-web-pubsub-for-socketio-generally-available + Mon, 20 Nov 2023 00:00:00 GMT + + TL;DR

Socket.IO library is natively supported on Azure.

Since we public previewed this feature, we received positive feedback from users. Now we are happy to share that Web PubSub for Socket.IO is generally available, which means that Azure customers can expect stable APIs, SLAs customer support and it’s suitable for use in production.

🔗 Follow this quickstarts guide to try out the feature.

🔗 Check out the repo of a collaborative whiteboard app that showcases the use of Socket.IO APIs and how Azure handles scalability challenges.

Solve scalability issue without code rewrite

When we interviewed Socket.IO users, the challenge of scaling out Socket.IO servers came up repeatedly. It’s a challenge that can be met uniquely by Azure. With the input from Socket.IO users, it’s a challenge we aimed to solve when we public previewed the support for Socket.IO on Azure two months ago.

Developers can continue using the Socket.IO APIs they know and love and migrate to Azure seamless without code rewrite. The following shows what’s needed in the server-side and the client-side code to get a Socket.IO app running on Azure and instantly reap the benefits of Azure’s massive scale (million+ concurrent users).

Introduce additional benefits to enterprise-level applications

Web PubSub for Socket.IO aims to address the scalability challenge Socket.IO developers face. Additionally, it offers enterprise-focused features.

  • Cross-region replication to make your application more resilient by running in independent Azure regions
  • Custom domain to add an extra layer of security
  • Auto-scaling to dynamically scale up and down based on usage

An example showing how easy it is to migrate a Socket.IO app to Azure

Server-side code

Developers only need to call useAzureSocketIO() to set up the communication between this server and the cloud service. To Socket.IO users, the rest of the code should familiar as they are the APIs of Socket.IO library. These lines are included here for completeness of a working program.

server.js
const { Server } = require("socket.io");
const { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");

let io = new Server(3000);

// Use the following line to integrate with Web PubSub for Socket.IO
useAzureSocketIO(io, {
hub: "Hub", // The hub name can be any valid string.
connectionString: "<connection-string>"
});

io.on("connection", (socket) => {
// Sends a message to the client
socket.emit("hello", "world");

// Receives a message from the client
socket.on("howdy", (arg) => {
console.log(arg); // Prints "stranger"
})

Client-side code

The change to the client-side code is also minimal. Notice that we are using socket.io-client package and when initializing socket object, we set it up so that the Socket.IO client connects with the cloud service. The rest of the code is included for completeness of a working program.

client.js
const io = require("socket.io-client");

const socket = io("<web-pubsub-socketio-endpoint>", {
path: "/clients/socketio/hubs/Hub",
});

// Receives a message from the server
socket.on("hello", (arg) => {
console.log(arg);
});

// Sends a message to the server
socket.emit("howdy", "stranger")

How does it work?

As you can see from the code snippets, both the Socket.IO client and Socket.IO server establish a connection with a cloud service. The benefit of having a cloud service to facilitate the communication between the two is that it reduces the load on your Socket.IO server and removes to the need to worry about what if “I need to send messages to 1000+ clients”. All that’s required is the same `socket.emit()`` call. The cloud service, which maintains persistent connections with your Socket.IO clients, fans out the message to all the clients. Graphically, it looks like this.

Architecture of Socket.IO managed by Azure

You can read more about how it works behind the scenes 🔗 by reading the article.

Now generally available.

Since public preview, we received positive feedback from developers and now we are happy to share that this feature is generally available and suitable for use in production. Besides stable APIs and SLA guarantees, developers can have full support through Azure’s ticket system.

Resources and references

]]>
+
+ + <![CDATA[What is WebSocket? (part 2/2)]]> + https://azure.github.io/azure-webpubsub/blog/what_is_websocket_part2 + what_is_websocket_part2 + Fri, 25 Nov 2022 00:00:00 GMT + + Summary

This article is the second of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Full-duplex

To put it simply, “full-duplex” means that data can be transmitted at the same time in both directions. Like “bidirectional” we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the TIMING of sending data.

A phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time.

A walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak.

Picture of a walkie-talkie

The web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie.

Imagine if you are talking with your grandma using a walkie-talkie and you ask “Grandma, what’s like when you were growing up in the countryside?” Grandma presses the “Talk button” and she starts from the Great Depression, World War 1 and on with World War 2… While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.)

Picture of a grandma and her granddaughter

The walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users’ screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web.

To conclude

“Bidirectional” and “full-duplex” are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications. +Some scenarios that can be enabled by WebSocket

Credits:
+The walkie-talkie and the grandma photographs were taken by 🔗 cottonbro studio.

]]>
+
+ + <![CDATA[What is WebSocket? (part 1/2)]]> + https://azure.github.io/azure-webpubsub/blog/what_is_websocket_part1 + what_is_websocket_part1 + Mon, 14 Nov 2022 00:00:00 GMT + + Summary

This article is the first of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Let us unpack this loaded sentence together and try to understand the italicized words (technical jargon).

Bidirectional

The prefix “bi-“ means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions.

Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking

However, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.  In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit www.nytimes.com, the browser sends an HTTP request on the user’s behalf and waits for an HTTP response from its server.

What is relevant to our discussion here is that the client ALWAYS initiates the communication, in other words, the client always asks before the server responds. We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet.

Client makes request and server responds.

As the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web.

WebSocket enables bi-directional communication

In the second part, we will explore the idea of “full-duplex”.


Credits:
+The bicycle photograph is taken by 🔗 Philipp M.
+The bi-fold door photograph is taken by 🔗 sena.

]]>
+
+ + <![CDATA[Welcome]]> + https://azure.github.io/azure-webpubsub/blog/welcome + welcome + Wed, 29 Jun 2022 00:00:00 GMT + + This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.

Azure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates.

Check out the demos on the site and let us know what you think.

]]>
+
+
+
\ No newline at end of file diff --git a/blog/welcome.html b/blog/welcome.html new file mode 100644 index 000000000..98e4ac552 --- /dev/null +++ b/blog/welcome.html @@ -0,0 +1,28 @@ + + + + + +Welcome | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

Welcome

· One min read
Wanpeng Li

This is a site dedicated to showing developers what they can build with Azure Web PubSub through live demos. If a picture is worth a thousand words, a live demo is probably worth a lot more than that.

Azure Web PubSub is a cloud service that helps you build real-time messaging web applications using WebSockets and the publish-subscribe pattern easily. This real-time functionality allows publishing content updates between server and connected clients (for example a single page web application or mobile application). The clients do not need to poll the latest updates, or submit new HTTP requests for updates.

Check out the demos on the site and let us know what you think.

+ + + + \ No newline at end of file diff --git a/blog/what_is_websocket_part1.html b/blog/what_is_websocket_part1.html new file mode 100644 index 000000000..32e9458e9 --- /dev/null +++ b/blog/what_is_websocket_part1.html @@ -0,0 +1,31 @@ + + + + + +What is WebSocket? (part 1/2) | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

What is WebSocket? (part 1/2)

· 3 min read
Jialin Xin
Kevin Guo

Summary

This article is the first of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Let us unpack this loaded sentence together and try to understand the italicized words (technical jargon).

Bidirectional

The prefix “bi-“ means two of something. We have bicycles, two wheels. We have bifold doors, the fancy doors with two folds. In the context of computer networking, no surprise here, bidirectional means two directions.

Picture of a bicycle, bi-fold doors and bi-directional communication in computer networking

However, to truly understand the significance of it, we will need to talk about the interaction between applications running on different computers on a network.  In a typical client and server model, the client sends an HTTP request. Once the server receives the request, it does some processing and returns an HTTP response. Most of the activities on the web can be simplified to this request and response interaction. For example, when we visit www.nytimes.com, the browser sends an HTTP request on the user’s behalf and waits for an HTTP response from its server.

What is relevant to our discussion here is that the client ALWAYS initiates the communication, in other words, the client always asks before the server responds. We can call this form of communication one-directional because the server cannot send data to clients that is not requested. This is the decision made by the designer of HTTP protocol, and this simple design is the technological backbone of the internet.

Client makes request and server responds.

As the web welcomes more and more users, they are increasingly demanding more dynamic and interactive web experience. They want to track their ridesharing car without closing and reopening the app; they want to see the latest financial data, bid in an auction, collaborate on a document all without refreshing the browser all the time. A one-directional communication becomes inadequate in these scenarios. To enable these experiences, the web needs a way for server to send data to clients without client asking. Until WebSocket was standardized in 2008 and quickly supported by modern browsers, the web was unapologetically one-directional. With a bit of uneasiness and feeling cheating, software developers came up with workarounds to mimic bidirectional communication. Hacks no more! WebSocket brings native bi-directional communication to the web.

WebSocket enables bi-directional communication

In the second part, we will explore the idea of “full-duplex”.


Credits:
+The bicycle photograph is taken by 🔗 Philipp M.
+The bi-fold door photograph is taken by 🔗 sena.

+ + + + \ No newline at end of file diff --git a/blog/what_is_websocket_part2.html b/blog/what_is_websocket_part2.html new file mode 100644 index 000000000..daa8daf2c --- /dev/null +++ b/blog/what_is_websocket_part2.html @@ -0,0 +1,31 @@ + + + + + +What is WebSocket? (part 2/2) | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

What is WebSocket? (part 2/2)

· 3 min read
Jialin Xin
Kevin Guo

Summary

This article is the second of a two-part series that describes the values of WebSocket on a high-level.

Explore a few live apps built with 🔗 Web PubSub, a fully managed WebSocket service from Azure.

🔗 A simple chat app
+🔗 A collaborative whiteboard app

Definition

WebSocket gives developers a bidirectional, full-duplex communication channels over HTTP through a single TCP connection

Full-duplex

To put it simply, “full-duplex” means that data can be transmitted at the same time in both directions. Like “bidirectional” we just talked about, full-duplex is also about two things, two entities, but full-duplex is more about the TIMING of sending data.

A phone call is considered full-duplex because both the caller and the receiver can send voice data to each other at the same time.

A walkie-talkie is considered half-duplex because at one time only one person can send voice data. The participants take turns to speak.

Picture of a walkie-talkie

The web before WebSocket was largely half-duplex. The client opens a communication channel and requests a resource through this channel from a remote server. It waits for the server to return the requested resource. While the client waits, it cannot send data through the same channel. Also, while the server is sending data, the client cannot request resource through the same channel, much like how we communicate with a walkie-talkie.

Imagine if you are talking with your grandma using a walkie-talkie and you ask “Grandma, what’s like when you were growing up in the countryside?” Grandma presses the “Talk button” and she starts from the Great Depression, World War 1 and on with World War 2… While grandma paints the scene of her storied life, teasing grandma by completing the stories for her is not an option. Your only option? Listen on. (No grandmas were hurt in telling this joke.)

Picture of a grandma and her granddaughter

The walkie-talkie style of the early web was fine when communication was largely infrequent requests for resources from client to server. For web applications with interactive experience, like a collaborative document or a collaborative design application, users could be making changes at the same time and to have a smooth real-time editing experience, the changes need to be reflected on users’ screens as soon as they are made. The trusty HTTP protocol, being an inherently half-duplex communication model, cannot meet the new requirements without resorting to some workarounds. Hacks no more! WebSocket brings native full-duplex communication to the web.

To conclude

“Bidirectional” and “full-duplex” are the two value propositions WebSocket offers to developers and it has enabled a myriad of new interesting experience on the web, multi-player gaming, online auction, real-time collaborative apps and online chatting, to name a few. And the best of it all, it does not take much to add these real-time capabilities to your applications. +Some scenarios that can be enabled by WebSocket

Credits:
+The walkie-talkie and the grandma photographs were taken by 🔗 cottonbro studio.

+ + + + \ No newline at end of file diff --git a/contact_us.html b/contact_us.html new file mode 100644 index 000000000..77bdbf648 --- /dev/null +++ b/contact_us.html @@ -0,0 +1,28 @@ + + + + + +Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

Where to Get Support?

If you already have a Web PubSub resource created on Azure portal, you can create a support ticket. Alternatively, you can create an issue on the public GitHub issue. Our team monitors the issues very closely and tries to resolve the issue as soon as we can.

Documentation

You can visit the documentation of Azure Web PubSub service from hereExternalLink.

Reach out to the product team

Create a GitHubissue

The product team monitors GitHub issues on a daily basis. It’s the best way to reach out the team and ... Create a GitHub issue hereExternalLink.

Suggest a demo

Have a demo you’d like to see on this site. Share your idea with us and creating a GitHub issue hereExternalLink.

Demos we are currently working on

  • Collaborative sales order processing app
  • Truck tracking app
+ + + + \ No newline at end of file diff --git a/demos/chat.html b/demos/chat.html new file mode 100644 index 000000000..69539f510 --- /dev/null +++ b/demos/chat.html @@ -0,0 +1,28 @@ + + + + + +Simple chat app | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
+

Overview

About the app

A simple real-time chat app demonstrating the use of JavaScript server SDK provided by Azure Web PubSub

Azure Web PubSub enables

  • Simple real-time chat between server and client

How it works?

Server side

Serve a static web page public/index.html A REST API  /negotiate which returns a url to connect to Web PubSub
  • A simple Express server that serves a static web page public/index.html
  • A REST API /negotiate which returns a url to connect to Web PubSub
  • Listens for an onConnected event to broadcast the joining of chat participants.
  • Listens for an message event to broadcast a use's chat message to all participants in a hub.

Client side

  • Using WebSocket API to initiate a WebSocket connection and listen for an onmessage event to render chat messages in the browser.
  • + + + + \ No newline at end of file diff --git a/demos/chatr.html b/demos/chatr.html new file mode 100644 index 000000000..43b192d06 --- /dev/null +++ b/demos/chatr.html @@ -0,0 +1,28 @@ + + + + + +Chatr | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    Overview

    About the app

    This demo is developed by  Ben ColemanExternalLinkusing Azure Web PubSub service, Azure Static Web Apps, and deploy using Azure Bicep.

    Azure Web PubSub enables

    • Real-time code editing

    Check out the live demo

    You can check out the live demo  hereExternalLink

    + + + + \ No newline at end of file diff --git a/demos/code-streaming.html b/demos/code-streaming.html new file mode 100644 index 000000000..fd62e7b98 --- /dev/null +++ b/demos/code-streaming.html @@ -0,0 +1,28 @@ + + + + + +Code stream | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    To see streaming as you code, open the link in another tab.

    Overview

    About the app

    This is a sample application to demonstrate how to use Azure Web PubSub to livestream your code to others.

    Azure Web PubSub enables

    • Real-time code editing

    How it works?

    Server side

    Serve a static web page public/index.html A REST API  /negotiate which returns a url to connect to Web PubSub
    • Serve a static web page public/index.html
    • A REST API /negotiate which returns a url to connect to Web PubSub

    Client side

    The most logic of this app is happening at client side. In client there're two roles:

    • Streamer
      Streamer is the one who writes code and broadcasts to others. It uses WebSocket.send() to send the changes from the code editor (by hooking the editor.on('change') event) to a group (whose ID is generated in negotiate) in Azure Web PubSub. And for performance consideration, it buffers the changes and send them in a batch every 200 milliseconds. The main implementation can be found at  startStream() in public/index.html.
    • Watcher
      Watcher is the one who watches streamer to code. It receives the changes from Azure Web PubSub and applies them one by one to the code editor (by calling the applyDelta() function). Since the changes is only a delta from the previous content there needs to be a way to get the full content from streamer when watcher is connected for the first time. So in this app when watcher is connected it will send a sync message to streamer (through another group called id-control) and streamer will send the full content to the group. The main implementation can be found at  watch() in public/index.html.
    + + + + \ No newline at end of file diff --git a/demos/metaverse.html b/demos/metaverse.html new file mode 100644 index 000000000..9dab6073f --- /dev/null +++ b/demos/metaverse.html @@ -0,0 +1,28 @@ + + + + + +Metaverse | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    Overview

    About the app

    An app demonstrating how Azure Web PubSub can be used to enable multi-player experience in Metaverse (coming soon)

    + + + + \ No newline at end of file diff --git a/demos/scoreboard.html b/demos/scoreboard.html new file mode 100644 index 000000000..b3bcccb9b --- /dev/null +++ b/demos/scoreboard.html @@ -0,0 +1,28 @@ + + + + + +Real-time scoreboard | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    Overview

    About the app

    This app demonstrates how to push data from server to connected clients using Azure Web PubSub

    Azure Web PubSub enables

    • Server pushing data to clients in real-time
    + + + + \ No newline at end of file diff --git a/demos/tags.html b/demos/tags.html new file mode 100644 index 000000000..ef47f8578 --- /dev/null +++ b/demos/tags.html @@ -0,0 +1,28 @@ + + + + + +Tags | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/demos/tags/express-js.html b/demos/tags/express-js.html new file mode 100644 index 000000000..5217bd70a --- /dev/null +++ b/demos/tags/express-js.html @@ -0,0 +1,28 @@ + + + + + +4 docs tagged with "Express.js" | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    4 docs tagged with "Express.js"

    View All Tags
    + + + + \ No newline at end of file diff --git a/demos/tags/java-script.html b/demos/tags/java-script.html new file mode 100644 index 000000000..591954f1b --- /dev/null +++ b/demos/tags/java-script.html @@ -0,0 +1,28 @@ + + + + + +3 docs tagged with "JavaScript" | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    3 docs tagged with "JavaScript"

    View All Tags
    + + + + \ No newline at end of file diff --git a/demos/tags/vue-js.html b/demos/tags/vue-js.html new file mode 100644 index 000000000..4336896c6 --- /dev/null +++ b/demos/tags/vue-js.html @@ -0,0 +1,28 @@ + + + + + +2 docs tagged with "Vue.js" | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    2 docs tagged with "Vue.js"

    View All Tags
    + + + + \ No newline at end of file diff --git a/demos/whiteboard.html b/demos/whiteboard.html new file mode 100644 index 000000000..514d2099a --- /dev/null +++ b/demos/whiteboard.html @@ -0,0 +1,28 @@ + + + + + +Collaborative whiteboard | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    Overview

    About the app

    This is a sample project to demonstrate how to build a web application for real time collaboration using Azure, Node.js and other related technologies.

    Azure Web PubSub enables

    • A whiteboard that anyone can paint on and others can see each other painting in real time
    • Real time chat

    How it works?

    Frontend

    • HTML5/JavaScript
    • Bootstrap
    • Vue.js

    Backend

    • Node.js
    • Express.js

    Real-time communication

    • Azure Web PubSub
    + + + + \ No newline at end of file diff --git a/icons/chevron_left.svg b/icons/chevron_left.svg new file mode 100644 index 000000000..09e164e16 --- /dev/null +++ b/icons/chevron_left.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/icons/chevron_right.svg b/icons/chevron_right.svg new file mode 100644 index 000000000..01f84624f --- /dev/null +++ b/icons/chevron_right.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/icons/externallink.svg b/icons/externallink.svg new file mode 100644 index 000000000..bef8eedb5 --- /dev/null +++ b/icons/externallink.svg @@ -0,0 +1,5 @@ + + ExternalLink + + + \ No newline at end of file diff --git a/img/azure_logo.png b/img/azure_logo.png new file mode 100644 index 000000000..e1e7be316 Binary files /dev/null and b/img/azure_logo.png differ diff --git a/img/banners/desktop/banner-0.jpg b/img/banners/desktop/banner-0.jpg new file mode 100644 index 000000000..6f700bd20 Binary files /dev/null and b/img/banners/desktop/banner-0.jpg differ diff --git a/img/banners/desktop/banner-1.jpg b/img/banners/desktop/banner-1.jpg new file mode 100644 index 000000000..6d5fcebe8 Binary files /dev/null and b/img/banners/desktop/banner-1.jpg differ diff --git a/img/banners/desktop/banner-2.jpg b/img/banners/desktop/banner-2.jpg new file mode 100644 index 000000000..4a0204e95 Binary files /dev/null and b/img/banners/desktop/banner-2.jpg differ diff --git a/img/banners/desktop/banner-3.jpg b/img/banners/desktop/banner-3.jpg new file mode 100644 index 000000000..67c93cdf2 Binary files /dev/null and b/img/banners/desktop/banner-3.jpg differ diff --git a/img/banners/mobile/banner-0.jpg b/img/banners/mobile/banner-0.jpg new file mode 100644 index 000000000..7b5f38ca8 Binary files /dev/null and b/img/banners/mobile/banner-0.jpg differ diff --git a/img/banners/mobile/banner-1.jpg b/img/banners/mobile/banner-1.jpg new file mode 100644 index 000000000..5bcb648d1 Binary files /dev/null and b/img/banners/mobile/banner-1.jpg differ diff --git a/img/banners/mobile/banner-2.jpg b/img/banners/mobile/banner-2.jpg new file mode 100644 index 000000000..98bfbe836 Binary files /dev/null and b/img/banners/mobile/banner-2.jpg differ diff --git a/img/banners/mobile/banner-3.jpg b/img/banners/mobile/banner-3.jpg new file mode 100644 index 000000000..caad9fbe5 Binary files /dev/null and b/img/banners/mobile/banner-3.jpg differ diff --git a/img/blade_outputs.jpg b/img/blade_outputs.jpg new file mode 100644 index 000000000..05d7dc977 Binary files /dev/null and b/img/blade_outputs.jpg differ diff --git a/img/favicon.ico b/img/favicon.ico new file mode 100644 index 000000000..d40399c5a Binary files /dev/null and b/img/favicon.ico differ diff --git a/img/hero/hero_chat.jpg b/img/hero/hero_chat.jpg new file mode 100644 index 000000000..516c26f4a Binary files /dev/null and b/img/hero/hero_chat.jpg differ diff --git a/img/hero/hero_connected_devices.jpg b/img/hero/hero_connected_devices.jpg new file mode 100644 index 000000000..983b0851e Binary files /dev/null and b/img/hero/hero_connected_devices.jpg differ diff --git a/img/hero/hero_serverless.jpg b/img/hero/hero_serverless.jpg new file mode 100644 index 000000000..ce0f228b2 Binary files /dev/null and b/img/hero/hero_serverless.jpg differ diff --git a/img/hero/hero_stock.jpg b/img/hero/hero_stock.jpg new file mode 100644 index 000000000..6a2d8b5ed Binary files /dev/null and b/img/hero/hero_stock.jpg differ diff --git a/img/logo.png b/img/logo.png new file mode 100644 index 000000000..3a918a338 Binary files /dev/null and b/img/logo.png differ diff --git a/img/logo.svg b/img/logo.svg new file mode 100644 index 000000000..30f6423a5 --- /dev/null +++ b/img/logo.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/img/metaverse_scene.jpg b/img/metaverse_scene.jpg new file mode 100644 index 000000000..9e757ea6f Binary files /dev/null and b/img/metaverse_scene.jpg differ diff --git a/img/previews/CodeStream.jpg b/img/previews/CodeStream.jpg new file mode 100644 index 000000000..1c33608fe Binary files /dev/null and b/img/previews/CodeStream.jpg differ diff --git a/img/previews/Scoreboard.jpg b/img/previews/Scoreboard.jpg new file mode 100644 index 000000000..41765200a Binary files /dev/null and b/img/previews/Scoreboard.jpg differ diff --git a/img/previews/SimpleChat.jpg b/img/previews/SimpleChat.jpg new file mode 100644 index 000000000..a5aac1b10 Binary files /dev/null and b/img/previews/SimpleChat.jpg differ diff --git a/img/previews/Whiteboard.jpg b/img/previews/Whiteboard.jpg new file mode 100644 index 000000000..2634dd8b0 Binary files /dev/null and b/img/previews/Whiteboard.jpg differ diff --git a/img/previews/_default.jpg b/img/previews/_default.jpg new file mode 100644 index 000000000..6af55ff8b Binary files /dev/null and b/img/previews/_default.jpg differ diff --git a/img/thumbnails/chat_abstract.jpeg b/img/thumbnails/chat_abstract.jpeg new file mode 100644 index 000000000..af7233e5d Binary files /dev/null and b/img/thumbnails/chat_abstract.jpeg differ diff --git a/img/thumbnails/chat_closeup.jpeg b/img/thumbnails/chat_closeup.jpeg new file mode 100644 index 000000000..68d89a47a Binary files /dev/null and b/img/thumbnails/chat_closeup.jpeg differ diff --git a/img/thumbnails/code.png b/img/thumbnails/code.png new file mode 100644 index 000000000..7d83c40f0 Binary files /dev/null and b/img/thumbnails/code.png differ diff --git a/img/thumbnails/dashboard.png b/img/thumbnails/dashboard.png new file mode 100644 index 000000000..31f81ee47 Binary files /dev/null and b/img/thumbnails/dashboard.png differ diff --git a/img/thumbnails/metaverse.jpeg b/img/thumbnails/metaverse.jpeg new file mode 100644 index 000000000..7d20eb868 Binary files /dev/null and b/img/thumbnails/metaverse.jpeg differ diff --git a/img/thumbnails/navigation.png b/img/thumbnails/navigation.png new file mode 100644 index 000000000..e50b4ac05 Binary files /dev/null and b/img/thumbnails/navigation.png differ diff --git a/img/thumbnails/scoreboard.jpeg b/img/thumbnails/scoreboard.jpeg new file mode 100644 index 000000000..82386733b Binary files /dev/null and b/img/thumbnails/scoreboard.jpeg differ diff --git a/img/thumbnails/stock.png b/img/thumbnails/stock.png new file mode 100644 index 000000000..32b720736 Binary files /dev/null and b/img/thumbnails/stock.png differ diff --git a/img/thumbnails/whiteboard.jpeg b/img/thumbnails/whiteboard.jpeg new file mode 100644 index 000000000..9dd12d9ae Binary files /dev/null and b/img/thumbnails/whiteboard.jpeg differ diff --git a/index.html b/index.html new file mode 100644 index 000000000..22895e859 --- /dev/null +++ b/index.html @@ -0,0 +1,28 @@ + + + + + +Demos for Azure Web PubSub | Demos for Azure Web PubSub + + + + + + + + + + + + + + + + +
    +

    Azure Web PubSub

    Easily add real-time capabilities to your apps using your preferred tech stack.

    Reliable. Secure. Highly scalable.

    Explore demos

    A simple real-time chat app demonstrating the use of JavaScript server SDK

    Simple chat app

    A simple real-time chat app demonstrating the use of JavaScript server SDK

    View details
    Multi-user drawing on a shared whiteboard, built with Node.js

    Collaborative whiteboard

    Multi-user drawing on a shared whiteboard, built with Node.js

    View details
    Multi-player experience in Metaverse (coming soon)

    Metaverse

    Multi-player experience in Metaverse (coming soon)

    View details
    Real-time collaborative code editor

    Code stream

    Real-time collaborative code editor

    View details
    Developed by Ben Coleman using Azure Web PubSub and other Azure technologies

    Chatr

    Developed by Ben Coleman using Azure Web PubSub and other Azure technologies

    View details
    Push live game data from server to connected clients using Azure Web PubSub

    Real-time scoreboard

    Push live game data from server to connected clients using Azure Web PubSub

    View details
    + + + + \ No newline at end of file diff --git a/logos/azure_icon_logo.svg b/logos/azure_icon_logo.svg new file mode 100644 index 000000000..289f8bdd8 --- /dev/null +++ b/logos/azure_icon_logo.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/logos/github_logo.svg b/logos/github_logo.svg new file mode 100644 index 000000000..c0858967f --- /dev/null +++ b/logos/github_logo.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/logos/logo_dev.png b/logos/logo_dev.png new file mode 100644 index 000000000..3c3349243 Binary files /dev/null and b/logos/logo_dev.png differ diff --git a/logos/logo_freecodecamp.png b/logos/logo_freecodecamp.png new file mode 100644 index 000000000..a80d435b2 Binary files /dev/null and b/logos/logo_freecodecamp.png differ diff --git a/logos/logo_geeksforgeeks.png b/logos/logo_geeksforgeeks.png new file mode 100644 index 000000000..a8b824d17 Binary files /dev/null and b/logos/logo_geeksforgeeks.png differ diff --git a/logos/logo_medium.png b/logos/logo_medium.png new file mode 100644 index 000000000..c305ffc52 Binary files /dev/null and b/logos/logo_medium.png differ diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 000000000..d3bcae5ca --- /dev/null +++ b/sitemap.xml @@ -0,0 +1 @@ +https://azure.github.io/azure-webpubsub/blogweekly0.5https://azure.github.io/azure-webpubsub/blog/archiveweekly0.5https://azure.github.io/azure-webpubsub/blog/azure-web-pubsub-for-socketio-generally-availableweekly0.5https://azure.github.io/azure-webpubsub/blog/welcomeweekly0.5https://azure.github.io/azure-webpubsub/blog/what_is_websocket_part1weekly0.5https://azure.github.io/azure-webpubsub/blog/what_is_websocket_part2weekly0.5https://azure.github.io/azure-webpubsub/contact_usweekly0.5https://azure.github.io/azure-webpubsub/demos/tagsweekly0.5https://azure.github.io/azure-webpubsub/demos/tags/express-jsweekly0.5https://azure.github.io/azure-webpubsub/demos/tags/java-scriptweekly0.5https://azure.github.io/azure-webpubsub/demos/tags/vue-jsweekly0.5https://azure.github.io/azure-webpubsub/demos/chatweekly0.5https://azure.github.io/azure-webpubsub/demos/chatrweekly0.5https://azure.github.io/azure-webpubsub/demos/code-streamingweekly0.5https://azure.github.io/azure-webpubsub/demos/metaverseweekly0.5https://azure.github.io/azure-webpubsub/demos/scoreboardweekly0.5https://azure.github.io/azure-webpubsub/demos/whiteboardweekly0.5https://azure.github.io/azure-webpubsub/weekly0.5 \ No newline at end of file