diff --git a/404.html b/404.html index 6f23a2737..4595fdf03 100644 --- a/404.html +++ b/404.html @@ -1,20 +1,40 @@ - - - - - -Page Not Found | sern - Handlers. Redefined. - - - - - - - - - - - -
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 + 404 | sern + + + Skip to content

404

Page not found. Check the URL or try using the search bar.
\ No newline at end of file diff --git a/CNAME b/CNAME deleted file mode 100644 index edff6df14..000000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -sern.dev diff --git a/_astro/Blog.BSQpZ4XK.css b/_astro/Blog.BSQpZ4XK.css new file mode 100644 index 000000000..73e231d56 --- /dev/null +++ b/_astro/Blog.BSQpZ4XK.css @@ -0,0 +1 @@ +:root,::backdrop{--sl-color-white: hsl(0, 0%, 100%);--sl-color-gray-1: hsl(224, 20%, 94%);--sl-color-gray-2: hsl(224, 6%, 77%);--sl-color-gray-3: hsl(224, 6%, 56%);--sl-color-gray-4: hsl(224, 7%, 36%);--sl-color-gray-5: hsl(224, 10%, 23%);--sl-color-gray-6: hsl(224, 14%, 16%);--sl-color-black: hsl(224, 10%, 10%);--sl-hue-orange: 41;--sl-color-orange-low: hsl(var(--sl-hue-orange), 39%, 22%);--sl-color-orange: hsl(var(--sl-hue-orange), 82%, 63%);--sl-color-orange-high: hsl(var(--sl-hue-orange), 82%, 87%);--sl-hue-green: 101;--sl-color-green-low: hsl(var(--sl-hue-green), 39%, 22%);--sl-color-green: hsl(var(--sl-hue-green), 82%, 63%);--sl-color-green-high: hsl(var(--sl-hue-green), 82%, 80%);--sl-hue-blue: 234;--sl-color-blue-low: hsl(var(--sl-hue-blue), 54%, 20%);--sl-color-blue: hsl(var(--sl-hue-blue), 100%, 60%);--sl-color-blue-high: hsl(var(--sl-hue-blue), 100%, 87%);--sl-hue-purple: 281;--sl-color-purple-low: hsl(var(--sl-hue-purple), 39%, 22%);--sl-color-purple: hsl(var(--sl-hue-purple), 82%, 63%);--sl-color-purple-high: hsl(var(--sl-hue-purple), 82%, 89%);--sl-hue-red: 339;--sl-color-red-low: hsl(var(--sl-hue-red), 39%, 22%);--sl-color-red: hsl(var(--sl-hue-red), 82%, 63%);--sl-color-red-high: hsl(var(--sl-hue-red), 82%, 87%);--sl-color-accent-low: hsl(224, 54%, 20%);--sl-color-accent: hsl(224, 100%, 60%);--sl-color-accent-high: hsl(224, 100%, 85%);--sl-color-text: var(--sl-color-gray-2);--sl-color-text-accent: var(--sl-color-accent-high);--sl-color-text-invert: var(--sl-color-accent-low);--sl-color-bg: var(--sl-color-black);--sl-color-bg-nav: var(--sl-color-gray-6);--sl-color-bg-sidebar: var(--sl-color-gray-6);--sl-color-bg-inline-code: var(--sl-color-gray-5);--sl-color-bg-accent: var(--sl-color-accent-high);--sl-color-hairline-light: var(--sl-color-gray-5);--sl-color-hairline: var(--sl-color-gray-6);--sl-color-hairline-shade: var(--sl-color-black);--sl-color-backdrop-overlay: hsla(223, 13%, 10%, .66);--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, .12), 0px 2px 1px hsla(0, 0%, 0%, .24);--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, .08), 0px 5px 2px hsla(0, 0%, 0%, .08), 0px 3px 2px hsla(0, 0%, 0%, .12), 0px 1px 1px hsla(0, 0%, 0%, .15);--sl-shadow-lg: 0px 25px 7px hsla(0, 0%, 0%, .03), 0px 16px 6px hsla(0, 0%, 0%, .1), 0px 9px 5px hsla(223, 13%, 10%, .33), 0px 4px 4px hsla(0, 0%, 0%, .75), 0px 4px 2px hsla(0, 0%, 0%, .25);--sl-text-xs: .8125rem;--sl-text-sm: .875rem;--sl-text-base: 1rem;--sl-text-lg: 1.125rem;--sl-text-xl: 1.25rem;--sl-text-2xl: 1.5rem;--sl-text-3xl: 1.8125rem;--sl-text-4xl: 2.1875rem;--sl-text-5xl: 2.625rem;--sl-text-6xl: 4rem;--sl-text-body: var(--sl-text-base);--sl-text-body-sm: var(--sl-text-xs);--sl-text-code: var(--sl-text-sm);--sl-text-code-sm: var(--sl-text-xs);--sl-text-h1: var(--sl-text-4xl);--sl-text-h2: var(--sl-text-3xl);--sl-text-h3: var(--sl-text-2xl);--sl-text-h4: var(--sl-text-xl);--sl-text-h5: var(--sl-text-lg);--sl-line-height: 1.75;--sl-line-height-headings: 1.2;--sl-font-system: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--sl-font-system-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--__sl-font: var(--sl-font, var(--sl-font-system)), var(--sl-font-system);--__sl-font-mono: var(--sl-font-mono, var(--sl-font-system-mono)), var(--sl-font-system-mono);--sl-nav-height: 3.5rem;--sl-nav-pad-x: 1rem;--sl-nav-pad-y: .75rem;--sl-mobile-toc-height: 3rem;--sl-sidebar-width: 18.75rem;--sl-sidebar-pad-x: 1rem;--sl-content-width: 45rem;--sl-content-pad-x: 1rem;--sl-menu-button-size: 2rem;--sl-nav-gap: var(--sl-content-pad-x);--sl-outline-offset-inside: -.1875rem;--sl-z-index-toc: 4;--sl-z-index-menu: 5;--sl-z-index-navbar: 10;--sl-z-index-skiplink: 20}:root[data-theme=light],[data-theme=light] ::backdrop{--sl-color-white: hsl(224, 10%, 10%);--sl-color-gray-1: hsl(224, 14%, 16%);--sl-color-gray-2: hsl(224, 10%, 23%);--sl-color-gray-3: hsl(224, 7%, 36%);--sl-color-gray-4: hsl(224, 6%, 56%);--sl-color-gray-5: hsl(224, 6%, 77%);--sl-color-gray-6: hsl(224, 20%, 94%);--sl-color-gray-7: hsl(224, 19%, 97%);--sl-color-black: hsl(0, 0%, 100%);--sl-color-orange-high: hsl(var(--sl-hue-orange), 80%, 25%);--sl-color-orange: hsl(var(--sl-hue-orange), 90%, 60%);--sl-color-orange-low: hsl(var(--sl-hue-orange), 90%, 88%);--sl-color-green-high: hsl(var(--sl-hue-green), 80%, 22%);--sl-color-green: hsl(var(--sl-hue-green), 90%, 46%);--sl-color-green-low: hsl(var(--sl-hue-green), 85%, 90%);--sl-color-blue-high: hsl(var(--sl-hue-blue), 80%, 30%);--sl-color-blue: hsl(var(--sl-hue-blue), 90%, 60%);--sl-color-blue-low: hsl(var(--sl-hue-blue), 88%, 90%);--sl-color-purple-high: hsl(var(--sl-hue-purple), 90%, 30%);--sl-color-purple: hsl(var(--sl-hue-purple), 90%, 60%);--sl-color-purple-low: hsl(var(--sl-hue-purple), 80%, 90%);--sl-color-red-high: hsl(var(--sl-hue-red), 80%, 30%);--sl-color-red: hsl(var(--sl-hue-red), 90%, 60%);--sl-color-red-low: hsl(var(--sl-hue-red), 80%, 90%);--sl-color-accent-high: hsl(234, 80%, 30%);--sl-color-accent: hsl(234, 90%, 60%);--sl-color-accent-low: hsl(234, 88%, 90%);--sl-color-text-accent: var(--sl-color-accent);--sl-color-text-invert: var(--sl-color-black);--sl-color-bg-nav: var(--sl-color-gray-7);--sl-color-bg-sidebar: var(--sl-color-bg);--sl-color-bg-inline-code: var(--sl-color-gray-6);--sl-color-bg-accent: var(--sl-color-accent);--sl-color-hairline-light: var(--sl-color-gray-6);--sl-color-hairline-shade: var(--sl-color-gray-6);--sl-color-backdrop-overlay: hsla(225, 9%, 36%, .66);--sl-shadow-sm: 0px 1px 1px hsla(0, 0%, 0%, .06), 0px 2px 1px hsla(0, 0%, 0%, .06);--sl-shadow-md: 0px 8px 4px hsla(0, 0%, 0%, .03), 0px 5px 2px hsla(0, 0%, 0%, .03), 0px 3px 2px hsla(0, 0%, 0%, .06), 0px 1px 1px hsla(0, 0%, 0%, .06);--sl-shadow-lg: 0px 25px 7px rgba(0, 0, 0, .01), 0px 16px 6px hsla(0, 0%, 0%, .03), 0px 9px 5px hsla(223, 13%, 10%, .08), 0px 4px 4px hsla(0, 0%, 0%, .16), 0px 4px 2px hsla(0, 0%, 0%, .04)}@media (min-width: 50em){:root{--sl-nav-height: 4rem;--sl-nav-pad-x: 1.5rem;--sl-text-h1: var(--sl-text-5xl);--sl-text-h2: var(--sl-text-4xl);--sl-text-h3: var(--sl-text-3xl);--sl-text-h4: var(--sl-text-2xl)}}@media (min-width: 72rem){:root{--sl-content-pad-x: 1.5rem;--sl-mobile-toc-height: 0rem}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{color-scheme:dark;accent-color:var(--sl-color-accent)}html[data-theme=light]{color-scheme:light}body{font-family:var(--__sl-font);line-height:var(--sl-line-height);-webkit-font-smoothing:antialiased;color:var(--sl-color-text);background-color:var(--sl-color-bg)}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6,code{overflow-wrap:anywhere}code{font-family:var(--__sl-font-mono)}:root{--astro-code-color-text: var(--sl-color-white);--astro-code-color-background: var(--sl-color-gray-6);--astro-code-token-constant: var(--sl-color-blue-high);--astro-code-token-string: var(--sl-color-green-high);--astro-code-token-comment: var(--sl-color-gray-2);--astro-code-token-keyword: var(--sl-color-purple-high);--astro-code-token-parameter: var(--sl-color-red-high);--astro-code-token-function: var(--sl-color-red-high);--astro-code-token-string-expression: var(--sl-color-green-high);--astro-code-token-punctuation: var(--sl-color-gray-2);--astro-code-token-link: var(--sl-color-blue-high)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sl-hidden{display:none}.sl-flex{display:flex}.sl-block{display:block}@media (min-width: 50rem){.md\:sl-hidden{display:none}.md\:sl-flex{display:flex}.md\:sl-block{display:block}}@media (min-width: 72rem){.lg\:sl-hidden{display:none}.lg\:sl-flex{display:flex}.lg\:sl-block{display:block}}[data-theme=light] .light\:sl-hidden,[data-theme=dark] .dark\:sl-hidden{display:none}[dir=rtl] .rtl\:flip:not(:where([dir=rtl] [dir=ltr] *)){transform:scaleX(-1)}.sl-banner:where(.astro-laz2plt2){--__sl-banner-text: var(--sl-color-banner-text, var(--sl-color-text-invert));padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);background-color:var(--sl-color-banner-bg, var(--sl-color-bg-accent));color:var(--__sl-banner-text);line-height:var(--sl-line-height-headings);text-align:center;text-wrap:balance;box-shadow:var(--sl-shadow-sm)}.sl-banner:where(.astro-laz2plt2) a{color:var(--__sl-banner-text)}.content-panel:where(.astro-7nkwcw3z){padding:1.5rem var(--sl-content-pad-x)}.content-panel:where(.astro-7nkwcw3z)+.content-panel:where(.astro-7nkwcw3z){border-top:1px solid var(--sl-color-hairline)}.sl-container:where(.astro-7nkwcw3z){max-width:var(--sl-content-width)}.sl-container:where(.astro-7nkwcw3z)>*+*{margin-top:1.5rem}@media (min-width: 72rem){.sl-container:where(.astro-7nkwcw3z){margin-inline:var(--sl-content-margin-inline, auto)}}p:where(.astro-opzsrvew){border:1px solid var(--sl-color-orange);padding:.75em 1em;background-color:var(--sl-color-orange-low);color:var(--sl-color-orange-high);width:-moz-max-content;width:max-content;max-width:100%;align-items:center;gap:.75em;font-size:var(--sl-text-body-sm);line-height:var(--sl-line-height-headings)}a:where(.astro-eez2twj6){gap:.5rem;align-items:center;text-decoration:none;color:var(--sl-color-gray-3)}a:where(.astro-eez2twj6):hover{color:var(--sl-color-white)}.pagination-links:where(.astro-u2l5gyhi){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem}a:where(.astro-u2l5gyhi){display:flex;align-items:center;justify-content:flex-start;gap:.5rem;width:100%;flex-basis:calc(50% - .5rem);flex-grow:1;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding:1rem;text-decoration:none;color:var(--sl-color-gray-2);box-shadow:var(--sl-shadow-md);overflow-wrap:anywhere}:where(.astro-u2l5gyhi)[rel=next]{justify-content:end;text-align:end;flex-direction:row-reverse}a:where(.astro-u2l5gyhi):hover{border-color:var(--sl-color-gray-2)}.link-title:where(.astro-u2l5gyhi){color:var(--sl-color-white);font-size:var(--sl-text-2xl);line-height:var(--sl-line-height-headings)}svg:where(.astro-u2l5gyhi){flex-shrink:0}.meta:where(.astro-3yyafb3n){gap:.75rem 3rem;justify-content:space-between;flex-wrap:wrap;margin-block:3rem 1.5rem;font-size:var(--sl-text-sm);color:var(--sl-color-gray-3)}.meta:where(.astro-3yyafb3n)>p:only-child{margin-inline-start:auto}label:where(.astro-4yphtoen){--sl-label-icon-size: .875rem;--sl-caret-size: 1.25rem;position:relative;display:flex;align-items:center;gap:.25rem;color:var(--sl-color-gray-1)}label:where(.astro-4yphtoen):hover{color:var(--sl-color-gray-2)}.icon:where(.astro-4yphtoen){position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}.label-icon:where(.astro-4yphtoen){font-size:var(--sl-label-icon-size);inset-inline-start:0}.caret:where(.astro-4yphtoen){font-size:var(--sl-caret-size);inset-inline-end:0}select:where(.astro-4yphtoen){border:0;padding-block:.625rem;padding-inline:calc(var(--sl-label-icon-size) + .25rem) calc(var(--sl-caret-size) + .25rem);width:var(--sl-select-width);background-color:transparent;text-overflow:ellipsis;color:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}option:where(.astro-4yphtoen){background-color:var(--sl-color-bg-nav);color:var(--sl-color-gray-1)}@media (min-width: 50rem){select:where(.astro-4yphtoen){font-size:var(--sl-text-sm)}}/*! @docsearch/css Modal 3.6.0 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::-moz-placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}:root{--docsearch-primary-color: var(--sl-color-text-accent);--docsearch-text-color: var(--sl-color-text);--docsearch-spacing: 12px;--docsearch-icon-stroke-width: 1.4;--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-muted-color: var(--sl-color-gray-3);--docsearch-container-background: var(--sl-color-backdrop-overlay);--docsearch-modal-width: 560px;--docsearch-modal-height: 600px;--docsearch-modal-background: var(--sl-color-gray-6);--docsearch-modal-shadow: var(--sl-shadow-lg);--docsearch-searchbox-height: 56px;--docsearch-searchbox-background: var(--sl-color-gray-7, var(--sl-color-gray-6));--docsearch-searchbox-focus-background: var(--sl-color-black);--docsearch-searchbox-shadow: inset 0 0 0 1px var(--docsearch-primary-color);--docsearch-hit-height: 56px;--docsearch-hit-color: var(--sl-color-white);--docsearch-hit-active-color: var(--sl-color-black);--docsearch-hit-background: var(--sl-color-black);--docsearch-key-gradient: linear-gradient( var(--sl-color-bg-inline-code) 0%, var(--sl-color-bg-inline-code) 100% );--docsearch-footer-height: 44px;--docsearch-footer-background: var(--sl-color-black);--docsearch-footer-shadow: 0 -1px 0 0 var(--sl-color-hairline-light)}.DocSearch-Modal{border:1px solid var(--sl-color-hairline-light)}.DocSearch-Logo svg *{fill:var(--docsearch-muted-color)}.DocSearch-Button{display:flex;align-items:center;gap:.5rem;border:0;background-color:transparent;color:var(--sl-color-gray-1);cursor:pointer;height:2.5rem;font-size:var(--sl-text-xl)}.DocSearch-Button-Container{display:contents}.DocSearch-Search-Icon{width:.875em;height:.875em;stroke-width:.125rem}.DocSearch-Button-Placeholder,.DocSearch-Button-Keys,.DocSearch-Button-Key{display:none}@media (min-width: 50rem){sl-doc-search{width:100%}.DocSearch-Button{border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding-inline-start:.75rem;padding-inline-end:1rem;background-color:var(--sl-color-black);color:var(--sl-color-gray-2);font-size:var(--sl-text-sm);width:100%;max-width:22rem}.DocSearch-Button:hover{border-color:var(--sl-color-gray-2);color:var(--sl-color-white)}.DocSearch-Button-Placeholder,.DocSearch-Button-Keys{display:flex}.DocSearch-Button-Keys{margin-inline-start:auto}.DocSearch-Button-Keys:before{content:"";width:1em;height:1em;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 2H7a5 5 0 0 0-5 5v10a5 5 0 0 0 5 5h10a5 5 0 0 0 5-5V7a5 5 0 0 0-5-5Zm3 15a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10Z'%3E%3C/path%3E%3Cpath d='M15.293 6.707a1 1 0 1 1 1.414 1.414l-8.485 8.486a1 1 0 0 1-1.414-1.415l8.485-8.485Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 2H7a5 5 0 0 0-5 5v10a5 5 0 0 0 5 5h10a5 5 0 0 0 5-5V7a5 5 0 0 0-5-5Zm3 15a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3h10a3 3 0 0 1 3 3v10Z'%3E%3C/path%3E%3Cpath d='M15.293 6.707a1 1 0 1 1 1.414 1.414l-8.485 8.486a1 1 0 0 1-1.414-1.415l8.485-8.485Z'%3E%3C/path%3E%3C/svg%3E");-webkit-mask-size:100%;mask-size:100%;background-color:currentColor}}.site-title:where(.astro-m46x6ez3){align-items:center;gap:var(--sl-nav-gap);font-size:var(--sl-text-h4);font-weight:600;color:var(--sl-color-text-accent);text-decoration:none;white-space:nowrap}img:where(.astro-m46x6ez3){height:calc(var(--sl-nav-height) - 2 * var(--sl-nav-pad-y));width:auto;max-width:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:0 50%;object-position:0 50%}a:where(.astro-wy4te6ga){color:var(--sl-color-text-accent);padding:.5em;margin:-.5em}a:where(.astro-wy4te6ga):hover{opacity:.66}div:where(.astro-p2efsdyb){border-inline-end:1px solid var(--sl-color-gray-5);display:none;padding-inline-end:1rem}@media (min-width: 50rem){div:where(.astro-p2efsdyb){display:flex}}a:where(.astro-p2efsdyb){color:var(--sl-color-text-accent);font-weight:600;text-decoration:none}div:where(.astro-e3sgix4a){border-inline-end:1px solid var(--sl-color-gray-5);display:none;padding-inline-end:1rem}@media (min-width: 50rem){div:where(.astro-e3sgix4a){display:flex}}a:where(.astro-e3sgix4a){color:var(--sl-color-text-accent);font-weight:600;text-decoration:none}.header:where(.astro-kmkmnagf){gap:var(--sl-nav-gap);justify-content:space-between;align-items:center;height:100%}.title-wrapper:where(.astro-kmkmnagf){overflow:hidden}.right-group:where(.astro-kmkmnagf),.social-icons:where(.astro-kmkmnagf){gap:1rem;align-items:center}.social-icons:where(.astro-kmkmnagf):after{content:"";height:2rem;border-inline-end:1px solid var(--sl-color-gray-5)}@media (min-width: 50rem){:root[data-has-sidebar]{--__sidebar-pad: calc(2 * var(--sl-nav-pad-x))}:root:not([data-has-toc]){--__toc-width: 0rem}.header:where(.astro-kmkmnagf){--__sidebar-width: max(0rem, var(--sl-content-inline-start, 0rem) - var(--sl-nav-pad-x));--__main-column-fr: calc( ( 100% + var(--__sidebar-pad, 0rem) - var(--__toc-width, var(--sl-sidebar-width)) - (2 * var(--__toc-width, var(--sl-nav-pad-x))) - var(--sl-content-inline-start, 0rem) - var(--sl-content-width) ) / 2 );display:grid;grid-template-columns:minmax(calc(var(--__sidebar-width) + max(0rem,var(--__main-column-fr) - var(--sl-nav-gap))),auto) 1fr auto;align-content:center}}.action:where(.astro-yjy4zhro){gap:.5em;align-items:center;border-radius:999rem;padding:.5rem 1.125rem;color:var(--sl-color-white);line-height:1.1875;text-decoration:none;font-size:var(--sl-text-sm)}.action:where(.astro-yjy4zhro).primary{background:var(--sl-color-text-accent);color:var(--sl-color-black)}.action:where(.astro-yjy4zhro).secondary{border:1px solid}.action:where(.astro-yjy4zhro).minimal{padding-inline:0}@media (min-width: 50rem){.action:where(.astro-yjy4zhro){font-size:var(--sl-text-base);padding:1rem 1.25rem}}.hero:where(.astro-jbfsktt5){display:grid;align-items:center;gap:1rem;padding-bottom:1rem}.hero:where(.astro-jbfsktt5)>img:where(.astro-jbfsktt5),.hero:where(.astro-jbfsktt5)>.hero-html:where(.astro-jbfsktt5){-o-object-fit:contain;object-fit:contain;width:min(70%,20rem);height:auto;margin-inline:auto}.stack:where(.astro-jbfsktt5){flex-direction:column;gap:clamp(1.5rem,calc(1.5rem + 1vw),2rem);text-align:center}.copy:where(.astro-jbfsktt5){flex-direction:column;gap:1rem;align-items:center}.copy:where(.astro-jbfsktt5)>:where(.astro-jbfsktt5){max-width:50ch}h1:where(.astro-jbfsktt5){font-size:clamp(var(--sl-text-3xl),calc(.25rem + 5vw),var(--sl-text-6xl));line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}.tagline:where(.astro-jbfsktt5){font-size:clamp(var(--sl-text-base),calc(.0625rem + 2vw),var(--sl-text-xl));color:var(--sl-color-gray-2)}.actions:where(.astro-jbfsktt5){gap:1rem 2rem;flex-wrap:wrap;justify-content:center}@media (min-width: 50rem){.hero:where(.astro-jbfsktt5){grid-template-columns:7fr 4fr;gap:3%;padding-block:clamp(2.5rem,calc(1rem + 10vmin),10rem)}.hero:where(.astro-jbfsktt5)>img:where(.astro-jbfsktt5),.hero:where(.astro-jbfsktt5)>.hero-html:where(.astro-jbfsktt5){order:2;width:min(100%,25rem)}.stack:where(.astro-jbfsktt5){text-align:start}.copy:where(.astro-jbfsktt5){align-items:flex-start}.actions:where(.astro-jbfsktt5){justify-content:flex-start}}.sl-markdown-content :not(a,strong,em,del,span,input,code)+:not(a,strong,em,del,span,input,code,:where(.not-content *)){margin-top:1rem}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6)+:is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){margin-top:1.5em}.sl-markdown-content li+li:not(:where(.not-content *)),.sl-markdown-content dt+dt:not(:where(.not-content *)),.sl-markdown-content dt+dd:not(:where(.not-content *)),.sl-markdown-content dd+dd:not(:where(.not-content *)){margin-top:.25rem}.sl-markdown-content li>:last-child:not(li,ul,ol):not(a,strong,em,del,span,input,:where(.not-content *)){margin-bottom:1.25rem}.sl-markdown-content dt:not(:where(.not-content *)){font-weight:700}.sl-markdown-content dd:not(:where(.not-content *)){padding-inline-start:1rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){color:var(--sl-color-white);line-height:var(--sl-line-height-headings);font-weight:600}.sl-markdown-content :is(img,picture,video,canvas,svg,iframe):not(:where(.not-content *)){display:block;max-width:100%;height:auto}.sl-markdown-content h1:not(:where(.not-content *)){font-size:var(--sl-text-h1)}.sl-markdown-content h2:not(:where(.not-content *)){font-size:var(--sl-text-h2)}.sl-markdown-content h3:not(:where(.not-content *)){font-size:var(--sl-text-h3)}.sl-markdown-content h4:not(:where(.not-content *)){font-size:var(--sl-text-h4)}.sl-markdown-content h5:not(:where(.not-content *)){font-size:var(--sl-text-h5)}.sl-markdown-content h6:not(:where(.not-content *)){font-size:var(--sl-text-h6)}.sl-markdown-content a:not(:where(.not-content *)){color:var(--sl-color-text-accent)}.sl-markdown-content a:hover:not(:where(.not-content *)){color:var(--sl-color-white)}.sl-markdown-content code:not(:where(.not-content *)){background-color:var(--sl-color-bg-inline-code);margin-block:-.125rem;padding:.125rem .375rem;font-size:var(--sl-text-code-sm)}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) code{font-size:inherit}.sl-markdown-content pre:not(:where(.not-content *)){border:1px solid var(--sl-color-gray-5);padding:.75rem 1rem;font-size:var(--sl-text-code);-moz-tab-size:2;-o-tab-size:2;tab-size:2}.sl-markdown-content pre code:not(:where(.not-content *)){all:unset;font-family:var(--__sl-font-mono)}.sl-markdown-content blockquote:not(:where(.not-content *)){border-inline-start:1px solid var(--sl-color-gray-5);padding-inline-start:1rem}.sl-markdown-content table:not(:where(.not-content *)){display:block;overflow:auto;border-collapse:collapse}.sl-markdown-content tr:nth-child(2n):not(:where(.not-content *)){background-color:var(--sl-color-gray-7, var(--sl-color-gray-6))}.sl-markdown-content :is(th,td):not(:where(.not-content *)){border:1px solid var(--sl-color-hairline-light);padding:.375rem .8125rem}.sl-markdown-content hr:not(:where(.not-content *)){border:0;border-bottom:1px solid var(--sl-color-hairline)}.pagination:where(.astro-q3jscx35){container-type:inline-size}.pagination:where(.astro-q3jscx35) .card-grid{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.pagination:where(.astro-q3jscx35) .sl-link-card:has([rel=prev]){grid-template-columns:auto 1fr}.pagination:where(.astro-q3jscx35) .sl-link-card:has([rel=prev]) span{order:2}.pagination:where(.astro-q3jscx35) .sl-link-card:has([rel=prev]) svg{transform:scaleX(-1)}.pagination:where(.astro-q3jscx35) .sl-link-card:has([rel=next]) span{text-align:end}@container (min-width: 30rem){.pagination:where(.astro-q3jscx35) .card-grid{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.pagination:where(.astro-q3jscx35) .sl-link-card:has([rel=next]){grid-column:2}}.post-footer:where(.astro-cywn4krw){display:flex;flex-direction:column;gap:1.5rem;margin-block-start:2rem!important}[data-mobile-menu-expanded]{overflow:hidden}@media (min-width: 50rem){[data-mobile-menu-expanded]{overflow:auto}}button:where(.astro-jif73yzw){position:fixed;top:calc((var(--sl-nav-height) - var(--sl-menu-button-size)) / 2);inset-inline-end:var(--sl-nav-pad-x);z-index:var(--sl-z-index-navbar);border:0;border-radius:50%;width:var(--sl-menu-button-size);height:var(--sl-menu-button-size);padding:.5rem;background-color:var(--sl-color-white);color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);cursor:pointer}:where(.astro-jif73yzw)[aria-expanded=true] button:where(.astro-jif73yzw){background-color:var(--sl-color-gray-2);box-shadow:none}[data-theme=light] button:where(.astro-jif73yzw){background-color:var(--sl-color-black);color:var(--sl-color-white)}[data-theme=light] :where(.astro-jif73yzw)[aria-expanded=true] button:where(.astro-jif73yzw){background-color:var(--sl-color-gray-5)}.page:where(.astro-vrdttmbt){flex-direction:column;min-height:100vh}.header:where(.astro-vrdttmbt){z-index:var(--sl-z-index-navbar);position:fixed;inset-inline-start:0;inset-block-start:0;width:100%;height:var(--sl-nav-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);padding-inline-end:var(--sl-nav-pad-x);background-color:var(--sl-color-bg-nav)}[data-has-sidebar] .header:where(.astro-vrdttmbt){padding-inline-end:calc(var(--sl-nav-gap) + var(--sl-nav-pad-x) + var(--sl-menu-button-size))}.sidebar-pane:where(.astro-vrdttmbt){visibility:var(--sl-sidebar-visibility, hidden);position:fixed;z-index:var(--sl-z-index-menu);inset-block:var(--sl-nav-height) 0;inset-inline-start:0;width:100%;background-color:var(--sl-color-black);overflow-y:auto}[aria-expanded=true]~.sidebar-pane:where(.astro-vrdttmbt){--sl-sidebar-visibility: visible}.sidebar-content:where(.astro-vrdttmbt){height:100%;min-height:-moz-max-content;min-height:max-content;padding:1rem var(--sl-sidebar-pad-x) 0;flex-direction:column;gap:1rem}@media (min-width: 50rem){.sidebar-content:where(.astro-vrdttmbt):after{content:"";padding-bottom:1px}}.main-frame:where(.astro-vrdttmbt){padding-top:calc(var(--sl-nav-height) + var(--sl-mobile-toc-height));padding-inline-start:var(--sl-content-inline-start)}@media (min-width: 50rem){[data-has-sidebar] .header:where(.astro-vrdttmbt){padding-inline-end:var(--sl-nav-pad-x)}.sidebar-pane:where(.astro-vrdttmbt){--sl-sidebar-visibility: visible;width:var(--sl-sidebar-width);background-color:var(--sl-color-bg-sidebar);border-inline-end:1px solid var(--sl-color-hairline-shade)}}ul:where(.astro-g2bywc46){padding:0;list-style:none}a:where(.astro-g2bywc46){--pad-inline: .5rem;display:block;border-radius:.25rem;padding-block:.25rem;padding-inline:calc(1rem * var(--depth) + var(--pad-inline)) var(--pad-inline);line-height:1.25}a:where(.astro-g2bywc46)[aria-current=true]{color:var(--sl-color-text-accent)}.isMobile:where(.astro-g2bywc46) a:where(.astro-g2bywc46){--pad-inline: 1rem;display:flex;justify-content:space-between;gap:var(--pad-inline);border-top:1px solid var(--sl-color-gray-6);border-radius:0;padding-block:.5rem;color:var(--sl-color-text);font-size:var(--sl-text-sm);text-decoration:none;outline-offset:var(--sl-outline-offset-inside)}.isMobile:where(.astro-g2bywc46):first-child>li:where(.astro-g2bywc46):first-child>a:where(.astro-g2bywc46){border-top:0}.isMobile:where(.astro-g2bywc46) a:where(.astro-g2bywc46)[aria-current=true],.isMobile:where(.astro-g2bywc46) a:where(.astro-g2bywc46)[aria-current=true]:hover,.isMobile:where(.astro-g2bywc46) a:where(.astro-g2bywc46)[aria-current=true]:focus{color:var(--sl-color-white);background-color:unset}.isMobile:where(.astro-g2bywc46) a:where(.astro-g2bywc46)[aria-current=true]:after{content:"";width:1rem;background-color:var(--sl-color-text-accent);-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;flex-shrink:0}nav:where(.astro-doynk5tl){position:fixed;z-index:var(--sl-z-index-toc);top:calc(var(--sl-nav-height) - 1px);inset-inline:0;border-top:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-bg-nav)}@media (min-width: 50rem){nav:where(.astro-doynk5tl){inset-inline-start:var(--sl-content-inline-start, 0)}}summary:where(.astro-doynk5tl){gap:.5rem;align-items:center;height:var(--sl-mobile-toc-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:.5rem 1rem;font-size:var(--sl-text-xs);outline-offset:var(--sl-outline-offset-inside)}summary:where(.astro-doynk5tl)::marker,summary:where(.astro-doynk5tl)::-webkit-details-marker{display:none}.toggle:where(.astro-doynk5tl){flex-shrink:0;gap:1rem;align-items:center;justify-content:space-between;border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding-block:.5rem;padding-inline-start:.75rem;padding-inline-end:.5rem;line-height:1;background-color:var(--sl-color-black);-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}details:where(.astro-doynk5tl)[open] .toggle:where(.astro-doynk5tl){color:var(--sl-color-white);border-color:var(--sl-color-accent)}details:where(.astro-doynk5tl) .toggle:where(.astro-doynk5tl):hover{color:var(--sl-color-white);border-color:var(--sl-color-gray-2)}[dir=rtl] .caret:where(.astro-doynk5tl){transform:rotate(180deg)}details:where(.astro-doynk5tl)[open] .caret:where(.astro-doynk5tl){transform:rotate(90deg)}.display-current:where(.astro-doynk5tl){white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:var(--sl-color-white)}.dropdown:where(.astro-doynk5tl){--border-top: 1px;margin-top:calc(-1 * var(--border-top));border:var(--border-top) solid var(--sl-color-gray-6);border-top-color:var(--sl-color-hairline-shade);max-height:calc(85vh - var(--sl-nav-height) - var(--sl-mobile-toc-height));overflow-y:auto;background-color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);overscroll-behavior:contain}.right-sidebar-panel:where(.astro-pb3aqygn){padding:1rem var(--sl-sidebar-pad-x)}.sl-container:where(.astro-pb3aqygn){width:calc(var(--sl-sidebar-width) - 2 * var(--sl-sidebar-pad-x))}.right-sidebar-panel:where(.astro-pb3aqygn) h2{color:var(--sl-color-white);font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);margin-bottom:.5rem}.right-sidebar-panel:where(.astro-pb3aqygn) :where(a){display:block;font-size:var(--sl-text-xs);text-decoration:none;color:var(--sl-color-gray-3);overflow-wrap:anywhere}.right-sidebar-panel:where(.astro-pb3aqygn) :where(a):hover{color:var(--sl-color-white)}@media (min-width: 72rem){.sl-container:where(.astro-pb3aqygn){max-width:calc(((100vw - var(--sl-sidebar-width) - 2 * var(--sl-content-pad-x) - 2 * var(--sl-sidebar-pad-x)) * .25))}}h1:where(.astro-j6tvhyss){margin-top:1rem;font-size:var(--sl-text-h1);line-height:var(--sl-line-height-headings);font-weight:600;color:var(--sl-color-white)}.social-icons:where(.astro-wu23bvmt){margin-inline-end:auto;gap:1rem;align-items:center;padding-block:1rem}.social-icons:where(.astro-wu23bvmt):empty{display:none}.mobile-preferences:where(.astro-wu23bvmt){justify-content:space-between;flex-wrap:wrap;border-top:1px solid var(--sl-color-gray-6);-moz-column-gap:1rem;column-gap:1rem;padding:.5rem 0}.sl-badge:where(.astro-vohx2lp7){display:inline-block;border:1px solid var(--sl-color-border-badge);border-radius:.25rem;font-family:var(--sl-font-system-mono);font-size:var(--sl-text-xs);font-weight:400;padding:.125rem .375rem;line-height:1;color:#fff;background-color:var(--sl-color-bg-badge);overflow-wrap:anywhere}.outline:where(.astro-vohx2lp7){--sl-color-bg-badge: transparent;--sl-color-border-badge: currentColor;color:inherit}.default:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-accent-low);--sl-color-border-badge: var(--sl-color-accent)}.note:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-blue-low);--sl-color-border-badge: var(--sl-color-blue)}.danger:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-red-low);--sl-color-border-badge: var(--sl-color-red)}.success:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-green-low);--sl-color-border-badge: var(--sl-color-green)}.caution:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-orange-low);--sl-color-border-badge: var(--sl-color-orange)}.tip:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-purple-low);--sl-color-border-badge: var(--sl-color-purple)}[data-theme=light] .default:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-accent-high)}[data-theme=light] .note:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-blue-high)}[data-theme=light] .danger:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-red-high)}[data-theme=light] .success:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-green-high)}[data-theme=light] .caution:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-orange-high)}[data-theme=light] .tip:where(.astro-vohx2lp7){--sl-color-bg-badge: var(--sl-color-purple-high)}ul:where(.astro-3ii7xxms){--sl-sidebar-item-padding-inline: .5rem;list-style:none;padding:0}li:where(.astro-3ii7xxms){overflow-wrap:anywhere}ul:where(.astro-3ii7xxms) ul:where(.astro-3ii7xxms) li:where(.astro-3ii7xxms){margin-inline-start:var(--sl-sidebar-item-padding-inline);border-inline-start:1px solid var(--sl-color-hairline-light);padding-inline-start:var(--sl-sidebar-item-padding-inline)}.large:where(.astro-3ii7xxms){font-size:var(--sl-text-lg);font-weight:600;color:var(--sl-color-white)}.top-level:where(.astro-3ii7xxms)>li:where(.astro-3ii7xxms)+li:where(.astro-3ii7xxms){margin-top:.75rem}summary:where(.astro-3ii7xxms){display:flex;align-items:center;justify-content:space-between;padding:.2em var(--sl-sidebar-item-padding-inline);line-height:1.4;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}summary:where(.astro-3ii7xxms)::marker,summary:where(.astro-3ii7xxms)::-webkit-details-marker{display:none}.caret:where(.astro-3ii7xxms){transition:transform .2s ease-in-out;flex-shrink:0}[dir=rtl] .caret:where(.astro-3ii7xxms){transform:rotate(180deg)}:where(.astro-3ii7xxms)[open]>summary:where(.astro-3ii7xxms) .caret:where(.astro-3ii7xxms){transform:rotate(90deg)}a:where(.astro-3ii7xxms){display:block;border-radius:.25rem;text-decoration:none;color:var(--sl-color-gray-2);padding:.3em var(--sl-sidebar-item-padding-inline);line-height:1.4}a:where(.astro-3ii7xxms):hover,a:where(.astro-3ii7xxms):focus{color:var(--sl-color-white)}:where(.astro-3ii7xxms)[aria-current=page],:where(.astro-3ii7xxms)[aria-current=page]:hover,:where(.astro-3ii7xxms)[aria-current=page]:focus{font-weight:600;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent)}a:where(.astro-3ii7xxms)>:where(.astro-3ii7xxms):not(:last-child),.group-label:where(.astro-3ii7xxms)>:where(.astro-3ii7xxms):not(:last-child){margin-inline-end:.25em}@media (min-width: 50rem){.top-level:where(.astro-3ii7xxms)>li:where(.astro-3ii7xxms)+li:where(.astro-3ii7xxms){margin-top:.5rem}.large:where(.astro-3ii7xxms){font-size:var(--sl-text-base)}a:where(.astro-3ii7xxms){font-size:var(--sl-text-sm)}}div:where(.astro-4f3f2ziw){border-bottom:1px solid var(--sl-color-gray-6);padding-bottom:1rem}div:where(.astro-4f3f2ziw) a:where(.astro-4f3f2ziw){color:var(--sl-color-white);font-size:var(--sl-text-lg);font-weight:600;text-decoration:none;display:block}a:where(.astro-7q3lir66){clip:rect(0,0,0,0);position:fixed;top:.75rem;inset-inline-start:.75rem}a:where(.astro-7q3lir66):focus{clip:unset;z-index:var(--sl-z-index-skiplink);display:block;padding:.5rem 1rem;text-decoration:none;color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent);box-shadow:var(--sl-shadow-lg)}.main-pane:where(.astro-67yu43on){isolation:isolate}@media (min-width: 72rem){.right-sidebar-container:where(.astro-67yu43on){order:2;position:relative;width:calc(var(--sl-sidebar-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) / 2)}.right-sidebar:where(.astro-67yu43on){position:fixed;top:0;border-inline-start:1px solid var(--sl-color-gray-6);padding-top:var(--sl-nav-height);width:100%;height:100vh;overflow-y:auto;scrollbar-width:none}.main-pane:where(.astro-67yu43on){width:100%}[data-has-sidebar][data-has-toc] .main-pane:where(.astro-67yu43on){--sl-content-margin-inline: auto 0;order:1;width:calc(var(--sl-content-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) / 2)}}.starlight-aside{padding:1rem;border-inline-start:.25rem solid;color:var(--sl-color-white)}.starlight-aside--note{--sl-color-asides-text-accent: var(--sl-color-blue-high);border-color:var(--sl-color-blue);background-color:var(--sl-color-blue-low)}.starlight-aside--tip{--sl-color-asides-text-accent: var(--sl-color-purple-high);border-color:var(--sl-color-purple);background-color:var(--sl-color-purple-low)}.starlight-aside--caution{--sl-color-asides-text-accent: var(--sl-color-orange-high);border-color:var(--sl-color-orange);background-color:var(--sl-color-orange-low)}.starlight-aside--danger{--sl-color-asides-text-accent: var(--sl-color-red-high);border-color:var(--sl-color-red);background-color:var(--sl-color-red-low)}.starlight-aside__title{display:flex;gap:.5rem;align-items:center;font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);color:var(--sl-color-asides-text-accent)}.starlight-aside__icon{font-size:1.333em;width:1em;height:1em}.starlight-aside__title+.starlight-aside__content{margin-top:.5rem}.starlight-aside__content a{color:var(--sl-color-asides-text-accent)}*,:before,:after{border-width:0;border-style:solid;border-color:#eceef2}:before,:after{--tw-content: }:root{--sl-font: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--sl-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--sl-color-white: #fff;--sl-color-gray-1: #eceef2;--sl-color-gray-2: #c0c2c7;--sl-color-gray-3: #888b96;--sl-color-gray-4: #4b5563;--sl-color-gray-5: #353841;--sl-color-gray-6: #24272f;--sl-color-black: #17181c;--sl-color-accent-low: #3a171f;--sl-color-accent: #b6335c;--sl-color-accent-high: #eabac2}:root[data-theme=light]{--sl-color-white: #17181c;--sl-color-gray-1: #24272f;--sl-color-gray-2: #353841;--sl-color-gray-3: #545861;--sl-color-gray-4: #888b96;--sl-color-gray-5: #c0c2c7;--sl-color-gray-6: #eceef2;--sl-color-gray-7: #f5f6f8;--sl-color-black: #fff;--sl-color-accent-low: #eabac2;--sl-color-accent: #b6335c;--sl-color-accent-high: #541c2b}*,:before,:after{--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-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--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: rgb(59 130 246 / .5);--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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::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-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--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: rgb(59 130 246 / .5);--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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-2{bottom:.5rem}.bottom-4{bottom:1rem}.right-4{right:1rem}.z-50{z-index:50}.mb-14{margin-bottom:3.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-2{margin-top:.5rem}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-16{height:4rem}.h-6{height:1.5rem}.h-8{height:2rem}.w-16{width:4rem}.w-5\/6{width:83.333333%}.w-6{width:1.5rem}.w-8{width:2rem}.-translate-y-4{--tw-translate-y: -1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:1rem}.overflow-hidden{overflow:hidden}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-\[var\(--sl-color-orange\)\]{border-color:var(--sl-color-orange)}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(192 194 199 / var(--tw-border-opacity))}.bg-\[var\(--sl-color-orange-low\)\]{background-color:var(--sl-color-orange-low)}.bg-accent-600{--tw-bg-opacity: 1;background-color:rgb(182 51 92 / var(--tw-bg-opacity))}.bg-gray-800\/90{background-color:#24272fe6}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-center{text-align:center}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-gray-900{--tw-text-opacity: 1;color:rgb(23 24 28 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.opacity-0{opacity:0}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.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)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:hidden{display:none}.peer:checked~.peer-checked\:pointer-events-auto{pointer-events:auto}.peer:checked~.peer-checked\:visible{visibility:visible}.peer:checked~.peer-checked\:opacity-100{opacity:1}.dark\:border-gray-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(53 56 65 / var(--tw-border-opacity))}.dark\:bg-accent-200:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(234 186 194 / var(--tw-bg-opacity))}.dark\:bg-gray-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(23 24 28 / var(--tw-bg-opacity))}.dark\:text-gray-900:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(23 24 28 / var(--tw-text-opacity))}.dark\:text-white:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}@media (min-width: 768px){.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}.peer:checked~.peer-checked\:\[\&\>\*\]\:translate-y-0>*{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:\[\&\>\*\]\:scale-100>*{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}html:not([data-has-toc]){--sl-mobile-toc-height: 0rem}html:not([data-has-sidebar]){--sl-content-width: 67.5rem}html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))}main:where(.astro-bguv2lll){padding-bottom:3vh}@media (min-width: 50em){:where(.astro-bguv2lll)[data-has-sidebar]{--sl-content-inline-start: var(--sl-sidebar-width)}}@media (min-width: 72em){html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height))}} diff --git a/_astro/Tabs.astro_astro_type_script_index_0_lang.CCIyraCc.js b/_astro/Tabs.astro_astro_type_script_index_0_lang.CCIyraCc.js new file mode 100644 index 000000000..c861fb379 --- /dev/null +++ b/_astro/Tabs.astro_astro_type_script_index_0_lang.CCIyraCc.js @@ -0,0 +1 @@ +class c extends HTMLElement{static#e=new Map;#t;constructor(){super();const n=this.querySelector('[role="tablist"]');if(this.tabs=[...n.querySelectorAll('[role="tab"]')],this.panels=[...this.querySelectorAll(':scope > [role="tabpanel"]')],this.#t=this.dataset.syncKey,this.#t){const i=c.#e.get(this.#t)??[];i.push(this),c.#e.set(this.#t,i)}this.tabs.forEach((i,r)=>{i.addEventListener("click",t=>{t.preventDefault();const s=n.querySelector('[aria-selected="true"]');t.currentTarget!==s&&this.switchTab(t.currentTarget,r)}),i.addEventListener("keydown",t=>{const s=this.tabs.indexOf(t.currentTarget),e=t.key==="ArrowLeft"?s-1:t.key==="ArrowRight"?s+1:t.key==="Home"?0:t.key==="End"?this.tabs.length-1:null;e!==null&&this.tabs[e]&&(t.preventDefault(),this.switchTab(this.tabs[e],e))})})}switchTab(n,i,r=!0){if(!n)return;const t=r?this.getBoundingClientRect().top:0;this.tabs.forEach(e=>{e.setAttribute("aria-selected","false"),e.setAttribute("tabindex","-1")}),this.panels.forEach(e=>{e.hidden=!0});const s=this.panels[i];s&&(s.hidden=!1),n.removeAttribute("tabindex"),n.setAttribute("aria-selected","true"),r&&(n.focus(),c.#s(this,n.innerText),window.scrollTo({top:window.scrollY+(this.getBoundingClientRect().top-t)}))}static#s(n,i){const r=n.#t;if(!r||!i)return;const t=c.#e.get(r);if(t)for(const s of t){if(s===n)continue;const e=s.tabs.findIndex(a=>a.innerText===i);e!==-1&&s.switchTab(s.tabs[e],e,!1)}}}customElements.define("starlight-tabs",c); diff --git a/_astro/ec.3zb7u.js b/_astro/ec.3zb7u.js new file mode 100644 index 000000000..8c0e188ff --- /dev/null +++ b/_astro/ec.3zb7u.js @@ -0,0 +1,3 @@ +try{(()=>{function i(e){if(!e)return;let r=e.getAttribute("tabindex")!==null,t=e.scrollWidth>e.clientWidth;t&&!r?e.setAttribute("tabindex","0"):!t&&r&&e.removeAttribute("tabindex")}function a(e){let r=new Set,t;return new ResizeObserver(u=>{u.forEach(o=>r.add(o.target)),t&&clearTimeout(t),t=setTimeout(()=>{t=void 0,r.forEach(o=>e(o)),r.clear()},250)})}function s(e,r){e.querySelectorAll?.(".expressive-code pre > code").forEach(t=>{let n=t.parentElement;n&&(i(n),r.observe(n))})}var d=a(i);s(document,d);var c=new MutationObserver(e=>e.forEach(r=>r.addedNodes.forEach(t=>{s(t,d)})));c.observe(document.body,{childList:!0,subtree:!0});document.addEventListener("astro:page-load",()=>{s(document,d)});})();}catch(e){console.error("[EC] tabindex-js-module failed:",e)} +try{(()=>{function i(o){let e=document.createElement("pre");Object.assign(e.style,{opacity:"0",pointerEvents:"none",position:"absolute",overflow:"hidden",left:"0",top:"0",width:"20px",height:"20px",webkitUserSelect:"auto",userSelect:"all"}),e.ariaHidden="true",e.textContent=o,document.body.appendChild(e);let a=document.createRange();a.selectNode(e);let n=getSelection();if(!n)return!1;n.removeAllRanges(),n.addRange(a);let r=!1;try{r=document.execCommand("copy")}finally{n.removeAllRanges(),document.body.removeChild(e)}return r}async function l(o){let e=o.currentTarget,a=e.dataset,n=!1,r=a.code.replace(/\u007f/g,` +`);try{await navigator.clipboard.writeText(r),n=!0}catch{n=i(r)}if(!n||e.parentNode?.querySelector(".feedback"))return;let t=document.createElement("div");t.classList.add("feedback"),t.append(a.copied),e.before(t),t.offsetWidth,requestAnimationFrame(()=>t?.classList.add("show"));let c=()=>!t||t.classList.remove("show"),d=()=>{!t||parseFloat(getComputedStyle(t).opacity)>0||(t.remove(),t=void 0)};setTimeout(c,1500),setTimeout(d,2500),e.addEventListener("blur",c),t.addEventListener("transitioncancel",d),t.addEventListener("transitionend",d)}function s(o){o.querySelectorAll?.(".expressive-code .copy button").forEach(e=>e.addEventListener("click",l))}s(document);var u=new MutationObserver(o=>o.forEach(e=>e.addedNodes.forEach(a=>{s(a)})));u.observe(document.body,{childList:!0,subtree:!0});document.addEventListener("astro:page-load",()=>{s(document)});})();}catch(e){console.error("[EC] copy-js-module failed:",e)} \ No newline at end of file diff --git a/_astro/ec.nhq3f.css b/_astro/ec.nhq3f.css new file mode 100644 index 000000000..289e668dc --- /dev/null +++ b/_astro/ec.nhq3f.css @@ -0,0 +1 @@ +.expressive-code{font-family:var(--ec-uiFontFml);font-size:var(--ec-uiFontSize);font-weight:var(--ec-uiFontWg);line-height:var(--ec-uiLineHt);text-size-adjust:none;-webkit-text-size-adjust:none}.expressive-code *:not(path){all:revert;box-sizing:border-box}.expressive-code pre{display:flex;margin:0;padding:0;border:var(--ec-brdWd) solid var(--ec-brdCol);border-radius:calc(var(--ec-brdRad) + var(--ec-brdWd));background:var(--ec-codeBg)}.expressive-code pre:focus-visible{outline:3px solid var(--ec-focusBrd);outline-offset:-3px}.expressive-code pre > code{all:unset;display:block;flex:1 0 100%;padding:var(--ec-codePadBlk) 0;color:var(--ec-codeFg);font-family:var(--ec-codeFontFml);font-size:var(--ec-codeFontSize);font-weight:var(--ec-codeFontWg);line-height:var(--ec-codeLineHt)}.expressive-code pre{overflow-x:auto}.expressive-code pre.wrap .ec-line .code{white-space:pre-wrap;overflow-wrap:break-word;min-width:min(20ch, var(--ecMaxLine, 20ch))}.expressive-code pre.wrap .ec-line .code span.indent{white-space:pre}.expressive-code pre::-webkit-scrollbar,.expressive-code pre::-webkit-scrollbar-track{background-color:inherit;border-radius:calc(var(--ec-brdRad) + var(--ec-brdWd));border-top-left-radius:0;border-top-right-radius:0}.expressive-code pre::-webkit-scrollbar-thumb{background-color:var(--ec-sbThumbCol);border:4px solid transparent;background-clip:content-box;border-radius:10px}.expressive-code pre::-webkit-scrollbar-thumb:hover{background-color:var(--ec-sbThumbHoverCol)}.expressive-code .ec-line{direction:ltr;unicode-bidi:isolate;display:grid;grid-template-areas:'gutter code';grid-template-columns:auto 1fr;position:relative}.expressive-code .ec-line .gutter{grid-area:gutter;color:var(--ec-gtrFg)}.expressive-code .ec-line .gutter > *{pointer-events:none;user-select:none;-webkit-user-select:none}.expressive-code .ec-line .gutter ~ .code{--ecLineBrdCol:var(--ec-gtrBrdCol)}.expressive-code .ec-line.highlight .gutter{color:var(--ec-gtrHlFg)}.expressive-code .ec-line .code{grid-area:code;position:relative;box-sizing:content-box;padding-inline-start:calc(var(--ecIndent, 0ch) + var(--ec-codePadInl) - var(--ecGtrBrdWd));padding-inline-end:var(--ec-codePadInl);text-indent:calc(var(--ecIndent, 0ch) * -1)}.expressive-code .ec-line .code::before,.expressive-code .ec-line .code::after,.expressive-code .ec-line .code :where(*){text-indent:0}.expressive-code .ec-line .code{--ecGtrBrdWd:var(--ec-gtrBrdWd);border-inline-start:var(--ecGtrBrdWd) solid var(--ecLineBrdCol, transparent)}.expressive-code :nth-child(1 of .ec-line) .code{padding-inline-end:calc(2rem + var(--ec-codePadInl))}.expressive-code .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.expressive-code .ec-line.mark{--tmLineBgCol:var(--ec-tm-markBg)}.expressive-code .ec-line.mark .code{--ecLineBrdCol:var(--ec-tm-markBrdCol)}.expressive-code .ec-line.ins{--tmLineBgCol:var(--ec-tm-insBg);--tmLabel:var(--ec-tm-insDiffIndContent)}.expressive-code .ec-line.ins .code{--ecLineBrdCol:var(--ec-tm-insBrdCol)}.expressive-code .ec-line.ins .code::before{color:var(--ec-tm-insDiffIndCol)}.expressive-code .ec-line.del{--tmLineBgCol:var(--ec-tm-delBg);--tmLabel:var(--ec-tm-delDiffIndContent)}.expressive-code .ec-line.del .code{--ecLineBrdCol:var(--ec-tm-delBrdCol)}.expressive-code .ec-line.del .code::before{color:var(--ec-tm-delDiffIndCol)}.expressive-code .ec-line.mark,.expressive-code .ec-line.ins,.expressive-code .ec-line.del{background:var(--tmLineBgCol)}.expressive-code .ec-line.mark .code,.expressive-code .ec-line.ins .code,.expressive-code .ec-line.del .code{--ecGtrBrdWd:var(--ec-tm-lineMarkerAccentWd)}.expressive-code .ec-line.mark .code::before,.expressive-code .ec-line.ins .code::before,.expressive-code .ec-line.del .code::before{display:block;position:absolute;left:0;box-sizing:border-box;content:var(--tmLabel, ' ');padding-inline-start:var(--ec-tm-lineDiffIndMargLeft);text-align:center;white-space:pre}.expressive-code .ec-line.mark.tm-label .code::before,.expressive-code .ec-line.ins.tm-label .code::before,.expressive-code .ec-line.del.tm-label .code::before{background:var(--ecLineBrdCol);padding:0 calc(var(--ec-tm-lineMarkerLabelPadInl) + var(--ec-tm-lineMarkerAccentWd)) 0 var(--ec-tm-lineMarkerLabelPadInl);color:var(--ec-tm-lineMarkerLabelCol)}.expressive-code .ec-line mark{--tmInlineBgCol:var(--ec-tm-markBg);--tmInlineBrdCol:var(--ec-tm-markBrdCol)}.expressive-code .ec-line ins{--tmInlineBgCol:var(--ec-tm-insBg);--tmInlineBrdCol:var(--ec-tm-insBrdCol)}.expressive-code .ec-line del{--tmInlineBgCol:var(--ec-tm-delBg);--tmInlineBrdCol:var(--ec-tm-delBrdCol)}.expressive-code .ec-line mark,.expressive-code .ec-line ins,.expressive-code .ec-line del{all:unset;display:inline-block;position:relative;--tmBrdL:var(--ec-tm-inlMarkerBrdWd);--tmBrdR:var(--ec-tm-inlMarkerBrdWd);--tmRadL:var(--ec-tm-inlMarkerBrdRad);--tmRadR:var(--ec-tm-inlMarkerBrdRad);margin-inline:0.025rem;padding-inline:var(--ec-tm-inlMarkerPad);border-radius:var(--tmRadL) var(--tmRadR) var(--tmRadR) var(--tmRadL);background:var(--tmInlineBgCol);background-clip:padding-box}.expressive-code .ec-line mark.open-start,.expressive-code .ec-line ins.open-start,.expressive-code .ec-line del.open-start{margin-inline-start:0;padding-inline-start:0;--tmBrdL:0px;--tmRadL:0}.expressive-code .ec-line mark.open-end,.expressive-code .ec-line ins.open-end,.expressive-code .ec-line del.open-end{margin-inline-end:0;padding-inline-end:0;--tmBrdR:0px;--tmRadR:0}.expressive-code .ec-line mark::before,.expressive-code .ec-line ins::before,.expressive-code .ec-line del::before{content:'';position:absolute;pointer-events:none;display:inline-block;inset:0;border-radius:var(--tmRadL) var(--tmRadR) var(--tmRadR) var(--tmRadL);border:var(--ec-tm-inlMarkerBrdWd) solid var(--tmInlineBrdCol);border-inline-width:var(--tmBrdL) var(--tmBrdR)}.expressive-code .frame{all:unset;position:relative;display:block;--header-border-radius:calc(var(--ec-brdRad) + var(--ec-brdWd));--tab-border-radius:calc(var(--ec-frm-edTabBrdRad) + var(--ec-brdWd));--button-spacing:0.4rem;--code-background:var(--ec-frm-edBg);border-radius:var(--header-border-radius);box-shadow:var(--ec-frm-frameBoxShdCssVal)}.expressive-code .frame .header{display:none;z-index:1;position:relative;border-radius:var(--header-border-radius) var(--header-border-radius) 0 0}.expressive-code .frame.has-title pre,.expressive-code .frame.has-title code,.expressive-code .frame.is-terminal pre,.expressive-code .frame.is-terminal code{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.expressive-code .frame .title:empty:before{content:'\a0'}.expressive-code .frame.has-title:not(.is-terminal){--button-spacing:calc(1.9rem + 2 * (var(--ec-uiPadBlk) + var(--ec-frm-edActTabIndHt)))}.expressive-code .frame.has-title:not(.is-terminal) .title{position:relative;color:var(--ec-frm-edActTabFg);background:var(--ec-frm-edActTabBg);background-clip:padding-box;margin-block-start:var(--ec-frm-edTabsMargBlkStart);padding:calc(var(--ec-uiPadBlk) + var(--ec-frm-edActTabIndHt)) var(--ec-uiPadInl);border:var(--ec-brdWd) solid var(--ec-frm-edActTabBrdCol);border-radius:var(--tab-border-radius) var(--tab-border-radius) 0 0;border-bottom:none;overflow:hidden}.expressive-code .frame.has-title:not(.is-terminal) .title::after{content:'';position:absolute;pointer-events:none;inset:0;border-top:var(--ec-frm-edActTabIndHt) solid var(--ec-frm-edActTabIndTopCol);border-bottom:var(--ec-frm-edActTabIndHt) solid var(--ec-frm-edActTabIndBtmCol)}.expressive-code .frame.has-title:not(.is-terminal) .header{display:flex;background:linear-gradient(to top, var(--ec-frm-edTabBarBrdBtmCol) var(--ec-brdWd), transparent var(--ec-brdWd)),linear-gradient(var(--ec-frm-edTabBarBg), var(--ec-frm-edTabBarBg));background-repeat:no-repeat;padding-inline-start:var(--ec-frm-edTabsMargInlStart)}.expressive-code .frame.has-title:not(.is-terminal) .header::before{content:'';position:absolute;pointer-events:none;inset:0;border:var(--ec-brdWd) solid var(--ec-frm-edTabBarBrdCol);border-radius:inherit;border-bottom:none}.expressive-code .frame.is-terminal{--button-spacing:calc(1.9rem + var(--ec-brdWd) + 2 * var(--ec-uiPadBlk));--code-background:var(--ec-frm-trmBg)}.expressive-code .frame.is-terminal .header{display:flex;align-items:center;justify-content:center;padding-block:var(--ec-uiPadBlk);padding-block-end:calc(var(--ec-uiPadBlk) + var(--ec-brdWd));position:relative;font-weight:500;letter-spacing:0.025ch;color:var(--ec-frm-trmTtbFg);background:var(--ec-frm-trmTtbBg);border:var(--ec-brdWd) solid var(--ec-brdCol);border-bottom:none}.expressive-code .frame.is-terminal .header::before{content:'';position:absolute;pointer-events:none;left:var(--ec-uiPadInl);width:2.1rem;height:0.56rem;line-height:0;background-color:var(--ec-frm-trmTtbDotsFg);opacity:var(--ec-frm-trmTtbDotsOpa);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 16' preserveAspectRatio='xMidYMid meet'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3Ccircle cx='30' cy='8' r='8'/%3E%3Ccircle cx='52' cy='8' r='8'/%3E%3C/svg%3E");-webkit-mask-repeat:no-repeat;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 16' preserveAspectRatio='xMidYMid meet'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3Ccircle cx='30' cy='8' r='8'/%3E%3Ccircle cx='52' cy='8' r='8'/%3E%3C/svg%3E");mask-repeat:no-repeat}.expressive-code .frame.is-terminal .header::after{content:'';position:absolute;pointer-events:none;inset:0;border-bottom:var(--ec-brdWd) solid var(--ec-frm-trmTtbBrdBtmCol)}.expressive-code .frame pre{background:var(--code-background)}.expressive-code .copy{display:flex;gap:0.25rem;flex-direction:row;position:absolute;inset-block-start:calc(var(--ec-brdWd) + var(--button-spacing));inset-inline-end:calc(var(--ec-brdWd) + var(--ec-uiPadInl) / 2);direction:ltr;unicode-bidi:isolate}.expressive-code .copy button{position:relative;align-self:flex-end;margin:0;padding:0;border:none;border-radius:0.2rem;z-index:1;cursor:pointer;transition-property:opacity, background, border-color;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.25, 0.46, 0.45, 0.94);width:2.5rem;height:2.5rem;background:var(--code-background);opacity:0.75}.expressive-code .copy button div{position:absolute;inset:0;border-radius:inherit;background:var(--ec-frm-inlBtnBg);opacity:var(--ec-frm-inlBtnBgIdleOpa);transition-property:inherit;transition-duration:inherit;transition-timing-function:inherit}.expressive-code .copy button::before{content:'';position:absolute;pointer-events:none;inset:0;border-radius:inherit;border:var(--ec-brdWd) solid var(--ec-frm-inlBtnBrd);opacity:var(--ec-frm-inlBtnBrdOpa)}.expressive-code .copy button::after{content:'';position:absolute;pointer-events:none;inset:0;background-color:var(--ec-frm-inlBtnFg);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75'%3E%3Cpath d='M3 19a2 2 0 0 1-1-2V2a2 2 0 0 1 1-1h13a2 2 0 0 1 2 1'/%3E%3Crect x='6' y='5' width='16' height='18' rx='1.5' ry='1.5'/%3E%3C/svg%3E");-webkit-mask-repeat:no-repeat;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75'%3E%3Cpath d='M3 19a2 2 0 0 1-1-2V2a2 2 0 0 1 1-1h13a2 2 0 0 1 2 1'/%3E%3Crect x='6' y='5' width='16' height='18' rx='1.5' ry='1.5'/%3E%3C/svg%3E");mask-repeat:no-repeat;margin:0.475rem;line-height:0}.expressive-code .copy button:hover,.expressive-code .copy button:focus:focus-visible{opacity:1}.expressive-code .copy button:hover div,.expressive-code .copy button:focus:focus-visible div{opacity:var(--ec-frm-inlBtnBgHoverOrFocusOpa)}.expressive-code .copy button:active{opacity:1}.expressive-code .copy button:active div{opacity:var(--ec-frm-inlBtnBgActOpa)}.expressive-code .copy .feedback{--tooltip-arrow-size:0.35rem;--tooltip-bg:var(--ec-frm-tooltipSuccessBg);color:var(--ec-frm-tooltipSuccessFg);pointer-events:none;user-select:none;-webkit-user-select:none;position:relative;align-self:center;background-color:var(--tooltip-bg);z-index:99;padding:0.125rem 0.75rem;border-radius:0.2rem;margin-inline-end:var(--tooltip-arrow-size);opacity:0;transition-property:opacity, transform;transition-duration:0.2s;transition-timing-function:ease-in-out;transform:translate3d(0, 0.25rem, 0)}.expressive-code .copy .feedback::after{content:'';position:absolute;pointer-events:none;top:calc(50% - var(--tooltip-arrow-size));inset-inline-end:calc(-2 * (var(--tooltip-arrow-size) - 0.5px));border:var(--tooltip-arrow-size) solid transparent;border-inline-start-color:var(--tooltip-bg)}.expressive-code .copy .feedback.show{opacity:1;transform:translate3d(0, 0, 0)}@media (hover: hover){.expressive-code{}.expressive-code .copy button{opacity:0;width:2rem;height:2rem}.expressive-code .frame:hover .copy button:not(:hover),.expressive-code .frame:focus-within :focus-visible ~ .copy button:not(:hover),.expressive-code .frame .copy .feedback.show ~ button:not(:hover){opacity:0.75}}.expressive-code .gutter .ln{display:inline-flex;justify-content:flex-end;align-items:flex-start;box-sizing:content-box;min-width:var(--lnWidth, 2ch);padding-inline:2ch;color:var(--ec-lineNumbers-fg)}.highlight .expressive-code .gutter .ln{color:var(--ec-lineNumbers-hlFg)}:root,:root:not([data-theme='dark']) .expressive-code[data-theme='dark']{--ec-brdRad:0px;--ec-brdWd:1px;--ec-brdCol:color-mix(in srgb, var(--sl-color-gray-5), transparent 25%);--ec-codeFontFml:var(--__sl-font-mono);--ec-codeFontSize:var(--sl-text-code);--ec-codeFontWg:400;--ec-codeLineHt:var(--sl-line-height);--ec-codePadBlk:0.75rem;--ec-codePadInl:1rem;--ec-codeBg:#011627;--ec-codeFg:#d6deeb;--ec-codeSelBg:#1d3b53;--ec-gtrFg:#556c80;--ec-gtrBrdCol:#556c8033;--ec-gtrBrdWd:1.5px;--ec-gtrHlFg:#c5e4fd8e;--ec-uiFontFml:var(--__sl-font);--ec-uiFontSize:0.9rem;--ec-uiFontWg:400;--ec-uiLineHt:1.65;--ec-uiPadBlk:0.25rem;--ec-uiPadInl:1rem;--ec-uiSelBg:#234d708c;--ec-uiSelFg:#ffffff;--ec-focusBrd:#122d42;--ec-sbThumbCol:#ffffff17;--ec-sbThumbHoverCol:#ffffff49;--ec-tm-lineMarkerAccentMarg:0rem;--ec-tm-lineMarkerAccentWd:0.15rem;--ec-tm-lineMarkerLabelPadInl:0.2rem;--ec-tm-lineMarkerLabelCol:white;--ec-tm-lineDiffIndMargLeft:0.25rem;--ec-tm-inlMarkerBrdWd:1.5px;--ec-tm-inlMarkerBrdRad:0.2rem;--ec-tm-inlMarkerPad:0.15rem;--ec-tm-insDiffIndContent:'+';--ec-tm-delDiffIndContent:'-';--ec-tm-markBg:#ffffff17;--ec-tm-markBrdCol:#ffffff40;--ec-tm-insBg:#1e571599;--ec-tm-insBrdCol:#487f3bd0;--ec-tm-insDiffIndCol:#79b169d0;--ec-tm-delBg:#862d2799;--ec-tm-delBrdCol:#b4554bd0;--ec-tm-delDiffIndCol:#ed8779d0;--ec-frm-shdCol:#011627;--ec-frm-frameBoxShdCssVal:none;--ec-frm-edActTabBg:var(--sl-color-gray-6);--ec-frm-edActTabFg:var(--sl-color-text);--ec-frm-edActTabBrdCol:transparent;--ec-frm-edActTabIndHt:1px;--ec-frm-edActTabIndTopCol:var(--sl-color-accent-high);--ec-frm-edActTabIndBtmCol:transparent;--ec-frm-edTabsMargInlStart:0;--ec-frm-edTabsMargBlkStart:0;--ec-frm-edTabBrdRad:0px;--ec-frm-edTabBarBg:var(--sl-color-black);--ec-frm-edTabBarBrdCol:color-mix(in srgb, var(--sl-color-gray-5), transparent 25%);--ec-frm-edTabBarBrdBtmCol:color-mix(in srgb, var(--sl-color-gray-5), transparent 25%);--ec-frm-edBg:var(--sl-color-gray-6);--ec-frm-trmTtbDotsFg:color-mix(in srgb, var(--sl-color-gray-5), transparent 25%);--ec-frm-trmTtbDotsOpa:0.75;--ec-frm-trmTtbBg:var(--sl-color-black);--ec-frm-trmTtbFg:var(--sl-color-text);--ec-frm-trmTtbBrdBtmCol:color-mix(in srgb, var(--sl-color-gray-5), transparent 25%);--ec-frm-trmBg:var(--sl-color-gray-6);--ec-frm-inlBtnFg:var(--sl-color-text);--ec-frm-inlBtnBg:var(--sl-color-text);--ec-frm-inlBtnBgIdleOpa:0;--ec-frm-inlBtnBgHoverOrFocusOpa:0.2;--ec-frm-inlBtnBgActOpa:0.3;--ec-frm-inlBtnBrd:var(--sl-color-text);--ec-frm-inlBtnBrdOpa:0.4;--ec-frm-tooltipSuccessBg:#158744;--ec-frm-tooltipSuccessFg:white;--ec-lineNumbers-fg:inherit;--ec-lineNumbers-hlFg:inherit}.expressive-code .ec-line :where(span[style^='--']:not([class])),:root:not([data-theme='dark']) .expressive-code[data-theme='dark'] .ec-line :where(span[style^='--']:not([class])){color:var(--0, inherit);font-style:var(--0fs, inherit);font-weight:var(--0fw, inherit);text-decoration:var(--0td, inherit)}@media (prefers-color-scheme: light){:root:not([data-theme='dark']){--ec-codeBg:#fbfbfb;--ec-codeFg:#403f53;--ec-codeSelBg:#e0e0e0;--ec-gtrFg:#7a8d96;--ec-gtrBrdCol:#7a8d9633;--ec-gtrHlFg:#403f53c3;--ec-uiSelBg:#d3e8f8;--ec-uiSelFg:#403f53;--ec-focusBrd:#93a1a1;--ec-sbThumbCol:#0000001a;--ec-sbThumbHoverCol:#0000005c;--ec-tm-markBg:#0000001a;--ec-tm-markBrdCol:#00000055;--ec-tm-insBg:#8ec77d99;--ec-tm-insDiffIndCol:#336a28d0;--ec-tm-delBg:#ff9c8e99;--ec-tm-delDiffIndCol:#9d4138d0;--ec-frm-shdCol:#d9d9d9;--ec-frm-edActTabBg:var(--sl-color-gray-7);--ec-frm-edActTabIndTopCol:var(--sl-color-accent);--ec-frm-edTabBarBg:var(--sl-color-gray-6);--ec-frm-edBg:var(--sl-color-gray-7);--ec-frm-trmTtbBg:var(--sl-color-gray-6);--ec-frm-trmBg:var(--sl-color-gray-7);--ec-frm-tooltipSuccessBg:#078662}:root:not([data-theme='dark']) .expressive-code .ec-line :where(span[style^='--']:not([class])){color:var(--1, inherit);font-style:var(--1fs, inherit);font-weight:var(--1fw, inherit);text-decoration:var(--1td, inherit)}}:root[data-theme='light'] .expressive-code:not([data-theme='dark']),.expressive-code[data-theme='light']{--ec-codeBg:#fbfbfb;--ec-codeFg:#403f53;--ec-codeSelBg:#e0e0e0;--ec-gtrFg:#7a8d96;--ec-gtrBrdCol:#7a8d9633;--ec-gtrHlFg:#403f53c3;--ec-uiSelBg:#d3e8f8;--ec-uiSelFg:#403f53;--ec-focusBrd:#93a1a1;--ec-sbThumbCol:#0000001a;--ec-sbThumbHoverCol:#0000005c;--ec-tm-markBg:#0000001a;--ec-tm-markBrdCol:#00000055;--ec-tm-insBg:#8ec77d99;--ec-tm-insDiffIndCol:#336a28d0;--ec-tm-delBg:#ff9c8e99;--ec-tm-delDiffIndCol:#9d4138d0;--ec-frm-shdCol:#d9d9d9;--ec-frm-edActTabBg:var(--sl-color-gray-7);--ec-frm-edActTabIndTopCol:var(--sl-color-accent);--ec-frm-edTabBarBg:var(--sl-color-gray-6);--ec-frm-edBg:var(--sl-color-gray-7);--ec-frm-trmTtbBg:var(--sl-color-gray-6);--ec-frm-trmBg:var(--sl-color-gray-7);--ec-frm-tooltipSuccessBg:#078662}:root[data-theme='light'] .expressive-code:not([data-theme='dark']) .ec-line :where(span[style^='--']:not([class])),.expressive-code[data-theme='light'] .ec-line :where(span[style^='--']:not([class])){color:var(--1, inherit);font-style:var(--1fs, inherit);font-weight:var(--1fw, inherit);text-decoration:var(--1td, inherit)} \ No newline at end of file diff --git a/_astro/hoisted.BNyjdg2f.js b/_astro/hoisted.BNyjdg2f.js new file mode 100644 index 000000000..ff36540f3 --- /dev/null +++ b/_astro/hoisted.BNyjdg2f.js @@ -0,0 +1 @@ +import"./Tabs.astro_astro_type_script_index_0_lang.CCIyraCc.js";class T extends HTMLElement{constructor(){super();const e=this.querySelector("select");e&&e.addEventListener("change",r=>{r.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=r.currentTarget.value)})}}customElements.define("starlight-lang-select",T);const L="modulepreload",w=function(n){return"/"+n},p={},x=function(e,r,s){let l=Promise.resolve();if(r&&r.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),o=i?.nonce||i?.getAttribute("nonce");l=Promise.all(r.map(c=>{if(c=w(c),c in p)return;p[c]=!0;const d=c.endsWith(".css"),h=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${h}`))return;const t=document.createElement("link");if(t.rel=d?"stylesheet":L,d||(t.as="script",t.crossOrigin=""),t.href=c,o&&t.setAttribute("nonce",o),document.head.appendChild(t),d)return new Promise((u,a)=>{t.addEventListener("load",u),t.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${c}`)))})}))}return l.then(()=>e()).catch(i=>{const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=i,window.dispatchEvent(o),!o.defaultPrevented)throw i})},H={appId:"AA9S5J9NYT",apiKey:"ccfe6abc4d12ac6f882565a9d0caafb1",indexName:"sern"};class C extends HTMLElement{constructor(){super(),window.addEventListener("DOMContentLoaded",async()=>{const{default:e}=await x(()=>import("./index.qv16JarW.js"),[]),r={...H,container:"sl-doc-search"};try{const s=JSON.parse(this.dataset.translations||"{}");Object.assign(r,s)}catch{}e(r)})}}customElements.define("sl-doc-search",C);class M extends HTMLElement{constructor(){super(),this.btn=this.querySelector("button"),this.btn.addEventListener("click",()=>this.toggleExpanded());const e=this.closest("nav");e&&e.addEventListener("keyup",r=>this.closeOnEscape(r))}setExpanded(e){this.setAttribute("aria-expanded",String(e)),document.body.toggleAttribute("data-mobile-menu-expanded",e)}toggleExpanded(){this.setExpanded(this.getAttribute("aria-expanded")!=="true")}closeOnEscape(e){e.code==="Escape"&&(this.setExpanded(!1),this.btn.focus())}}customElements.define("starlight-menu-button",M);const k="_top";class E extends HTMLElement{constructor(){super(),this._current=this.querySelector('a[aria-current="true"]'),this.minH=parseInt(this.dataset.minH||"2",10),this.maxH=parseInt(this.dataset.maxH||"3",10);const e=[...this.querySelectorAll("a")],r=t=>{if(t instanceof HTMLHeadingElement){if(t.id===k)return!0;const u=t.tagName[1];if(u){const a=parseInt(u,10);if(a>=this.minH&&a<=this.maxH)return!0}}return!1},s=t=>{if(!t)return null;const u=t;for(;t;){if(r(t))return t;for(t=t.previousElementSibling;t?.lastElementChild;)t=t.lastElementChild;const a=s(t);if(a)return a}return s(u.parentElement)},l=t=>{for(const{isIntersecting:u,target:a}of t){if(!u)continue;const g=s(a);if(!g)continue;const f=e.find(b=>b.hash==="#"+encodeURIComponent(g.id));if(f){this.current=f;break}}},i=document.querySelectorAll("main [id], main [id] ~ *, main .content > *");let o;const c=()=>{o&&o.disconnect(),o=new IntersectionObserver(l,{rootMargin:this.getRootMargin()}),i.forEach(t=>o.observe(t))};c();const d=window.requestIdleCallback||(t=>setTimeout(t,1));let h;window.addEventListener("resize",()=>{o&&o.disconnect(),clearTimeout(h),h=setTimeout(()=>d(c),200)})}set current(e){e!==this._current&&(this._current&&this._current.removeAttribute("aria-current"),e.setAttribute("aria-current","true"),this._current=e)}getRootMargin(){const e=document.querySelector("header")?.getBoundingClientRect().height||0,r=this.querySelector("summary")?.getBoundingClientRect().height||0,s=e+r+32,l=s+53,i=document.documentElement.clientHeight;return`-${s}px 0% ${l-i}px`}}customElements.define("starlight-toc",E);class q extends E{set current(e){super.current=e;const r=this.querySelector(".display-current");r&&(r.textContent=e.textContent)}constructor(){super();const e=this.querySelector("details");if(!e)return;const r=()=>{e.open=!1};e.querySelectorAll("a").forEach(s=>{s.addEventListener("click",r)}),window.addEventListener("click",s=>{e.contains(s.target)||r()}),window.addEventListener("keydown",s=>{if(s.key==="Escape"&&e.open){const l=e.contains(document.activeElement);if(r(),l){const i=e.querySelector("summary");i&&i.focus()}}})}}customElements.define("mobile-starlight-toc",q);const S="starlight-theme",v=n=>n==="auto"||n==="dark"||n==="light"?n:"auto",y=()=>v(typeof localStorage<"u"&&localStorage.getItem(S));function _(n){typeof localStorage<"u"&&localStorage.setItem(S,n==="light"||n==="dark"?n:"")}const A=()=>matchMedia("(prefers-color-scheme: light)").matches?"light":"dark";function m(n){StarlightThemeProvider.updatePickers(n),document.documentElement.dataset.theme=n==="auto"?A():n,_(n)}matchMedia("(prefers-color-scheme: light)").addEventListener("change",()=>{y()==="auto"&&m("auto")});class I extends HTMLElement{constructor(){super(),m(y()),this.querySelector("select")?.addEventListener("change",e=>{e.currentTarget instanceof HTMLSelectElement&&m(v(e.currentTarget.value))})}}customElements.define("starlight-theme-select",I); diff --git a/_astro/index.C0lnCt1k.css b/_astro/index.C0lnCt1k.css new file mode 100644 index 000000000..99adaceb6 --- /dev/null +++ b/_astro/index.C0lnCt1k.css @@ -0,0 +1 @@ +*,:before,:after{border-width:0;border-style:solid;border-color:#eceef2}:before,:after{--tw-content: }:root{--sl-font: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--sl-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--sl-color-white: #fff;--sl-color-gray-1: #eceef2;--sl-color-gray-2: #c0c2c7;--sl-color-gray-3: #888b96;--sl-color-gray-4: #4b5563;--sl-color-gray-5: #353841;--sl-color-gray-6: #24272f;--sl-color-black: #17181c;--sl-color-accent-low: #3a171f;--sl-color-accent: #b6335c;--sl-color-accent-high: #eabac2}:root[data-theme=light]{--sl-color-white: #17181c;--sl-color-gray-1: #24272f;--sl-color-gray-2: #353841;--sl-color-gray-3: #545861;--sl-color-gray-4: #888b96;--sl-color-gray-5: #c0c2c7;--sl-color-gray-6: #eceef2;--sl-color-gray-7: #f5f6f8;--sl-color-black: #fff;--sl-color-accent-low: #eabac2;--sl-color-accent: #b6335c;--sl-color-accent-high: #541c2b}*,:before,:after{--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-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--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: rgb(59 130 246 / .5);--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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::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-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--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: rgb(59 130 246 / .5);--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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-2{bottom:.5rem}.bottom-4{bottom:1rem}.right-4{right:1rem}.z-50{z-index:50}.mb-14{margin-bottom:3.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-2{margin-top:.5rem}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-16{height:4rem}.h-6{height:1.5rem}.h-8{height:2rem}.w-16{width:4rem}.w-5\/6{width:83.333333%}.w-6{width:1.5rem}.w-8{width:2rem}.-translate-y-4{--tw-translate-y: -1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:1rem}.overflow-hidden{overflow:hidden}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-\[var\(--sl-color-orange\)\]{border-color:var(--sl-color-orange)}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(192 194 199 / var(--tw-border-opacity))}.bg-\[var\(--sl-color-orange-low\)\]{background-color:var(--sl-color-orange-low)}.bg-accent-600{--tw-bg-opacity: 1;background-color:rgb(182 51 92 / var(--tw-bg-opacity))}.bg-gray-800\/90{background-color:#24272fe6}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-center{text-align:center}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-gray-900{--tw-text-opacity: 1;color:rgb(23 24 28 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.opacity-0{opacity:0}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.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)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:hidden{display:none}.peer:checked~.peer-checked\:pointer-events-auto{pointer-events:auto}.peer:checked~.peer-checked\:visible{visibility:visible}.peer:checked~.peer-checked\:opacity-100{opacity:1}.dark\:border-gray-700:is([data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(53 56 65 / var(--tw-border-opacity))}.dark\:bg-accent-200:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(234 186 194 / var(--tw-bg-opacity))}.dark\:bg-gray-900:is([data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(23 24 28 / var(--tw-bg-opacity))}.dark\:text-gray-900:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(23 24 28 / var(--tw-text-opacity))}.dark\:text-white:is([data-theme=dark] *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}@media (min-width: 768px){.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}.peer:checked~.peer-checked\:\[\&\>\*\]\:translate-y-0>*{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:\[\&\>\*\]\:scale-100>*{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))} diff --git a/_astro/index.qv16JarW.js b/_astro/index.qv16JarW.js new file mode 100644 index 000000000..5bc0b3b74 --- /dev/null +++ b/_astro/index.qv16JarW.js @@ -0,0 +1,17 @@ +/*! @docsearch/js 3.6.0 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */function lr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function I(t){for(var e=1;e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function se(t,e){return function(r){if(Array.isArray(r))return r}(t)||function(r,n){var o=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(o!=null){var i,a,c=[],u=!0,s=!1;try{for(o=o.call(r);!(u=(i=o.next()).done)&&(c.push(i.value),!n||c.length!==n);u=!0);}catch(l){s=!0,a=l}finally{try{u||o.return==null||o.return()}finally{if(s)throw a}}return c}}(t,e)||_n(t,e)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ft(t){return function(e){if(Array.isArray(e))return Lt(e)}(t)||function(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}(t)||_n(t)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function _n(t,e){if(t){if(typeof t=="string")return Lt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set"?Array.from(t):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Lt(t,e):void 0}}function Lt(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r3)for(r=[r],i=3;i0?Ie(v.type,v.props,v.key,null,v.__v):v)!=null){if(v.__=r,v.__b=r.__b+1,(p=b[l])===null||p&&v.key==p.key&&v.type===p.type)b[l]=void 0;else for(m=0;m<_;m++){if((p=b[m])&&v.key==p.key&&v.type===p.type){b[m]=void 0;break}p=null}Yt(t,v,p=p||mt,o,i,a,c,u,s),d=v.__e,(m=v.ref)&&p.ref!=m&&(y||(y=[]),p.ref&&y.push(p.ref,null,v),y.push(m,v.__c||d,v)),d!=null?(h==null&&(h=d),typeof v.type=="function"&&v.__k!=null&&v.__k===p.__k?v.__d=u=Pn(v,u,t):u=In(t,v,p,b,d,u),s||r.type!=="option"?typeof r.type=="function"&&(r.__d=u):t.value=""):u&&p.__e==u&&u.parentNode!=t&&(u=Ke(p))}for(r.__e=h,l=_;l--;)b[l]!=null&&(typeof r.type=="function"&&b[l].__e!=null&&b[l].__e==r.__d&&(r.__d=Ke(n,l+1)),An(b[l],b[l]));if(y)for(l=0;l3)for(r=[r],i=3;i=r.__.length&&r.__.push({}),r.__[t]}function Gt(t){return pe=1,xn(Nn,t)}function xn(t,e,r){var n=Je(de++,2);return n.t=t,n.__c||(n.__=[r?r(e):Nn(void 0,e),function(o){var i=n.t(n.__[0],o);n.__[0]!==i&&(n.__=[i,n.__[1]],n.__c.setState({}))}],n.__c=q),n.__}function Xt(t,e){var r=Je(de++,3);!w.__s&&er(r.__H,e)&&(r.__=t,r.__H=e,q.__H.__h.push(r))}function _r(t,e){var r=Je(de++,4);!w.__s&&er(r.__H,e)&&(r.__=t,r.__H=e,q.__h.push(r))}function Pt(t,e){var r=Je(de++,7);return er(r.__H,e)&&(r.__=t(),r.__H=e,r.__h=t),r.__}function bo(){Ht.forEach(function(t){if(t.__P)try{t.__H.__h.forEach(ut),t.__H.__h.forEach(Ut),t.__H.__h=[]}catch(e){t.__H.__h=[],w.__e(e,t.__v)}}),Ht=[]}w.__b=function(t){q=null,dr&&dr(t)},w.__r=function(t){hr&&hr(t),de=0;var e=(q=t.__c).__H;e&&(e.__h.forEach(ut),e.__h.forEach(Ut),e.__h=[])},w.diffed=function(t){yr&&yr(t);var e=t.__c;e&&e.__H&&e.__H.__h.length&&(Ht.push(e)!==1&&vr===w.requestAnimationFrame||((vr=w.requestAnimationFrame)||function(r){var n,o=function(){clearTimeout(i),Or&&cancelAnimationFrame(n),setTimeout(r)},i=setTimeout(o,100);Or&&(n=requestAnimationFrame(o))})(bo)),q=void 0},w.__c=function(t,e){e.some(function(r){try{r.__h.forEach(ut),r.__h=r.__h.filter(function(n){return!n.__||Ut(n)})}catch(n){e.some(function(o){o.__h&&(o.__h=[])}),e=[],w.__e(n,r.__v)}}),gr&&gr(t,e)},w.unmount=function(t){br&&br(t);var e=t.__c;if(e&&e.__H)try{e.__H.__.forEach(ut)}catch(r){w.__e(r,e.__v)}};var Or=typeof requestAnimationFrame=="function";function ut(t){var e=q;typeof t.__c=="function"&&t.__c(),q=e}function Ut(t){var e=q;t.__c=t.__(),q=e}function er(t,e){return!t||t.length!==e.length||e.some(function(r,n){return r!==t[n]})}function Nn(t,e){return typeof e=="function"?e(t):e}function Tn(t,e){for(var r in e)t[r]=e[r];return t}function Ft(t,e){for(var r in t)if(r!=="__source"&&!(r in e))return!0;for(var n in e)if(n!=="__source"&&t[n]!==e[n])return!0;return!1}function Bt(t){this.props=t}(Bt.prototype=new W).isPureReactComponent=!0,Bt.prototype.shouldComponentUpdate=function(t,e){return Ft(this.props,t)||Ft(this.state,e)};var Sr=w.__b;w.__b=function(t){t.type&&t.type.__f&&t.ref&&(t.props.ref=t.ref,t.ref=null),Sr&&Sr(t)};var _o=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.forward_ref")||3911,wr=function(t,e){return t==null?null:$($(t).map(e))},Oo={map:wr,forEach:wr,count:function(t){return t?$(t).length:0},only:function(t){var e=$(t);if(e.length!==1)throw"Children.only";return e[0]},toArray:$},So=w.__e;function ct(){this.__u=0,this.t=null,this.__b=null}function Rn(t){var e=t.__.__c;return e&&e.__e&&e.__e(t)}function je(){this.u=null,this.o=null}w.__e=function(t,e,r){if(t.then){for(var n,o=e;o=o.__;)if((n=o.__c)&&n.__c)return e.__e==null&&(e.__e=r.__e,e.__k=r.__k),n.__c(t,e)}So(t,e,r)},(ct.prototype=new W).__c=function(t,e){var r=e.__c,n=this;n.t==null&&(n.t=[]),n.t.push(r);var o=Rn(n.__v),i=!1,a=function(){i||(i=!0,r.componentWillUnmount=r.__c,o?o(c):c())};r.__c=r.componentWillUnmount,r.componentWillUnmount=function(){a(),r.__c&&r.__c()};var c=function(){if(!--n.__u){if(n.state.__e){var s=n.state.__e;n.__v.__k[0]=function m(p,v,d){return p&&(p.__v=null,p.__k=p.__k&&p.__k.map(function(h){return m(h,v,d)}),p.__c&&p.__c.__P===v&&(p.__e&&d.insertBefore(p.__e,p.__d),p.__c.__e=!0,p.__c.__P=d)),p}(s,s.__c.__P,s.__c.__O)}var l;for(n.setState({__e:n.__b=null});l=n.t.pop();)l.forceUpdate()}},u=e.__h===!0;n.__u++||u||n.setState({__e:n.__b=n.__v.__k[0]}),t.then(a,a)},ct.prototype.componentWillUnmount=function(){this.t=[]},ct.prototype.render=function(t,e){if(this.__b){if(this.__v.__k){var r=document.createElement("div"),n=this.__v.__k[0].__c;this.__v.__k[0]=function i(a,c,u){return a&&(a.__c&&a.__c.__H&&(a.__c.__H.__.forEach(function(s){typeof s.__c=="function"&&s.__c()}),a.__c.__H=null),(a=Tn({},a)).__c!=null&&(a.__c.__P===u&&(a.__c.__P=c),a.__c=null),a.__k=a.__k&&a.__k.map(function(s){return i(s,c,u)})),a}(this.__b,r,n.__O=n.__P)}this.__b=null}var o=e.__e&&K(X,null,t.fallback);return o&&(o.__h=null),[K(X,null,e.__e?null:t.children),o]};var jr=function(t,e,r){if(++r[1]===r[0]&&t.o.delete(e),t.props.revealOrder&&(t.props.revealOrder[0]!=="t"||!t.o.size))for(r=t.u;r;){for(;r.length>3;)r.pop()();if(r[1]>>1,1),e.i.removeChild(n)}}),We(K(wo,{context:e.context},t.__v),e.l)):e.l&&e.componentWillUnmount()}function qn(t,e){return K(jo,{__v:t,i:e})}(je.prototype=new W).__e=function(t){var e=this,r=Rn(e.__v),n=e.o.get(t);return n[0]++,function(o){var i=function(){e.props.revealOrder?(n.push(o),jr(e,t,n)):o()};r?r(i):i()}},je.prototype.render=function(t){this.u=null,this.o=new Map;var e=$(t.children);t.revealOrder&&t.revealOrder[0]==="b"&&e.reverse();for(var r=e.length;r--;)this.o.set(e[r],this.u=[1,0,this.u]);return t.children},je.prototype.componentDidUpdate=je.prototype.componentDidMount=function(){var t=this;this.o.forEach(function(e,r){jr(t,r,e)})};var Ln=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,Eo=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,Po=function(t){return(typeof Symbol<"u"&&Ve(Symbol())=="symbol"?/fil|che|rad/i:/fil|che|ra/i).test(t)};function Mn(t,e,r){return e.__k==null&&(e.textContent=""),We(t,e),typeof r=="function"&&r(),t?t.__c:null}W.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(t){Object.defineProperty(W.prototype,t,{configurable:!0,get:function(){return this["UNSAFE_"+t]},set:function(e){Object.defineProperty(this,t,{configurable:!0,writable:!0,value:e})}})});var Er=w.event;function Io(){}function Do(){return this.cancelBubble}function ko(){return this.defaultPrevented}w.event=function(t){return Er&&(t=Er(t)),t.persist=Io,t.isPropagationStopped=Do,t.isDefaultPrevented=ko,t.nativeEvent=t};var Hn,Pr={configurable:!0,get:function(){return this.class}},Ir=w.vnode;w.vnode=function(t){var e=t.type,r=t.props,n=r;if(typeof e=="string"){for(var o in n={},r){var i=r[o];o==="value"&&"defaultValue"in r&&i==null||(o==="defaultValue"&&"value"in r&&r.value==null?o="value":o==="download"&&i===!0?i="":/ondoubleclick/i.test(o)?o="ondblclick":/^onchange(textarea|input)/i.test(o+e)&&!Po(r.type)?o="oninput":/^on(Ani|Tra|Tou|BeforeInp)/.test(o)?o=o.toLowerCase():Eo.test(o)?o=o.replace(/[A-Z0-9]/,"-$&").toLowerCase():i===null&&(i=void 0),n[o]=i)}e=="select"&&n.multiple&&Array.isArray(n.value)&&(n.value=$(r.children).forEach(function(a){a.props.selected=n.value.indexOf(a.props.value)!=-1})),e=="select"&&n.defaultValue!=null&&(n.value=$(r.children).forEach(function(a){a.props.selected=n.multiple?n.defaultValue.indexOf(a.props.value)!=-1:n.defaultValue==a.props.value})),t.props=n}e&&r.class!=r.className&&(Pr.enumerable="className"in r,r.className!=null&&(n.class=r.className),Object.defineProperty(n,"className",Pr)),t.$$typeof=Ln,Ir&&Ir(t)};var Dr=w.__r;w.__r=function(t){Dr&&Dr(t),Hn=t.__c};var Ao={ReactCurrentDispatcher:{current:{readContext:function(t){return Hn.__n[t.__c].props.value}}}};(typeof performance>"u"?"undefined":Ve(performance))=="object"&&typeof performance.now=="function"&&performance.now.bind(performance);function kr(t){return!!t&&t.$$typeof===Ln}var f={useState:Gt,useReducer:xn,useEffect:Xt,useLayoutEffect:_r,useRef:function(t){return pe=5,Pt(function(){return{current:t}},[])},useImperativeHandle:function(t,e,r){pe=6,_r(function(){typeof t=="function"?t(e()):t&&(t.current=e())},r==null?r:r.concat(t))},useMemo:Pt,useCallback:function(t,e){return pe=8,Pt(function(){return t},e)},useContext:function(t){var e=q.context[t.__c],r=Je(de++,9);return r.__c=t,e?(r.__==null&&(r.__=!0,e.sub(q)),e.props.value):t.__},useDebugValue:function(t,e){w.useDebugValue&&w.useDebugValue(e?e(t):t)},version:"16.8.0",Children:Oo,render:Mn,hydrate:function(t,e,r){return Cn(t,e),typeof r=="function"&&r(),t?t.__c:null},unmountComponentAtNode:function(t){return!!t.__k&&(We(null,t),!0)},createPortal:qn,createElement:K,createContext:function(t,e){var r={__c:e="__cC"+Sn++,__:t,Consumer:function(n,o){return n.children(o)},Provider:function(n){var o,i;return this.getChildContext||(o=[],(i={})[e]=this,this.getChildContext=function(){return i},this.shouldComponentUpdate=function(a){this.props.value!==a.value&&o.some(Mt)},this.sub=function(a){o.push(a);var c=a.componentWillUnmount;a.componentWillUnmount=function(){o.splice(o.indexOf(a),1),c&&c.call(a)}}),n.children}};return r.Provider.__=r.Consumer.contextType=r},createFactory:function(t){return K.bind(null,t)},cloneElement:function(t){return kr(t)?go.apply(null,arguments):t},createRef:function(){return{current:null}},Fragment:X,isValidElement:kr,findDOMNode:function(t){return t&&(t.base||t.nodeType===1&&t)||null},Component:W,PureComponent:Bt,memo:function(t,e){function r(o){var i=this.props.ref,a=i==o.ref;return!a&&i&&(i.call?i(null):i.current=null),e?!e(this.props,o)||!a:Ft(this.props,o)}function n(o){return this.shouldComponentUpdate=r,K(t,o)}return n.displayName="Memo("+(t.displayName||t.name)+")",n.prototype.isReactComponent=!0,n.__f=!0,n},forwardRef:function(t){function e(r,n){var o=Tn({},r);return delete o.ref,t(o,(n=r.ref||n)&&(Ve(n)!="object"||"current"in n)?n:null)}return e.$$typeof=_o,e.render=e,e.prototype.isReactComponent=e.__f=!0,e.displayName="ForwardRef("+(t.displayName||t.name)+")",e},unstable_batchedUpdates:function(t,e){return t(e)},StrictMode:X,Suspense:ct,SuspenseList:je,lazy:function(t){var e,r,n;function o(i){if(e||(e=t()).then(function(a){r=a.default||a},function(a){n=a}),n)throw n;if(!r)throw e;return K(r,i)}return o.displayName="Lazy",o.__f=!0,o},__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:Ao};function Co(){return f.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},f.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}function Un(){return f.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20","aria-hidden":"true"},f.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var xo=["translations"];function Vt(){return Vt=Object.assign||function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var To=f.forwardRef(function(t,e){var r=t.translations,n=r===void 0?{}:r,o=No(t,xo),i=n.buttonText,a=i===void 0?"Search":i,c=n.buttonAriaLabel,u=c===void 0?"Search":c,s=Fn(Gt(null),2),l=s[0],m=s[1];return Xt(function(){typeof navigator<"u"&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?m("⌘"):m("Ctrl"))},[]),f.createElement("button",Vt({type:"button",className:"DocSearch DocSearch-Button","aria-label":u},o,{ref:e}),f.createElement("span",{className:"DocSearch-Button-Container"},f.createElement(Un,null),f.createElement("span",{className:"DocSearch-Button-Placeholder"},a)),f.createElement("span",{className:"DocSearch-Button-Keys"},l!==null&&f.createElement(f.Fragment,null,f.createElement(Cr,{reactsToKey:l==="Ctrl"?"Ctrl":"Meta"},l==="Ctrl"?f.createElement(Co,null):l),f.createElement(Cr,{reactsToKey:"k"},"K"))))});function Cr(t){var e=t.reactsToKey,r=t.children,n=Fn(Gt(!1),2),o=n[0],i=n[1];return Xt(function(){if(e)return window.addEventListener("keydown",a),window.addEventListener("keyup",c),function(){window.removeEventListener("keydown",a),window.removeEventListener("keyup",c)};function a(u){u.key===e&&i(!0)}function c(u){u.key!==e&&u.key!=="Meta"||i(!1)}},[e]),f.createElement("kbd",{className:o?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},r)}function Bn(t,e){var r=void 0;return function(){for(var n=arguments.length,o=new Array(n),i=0;it.length)&&(e=t.length);for(var r=0,n=new Array(e);rt.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Rr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function ve(t){for(var e=1;e1&&arguments[1]!==void 0?arguments[1]:20,r=[],n=0;n=3||r===2&&n>=4||r===1&&n>=10);function i(a,c,u){if(o&&u!==void 0){var s=u[0].__autocomplete_algoliaCredentials,l={"X-Algolia-Application-Id":s.appId,"X-Algolia-API-Key":s.apiKey};t.apply(void 0,[a].concat(Ge(c),[{headers:l}]))}else t.apply(void 0,[a].concat(Ge(c)))}return{init:function(a,c){t("init",{appId:a,apiKey:c})},setUserToken:function(a){t("setUserToken",a)},clickedObjectIDsAfterSearch:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&i("clickedObjectIDsAfterSearch",Xe(c),c[0].items)},clickedObjectIDs:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&i("clickedObjectIDs",Xe(c),c[0].items)},clickedFilters:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&t.apply(void 0,["clickedFilters"].concat(c))},convertedObjectIDsAfterSearch:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&i("convertedObjectIDsAfterSearch",Xe(c),c[0].items)},convertedObjectIDs:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&i("convertedObjectIDs",Xe(c),c[0].items)},convertedFilters:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&t.apply(void 0,["convertedFilters"].concat(c))},viewedObjectIDs:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&c.reduce(function(s,l){var m=l.items,p=Kn(l,Ho);return[].concat(Ge(s),Ge(Fo(ve(ve({},p),{},{objectIDs:m?.map(function(v){return v.objectID})||p.objectIDs})).map(function(v){return{items:m,payload:v}})))},[]).forEach(function(s){var l=s.items;return i("viewedObjectIDs",[s.payload],l)})},viewedFilters:function(){for(var a=arguments.length,c=new Array(a),u=0;u0&&t.apply(void 0,["viewedFilters"].concat(c))}}}function Vo(t){var e=t.items.reduce(function(r,n){var o;return r[n.__autocomplete_indexName]=((o=r[n.__autocomplete_indexName])!==null&&o!==void 0?o:[]).concat(n),r},{});return Object.keys(e).map(function(r){return{index:r,items:e[r],algoliaSource:["autocomplete"]}})}function Dt(t){return t.objectID&&t.__autocomplete_indexName&&t.__autocomplete_queryID}function ke(t){return ke=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ke(t)}function ie(t){return function(e){if(Array.isArray(e))return kt(e)}(t)||function(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}(t)||function(e,r){if(e){if(typeof e=="string")return kt(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return kt(e,r)}}(t)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function kt(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&zo({onItemsChange:n,items:p,insights:c,state:m}))}},0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(l){var m=l.setContext,p=l.onSelect,v=l.onActive;a("addAlgoliaAgent","insights-plugin"),m({algoliaInsightsPlugin:{__algoliaSearchParameters:{clickAnalytics:!0},insights:c}}),p(function(d){var h=d.item,y=d.state,b=d.event;Dt(h)&&o({state:y,event:b,insights:c,item:h,insightsEvents:[G({eventName:"Item Selected"},Nr({item:h,items:u.current}))]})}),v(function(d){var h=d.item,y=d.state,b=d.event;Dt(h)&&i({state:y,event:b,insights:c,item:h,insightsEvents:[G({eventName:"Item Active"},Nr({item:h,items:u.current}))]})})},onStateChange:function(l){var m=l.state;s({state:m})},__autocomplete_pluginOptions:t}}function lt(t,e){var r=e;return{then:function(n,o){return lt(t.then(et(n,r,t),et(o,r,t)),r)},catch:function(n){return lt(t.catch(et(n,r,t)),r)},finally:function(n){return n&&r.onCancelList.push(n),lt(t.finally(et(n&&function(){return r.onCancelList=[],n()},r,t)),r)},cancel:function(){r.isCanceled=!0;var n=r.onCancelList;r.onCancelList=[],n.forEach(function(o){o()})},isCanceled:function(){return r.isCanceled===!0}}}function Lr(t){return lt(t,{isCanceled:!1,onCancelList:[]})}function et(t,e,r){return t?function(n){return e.isCanceled?n:t(n)}:r}function Mr(t,e,r,n){if(!r)return null;if(t<0&&(e===null||n!==null&&e===0))return r+t;var o=(e===null?-1:e)+t;return o<=-1||o>=r?n===null?null:0:o}function Hr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function Ur(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r0},reshape:function(i){return i.sources}},t),{},{id:(r=t.id)!==null&&r!==void 0?r:"autocomplete-".concat(Ro++),plugins:o,initialState:ae({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},t.initialState),onStateChange:function(i){var a;(a=t.onStateChange)===null||a===void 0||a.call(t,i),o.forEach(function(c){var u;return(u=c.onStateChange)===null||u===void 0?void 0:u.call(c,i)})},onSubmit:function(i){var a;(a=t.onSubmit)===null||a===void 0||a.call(t,i),o.forEach(function(c){var u;return(u=c.onSubmit)===null||u===void 0?void 0:u.call(c,i)})},onReset:function(i){var a;(a=t.onReset)===null||a===void 0||a.call(t,i),o.forEach(function(c){var u;return(u=c.onReset)===null||u===void 0?void 0:u.call(c,i)})},getSources:function(i){return Promise.all([].concat(Xo(o.map(function(a){return a.getSources})),[t.getSources]).filter(Boolean).map(function(a){return function(c,u){var s=[];return Promise.resolve(c(u)).then(function(l){return Promise.all(l.filter(function(m){return!!m}).map(function(m){if(m.sourceId,s.includes(m.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(m.sourceId)," is not unique."));s.push(m.sourceId);var p={getItemInputValue:function(d){return d.state.query},getItemUrl:function(){},onSelect:function(d){(0,d.setIsOpen)(!1)},onActive:vt,onResolve:vt};Object.keys(p).forEach(function(d){p[d].__default=!0});var v=Ur(Ur({},p),m);return Promise.resolve(v)}))})}(a,i)})).then(function(a){return ze(a)}).then(function(a){return a.map(function(c){return ae(ae({},c),{},{onSelect:function(u){c.onSelect(u),e.forEach(function(s){var l;return(l=s.onSelect)===null||l===void 0?void 0:l.call(s,u)})},onActive:function(u){c.onActive(u),e.forEach(function(s){var l;return(l=s.onActive)===null||l===void 0?void 0:l.call(s,u)})},onResolve:function(u){c.onResolve(u),e.forEach(function(s){var l;return(l=s.onResolve)===null||l===void 0?void 0:l.call(s,u)})}})})})},navigator:ae({navigate:function(i){var a=i.itemUrl;n.location.assign(a)},navigateNewTab:function(i){var a=i.itemUrl,c=n.open(a,"_blank","noopener");c?.focus()},navigateNewWindow:function(i){var a=i.itemUrl;n.open(a,"_blank","noopener")}},t.navigator)})}function Te(t){return Te=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Te(t)}function Kr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function rt(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var Jr,xt,ot,we=null,$r=(Jr=-1,xt=-1,ot=void 0,function(t){var e=++Jr;return Promise.resolve(t).then(function(r){return ot&&e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Me(t){return Me=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Me(t)}var mi=["props","refresh","store"],pi=["inputElement","formElement","panelElement"],vi=["inputElement"],di=["inputElement","maxLength"],hi=["sourceIndex"],yi=["sourceIndex"],gi=["item","source","sourceIndex"];function Zr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function R(t){for(var e=1;e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function _i(t){var e=t.props,r=t.refresh,n=t.store,o=re(t,mi),i=function(a,c){return c!==void 0?"".concat(a,"-").concat(c):a};return{getEnvironmentProps:function(a){var c=a.inputElement,u=a.formElement,s=a.panelElement;function l(m){!n.getState().isOpen&&n.pendingRequests.isEmpty()||m.target===c||[u,s].some(function(p){return v=p,d=m.target,v===d||v.contains(d);var v,d})===!1&&(n.dispatch("blur",null),e.debug||n.pendingRequests.cancelAll())}return R({onTouchStart:l,onMouseDown:l,onTouchMove:function(m){n.getState().isOpen!==!1&&c===e.environment.document.activeElement&&m.target!==c&&c.blur()}},re(a,pi))},getRootProps:function(a){return R({role:"combobox","aria-expanded":n.getState().isOpen,"aria-haspopup":"listbox","aria-owns":n.getState().isOpen?"".concat(e.id,"-list"):void 0,"aria-labelledby":"".concat(e.id,"-label")},a)},getFormProps:function(a){return a.inputElement,R({action:"",noValidate:!0,role:"search",onSubmit:function(c){var u;c.preventDefault(),e.onSubmit(R({event:c,refresh:r,state:n.getState()},o)),n.dispatch("submit",null),(u=a.inputElement)===null||u===void 0||u.blur()},onReset:function(c){var u;c.preventDefault(),e.onReset(R({event:c,refresh:r,state:n.getState()},o)),n.dispatch("reset",null),(u=a.inputElement)===null||u===void 0||u.focus()}},re(a,vi))},getLabelProps:function(a){var c=a||{},u=c.sourceIndex,s=re(c,hi);return R({htmlFor:"".concat(i(e.id,u),"-input"),id:"".concat(i(e.id,u),"-label")},s)},getInputProps:function(a){var c;function u(y){(e.openOnFocus||n.getState().query)&&le(R({event:y,props:e,query:n.getState().completion||n.getState().query,refresh:r,store:n},o)),n.dispatch("focus",null)}var s=a||{},l=(s.inputElement,s.maxLength),m=l===void 0?512:l,p=re(s,di),v=fe(n.getState()),d=function(y){return!!(y&&y.match(Qo))}(((c=e.environment.navigator)===null||c===void 0?void 0:c.userAgent)||""),h=v!=null&&v.itemUrl&&!d?"go":"search";return R({"aria-autocomplete":"both","aria-activedescendant":n.getState().isOpen&&n.getState().activeItemId!==null?"".concat(e.id,"-item-").concat(n.getState().activeItemId):void 0,"aria-controls":n.getState().isOpen?"".concat(e.id,"-list"):void 0,"aria-labelledby":"".concat(e.id,"-label"),value:n.getState().completion||n.getState().query,id:"".concat(e.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:h,spellCheck:"false",autoFocus:e.autoFocus,placeholder:e.placeholder,maxLength:m,type:"search",onChange:function(y){le(R({event:y,props:e,query:y.currentTarget.value.slice(0,m),refresh:r,store:n},o))},onKeyDown:function(y){(function(b){var _=b.event,S=b.props,O=b.refresh,g=b.store,P=fi(b,li);if(_.key==="ArrowUp"||_.key==="ArrowDown"){var C=function(){var M=S.environment.document.getElementById("".concat(S.id,"-item-").concat(g.getState().activeItemId));M&&(M.scrollIntoViewIfNeeded?M.scrollIntoViewIfNeeded(!1):M.scrollIntoView(!1))},L=function(){var M=fe(g.getState());if(g.getState().activeItemId!==null&&M){var Ot=M.item,St=M.itemInputValue,$e=M.itemUrl,B=M.source;B.onActive(te({event:_,item:Ot,itemInputValue:St,itemUrl:$e,refresh:O,source:B,state:g.getState()},P))}};_.preventDefault(),g.getState().isOpen===!1&&(S.openOnFocus||g.getState().query)?le(te({event:_,props:S,query:g.getState().query,refresh:O,store:g},P)).then(function(){g.dispatch(_.key,{nextActiveItemId:S.defaultActiveItemId}),L(),setTimeout(C,0)}):(g.dispatch(_.key,{}),L(),C())}else if(_.key==="Escape")_.preventDefault(),g.dispatch(_.key,null),g.pendingRequests.cancelAll();else if(_.key==="Tab")g.dispatch("blur",null),g.pendingRequests.cancelAll();else if(_.key==="Enter"){if(g.getState().activeItemId===null||g.getState().collections.every(function(M){return M.items.length===0}))return void(S.debug||g.pendingRequests.cancelAll());_.preventDefault();var x=fe(g.getState()),k=x.item,N=x.itemInputValue,U=x.itemUrl,F=x.source;if(_.metaKey||_.ctrlKey)U!==void 0&&(F.onSelect(te({event:_,item:k,itemInputValue:N,itemUrl:U,refresh:O,source:F,state:g.getState()},P)),S.navigator.navigateNewTab({itemUrl:U,item:k,state:g.getState()}));else if(_.shiftKey)U!==void 0&&(F.onSelect(te({event:_,item:k,itemInputValue:N,itemUrl:U,refresh:O,source:F,state:g.getState()},P)),S.navigator.navigateNewWindow({itemUrl:U,item:k,state:g.getState()}));else if(!_.altKey){if(U!==void 0)return F.onSelect(te({event:_,item:k,itemInputValue:N,itemUrl:U,refresh:O,source:F,state:g.getState()},P)),void S.navigator.navigate({itemUrl:U,item:k,state:g.getState()});le(te({event:_,nextState:{isOpen:!1},props:S,query:N,refresh:O,store:g},P)).then(function(){F.onSelect(te({event:_,item:k,itemInputValue:N,itemUrl:U,refresh:O,source:F,state:g.getState()},P))})}}})(R({event:y,props:e,refresh:r,store:n},o))},onFocus:u,onBlur:vt,onClick:function(y){a.inputElement!==e.environment.document.activeElement||n.getState().isOpen||u(y)}},p)},getPanelProps:function(a){return R({onMouseDown:function(c){c.preventDefault()},onMouseLeave:function(){n.dispatch("mouseleave",null)}},a)},getListProps:function(a){var c=a||{},u=c.sourceIndex,s=re(c,yi);return R({role:"listbox","aria-labelledby":"".concat(i(e.id,u),"-label"),id:"".concat(i(e.id,u),"-list")},s)},getItemProps:function(a){var c=a.item,u=a.source,s=a.sourceIndex,l=re(a,gi);return R({id:"".concat(i(e.id,s),"-item-").concat(c.__autocomplete_id),role:"option","aria-selected":n.getState().activeItemId===c.__autocomplete_id,onMouseMove:function(m){if(c.__autocomplete_id!==n.getState().activeItemId){n.dispatch("mousemove",c.__autocomplete_id);var p=fe(n.getState());if(n.getState().activeItemId!==null&&p){var v=p.item,d=p.itemInputValue,h=p.itemUrl,y=p.source;y.onActive(R({event:m,item:v,itemInputValue:d,itemUrl:h,refresh:r,source:y,state:n.getState()},o))}}},onMouseDown:function(m){m.preventDefault()},onClick:function(m){var p=u.getItemInputValue({item:c,state:n.getState()}),v=u.getItemUrl({item:c,state:n.getState()});(v?Promise.resolve():le(R({event:m,nextState:{isOpen:!1},props:e,query:p,refresh:r,store:n},o))).then(function(){u.onSelect(R({event:m,item:c,itemInputValue:p,itemUrl:v,refresh:r,source:u,state:n.getState()},o))})}},l)}}}function He(t){return He=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},He(t)}function Yr(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function Oi(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Vi(t){var e=t.translations,r=e===void 0?{}:e,n=Bi(t,Ui),o=r.noResultsText,i=o===void 0?"No results for":o,a=r.suggestedQueryText,c=a===void 0?"Try searching for":a,u=r.reportMissingResultsText,s=u===void 0?"Believe this query should return results?":u,l=r.reportMissingResultsLinkText,m=l===void 0?"Let us know.":l,p=n.state.context.searchSuggestions;return f.createElement("div",{className:"DocSearch-NoResults"},f.createElement("div",{className:"DocSearch-Screen-Icon"},f.createElement(Mi,null)),f.createElement("p",{className:"DocSearch-Title"},i,' "',f.createElement("strong",null,n.state.query),'"'),p&&p.length>0&&f.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},f.createElement("p",{className:"DocSearch-Help"},c,":"),f.createElement("ul",null,p.slice(0,3).reduce(function(v,d){return[].concat(Fi(v),[f.createElement("li",{key:d},f.createElement("button",{className:"DocSearch-Prefill",key:d,type:"button",onClick:function(){n.setQuery(d.toLowerCase()+" "),n.refresh(),n.inputRef.current.focus()}},d))])},[]))),n.getMissingResultsUrl&&f.createElement("p",{className:"DocSearch-Help"},"".concat(s," "),f.createElement("a",{href:n.getMissingResultsUrl({query:n.state.query}),target:"_blank",rel:"noopener noreferrer"},m)))}var Ki=["hit","attribute","tagName"];function rn(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function nn(t){for(var e=1;e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function on(t,e){return e.split(".").reduce(function(r,n){return r!=null&&r[n]?r[n]:null},t)}function ce(t){var e=t.hit,r=t.attribute,n=t.tagName;return K(n===void 0?"span":n,nn(nn({},zi(t,Ki)),{},{dangerouslySetInnerHTML:{__html:on(e,"_snippetResult.".concat(r,".value"))||on(e,r)}}))}function an(t,e){return function(r){if(Array.isArray(r))return r}(t)||function(r,n){var o=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(o!=null){var i,a,c=[],u=!0,s=!1;try{for(o=o.call(r);!(u=(i=o.next()).done)&&(c.push(i.value),!n||c.length!==n);u=!0);}catch(l){s=!0,a=l}finally{try{u||o.return==null||o.return()}finally{if(s)throw a}}return c}}(t,e)||function(r,n){if(r){if(typeof r=="string")return un(r,n);var o=Object.prototype.toString.call(r).slice(8,-1);if(o==="Object"&&r.constructor&&(o=r.constructor.name),o==="Map"||o==="Set")return Array.from(r);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return un(r,n)}}(t,e)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function un(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r|<\/mark>)/g,Qi=RegExp($n.source);function Qn(t){var e,r,n=t;if(!n.__docsearch_parent&&!t._highlightResult)return t.hierarchy.lvl0;var o=((n.__docsearch_parent?(e=n.__docsearch_parent)===null||e===void 0||(e=e._highlightResult)===null||e===void 0||(e=e.hierarchy)===null||e===void 0?void 0:e.lvl0:(r=t._highlightResult)===null||r===void 0||(r=r.hierarchy)===null||r===void 0?void 0:r.lvl0)||{}).value;return o&&Qi.test(o)?o.replace($n,""):o}function Jt(){return Jt=Object.assign||function(t){for(var e=1;e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Xi(t){var e=t.translations,r=e===void 0?{}:e,n=Gi(t,Yi),o=r.recentSearchesTitle,i=o===void 0?"Recent":o,a=r.noRecentSearchesText,c=a===void 0?"No recent searches":a,u=r.saveRecentSearchButtonTitle,s=u===void 0?"Save this search":u,l=r.removeRecentSearchButtonTitle,m=l===void 0?"Remove this search from history":l,p=r.favoriteSearchesTitle,v=p===void 0?"Favorite":p,d=r.removeFavoriteSearchButtonTitle,h=d===void 0?"Remove this search from favorites":d;return n.state.status==="idle"&&n.hasCollections===!1?n.disableUserPersonalization?null:f.createElement("div",{className:"DocSearch-StartScreen"},f.createElement("p",{className:"DocSearch-Help"},c)):n.hasCollections===!1?null:f.createElement("div",{className:"DocSearch-Dropdown-Container"},f.createElement(zt,ht({},n,{title:i,collection:n.state.collections[0],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(Ci,null))},renderAction:function(y){var b=y.item,_=y.runFavoriteTransition,S=y.runDeleteTransition;return f.createElement(f.Fragment,null,f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:s,type:"submit",onClick:function(O){O.preventDefault(),O.stopPropagation(),_(function(){n.favoriteSearches.add(b),n.recentSearches.remove(b),n.refresh()})}},f.createElement(tn,null))),f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:m,type:"submit",onClick:function(O){O.preventDefault(),O.stopPropagation(),S(function(){n.recentSearches.remove(b),n.refresh()})}},f.createElement(Wt,null))))}})),f.createElement(zt,ht({},n,{title:v,collection:n.state.collections[1],renderIcon:function(){return f.createElement("div",{className:"DocSearch-Hit-icon"},f.createElement(tn,null))},renderAction:function(y){var b=y.item,_=y.runDeleteTransition;return f.createElement("div",{className:"DocSearch-Hit-action"},f.createElement("button",{className:"DocSearch-Hit-action-button",title:h,type:"submit",onClick:function(S){S.preventDefault(),S.stopPropagation(),_(function(){n.favoriteSearches.remove(b),n.refresh()})}},f.createElement(Wt,null)))}})))}var ea=["translations"];function yt(){return yt=Object.assign||function(t){for(var e=1;e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var ra=f.memo(function(t){var e=t.translations,r=e===void 0?{}:e,n=ta(t,ea);if(n.state.status==="error")return f.createElement(Hi,{translations:r?.errorScreen});var o=n.state.collections.some(function(i){return i.items.length>0});return n.state.query?o===!1?f.createElement(Vi,yt({},n,{translations:r?.noResultsScreen})):f.createElement(Zi,n):f.createElement(Xi,yt({},n,{hasCollections:o,translations:r?.startScreen}))},function(t,e){return e.state.status==="loading"||e.state.status==="stalled"}),na=["translations"];function gt(){return gt=Object.assign||function(t){for(var e=1;e=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function ia(t){var e=t.translations,r=e===void 0?{}:e,n=oa(t,na),o=r.resetButtonTitle,i=o===void 0?"Clear the query":o,a=r.resetButtonAriaLabel,c=a===void 0?"Clear the query":a,u=r.cancelButtonText,s=u===void 0?"Cancel":u,l=r.cancelButtonAriaLabel,m=l===void 0?"Cancel":l,p=r.searchInputLabel,v=p===void 0?"Search":p,d=n.getFormProps({inputElement:n.inputRef.current}).onReset;return f.useEffect(function(){n.autoFocus&&n.inputRef.current&&n.inputRef.current.focus()},[n.autoFocus,n.inputRef]),f.useEffect(function(){n.isFromSelection&&n.inputRef.current&&n.inputRef.current.select()},[n.isFromSelection,n.inputRef]),f.createElement(f.Fragment,null,f.createElement("form",{className:"DocSearch-Form",onSubmit:function(h){h.preventDefault()},onReset:d},f.createElement("label",gt({className:"DocSearch-MagnifierLabel"},n.getLabelProps()),f.createElement(Un,null),f.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},v)),f.createElement("div",{className:"DocSearch-LoadingIndicator"},f.createElement(Ai,null)),f.createElement("input",gt({className:"DocSearch-Input",ref:n.inputRef},n.getInputProps({inputElement:n.inputRef.current,autoFocus:n.autoFocus,maxLength:64}))),f.createElement("button",{type:"reset",title:i,className:"DocSearch-Reset","aria-label":c,hidden:!n.state.query},f.createElement(Wt,null))),f.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":m,onClick:n.onClose},s))}var aa=["_highlightResult","_snippetResult"];function ua(t,e){if(t==null)return{};var r,n,o=function(a,c){if(a==null)return{};var u,s,l={},m=Object.keys(a);for(s=0;s=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function ca(t){return function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch{return!1}}()===!1?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(e){return window.localStorage.setItem(t,JSON.stringify(e))},getItem:function(){var e=window.localStorage.getItem(t);return e?JSON.parse(e):[]}}}function sn(t){var e=t.key,r=t.limit,n=r===void 0?5:r,o=ca(e),i=o.getItem().slice(0,n);return{add:function(a){var c=a,u=(c._highlightResult,c._snippetResult,ua(c,aa)),s=i.findIndex(function(l){return l.objectID===u.objectID});s>-1&&i.splice(s,1),i.unshift(u),i=i.slice(0,n),o.setItem(i)},remove:function(a){i=i.filter(function(c){return c.objectID!==a.objectID}),o.setItem(i)},getAll:function(){return i}}}var la=["facetName","facetQuery"];function sa(t){var e,r="algoliasearch-client-js-".concat(t.key),n=function(){return e===void 0&&(e=t.localStorage||window.localStorage),e},o=function(){return JSON.parse(n().getItem(r)||"{}")},i=function(c){n().setItem(r,JSON.stringify(c))},a=function(){var c=t.timeToLive?1e3*t.timeToLive:null,u=o(),s=Object.fromEntries(Object.entries(u).filter(function(m){return se(m,2)[1].timestamp!==void 0}));if(i(s),c){var l=Object.fromEntries(Object.entries(s).filter(function(m){var p=se(m,2)[1],v=new Date().getTime();return!(p.timestamp+c2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then(function(){a();var l=JSON.stringify(c);return o()[l]}).then(function(l){return Promise.all([l?l.value:u(),l!==void 0])}).then(function(l){var m=se(l,2),p=m[0],v=m[1];return Promise.all([p,v||s.miss(p)])}).then(function(l){return se(l,1)[0]})},set:function(c,u){return Promise.resolve().then(function(){var s=o();return s[JSON.stringify(c)]={timestamp:new Date().getTime(),value:u},n().setItem(r,JSON.stringify(s)),u})},delete:function(c){return Promise.resolve().then(function(){var u=o();delete u[JSON.stringify(c)],n().setItem(r,JSON.stringify(u))})},clear:function(){return Promise.resolve().then(function(){n().removeItem(r)})}}}function Ee(t){var e=ft(t.caches),r=e.shift();return r===void 0?{get:function(n,o){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return o().then(function(a){return Promise.all([a,i.miss(a)])}).then(function(a){return se(a,1)[0]})},set:function(n,o){return Promise.resolve(o)},delete:function(n){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(n,o){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(n,o,i).catch(function(){return Ee({caches:e}).get(n,o,i)})},set:function(n,o){return r.set(n,o).catch(function(){return Ee({caches:e}).set(n,o)})},delete:function(n){return r.delete(n).catch(function(){return Ee({caches:e}).delete(n)})},clear:function(){return r.clear().catch(function(){return Ee({caches:e}).clear()})}}}function Tt(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{serializable:!0},e={};return{get:function(r,n){var o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{miss:function(){return Promise.resolve()}},i=JSON.stringify(r);if(i in e)return Promise.resolve(t.serializable?JSON.parse(e[i]):e[i]);var a=n(),c=o&&o.miss||function(){return Promise.resolve()};return a.then(function(u){return c(u)}).then(function(){return a})},set:function(r,n){return e[JSON.stringify(r)]=t.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(r){return delete e[JSON.stringify(r)],Promise.resolve()},clear:function(){return e={},Promise.resolve()}}}function fa(t){for(var e=t.length-1;e>0;e--){var r=Math.floor(Math.random()*(e+1)),n=t[e];t[e]=t[r],t[r]=n}return t}function Zn(t,e){return e&&Object.keys(e).forEach(function(r){t[r]=e[r](t)}),t}function bt(t){for(var e=arguments.length,r=new Array(e>1?e-1:0),n=1;n0?n:void 0,timeout:r.timeout||e,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var me={Read:1,Write:2,Any:3},Yn=1,ma=2,Gn=3;function Xn(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Yn;return I(I({},t),{},{status:e,lastUpdate:Date.now()})}function eo(t){return typeof t=="string"?{protocol:"https",url:t,accept:me.Any}:{protocol:t.protocol||"https",url:t.url,accept:t.accept||me.Any}}var $t="GET",_t="POST";function pa(t,e){return Promise.all(e.map(function(r){return t.get(r,function(){return Promise.resolve(Xn(r))})})).then(function(r){var n=r.filter(function(a){return function(c){return c.status===Yn||Date.now()-c.lastUpdate>12e4}(a)}),o=r.filter(function(a){return function(c){return c.status===Gn&&Date.now()-c.lastUpdate<=12e4}(a)}),i=[].concat(ft(n),ft(o));return{getTimeout:function(a,c){return(o.length===0&&a===0?1:o.length+3+a)*c},statelessHosts:i.length>0?i.map(function(a){return eo(a)}):e}})}function mn(t,e,r,n){var o=[],i=function(p,v){if(!(p.method===$t||p.data===void 0&&v.data===void 0)){var d=Array.isArray(p.data)?p.data:I(I({},p.data),v.data);return JSON.stringify(d)}}(r,n),a=function(p,v){var d=I(I({},p.headers),v.headers),h={};return Object.keys(d).forEach(function(y){var b=d[y];h[y.toLowerCase()]=b}),h}(t,n),c=r.method,u=r.method!==$t?{}:I(I({},r.data),n.data),s=I(I(I({"x-algolia-agent":t.userAgent.value},t.queryParameters),u),n.queryParameters),l=0,m=function p(v,d){var h=v.pop();if(h===void 0)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:pn(o)};var y={data:i,headers:a,method:c,url:da(h,r.path,s),connectTimeout:d(l,t.timeouts.connect),responseTimeout:d(l,n.timeout)},b=function(S){var O={request:y,response:S,host:h,triesLeft:v.length};return o.push(O),O},_={onSuccess:function(S){return function(O){try{return JSON.parse(O.content)}catch(g){throw function(P,C){return{name:"DeserializationError",message:P,response:C}}(g.message,O)}}(S)},onRetry:function(S){var O=b(S);return S.isTimedOut&&l++,Promise.all([t.logger.info("Retryable failure",ro(O)),t.hostsCache.set(h,Xn(h,S.isTimedOut?Gn:ma))]).then(function(){return p(v,d)})},onFail:function(S){throw b(S),function(O,g){var P=O.content,C=O.status,L=P;try{L=JSON.parse(P).message}catch{}return function(x,k,N){return{name:"ApiError",message:x,status:k,transporterStackTrace:N}}(L,C,g)}(S,pn(o))}};return t.requester.send(y).then(function(S){return function(O,g){return function(P){var C=P.status;return P.isTimedOut||function(L){var x=L.isTimedOut,k=L.status;return!x&&~~k==0}(P)||~~(C/100)!=2&&~~(C/100)!=4}(O)?g.onRetry(O):~~(O.status/100)==2?g.onSuccess(O):g.onFail(O)}(S,_)})};return pa(t.hostsCache,e).then(function(p){return m(ft(p.statelessHosts).reverse(),p.getTimeout)})}function va(t){var e={value:"Algolia for JavaScript (".concat(t,")"),add:function(r){var n="; ".concat(r.segment).concat(r.version!==void 0?" (".concat(r.version,")"):"");return e.value.indexOf(n)===-1&&(e.value="".concat(e.value).concat(n)),e}};return e}function da(t,e,r){var n=to(r),o="".concat(t.protocol,"://").concat(t.url,"/").concat(e.charAt(0)==="/"?e.substr(1):e);return n.length&&(o+="?".concat(n)),o}function to(t){return Object.keys(t).map(function(e){return bt("%s=%s",e,(r=t[e],Object.prototype.toString.call(r)==="[object Object]"||Object.prototype.toString.call(r)==="[object Array]"?JSON.stringify(t[e]):t[e]));var r}).join("&")}function pn(t){return t.map(function(e){return ro(e)})}function ro(t){var e=t.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return I(I({},t),{},{request:I(I({},t.request),{},{headers:I(I({},t.request.headers),e)})})}var ha=function(t){var e=t.appId,r=function(i,a,c){var u={"x-algolia-api-key":c,"x-algolia-application-id":a};return{headers:function(){return i===st.WithinHeaders?u:{}},queryParameters:function(){return i===st.WithinQueryParameters?u:{}}}}(t.authMode!==void 0?t.authMode:st.WithinHeaders,e,t.apiKey),n=function(i){var a=i.hostsCache,c=i.logger,u=i.requester,s=i.requestsCache,l=i.responsesCache,m=i.timeouts,p=i.userAgent,v=i.hosts,d=i.queryParameters,h={hostsCache:a,logger:c,requester:u,requestsCache:s,responsesCache:l,timeouts:m,userAgent:p,headers:i.headers,queryParameters:d,hosts:v.map(function(y){return eo(y)}),read:function(y,b){var _=fn(b,h.timeouts.read),S=function(){return mn(h,h.hosts.filter(function(g){return(g.accept&me.Read)!=0}),y,_)};if((_.cacheable!==void 0?_.cacheable:y.cacheable)!==!0)return S();var O={request:y,mappedRequestOptions:_,transporter:{queryParameters:h.queryParameters,headers:h.headers}};return h.responsesCache.get(O,function(){return h.requestsCache.get(O,function(){return h.requestsCache.set(O,S()).then(function(g){return Promise.all([h.requestsCache.delete(O),g])},function(g){return Promise.all([h.requestsCache.delete(O),Promise.reject(g)])}).then(function(g){var P=se(g,2);return P[0],P[1]})})},{miss:function(g){return h.responsesCache.set(O,g)}})},write:function(y,b){return mn(h,h.hosts.filter(function(_){return(_.accept&me.Write)!=0}),y,fn(b,h.timeouts.write))}};return h}(I(I({hosts:[{url:"".concat(e,"-dsn.algolia.net"),accept:me.Read},{url:"".concat(e,".algolia.net"),accept:me.Write}].concat(fa([{url:"".concat(e,"-1.algolianet.com")},{url:"".concat(e,"-2.algolianet.com")},{url:"".concat(e,"-3.algolianet.com")}]))},t),{},{headers:I(I(I({},r.headers()),{"content-type":"application/x-www-form-urlencoded"}),t.headers),queryParameters:I(I({},r.queryParameters()),t.queryParameters)})),o={transporter:n,appId:e,addAlgoliaAgent:function(i,a){n.userAgent.add({segment:i,version:a})},clearCache:function(){return Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then(function(){})}};return Zn(o,t.methods)},ya=function(t){return function(e,r){return e.method===$t?t.transporter.read(e,r):t.transporter.write(e,r)}},no=function(t){return function(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n={transporter:t.transporter,appId:t.appId,indexName:e};return Zn(n,r.methods)}},vn=function(t){return function(e,r){var n=e.map(function(o){return I(I({},o),{},{params:to(o.params||{})})});return t.transporter.read({method:_t,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)}},dn=function(t){return function(e,r){return Promise.all(e.map(function(n){var o=n.params,i=o.facetName,a=o.facetQuery,c=po(o,la);return no(t)(n.indexName,{methods:{searchForFacetValues:oo}}).searchForFacetValues(i,a,I(I({},r),c))}))}},ga=function(t){return function(e,r,n){return t.transporter.read({method:_t,path:bt("1/answers/%s/prediction",t.indexName),data:{query:e,queryLanguages:r},cacheable:!0},n)}},ba=function(t){return function(e,r){return t.transporter.read({method:_t,path:bt("1/indexes/%s/query",t.indexName),data:{query:e},cacheable:!0},r)}},oo=function(t){return function(e,r,n){return t.transporter.read({method:_t,path:bt("1/indexes/%s/facets/%s/query",t.indexName,e),data:{facetQuery:r},cacheable:!0},n)}},_a=1,Oa=2,Sa=3;function io(t,e,r){var n,o={appId:t,apiKey:e,timeouts:{connect:1,read:2,write:30},requester:{send:function(i){return new Promise(function(a){var c=new XMLHttpRequest;c.open(i.method,i.url,!0),Object.keys(i.headers).forEach(function(m){return c.setRequestHeader(m,i.headers[m])});var u,s=function(m,p){return setTimeout(function(){c.abort(),a({status:0,content:p,isTimedOut:!0})},1e3*m)},l=s(i.connectTimeout,"Connection timeout");c.onreadystatechange=function(){c.readyState>c.OPENED&&u===void 0&&(clearTimeout(l),u=s(i.responseTimeout,"Socket timeout"))},c.onerror=function(){c.status===0&&(clearTimeout(l),clearTimeout(u),a({content:c.responseText||"Network request failed",status:c.status,isTimedOut:!1}))},c.onload=function(){clearTimeout(l),clearTimeout(u),a({content:c.responseText,status:c.status,isTimedOut:!1})},c.send(i.data)})}},logger:(n=Sa,{debug:function(i,a){return _a>=n&&console.debug(i,a),Promise.resolve()},info:function(i,a){return Oa>=n&&console.info(i,a),Promise.resolve()},error:function(i,a){return console.error(i,a),Promise.resolve()}}),responsesCache:Tt(),requestsCache:Tt({serializable:!1}),hostsCache:Ee({caches:[sa({key:"".concat("4.19.1","-").concat(t)}),Tt()]}),userAgent:va("4.19.1").add({segment:"Browser",version:"lite"}),authMode:st.WithinQueryParameters};return ha(I(I(I({},o),r),{},{methods:{search:vn,searchForFacetValues:dn,multipleQueries:vn,multipleSearchForFacetValues:dn,customRequest:ya,initIndex:function(i){return function(a){return no(i)(a,{methods:{search:ba,searchForFacetValues:oo,findAnswers:ga}})}}}}))}io.version="4.19.1";var wa=["footer","searchBox"];function Be(){return Be=Object.assign||function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r=0||(l[u]=a[u]);return l}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}function Ia(t){var e=t.appId,r=t.apiKey,n=t.indexName,o=t.placeholder,i=o===void 0?"Search docs":o,a=t.searchParameters,c=t.maxResultsPerGroup,u=t.onClose,s=u===void 0?$i:u,l=t.transformItems,m=l===void 0?ln:l,p=t.hitComponent,v=p===void 0?ki:p,d=t.resultsFooterComponent,h=d===void 0?function(){return null}:d,y=t.navigator,b=t.initialScrollY,_=b===void 0?0:b,S=t.transformSearchClient,O=S===void 0?ln:S,g=t.disableUserPersonalization,P=g!==void 0&&g,C=t.initialQuery,L=C===void 0?"":C,x=t.translations,k=x===void 0?{}:x,N=t.getMissingResultsUrl,U=t.insights,F=U!==void 0&&U,M=k.footer,Ot=k.searchBox,St=Pa(k,wa),$e=Ea(f.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),B=$e[0],ao=$e[1],tr=f.useRef(null),wt=f.useRef(null),rr=f.useRef(null),Qe=f.useRef(null),he=f.useRef(null),Q=f.useRef(10),nr=f.useRef(typeof window<"u"?window.getSelection().toString().slice(0,64):"").current,ee=f.useRef(L||nr).current,or=function(j,D,T){return f.useMemo(function(){var H=io(j,D);return H.addAlgoliaAgent("docsearch","3.6.0"),/docsearch.js \(.*\)/.test(H.transporter.userAgent.value)===!1&&H.addAlgoliaAgent("docsearch-react","3.6.0"),T(H)},[j,D,T])}(e,r,O),oe=f.useRef(sn({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(n),limit:10})).current,ye=f.useRef(sn({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(n),limit:oe.getAll().length===0?7:4})).current,ge=f.useCallback(function(j){if(!P){var D=j.type==="content"?j.__docsearch_parent:j;D&&oe.getAll().findIndex(function(T){return T.objectID===D.objectID})===-1&&ye.add(D)}},[oe,ye,P]),uo=f.useCallback(function(j){if(B.context.algoliaInsightsPlugin&&j.__autocomplete_id){var D=j,T={eventName:"Item Selected",index:D.__autocomplete_indexName,items:[D],positions:[j.__autocomplete_id],queryID:D.__autocomplete_queryID};B.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(T)}},[B.context.algoliaInsightsPlugin]),be=f.useMemo(function(){return Pi({id:"docsearch",defaultActiveItemId:0,placeholder:i,openOnFocus:!0,initialState:{query:ee,context:{searchSuggestions:[]}},insights:F,navigator:y,onStateChange:function(j){ao(j.state)},getSources:function(j){var D=j.query,T=j.state,H=j.setContext,Z=j.setStatus;if(!D)return P?[]:[{sourceId:"recentSearches",onSelect:function(A){var V=A.item,_e=A.event;ge(V),at(_e)||s()},getItemUrl:function(A){return A.item.url},getItems:function(){return ye.getAll()}},{sourceId:"favoriteSearches",onSelect:function(A){var V=A.item,_e=A.event;ge(V),at(_e)||s()},getItemUrl:function(A){return A.item.url},getItems:function(){return oe.getAll()}}];var Y=!!F;return or.search([{query:D,indexName:n,params:Rt({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(Q.current),"hierarchy.lvl2:".concat(Q.current),"hierarchy.lvl3:".concat(Q.current),"hierarchy.lvl4:".concat(Q.current),"hierarchy.lvl5:".concat(Q.current),"hierarchy.lvl6:".concat(Q.current),"content:".concat(Q.current)],snippetEllipsisText:"…",highlightPreTag:"",highlightPostTag:"",hitsPerPage:20,clickAnalytics:Y},a)}]).catch(function(A){throw A.name==="RetryError"&&Z("error"),A}).then(function(A){var V=A.results[0],_e=V.hits,so=V.nbHits,jt=cn(_e,function(Et){return Qn(Et)},c);T.context.searchSuggestions.length0&&(ir(),he.current&&he.current.focus())},[ee,ir]),f.useEffect(function(){function j(){if(wt.current){var D=.01*window.innerHeight;wt.current.style.setProperty("--docsearch-vh","".concat(D,"px"))}}return j(),window.addEventListener("resize",j),function(){window.removeEventListener("resize",j)}},[]),f.createElement("div",Be({ref:tr},lo({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container",B.status==="stalled"&&"DocSearch-Container--Stalled",B.status==="error"&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(j){j.target===j.currentTarget&&s()}}),f.createElement("div",{className:"DocSearch-Modal",ref:wt},f.createElement("header",{className:"DocSearch-SearchBar",ref:rr},f.createElement(ia,Be({},be,{state:B,autoFocus:ee.length===0,inputRef:he,isFromSelection:!!ee&&ee===nr,translations:Ot,onClose:s}))),f.createElement("div",{className:"DocSearch-Dropdown",ref:Qe},f.createElement(ra,Be({},be,{indexName:n,state:B,hitComponent:v,resultsFooterComponent:h,disableUserPersonalization:P,recentSearches:ye,favoriteSearches:oe,inputRef:he,translations:St,getMissingResultsUrl:N,onItemClick:function(j,D){uo(j),ge(j),at(D)||s()}}))),f.createElement("footer",{className:"DocSearch-Footer"},f.createElement(Di,{translations:M}))))}function Qt(){return Qt=Object.assign||function(t){for(var e=1;et.length)&&(e=t.length);for(var r=0,n=new Array(e);r1&&arguments[1]!==void 0?arguments[1]:window;return typeof e=="string"?r.document.querySelector(e):e}(t.container,t.environment))}export{ka as default}; diff --git a/_astro/navbar-icon.Bha2ncEb.png b/_astro/navbar-icon.Bha2ncEb.png new file mode 100644 index 000000000..69da50a5d Binary files /dev/null and b/_astro/navbar-icon.Bha2ncEb.png differ diff --git a/_astro/page.BO5rBSqo.js b/_astro/page.BO5rBSqo.js new file mode 100644 index 000000000..5d7bc66ce --- /dev/null +++ b/_astro/page.BO5rBSqo.js @@ -0,0 +1 @@ +const d=new Set,c=new WeakSet;let f=!0,h,l=!1;function v(e){l||(l=!0,f??=!1,h??="hover",g(),p(),w(),S())}function g(){for(const e of["touchstart","mousedown"])document.body.addEventListener(e,t=>{i(t.target,"tap")&&s(t.target.href,{with:"fetch",ignoreSlowConnection:!0})},{passive:!0})}function p(){let e;document.body.addEventListener("focusin",o=>{i(o.target,"hover")&&t(o)},{passive:!0}),document.body.addEventListener("focusout",n,{passive:!0}),u(()=>{for(const o of document.getElementsByTagName("a"))c.has(o)||i(o,"hover")&&(c.add(o),o.addEventListener("mouseenter",t,{passive:!0}),o.addEventListener("mouseleave",n,{passive:!0}))});function t(o){const r=o.target.href;e&&clearTimeout(e),e=setTimeout(()=>{s(r,{with:"fetch"})},80)}function n(){e&&(clearTimeout(e),e=0)}}function w(){let e;u(()=>{for(const t of document.getElementsByTagName("a"))c.has(t)||i(t,"viewport")&&(c.add(t),e??=y(),e.observe(t))})}function y(){const e=new WeakMap;return new IntersectionObserver((t,n)=>{for(const o of t){const r=o.target,a=e.get(r);o.isIntersecting?(a&&clearTimeout(a),e.set(r,setTimeout(()=>{n.unobserve(r),e.delete(r),s(r.href,{with:"link"})},300))):a&&(clearTimeout(a),e.delete(r))}})}function S(){u(()=>{for(const e of document.getElementsByTagName("a"))i(e,"load")&&s(e.href,{with:"link"})})}function s(e,t){const n=t?.ignoreSlowConnection??!1;if(!L(e,n))return;if(d.add(e),(t?.with??"link")==="link"){const r=document.createElement("link");r.rel="prefetch",r.setAttribute("href",e),document.head.append(r)}else fetch(e).catch(r=>{console.log(`[astro] Failed to prefetch ${e}`),console.error(r)})}function L(e,t){if(!navigator.onLine||!t&&m())return!1;try{const n=new URL(e,location.href);return location.origin===n.origin&&(location.pathname!==n.pathname||location.search!==n.search)&&!d.has(e)}catch{}return!1}function i(e,t){if(e?.tagName!=="A")return!1;const n=e.dataset.astroPrefetch;return n==="false"?!1:t==="tap"&&(n!=null||f)&&m()?!0:n==null&&f||n===""?t===h:n===t}function m(){if("connection"in navigator){const e=navigator.connection;return e.saveData||/2g/.test(e.effectiveType)}return!1}function u(e){e();let t=!1;document.addEventListener("astro:page-load",()=>{if(!t){t=!0;return}e()})}v(); diff --git a/_astro/sern-logo.DrMjwPpH_ZKqdkK.webp b/_astro/sern-logo.DrMjwPpH_ZKqdkK.webp new file mode 100644 index 000000000..79c49788c Binary files /dev/null and b/_astro/sern-logo.DrMjwPpH_ZKqdkK.webp differ diff --git a/api/classes/context/index.html b/api/classes/context/index.html new file mode 100644 index 000000000..23019a3e9 --- /dev/null +++ b/api/classes/context/index.html @@ -0,0 +1,223 @@ + Context | sern + + + Skip to content

Context

Since

+

1.0.0 +Provides values shared between +Message and ChatInputCommandInteraction

+

Extends

+
    +
  • CoreContext<Message, ChatInputCommandInteraction>
  • +
+

Accessors

+

channel

+
+

get channel(): null | TextBasedChannel

+
+

Returns

+

null | TextBasedChannel

+

Source

+

src/core/structures/context.ts:39

+
+

channelId

+
+

get channelId(): string

+
+

Returns

+

string

+

Source

+

src/core/structures/context.ts:45

+
+

client

+
+

get client(): Client<boolean>

+
+

Returns

+

Client<boolean>

+

Source

+

src/core/structures/context.ts:91

+
+

createdTimestamp

+
+

get createdTimestamp(): number

+
+

Returns

+

number

+

Source

+

src/core/structures/context.ts:65

+
+

guild

+
+

get guild(): null | Guild

+
+

Returns

+

null | Guild

+

Source

+

src/core/structures/context.ts:71

+
+

guildId

+
+

get guildId(): null | string

+
+

Returns

+

null | string

+

Source

+

src/core/structures/context.ts:77

+
+

id

+
+

get id(): string

+
+

Returns

+

string

+

Source

+

src/core/structures/context.ts:33

+
+

inGuild

+
+

get inGuild(): boolean

+
+

Returns

+

boolean

+

Source

+

src/core/structures/context.ts:97

+
+

interaction

+
+

get interaction(): I

+
+

Returns

+

I

+

Source

+

src/core/structures/core-context.ts:15

+
+

member

+
+

get member(): null | GuildMember | APIInteractionGuildMember

+
+

Returns

+

null | GuildMember | APIInteractionGuildMember

+

Source

+

src/core/structures/context.ts:85

+
+

message

+
+

get message(): M

+
+

Returns

+

M

+

Source

+

src/core/structures/core-context.ts:12

+
+

options

+
+

get options(): Omit<CommandInteractionOptionResolver<CacheType>, "getMessage" | "getFocused">

+
+

Returns

+

Omit<CommandInteractionOptionResolver<CacheType>, "getMessage" | "getFocused">

+

Source

+

src/core/structures/context.ts:26

+
+

user

+
+

get user(): User

+
+

If context is holding a message, message.author +else, interaction.user

+

Returns

+

User

+

Source

+

src/core/structures/context.ts:55

+
+

userId

+
+

get userId(): string

+
+

Returns

+

string

+

Source

+

src/core/structures/context.ts:61

+

Methods

+

isMessage()

+
+

isMessage(): this is CoreContext<Message<boolean>, never>

+
+

Returns

+

this is CoreContext<Message<boolean>, never>

+

Inherited from

+

CoreContext.isMessage

+

Source

+

src/core/structures/core-context.ts:19

+
+

isSlash()

+
+

isSlash(): this is CoreContext<never, ChatInputCommandInteraction<CacheType>>

+
+

Returns

+

this is CoreContext<never, ChatInputCommandInteraction<CacheType>>

+

Inherited from

+

CoreContext.isSlash

+

Source

+

src/core/structures/core-context.ts:23

+
+

reply()

+
+

reply(content): Promise<Message<boolean>>

+
+

Parameters

+

content: ReplyOptions

+

Returns

+

Promise<Message<boolean>>

+

Source

+

src/core/structures/context.ts:103

+
+

wrap()

+
+

static wrap(wrappable): Context

+
+

Parameters

+

wrappable: Message<boolean> | BaseInteraction<CacheType>

+

Returns

+

Context

+

Overrides

+

CoreContext.wrap

+

Source

+

src/core/structures/context.ts:113

\ No newline at end of file diff --git a/api/classes/modulestore/index.html b/api/classes/modulestore/index.html new file mode 100644 index 000000000..e719fa486 --- /dev/null +++ b/api/classes/modulestore/index.html @@ -0,0 +1,62 @@ + ModuleStore | sern + + + Skip to content

ModuleStore

Constructors

+

new ModuleStore()

+
+

new ModuleStore(): ModuleStore

+
+

Returns

+

ModuleStore

+

Properties

+

commands

+
+

commands: Map<string, Module>

+
+

Source

+

src/core/structures/module-store.ts:10

+
+

metadata

+
+

metadata: WeakMap<Module, CommandMeta>

+
+

Source

+

src/core/structures/module-store.ts:9

\ No newline at end of file diff --git a/api/enumerations/commandtype/index.html b/api/enumerations/commandtype/index.html new file mode 100644 index 000000000..dc70357a7 --- /dev/null +++ b/api/enumerations/commandtype/index.html @@ -0,0 +1,130 @@ + CommandType | sern + + + Skip to content

CommandType

Since

+

1.0.0 +A bitfield that discriminates command modules

+

Example

+
1
export default commandModule({
2
// highlight-next-line
3
type : CommandType.Text,
4
name : 'a text command'
5
execute(message) {
6
console.log(message.content)
7
}
8
})
+

Enumeration Members

+

Both

+
+

Both: 3

+
+

Source

+

src/core/structures/enums.ts:20

+
+

Button

+
+

Button: 16

+
+

Source

+

src/core/structures/enums.ts:23

+
+

ChannelSelect

+
+

ChannelSelect: 1024

+
+

Source

+

src/core/structures/enums.ts:29

+
+

CtxMsg

+
+

CtxMsg: 8

+
+

Source

+

src/core/structures/enums.ts:22

+
+

CtxUser

+
+

CtxUser: 4

+
+

Source

+

src/core/structures/enums.ts:21

+
+

MentionableSelect

+
+

MentionableSelect: 512

+
+

Source

+

src/core/structures/enums.ts:28

+
+ +
+

Modal: 64

+
+

Source

+

src/core/structures/enums.ts:25

+
+

RoleSelect

+
+

RoleSelect: 256

+
+

Source

+

src/core/structures/enums.ts:27

+
+

Slash

+
+

Slash: 2

+
+

Source

+

src/core/structures/enums.ts:19

+
+

StringSelect

+
+

StringSelect: 32

+
+

Source

+

src/core/structures/enums.ts:24

+
+

Text

+
+

Text: 1

+
+

Source

+

src/core/structures/enums.ts:18

+
+

UserSelect

+
+

UserSelect: 128

+
+

Source

+

src/core/structures/enums.ts:26

\ No newline at end of file diff --git a/api/enumerations/eventtype/index.html b/api/enumerations/eventtype/index.html new file mode 100644 index 000000000..fcec4a3cd --- /dev/null +++ b/api/enumerations/eventtype/index.html @@ -0,0 +1,69 @@ + EventType | sern + + + Skip to content

EventType

A bitfield that discriminates event modules

+

Example

+
1
export default eventModule({
2
//highlight-next-line
3
type : EventType.Discord,
4
name : 'guildMemberAdd'
5
execute(member : GuildMember) {
6
console.log(member)
7
}
8
})
+

Enumeration Members

+

Discord

+
+

Discord: 1

+
+

The EventType for handling discord events

+

Source

+

src/core/structures/enums.ts:51

+
+

External

+
+

External: 3

+
+

The EventType for handling external events. +Could be for example, process events, database events

+

Source

+

src/core/structures/enums.ts:60

+
+

Sern

+
+

Sern: 2

+
+

The EventType for handling sern events

+

Source

+

src/core/structures/enums.ts:55

\ No newline at end of file diff --git a/api/enumerations/payloadtype/index.html b/api/enumerations/payloadtype/index.html new file mode 100644 index 000000000..07a7e5943 --- /dev/null +++ b/api/enumerations/payloadtype/index.html @@ -0,0 +1,65 @@ + PayloadType | sern + + + Skip to content

PayloadType

Enumeration Members

+

Failure

+
+

Failure: "failure"

+
+

The PayloadType for a SernEmitter failure event

+

Source

+

src/core/structures/enums.ts:98

+
+

Success

+
+

Success: "success"

+
+

The PayloadType for a SernEmitter success event

+

Source

+

src/core/structures/enums.ts:94

+
+

Warning

+
+

Warning: "warning"

+
+

The PayloadType for a SernEmitter warning event

+

Source

+

src/core/structures/enums.ts:102

\ No newline at end of file diff --git a/api/enumerations/plugintype/index.html b/api/enumerations/plugintype/index.html new file mode 100644 index 000000000..ab0f9809a --- /dev/null +++ b/api/enumerations/plugintype/index.html @@ -0,0 +1,60 @@ + PluginType | sern + + + Skip to content

PluginType

A bitfield that discriminates plugins

+

Example

+
1
export default function myPlugin() : EventPlugin<CommandType.Text> {
2
//highlight-next-line
3
type : PluginType.Event,
4
execute([ctx, args], controller) {
5
return controller.next();
6
}
7
}
+

Enumeration Members

+

Control

+
+

Control: 2

+
+

The PluginType for EventPlugins

+

Source

+

src/core/structures/enums.ts:85

+
+

Init

+
+

Init: 1

+
+

The PluginType for InitPlugins

+

Source

+

src/core/structures/enums.ts:81

\ No newline at end of file diff --git a/api/functions/commandcontrolplugin/index.html b/api/functions/commandcontrolplugin/index.html new file mode 100644 index 000000000..de8996d64 --- /dev/null +++ b/api/functions/commandcontrolplugin/index.html @@ -0,0 +1,55 @@ + CommandControlPlugin | sern + + + Skip to content

CommandControlPlugin

+

CommandControlPlugin<I>(execute): Plugin<unknown[]>

+
+

Type parameters

+

I extends CommandType

+

Parameters

+

execute

+

Returns

+

Plugin<unknown[]>

+

Since

+

2.5.0 +@PURE

+

Source

+

src/core/create-plugins.ts:37

\ No newline at end of file diff --git a/api/functions/commandinitplugin/index.html b/api/functions/commandinitplugin/index.html new file mode 100644 index 000000000..cbc63e041 --- /dev/null +++ b/api/functions/commandinitplugin/index.html @@ -0,0 +1,55 @@ + CommandInitPlugin | sern + + + Skip to content

CommandInitPlugin

+

CommandInitPlugin<I>(execute): Plugin<unknown[]>

+
+

Type parameters

+

I extends CommandType

+

Parameters

+

execute

+

Returns

+

Plugin<unknown[]>

+

Since

+

2.5.0 +@PURE

+

Source

+

src/core/create-plugins.ts:28

\ No newline at end of file diff --git a/api/functions/commandmodule/index.html b/api/functions/commandmodule/index.html new file mode 100644 index 000000000..dfd6a7c48 --- /dev/null +++ b/api/functions/commandmodule/index.html @@ -0,0 +1,52 @@ + commandModule | sern + + + Skip to content

commandModule

+

commandModule(mod): CommandModule

+
+

Parameters

+

mod: InputCommand

+

Returns

+

CommandModule

+

Since

+

1.0.0 The wrapper function to define command modules for sern

+

Source

+

src/core/modules.ts:19

\ No newline at end of file diff --git a/api/functions/discordevent/index.html b/api/functions/discordevent/index.html new file mode 100644 index 000000000..efd58c18e --- /dev/null +++ b/api/functions/discordevent/index.html @@ -0,0 +1,59 @@ + discordEvent | sern + + + Skip to content

discordEvent

+

discordEvent<T>(mod): EventModule

+
+

Create event modules from discord.js client events, +This is an eventModule for discord events, +where typings can be very bad.

+

Type parameters

+

T extends keyof ClientEvents

+

Parameters

+

mod

+

mod.execute

+

mod.name: T

+

mod.plugins?: AnyEventPlugin[]

+

Returns

+

EventModule

+

Experimental

+

Source

+

src/core/modules.ts:47

\ No newline at end of file diff --git a/api/functions/discordeventcontrolplugin/index.html b/api/functions/discordeventcontrolplugin/index.html new file mode 100644 index 000000000..63b43860c --- /dev/null +++ b/api/functions/discordeventcontrolplugin/index.html @@ -0,0 +1,58 @@ + DiscordEventControlPlugin | sern + + + Skip to content

DiscordEventControlPlugin

+

DiscordEventControlPlugin<T>(name, execute): Plugin<unknown[]>

+
+

Type parameters

+

T extends keyof ClientEvents

+

Parameters

+

name: T

+

execute

+

Returns

+

Plugin<unknown[]>

+

Since

+

2.5.0

+

Experimental

+

A specialized function for creating control plugins with discord.js ClientEvents. +Will probably be moved one day!

+

Source

+

src/core/create-plugins.ts:58

\ No newline at end of file diff --git a/api/functions/eventcontrolplugin/index.html b/api/functions/eventcontrolplugin/index.html new file mode 100644 index 000000000..900020086 --- /dev/null +++ b/api/functions/eventcontrolplugin/index.html @@ -0,0 +1,55 @@ + EventControlPlugin | sern + + + Skip to content

EventControlPlugin

+

EventControlPlugin<I>(execute): Plugin<unknown[]>

+
+

Type parameters

+

I extends EventType

+

Parameters

+

execute

+

Returns

+

Plugin<unknown[]>

+

Since

+

2.5.0 +@PURE

+

Source

+

src/core/create-plugins.ts:46

\ No newline at end of file diff --git a/api/functions/eventinitplugin/index.html b/api/functions/eventinitplugin/index.html new file mode 100644 index 000000000..9e6775d49 --- /dev/null +++ b/api/functions/eventinitplugin/index.html @@ -0,0 +1,55 @@ + EventInitPlugin | sern + + + Skip to content

EventInitPlugin

+

EventInitPlugin<I>(execute): Plugin<unknown[]>

+
+

Type parameters

+

I extends EventType

+

Parameters

+

execute

+

Returns

+

Plugin<unknown[]>

+

Since

+

2.5.0 +@PURE

+

Source

+

src/core/create-plugins.ts:19

\ No newline at end of file diff --git a/api/functions/eventmodule/index.html b/api/functions/eventmodule/index.html new file mode 100644 index 000000000..ce6b60969 --- /dev/null +++ b/api/functions/eventmodule/index.html @@ -0,0 +1,53 @@ + eventModule | sern + + + Skip to content

eventModule

+

eventModule(mod): EventModule

+
+

Parameters

+

mod: InputEvent

+

Returns

+

EventModule

+

Since

+

1.0.0 +The wrapper function to define event modules for sern

+

Source

+

src/core/modules.ts:32

\ No newline at end of file diff --git a/api/functions/makedependencies/index.html b/api/functions/makedependencies/index.html new file mode 100644 index 000000000..149decae6 --- /dev/null +++ b/api/functions/makedependencies/index.html @@ -0,0 +1,52 @@ + makeDependencies | sern + + + Skip to content

makeDependencies

+

makeDependencies<T>(conf): Promise<<V>(…keys) => IntoDependencies<V>>

+
+

Type parameters

+

T extends Dependencies

+

Parameters

+

conf: ValidDependencyConfig

+

Returns

+

Promise<<V>(…keys) => IntoDependencies<V>>

+

Source

+

src/core/ioc/base.ts:144

\ No newline at end of file diff --git a/api/functions/makeplugin/index.html b/api/functions/makeplugin/index.html new file mode 100644 index 000000000..f1ddf9c5f --- /dev/null +++ b/api/functions/makeplugin/index.html @@ -0,0 +1,53 @@ + makePlugin | sern + + + Skip to content

makePlugin

+

makePlugin<V>(type, execute): Plugin<V>

+
+

Type parameters

+

V extends unknown[]

+

Parameters

+

type: PluginType

+

execute

+

Returns

+

Plugin<V>

+

Source

+

src/core/create-plugins.ts:6

\ No newline at end of file diff --git a/api/functions/service/index.html b/api/functions/service/index.html new file mode 100644 index 000000000..fa1ee45d7 --- /dev/null +++ b/api/functions/service/index.html @@ -0,0 +1,61 @@ + Service | sern + + + Skip to content

Service

+

Service<T>(key): NonNullable<UnpackFunction<Partial<Dependencies>[T]>>

+
+

The new Service api, a cleaner alternative to useContainer +To obtain intellisense, ensure a .d.ts file exists in the root of compilation. +Usually our scaffolding tool takes care of this. +Note: this method only works AFTER your container has been initiated

+

Type parameters

+

T extends keyof Dependencies

+

Parameters

+

key: T

+

a key that corresponds to a dependency registered.

+

Returns

+

NonNullable<UnpackFunction<Partial<Dependencies>[T]>>

+

Since

+

3.0.0

+

Example

+
1
const client = Service('@sern/client');
+

Source

+

src/core/ioc/dependency-injection.ts:37

\ No newline at end of file diff --git a/api/functions/services/index.html b/api/functions/services/index.html new file mode 100644 index 000000000..b6c05cfbb --- /dev/null +++ b/api/functions/services/index.html @@ -0,0 +1,56 @@ + Services | sern + + + Skip to content

Services

+

Services<T>(…keys): IntoDependencies<T>

+
+

Type parameters

+

T extends keyof Dependencies[]

+

Parameters

+

• …keys: [...T[]]

+

Returns

+

IntoDependencies<T>

+

array of dependencies, in the same order of keys provided

+

Since

+

3.0.0 +The plural version of Service

+

Source

+

src/core/ioc/dependency-injection.ts:47

\ No newline at end of file diff --git a/api/functions/single/index.html b/api/functions/single/index.html new file mode 100644 index 000000000..b7afa1d15 --- /dev/null +++ b/api/functions/single/index.html @@ -0,0 +1,58 @@ + single | sern + + + Skip to content

single

+

single<T>(cb): () => T

+
+

@PURE

+

Type parameters

+

T

+

Parameters

+

cb

+

Returns

+

Function

+

Returns

+

T

+

Since

+

2.0.0. +Creates a singleton object.

+

Source

+

src/core/ioc/dependency-injection.ts:11

\ No newline at end of file diff --git a/api/functions/transient/index.html b/api/functions/transient/index.html new file mode 100644 index 000000000..aec0a8333 --- /dev/null +++ b/api/functions/transient/index.html @@ -0,0 +1,60 @@ + transient | sern + + + Skip to content

transient

+

transient<T>(cb): () => () => T

+
+

@PURE

+

Type parameters

+

T

+

Parameters

+

cb

+

Returns

+

Function

+

Returns

+

Function

+

Returns

+

T

+

Since

+

2.0.0 +Creates a transient object

+

Source

+

src/core/ioc/dependency-injection.ts:21

\ No newline at end of file diff --git a/api/interfaces/bothcommand/index.html b/api/interfaces/bothcommand/index.html new file mode 100644 index 000000000..7bb43abdb --- /dev/null +++ b/api/interfaces/bothcommand/index.html @@ -0,0 +1,118 @@ + BothCommand | sern + + + Skip to content

BothCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

alias?

+
+

optional alias: string[]

+
+

Source

+

src/types/core-modules.ts:125

+
+

description

+
+

description: string

+
+

Overrides

+

Module.description

+

Source

+

src/types/core-modules.ts:126

+
+

execute()

+
+

execute: (ctx, args) => unknown

+
+

Parameters

+

ctx: Context

+

args: Args

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:128

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

options?

+
+

optional options: SernOptionsData[]

+
+

Source

+

src/types/core-modules.ts:127

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Both

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:124

\ No newline at end of file diff --git a/api/interfaces/buttoncommand/index.html b/api/interfaces/buttoncommand/index.html new file mode 100644 index 000000000..46ac5264b --- /dev/null +++ b/api/interfaces/buttoncommand/index.html @@ -0,0 +1,103 @@ + ButtonCommand | sern + + + Skip to content

ButtonCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: ButtonInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:65

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Button

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:64

\ No newline at end of file diff --git a/api/interfaces/channelselectcommand/index.html b/api/interfaces/channelselectcommand/index.html new file mode 100644 index 000000000..15221cc23 --- /dev/null +++ b/api/interfaces/channelselectcommand/index.html @@ -0,0 +1,103 @@ + ChannelSelectCommand | sern + + + Skip to content

ChannelSelectCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: ChannelSelectMenuInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:75

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: ChannelSelect

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:74

\ No newline at end of file diff --git a/api/interfaces/commandmoduledefs/index.html b/api/interfaces/commandmoduledefs/index.html new file mode 100644 index 000000000..1a0e09525 --- /dev/null +++ b/api/interfaces/commandmoduledefs/index.html @@ -0,0 +1,125 @@ + CommandModuleDefs | sern + + + Skip to content
\ No newline at end of file diff --git a/api/interfaces/contextmenumsg/index.html b/api/interfaces/contextmenumsg/index.html new file mode 100644 index 000000000..b6368fe42 --- /dev/null +++ b/api/interfaces/contextmenumsg/index.html @@ -0,0 +1,103 @@ + ContextMenuMsg | sern + + + Skip to content

ContextMenuMsg

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: MessageContextMenuCommandInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:60

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: CtxMsg

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:59

\ No newline at end of file diff --git a/api/interfaces/contextmenuuser/index.html b/api/interfaces/contextmenuuser/index.html new file mode 100644 index 000000000..359391d4a --- /dev/null +++ b/api/interfaces/contextmenuuser/index.html @@ -0,0 +1,103 @@ + ContextMenuUser | sern + + + Skip to content

ContextMenuUser

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: UserContextMenuCommandInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:55

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: CtxUser

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:54

\ No newline at end of file diff --git a/api/interfaces/controller/index.html b/api/interfaces/controller/index.html new file mode 100644 index 000000000..9a2dd5336 --- /dev/null +++ b/api/interfaces/controller/index.html @@ -0,0 +1,59 @@ + Controller | sern + + + Skip to content

Controller

Properties

+

next()

+
+

next: () => Ok<void>

+
+

Returns

+

Ok<void>

+

Source

+

src/types/core-plugin.ts:59

+
+

stop()

+
+

stop: () => Err<void>

+
+

Returns

+

Err<void>

+

Source

+

src/types/core-plugin.ts:60

\ No newline at end of file diff --git a/api/interfaces/controlplugin/index.html b/api/interfaces/controlplugin/index.html new file mode 100644 index 000000000..6d761058a --- /dev/null +++ b/api/interfaces/controlplugin/index.html @@ -0,0 +1,61 @@ + ControlPlugin | sern + + + Skip to content

ControlPlugin

Type parameters

+

Args extends any[] = any[]

+

Properties

+

execute()

+
+

execute: (…args) => PluginResult

+
+

Parameters

+

• …args: Args

+

Returns

+

PluginResult

+

Source

+

src/types/core-plugin.ts:73

+
+

type

+
+

type: Control

+
+

Source

+

src/types/core-plugin.ts:72

\ No newline at end of file diff --git a/api/interfaces/coredependencies/index.html b/api/interfaces/coredependencies/index.html new file mode 100644 index 000000000..6b455f116 --- /dev/null +++ b/api/interfaces/coredependencies/index.html @@ -0,0 +1,96 @@ + CoreDependencies | sern + + + Skip to content

CoreDependencies

Properties

+

@sern/client()

+
+

@sern/client: () => Emitter

+
+

Returns

+

Emitter

+

Source

+

src/types/ioc.ts:28

+
+

@sern/emitter()

+
+

@sern/emitter: () => Emitter

+
+

Returns

+

Emitter

+

Source

+

src/types/ioc.ts:29

+
+

@sern/errors()

+
+

@sern/errors: () => ErrorHandling

+
+

Returns

+

ErrorHandling

+

Source

+

src/types/ioc.ts:36

+
+

@sern/logger()?

+
+

optional @sern/logger: () => Logging<unknown>

+
+

Returns

+

Logging<unknown>

+

Source

+

src/types/ioc.ts:37

+
+

@sern/modules()

+
+

@sern/modules: () => ModuleManager

+
+

Returns

+

ModuleManager

+

Source

+

src/types/ioc.ts:35

+
+

@sern/store()

+
+

@sern/store: () => CoreModuleStore

+
+ +

Returns

+

CoreModuleStore

+

Source

+

src/types/ioc.ts:34

\ No newline at end of file diff --git a/api/interfaces/coremodulestore/index.html b/api/interfaces/coremodulestore/index.html new file mode 100644 index 000000000..593ad0ee8 --- /dev/null +++ b/api/interfaces/coremodulestore/index.html @@ -0,0 +1,56 @@ + CoreModuleStore | sern + + + Skip to content

CoreModuleStore

Represents a core module store that stores IDs mapped to file paths.

+

Properties

+

commands

+
+

commands: Map<string, Module>

+
+

Source

+

src/core/contracts/module-store.ts:7

+
+

metadata

+
+

metadata: WeakMap<Module, CommandMeta>

+
+

Source

+

src/core/contracts/module-store.ts:8

\ No newline at end of file diff --git a/api/interfaces/discordeventcommand/index.html b/api/interfaces/discordeventcommand/index.html new file mode 100644 index 000000000..1bc5de17b --- /dev/null +++ b/api/interfaces/discordeventcommand/index.html @@ -0,0 +1,105 @@ + DiscordEventCommand | sern + + + Skip to content

DiscordEventCommand

Extends

+
    +
  • Module
  • +
+

Type parameters

+

T extends keyof ClientEvents = keyof ClientEvents

+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

name?

+
+

optional name: T

+
+

Overrides

+

Module.name

+

Source

+

src/types/core-modules.ts:106

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Discord

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:107

+

Methods

+

execute()

+
+

execute(…args): unknown

+
+

Parameters

+

• …args: ClientEvents[T]

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:108

\ No newline at end of file diff --git a/api/interfaces/disposable/index.html b/api/interfaces/disposable/index.html new file mode 100644 index 000000000..89d403993 --- /dev/null +++ b/api/interfaces/disposable/index.html @@ -0,0 +1,52 @@ + Disposable | sern + + + Skip to content

Disposable

Represents a Disposable contract. +Let dependencies implement this to dispose and cleanup.

+

Methods

+

dispose()

+
+

dispose(): unknown

+
+

Returns

+

unknown

+

Source

+

src/core/contracts/hooks.ts:15

\ No newline at end of file diff --git a/api/interfaces/emitter/index.html b/api/interfaces/emitter/index.html new file mode 100644 index 000000000..0946308b0 --- /dev/null +++ b/api/interfaces/emitter/index.html @@ -0,0 +1,77 @@ + Emitter | sern + + + Skip to content

Emitter

Methods

+

addListener()

+
+

addListener(eventName, listener): this

+
+

Parameters

+

eventName: string | symbol

+

listener: AnyFunction

+

Returns

+

this

+

Source

+

src/core/contracts/emitter.ts:6

+
+

emit()

+
+

emit(eventName, …payload): boolean

+
+

Parameters

+

eventName: string | symbol

+

• …payload: any[]

+

Returns

+

boolean

+

Source

+

src/core/contracts/emitter.ts:8

+
+

removeListener()

+
+

removeListener(eventName, listener): this

+
+

Parameters

+

eventName: string | symbol

+

listener: AnyFunction

+

Returns

+

this

+

Source

+

src/core/contracts/emitter.ts:7

\ No newline at end of file diff --git a/api/interfaces/errorhandling/index.html b/api/interfaces/errorhandling/index.html new file mode 100644 index 000000000..8a9fe210b --- /dev/null +++ b/api/interfaces/errorhandling/index.html @@ -0,0 +1,67 @@ + ErrorHandling | sern + + + Skip to content

ErrorHandling

Since

+

2.0.0

+

Methods

+

crash()

+
+

crash(err): never

+
+ +

Parameters

+

err: Error

+

Returns

+

never

+

Source

+

src/core/contracts/error-handling.ts:9

+
+

updateAlive()

+
+

updateAlive(error): void

+
+

A function that is called on every throw.

+

Parameters

+

error: Error

+

Returns

+

void

+

Source

+

src/core/contracts/error-handling.ts:14

\ No newline at end of file diff --git a/api/interfaces/eventmoduledefs/index.html b/api/interfaces/eventmoduledefs/index.html new file mode 100644 index 000000000..6d0b4846c --- /dev/null +++ b/api/interfaces/eventmoduledefs/index.html @@ -0,0 +1,62 @@ + EventModuleDefs | sern + + + Skip to content
\ No newline at end of file diff --git a/api/interfaces/externaleventcommand/index.html b/api/interfaces/externaleventcommand/index.html new file mode 100644 index 000000000..3dcaa289d --- /dev/null +++ b/api/interfaces/externaleventcommand/index.html @@ -0,0 +1,110 @@ + ExternalEventCommand | sern + + + Skip to content

ExternalEventCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

emitter

+
+

emitter: keyof Dependencies

+
+

Source

+

src/types/core-modules.ts:48

+
+

name?

+
+

optional name: string

+
+

Overrides

+

Module.name

+

Source

+

src/types/core-modules.ts:47

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: External

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:49

+

Methods

+

execute()

+
+

execute(…args): unknown

+
+

Parameters

+

• …args: unknown[]

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:50

\ No newline at end of file diff --git a/api/interfaces/init/index.html b/api/interfaces/init/index.html new file mode 100644 index 000000000..3a7da26f3 --- /dev/null +++ b/api/interfaces/init/index.html @@ -0,0 +1,52 @@ + Init | sern + + + Skip to content

Init

Represents an initialization contract. +Let dependencies implement this to initiate some logic.

+

Methods

+

init()

+
+

init(): unknown

+
+

Returns

+

unknown

+

Source

+

src/core/contracts/hooks.ts:7

\ No newline at end of file diff --git a/api/interfaces/initplugin/index.html b/api/interfaces/initplugin/index.html new file mode 100644 index 000000000..f78035bba --- /dev/null +++ b/api/interfaces/initplugin/index.html @@ -0,0 +1,61 @@ + InitPlugin | sern + + + Skip to content

InitPlugin

Type parameters

+

Args extends any[] = any[]

+

Properties

+

execute()

+
+

execute: (…args) => PluginResult

+
+

Parameters

+

• …args: Args

+

Returns

+

PluginResult

+

Source

+

src/types/core-plugin.ts:69

+
+

type

+
+

type: Init

+
+

Source

+

src/types/core-plugin.ts:68

\ No newline at end of file diff --git a/api/interfaces/logging/index.html b/api/interfaces/logging/index.html new file mode 100644 index 000000000..ccf418ec8 --- /dev/null +++ b/api/interfaces/logging/index.html @@ -0,0 +1,89 @@ + Logging | sern + + + Skip to content

Logging

Since

+

2.0.0

+

Type parameters

+

T = unknown

+

Methods

+

debug()

+
+

debug(payload): void

+
+

Parameters

+

payload: LogPayload<T>

+

Returns

+

void

+

Source

+

src/core/contracts/logging.ts:8

+
+

error()

+
+

error(payload): void

+
+

Parameters

+

payload: LogPayload<T>

+

Returns

+

void

+

Source

+

src/core/contracts/logging.ts:5

+
+

info()

+
+

info(payload): void

+
+

Parameters

+

payload: LogPayload<T>

+

Returns

+

void

+

Source

+

src/core/contracts/logging.ts:7

+
+

warning()

+
+

warning(payload): void

+
+

Parameters

+

payload: LogPayload<T>

+

Returns

+

void

+

Source

+

src/core/contracts/logging.ts:6

\ No newline at end of file diff --git a/api/interfaces/mentionableselectcommand/index.html b/api/interfaces/mentionableselectcommand/index.html new file mode 100644 index 000000000..6f06f3e32 --- /dev/null +++ b/api/interfaces/mentionableselectcommand/index.html @@ -0,0 +1,103 @@ + MentionableSelectCommand | sern + + + Skip to content

MentionableSelectCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: MentionableSelectMenuInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:85

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: MentionableSelect

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:84

\ No newline at end of file diff --git a/api/interfaces/modalsubmitcommand/index.html b/api/interfaces/modalsubmitcommand/index.html new file mode 100644 index 000000000..3a43f4603 --- /dev/null +++ b/api/interfaces/modalsubmitcommand/index.html @@ -0,0 +1,103 @@ + ModalSubmitCommand | sern + + + Skip to content

ModalSubmitCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: ModalSubmitInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:95

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Modal

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:94

\ No newline at end of file diff --git a/api/interfaces/plugin/index.html b/api/interfaces/plugin/index.html new file mode 100644 index 000000000..1cea70a88 --- /dev/null +++ b/api/interfaces/plugin/index.html @@ -0,0 +1,61 @@ + Plugin | sern + + + Skip to content

Plugin

Type parameters

+

Args extends any[] = any[]

+

Properties

+

execute()

+
+

execute: (…args) => PluginResult

+
+

Parameters

+

• …args: Args

+

Returns

+

PluginResult

+

Source

+

src/types/core-plugin.ts:64

+
+

type

+
+

type: PluginType

+
+

Source

+

src/types/core-plugin.ts:63

\ No newline at end of file diff --git a/api/interfaces/roleselectcommand/index.html b/api/interfaces/roleselectcommand/index.html new file mode 100644 index 000000000..3d91cb516 --- /dev/null +++ b/api/interfaces/roleselectcommand/index.html @@ -0,0 +1,103 @@ + RoleSelectCommand | sern + + + Skip to content

RoleSelectCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: RoleSelectMenuInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:80

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: RoleSelect

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:79

\ No newline at end of file diff --git a/api/interfaces/sernautocompletedata/index.html b/api/interfaces/sernautocompletedata/index.html new file mode 100644 index 000000000..2da502934 --- /dev/null +++ b/api/interfaces/sernautocompletedata/index.html @@ -0,0 +1,111 @@ + SernAutocompleteData | sern + + + Skip to content

SernAutocompleteData

Extends

+
    +
  • Omit<BaseApplicationCommandOptionsData, "autocomplete">
  • +
+

Properties

+

autocomplete

+
+

autocomplete: true

+
+

Source

+

src/types/core-modules.ts:172

+
+

command

+
+

command: AutocompleteCommand

+
+

Source

+

src/types/core-modules.ts:177

+
+

description

+
+

description: string

+
+

Inherited from

+

Omit.description

+

Source

+

node_modules/discord.js/typings/index.d.ts:4711

+
+

descriptionLocalizations?

+
+

optional descriptionLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

+
+

Inherited from

+

Omit.descriptionLocalizations

+

Source

+

node_modules/discord.js/typings/index.d.ts:4712

+
+

name

+
+

name: string

+
+

Inherited from

+

Omit.name

+

Source

+

node_modules/discord.js/typings/index.d.ts:4709

+
+

nameLocalizations?

+
+

optional nameLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

+
+

Inherited from

+

Omit.nameLocalizations

+

Source

+

node_modules/discord.js/typings/index.d.ts:4710

+
+

required?

+
+

optional required: boolean

+
+

Inherited from

+

Omit.required

+

Source

+

node_modules/discord.js/typings/index.d.ts:4713

+
+

type

+
+

type: String | Integer | Number

+
+

Source

+

src/types/core-modules.ts:173

\ No newline at end of file diff --git a/api/interfaces/serneventcommand/index.html b/api/interfaces/serneventcommand/index.html new file mode 100644 index 000000000..dcd4354e9 --- /dev/null +++ b/api/interfaces/serneventcommand/index.html @@ -0,0 +1,105 @@ + SernEventCommand | sern + + + Skip to content

SernEventCommand

Extends

+
    +
  • Module
  • +
+

Type parameters

+

T extends keyof SernEventsMapping = keyof SernEventsMapping

+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

name?

+
+

optional name: T

+
+

Overrides

+

Module.name

+

Source

+

src/types/core-modules.ts:42

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Sern

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:43

+

Methods

+

execute()

+
+

execute(…args): unknown

+
+

Parameters

+

• …args: SernEventsMapping[T]

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:44

\ No newline at end of file diff --git a/api/interfaces/serneventsmapping/index.html b/api/interfaces/serneventsmapping/index.html new file mode 100644 index 000000000..3cbe6f8ca --- /dev/null +++ b/api/interfaces/serneventsmapping/index.html @@ -0,0 +1,76 @@ + SernEventsMapping | sern + + + Skip to content

SernEventsMapping

Properties

+

error

+
+

error: [object]

+
+

Source

+

src/types/utility.ts:21

+
+

module.activate

+
+

module.activate: [Payload]

+
+

Source

+

src/types/utility.ts:20

+
+

module.register

+
+

module.register: [Payload]

+
+

Source

+

src/types/utility.ts:19

+
+

modulesLoaded

+
+

modulesLoaded: [undefined?]

+
+

Source

+

src/types/utility.ts:23

+
+

warning

+
+

warning: [Payload]

+
+

Source

+

src/types/utility.ts:22

\ No newline at end of file diff --git a/api/interfaces/sernsubcommanddata/index.html b/api/interfaces/sernsubcommanddata/index.html new file mode 100644 index 000000000..6c5df15a7 --- /dev/null +++ b/api/interfaces/sernsubcommanddata/index.html @@ -0,0 +1,106 @@ + SernSubCommandData | sern + + + Skip to content

SernSubCommandData

Extends

+
    +
  • APIApplicationCommandOptionBase<ApplicationCommandOptionType.Subcommand>
  • +
+

Properties

+

description

+
+

description: string

+
+

Inherited from

+

APIApplicationCommandOptionBase.description

+

Source

+

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:7

+
+

description_localizations?

+
+

optional description_localizations: null | Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

+
+

Inherited from

+

APIApplicationCommandOptionBase.description_localizations

+

Source

+

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:8

+
+

name

+
+

name: string

+
+

Inherited from

+

APIApplicationCommandOptionBase.name

+

Source

+

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:5

+
+

name_localizations?

+
+

optional name_localizations: null | Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

+
+

Inherited from

+

APIApplicationCommandOptionBase.name_localizations

+

Source

+

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:6

+
+

options?

+
+

optional options: SernOptionsData[]

+
+

Source

+

src/types/core-modules.ts:209

+
+

required?

+
+

optional required: boolean

+
+

Inherited from

+

APIApplicationCommandOptionBase.required

+

Source

+

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:9

+
+

type

+
+

type: Subcommand

+
+

Overrides

+

APIApplicationCommandOptionBase.type

+

Source

+

src/types/core-modules.ts:208

\ No newline at end of file diff --git a/api/interfaces/sernsubcommandgroupdata/index.html b/api/interfaces/sernsubcommandgroupdata/index.html new file mode 100644 index 000000000..4d70c9432 --- /dev/null +++ b/api/interfaces/sernsubcommandgroupdata/index.html @@ -0,0 +1,113 @@ + SernSubCommandGroupData | sern + + + Skip to content

SernSubCommandGroupData

Extends

+
    +
  • BaseApplicationCommandOptionsData
  • +
+

Properties

+

autocomplete?

+
+

optional autocomplete: undefined

+
+

Inherited from

+

BaseApplicationCommandOptionsData.autocomplete

+

Source

+

node_modules/discord.js/typings/index.d.ts:4714

+
+

description

+
+

description: string

+
+

Inherited from

+

BaseApplicationCommandOptionsData.description

+

Source

+

node_modules/discord.js/typings/index.d.ts:4711

+
+

descriptionLocalizations?

+
+

optional descriptionLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

+
+

Inherited from

+

BaseApplicationCommandOptionsData.descriptionLocalizations

+

Source

+

node_modules/discord.js/typings/index.d.ts:4712

+
+

name

+
+

name: string

+
+

Inherited from

+

BaseApplicationCommandOptionsData.name

+

Source

+

node_modules/discord.js/typings/index.d.ts:4709

+
+

nameLocalizations?

+
+

optional nameLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "es-419" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

+
+

Inherited from

+

BaseApplicationCommandOptionsData.nameLocalizations

+

Source

+

node_modules/discord.js/typings/index.d.ts:4710

+
+

options?

+
+

optional options: SernSubCommandData[]

+
+

Source

+

src/types/core-modules.ts:214

+
+

required?

+
+

optional required: boolean

+
+

Inherited from

+

BaseApplicationCommandOptionsData.required

+

Source

+

node_modules/discord.js/typings/index.d.ts:4713

+
+

type

+
+

type: SubcommandGroup

+
+

Source

+

src/types/core-modules.ts:213

\ No newline at end of file diff --git a/api/interfaces/slashcommand/index.html b/api/interfaces/slashcommand/index.html new file mode 100644 index 000000000..82f300622 --- /dev/null +++ b/api/interfaces/slashcommand/index.html @@ -0,0 +1,111 @@ + SlashCommand | sern + + + Skip to content

SlashCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description

+
+

description: string

+
+

Overrides

+

Module.description

+

Source

+

src/types/core-modules.ts:118

+
+

execute()

+
+

execute: (ctx, args) => unknown

+
+

Parameters

+

ctx: Context

+

args: ["slash", SlashOptions]

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:120

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

options?

+
+

optional options: SernOptionsData[]

+
+

Source

+

src/types/core-modules.ts:119

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Slash

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:117

\ No newline at end of file diff --git a/api/interfaces/stringselectcommand/index.html b/api/interfaces/stringselectcommand/index.html new file mode 100644 index 000000000..7d2df1d6a --- /dev/null +++ b/api/interfaces/stringselectcommand/index.html @@ -0,0 +1,103 @@ + StringSelectCommand | sern + + + Skip to content

StringSelectCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: StringSelectMenuInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:70

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: StringSelect

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:69

\ No newline at end of file diff --git a/api/interfaces/textcommand/index.html b/api/interfaces/textcommand/index.html new file mode 100644 index 000000000..11a9dc36a --- /dev/null +++ b/api/interfaces/textcommand/index.html @@ -0,0 +1,111 @@ + TextCommand | sern + + + Skip to content

TextCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

alias?

+
+

optional alias: string[]

+
+

Source

+

src/types/core-modules.ts:112

+
+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx, args) => unknown

+
+

Parameters

+

ctx: Context

+

args: ["text", string[]]

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:113

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: Text

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:111

\ No newline at end of file diff --git a/api/interfaces/userselectcommand/index.html b/api/interfaces/userselectcommand/index.html new file mode 100644 index 000000000..e5b542e8d --- /dev/null +++ b/api/interfaces/userselectcommand/index.html @@ -0,0 +1,103 @@ + UserSelectCommand | sern + + + Skip to content

UserSelectCommand

Extends

+
    +
  • Module
  • +
+

Properties

+

description?

+
+

optional description: string

+
+

Inherited from

+

Module.description

+

Source

+

src/types/core-modules.ts:36

+
+

execute()

+
+

execute: (ctx) => unknown

+
+

Parameters

+

ctx: UserSelectMenuInteraction<CacheType>

+

Returns

+

unknown

+

Overrides

+

Module.execute

+

Source

+

src/types/core-modules.ts:90

+
+

name?

+
+

optional name: string

+
+

Inherited from

+

Module.name

+

Source

+

src/types/core-modules.ts:33

+
+

onEvent

+
+

onEvent: ControlPlugin<any[]>[]

+
+

Inherited from

+

Module.onEvent

+

Source

+

src/types/core-modules.ts:34

+
+

plugins

+
+

plugins: InitPlugin<any[]>[]

+
+

Inherited from

+

Module.plugins

+

Source

+

src/types/core-modules.ts:35

+
+

type

+
+

type: UserSelect

+
+

Overrides

+

Module.type

+

Source

+

src/types/core-modules.ts:89

\ No newline at end of file diff --git a/api/interfaces/wrapper/index.html b/api/interfaces/wrapper/index.html new file mode 100644 index 000000000..ce4f62686 --- /dev/null +++ b/api/interfaces/wrapper/index.html @@ -0,0 +1,88 @@ + Wrapper | sern + + + Skip to content

Wrapper

Properties

+

commands

+
+

commands: string

+
+

Source

+

src/types/core.ts:9

+
+

containerConfig?

+
+

optional containerConfig: object

+
+

get()

+
+

get: (…keys) => unknown[]

+
+
Parameters
+

• …keys: keyof Dependencies[]

+
Returns
+

unknown[]

+

Source

+

src/types/core.ts:20

+
+

defaultPrefix?

+
+

optional defaultPrefix: string

+
+

Source

+

src/types/core.ts:10

+
+

events?

+
+

optional events: string

+
+

Source

+

src/types/core.ts:11

+
+

mode?

+
+

optional mode: string

+
+

Overload to enable mode in case developer does not use a .env file.

+ +

Source

+

src/types/core.ts:16

\ No newline at end of file diff --git a/api/namespaces/presence/functions/module/index.html b/api/namespaces/presence/functions/module/index.html new file mode 100644 index 000000000..380ceecff --- /dev/null +++ b/api/namespaces/presence/functions/module/index.html @@ -0,0 +1,55 @@ + module | sern + + + Skip to content

module

+

module<T>(conf): Config<T>

+
+

A small wrapper to provide type inference. +Create a Presence module which MUST be put in a file called presence.(language-extension) +adjacent to the file where Sern.init is CALLED.

+

Type parameters

+

T extends keyof Dependencies[]

+

Parameters

+

conf: Config<T>

+

Returns

+

Config<T>

+

Source

+

src/core/presences.ts:28

\ No newline at end of file diff --git a/api/namespaces/presence/functions/of/index.html b/api/namespaces/presence/functions/of/index.html new file mode 100644 index 000000000..70ce08089 --- /dev/null +++ b/api/namespaces/presence/functions/of/index.html @@ -0,0 +1,98 @@ + of | sern + + + Skip to content

of

+

of(root): object

+
+

Create a Presence body which can be either:

+
    +
  • once, the presence is activated only once.
  • +
  • repeated, per cycle or event, the presence can be changed.
  • +
+

Parameters

+

root: Omit<Result, "repeat" | "onRepeat">

+

Returns

+

object

+

once()

+
+

once: () => Omit<Result, "repeat" | "onRepeat">

+
+

Example

+
1
Presence
2
.of({
3
activities: [
4
{ name: "Chilling out" }
5
]
6
})
7
.once() // Sets the presence once, with what's provided in '.of()'
+

Returns

+

Omit<Result, "repeat" | "onRepeat">

+

repeated()

+
+

repeated: (onRepeat, repeat) => object

+
+

Example

+
1
Presence
2
.of({
3
activities: [{ name: "deez nuts" }]
4
}) //starts the presence with "deez nuts".
5
.repeated(prev => {
6
return {
7
afk: true,
8
activities: prev.activities?.map(s => ({ ...s, name: s.name+"s" }))
9
};
10
}, 10000)) //every 10 s, the callback sets the presence to the returned one.
+

Parameters

+

onRepeat: PresenceReduce

+

repeat: number | [Emitter, string]

+

Returns

+

object

+
activities?
+
+

optional activities: ActivitiesOptions[]

+
+
afk?
+
+

optional afk: boolean

+
+
onRepeat
+
+

onRepeat: PresenceReduce

+
+
repeat
+
+

repeat: number | [Emitter, string]

+
+
shardId?
+
+

optional shardId: number[]

+
+
status?
+
+

optional status: Status

+
+

Source

+

src/core/presences.ts:37

\ No newline at end of file diff --git a/api/namespaces/presence/interfaces/result/index.html b/api/namespaces/presence/interfaces/result/index.html new file mode 100644 index 000000000..c3bb6bf56 --- /dev/null +++ b/api/namespaces/presence/interfaces/result/index.html @@ -0,0 +1,87 @@ + Result | sern + + + Skip to content

Result

Properties

+

activities?

+
+

optional activities: ActivitiesOptions[]

+
+

Source

+

src/core/presences.ts:11

+
+

afk?

+
+

optional afk: boolean

+
+

Source

+

src/core/presences.ts:10

+
+

onRepeat()?

+
+

optional onRepeat: (previous) => Result

+
+

Parameters

+

previous: Result

+

Returns

+

Result

+

Source

+

src/core/presences.ts:14

+
+

repeat?

+
+

optional repeat: number | [Emitter, string]

+
+

Source

+

src/core/presences.ts:13

+
+

shardId?

+
+

optional shardId: number[]

+
+

Source

+

src/core/presences.ts:12

+
+

status?

+
+

optional status: Status

+
+

Source

+

src/core/presences.ts:9

\ No newline at end of file diff --git a/api/namespaces/presence/type-aliases/config/index.html b/api/namespaces/presence/type-aliases/config/index.html new file mode 100644 index 000000000..ee68a017e --- /dev/null +++ b/api/namespaces/presence/type-aliases/config/index.html @@ -0,0 +1,61 @@ + Config | sern + + + Skip to content

Config

+

Config<T>: object

+
+

Type parameters

+

T extends keyof Dependencies[]

+

Type declaration

+

execute()

+
+

execute: (…v) => Result

+
+

Parameters

+

• …v: IntoDependencies<T>

+

Returns

+

Result

+

inject?

+
+

optional inject: [...T]

+
+

Source

+

src/core/presences.ts:17

\ No newline at end of file diff --git a/api/namespaces/sern/functions/init/index.html b/api/namespaces/sern/functions/init/index.html new file mode 100644 index 000000000..bf7514abd --- /dev/null +++ b/api/namespaces/sern/functions/init/index.html @@ -0,0 +1,54 @@ + init | sern + + + Skip to content

init

+

init(maybeWrapper): void

+
+

Parameters

+

maybeWrapper: Wrapper | "file"

+

Returns

+

void

+

Since

+

1.0.0

+

Example

+
src/index.ts
1
Sern.init({
2
commands: 'dist/commands',
3
events: 'dist/events',
4
})
+

Source

+

src/sern.ts:26

\ No newline at end of file diff --git a/api/readme/index.html b/api/readme/index.html new file mode 100644 index 000000000..b7d2df827 --- /dev/null +++ b/api/readme/index.html @@ -0,0 +1,131 @@ + @sern/handler | sern + + + Skip to content
\ No newline at end of file diff --git a/api/type-aliases/anycommandplugin/index.html b/api/type-aliases/anycommandplugin/index.html new file mode 100644 index 000000000..d3ab6974d --- /dev/null +++ b/api/type-aliases/anycommandplugin/index.html @@ -0,0 +1,46 @@ + AnyCommandPlugin | sern + + + Skip to content

AnyCommandPlugin

+

AnyCommandPlugin: ControlPlugin | InitPlugin<[InitArgs<Processed<CommandModule>>]>

+
+

Source

+

src/types/core-plugin.ts:76

\ No newline at end of file diff --git a/api/type-aliases/anyeventplugin/index.html b/api/type-aliases/anyeventplugin/index.html new file mode 100644 index 000000000..5cd316141 --- /dev/null +++ b/api/type-aliases/anyeventplugin/index.html @@ -0,0 +1,46 @@ + AnyEventPlugin | sern + + + Skip to content

AnyEventPlugin

+

AnyEventPlugin: ControlPlugin | InitPlugin<[InitArgs<Processed<EventModule>>]>

+
+

Source

+

src/types/core-plugin.ts:77

\ No newline at end of file diff --git a/api/type-aliases/args/index.html b/api/type-aliases/args/index.html new file mode 100644 index 000000000..8043cac29 --- /dev/null +++ b/api/type-aliases/args/index.html @@ -0,0 +1,55 @@ + Args | sern + + + Skip to content

Args

+

Args: ParseType<object>

+
+

Type declaration

+

slash

+
+

slash: SlashOptions

+
+

text

+
+

text: string[]

+
+

Source

+

src/types/utility.ts:16

\ No newline at end of file diff --git a/api/type-aliases/commandmodule/index.html b/api/type-aliases/commandmodule/index.html new file mode 100644 index 000000000..39d3e1289 --- /dev/null +++ b/api/type-aliases/commandmodule/index.html @@ -0,0 +1,46 @@ + CommandModule | sern + + + Skip to content
\ No newline at end of file diff --git a/api/type-aliases/eventmodule/index.html b/api/type-aliases/eventmodule/index.html new file mode 100644 index 000000000..b2dfb3924 --- /dev/null +++ b/api/type-aliases/eventmodule/index.html @@ -0,0 +1,46 @@ + EventModule | sern + + + Skip to content
\ No newline at end of file diff --git a/api/type-aliases/initializable/index.html b/api/type-aliases/initializable/index.html new file mode 100644 index 000000000..1f4b3a305 --- /dev/null +++ b/api/type-aliases/initializable/index.html @@ -0,0 +1,50 @@ + Initializable | sern + + + Skip to content

Initializable

+

Initializable<T>: T

+
+

Type to annotate that something is initializable. +If T has an init method, this will be called.

+

Type parameters

+

T extends Init

+

Source

+

src/types/ioc.ts:17

\ No newline at end of file diff --git a/api/type-aliases/logpayload/index.html b/api/type-aliases/logpayload/index.html new file mode 100644 index 000000000..caf17cc18 --- /dev/null +++ b/api/type-aliases/logpayload/index.html @@ -0,0 +1,53 @@ + LogPayload | sern + + + Skip to content

LogPayload

+

LogPayload<T>: object

+
+

Type parameters

+

T = unknown

+

Type declaration

+

message

+
+

message: T

+
+

Source

+

src/core/contracts/logging.ts:11

\ No newline at end of file diff --git a/api/type-aliases/payload/index.html b/api/type-aliases/payload/index.html new file mode 100644 index 000000000..a3f887e67 --- /dev/null +++ b/api/type-aliases/payload/index.html @@ -0,0 +1,46 @@ + Payload | sern + + + Skip to content

Payload

+

Payload: object | object | object

+
+

Source

+

src/types/utility.ts:26

\ No newline at end of file diff --git a/api/type-aliases/pluginresult/index.html b/api/type-aliases/pluginresult/index.html new file mode 100644 index 000000000..0f2033a3e --- /dev/null +++ b/api/type-aliases/pluginresult/index.html @@ -0,0 +1,46 @@ + PluginResult | sern + + + Skip to content

PluginResult

+

PluginResult: Awaitable<VoidResult>

+
+

Source

+

src/types/core-plugin.ts:51

\ No newline at end of file diff --git a/api/type-aliases/sernoptionsdata/index.html b/api/type-aliases/sernoptionsdata/index.html new file mode 100644 index 000000000..375d13c6b --- /dev/null +++ b/api/type-aliases/sernoptionsdata/index.html @@ -0,0 +1,47 @@ + SernOptionsData | sern + + + Skip to content

SernOptionsData

+

SernOptionsData: SernSubCommandData | SernSubCommandGroupData | APIApplicationCommandBasicOption | SernAutocompleteData

+
+

Type that replaces autocomplete with SernAutocompleteData

+

Source

+

src/types/core-modules.ts:200

\ No newline at end of file diff --git a/api/type-aliases/singleton/index.html b/api/type-aliases/singleton/index.html new file mode 100644 index 000000000..36649c70a --- /dev/null +++ b/api/type-aliases/singleton/index.html @@ -0,0 +1,52 @@ + Singleton | sern + + + Skip to content

Singleton

+

Singleton<T>: () => T

+
+

Type to annotate that something is a singleton. +T is created once and lazily.

+

Type parameters

+

T

+

Returns

+

T

+

Source

+

src/types/ioc.ts:7

\ No newline at end of file diff --git a/api/type-aliases/slashoptions/index.html b/api/type-aliases/slashoptions/index.html new file mode 100644 index 000000000..30463983f --- /dev/null +++ b/api/type-aliases/slashoptions/index.html @@ -0,0 +1,46 @@ + SlashOptions | sern + + + Skip to content

SlashOptions

+

SlashOptions: Omit<CommandInteractionOptionResolver, "getMessage" | "getFocused">

+
+

Source

+

src/types/utility.ts:14

\ No newline at end of file diff --git a/api/type-aliases/transient/index.html b/api/type-aliases/transient/index.html new file mode 100644 index 000000000..ebb93148b --- /dev/null +++ b/api/type-aliases/transient/index.html @@ -0,0 +1,54 @@ + Transient | sern + + + Skip to content

Transient

+

Transient<T>: () => () => T

+
+

Type to annotate that something is transient. +Every time this is called, a new object is created

+

Type parameters

+

T

+

Returns

+

Function

+

Returns

+

T

+

Source

+

src/types/ioc.ts:12

\ No newline at end of file diff --git a/api/variables/controller/index.html b/api/variables/controller/index.html new file mode 100644 index 000000000..5cb6d4a81 --- /dev/null +++ b/api/variables/controller/index.html @@ -0,0 +1,62 @@ + controller | sern + + + Skip to content

controller

+

const controller: object

+
+

Since

+

1.0.0 +The object passed into every plugin to control a command’s behavior

+

Type declaration

+

next()

+
+

next: () => OkImpl<void> = ok

+
+

Returns

+

OkImpl<void>

+

stop()

+
+

stop: () => ErrImpl<void> = err

+
+

Returns

+

ErrImpl<void>

+

Source

+

src/core/create-plugins.ts:69

\ No newline at end of file diff --git a/assets/css/styles.a6f5f28d.css b/assets/css/styles.a6f5f28d.css deleted file mode 100644 index f27c60f6a..000000000 --- a/assets/css/styles.a6f5f28d.css +++ /dev/null @@ -1 +0,0 @@ -.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))}.markdown li,body{word-wrap:break-word}body,ol ol,ol ul,ul ol,ul ul{margin:0}pre,table{overflow:auto}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button,code{vertical-align:middle}.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)}*,.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.toggleButton_gllP,html{-webkit-tap-highlight-color:transparent}: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}.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;-webkit-text-size-adjust:100%;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}.row--align-bottom{align-items:flex-end}.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)}a code{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{max-width:100%}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,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table{border-collapse:collapse;display:block;margin-bottom:var(--ifm-spacing-vertical)}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)}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)}.docItemContainer_Djhp article>:first-child,.docItemContainer_Djhp header+*,.footer__item,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)}.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_Gvgb,.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;color:inherit;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{list-style:none;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)}.card--full-height,.navbar__logo img,body,html{height:100%}.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[href].breadcrumbs__link: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__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;list-style:none;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__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)}.admonitionContent_BuS1>:last-child,.collapsibleContent_i85q p:last-child,.details_lb9f>summary>p:last-child,.footer__items{margin-bottom:0}.codeBlockStandalone_MEMb,[type=checkbox]{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{list-style:none;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){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}.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}.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)}.navbar,.navbar>.container,.navbar>.container-fluid{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar-sidebar,.navbar-sidebar__backdrop{bottom:0;opacity:0;position:fixed;transition-duration:var(--ifm-transition-fast);transition-timing-function:ease-in-out;top:0;visibility:hidden;left:0}.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,.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__brand{margin:0}.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}.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);transform:translate3d(-100%,0,0);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;right:0;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{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;cursor:pointer;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);cursor:pointer;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}.DocSearch-Button,.DocSearch-Button-Container{align-items:center;display:flex}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;--docsearch-text-color:#f5f6f7;--docsearch-container-background:#090a11cc;--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 #0304094d;--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.302);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 #494c6a80,0 -4px 8px 0 #0003;--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}:root{--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#ae2a55;--ifm-color-primary-dark:#372955;--ifm-color-primary-darker:#385ca9;--ifm-color-primary-darkest:#2b2042;--ifm-color-primary-light:#433267;--ifm-color-primary-lighter:#46346c;--ifm-color-primary-lightest:#d9e2ff;--ifm-background-color:#fffbff;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#524eb733;--ifm-font-family-monospace:"Fira Code","Meslo NGF","JetBrains Mono","Menlo",SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-family-base:Mulish,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--ifm-navbar-background-color:#ffd9df;--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:#656c85cc;--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 #ffffff80,0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px #1e235a66;--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 #1e235a66;--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 #45629b1f;--docsearch-primary-color:var(--ifm-color-primary);--docsearch-text-color:var(--ifm-font-color-base);--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)}#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}.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);margin:0;text-align:center}[data-theme=dark]{--ifm-color-primary:#ffb1c1;--ifm-color-primary-dark:#efb5e4;--ifm-color-primary-darker:#b0c6ff;--ifm-color-primary-darkest:#de69c9;--ifm-color-primary-light:#fff;--ifm-color-primary-lighter:#fff;--ifm-color-primary-lightest:#fff;--ifm-background-color:#242526;--docusaurus-highlighted-code-line-bg:#524eb74d;--ifm-font-family-monospace:"JetBrains Mono","Fira Code","Meslo NGF","Menlo",SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;--ifm-navbar-background-color:#66002a}button{background-color:var(--ifm-color-primary);border:none;border-radius:.5rem;color:var(--ifm-background-color);cursor:pointer;padding:.5rem 1rem}button,button:hover{transition:background-color .3s}button:hover{background-color:var(--ifm-color-primary-dark)}button:active{transform:translateY(.09rem)}.container{margin-left:auto;margin-right:auto;max-width:-moz-fit-content;max-width:fit-content}.header,.header_gB2a{padding:1rem}.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}.DocSearch-Button{background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;font-weight:500;height:36px;justify-content:space-between;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:0}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Hit-Tree,.DocSearch-Hit-action,.DocSearch-Hit-icon,.DocSearch-Reset{stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Input,.DocSearch-Link{-webkit-appearance:none;font:inherit}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border:0;border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 2px;position:relative;top:-1px;width:20px}.DocSearch-Button-Key--pressed{box-shadow:var(--docsearch-key-pressed-shadow);transform:translate3d(0,1px,0)}.DocSearch--active{overflow:hidden!important}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a,.sidebarItemLink_mo7H:hover{text-decoration:none}.DocSearch-Hit[aria-selected=true] mark,.content_knG7 a{text-decoration:underline}.DocSearch-Link{appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{appearance:none;background:#0000;border:0;color:var(--docsearch-text-color);flex:1;font-size:1.2em;height:100%;outline:0;padding:0 0 0 8px;width:80%}.DocSearch-Hit-action-button,.DocSearch-Reset{-webkit-appearance:none;border:0;cursor:pointer}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Cancel,.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator,.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset{animation:.1s ease-in forwards a;appearance:none;background:none;border-radius:50%;color:var(--docsearch-icon-color);padding:2px;right:0}.DocSearch-Help,.DocSearch-HitsFooter,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.sidebar_re4s,.tableOfContents_bqdL{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem)}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:#0000}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}.DocSearch-Hit--deleting{opacity:0;transition:.25s linear}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:.25s linear .25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{appearance:none;background:none;border-radius:50%;color:inherit;padding:2px}#__docusaurus-base-url-issue-banner-container,.docSidebarContainer_YfHR,.navbarSearchContainer_Bca1:not(:has(>*)),.sidebarLogo_isFc,.themedComponent_mlkZ,[data-theme=dark] .lightToggleIcon_pyhR,[data-theme=light] .darkToggleIcon_wfgR,html[data-announcement-bar-initially-dismissed=true] .announcementBar_mb4j,svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon,.tocCollapsibleContent_vkbj a{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:0;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands li,.DocSearch-Commands-Key{align-items:center;display:flex}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{background:var(--docsearch-key-gradient);border:0;border-radius:2px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@keyframes a{0%{opacity:0}to{opacity:1}}.DocSearch-Button{margin:0;transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.DocSearch-Container,.skipToContent_fXgn{z-index:calc(var(--ifm-z-index-fixed) + 1)}.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}.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}.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}.darkNavbarColorModeToggle_X3D1:hover{background:var(--ifm-color-gray-800)}[data-theme=dark] .themedComponent--dark_xIcU,[data-theme=light] .themedComponent--light_NVdE,html:not([data-theme]) .themedComponent--light_NVdE{display:initial}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.collapseSidebarButton_PEFL{display:none;margin:0}.iconExternalLink_nPIU{margin-left:.3rem}.docMainContainer_TBSr,.docRoot_UBD9{display:flex;width:100%}.docsWrapper_hBAB{display:flex;flex:1 0 auto}.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)}.errorBoundaryError_a6uf{color:red;white-space:pre-wrap}.errorBoundaryFallback_VBag{color:red;padding:.55rem}.footerLogoLink_BH7S{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.footerLogoLink_BH7S:hover,.hash-link:focus,:hover>.hash-link{opacity:1}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}.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:"#"}.mainWrapper_z2l0{display:flex;flex:1 0 auto;flex-direction:column}.docusaurus-mt-lg{margin-top:3rem}#__docusaurus{display:flex;flex-direction:column;min-height:100%}.sidebar_re4s{overflow-y:auto;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}.searchQueryInput_u2C7,.searchVersionInput_m0Ui{background:var(--docsearch-searchbox-focus-background);border:2px solid var(--ifm-toc-border-color);border-radius:var(--ifm-global-radius);color:var(--docsearch-text-color);font:var(--ifm-font-size-base) var(--ifm-font-family-base);margin-bottom:.5rem;padding:.8rem;transition:border var(--ifm-transition-fast) ease;width:100%}.searchQueryInput_u2C7:focus,.searchVersionInput_m0Ui:focus{border-color:var(--docsearch-primary-color);outline:0}.searchQueryInput_u2C7::placeholder{color:var(--docsearch-muted-color)}.searchResultsColumn_JPFH{font-size:.9rem;font-weight:700}.algoliaLogo_rT1R{max-width:150px}.algoliaLogoPathFill_WdUC{fill:var(--ifm-font-color-base)}.searchResultItem_Tv2o{border-bottom:1px solid var(--ifm-toc-border-color);padding:1rem 0}.searchResultItemHeading_KbCB{font-weight:400;margin-bottom:0}.searchResultItemPath_lhe1{--ifm-breadcrumb-separator-size-multiplier:1;color:var(--ifm-color-content-secondary);font-size:.8rem}.searchResultItemSummary_AEaO{font-style:italic;margin:.5rem 0 0}.loadingSpinner_XVxU{animation:1s linear infinite b;border:.4em solid #eee;border-radius:50%;border-top:.4em solid var(--ifm-color-primary);height:3rem;margin:0 auto;width:3rem}@keyframes b{to{transform:rotate(1turn)}}.loader_vvXV{margin-top:2rem}.search-result-match{background:#ffd78e40;color:var(--docsearch-hit-color);padding:.09em 0}.sponsorLayout_gqDV{display:flex;flex-wrap:wrap;justify-content:center;margin:0 auto;max-width:1500px}.sponsorCard_N1Zc{align-items:center;background:#deddda;border-radius:15px;display:flex;flex-direction:column;height:350px;justify-content:flex-start;margin:1rem;overflow:hidden!important;padding:1rem;text-align:center;text-overflow:ellipsis;transition:transform .3s;white-space:break-spaces;width:200px}.sponsorMoney_xMYY{font-size:1.5rem;font-weight:700;margin-top:auto;text-align:center}.sponsorCard_N1Zc img{aspect-ratio:1/1;border-radius:50%;height:92px;margin-bottom:1rem;width:92px}[data-theme=dark] .sponsorCard_N1Zc{background:#282828;color:#fff}.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}.features_t9lD{align-items:center;display:flex;padding:2rem 0;width:100%}.featureSvg_GfXr{height:200px;width:200px}.heroBanner_qdFl{overflow:hidden;position:relative;text-align:center}.buttons_AeoN{align-items:center;display:flex;justify-content:center}.cntnr_SOJH{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center;margin:2rem auto;max-width:1500px;width:85%}.card_zwE_{background-color:var(--color-white);border-radius:.5rem;box-shadow:0 0 1rem 0 #0003;flex-direction:column;height:100%;padding:1rem}.buttonGroup__atx button,.codeBlockContainer_Ckt0{background:var(--prism-background-color);color:var(--prism-color)}.cardBody_bxHk,.cardFooter_teUh,.cardHeader_zN_4,.card_zwE_{display:flex;justify-content:space-between}.cardHeader_zN_4{align-items:center;margin-bottom:1rem}.cardBody_bxHk{flex-direction:column;height:100%}.cardFooter_teUh{align-items:center;margin-left:auto;margin-top:1rem}.closeButton_VOlr{bottom:0;cursor:pointer;padding:.5rem;position:absolute;right:0}[data-theme=dark] .modal_Y_lZ{background-color:var(--ifm-color-primary)}.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 var(--ifm-transition-fast) 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:all var(--ifm-transition-fast) ease;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;list-style:none;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)}.containsTaskList_mC6p{list-style:none}.img_ev3q{height:auto}.admonition_xJq3{margin-bottom:1em}.admonitionHeading_Gvgb{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family)}.admonitionHeading_Gvgb:not(:last-child){margin-bottom:.3rem}.admonitionHeading_Gvgb code{text-transform:none}.admonitionIcon_Rf37{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_Rf37 svg{fill:var(--ifm-alert-foreground-color);display:inline-block;height:1.6em;width:1.6em}.blogPostFooterDetailsFull_mRVl{flex-direction:column}.tableOfContents_bqdL{overflow-y:auto;position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.breadcrumbHomeIcon_YNFT{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}.breadcrumbsContainer_Z_bl{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}.mdxPageWrapper_j9I6{justify-content:center}@media only screen and (min-width:800px){.padding-vert--md_IMB4{padding-top:161.6px}}@media (min-width:997px){.collapseSidebarButton_PEFL,.expandButton_TmdG{background-color:var(--docusaurus-collapse-button-bg)}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_gvF7,.announcementBarPlaceholder_vyr4{flex-basis:50px}.collapseSidebarButton_PEFL{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px;position:sticky}.collapseSidebarButtonIcon_kv0_{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_i1dp,[dir=rtl] .collapseSidebarButtonIcon_kv0_{transform:rotate(0)}.collapseSidebarButton_PEFL:focus,.collapseSidebarButton_PEFL:hover,.expandButton_TmdG:focus,.expandButton_TmdG: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%;padding-top:var(--ifm-navbar-height);width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_wUlq{padding-top:0}.sidebarHidden_VK0M{opacity:0;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_TmdG{align-items:center;display:flex;height:100%;justify-content:center;position:absolute;right:0;top:0;transition:background-color var(--ifm-transition-fast) ease;width:100%}[dir=rtl] .expandButtonIcon_i1dp{transform:rotate(180deg)}.docSidebarContainer_YfHR{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_DPk8{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.sidebarViewport_aRkj{height:100%;max-height:100vh;position:sticky;top:0}.docMainContainer_TBSr{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced_lQrH{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_JWYK{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}.navbarSearchContainer_Bca1{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.lastUpdated_vwxv{text-align:right}.tocMobile_ITEo{display:none}.docItemCol_VOVn{max-width:75%!important}}@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}.navbarSearchContainer_Bca1{position:absolute;right:var(--ifm-navbar-padding-horizontal)}.docItemContainer_F8PC{padding:0 .3rem}}@media only screen and (max-width:996px){.searchQueryColumn_RTkw,.searchResultsColumn_JPFH{max-width:60%!important}.searchLogoColumn_rJIA,.searchVersionColumn_ypXd{max-width:40%!important}.searchLogoColumn_rJIA{padding-left:0!important}}@media only screen and (max-width:800px){.cntnr_SOJH{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder,.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%;max-height:calc(var(--docsearch-vh,1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh,1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh,1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Cancel{-webkit-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:0;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}}@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 screen and (max-width:576px){.searchQueryColumn_RTkw{max-width:100%!important}.searchVersionColumn_ypXd{max-width:100%!important;padding-left:var(--ifm-spacing-horizontal)!important}}@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 (prefers-reduced-motion:reduce){:root{--ifm-transition-fast:0ms;--ifm-transition-slow:0ms}}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{stroke-width:var(--docsearch-icon-stroke-width);animation:none;-webkit-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0}.DocSearch-Hit--deleting,.DocSearch-Hit--favoriting{transition:none}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}@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/Code_-_Insiders_2kTVzm0uIQ-76ace605cf3a0c5b7a55cb2c5228fcfa.gif b/assets/images/Code_-_Insiders_2kTVzm0uIQ-76ace605cf3a0c5b7a55cb2c5228fcfa.gif deleted file mode 100644 index 8b131e2fb..000000000 Binary files a/assets/images/Code_-_Insiders_2kTVzm0uIQ-76ace605cf3a0c5b7a55cb2c5228fcfa.gif and /dev/null differ diff --git a/assets/images/eventplugins.drawio-f22ee78041e60a62a45024f542a2b104.svg b/assets/images/eventplugins.drawio-f22ee78041e60a62a45024f542a2b104.svg deleted file mode 100644 index b97d518a3..000000000 --- a/assets/images/eventplugins.drawio-f22ee78041e60a62a45024f542a2b104.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - -
Event
Event
Plugin 1
Plugin 1
Plugin 2
Plugin 2
Plugin 3
Plugin 3
Is successful
Is successful
Command Executes
Command Executes
Ignore
Ignore
True
True
False
False
Text is not SVG - cannot display
\ No newline at end of file diff --git a/assets/images/fs-1675f5c97d48bdee5c5937e7a51a9489.png b/assets/images/fs-1675f5c97d48bdee5c5937e7a51a9489.png deleted file mode 100644 index 34fb04457..000000000 Binary files a/assets/images/fs-1675f5c97d48bdee5c5937e7a51a9489.png and /dev/null differ diff --git a/assets/images/paperlogo-41a5e76b2d3249b59105ee88f01f202b.png b/assets/images/paperlogo-41a5e76b2d3249b59105ee88f01f202b.png deleted file mode 100644 index c1456c5d3..000000000 Binary files a/assets/images/paperlogo-41a5e76b2d3249b59105ee88f01f202b.png and /dev/null differ diff --git a/assets/images/paperprototypes-cd697eaefd7ac467f2385dd119f6d78c.jpg b/assets/images/paperprototypes-cd697eaefd7ac467f2385dd119f6d78c.jpg deleted file mode 100644 index 4f94f9847..000000000 Binary files a/assets/images/paperprototypes-cd697eaefd7ac467f2385dd119f6d78c.jpg and /dev/null differ diff --git a/assets/images/serentried-2bcee1b2fda9864408e52072821d995f.png b/assets/images/serentried-2bcee1b2fda9864408e52072821d995f.png deleted file mode 100644 index 5df44d868..000000000 Binary files a/assets/images/serentried-2bcee1b2fda9864408e52072821d995f.png and /dev/null differ diff --git a/assets/images/sern-logo-9d28d12a0f06ff725ef05a05847343db.png b/assets/images/sern-logo-9d28d12a0f06ff725ef05a05847343db.png deleted file mode 100644 index 773dbf3d7..000000000 Binary files a/assets/images/sern-logo-9d28d12a0f06ff725ef05a05847343db.png and /dev/null differ diff --git a/assets/js/01a85c17.90531079.js b/assets/js/01a85c17.90531079.js deleted file mode 100644 index 4e8123590..000000000 --- a/assets/js/01a85c17.90531079.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8209],{6535:(e,s,t)=>{t.d(s,{A:()=>v});var a=t(6540),i=t(53),r=t(8511),l=t(4581),n=t(5489),c=t(1312),o=t(6347),m=t(9169);function d(e){const{pathname:s}=(0,o.zy)();return(0,a.useMemo)((()=>e.filter((e=>function(e,s){return!(e.unlisted&&!(0,m.ys)(e.permalink,s))}(e,s)))),[e,s])}const u={sidebar:"sidebar_re4s",sidebarItemTitle:"sidebarItemTitle_pO2u",sidebarItemList:"sidebarItemList_Yudw",sidebarItem:"sidebarItem__DBe",sidebarItemLink:"sidebarItemLink_mo7H",sidebarItemLinkActive:"sidebarItemLinkActive_I1ZP"};var b=t(4848);function g(e){let{sidebar:s}=e;const t=d(s.items);return(0,b.jsx)("aside",{className:"col col--3",children:(0,b.jsxs)("nav",{className:(0,i.A)(u.sidebar,"thin-scrollbar"),"aria-label":(0,c.T)({id:"theme.blog.sidebar.navAriaLabel",message:"Blog recent posts navigation",description:"The ARIA label for recent posts in the blog sidebar"}),children:[(0,b.jsx)("div",{className:(0,i.A)(u.sidebarItemTitle,"margin-bottom--md"),children:s.title}),(0,b.jsx)("ul",{className:(0,i.A)(u.sidebarItemList,"clean-list"),children:t.map((e=>(0,b.jsx)("li",{className:u.sidebarItem,children:(0,b.jsx)(n.A,{isNavLink:!0,to:e.permalink,className:u.sidebarItemLink,activeClassName:u.sidebarItemLinkActive,children:e.title})},e.permalink)))})]})})}var h=t(5600);function p(e){let{sidebar:s}=e;const t=d(s.items);return(0,b.jsx)("ul",{className:"menu__list",children:t.map((e=>(0,b.jsx)("li",{className:"menu__list-item",children:(0,b.jsx)(n.A,{isNavLink:!0,to:e.permalink,className:"menu__link",activeClassName:"menu__link--active",children:e.title})},e.permalink)))})}function j(e){return(0,b.jsx)(h.GX,{component:p,props:e})}function x(e){let{sidebar:s}=e;const t=(0,l.l)();return s?.items.length?"mobile"===t?(0,b.jsx)(j,{sidebar:s}):(0,b.jsx)(g,{sidebar:s}):null}function v(e){const{sidebar:s,toc:t,children:a,...l}=e,n=s&&s.items.length>0;return(0,b.jsx)(r.A,{...l,children:(0,b.jsx)("div",{className:"container margin-vert--lg",children:(0,b.jsxs)("div",{className:"row",children:[(0,b.jsx)(x,{sidebar:s}),(0,b.jsx)("main",{className:(0,i.A)("col",{"col--7":n,"col--9 col--offset-1":!n}),itemScope:!0,itemType:"https://schema.org/Blog",children:a}),t&&(0,b.jsx)("div",{className:"col col--2",children:t})]})})})}},9158:(e,s,t)=>{t.r(s),t.d(s,{default:()=>p});t(6540);var a=t(53),i=t(1312);const r=()=>(0,i.T)({id:"theme.tags.tagsPageTitle",message:"Tags",description:"The title of the tag list page"});var l=t(9024),n=t(7559),c=t(6535),o=t(6133),m=t(1107);const d={tag:"tag_Nnez"};var u=t(4848);function b(e){let{letterEntry:s}=e;return(0,u.jsxs)("article",{children:[(0,u.jsx)(m.A,{as:"h2",id:s.letter,children:s.letter}),(0,u.jsx)("ul",{className:"padding--none",children:s.tags.map((e=>(0,u.jsx)("li",{className:d.tag,children:(0,u.jsx)(o.A,{...e})},e.permalink)))}),(0,u.jsx)("hr",{})]})}function g(e){let{tags:s}=e;const t=function(e){const s={};return Object.values(e).forEach((e=>{const t=function(e){return e[0].toUpperCase()}(e.label);s[t]??=[],s[t].push(e)})),Object.entries(s).sort(((e,s)=>{let[t]=e,[a]=s;return t.localeCompare(a)})).map((e=>{let[s,t]=e;return{letter:s,tags:t.sort(((e,s)=>e.label.localeCompare(s.label)))}}))}(s);return(0,u.jsx)("section",{className:"margin-vert--lg",children:t.map((e=>(0,u.jsx)(b,{letterEntry:e},e.letter)))})}var h=t(1463);function p(e){let{tags:s,sidebar:t}=e;const i=r();return(0,u.jsxs)(l.e3,{className:(0,a.A)(n.G.wrapper.blogPages,n.G.page.blogTagsListPage),children:[(0,u.jsx)(l.be,{title:i}),(0,u.jsx)(h.A,{tag:"blog_tags_list"}),(0,u.jsxs)(c.A,{sidebar:t,children:[(0,u.jsx)(m.A,{as:"h1",children:i}),(0,u.jsx)(g,{tags:s})]})]})}},6133:(e,s,t)=>{t.d(s,{A:()=>n});t(6540);var a=t(53),i=t(5489);const r={tag:"tag_zVej",tagRegular:"tagRegular_sFm0",tagWithCount:"tagWithCount_h2kH"};var l=t(4848);function n(e){let{permalink:s,label:t,count:n}=e;return(0,l.jsxs)(i.A,{href:s,className:(0,a.A)(r.tag,n?r.tagWithCount:r.tagRegular),children:[t,n&&(0,l.jsx)("span",{children:n})]})}}}]); \ No newline at end of file diff --git a/assets/js/083c37a9.2616149c.js b/assets/js/083c37a9.2616149c.js deleted file mode 100644 index 8ac6eee05..000000000 --- a/assets/js/083c37a9.2616149c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2845],{2653:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>i,default:()=>x,frontMatter:()=>l,metadata:()=>d,toc:()=>h});var t=s(4848),r=s(8453);const l={id:"Presence",title:"Namespace: Presence",sidebar_label:"Presence",sidebar_position:0,custom_edit_url:null},i=void 0,d={id:"api/namespaces/Presence",title:"Namespace: Presence",description:"Interfaces",source:"@site/docs/api/namespaces/Presence.md",sourceDirName:"api/namespaces",slug:"/api/namespaces/Presence",permalink:"/docs/api/namespaces/Presence",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Presence",title:"Namespace: Presence",sidebar_label:"Presence",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CommandError",permalink:"/docs/api/namespaces/CommandError"},next:{title:"Sern",permalink:"/docs/api/namespaces/Sern"}},c={},h=[{value:"Interfaces",id:"interfaces",level:2},{value:"Type Aliases",id:"type-aliases",level:2},{value:"Config",id:"config",level:3},{value:"Type parameters",id:"type-parameters",level:4},{value:"Type declaration",id:"type-declaration",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"Functions",id:"functions",level:2},{value:"module",id:"module",level:3},{value:"Type parameters",id:"type-parameters-1",level:4},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"of",id:"of",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-2",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h2,{id:"interfaces",children:"Interfaces"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:"Result"})}),"\n"]}),"\n",(0,t.jsx)(n.h2,{id:"type-aliases",children:"Type Aliases"}),"\n",(0,t.jsx)(n.h3,{id:"config",children:"Config"}),"\n",(0,t.jsxs)(n.p,{children:["\u01ac ",(0,t.jsx)(n.strong,{children:"Config"}),"<",(0,t.jsx)(n.code,{children:"T"}),">: ",(0,t.jsx)(n.code,{children:"Object"})]}),"\n",(0,t.jsx)(n.h4,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"T"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,t.jsx)(n.code,{children:"Dependencies"}),"[]"]})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsxs)(n.tbody,{children:[(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"execute"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,t.jsx)(n.code,{children:"v"}),": ",(0,t.jsx)(n.code,{children:"IntoDependencies"}),"<",(0,t.jsx)(n.code,{children:"T"}),">) => ",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,t.jsx)(n.code,{children:"Result"})})]})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"inject?"})}),(0,t.jsx)(n.td,{style:{textAlign:"left"},children:"[...T]"})]})]})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L17",children:"src/core/presences.ts:17"})}),"\n",(0,t.jsx)(n.h2,{id:"functions",children:"Functions"}),"\n",(0,t.jsx)(n.h3,{id:"module",children:"module"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 ",(0,t.jsx)(n.strong,{children:"module"}),"<",(0,t.jsx)(n.code,{children:"T"}),">(",(0,t.jsx)(n.code,{children:"conf"}),"): ",(0,t.jsx)(n.a,{href:"/docs/api/namespaces/Presence#config",children:(0,t.jsx)(n.code,{children:"Config"})}),"<",(0,t.jsx)(n.code,{children:"T"}),">"]}),"\n",(0,t.jsxs)(n.p,{children:["A small wrapper to provide type inference.\nCreate a Presence module which ",(0,t.jsx)(n.strong,{children:"MUST"})," be put in a file called presence.(language-extension)\nadjacent to the file where ",(0,t.jsx)(n.strong,{children:"Sern.init"})," is CALLED."]}),"\n",(0,t.jsx)(n.h4,{id:"type-parameters-1",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"T"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,t.jsx)(n.code,{children:"Dependencies"}),"[]"]})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"conf"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,t.jsx)(n.a,{href:"/docs/api/namespaces/Presence#config",children:(0,t.jsx)(n.code,{children:"Config"})}),"<",(0,t.jsx)(n.code,{children:"T"}),">"]})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.a,{href:"/docs/api/namespaces/Presence#config",children:(0,t.jsx)(n.code,{children:"Config"})}),"<",(0,t.jsx)(n.code,{children:"T"}),">"]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L28",children:"src/core/presences.ts:28"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"of",children:"of"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 ",(0,t.jsx)(n.strong,{children:"of"}),"(",(0,t.jsx)(n.code,{children:"root"}),"): ",(0,t.jsx)(n.code,{children:"Object"})]}),"\n",(0,t.jsx)(n.p,{children:"Create a Presence body which can be either:"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"once, the presence is activated only once."}),"\n",(0,t.jsx)(n.li,{children:"repeated, per cycle or event, the presence can be changed."}),"\n"]}),"\n",(0,t.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"root"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,t.jsx)(n.code,{children:"Omit"}),"<",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,t.jsx)(n.code,{children:"Result"})}),", ",(0,t.jsx)(n.code,{children:'"repeat"'})," | ",(0,t.jsx)(n.code,{children:'"onRepeat"'}),">"]})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.code,{children:"Object"})}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,t.jsxs)(n.tbody,{children:[(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"once"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["() => ",(0,t.jsx)(n.code,{children:"Omit"}),"<",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,t.jsx)(n.code,{children:"Result"})}),", ",(0,t.jsx)(n.code,{children:'"repeat"'})," | ",(0,t.jsx)(n.code,{children:'"onRepeat"'}),">"]}),(0,t.jsx)(n.td,{style:{textAlign:"left"},children:"-"})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"repeated"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["(",(0,t.jsx)(n.code,{children:"onRepeat"}),": ",(0,t.jsx)(n.code,{children:"PresenceReduce"}),", ",(0,t.jsx)(n.code,{children:"repeat"}),": ",(0,t.jsx)(n.code,{children:"number"})," | [",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,t.jsx)(n.code,{children:"Emitter"})}),", ",(0,t.jsx)(n.code,{children:"string"}),"]) => { ",(0,t.jsx)(n.code,{children:"activities?"}),": ",(0,t.jsx)(n.code,{children:"ActivitiesOptions"}),"[] ; ",(0,t.jsx)(n.code,{children:"afk?"}),": ",(0,t.jsx)(n.code,{children:"boolean"})," ; ",(0,t.jsx)(n.code,{children:"onRepeat"}),": ",(0,t.jsx)(n.code,{children:"PresenceReduce"})," ; ",(0,t.jsx)(n.code,{children:"repeat"}),": ",(0,t.jsx)(n.code,{children:"number"})," | [",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,t.jsx)(n.code,{children:"Emitter"})}),", ",(0,t.jsx)(n.code,{children:"string"}),"] ; ",(0,t.jsx)(n.code,{children:"shardId?"}),": ",(0,t.jsx)(n.code,{children:"number"}),"[] ; ",(0,t.jsx)(n.code,{children:"status?"}),": ",(0,t.jsx)(n.code,{children:"Status"})," }"]}),(0,t.jsx)(n.td,{style:{textAlign:"left"},children:"-"})]})]})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L37",children:"src/core/presences.ts:37"})})]})}function x(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>i,x:()=>d});var t=s(6540);const r={},l=t.createContext(r);function i(e){const n=t.useContext(l);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),t.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/0a33f845.363a9226.js b/assets/js/0a33f845.363a9226.js deleted file mode 100644 index 55235f921..000000000 --- a/assets/js/0a33f845.363a9226.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7051],{5340:(e,n,d)=>{d.r(n),d.d(n,{assets:()=>t,contentTitle:()=>l,default:()=>o,frontMatter:()=>r,metadata:()=>c,toc:()=>a});var i=d(4848),s=d(8453);const r={id:"Module",title:"Interface: Module",sidebar_label:"Module",sidebar_position:0,custom_edit_url:null},l=void 0,c={id:"api/interfaces/Module",title:"Interface: Module",description:"Hierarchy",source:"@site/docs/api/interfaces/Module.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Module",permalink:"/docs/api/interfaces/Module",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Module",title:"Interface: Module",sidebar_label:"Module",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ModalSubmitCommand",permalink:"/docs/api/interfaces/ModalSubmitCommand"},next:{title:"ModuleManager",permalink:"/docs/api/interfaces/ModuleManager"}},t={},a=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"Module"})})}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/TextCommand",children:(0,i.jsx)(n.code,{children:"TextCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/SlashCommand",children:(0,i.jsx)(n.code,{children:"SlashCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/BothCommand",children:(0,i.jsx)(n.code,{children:"BothCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuUser",children:(0,i.jsx)(n.code,{children:"ContextMenuUser"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuMsg",children:(0,i.jsx)(n.code,{children:"ContextMenuMsg"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ButtonCommand",children:(0,i.jsx)(n.code,{children:"ButtonCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/StringSelectCommand",children:(0,i.jsx)(n.code,{children:"StringSelectCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ChannelSelectCommand",children:(0,i.jsx)(n.code,{children:"ChannelSelectCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/RoleSelectCommand",children:(0,i.jsx)(n.code,{children:"RoleSelectCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/MentionableSelectCommand",children:(0,i.jsx)(n.code,{children:"MentionableSelectCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/UserSelectCommand",children:(0,i.jsx)(n.code,{children:"UserSelectCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ModalSubmitCommand",children:(0,i.jsx)(n.code,{children:"ModalSubmitCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/SernEventCommand",children:(0,i.jsx)(n.code,{children:"SernEventCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/DiscordEventCommand",children:(0,i.jsx)(n.code,{children:"DiscordEventCommand"})})]}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ExternalEventCommand",children:(0,i.jsx)(n.code,{children:"ExternalEventCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"description"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L38",children:"src/types/module.ts:38"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"execute"}),": (...",(0,i.jsx)(n.code,{children:"args"}),": ",(0,i.jsx)(n.code,{children:"any"}),"[]) => ",(0,i.jsx)(n.code,{children:"any"})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (...",(0,i.jsx)(n.code,{children:"args"}),"): ",(0,i.jsx)(n.code,{children:"any"})]}),"\n",(0,i.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"...args"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,i.jsx)(n.code,{children:"any"}),"[]"]})]})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"any"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L39",children:"src/types/module.ts:39"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"name"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L35",children:"src/types/module.ts:35"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"onEvent"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,i.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,i.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L36",children:"src/types/module.ts:36"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"plugins"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,i.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,i.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L37",children:"src/types/module.ts:37"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"type"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,i.jsx)(n.code,{children:"CommandType"})})," | ",(0,i.jsx)(n.a,{href:"/docs/api/enums/EventType",children:(0,i.jsx)(n.code,{children:"EventType"})})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L34",children:"src/types/module.ts:34"})})]})}function o(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,n,d)=>{d.d(n,{R:()=>l,x:()=>c});var i=d(6540);const s={},r=i.createContext(s);function l(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/0c9bead8.0c0b05da.js b/assets/js/0c9bead8.0c0b05da.js deleted file mode 100644 index 31885634d..000000000 --- a/assets/js/0c9bead8.0c0b05da.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7035],{4347:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>p,frontMatter:()=>r,metadata:()=>o,toc:()=>a});var t=i(4848),s=i(8453);const r={sidebar_position:7},d="Dependency Injection",o={id:"guide/walkthrough/dependency-injection",title:"Dependency Injection",description:"This contains version 2 code. Please view transitioning to v3",source:"@site/docs/guide/walkthrough/dependency-injection.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/dependency-injection",permalink:"/docs/guide/walkthrough/dependency-injection",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/dependency-injection.md",tags:[],version:"current",sidebarPosition:7,frontMatter:{sidebar_position:7},sidebar:"tutorialSidebar",previous:{title:"Autocomplete",permalink:"/docs/guide/walkthrough/autocomplete"},next:{title:"The SernEmitter class",permalink:"/docs/guide/walkthrough/sern-emitter"}},c={},a=[{value:"Adding dependencies to root",id:"adding-dependencies-to-root",level:2},{value:"Init",id:"init",level:2}];function l(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",li:"li",mdxadmonitiontitle:"mdxadmonitiontitle",p:"p",pre:"pre",ul:"ul",...(0,s.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h1,{id:"dependency-injection",children:"Dependency Injection"}),"\n",(0,t.jsx)(n.admonition,{type:"warning",children:(0,t.jsxs)(n.p,{children:["This contains version 2 code. Please view ",(0,t.jsx)(n.a,{href:"./transition",children:"transitioning to v3"})]})}),"\n",(0,t.jsxs)(n.p,{children:["Since version 2.0.0, dependency injection, thanks to ",(0,t.jsx)(n.a,{href:"https://github.com/molszanski/iti",children:"iti"}),", is a feature to customize your bot's utilities and structures."]}),"\n",(0,t.jsx)(n.p,{children:"Minimal setup for any project."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:"const client = new Client({\n ...options\n})\nSern.makeDependencies({\n build: root => \n root.add({ \n '@sern/client': single(() => client)\n })\n})\n\n"})}),"\n",(0,t.jsx)(n.p,{children:"For any typescript project, you'll need to add an interface to get intellisense and typings."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-typescript",children:"interface MyDependencies extends Dependencies {\n '@sern/client': Singleton\n}\n"})}),"\n",(0,t.jsx)(n.p,{children:"Full Dependency Injection setup"}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-typescript",children:"const client = new Client({\n ...options\n})\n\ninterface MyDependencies extends Dependencies {\n '@sern/client': Singleton\n}\n\nexport const useContainer = Sern.makeDependencies({\n build: root => \n root.add({ \n '@sern/client': single(() => client)\n })\n})\n\n"})}),"\n",(0,t.jsx)(n.p,{children:"Everything else is handled. However, you may want customize things."}),"\n",(0,t.jsx)(n.h2,{id:"adding-dependencies-to-root",children:"Adding dependencies to root"}),"\n",(0,t.jsx)(n.p,{children:"Each sern built dependency must implement its contracts."}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.code,{children:"@sern/logger"}),": Log data. ",(0,t.jsx)(n.a,{href:"../../api/interfaces/Logging",children:"Logging"})]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.code,{children:"@sern/errors"}),": Handling errors and lifetime. ",(0,t.jsx)(n.a,{href:"../../api/interfaces/ErrorHandling",children:"ErrorHandling"})]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.code,{children:"@sern/modules"}),": Managing all command modules. ",(0,t.jsx)(n.a,{href:"../../api/interfaces/ModuleManager",children:"ModuleManager"})]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.code,{children:"@sern/emitter"}),": is the key to emit events and occurences in a project. ",(0,t.jsx)(n.a,{href:"../../api/classes/SernEmitter",children:"SernEmitter"})]}),"\n"]}),"\n",(0,t.jsx)(n.p,{children:"You may also add disposers so that when the application crashes, the targeted dependency calls that function."}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-typescript",children:"export const useContainer = Sern.makeDependencies({\n build: root => \n root.add({ \n '@sern/client': single(() => client)\n })\n .addDisposer({ '@sern/client': client => client.destroy() })\n})\n\n"})}),"\n",(0,t.jsxs)(n.admonition,{type:"tip",children:[(0,t.jsx)(n.mdxadmonitiontitle,{}),(0,t.jsx)(n.p,{children:"Below is v3 api."})]}),"\n",(0,t.jsx)(n.h2,{id:"init",children:"Init"}),"\n",(0,t.jsx)(n.p,{children:"Do you need to perform intializing behavor for a dependency?"}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",children:"import { Init } from '@sern/handler'; \nclass Database implements Init {\n init() {\n await this.connect()\n console.log('Connected');\n }\n}\n\n"})}),"\n",(0,t.jsx)(n.p,{children:"Modify you Dependencies interface:"}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:'title="src/dependencies.d.ts"',children:"import type { Initializable } from '@sern/handler'\n\ninterface Dependencies extends CoreDependencies {\n database: Initializable\n}\n\n"})}),"\n",(0,t.jsx)(n.p,{children:"Make sure its been added:"}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:'title="src/index.ts"',children:"await makeDependencies({ \n build: root => root \n .add({ database => new Database() })\n})\n"})})]})}function p(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(l,{...e})}):l(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>d,x:()=>o});var t=i(6540);const s={},r=t.createContext(s);function d(e){const n=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:d(e.components),t.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/0e384e19.9d7c7828.js b/assets/js/0e384e19.9d7c7828.js deleted file mode 100644 index 05ef9f7f5..000000000 --- a/assets/js/0e384e19.9d7c7828.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3976],{1512:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>r,default:()=>u,frontMatter:()=>s,metadata:()=>c,toc:()=>d});var i=t(4848),o=t(8453);const s={sidebar_position:0},r="Welcome!",c={id:"intro",title:"Welcome!",description:"Please read the transition page if you are moving from version 2 to version 3.",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/docs/intro",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/intro.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0},sidebar:"tutorialSidebar",previous:{title:"Result",permalink:"/docs/api/interfaces/Presence.Result"},next:{title:"CLI",permalink:"/docs/cli/"}},a={},d=[{value:"Content",id:"content",level:2}];function l(e){const n={a:"a",admonition:"admonition",h1:"h1",h2:"h2",li:"li",p:"p",ul:"ul",...(0,o.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"welcome",children:"Welcome!"}),"\n",(0,i.jsx)(n.admonition,{type:"warning",children:(0,i.jsxs)(n.p,{children:["Please read the ",(0,i.jsx)(n.a,{href:"./transition",children:"transition"})," page if you are moving from version 2 to version 3."]})}),"\n",(0,i.jsx)(n.h2,{id:"content",children:"Content"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"/docs/guide/walkthrough/transition",children:"transition"})," for current users to transition bots to version 3."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api",children:"/docs/api"})," contains autogenerated documentation of our codebase using ",(0,i.jsx)(n.a,{href:"https://typedoc.org/",children:"typedoc"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/guide",children:"/docs/guide"})," contains a basic startup guide and details to get started with sern faster!"]}),"\n"]}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsx)(n.p,{children:"This site is open source! Please do contribute if you find any bugs, typos, or sections in need of improvements."})}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsxs)(n.p,{children:["If you have problems, join the discord server ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"here"})]})})]})}function u(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(l,{...e})}):l(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>c});var i=t(6540);const o={},s=i.createContext(o);function r(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:r(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/17896441.7d56c575.js b/assets/js/17896441.7d56c575.js deleted file mode 100644 index 779f8df17..000000000 --- a/assets/js/17896441.7d56c575.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8401],{5022:(e,t,n)=>{n.r(t),n.d(t,{default:()=>de});var s=n(6540),a=n(9024),i=n(9532),l=n(4848);const o=s.createContext(null);function r(e){let{children:t,content:n}=e;const a=function(e){return(0,s.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(n);return(0,l.jsx)(o.Provider,{value:a,children:t})}function c(){const e=(0,s.useContext)(o);if(null===e)throw new i.dV("DocProvider");return e}function d(){const{metadata:e,frontMatter:t,assets:n}=c();return(0,l.jsx)(a.be,{title:e.title,description:e.description,keywords:t.keywords,image:n.image??t.image})}var u=n(53),m=n(4581),h=n(1312),v=n(9022);function x(e){const{previous:t,next:n}=e;return(0,l.jsxs)("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,h.T)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages",description:"The ARIA label for the docs pagination"}),children:[t&&(0,l.jsx)(v.A,{...t,subLabel:(0,l.jsx)(h.A,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc",children:"Previous"})}),n&&(0,l.jsx)(v.A,{...n,subLabel:(0,l.jsx)(h.A,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc",children:"Next"}),isNext:!0})]})}function p(){const{metadata:e}=c();return(0,l.jsx)(x,{previous:e.previous,next:e.next})}var b=n(4586),g=n(5489),f=n(4070),j=n(7559),A=n(5597),L=n(2252);const N={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,l.jsx)(h.A,{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:(0,l.jsx)("b",{children:n.label})},children:"This is unreleased documentation for {siteTitle} {versionLabel} version."})},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return(0,l.jsx)(h.A,{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:(0,l.jsx)("b",{children:n.label})},children:"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained."})}};function C(e){const t=N[e.versionMetadata.banner];return(0,l.jsx)(t,{...e})}function _(e){let{versionLabel:t,to:n,onClick:s}=e;return(0,l.jsx)(h.A,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:(0,l.jsx)("b",{children:(0,l.jsx)(g.A,{to:n,onClick:s,children:(0,l.jsx)(h.A,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label",children:"latest version"})})})},children:"For up-to-date documentation, see the {latestVersionLink} ({versionLabel})."})}function T(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:s}}=(0,b.A)(),{pluginId:a}=(0,f.vT)({failfast:!0}),{savePreferredVersionName:i}=(0,A.g1)(a),{latestDocSuggestion:o,latestVersionSuggestion:r}=(0,f.HW)(a),c=o??(d=r).docs.find((e=>e.id===d.mainDocId));var d;return(0,l.jsxs)("div",{className:(0,u.A)(t,j.G.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert",children:[(0,l.jsx)("div",{children:(0,l.jsx)(C,{siteTitle:s,versionMetadata:n})}),(0,l.jsx)("div",{className:"margin-top--md",children:(0,l.jsx)(_,{versionLabel:r.label,to:c.path,onClick:()=>i(r.name)})})]})}function k(e){let{className:t}=e;const n=(0,L.r)();return n.banner?(0,l.jsx)(T,{className:t,versionMetadata:n}):null}function H(e){let{className:t}=e;const n=(0,L.r)();return n.badge?(0,l.jsx)("span",{className:(0,u.A)(t,j.G.docs.docVersionBadge,"badge badge--secondary"),children:(0,l.jsx)(h.A,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label},children:"Version: {versionLabel}"})}):null}function U(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:n}=e;return(0,l.jsx)(h.A,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:(0,l.jsx)("b",{children:(0,l.jsx)("time",{dateTime:new Date(1e3*t).toISOString(),children:n})})},children:" on {date}"})}function y(e){let{lastUpdatedBy:t}=e;return(0,l.jsx)(h.A,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:(0,l.jsx)("b",{children:t})},children:" by {user}"})}function w(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:n,lastUpdatedBy:s}=e;return(0,l.jsxs)("span",{className:j.G.common.lastUpdated,children:[(0,l.jsx)(h.A,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t&&n?(0,l.jsx)(U,{lastUpdatedAt:t,formattedLastUpdatedAt:n}):"",byUser:s?(0,l.jsx)(y,{lastUpdatedBy:s}):""},children:"Last updated{atDate}{byUser}"}),!1]})}var M=n(1943),B=n(2053);const E={lastUpdated:"lastUpdated_vwxv"};function I(e){return(0,l.jsx)("div",{className:(0,u.A)(j.G.docs.docFooterTagsRow,"row margin-bottom--sm"),children:(0,l.jsx)("div",{className:"col",children:(0,l.jsx)(B.A,{...e})})})}function O(e){let{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:s,formattedLastUpdatedAt:a}=e;return(0,l.jsxs)("div",{className:(0,u.A)(j.G.docs.docFooterEditMetaRow,"row"),children:[(0,l.jsx)("div",{className:"col",children:t&&(0,l.jsx)(M.A,{editUrl:t})}),(0,l.jsx)("div",{className:(0,u.A)("col",E.lastUpdated),children:(n||s)&&(0,l.jsx)(w,{lastUpdatedAt:n,formattedLastUpdatedAt:a,lastUpdatedBy:s})})]})}function V(){const{metadata:e}=c(),{editUrl:t,lastUpdatedAt:n,formattedLastUpdatedAt:s,lastUpdatedBy:a,tags:i}=e,o=i.length>0,r=!!(t||n||a);return o||r?(0,l.jsxs)("footer",{className:(0,u.A)(j.G.docs.docFooter,"docusaurus-mt-lg"),children:[o&&(0,l.jsx)(I,{tags:i}),r&&(0,l.jsx)(O,{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:a,formattedLastUpdatedAt:s})]}):null}var S=n(1422),G=n(5195);const P={tocCollapsibleButton:"tocCollapsibleButton_TO0P",tocCollapsibleButtonExpanded:"tocCollapsibleButtonExpanded_MG3E"};function R(e){let{collapsed:t,...n}=e;return(0,l.jsx)("button",{type:"button",...n,className:(0,u.A)("clean-btn",P.tocCollapsibleButton,!t&&P.tocCollapsibleButtonExpanded,n.className),children:(0,l.jsx)(h.A,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component",children:"On this page"})})}const D={tocCollapsible:"tocCollapsible_ETCw",tocCollapsibleContent:"tocCollapsibleContent_vkbj",tocCollapsibleExpanded:"tocCollapsibleExpanded_sAul"};function F(e){let{toc:t,className:n,minHeadingLevel:s,maxHeadingLevel:a}=e;const{collapsed:i,toggleCollapsed:o}=(0,S.u)({initialState:!0});return(0,l.jsxs)("div",{className:(0,u.A)(D.tocCollapsible,!i&&D.tocCollapsibleExpanded,n),children:[(0,l.jsx)(R,{collapsed:i,onClick:o}),(0,l.jsx)(S.N,{lazy:!0,className:D.tocCollapsibleContent,collapsed:i,children:(0,l.jsx)(G.A,{toc:t,minHeadingLevel:s,maxHeadingLevel:a})})]})}const z={tocMobile:"tocMobile_ITEo"};function q(){const{toc:e,frontMatter:t}=c();return(0,l.jsx)(F,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,u.A)(j.G.docs.docTocMobile,z.tocMobile)})}var W=n(7763);function $(){const{toc:e,frontMatter:t}=c();return(0,l.jsx)(W.A,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:j.G.docs.docTocDesktop})}var Z=n(1107),Q=n(8645);function X(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(0,l.jsxs)("div",{className:(0,u.A)(j.G.docs.docMarkdown,"markdown"),children:[n&&(0,l.jsx)("header",{children:(0,l.jsx)(Z.A,{as:"h1",children:n})}),(0,l.jsx)(Q.A,{children:t})]})}var Y=n(1754),J=n(9169),K=n(6025);function ee(e){return(0,l.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,l.jsx)("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 te={breadcrumbHomeIcon:"breadcrumbHomeIcon_YNFT"};function ne(){const e=(0,K.A)("/");return(0,l.jsx)("li",{className:"breadcrumbs__item",children:(0,l.jsx)(g.A,{"aria-label":(0,h.T)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:"breadcrumbs__link",href:e,children:(0,l.jsx)(ee,{className:te.breadcrumbHomeIcon})})})}const se={breadcrumbsContainer:"breadcrumbsContainer_Z_bl"};function ae(e){let{children:t,href:n,isLast:s}=e;const a="breadcrumbs__link";return s?(0,l.jsx)("span",{className:a,itemProp:"name",children:t}):n?(0,l.jsx)(g.A,{className:a,href:n,itemProp:"item",children:(0,l.jsx)("span",{itemProp:"name",children:t})}):(0,l.jsx)("span",{className:a,children:t})}function ie(e){let{children:t,active:n,index:s,addMicrodata:a}=e;return(0,l.jsxs)("li",{...a&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},className:(0,u.A)("breadcrumbs__item",{"breadcrumbs__item--active":n}),children:[t,(0,l.jsx)("meta",{itemProp:"position",content:String(s+1)})]})}function le(){const e=(0,Y.OF)(),t=(0,J.Dt)();return e?(0,l.jsx)("nav",{className:(0,u.A)(j.G.docs.docBreadcrumbs,se.breadcrumbsContainer),"aria-label":(0,h.T)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"}),children:(0,l.jsxs)("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList",children:[t&&(0,l.jsx)(ne,{}),e.map(((t,n)=>{const s=n===e.length-1,a="category"===t.type&&t.linkUnlisted?void 0:t.href;return(0,l.jsx)(ie,{active:s,index:n,addMicrodata:!!a,children:(0,l.jsx)(ae,{href:a,isLast:s,children:t.label})},n)}))]})}):null}var oe=n(996);const re={docItemContainer:"docItemContainer_Djhp",docItemCol:"docItemCol_VOVn"};function ce(e){let{children:t}=e;const n=function(){const{frontMatter:e,toc:t}=c(),n=(0,m.l)(),s=e.hide_table_of_contents,a=!s&&t.length>0;return{hidden:s,mobile:a?(0,l.jsx)(q,{}):void 0,desktop:!a||"desktop"!==n&&"ssr"!==n?void 0:(0,l.jsx)($,{})}}(),{metadata:{unlisted:s}}=c();return(0,l.jsxs)("div",{className:"row",children:[(0,l.jsxs)("div",{className:(0,u.A)("col",!n.hidden&&re.docItemCol),children:[s&&(0,l.jsx)(oe.A,{}),(0,l.jsx)(k,{}),(0,l.jsxs)("div",{className:re.docItemContainer,children:[(0,l.jsxs)("article",{children:[(0,l.jsx)(le,{}),(0,l.jsx)(H,{}),n.mobile,(0,l.jsx)(X,{children:t}),(0,l.jsx)(V,{})]}),(0,l.jsx)(p,{})]})]}),n.desktop&&(0,l.jsx)("div",{className:"col col--3",children:n.desktop})]})}function de(e){const t=`docs-doc-id-${e.content.metadata.id}`,n=e.content;return(0,l.jsx)(r,{content:e.content,children:(0,l.jsxs)(a.e3,{className:t,children:[(0,l.jsx)(d,{}),(0,l.jsx)(ce,{children:(0,l.jsx)(n,{})})]})})}},1943:(e,t,n)=>{n.d(t,{A:()=>d});n(6540);var s=n(1312),a=n(7559),i=n(5489),l=n(53);const o={iconEdit:"iconEdit_Z9Sw"};var r=n(4848);function c(e){let{className:t,...n}=e;return(0,r.jsx)("svg",{fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,l.A)(o.iconEdit,t),"aria-hidden":"true",...n,children:(0,r.jsx)("g",{children:(0,r.jsx)("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 d(e){let{editUrl:t}=e;return(0,r.jsxs)(i.A,{to:t,className:a.G.common.editThisPage,children:[(0,r.jsx)(c,{}),(0,r.jsx)(s.A,{id:"theme.common.editThisPage",description:"The link label to edit the current page",children:"Edit this page"})]})}},9022:(e,t,n)=>{n.d(t,{A:()=>l});n(6540);var s=n(53),a=n(5489),i=n(4848);function l(e){const{permalink:t,title:n,subLabel:l,isNext:o}=e;return(0,i.jsxs)(a.A,{className:(0,s.A)("pagination-nav__link",o?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t,children:[l&&(0,i.jsx)("div",{className:"pagination-nav__sublabel",children:l}),(0,i.jsx)("div",{className:"pagination-nav__label",children:n})]})}},7763:(e,t,n)=>{n.d(t,{A:()=>c});n(6540);var s=n(53),a=n(5195);const i={tableOfContents:"tableOfContents_bqdL",docItemContainer:"docItemContainer_F8PC"};var l=n(4848);const o="table-of-contents__link toc-highlight",r="table-of-contents__link--active";function c(e){let{className:t,...n}=e;return(0,l.jsx)("div",{className:(0,s.A)(i.tableOfContents,"thin-scrollbar",t),children:(0,l.jsx)(a.A,{...n,linkClassName:o,linkActiveClassName:r})})}},5195:(e,t,n)=>{n.d(t,{A:()=>x});var s=n(6540),a=n(6342);function i(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const s=n.slice(2,e.level);e.parentIndex=Math.max(...s),n[e.level]=t}));const s=[];return t.forEach((e=>{const{parentIndex:n,...a}=e;n>=0?t[n].children.push(a):s.push(a)})),s}function l(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:s}=e;return t.flatMap((e=>{const t=l({toc:e.children,minHeadingLevel:n,maxHeadingLevel:s});return function(e){return e.level>=n&&e.level<=s}(e)?[{...e,children:t}]:t}))}function o(e){const t=e.getBoundingClientRect();return t.top===t.bottom?o(e.parentNode):t}function r(e,t){let{anchorTopOffset:n}=t;const s=e.find((e=>o(e).top>=n));if(s){return function(e){return e.top>0&&e.bottom{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function d(e){const t=(0,s.useRef)(void 0),n=c();(0,s.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:s,linkActiveClassName:a,minHeadingLevel:i,maxHeadingLevel:l}=e;function o(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(s),o=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const s=[];for(let a=t;a<=n;a+=1)s.push(`h${a}.anchor`);return Array.from(document.querySelectorAll(s.join()))}({minHeadingLevel:i,maxHeadingLevel:l}),c=r(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(a),e.classList.add(a),t.current=e):e.classList.remove(a)}(e,e===d)}))}return document.addEventListener("scroll",o),document.addEventListener("resize",o),o(),()=>{document.removeEventListener("scroll",o),document.removeEventListener("resize",o)}}),[e,n])}var u=n(5489),m=n(4848);function h(e){let{toc:t,className:n,linkClassName:s,isChild:a}=e;return t.length?(0,m.jsx)("ul",{className:a?void 0:n,children:t.map((e=>(0,m.jsxs)("li",{children:[(0,m.jsx)(u.A,{to:`#${e.id}`,className:s??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,m.jsx)(h,{isChild:!0,toc:e.children,className:n,linkClassName:s})]},e.id)))}):null}const v=s.memo(h);function x(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:o="table-of-contents__link",linkActiveClassName:r,minHeadingLevel:c,maxHeadingLevel:u,...h}=e;const x=(0,a.p)(),p=c??x.tableOfContents.minHeadingLevel,b=u??x.tableOfContents.maxHeadingLevel,g=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:a}=e;return(0,s.useMemo)((()=>l({toc:i(t),minHeadingLevel:n,maxHeadingLevel:a})),[t,n,a])}({toc:t,minHeadingLevel:p,maxHeadingLevel:b});return d((0,s.useMemo)((()=>{if(o&&r)return{linkClassName:o,linkActiveClassName:r,minHeadingLevel:p,maxHeadingLevel:b}}),[o,r,p,b])),(0,m.jsx)(v,{toc:g,className:n,linkClassName:o,...h})}},6133:(e,t,n)=>{n.d(t,{A:()=>o});n(6540);var s=n(53),a=n(5489);const i={tag:"tag_zVej",tagRegular:"tagRegular_sFm0",tagWithCount:"tagWithCount_h2kH"};var l=n(4848);function o(e){let{permalink:t,label:n,count:o}=e;return(0,l.jsxs)(a.A,{href:t,className:(0,s.A)(i.tag,o?i.tagWithCount:i.tagRegular),children:[n,o&&(0,l.jsx)("span",{children:o})]})}},2053:(e,t,n)=>{n.d(t,{A:()=>r});n(6540);var s=n(53),a=n(1312),i=n(6133);const l={tags:"tags_jXut",tag:"tag_QGVx"};var o=n(4848);function r(e){let{tags:t}=e;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("b",{children:(0,o.jsx)(a.A,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list",children:"Tags:"})}),(0,o.jsx)("ul",{className:(0,s.A)(l.tags,"padding--none","margin-left--sm"),children:t.map((e=>{let{label:t,permalink:n}=e;return(0,o.jsx)("li",{className:l.tag,children:(0,o.jsx)(i.A,{label:t,permalink:n})},n)}))})]})}},996:(e,t,n)=>{n.d(t,{A:()=>h});n(6540);var s=n(53),a=n(1312),i=n(5260),l=n(4848);function o(){return(0,l.jsx)(a.A,{id:"theme.unlistedContent.title",description:"The unlisted content banner title",children:"Unlisted page"})}function r(){return(0,l.jsx)(a.A,{id:"theme.unlistedContent.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function c(){return(0,l.jsx)(i.A,{children:(0,l.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}var d=n(7559),u=n(7293);function m(e){let{className:t}=e;return(0,l.jsx)(u.A,{type:"caution",title:(0,l.jsx)(o,{}),className:(0,s.A)(t,d.G.common.unlistedBanner),children:(0,l.jsx)(r,{})})}function h(e){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(c,{}),(0,l.jsx)(m,{...e})]})}},4428:(e,t,n)=>{n.d(t,{A:()=>r});var s=n(6540),a=n(2303),i=n(6846),l=n(3717),o=n(4848);function r(e){let{children:t,...n}=e;const r=(0,a.A)(),c=function(e){return s.Children.toArray(e).some((e=>(0,s.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),d="string"==typeof c?l.A:i.A;return(0,o.jsx)(d,{...n,children:c},String(r))}}}]); \ No newline at end of file diff --git a/assets/js/1a1cc5f0.17a326b8.js b/assets/js/1a1cc5f0.17a326b8.js deleted file mode 100644 index ca044d763..000000000 --- a/assets/js/1a1cc5f0.17a326b8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5139],{2698:(A,g,e)=>{e.r(g),e.d(g,{assets:()=>C,contentTitle:()=>n,default:()=>I,frontMatter:()=>o,metadata:()=>t,toc:()=>E});var Q=e(4848),B=e(8453);const o={slug:"newlogo",title:"New logo!",authors:["sern"],tags:["branding"]},n="Why?",t={permalink:"/blog/newlogo",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-7-4-mdx-blog-post.md",source:"@site/blog/2023-7-4-mdx-blog-post.md",title:"New logo!",description:"Hey everyone! Today we have very special news for you all: We're changing our logo!",date:"2023-07-04T00:00:00.000Z",formattedDate:"July 4, 2023",tags:[{label:"branding",permalink:"/blog/tags/branding"}],readingTime:.83,hasTruncateMarker:!1,authors:[{name:"sern Team",url:"https://github.com/sern-handler",imageURL:"https://github.com/sernbot.png",key:"sern"}],frontMatter:{slug:"newlogo",title:"New logo!",authors:["sern"],tags:["branding"]},unlisted:!1,prevItem:{title:"Deploying sern with Railway",permalink:"/blog/railway-deploy"},nextItem:{title:"Release 3.0.0",permalink:"/blog/3.0.0"}},C={authorsImageUrls:[void 0]},E=[];function s(A){const g={a:"a",br:"br",code:"code",h1:"h1",img:"img",p:"p",...(0,B.R)(),...A.components};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(g.p,{children:"Hey everyone! Today we have very special news for you all: We're changing our logo!"}),"\n",(0,Q.jsxs)(g.p,{children:["You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.",(0,Q.jsx)(g.br,{}),"\nWe were chilling, you know, cooking sern handler v3, sern gui, ",(0,Q.jsx)(g.code,{children:"npm create @sern/bot"})," and serncord when we thought about changing the logo to a sleek design with less colors.",(0,Q.jsx)(g.br,{}),"\nAnd here we are!"]}),"\n",(0,Q.jsx)(g.h1,{id:"who-did-our-new-branding",children:"Who did our new branding?"}),"\n",(0,Q.jsxs)(g.p,{children:[(0,Q.jsx)(g.a,{href:"https://github.com/Murtatrxx",children:"Ropox"}),"!",(0,Q.jsx)(g.br,{}),"\nBro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:",(0,Q.jsx)(g.br,{}),"\n",(0,Q.jsx)(g.img,{src:e(1129).A+"",width:"3024",height:"4032"}),"\nAnd there it all clicked:",(0,Q.jsx)(g.br,{}),"\n",(0,Q.jsx)(g.img,{src:e(8165).A+"",width:"830",height:"455"}),"\nseren tried by the way!\n",(0,Q.jsx)(g.img,{src:e(8105).A+"",width:"908",height:"509"})]}),"\n",(0,Q.jsx)(g.h1,{id:"anyways-here-it-is",children:"Anyways, here it is:"}),"\n",(0,Q.jsx)(g.p,{children:(0,Q.jsx)(g.img,{src:e(3072).A+"",width:"1000",height:"1000"})}),"\n",(0,Q.jsx)(g.p,{children:"Pretty nice!"}),"\n",(0,Q.jsxs)(g.p,{children:["By the way, we have animations and variations on the way, so make sure to stay updated in the ",(0,Q.jsx)(g.a,{href:"https://sern.dev/discord",children:"discord server"}),"!"]}),"\n",(0,Q.jsx)(g.h1,{id:"finally-from-the-entire-sern-team-thank-you-for-sticking-around-\ufe0f",children:"Finally, from the entire sern team, thank you for sticking around \u2764\ufe0f"})]})}function I(A={}){const{wrapper:g}={...(0,B.R)(),...A.components};return g?(0,Q.jsx)(g,{...A,children:(0,Q.jsx)(s,{...A})}):s(A)}},8165:(A,g,e)=>{e.d(g,{A:()=>Q});const Q=e.p+"assets/images/paperlogo-41a5e76b2d3249b59105ee88f01f202b.png"},1129:(A,g,e)=>{e.d(g,{A:()=>Q});const Q=e.p+"assets/images/paperprototypes-cd697eaefd7ac467f2385dd119f6d78c.jpg"},8105:(A,g,e)=>{e.d(g,{A:()=>Q});const Q=e.p+"assets/images/serentried-2bcee1b2fda9864408e52072821d995f.png"},3072:(A,g,e)=>{e.d(g,{A:()=>Q});const Q="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAPoCAYAAABNo9TkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAABYxSURBVHgB7d1NjlxXGYDhc+MgiJi0JRbQO8BZQcwKaK8gyQpwhjgD2wPbYkSyAswKaFaAvQL3EooxstxDEElfqtxGDBmB33vP80itKvW4VFVvfednDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD6qZQBM6u3Fi3UAAP8Xx/C4HmM9HJ9dHz+AD6fnN2N5/en4+9Xdy6fXAxDowLwEOgA0HKPkcPxQfrWO9c93xj9eCXZmJdCBaQl0AMh6eYr1X1w+uhwwEYEOTEugA0DbabK+jPXJ8dnru5e/PQzYuU8GAABA0PGX9PObsRyn6eMvxx/WnwzYORN0YFom6ACwLf+eqN+9fPTHATsk0IFpCXQA2KZjpF8uY/nGsnf2xhJ3AABgU9axXNyM9c27i+dfDtgRgQ4AAGzQcnban/724sXvB+yEJe7AtCxxB4B9WMZ6tYzlgSXvbJ0JOgAAsGnrWO6dTnp/d/HifMCGCXQAAGDzTleyiXS2TqADAAC7INLZOoEOAADshkhnywQ6AACwK7eRvv7p3cXjswEbItABAIDdOR0cdzN+9njAhgh0AABgrx6+vXj+cMBGCHQAAGDPHtuPzlYIdAAAYMeWs3WMPwzYAIEOAADs2jHQ77+7eP7lgDiBDgAA7N46lidOdadOoAMAALt3unrtZvz0NwPCBDoAADCLh6bolAl0AABgEsuZKTplAh0AAJiJe9HJEugAAMBElrO/Xby4PyBIoAMAAFO5M1bL3EkS6AAAwFRu70V3WBw9Ah0AAJjMcvbj8tkXA2IEOgAAMJ1lvbk/IEagAwAAE1ouBsQIdAAAYEbn9qFTI9ABAIAp2YdOjUAHAACmtKzjfECIQAcAACa13hsQItABAIAprcMEnRaBDgAATGkR6MQIdAAAAAgQ6AAAwKzOB4QIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+G+WASHnn3+7DgBgSoc3z3w3Bab2yQAAAAA+OoEOAAAAAQIdAAAAAgQ6AAAABAh0AAAAGB+fQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdGLWwwAAAJiQQAcAAIAAgU7MchgAAAATEui0rOMwAAAAJiTQiVmuBgAAwIQEOjV/HQAAABMS6MTceTUAAAAmJNBJOVw9vXbVGgAAMCOBTs+6XA4AAIDJCHSCltcDAABgMgKdoNM+9OV6AAAATESgk/N+H/p682oAAABMRKATtXw/AAAAJiLQSTpcPXtlmTsAADATgU7XevPdAAAAmIRAJ+wn35uiAwAAsxDoZH04LM4UHQAAmIJAJ+40RV8PAwAAYOcEOmm3U/TxdAAAAOycQCfvcPX85fHh1QAAANgxgc42rD987cA4AABgzwQ6m3C4+t1hrKul7gAAwG4JdDbjcPXsu7EOp7oDAAC7JNDZmE9PU/SrAQAAsDMCnU25PdX9hweuXgMAAPZGoLM5t/vRf/yVSAcAAPZEoLNJIh0AANgbgc5miXQAAGBPBDqb9p9Id3AcAACwbQKdzTtF+uHNs89dwQYAAGyZQGc3DlfPvhnr+vUYy/UAAADYGIHOrhyunr8c6z+P0/T1cgAAAGyIQGd33i95v3r+4Haa7gA5AABgG5YBO3d+79Hj4yv9q+PL/XwAAFmHN898NwWmZoLO7h2n6U/fn/Ruog4AAIT5lZLpnN/79tfHUL8Yy/LVAAAyTNCB2XkTZFrn9x6ejfHzL25jfdy3BB4APi6BDszOmyB88D7Yl89+Odbl/odYP/0d//fhEQD4nxLoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACz+xe+xzYG5IBdhQAAAA5lWElmTU0AKgAAAAgAAAAAAAAA0lOTAAAAAElFTkSuQmCC"},8453:(A,g,e)=>{e.d(g,{R:()=>n,x:()=>t});var Q=e(6540);const B={},o=Q.createContext(B);function n(A){const g=Q.useContext(o);return Q.useMemo((function(){return"function"==typeof A?A(g):{...g,...A}}),[g,A])}function t(A){let g;return g=A.disableParentContext?"function"==typeof A.components?A.components(B):A.components||B:n(A.components),Q.createElement(o.Provider,{value:g},A.children)}}}]); \ No newline at end of file diff --git a/assets/js/1a4e3797.46e3e239.js b/assets/js/1a4e3797.46e3e239.js deleted file mode 100644 index ba66d55f5..000000000 --- a/assets/js/1a4e3797.46e3e239.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see 1a4e3797.46e3e239.js.LICENSE.txt */ -(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2138],{2733:e=>{function t(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function r(e){return"function"==typeof e}function n(e){return"object"==typeof e&&null!==e}function i(e){return void 0===e}e.exports=t,t.prototype._events=void 0,t.prototype._maxListeners=void 0,t.defaultMaxListeners=10,t.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},t.prototype.emit=function(e){var t,s,a,c,u,o;if(this._events||(this._events={}),"error"===e&&(!this._events.error||n(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var h=new Error('Uncaught, unspecified "error" event. ('+t+")");throw h.context=t,h}if(i(s=this._events[e]))return!1;if(r(s))switch(arguments.length){case 1:s.call(this);break;case 2:s.call(this,arguments[1]);break;case 3:s.call(this,arguments[1],arguments[2]);break;default:c=Array.prototype.slice.call(arguments,1),s.apply(this,c)}else if(n(s))for(c=Array.prototype.slice.call(arguments,1),a=(o=s.slice()).length,u=0;u0&&this._events[e].length>a&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},t.prototype.on=t.prototype.addListener,t.prototype.once=function(e,t){if(!r(t))throw TypeError("listener must be a function");var n=!1;function i(){this.removeListener(e,i),n||(n=!0,t.apply(this,arguments))}return i.listener=t,this.on(e,i),this},t.prototype.removeListener=function(e,t){var i,s,a,c;if(!r(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(a=(i=this._events[e]).length,s=-1,i===t||r(i.listener)&&i.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(n(i)){for(c=a;c-- >0;)if(i[c]===t||i[c].listener&&i[c].listener===t){s=c;break}if(s<0)return this;1===i.length?(i.length=0,delete this._events[e]):i.splice(s,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},t.prototype.removeAllListeners=function(e){var t,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(r(n=this._events[e]))this.removeListener(e,n);else if(n)for(;n.length;)this.removeListener(e,n[n.length-1]);return delete this._events[e],this},t.prototype.listeners=function(e){return this._events&&this._events[e]?r(this._events[e])?[this._events[e]]:this._events[e].slice():[]},t.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(r(t))return 1;if(t)return t.length}return 0},t.listenerCount=function(e,t){return e.listenerCount(t)}},4103:(e,t,r)=>{"use strict";var n=r(6571),i=r(3371),s=r(7691);function a(e,t,r,i){return new n(e,t,r,i)}a.version=r(6938),a.AlgoliaSearchHelper=n,a.SearchParameters=i,a.SearchResults=s,e.exports=a},6732:(e,t,r)=>{"use strict";var n=r(2733);function i(e,t){this.main=e,this.fn=t,this.lastResults=null}r(3014)(i,n),i.prototype.detach=function(){this.removeAllListeners(),this.main.detachDerivedHelper(this)},i.prototype.getModifiedState=function(e){return this.fn(e)},e.exports=i},9127:e=>{"use strict";function t(e){e=e||{},this.params=e.params||[]}t.prototype={constructor:t,addParams:function(e){return new t({params:this.params.concat(e)})},removeParams:function(e){return new t({params:this.params.filter((function(t){return t.$$id!==e}))})}},e.exports=t},1673:(e,t,r)=>{"use strict";var n=r(9110),i=r(317),s=r(1383),a={addRefinement:function(e,t,r){if(a.isRefined(e,t,r))return e;var i=""+r,s=e[t]?e[t].concat(i):[i],c={};return c[t]=s,n({},c,e)},removeRefinement:function(e,t,r){if(void 0===r)return a.clearRefinement(e,(function(e,r){return t===r}));var n=""+r;return a.clearRefinement(e,(function(e,r){return t===r&&n===e}))},toggleRefinement:function(e,t,r){if(void 0===r)throw new Error("toggleRefinement should be used with a value");return a.isRefined(e,t,r)?a.removeRefinement(e,t,r):a.addRefinement(e,t,r)},clearRefinement:function(e,t,r){if(void 0===t)return i(e)?{}:e;if("string"==typeof t)return s(e,[t]);if("function"==typeof t){var n=!1,a=Object.keys(e).reduce((function(i,s){var a=e[s]||[],c=a.filter((function(e){return!t(e,s,r)}));return c.length!==a.length&&(n=!0),i[s]=c,i}),{});return n?a:e}},isRefined:function(e,t,r){var n=Boolean(e[t])&&e[t].length>0;if(void 0===r||!n)return n;var i=""+r;return-1!==e[t].indexOf(i)}};e.exports=a},3371:(e,t,r)=>{"use strict";var n=r(9110),i=r(849),s=r(4843),a=r(4728),c=r(317),u=r(1383),o=r(7507),h=r(2208),f=r(1673);function l(e,t){return Array.isArray(e)&&Array.isArray(t)?e.length===t.length&&e.every((function(e,r){return l(t[r],e)})):e===t}function m(e){var t=e?m._parseNumbers(e):{};void 0===t.userToken||h(t.userToken)||console.warn("[algoliasearch-helper] The `userToken` parameter is invalid. This can lead to wrong analytics.\n - Format: [a-zA-Z0-9_-]{1,64}"),this.facets=t.facets||[],this.disjunctiveFacets=t.disjunctiveFacets||[],this.hierarchicalFacets=t.hierarchicalFacets||[],this.facetsRefinements=t.facetsRefinements||{},this.facetsExcludes=t.facetsExcludes||{},this.disjunctiveFacetsRefinements=t.disjunctiveFacetsRefinements||{},this.numericRefinements=t.numericRefinements||{},this.tagRefinements=t.tagRefinements||[],this.hierarchicalFacetsRefinements=t.hierarchicalFacetsRefinements||{};var r=this;Object.keys(t).forEach((function(e){var n=-1!==m.PARAMETERS.indexOf(e),i=void 0!==t[e];!n&&i&&(r[e]=t[e])}))}m.PARAMETERS=Object.keys(new m),m._parseNumbers=function(e){if(e instanceof m)return e;var t={};if(["aroundPrecision","aroundRadius","getRankingInfo","minWordSizefor2Typos","minWordSizefor1Typo","page","maxValuesPerFacet","distinct","minimumAroundRadius","hitsPerPage","minProximity"].forEach((function(r){var n=e[r];if("string"==typeof n){var i=parseFloat(n);t[r]=isNaN(i)?n:i}})),Array.isArray(e.insideBoundingBox)&&(t.insideBoundingBox=e.insideBoundingBox.map((function(e){return Array.isArray(e)?e.map((function(e){return parseFloat(e)})):e}))),e.numericRefinements){var r={};Object.keys(e.numericRefinements).forEach((function(t){var n=e.numericRefinements[t]||{};r[t]={},Object.keys(n).forEach((function(e){var i=n[e].map((function(e){return Array.isArray(e)?e.map((function(e){return"string"==typeof e?parseFloat(e):e})):"string"==typeof e?parseFloat(e):e}));r[t][e]=i}))})),t.numericRefinements=r}return a(e,t)},m.make=function(e){var t=new m(e);return(e.hierarchicalFacets||[]).forEach((function(e){if(e.rootPath){var r=t.getHierarchicalRefinement(e.name);r.length>0&&0!==r[0].indexOf(e.rootPath)&&(t=t.clearRefinements(e.name)),0===(r=t.getHierarchicalRefinement(e.name)).length&&(t=t.toggleHierarchicalFacetRefinement(e.name,e.rootPath))}})),t},m.validate=function(e,t){var r=t||{};return e.tagFilters&&r.tagRefinements&&r.tagRefinements.length>0?new Error("[Tags] Cannot switch from the managed tag API to the advanced API. It is probably an error, if it is really what you want, you should first clear the tags with clearTags method."):e.tagRefinements.length>0&&r.tagFilters?new Error("[Tags] Cannot switch from the advanced tag API to the managed API. It is probably an error, if it is not, you should first clear the tags with clearTags method."):e.numericFilters&&r.numericRefinements&&c(r.numericRefinements)?new Error("[Numeric filters] Can't switch from the advanced to the managed API. It is probably an error, if this is really what you want, you have to first clear the numeric filters."):c(e.numericRefinements)&&r.numericFilters?new Error("[Numeric filters] Can't switch from the managed API to the advanced. It is probably an error, if this is really what you want, you have to first clear the numeric filters."):null},m.prototype={constructor:m,clearRefinements:function(e){var t={numericRefinements:this._clearNumericRefinements(e),facetsRefinements:f.clearRefinement(this.facetsRefinements,e,"conjunctiveFacet"),facetsExcludes:f.clearRefinement(this.facetsExcludes,e,"exclude"),disjunctiveFacetsRefinements:f.clearRefinement(this.disjunctiveFacetsRefinements,e,"disjunctiveFacet"),hierarchicalFacetsRefinements:f.clearRefinement(this.hierarchicalFacetsRefinements,e,"hierarchicalFacet")};return t.numericRefinements===this.numericRefinements&&t.facetsRefinements===this.facetsRefinements&&t.facetsExcludes===this.facetsExcludes&&t.disjunctiveFacetsRefinements===this.disjunctiveFacetsRefinements&&t.hierarchicalFacetsRefinements===this.hierarchicalFacetsRefinements?this:this.setQueryParameters(t)},clearTags:function(){return void 0===this.tagFilters&&0===this.tagRefinements.length?this:this.setQueryParameters({tagFilters:void 0,tagRefinements:[]})},setIndex:function(e){return e===this.index?this:this.setQueryParameters({index:e})},setQuery:function(e){return e===this.query?this:this.setQueryParameters({query:e})},setPage:function(e){return e===this.page?this:this.setQueryParameters({page:e})},setFacets:function(e){return this.setQueryParameters({facets:e})},setDisjunctiveFacets:function(e){return this.setQueryParameters({disjunctiveFacets:e})},setHitsPerPage:function(e){return this.hitsPerPage===e?this:this.setQueryParameters({hitsPerPage:e})},setTypoTolerance:function(e){return this.typoTolerance===e?this:this.setQueryParameters({typoTolerance:e})},addNumericRefinement:function(e,t,r){var n=o(r);if(this.isNumericRefined(e,t,n))return this;var i=a({},this.numericRefinements);return i[e]=a({},i[e]),i[e][t]?(i[e][t]=i[e][t].slice(),i[e][t].push(n)):i[e][t]=[n],this.setQueryParameters({numericRefinements:i})},getConjunctiveRefinements:function(e){return this.isConjunctiveFacet(e)&&this.facetsRefinements[e]||[]},getDisjunctiveRefinements:function(e){return this.isDisjunctiveFacet(e)&&this.disjunctiveFacetsRefinements[e]||[]},getHierarchicalRefinement:function(e){return this.hierarchicalFacetsRefinements[e]||[]},getExcludeRefinements:function(e){return this.isConjunctiveFacet(e)&&this.facetsExcludes[e]||[]},removeNumericRefinement:function(e,t,r){var n=r;return void 0!==n?this.isNumericRefined(e,t,n)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(r,i){return i===e&&r.op===t&&l(r.val,o(n))}))}):this:void 0!==t?this.isNumericRefined(e,t)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(r,n){return n===e&&r.op===t}))}):this:this.isNumericRefined(e)?this.setQueryParameters({numericRefinements:this._clearNumericRefinements((function(t,r){return r===e}))}):this},getNumericRefinements:function(e){return this.numericRefinements[e]||{}},getNumericRefinement:function(e,t){return this.numericRefinements[e]&&this.numericRefinements[e][t]},_clearNumericRefinements:function(e){if(void 0===e)return c(this.numericRefinements)?{}:this.numericRefinements;if("string"==typeof e)return u(this.numericRefinements,[e]);if("function"==typeof e){var t=!1,r=this.numericRefinements,n=Object.keys(r).reduce((function(n,i){var s=r[i],a={};return s=s||{},Object.keys(s).forEach((function(r){var n=s[r]||[],c=[];n.forEach((function(t){e({val:t,op:r},i,"numeric")||c.push(t)})),c.length!==n.length&&(t=!0),a[r]=c})),n[i]=a,n}),{});return t?n:this.numericRefinements}},addFacet:function(e){return this.isConjunctiveFacet(e)?this:this.setQueryParameters({facets:this.facets.concat([e])})},addDisjunctiveFacet:function(e){return this.isDisjunctiveFacet(e)?this:this.setQueryParameters({disjunctiveFacets:this.disjunctiveFacets.concat([e])})},addHierarchicalFacet:function(e){if(this.isHierarchicalFacet(e.name))throw new Error("Cannot declare two hierarchical facets with the same name: `"+e.name+"`");return this.setQueryParameters({hierarchicalFacets:this.hierarchicalFacets.concat([e])})},addFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsRefinements,e,t)?this:this.setQueryParameters({facetsRefinements:f.addRefinement(this.facetsRefinements,e,t)})},addExcludeRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsExcludes,e,t)?this:this.setQueryParameters({facetsExcludes:f.addRefinement(this.facetsExcludes,e,t)})},addDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return f.isRefined(this.disjunctiveFacetsRefinements,e,t)?this:this.setQueryParameters({disjunctiveFacetsRefinements:f.addRefinement(this.disjunctiveFacetsRefinements,e,t)})},addTagRefinement:function(e){if(this.isTagRefined(e))return this;var t={tagRefinements:this.tagRefinements.concat(e)};return this.setQueryParameters(t)},removeFacet:function(e){return this.isConjunctiveFacet(e)?this.clearRefinements(e).setQueryParameters({facets:this.facets.filter((function(t){return t!==e}))}):this},removeDisjunctiveFacet:function(e){return this.isDisjunctiveFacet(e)?this.clearRefinements(e).setQueryParameters({disjunctiveFacets:this.disjunctiveFacets.filter((function(t){return t!==e}))}):this},removeHierarchicalFacet:function(e){return this.isHierarchicalFacet(e)?this.clearRefinements(e).setQueryParameters({hierarchicalFacets:this.hierarchicalFacets.filter((function(t){return t.name!==e}))}):this},removeFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsRefinements,e,t)?this.setQueryParameters({facetsRefinements:f.removeRefinement(this.facetsRefinements,e,t)}):this},removeExcludeRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return f.isRefined(this.facetsExcludes,e,t)?this.setQueryParameters({facetsExcludes:f.removeRefinement(this.facetsExcludes,e,t)}):this},removeDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return f.isRefined(this.disjunctiveFacetsRefinements,e,t)?this.setQueryParameters({disjunctiveFacetsRefinements:f.removeRefinement(this.disjunctiveFacetsRefinements,e,t)}):this},removeTagRefinement:function(e){if(!this.isTagRefined(e))return this;var t={tagRefinements:this.tagRefinements.filter((function(t){return t!==e}))};return this.setQueryParameters(t)},toggleRefinement:function(e,t){return this.toggleFacetRefinement(e,t)},toggleFacetRefinement:function(e,t){if(this.isHierarchicalFacet(e))return this.toggleHierarchicalFacetRefinement(e,t);if(this.isConjunctiveFacet(e))return this.toggleConjunctiveFacetRefinement(e,t);if(this.isDisjunctiveFacet(e))return this.toggleDisjunctiveFacetRefinement(e,t);throw new Error("Cannot refine the undeclared facet "+e+"; it should be added to the helper options facets, disjunctiveFacets or hierarchicalFacets")},toggleConjunctiveFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return this.setQueryParameters({facetsRefinements:f.toggleRefinement(this.facetsRefinements,e,t)})},toggleExcludeFacetRefinement:function(e,t){if(!this.isConjunctiveFacet(e))throw new Error(e+" is not defined in the facets attribute of the helper configuration");return this.setQueryParameters({facetsExcludes:f.toggleRefinement(this.facetsExcludes,e,t)})},toggleDisjunctiveFacetRefinement:function(e,t){if(!this.isDisjunctiveFacet(e))throw new Error(e+" is not defined in the disjunctiveFacets attribute of the helper configuration");return this.setQueryParameters({disjunctiveFacetsRefinements:f.toggleRefinement(this.disjunctiveFacetsRefinements,e,t)})},toggleHierarchicalFacetRefinement:function(e,t){if(!this.isHierarchicalFacet(e))throw new Error(e+" is not defined in the hierarchicalFacets attribute of the helper configuration");var r=this._getHierarchicalFacetSeparator(this.getHierarchicalFacetByName(e)),i={};return void 0!==this.hierarchicalFacetsRefinements[e]&&this.hierarchicalFacetsRefinements[e].length>0&&(this.hierarchicalFacetsRefinements[e][0]===t||0===this.hierarchicalFacetsRefinements[e][0].indexOf(t+r))?-1===t.indexOf(r)?i[e]=[]:i[e]=[t.slice(0,t.lastIndexOf(r))]:i[e]=[t],this.setQueryParameters({hierarchicalFacetsRefinements:n({},i,this.hierarchicalFacetsRefinements)})},addHierarchicalFacetRefinement:function(e,t){if(this.isHierarchicalFacetRefined(e))throw new Error(e+" is already refined.");if(!this.isHierarchicalFacet(e))throw new Error(e+" is not defined in the hierarchicalFacets attribute of the helper configuration.");var r={};return r[e]=[t],this.setQueryParameters({hierarchicalFacetsRefinements:n({},r,this.hierarchicalFacetsRefinements)})},removeHierarchicalFacetRefinement:function(e){if(!this.isHierarchicalFacetRefined(e))return this;var t={};return t[e]=[],this.setQueryParameters({hierarchicalFacetsRefinements:n({},t,this.hierarchicalFacetsRefinements)})},toggleTagRefinement:function(e){return this.isTagRefined(e)?this.removeTagRefinement(e):this.addTagRefinement(e)},isDisjunctiveFacet:function(e){return this.disjunctiveFacets.indexOf(e)>-1},isHierarchicalFacet:function(e){return void 0!==this.getHierarchicalFacetByName(e)},isConjunctiveFacet:function(e){return this.facets.indexOf(e)>-1},isFacetRefined:function(e,t){return!!this.isConjunctiveFacet(e)&&f.isRefined(this.facetsRefinements,e,t)},isExcludeRefined:function(e,t){return!!this.isConjunctiveFacet(e)&&f.isRefined(this.facetsExcludes,e,t)},isDisjunctiveFacetRefined:function(e,t){return!!this.isDisjunctiveFacet(e)&&f.isRefined(this.disjunctiveFacetsRefinements,e,t)},isHierarchicalFacetRefined:function(e,t){if(!this.isHierarchicalFacet(e))return!1;var r=this.getHierarchicalRefinement(e);return t?-1!==r.indexOf(t):r.length>0},isNumericRefined:function(e,t,r){if(void 0===r&&void 0===t)return Boolean(this.numericRefinements[e]);var n=this.numericRefinements[e]&&void 0!==this.numericRefinements[e][t];if(void 0===r||!n)return n;var s,a,c=o(r),u=void 0!==(s=this.numericRefinements[e][t],a=c,i(s,(function(e){return l(e,a)})));return n&&u},isTagRefined:function(e){return-1!==this.tagRefinements.indexOf(e)},getRefinedDisjunctiveFacets:function(){var e=this,t=s(Object.keys(this.numericRefinements).filter((function(t){return Object.keys(e.numericRefinements[t]).length>0})),this.disjunctiveFacets);return Object.keys(this.disjunctiveFacetsRefinements).filter((function(t){return e.disjunctiveFacetsRefinements[t].length>0})).concat(t).concat(this.getRefinedHierarchicalFacets()).sort()},getRefinedHierarchicalFacets:function(){var e=this;return s(this.hierarchicalFacets.map((function(e){return e.name})),Object.keys(this.hierarchicalFacetsRefinements).filter((function(t){return e.hierarchicalFacetsRefinements[t].length>0}))).sort()},getUnrefinedDisjunctiveFacets:function(){var e=this.getRefinedDisjunctiveFacets();return this.disjunctiveFacets.filter((function(t){return-1===e.indexOf(t)}))},managedParameters:["index","facets","disjunctiveFacets","facetsRefinements","hierarchicalFacets","facetsExcludes","disjunctiveFacetsRefinements","numericRefinements","tagRefinements","hierarchicalFacetsRefinements"],getQueryParams:function(){var e=this.managedParameters,t={},r=this;return Object.keys(this).forEach((function(n){var i=r[n];-1===e.indexOf(n)&&void 0!==i&&(t[n]=i)})),t},setQueryParameter:function(e,t){if(this[e]===t)return this;var r={};return r[e]=t,this.setQueryParameters(r)},setQueryParameters:function(e){if(!e)return this;var t=m.validate(this,e);if(t)throw t;var r=this,n=m._parseNumbers(e),i=Object.keys(this).reduce((function(e,t){return e[t]=r[t],e}),{}),s=Object.keys(n).reduce((function(e,t){var r=void 0!==e[t],i=void 0!==n[t];return r&&!i?u(e,[t]):(i&&(e[t]=n[t]),e)}),i);return new this.constructor(s)},resetPage:function(){return void 0===this.page?this:this.setPage(0)},_getHierarchicalFacetSortBy:function(e){return e.sortBy||["isRefined:desc","name:asc"]},_getHierarchicalFacetSeparator:function(e){return e.separator||" > "},_getHierarchicalRootPath:function(e){return e.rootPath||null},_getHierarchicalShowParentLevel:function(e){return"boolean"!=typeof e.showParentLevel||e.showParentLevel},getHierarchicalFacetByName:function(e){return i(this.hierarchicalFacets,(function(t){return t.name===e}))},getHierarchicalFacetBreadcrumb:function(e){if(!this.isHierarchicalFacet(e))return[];var t=this.getHierarchicalRefinement(e)[0];if(!t)return[];var r=this._getHierarchicalFacetSeparator(this.getHierarchicalFacetByName(e));return t.split(r).map((function(e){return e.trim()}))},toString:function(){return JSON.stringify(this,null,2)}},e.exports=m},6673:(e,t,r)=>{"use strict";e.exports=function(e){return function(t,r){var n=e.hierarchicalFacets[r],o=e.hierarchicalFacetsRefinements[n.name]&&e.hierarchicalFacetsRefinements[n.name][0]||"",h=e._getHierarchicalFacetSeparator(n),f=e._getHierarchicalRootPath(n),l=e._getHierarchicalShowParentLevel(n),m=s(e._getHierarchicalFacetSortBy(n)),d=t.every((function(e){return e.exhaustive})),p=function(e,t,r,n,s){return function(o,h,f){var l=o;if(f>0){var m=0;for(l=o;m{"use strict";var n=r(8965),i=r(9110),s=r(2909),a=r(849),c=r(3917),u=r(7577),o=r(4728),h=r(8601),f=s.escapeFacetValue,l=s.unescapeFacetValue,m=r(6673);function d(e){var t={};return e.forEach((function(e,r){t[e]=r})),t}function p(e,t,r){t&&t[r]&&(e.stats=t[r])}function v(e,t,r){var s=t[0];this._rawResults=t;var u=this;Object.keys(s).forEach((function(e){u[e]=s[e]}));var h=o({persistHierarchicalRootCount:!1},r);Object.keys(h).forEach((function(e){u[e]=h[e]})),this.processingTimeMS=t.reduce((function(e,t){return void 0===t.processingTimeMS?e:e+t.processingTimeMS}),0),this.disjunctiveFacets=[],this.hierarchicalFacets=e.hierarchicalFacets.map((function(){return[]})),this.facets=[];var f=e.getRefinedDisjunctiveFacets(),v=d(e.facets),g=d(e.disjunctiveFacets),y=1,R=s.facets||{};Object.keys(R).forEach((function(t){var r,n,i=R[t],o=(r=e.hierarchicalFacets,n=t,a(r,(function(e){return(e.attributes||[]).indexOf(n)>-1})));if(o){var h=o.attributes.indexOf(t),f=c(e.hierarchicalFacets,(function(e){return e.name===o.name}));u.hierarchicalFacets[f][h]={attribute:t,data:i,exhaustive:s.exhaustiveFacetsCount}}else{var l,m=-1!==e.disjunctiveFacets.indexOf(t),d=-1!==e.facets.indexOf(t);m&&(l=g[t],u.disjunctiveFacets[l]={name:t,data:i,exhaustive:s.exhaustiveFacetsCount},p(u.disjunctiveFacets[l],s.facets_stats,t)),d&&(l=v[t],u.facets[l]={name:t,data:i,exhaustive:s.exhaustiveFacetsCount},p(u.facets[l],s.facets_stats,t))}})),this.hierarchicalFacets=n(this.hierarchicalFacets),f.forEach((function(r){var n=t[y],a=n&&n.facets?n.facets:{},h=e.getHierarchicalFacetByName(r);Object.keys(a).forEach((function(t){var r,f=a[t];if(h){r=c(e.hierarchicalFacets,(function(e){return e.name===h.name}));var m=c(u.hierarchicalFacets[r],(function(e){return e.attribute===t}));if(-1===m)return;u.hierarchicalFacets[r][m].data=o({},u.hierarchicalFacets[r][m].data,f)}else{r=g[t];var d=s.facets&&s.facets[t]||{};u.disjunctiveFacets[r]={name:t,data:i({},f,d),exhaustive:n.exhaustiveFacetsCount},p(u.disjunctiveFacets[r],n.facets_stats,t),e.disjunctiveFacetsRefinements[t]&&e.disjunctiveFacetsRefinements[t].forEach((function(n){!u.disjunctiveFacets[r].data[n]&&e.disjunctiveFacetsRefinements[t].indexOf(l(n))>-1&&(u.disjunctiveFacets[r].data[n]=0)}))}})),y++})),e.getRefinedHierarchicalFacets().forEach((function(r){var n=e.getHierarchicalFacetByName(r),s=e._getHierarchicalFacetSeparator(n),a=e.getHierarchicalRefinement(r);0===a.length||a[0].split(s).length<2||t.slice(y).forEach((function(t){var r=t&&t.facets?t.facets:{};Object.keys(r).forEach((function(t){var o=r[t],h=c(e.hierarchicalFacets,(function(e){return e.name===n.name})),f=c(u.hierarchicalFacets[h],(function(e){return e.attribute===t}));if(-1!==f){var l={};if(a.length>0&&!u.persistHierarchicalRootCount){var m=a[0].split(s)[0];l[m]=u.hierarchicalFacets[h][f].data[m]}u.hierarchicalFacets[h][f].data=i(l,o,u.hierarchicalFacets[h][f].data)}})),y++}))})),Object.keys(e.facetsExcludes).forEach((function(t){var r=e.facetsExcludes[t],n=v[t];u.facets[n]={name:t,data:R[t],exhaustive:s.exhaustiveFacetsCount},r.forEach((function(e){u.facets[n]=u.facets[n]||{name:t},u.facets[n].data=u.facets[n].data||{},u.facets[n].data[e]=0}))})),this.hierarchicalFacets=this.hierarchicalFacets.map(m(e)),this.facets=n(this.facets),this.disjunctiveFacets=n(this.disjunctiveFacets),this._state=e}function g(e,t){function r(e){return e.name===t}if(e._state.isConjunctiveFacet(t)){var n=a(e.facets,r);return n?Object.keys(n.data).map((function(r){var i=f(r);return{name:r,escapedValue:i,count:n.data[r],isRefined:e._state.isFacetRefined(t,i),isExcluded:e._state.isExcludeRefined(t,r)}})):[]}if(e._state.isDisjunctiveFacet(t)){var i=a(e.disjunctiveFacets,r);return i?Object.keys(i.data).map((function(r){var n=f(r);return{name:r,escapedValue:n,count:i.data[r],isRefined:e._state.isDisjunctiveFacetRefined(t,n)}})):[]}if(e._state.isHierarchicalFacet(t)){var s=a(e.hierarchicalFacets,r);if(!s)return s;var c=e._state.getHierarchicalFacetByName(t),u=e._state._getHierarchicalFacetSeparator(c),o=l(e._state.getHierarchicalRefinement(t)[0]||"");0===o.indexOf(c.rootPath)&&(o=o.replace(c.rootPath+u,""));var h=o.split(u);return h.unshift(t),y(s,h,0),s}}function y(e,t,r){e.isRefined=e.name===(t[r]&&t[r].trim()),e.data&&e.data.forEach((function(e){y(e,t,r+1)}))}function R(e,t,r,n){if(n=n||0,Array.isArray(t))return e(t,r[n]);if(!t.data||0===t.data.length)return t;var s=t.data.map((function(t){return R(e,t,r,n+1)})),a=e(s,r[n]);return i({data:a},t)}function F(e,t){var r=a(e,(function(e){return e.name===t}));return r&&r.stats}function b(e,t,r,n,i){var s=a(i,(function(e){return e.name===r})),c=s&&s.data&&s.data[n]?s.data[n]:0,u=s&&s.exhaustive||!1;return{type:t,attributeName:r,name:n,count:c,exhaustive:u}}v.prototype.getFacetByName=function(e){function t(t){return t.name===e}return a(this.facets,t)||a(this.disjunctiveFacets,t)||a(this.hierarchicalFacets,t)},v.DEFAULT_SORT=["isRefined:desc","count:desc","name:asc"],v.prototype.getFacetValues=function(e,t){var r=g(this,e);if(r){var n,s=i({},t,{sortBy:v.DEFAULT_SORT,facetOrdering:!(t&&t.sortBy)}),a=this;if(Array.isArray(r))n=[e];else n=a._state.getHierarchicalFacetByName(r.name).attributes;return R((function(e,t){if(s.facetOrdering){var r=function(e,t){return e.renderingContent&&e.renderingContent.facetOrdering&&e.renderingContent.facetOrdering.values&&e.renderingContent.facetOrdering.values[t]}(a,t);if(r)return function(e,t){var r=[],n=[],i=(t.order||[]).reduce((function(e,t,r){return e[t]=r,e}),{});e.forEach((function(e){var t=e.path||e.name;void 0!==i[t]?r[i[t]]=e:n.push(e)})),r=r.filter((function(e){return e}));var s,a=t.sortRemainingBy;return"hidden"===a?r:(s="alpha"===a?[["path","name"],["asc","asc"]]:[["count"],["desc"]],r.concat(h(n,s[0],s[1])))}(e,r)}if(Array.isArray(s.sortBy)){var n=u(s.sortBy,v.DEFAULT_SORT);return h(e,n[0],n[1])}if("function"==typeof s.sortBy)return function(e,t){return t.sort(e)}(s.sortBy,e);throw new Error("options.sortBy is optional but if defined it must be either an array of string (predicates) or a sorting function")}),r,n)}},v.prototype.getFacetStats=function(e){return this._state.isConjunctiveFacet(e)?F(this.facets,e):this._state.isDisjunctiveFacet(e)?F(this.disjunctiveFacets,e):void 0},v.prototype.getRefinements=function(){var e=this._state,t=this,r=[];return Object.keys(e.facetsRefinements).forEach((function(n){e.facetsRefinements[n].forEach((function(i){r.push(b(e,"facet",n,i,t.facets))}))})),Object.keys(e.facetsExcludes).forEach((function(n){e.facetsExcludes[n].forEach((function(i){r.push(b(e,"exclude",n,i,t.facets))}))})),Object.keys(e.disjunctiveFacetsRefinements).forEach((function(n){e.disjunctiveFacetsRefinements[n].forEach((function(i){r.push(b(e,"disjunctive",n,i,t.disjunctiveFacets))}))})),Object.keys(e.hierarchicalFacetsRefinements).forEach((function(n){e.hierarchicalFacetsRefinements[n].forEach((function(i){r.push(function(e,t,r,n){var i=e.getHierarchicalFacetByName(t),s=e._getHierarchicalFacetSeparator(i),c=r.split(s),u=a(n,(function(e){return e.name===t})),o=c.reduce((function(e,t){var r=e&&a(e.data,(function(e){return e.name===t}));return void 0!==r?r:e}),u),h=o&&o.count||0,f=o&&o.exhaustive||!1,l=o&&o.path||"";return{type:"hierarchical",attributeName:t,name:l,count:h,exhaustive:f}}(e,n,i,t.hierarchicalFacets))}))})),Object.keys(e.numericRefinements).forEach((function(t){var n=e.numericRefinements[t];Object.keys(n).forEach((function(e){n[e].forEach((function(n){r.push({type:"numeric",attributeName:t,name:n,numericValue:n,operator:e})}))}))})),e.tagRefinements.forEach((function(e){r.push({type:"tag",attributeName:"_tags",name:e})})),r},e.exports=v},6571:(e,t,r)=>{"use strict";var n=r(2733),i=r(6732),s=r(2909).escapeFacetValue,a=r(3014),c=r(4728),u=r(317),o=r(1383),h=r(9127),f=r(9228),l=r(3371),m=r(7691),d=r(6938);function p(e,t,r,n){"function"==typeof e.addAlgoliaAgent&&e.addAlgoliaAgent("JS Helper ("+d+")"),this.setClient(e);var i=r||{};i.index=t,this.state=l.make(i),this.recommendState=new h({params:i.recommendState}),this.lastResults=null,this._queryId=0,this._lastQueryIdReceived=-1,this.derivedHelpers=[],this._currentNbQueries=0,this._searchResultsOptions=n}function v(e){if(e<0)throw new Error("Page requested below 0.");return this._change({state:this.state.setPage(e),isPageReset:!1}),this}function g(){return this.state.page}a(p,n),p.prototype.search=function(){return this._search({onlyWithDerivedHelpers:!1}),this},p.prototype.searchOnlyWithDerivedHelpers=function(){return this._search({onlyWithDerivedHelpers:!0}),this},p.prototype.getQuery=function(){var e=this.state;return f._getHitsSearchParams(e)},p.prototype.searchOnce=function(e,t){var r=e?this.state.setQueryParameters(e):this.state,n=f._getQueries(r.index,r),i=this;if(this._currentNbQueries++,this.emit("searchOnce",{state:r}),!t)return this.client.search(n).then((function(e){return i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),{content:new m(r,e.results),state:r,_originalResponse:e}}),(function(e){throw i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),e}));this.client.search(n).then((function(e){i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),t(null,new m(r,e.results),r)})).catch((function(e){i._currentNbQueries--,0===i._currentNbQueries&&i.emit("searchQueueEmpty"),t(e,null,r)}))},p.prototype.findAnswers=function(e){console.warn("[algoliasearch-helper] answers is no longer supported");var t=this.state,r=this.derivedHelpers[0];if(!r)return Promise.resolve([]);var n=r.getModifiedState(t),i=c({attributesForPrediction:e.attributesForPrediction,nbHits:e.nbHits},{params:o(f._getHitsSearchParams(n),["attributesToSnippet","hitsPerPage","restrictSearchableAttributes","snippetEllipsisText"])}),s="search for answers was called, but this client does not have a function client.initIndex(index).findAnswers";if("function"!=typeof this.client.initIndex)throw new Error(s);var a=this.client.initIndex(n.index);if("function"!=typeof a.findAnswers)throw new Error(s);return a.findAnswers(n.query,e.queryLanguages,i)},p.prototype.searchForFacetValues=function(e,t,r,n){var i="function"==typeof this.client.searchForFacetValues,a="function"==typeof this.client.initIndex;if(!i&&!a&&"function"!=typeof this.client.search)throw new Error("search for facet values (searchable) was called, but this client does not have a function client.searchForFacetValues or client.initIndex(index).searchForFacetValues");var c=this.state.setQueryParameters(n||{}),u=c.isDisjunctiveFacet(e),o=f.getSearchForFacetQuery(e,t,r,c);this._currentNbQueries++;var h,l=this;return i?h=this.client.searchForFacetValues([{indexName:c.index,params:o}]):a?h=this.client.initIndex(c.index).searchForFacetValues(o):(delete o.facetName,h=this.client.search([{type:"facet",facet:e,indexName:c.index,params:o}]).then((function(e){return e.results[0]}))),this.emit("searchForFacetValues",{state:c,facet:e,query:t}),h.then((function(t){return l._currentNbQueries--,0===l._currentNbQueries&&l.emit("searchQueueEmpty"),(t=Array.isArray(t)?t[0]:t).facetHits.forEach((function(t){t.escapedValue=s(t.value),t.isRefined=u?c.isDisjunctiveFacetRefined(e,t.escapedValue):c.isFacetRefined(e,t.escapedValue)})),t}),(function(e){throw l._currentNbQueries--,0===l._currentNbQueries&&l.emit("searchQueueEmpty"),e}))},p.prototype.setQuery=function(e){return this._change({state:this.state.resetPage().setQuery(e),isPageReset:!0}),this},p.prototype.clearRefinements=function(e){return this._change({state:this.state.resetPage().clearRefinements(e),isPageReset:!0}),this},p.prototype.clearTags=function(){return this._change({state:this.state.resetPage().clearTags(),isPageReset:!0}),this},p.prototype.addDisjunctiveFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addDisjunctiveFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.addDisjunctiveRefine=function(){return this.addDisjunctiveFacetRefinement.apply(this,arguments)},p.prototype.addHierarchicalFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addHierarchicalFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.addNumericRefinement=function(e,t,r){return this._change({state:this.state.resetPage().addNumericRefinement(e,t,r),isPageReset:!0}),this},p.prototype.addFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().addFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.addRefine=function(){return this.addFacetRefinement.apply(this,arguments)},p.prototype.addFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().addExcludeRefinement(e,t),isPageReset:!0}),this},p.prototype.addExclude=function(){return this.addFacetExclusion.apply(this,arguments)},p.prototype.addTag=function(e){return this._change({state:this.state.resetPage().addTagRefinement(e),isPageReset:!0}),this},p.prototype.removeNumericRefinement=function(e,t,r){return this._change({state:this.state.resetPage().removeNumericRefinement(e,t,r),isPageReset:!0}),this},p.prototype.removeDisjunctiveFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().removeDisjunctiveFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.removeDisjunctiveRefine=function(){return this.removeDisjunctiveFacetRefinement.apply(this,arguments)},p.prototype.removeHierarchicalFacetRefinement=function(e){return this._change({state:this.state.resetPage().removeHierarchicalFacetRefinement(e),isPageReset:!0}),this},p.prototype.removeFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().removeFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.removeRefine=function(){return this.removeFacetRefinement.apply(this,arguments)},p.prototype.removeFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().removeExcludeRefinement(e,t),isPageReset:!0}),this},p.prototype.removeExclude=function(){return this.removeFacetExclusion.apply(this,arguments)},p.prototype.removeTag=function(e){return this._change({state:this.state.resetPage().removeTagRefinement(e),isPageReset:!0}),this},p.prototype.toggleFacetExclusion=function(e,t){return this._change({state:this.state.resetPage().toggleExcludeFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.toggleExclude=function(){return this.toggleFacetExclusion.apply(this,arguments)},p.prototype.toggleRefinement=function(e,t){return this.toggleFacetRefinement(e,t)},p.prototype.toggleFacetRefinement=function(e,t){return this._change({state:this.state.resetPage().toggleFacetRefinement(e,t),isPageReset:!0}),this},p.prototype.toggleRefine=function(){return this.toggleFacetRefinement.apply(this,arguments)},p.prototype.toggleTag=function(e){return this._change({state:this.state.resetPage().toggleTagRefinement(e),isPageReset:!0}),this},p.prototype.nextPage=function(){var e=this.state.page||0;return this.setPage(e+1)},p.prototype.previousPage=function(){var e=this.state.page||0;return this.setPage(e-1)},p.prototype.setCurrentPage=v,p.prototype.setPage=v,p.prototype.setIndex=function(e){return this._change({state:this.state.resetPage().setIndex(e),isPageReset:!0}),this},p.prototype.setQueryParameter=function(e,t){return this._change({state:this.state.resetPage().setQueryParameter(e,t),isPageReset:!0}),this},p.prototype.setState=function(e){return this._change({state:l.make(e),isPageReset:!1}),this},p.prototype.overrideStateWithoutTriggeringChangeEvent=function(e){return this.state=new l(e),this},p.prototype.hasRefinements=function(e){return!!u(this.state.getNumericRefinements(e))||(this.state.isConjunctiveFacet(e)?this.state.isFacetRefined(e):this.state.isDisjunctiveFacet(e)?this.state.isDisjunctiveFacetRefined(e):!!this.state.isHierarchicalFacet(e)&&this.state.isHierarchicalFacetRefined(e))},p.prototype.isExcluded=function(e,t){return this.state.isExcludeRefined(e,t)},p.prototype.isDisjunctiveRefined=function(e,t){return this.state.isDisjunctiveFacetRefined(e,t)},p.prototype.hasTag=function(e){return this.state.isTagRefined(e)},p.prototype.isTagRefined=function(){return this.hasTagRefinements.apply(this,arguments)},p.prototype.getIndex=function(){return this.state.index},p.prototype.getCurrentPage=g,p.prototype.getPage=g,p.prototype.getTags=function(){return this.state.tagRefinements},p.prototype.getRefinements=function(e){var t=[];if(this.state.isConjunctiveFacet(e))this.state.getConjunctiveRefinements(e).forEach((function(e){t.push({value:e,type:"conjunctive"})})),this.state.getExcludeRefinements(e).forEach((function(e){t.push({value:e,type:"exclude"})}));else if(this.state.isDisjunctiveFacet(e)){this.state.getDisjunctiveRefinements(e).forEach((function(e){t.push({value:e,type:"disjunctive"})}))}var r=this.state.getNumericRefinements(e);return Object.keys(r).forEach((function(e){var n=r[e];t.push({value:n,operator:e,type:"numeric"})})),t},p.prototype.getNumericRefinement=function(e,t){return this.state.getNumericRefinement(e,t)},p.prototype.getHierarchicalFacetBreadcrumb=function(e){return this.state.getHierarchicalFacetBreadcrumb(e)},p.prototype._search=function(e){var t=this.state,r=[],n=[];e.onlyWithDerivedHelpers||(n=f._getQueries(t.index,t),r.push({state:t,queriesCount:n.length,helper:this}),this.emit("search",{state:t,results:this.lastResults}));var i=this.derivedHelpers.map((function(e){var n=e.getModifiedState(t),i=n.index?f._getQueries(n.index,n):[];return r.push({state:n,queriesCount:i.length,helper:e}),e.emit("search",{state:n,results:e.lastResults}),i})),s=Array.prototype.concat.apply(n,i),a=this._queryId++;if(this._currentNbQueries++,!s.length)return Promise.resolve({results:[]}).then(this._dispatchAlgoliaResponse.bind(this,r,a));try{this.client.search(s).then(this._dispatchAlgoliaResponse.bind(this,r,a)).catch(this._dispatchAlgoliaError.bind(this,a))}catch(c){this.emit("error",{error:c})}},p.prototype._dispatchAlgoliaResponse=function(e,t,r){var n=this;if(!(t0},p.prototype._change=function(e){var t=e.state,r=e.isPageReset;t!==this.state&&(this.state=t,this.emit("change",{state:this.state,results:this.lastResults,isPageReset:r}))},p.prototype._recommendChange=function(e){var t=e.state;t!==this.recommendState&&(this.recommendState=t)},p.prototype.clearCache=function(){return this.client.clearCache&&this.client.clearCache(),this},p.prototype.setClient=function(e){return this.client===e||("function"==typeof e.addAlgoliaAgent&&e.addAlgoliaAgent("JS Helper ("+d+")"),this.client=e),this},p.prototype.getClient=function(){return this.client},p.prototype.derive=function(e){var t=new i(this,e);return this.derivedHelpers.push(t),t},p.prototype.detachDerivedHelper=function(e){var t=this.derivedHelpers.indexOf(e);if(-1===t)throw new Error("Derived helper already detached");this.derivedHelpers.splice(t,1)},p.prototype.hasPendingRequests=function(){return this._currentNbQueries>0},e.exports=p},8965:e=>{"use strict";e.exports=function(e){return Array.isArray(e)?e.filter(Boolean):[]}},9110:e=>{"use strict";e.exports=function(){return Array.prototype.slice.call(arguments).reduceRight((function(e,t){return Object.keys(Object(t)).forEach((function(r){void 0!==t[r]&&(void 0!==e[r]&&delete e[r],e[r]=t[r])})),e}),{})}},2909:e=>{"use strict";e.exports={escapeFacetValue:function(e){return"string"!=typeof e?e:String(e).replace(/^-/,"\\-")},unescapeFacetValue:function(e){return"string"!=typeof e?e:e.replace(/^\\-/,"-")}}},849:e=>{"use strict";e.exports=function(e,t){if(Array.isArray(e))for(var r=0;r{"use strict";e.exports=function(e,t){if(!Array.isArray(e))return-1;for(var r=0;r{"use strict";var n=r(849);e.exports=function(e,t){var r=(t||[]).map((function(e){return e.split(":")}));return e.reduce((function(e,t){var i=t.split(":"),s=n(r,(function(e){return e[0]===i[0]}));return i.length>1||!s?(e[0].push(i[0]),e[1].push(i[1]),e):(e[0].push(s[0]),e[1].push(s[1]),e)}),[[],[]])}},3014:e=>{"use strict";e.exports=function(e,t){e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}},4843:e=>{"use strict";e.exports=function(e,t){return e.filter((function(r,n){return t.indexOf(r)>-1&&e.indexOf(r)===n}))}},4728:e=>{"use strict";function t(e){return"function"==typeof e||Array.isArray(e)||"[object Object]"===Object.prototype.toString.call(e)}function r(e,n){if(e===n)return e;for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)&&"__proto__"!==i&&"constructor"!==i){var s=n[i],a=e[i];void 0!==a&&void 0===s||(t(a)&&t(s)?e[i]=r(a,s):e[i]="object"==typeof(c=s)&&null!==c?r(Array.isArray(c)?[]:{},c):c)}var c;return e}e.exports=function(e){t(e)||(e={});for(var n=1,i=arguments.length;n{"use strict";e.exports=function(e){return e&&Object.keys(e).length>0}},1383:e=>{"use strict";e.exports=function(e,t){if(null===e)return{};var r,n,i={},s=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}},8601:e=>{"use strict";function t(e,t){if(e!==t){var r=void 0!==e,n=null===e,i=void 0!==t,s=null===t;if(!s&&e>t||n&&i||!r)return 1;if(!n&&e=n.length?s:"desc"===n[i]?-s:s}return e.index-r.index})),i.map((function(e){return e.value}))}},7507:e=>{"use strict";e.exports=function e(t){if("number"==typeof t)return t;if("string"==typeof t)return parseFloat(t);if(Array.isArray(t))return t.map(e);throw new Error("The value should be a number, a parsable string or an array of those.")}},9228:(e,t,r)=>{"use strict";var n=r(4728);function i(e){return Object.keys(e).sort().reduce((function(t,r){return t[r]=e[r],t}),{})}var s={_getQueries:function(e,t){var r=[];return r.push({indexName:e,params:s._getHitsSearchParams(t)}),t.getRefinedDisjunctiveFacets().forEach((function(n){r.push({indexName:e,params:s._getDisjunctiveFacetSearchParams(t,n)})})),t.getRefinedHierarchicalFacets().forEach((function(n){var i=t.getHierarchicalFacetByName(n),a=t.getHierarchicalRefinement(n),c=t._getHierarchicalFacetSeparator(i);if(a.length>0&&a[0].split(c).length>1){var u=a[0].split(c).slice(0,-1).reduce((function(e,t,r){return e.concat({attribute:i.attributes[r],value:0===r?t:[e[e.length-1].value,t].join(c)})}),[]);u.forEach((function(n,a){var c=s._getDisjunctiveFacetSearchParams(t,n.attribute,0===a);function o(e){return i.attributes.some((function(t){return t===e.split(":")[0]}))}var h=(c.facetFilters||[]).reduce((function(e,t){if(Array.isArray(t)){var r=t.filter((function(e){return!o(e)}));r.length>0&&e.push(r)}return"string"!=typeof t||o(t)||e.push(t),e}),[]),f=u[a-1];c.facetFilters=a>0?h.concat(f.attribute+":"+f.value):h.length>0?h:void 0,r.push({indexName:e,params:c})}))}})),r},_getHitsSearchParams:function(e){var t=e.facets.concat(e.disjunctiveFacets).concat(s._getHitsHierarchicalFacetsAttributes(e)).sort(),r=s._getFacetFilters(e),a=s._getNumericFilters(e),c=s._getTagFilters(e),u={facets:t.indexOf("*")>-1?["*"]:t,tagFilters:c};return r.length>0&&(u.facetFilters=r),a.length>0&&(u.numericFilters=a),i(n({},e.getQueryParams(),u))},_getDisjunctiveFacetSearchParams:function(e,t,r){var a=s._getFacetFilters(e,t,r),c=s._getNumericFilters(e,t),u=s._getTagFilters(e),o={hitsPerPage:0,page:0,analytics:!1,clickAnalytics:!1};u.length>0&&(o.tagFilters=u);var h=e.getHierarchicalFacetByName(t);return o.facets=h?s._getDisjunctiveHierarchicalFacetAttribute(e,h,r):t,c.length>0&&(o.numericFilters=c),a.length>0&&(o.facetFilters=a),i(n({},e.getQueryParams(),o))},_getNumericFilters:function(e,t){if(e.numericFilters)return e.numericFilters;var r=[];return Object.keys(e.numericRefinements).forEach((function(n){var i=e.numericRefinements[n]||{};Object.keys(i).forEach((function(e){var s=i[e]||[];t!==n&&s.forEach((function(t){if(Array.isArray(t)){var i=t.map((function(t){return n+e+t}));r.push(i)}else r.push(n+e+t)}))}))})),r},_getTagFilters:function(e){return e.tagFilters?e.tagFilters:e.tagRefinements.join(",")},_getFacetFilters:function(e,t,r){var n=[],i=e.facetsRefinements||{};Object.keys(i).sort().forEach((function(e){(i[e]||[]).slice().sort().forEach((function(t){n.push(e+":"+t)}))}));var s=e.facetsExcludes||{};Object.keys(s).sort().forEach((function(e){(s[e]||[]).sort().forEach((function(t){n.push(e+":-"+t)}))}));var a=e.disjunctiveFacetsRefinements||{};Object.keys(a).sort().forEach((function(e){var r=a[e]||[];if(e!==t&&r&&0!==r.length){var i=[];r.slice().sort().forEach((function(t){i.push(e+":"+t)})),n.push(i)}}));var c=e.hierarchicalFacetsRefinements||{};return Object.keys(c).sort().forEach((function(i){var s=(c[i]||[])[0];if(void 0!==s){var a,u,o=e.getHierarchicalFacetByName(i),h=e._getHierarchicalFacetSeparator(o),f=e._getHierarchicalRootPath(o);if(t===i){if(-1===s.indexOf(h)||!f&&!0===r||f&&f.split(h).length===s.split(h).length)return;f?(u=f.split(h).length-1,s=f):(u=s.split(h).length-2,s=s.slice(0,s.lastIndexOf(h))),a=o.attributes[u]}else u=s.split(h).length-1,a=o.attributes[u];a&&n.push([a+":"+s])}})),n},_getHitsHierarchicalFacetsAttributes:function(e){return e.hierarchicalFacets.reduce((function(t,r){var n=e.getHierarchicalRefinement(r.name)[0];if(!n)return t.push(r.attributes[0]),t;var i=e._getHierarchicalFacetSeparator(r),s=n.split(i).length,a=r.attributes.slice(0,s+1);return t.concat(a)}),[])},_getDisjunctiveHierarchicalFacetAttribute:function(e,t,r){var n=e._getHierarchicalFacetSeparator(t);if(!0===r){var i=e._getHierarchicalRootPath(t),s=0;return i&&(s=i.split(n).length),[t.attributes[s]]}var a=(e.getHierarchicalRefinement(t.name)[0]||"").split(n).length-1;return t.attributes.slice(0,a+1)},getSearchForFacetQuery:function(e,t,r,a){var c=a.isDisjunctiveFacet(e)?a.clearRefinements(e):a,u={facetQuery:t,facetName:e};return"number"==typeof r&&(u.maxFacetHits=r),i(n({},s._getHitsSearchParams(c),u))}};e.exports=s},2208:e=>{"use strict";e.exports=function(e){return null!==e&&/^[a-zA-Z0-9_-]{1,64}$/.test(e)}},6938:e=>{"use strict";e.exports="3.17.0"},3643:function(e){e.exports=function(){"use strict";function e(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function t(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 r(r){for(var n=1;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var r=[],n=!0,i=!1,s=void 0;try{for(var a,c=e[Symbol.iterator]();!(n=(a=c.next()).done)&&(r.push(a.value),!t||r.length!==t);n=!0);}catch(e){i=!0,s=e}finally{try{n||null==c.return||c.return()}finally{if(i)throw s}}return r}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function s(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){c();var t=JSON.stringify(e);return s()[t]})).then((function(e){return Promise.all([e?e.value:t(),void 0!==e])})).then((function(e){var t=i(e,2),n=t[0],s=t[1];return Promise.all([n,s||r.miss(n)])})).then((function(e){return i(e,1)[0]}))},set:function(e,t){return Promise.resolve().then((function(){var i=s();return i[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:t},n().setItem(r,JSON.stringify(i)),t}))},delete:function(e){return Promise.resolve().then((function(){var t=s();delete t[JSON.stringify(e)],n().setItem(r,JSON.stringify(t))}))},clear:function(){return Promise.resolve().then((function(){n().removeItem(r)}))}}}function c(e){var t=s(e.caches),r=t.shift();return void 0===r?{get:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return t().then((function(e){return Promise.all([e,r.miss(e)])})).then((function(e){return i(e,1)[0]}))},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(e,n,i).catch((function(){return c({caches:t}).get(e,n,i)}))},set:function(e,n){return r.set(e,n).catch((function(){return c({caches:t}).set(e,n)}))},delete:function(e){return r.delete(e).catch((function(){return c({caches:t}).delete(e)}))},clear:function(){return r.clear().catch((function(){return c({caches:t}).clear()}))}}}function u(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(r,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},s=JSON.stringify(r);if(s in t)return Promise.resolve(e.serializable?JSON.parse(t[s]):t[s]);var a=n(),c=i&&i.miss||function(){return Promise.resolve()};return a.then((function(e){return c(e)})).then((function(){return a}))},set:function(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function o(e){for(var t=e.length-1;t>0;t--){var r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function h(e,t){return t?(Object.keys(t).forEach((function(r){e[r]=t[r](e)})),e):e}function f(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var d={Read:1,Write:2,Any:3},p=1,v=2,g=3;function y(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;return r(r({},e),{},{status:t,lastUpdate:Date.now()})}function R(e){return"string"==typeof e?{protocol:"https",url:e,accept:d.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||d.Any}}var F="GET",b="POST";function j(e,t){return Promise.all(t.map((function(t){return e.get(t,(function(){return Promise.resolve(y(t))}))}))).then((function(e){var r=e.filter((function(e){return function(e){return e.status===p||Date.now()-e.lastUpdate>12e4}(e)})),n=e.filter((function(e){return function(e){return e.status===g&&Date.now()-e.lastUpdate<=12e4}(e)})),i=[].concat(s(r),s(n));return{getTimeout:function(e,t){return(0===n.length&&0===e?1:n.length+3+e)*t},statelessHosts:i.length>0?i.map((function(e){return R(e)})):t}}))}function P(e,t,n,i){var a=[],c=function(e,t){if(e.method!==F&&(void 0!==e.data||void 0!==t.data)){var n=Array.isArray(e.data)?e.data:r(r({},e.data),t.data);return JSON.stringify(n)}}(n,i),u=function(e,t){var n=r(r({},e.headers),t.headers),i={};return Object.keys(n).forEach((function(e){var t=n[e];i[e.toLowerCase()]=t})),i}(e,i),o=n.method,h=n.method!==F?{}:r(r({},n.data),i.data),f=r(r(r({"x-algolia-agent":e.userAgent.value},e.queryParameters),h),i.queryParameters),l=0,m=function t(r,s){var h=r.pop();if(void 0===h)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:w(a)};var m={data:c,headers:u,method:o,url:_(h,n.path,f),connectTimeout:s(l,e.timeouts.connect),responseTimeout:s(l,i.timeout)},d=function(e){var t={request:m,response:e,host:h,triesLeft:r.length};return a.push(t),t},p={onSuccess:function(e){return function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e)},onRetry:function(n){var i=d(n);return n.isTimedOut&&l++,Promise.all([e.logger.info("Retryable failure",O(i)),e.hostsCache.set(h,y(h,n.isTimedOut?g:v))]).then((function(){return t(r,s)}))},onFail:function(e){throw d(e),function(e,t){var r=e.content,n=e.status,i=r;try{i=JSON.parse(r).message}catch(e){}return function(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}(i,n,t)}(e,w(a))}};return e.requester.send(m).then((function(e){return function(e,t){return function(e){var t=e.status;return e.isTimedOut||function(e){var t=e.isTimedOut,r=e.status;return!t&&!~~r}(e)||2!=~~(t/100)&&4!=~~(t/100)}(e)?t.onRetry(e):2==~~(e.status/100)?t.onSuccess(e):t.onFail(e)}(e,p)}))};return j(e.hostsCache,t).then((function(e){return m(s(e.statelessHosts).reverse(),e.getTimeout)}))}function x(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var r="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(r)&&(t.value="".concat(t.value).concat(r)),t}};return t}function _(e,t,r){var n=E(r),i="".concat(e.protocol,"://").concat(e.url,"/").concat("/"===t.charAt(0)?t.substr(1):t);return n.length&&(i+="?".concat(n)),i}function E(e){return Object.keys(e).map((function(t){return f("%s=%s",t,(r=e[t],"[object Object]"===Object.prototype.toString.call(r)||"[object Array]"===Object.prototype.toString.call(r)?JSON.stringify(e[t]):e[t]));var r})).join("&")}function w(e){return e.map((function(e){return O(e)}))}function O(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return r(r({},e),{},{request:r(r({},e.request),{},{headers:r(r({},e.request.headers),t)})})}var A=function(e){var t=e.appId,n=function(e,t,r){var n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers:function(){return e===l.WithinHeaders?n:{}},queryParameters:function(){return e===l.WithinQueryParameters?n:{}}}}(void 0!==e.authMode?e.authMode:l.WithinHeaders,t,e.apiKey),s=function(e){var t=e.hostsCache,r=e.logger,n=e.requester,s=e.requestsCache,a=e.responsesCache,c=e.timeouts,u=e.userAgent,o=e.hosts,h=e.queryParameters,f={hostsCache:t,logger:r,requester:n,requestsCache:s,responsesCache:a,timeouts:c,userAgent:u,headers:e.headers,queryParameters:h,hosts:o.map((function(e){return R(e)})),read:function(e,t){var r=m(t,f.timeouts.read),n=function(){return P(f,f.hosts.filter((function(e){return!!(e.accept&d.Read)})),e,r)};if(!0!==(void 0!==r.cacheable?r.cacheable:e.cacheable))return n();var s={request:e,mappedRequestOptions:r,transporter:{queryParameters:f.queryParameters,headers:f.headers}};return f.responsesCache.get(s,(function(){return f.requestsCache.get(s,(function(){return f.requestsCache.set(s,n()).then((function(e){return Promise.all([f.requestsCache.delete(s),e])}),(function(e){return Promise.all([f.requestsCache.delete(s),Promise.reject(e)])})).then((function(e){var t=i(e,2);return t[0],t[1]}))}))}),{miss:function(e){return f.responsesCache.set(s,e)}})},write:function(e,t){return P(f,f.hosts.filter((function(e){return!!(e.accept&d.Write)})),e,m(t,f.timeouts.write))}};return f}(r(r({hosts:[{url:"".concat(t,"-dsn.algolia.net"),accept:d.Read},{url:"".concat(t,".algolia.net"),accept:d.Write}].concat(o([{url:"".concat(t,"-1.algolianet.com")},{url:"".concat(t,"-2.algolianet.com")},{url:"".concat(t,"-3.algolianet.com")}]))},e),{},{headers:r(r(r({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:r(r({},n.queryParameters()),e.queryParameters)}));return h({transporter:s,appId:t,addAlgoliaAgent:function(e,t){s.userAgent.add({segment:e,version:t})},clearCache:function(){return Promise.all([s.requestsCache.clear(),s.responsesCache.clear()]).then((function(){}))}},e.methods)},N=function(e){return function(t,r){return t.method===F?e.transporter.read(t,r):e.transporter.write(t,r)}},H=function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return h({transporter:e.transporter,appId:e.appId,indexName:t},r.methods)}},S=function(e){return function(t,n){var i=t.map((function(e){return r(r({},e),{},{params:E(e.params||{})})}));return e.transporter.read({method:b,path:"1/indexes/*/queries",data:{requests:i},cacheable:!0},n)}},T=function(e){return function(t,i){return Promise.all(t.map((function(t){var s=t.params,a=s.facetName,c=s.facetQuery,u=n(s,["facetName","facetQuery"]);return H(e)(t.indexName,{methods:{searchForFacetValues:D}}).searchForFacetValues(a,c,r(r({},i),u))})))}},Q=function(e){return function(t,r,n){return e.transporter.read({method:b,path:f("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n)}},C=function(e){return function(t,r){return e.transporter.read({method:b,path:f("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r)}},D=function(e){return function(t,r,n){return e.transporter.read({method:b,path:f("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n)}},I=1,k=2,q=3,V=function(e){return function(t,n){var i=t.map((function(e){return r(r({},e),{},{threshold:e.threshold||0})}));return e.transporter.read({method:b,path:"1/indexes/*/recommendations",data:{requests:i},cacheable:!0},n)}};function L(e,t,n){var i,s={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:function(e){return new Promise((function(t){var r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return r.setRequestHeader(t,e.headers[t])}));var n,i=function(e,n){return setTimeout((function(){r.abort(),t({status:0,content:n,isTimedOut:!0})}),1e3*e)},s=i(e.connectTimeout,"Connection timeout");r.onreadystatechange=function(){r.readyState>r.OPENED&&void 0===n&&(clearTimeout(s),n=i(e.responseTimeout,"Socket timeout"))},r.onerror=function(){0===r.status&&(clearTimeout(s),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(s),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},logger:(i=q,{debug:function(e,t){return I>=i&&console.debug(e,t),Promise.resolve()},info:function(e,t){return k>=i&&console.info(e,t),Promise.resolve()},error:function(e,t){return console.error(e,t),Promise.resolve()}}),responsesCache:u(),requestsCache:u({serializable:!1}),hostsCache:c({caches:[a({key:"".concat("4.23.3","-").concat(e)}),u()]}),userAgent:x("4.23.3").add({segment:"Browser",version:"lite"}),authMode:l.WithinQueryParameters};return A(r(r(r({},s),n),{},{methods:{search:S,searchForFacetValues:T,multipleQueries:S,multipleSearchForFacetValues:T,customRequest:N,initIndex:function(e){return function(t){return H(e)(t,{methods:{search:C,searchForFacetValues:D,findAnswers:Q}})}},getRecommendations:V}}))}return L.version="4.23.3",L}()},5846:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(6540),i=r(4586);const s=["zero","one","two","few","many","other"];function a(e){return s.filter((t=>e.includes(t)))}const c={locale:"en",pluralForms:a(["one","other"]),select:e=>1===e?"one":"other"};function u(){const{i18n:{currentLocale:e}}=(0,i.A)();return(0,n.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:a(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 o(){const e=u();return{selectMessage:(t,r)=>function(e,t,r){const n=e.split("|");if(1===n.length)return n[0];n.length>r.pluralForms.length&&console.error(`For locale=${r.locale}, a maximum of ${r.pluralForms.length} plural forms are expected (${r.pluralForms.join(",")}), but the message contains ${n.length}: ${e}`);const i=r.select(t),s=r.pluralForms.indexOf(i);return n[Math.min(s,n.length-1)]}(r,t,e)}}},4604:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>O});var n=r(6540),i=r(53),s=r(4103),a=r.n(s),c=r(3643),u=r.n(c),o=r(8193),h=r(5260),f=r(5489),l=r(4070),m=r(5846),d=r(4255),p=r(9532),v=r(9024),g=r(481),y=r(1312),R=r(4586),F=r(8126),b=r(1062),j=r(8511),P=r(1107);const x={searchQueryInput:"searchQueryInput_u2C7",searchVersionInput:"searchVersionInput_m0Ui",searchResultsColumn:"searchResultsColumn_JPFH",algoliaLogo:"algoliaLogo_rT1R",algoliaLogoPathFill:"algoliaLogoPathFill_WdUC",searchResultItem:"searchResultItem_Tv2o",searchResultItemHeading:"searchResultItemHeading_KbCB",searchResultItemPath:"searchResultItemPath_lhe1",searchResultItemSummary:"searchResultItemSummary_AEaO",searchQueryColumn:"searchQueryColumn_RTkw",searchVersionColumn:"searchVersionColumn_ypXd",searchLogoColumn:"searchLogoColumn_rJIA",loadingSpinner:"loadingSpinner_XVxU","loading-spin":"loading-spin_vzvp",loader:"loader_vvXV"};var _=r(4848);function E(e){let{docsSearchVersionsHelpers:t}=e;const r=Object.entries(t.allDocsData).filter((e=>{let[,t]=e;return t.versions.length>1}));return(0,_.jsx)("div",{className:(0,i.A)("col","col--3","padding-left--none",x.searchVersionColumn),children:r.map((e=>{let[n,i]=e;const s=r.length>1?`${n}: `:"";return(0,_.jsx)("select",{onChange:e=>t.setSearchVersion(n,e.target.value),defaultValue:t.searchVersions[n],className:x.searchVersionInput,children:i.versions.map(((e,t)=>(0,_.jsx)("option",{label:`${s}${e.label}`,value:e.name},t)))},n)}))})}function w(){const{i18n:{currentLocale:e}}=(0,R.A)(),{algolia:{appId:t,apiKey:r,indexName:s}}=(0,F.c)(),c=(0,b.C)(),v=function(){const{selectMessage:e}=(0,m.W)();return t=>e(t,(0,y.T)({id:"theme.SearchPage.documentsFound.plurals",description:'Pluralized label for "{count} documents found". 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 document found|{count} documents found"},{count:t}))}(),w=function(){const e=(0,l.Gy)(),[t,r]=(0,n.useState)((()=>Object.entries(e).reduce(((e,t)=>{let[r,n]=t;return{...e,[r]:n.versions[0].name}}),{}))),i=Object.values(e).some((e=>e.versions.length>1));return{allDocsData:e,versioningEnabled:i,searchVersions:t,setSearchVersion:(e,t)=>r((r=>({...r,[e]:t})))}}(),[O,A]=(0,d.b)(),N={items:[],query:null,totalResults:null,totalPages:null,lastPage:null,hasMore:null,loading:null},[H,S]=(0,n.useReducer)(((e,t)=>{switch(t.type){case"reset":return N;case"loading":return{...e,loading:!0};case"update":return O!==t.value.query?e:{...t.value,items:0===t.value.lastPage?t.value.items:e.items.concat(t.value.items)};case"advance":{const t=e.totalPages>e.lastPage+1;return{...e,lastPage:t?e.lastPage+1:e.lastPage,hasMore:t}}default:return e}}),N),T=u()(t,r),Q=a()(T,s,{hitsPerPage:15,advancedSyntax:!0,disjunctiveFacets:["language","docusaurus_tag"]});Q.on("result",(e=>{let{results:{query:t,hits:r,page:n,nbHits:i,nbPages:s}}=e;if(""===t||!Array.isArray(r))return void S({type:"reset"});const a=e=>e.replace(/algolia-docsearch-suggestion--highlight/g,"search-result-match"),u=r.map((e=>{let{url:t,_highlightResult:{hierarchy:r},_snippetResult:n={}}=e;const i=Object.keys(r).map((e=>a(r[e].value)));return{title:i.pop(),url:c(t),summary:n.content?`${a(n.content.value)}...`:"",breadcrumbs:i}}));S({type:"update",value:{items:u,query:t,totalResults:i,totalPages:s,lastPage:n,hasMore:s>n+1,loading:!1}})}));const[C,D]=(0,n.useState)(null),I=(0,n.useRef)(0),k=(0,n.useRef)(o.A.canUseIntersectionObserver&&new IntersectionObserver((e=>{const{isIntersecting:t,boundingClientRect:{y:r}}=e[0];t&&I.current>r&&S({type:"advance"}),I.current=r}),{threshold:1})),q=()=>O?(0,y.T)({id:"theme.SearchPage.existingResultsTitle",message:'Search results for "{query}"',description:"The search page title for non-empty query"},{query:O}):(0,y.T)({id:"theme.SearchPage.emptyResultsTitle",message:"Search the documentation",description:"The search page title for empty query"}),V=(0,p._q)((function(t){void 0===t&&(t=0),Q.addDisjunctiveFacetRefinement("docusaurus_tag","default"),Q.addDisjunctiveFacetRefinement("language",e),Object.entries(w.searchVersions).forEach((e=>{let[t,r]=e;Q.addDisjunctiveFacetRefinement("docusaurus_tag",`docs-${t}-${r}`)})),Q.setQuery(O).setPage(t).search()}));return(0,n.useEffect)((()=>{if(!C)return;const e=k.current;return e?(e.observe(C),()=>e.unobserve(C)):()=>!0}),[C]),(0,n.useEffect)((()=>{S({type:"reset"}),O&&(S({type:"loading"}),setTimeout((()=>{V()}),300))}),[O,w.searchVersions,V]),(0,n.useEffect)((()=>{H.lastPage&&0!==H.lastPage&&V(H.lastPage)}),[V,H.lastPage]),(0,_.jsxs)(j.A,{children:[(0,_.jsxs)(h.A,{children:[(0,_.jsx)("title",{children:(0,g.s)(q())}),(0,_.jsx)("meta",{property:"robots",content:"noindex, follow"})]}),(0,_.jsxs)("div",{className:"container margin-vert--lg",children:[(0,_.jsx)(P.A,{as:"h1",children:q()}),(0,_.jsxs)("form",{className:"row",onSubmit:e=>e.preventDefault(),children:[(0,_.jsx)("div",{className:(0,i.A)("col",x.searchQueryColumn,{"col--9":w.versioningEnabled,"col--12":!w.versioningEnabled}),children:(0,_.jsx)("input",{type:"search",name:"q",className:x.searchQueryInput,placeholder:(0,y.T)({id:"theme.SearchPage.inputPlaceholder",message:"Type your search here",description:"The placeholder for search page input"}),"aria-label":(0,y.T)({id:"theme.SearchPage.inputLabel",message:"Search",description:"The ARIA label for search page input"}),onChange:e=>A(e.target.value),value:O,autoComplete:"off",autoFocus:!0})}),w.versioningEnabled&&(0,_.jsx)(E,{docsSearchVersionsHelpers:w})]}),(0,_.jsxs)("div",{className:"row",children:[(0,_.jsx)("div",{className:(0,i.A)("col","col--8",x.searchResultsColumn),children:!!H.totalResults&&v(H.totalResults)}),(0,_.jsx)("div",{className:(0,i.A)("col","col--4","text--right",x.searchLogoColumn),children:(0,_.jsx)(f.A,{to:"https://www.algolia.com/","aria-label":(0,y.T)({id:"theme.SearchPage.algoliaLabel",message:"Search by Algolia",description:"The ARIA label for Algolia mention"}),children:(0,_.jsx)("svg",{viewBox:"0 0 168 24",className:x.algoliaLogo,children:(0,_.jsxs)("g",{fill:"none",children:[(0,_.jsx)("path",{className:x.algoliaLogoPathFill,d:"M120.925 18.804c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 0 0-1.574-.199 5.7 5.7 0 0 0-.897.069 2.699 2.699 0 0 0-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 0 1-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 0 1-1.471-.636 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 0 1 1.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 0 1 1.82-.185 8.404 8.404 0 0 1 1.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 0 0-.384-.73 1.784 1.784 0 0 0-.724-.493 3.164 3.164 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 0 0-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 0 1 2.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 0 0-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 0 0-.814.24 1.46 1.46 0 0 0-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 0 1 .233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 0 1-1.471-.635 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 0 1 2.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 0 0-.109-.875 1.873 1.873 0 0 0-.384-.731 1.784 1.784 0 0 0-.724-.492 3.165 3.165 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 0 0-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 0 1 2.073-.177zm-8.034-1.271a1.626 1.626 0 0 1-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 0 1-1.128 1.906 4.986 4.986 0 0 1-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 0 1-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 0 1-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 0 1 1.15-1.892 5.133 5.133 0 0 1 1.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 0 1 1.753 1.216 5.644 5.644 0 0 1 1.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 0 0-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 0 1-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 0 1-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 0 1 2.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17zM6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 0 0-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 0 1-.582-.271 13.67 13.67 0 0 1-.55-.287 4.275 4.275 0 0 1-.567-.351 6.92 6.92 0 0 1-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 0 1-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 0 0-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 0 0-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 0 0-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 0 1-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z"}),(0,_.jsx)("path",{fill:"#5468FF",d:"M78.988.938h16.594a2.968 2.968 0 0 1 2.966 2.966V20.5a2.967 2.967 0 0 1-2.966 2.964H78.988a2.967 2.967 0 0 1-2.966-2.964V3.897A2.961 2.961 0 0 1 78.988.938z"}),(0,_.jsx)("path",{fill:"white",d:"M89.632 5.967v-.772a.978.978 0 0 0-.978-.977h-2.28a.978.978 0 0 0-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 0 1 1.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 0 0-1.382 0l-.465.465a.973.973 0 0 0 0 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 0 0-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 0 1-4.49-4.482 4.488 4.488 0 0 1 4.49-4.482 4.488 4.488 0 0 1 4.489 4.482 4.484 4.484 0 0 1-4.49 4.482m0-10.85a6.363 6.363 0 1 0 0 12.729 6.37 6.37 0 0 0 6.372-6.368 6.358 6.358 0 0 0-6.371-6.36"})]})})})})]}),H.items.length>0?(0,_.jsx)("main",{children:H.items.map(((e,t)=>{let{title:r,url:n,summary:s,breadcrumbs:a}=e;return(0,_.jsxs)("article",{className:x.searchResultItem,children:[(0,_.jsx)(P.A,{as:"h2",className:x.searchResultItemHeading,children:(0,_.jsx)(f.A,{to:n,dangerouslySetInnerHTML:{__html:r}})}),a.length>0&&(0,_.jsx)("nav",{"aria-label":"breadcrumbs",children:(0,_.jsx)("ul",{className:(0,i.A)("breadcrumbs",x.searchResultItemPath),children:a.map(((e,t)=>(0,_.jsx)("li",{className:"breadcrumbs__item",dangerouslySetInnerHTML:{__html:e}},t)))})}),s&&(0,_.jsx)("p",{className:x.searchResultItemSummary,dangerouslySetInnerHTML:{__html:s}})]},t)}))}):[O&&!H.loading&&(0,_.jsx)("p",{children:(0,_.jsx)(y.A,{id:"theme.SearchPage.noResultsText",description:"The paragraph for empty search result",children:"No results were found"})},"no-results"),!!H.loading&&(0,_.jsx)("div",{className:x.loadingSpinner},"spinner")],H.hasMore&&(0,_.jsx)("div",{className:x.loader,ref:D,children:(0,_.jsx)(y.A,{id:"theme.SearchPage.fetchingNewResults",description:"The paragraph for fetching new search results",children:"Fetching new results..."})})]})]})}function O(){return(0,_.jsx)(v.e3,{className:"search-page-wrapper",children:(0,_.jsx)(w,{})})}}}]); \ No newline at end of file diff --git a/assets/js/1a4e3797.46e3e239.js.LICENSE.txt b/assets/js/1a4e3797.46e3e239.js.LICENSE.txt deleted file mode 100644 index 92dc1757f..000000000 --- a/assets/js/1a4e3797.46e3e239.js.LICENSE.txt +++ /dev/null @@ -1 +0,0 @@ -/*! algoliasearch-lite.umd.js | 4.23.3 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */ diff --git a/assets/js/1ac1bfe9.0d260689.js b/assets/js/1ac1bfe9.0d260689.js deleted file mode 100644 index 4c2803c86..000000000 --- a/assets/js/1ac1bfe9.0d260689.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8811],{7348:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>u,frontMatter:()=>t,metadata:()=>l,toc:()=>c});var s=i(4848),r=i(8453);const t={sidebar_position:6},o="Plugins",l={id:"guide/walkthrough/plugins",title:"Plugins",description:"TLDR: Plugins help reduce code repetition and are installable via sern plugins. Put them onto the plugins field of a command/event module.",source:"@site/docs/guide/walkthrough/plugins.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/plugins",permalink:"/docs/guide/walkthrough/plugins",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/plugins.md",tags:[],version:"current",sidebarPosition:6,frontMatter:{sidebar_position:6},sidebar:"tutorialSidebar",previous:{title:"First Event Module",permalink:"/docs/guide/walkthrough/first-event"},next:{title:"Services",permalink:"/docs/guide/walkthrough/services"}},d={},c=[{value:"Installing",id:"installing",level:2},{value:"\u2517|\uff40O\u2032|\u251b perfect, your first plugin!",id:"o-perfect-your-first-plugin",level:4},{value:"Creating your own plugins",id:"creating-your-own-plugins",level:2},{value:"The controller object",id:"the-controller-object",level:3},{value:"Init Plugins",id:"init-plugins",level:2},{value:"Event Plugins",id:"event-plugins",level:2}];function a(e){const n={admonition:"admonition",br:"br",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"plugins",children:"Plugins"}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsxs)(n.p,{children:["TLDR: Plugins help reduce code repetition and are installable via ",(0,s.jsx)(n.code,{children:"sern plugins"}),". Put them onto the plugins field of a command/event module."]})}),"\n",(0,s.jsx)(n.h2,{id:"installing",children:"Installing"}),"\n",(0,s.jsx)(n.p,{children:"Chances are, you just want your bot to work. Plugins can preprocess and create reusable conditions for modules."}),"\n",(0,s.jsx)(n.p,{children:"run:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"sern plugins\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Install your favorite(s) (or the ones that look the coolest). In my imaginary mind, I installed the ownerOnly plugin.\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["This should install in ",(0,s.jsx)(n.code,{children:"plugins"})," directory in ",(0,s.jsx)(n.code,{children:"src"}),"."]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.li,{children:"Some plugins only work with specific types. Most are targeted towards slash / both modules."}),"\n",(0,s.jsx)(n.li,{children:"Add to your module."}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",children:"import { commandModule, CommandType } from '@sern/handler'\nimport { ownerOnly } from '../plugins'\n\nexport default commandModule({ \n type: CommandType.Both,\n plugins: [ownerOnly(['182326315813306368')],\n description: 'ping command',\n execute: (ctx) => {\n ctx.reply('hello, owner');\n }\n})\n\n"})}),"\n",(0,s.jsx)(n.h4,{id:"o-perfect-your-first-plugin",children:"\u2517|\uff40O\u2032|\u251b perfect, your first plugin!"}),"\n",(0,s.jsx)(n.h2,{id:"creating-your-own-plugins",children:"Creating your own plugins"}),"\n",(0,s.jsx)(n.p,{children:"The controller determines in plugins whether to continue or fail."}),"\n",(0,s.jsx)(n.h3,{id:"the-controller-object",children:"The controller object"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-typescript",children:"export interface Controller {\n next: () => Ok;\n stop: () => Err;\n}\n"})}),"\n",(0,s.jsx)(n.h2,{id:"init-plugins",children:"Init Plugins"}),"\n",(0,s.jsxs)(n.p,{children:["Init plugins modify how commands are loaded or do preprocessing.\nAn instance of the above object is passed into every plugin. ",(0,s.jsx)(n.br,{}),"\nThis controls whether a module is stored into sern. ",(0,s.jsx)(n.br,{})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-typescript",children:"import { CommandInitPlugin } from '@sern/handler'\nimport path from 'path'\nexport const inDir = (dir: string) => {\n return CommandInitPlugin(({ module, absPath }) => {\n if(path.dirname(absPath) !== dir) {\n console.log(+new Date(), `${module.name} is not in the correct directory!`);\n return controller.stop()\n }\n console.log(+new Date(), `${module.name} is in the correct directory!`);\n return controller.next(); //continue\n });\n}\n\n"})}),"\n",(0,s.jsxs)(n.p,{children:["Above, this simple plugin logs that the module has been loaded along with a timestamp. ",(0,s.jsx)(n.br,{})]}),"\n",(0,s.jsx)(n.h2,{id:"event-plugins",children:"Event Plugins"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.img,{alt:"control-plugins",src:i(3478).A+""})," ",(0,s.jsx)(n.br,{})]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"An event is emitted by discord.js."}),"\n",(0,s.jsxs)(n.li,{children:["This event is passed to all plugins (",(0,s.jsx)(n.strong,{children:"in order!!"}),"),"]}),"\n",(0,s.jsx)(n.li,{children:"If all are successful,"}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["The command is executed. Calling ",(0,s.jsx)(n.code,{children:"controller.stop()"})," notifies sern that this command should not be run,\nand command is ignored."]}),"\n",(0,s.jsx)(n.p,{children:"Can you predict the behavior of this command?"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Before loading into sern, this command module will check if this module is in the correct directory ",(0,s.jsx)(n.code,{children:"other"}),"."]}),"\n",(0,s.jsxs)(n.li,{children:["Before an event occurs, this command module will check if the user has the id ",(0,s.jsx)(n.code,{children:"182326315813306368"}),"."]}),"\n"]}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsx)(n.p,{children:"Event Plugins are good for filtering, preconditions, parsing."})}),"\n",(0,s.jsxs)(n.p,{children:["If all plugins return ",(0,s.jsx)(n.code,{children:"controller.next()"}),", this command replies ",(0,s.jsx)(n.code,{children:"Pong \ud83c\udfd3"})]})]})}function u(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},3478:(e,n,i)=>{i.d(n,{A:()=>s});const s=i.p+"assets/images/eventplugins.drawio-f22ee78041e60a62a45024f542a2b104.svg"},8453:(e,n,i)=>{i.d(n,{R:()=>o,x:()=>l});var s=i(6540);const r={},t=s.createContext(r);function o(e){const n=s.useContext(t);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),s.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1adeaf48.14b0065c.js b/assets/js/1adeaf48.14b0065c.js deleted file mode 100644 index 73660680a..000000000 --- a/assets/js/1adeaf48.14b0065c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9245],{4885:e=>{e.exports=JSON.parse('{"label":"branding","permalink":"/blog/tags/branding","allTagsPath":"/blog/tags","count":1,"unlisted":false}')}}]); \ No newline at end of file diff --git a/assets/js/1aef51bd.5eac930b.js b/assets/js/1aef51bd.5eac930b.js deleted file mode 100644 index 8dc68d928..000000000 --- a/assets/js/1aef51bd.5eac930b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2956],{8617:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>u,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var o=t(4848),s=t(8453);const r={sidebar_position:9},i="Conclusion",a={id:"guide/walkthrough/conclusion",title:"Conclusion",description:"If you reached this far, thank you for reading! We hope you have learned the necessities you need",source:"@site/docs/guide/walkthrough/conclusion.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/conclusion",permalink:"/docs/guide/walkthrough/conclusion",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/conclusion.md",tags:[],version:"current",sidebarPosition:9,frontMatter:{sidebar_position:9},sidebar:"tutorialSidebar",previous:{title:"The SernEmitter class",permalink:"/docs/guide/walkthrough/sern-emitter"},next:{title:"Good to know",permalink:"/docs/guide/walkthrough/good-to-know"}},u={},c=[];function d(e){const n={a:"a",h1:"h1",img:"img",p:"p",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"conclusion",children:"Conclusion"}),"\n",(0,o.jsxs)(n.p,{children:["If you reached this far, thank you for reading! We hope you have learned the necessities you need\nto create a bot with the sern framework. If you have any other questions, bugs, feature requests, concerns, please join our\n",(0,o.jsx)(n.a,{href:"https://sern.dev/discord",children:"community server"}),", and we'll be glad to answer your questions."]}),"\n",(0,o.jsx)(n.p,{children:(0,o.jsx)(n.img,{src:t(8165).A+"",width:"830",height:"455"})})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},8165:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/paperlogo-41a5e76b2d3249b59105ee88f01f202b.png"},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var o=t(6540);const s={},r=o.createContext(s);function i(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1b0c702f.54a9c869.js b/assets/js/1b0c702f.54a9c869.js deleted file mode 100644 index 13ce876a6..000000000 --- a/assets/js/1b0c702f.54a9c869.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9488],{6446:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>h,frontMatter:()=>l,metadata:()=>t,toc:()=>a});var i=r(4848),s=r(8453);const l={id:"DefaultLogging",title:"Class: DefaultLogging",sidebar_label:"DefaultLogging",sidebar_position:0,custom_edit_url:null},d=void 0,t={id:"api/classes/DefaultLogging",title:"Class: DefaultLogging",description:"Since",source:"@site/docs/api/classes/DefaultLogging.md",sourceDirName:"api/classes",slug:"/api/classes/DefaultLogging",permalink:"/docs/api/classes/DefaultLogging",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DefaultLogging",title:"Class: DefaultLogging",sidebar_label:"DefaultLogging",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DefaultErrorHandling",permalink:"/docs/api/classes/DefaultErrorHandling"},next:{title:"DefaultModuleManager",permalink:"/docs/api/classes/DefaultModuleManager"}},c={},a=[{value:"Implements",id:"implements",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Returns",id:"returns",level:4},{value:"Methods",id:"methods",level:2},{value:"date",id:"date",level:3},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"debug",id:"debug",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Implementation of",id:"implementation-of",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"error",id:"error",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-3",level:4},{value:"Implementation of",id:"implementation-of-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"info",id:"info",level:3},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-4",level:4},{value:"Implementation of",id:"implementation-of-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"warning",id:"warning",level:3},{value:"Parameters",id:"parameters-3",level:4},{value:"Returns",id:"returns-5",level:4},{value:"Implementation of",id:"implementation-of-3",level:4},{value:"Defined in",id:"defined-in-4",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"Since"})})}),"\n",(0,i.jsx)(n.p,{children:"2.0.0\nVersion 4.0.0 will internalize this api. Please refrain from using ModuleStore!"}),"\n",(0,i.jsx)(n.h2,{id:"implements",children:"Implements"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:(0,i.jsx)(n.code,{children:"Logging"})})}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"constructors",children:"Constructors"}),"\n",(0,i.jsx)(n.h3,{id:"constructor",children:"constructor"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"new DefaultLogging"}),"(): ",(0,i.jsx)(n.a,{href:"/docs/api/classes/DefaultLogging",children:(0,i.jsx)(n.code,{children:"DefaultLogging"})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/classes/DefaultLogging",children:(0,i.jsx)(n.code,{children:"DefaultLogging"})})}),"\n",(0,i.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,i.jsx)(n.h3,{id:"date",children:"date"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"date"}),"(): ",(0,i.jsx)(n.code,{children:"Date"})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"Date"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/logger.ts#L9",children:"src/core/structures/services/logger.ts:9"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"debug",children:"debug"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"debug"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})})})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"implementation-of",children:"Implementation of"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:"Logging"}),".",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging#debug",children:"debug"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/logger.ts#L10",children:"src/core/structures/services/logger.ts:10"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"error",children:"error"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"error"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})})})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"implementation-of-1",children:"Implementation of"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:"Logging"}),".",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging#error",children:"error"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/logger.ts#L14",children:"src/core/structures/services/logger.ts:14"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"info",children:"info"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"info"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})})})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-4",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"implementation-of-2",children:"Implementation of"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:"Logging"}),".",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging#info",children:"info"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/logger.ts#L18",children:"src/core/structures/services/logger.ts:18"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"warning",children:"warning"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"warning"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters-3",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})})})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-5",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"implementation-of-3",children:"Implementation of"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:"Logging"}),".",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging#warning",children:"warning"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/logger.ts#L22",children:"src/core/structures/services/logger.ts:22"})})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>d,x:()=>t});var i=r(6540);const s={},l=i.createContext(s);function d(e){const n=i.useContext(l);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:d(e.components),i.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1c127a4d.41c1b2bf.js b/assets/js/1c127a4d.41c1b2bf.js deleted file mode 100644 index 6ee62065a..000000000 --- a/assets/js/1c127a4d.41c1b2bf.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1054],{1253:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>h,frontMatter:()=>l,metadata:()=>s,toc:()=>a});var t=r(4848),i=r(8453);const l={id:"ErrorHandling",title:"Interface: ErrorHandling",sidebar_label:"ErrorHandling",sidebar_position:0,custom_edit_url:null},d=void 0,s={id:"api/interfaces/ErrorHandling",title:"Interface: ErrorHandling",description:"Since",source:"@site/docs/api/interfaces/ErrorHandling.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ErrorHandling",permalink:"/docs/api/interfaces/ErrorHandling",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ErrorHandling",title:"Interface: ErrorHandling",sidebar_label:"ErrorHandling",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Emitter",permalink:"/docs/api/interfaces/Emitter"},next:{title:"EventModuleDefs",permalink:"/docs/api/interfaces/EventModuleDefs"}},c={},a=[{value:"Implemented by",id:"implemented-by",level:2},{value:"Methods",id:"methods",level:2},{value:"crash",id:"crash",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"updateAlive",id:"updatealive",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-1",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.p,{children:(0,t.jsx)(n.strong,{children:(0,t.jsx)(n.code,{children:"Since"})})}),"\n",(0,t.jsx)(n.p,{children:"2.0.0"}),"\n",(0,t.jsx)(n.h2,{id:"implemented-by",children:"Implemented by"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"/docs/api/classes/DefaultErrorHandling",children:(0,t.jsx)(n.code,{children:"DefaultErrorHandling"})})}),"\n"]}),"\n",(0,t.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,t.jsx)(n.h3,{id:"crash",children:"crash"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 ",(0,t.jsx)(n.strong,{children:"crash"}),"(",(0,t.jsx)(n.code,{children:"err"}),"): ",(0,t.jsx)(n.code,{children:"never"})]}),"\n",(0,t.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"err"})}),(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"Error"})})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.code,{children:"never"})}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.strong,{children:(0,t.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,t.jsx)(n.p,{children:"Version 4 will remove this method"}),"\n",(0,t.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/error-handling.ts#L9",children:"src/core/contracts/error-handling.ts:9"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"updatealive",children:"updateAlive"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 ",(0,t.jsx)(n.strong,{children:"updateAlive"}),"(",(0,t.jsx)(n.code,{children:"error"}),"): ",(0,t.jsx)(n.code,{children:"void"})]}),"\n",(0,t.jsx)(n.p,{children:"A function that is called on every throw."}),"\n",(0,t.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"error"})}),(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"Error"})})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.code,{children:"void"})}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/error-handling.ts#L14",children:"src/core/contracts/error-handling.ts:14"})})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(o,{...e})}):o(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>d,x:()=>s});var t=r(6540);const i={},l=t.createContext(i);function d(e){const n=t.useContext(l);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:d(e.components),t.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1f391b9e.1e64a77c.js b/assets/js/1f391b9e.1e64a77c.js deleted file mode 100644 index aefa9e298..000000000 --- a/assets/js/1f391b9e.1e64a77c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6061],{7973:(e,n,t)=>{t.r(n),t.d(n,{default:()=>u});t(6540);var i=t(53),s=t(9024),a=t(7559),l=t(8511),r=t(8645),c=t(7763),o=t(996);const d={mdxPageWrapper:"mdxPageWrapper_j9I6"};var m=t(4848);function u(e){const{content:n}=e,{metadata:{title:t,description:u,frontMatter:f,unlisted:v},assets:h}=n,{keywords:g,wrapperClassName:x,hide_table_of_contents:p}=f,j=h.image??f.image;return(0,m.jsx)(s.e3,{className:(0,i.A)(x??a.G.wrapper.mdxPages,a.G.page.mdxPage),children:(0,m.jsxs)(l.A,{children:[(0,m.jsx)(s.be,{title:t,description:u,keywords:g,image:j}),(0,m.jsx)("main",{className:"container container--fluid margin-vert--lg",children:(0,m.jsxs)("div",{className:(0,i.A)("row",d.mdxPageWrapper),children:[(0,m.jsxs)("div",{className:(0,i.A)("col",!p&&"col--8"),children:[v&&(0,m.jsx)(o.A,{}),(0,m.jsx)("article",{children:(0,m.jsx)(r.A,{children:(0,m.jsx)(n,{})})})]}),!p&&n.toc.length>0&&(0,m.jsx)("div",{className:"col col--2",children:(0,m.jsx)(c.A,{toc:n.toc,minHeadingLevel:f.toc_min_heading_level,maxHeadingLevel:f.toc_max_heading_level})})]})})]})})}},7763:(e,n,t)=>{t.d(n,{A:()=>o});t(6540);var i=t(53),s=t(5195);const a={tableOfContents:"tableOfContents_bqdL",docItemContainer:"docItemContainer_F8PC"};var l=t(4848);const r="table-of-contents__link toc-highlight",c="table-of-contents__link--active";function o(e){let{className:n,...t}=e;return(0,l.jsx)("div",{className:(0,i.A)(a.tableOfContents,"thin-scrollbar",n),children:(0,l.jsx)(s.A,{...t,linkClassName:r,linkActiveClassName:c})})}},5195:(e,n,t)=>{t.d(n,{A:()=>h});var i=t(6540),s=t(6342);function a(e){const n=e.map((e=>({...e,parentIndex:-1,children:[]}))),t=Array(7).fill(-1);n.forEach(((e,n)=>{const i=t.slice(2,e.level);e.parentIndex=Math.max(...i),t[e.level]=n}));const i=[];return n.forEach((e=>{const{parentIndex:t,...s}=e;t>=0?n[t].children.push(s):i.push(s)})),i}function l(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:i}=e;return n.flatMap((e=>{const n=l({toc:e.children,minHeadingLevel:t,maxHeadingLevel:i});return function(e){return e.level>=t&&e.level<=i}(e)?[{...e,children:n}]:n}))}function r(e){const n=e.getBoundingClientRect();return n.top===n.bottom?r(e.parentNode):n}function c(e,n){let{anchorTopOffset:t}=n;const i=e.find((e=>r(e).top>=t));if(i){return function(e){return e.top>0&&e.bottom{e.current=n?0:document.querySelector(".navbar").clientHeight}),[n]),e}function d(e){const n=(0,i.useRef)(void 0),t=o();(0,i.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:i,linkActiveClassName:s,minHeadingLevel:a,maxHeadingLevel:l}=e;function r(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(i),r=function(e){let{minHeadingLevel:n,maxHeadingLevel:t}=e;const i=[];for(let s=n;s<=t;s+=1)i.push(`h${s}.anchor`);return Array.from(document.querySelectorAll(i.join()))}({minHeadingLevel:a,maxHeadingLevel:l}),o=c(r,{anchorTopOffset:t.current}),d=e.find((e=>o&&o.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,t){t?(n.current&&n.current!==e&&n.current.classList.remove(s),e.classList.add(s),n.current=e):e.classList.remove(s)}(e,e===d)}))}return document.addEventListener("scroll",r),document.addEventListener("resize",r),r(),()=>{document.removeEventListener("scroll",r),document.removeEventListener("resize",r)}}),[e,t])}var m=t(5489),u=t(4848);function f(e){let{toc:n,className:t,linkClassName:i,isChild:s}=e;return n.length?(0,u.jsx)("ul",{className:s?void 0:t,children:n.map((e=>(0,u.jsxs)("li",{children:[(0,u.jsx)(m.A,{to:`#${e.id}`,className:i??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,u.jsx)(f,{isChild:!0,toc:e.children,className:t,linkClassName:i})]},e.id)))}):null}const v=i.memo(f);function h(e){let{toc:n,className:t="table-of-contents table-of-contents__left-border",linkClassName:r="table-of-contents__link",linkActiveClassName:c,minHeadingLevel:o,maxHeadingLevel:m,...f}=e;const h=(0,s.p)(),g=o??h.tableOfContents.minHeadingLevel,x=m??h.tableOfContents.maxHeadingLevel,p=function(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:s}=e;return(0,i.useMemo)((()=>l({toc:a(n),minHeadingLevel:t,maxHeadingLevel:s})),[n,t,s])}({toc:n,minHeadingLevel:g,maxHeadingLevel:x});return d((0,i.useMemo)((()=>{if(r&&c)return{linkClassName:r,linkActiveClassName:c,minHeadingLevel:g,maxHeadingLevel:x}}),[r,c,g,x])),(0,u.jsx)(v,{toc:p,className:t,linkClassName:r,...f})}},996:(e,n,t)=>{t.d(n,{A:()=>f});t(6540);var i=t(53),s=t(1312),a=t(5260),l=t(4848);function r(){return(0,l.jsx)(s.A,{id:"theme.unlistedContent.title",description:"The unlisted content banner title",children:"Unlisted page"})}function c(){return(0,l.jsx)(s.A,{id:"theme.unlistedContent.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function o(){return(0,l.jsx)(a.A,{children:(0,l.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}var d=t(7559),m=t(7293);function u(e){let{className:n}=e;return(0,l.jsx)(m.A,{type:"caution",title:(0,l.jsx)(r,{}),className:(0,i.A)(n,d.G.common.unlistedBanner),children:(0,l.jsx)(c,{})})}function f(e){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(o,{}),(0,l.jsx)(u,{...e})]})}},4428:(e,n,t)=>{t.d(n,{A:()=>c});var i=t(6540),s=t(2303),a=t(6846),l=t(3717),r=t(4848);function c(e){let{children:n,...t}=e;const c=(0,s.A)(),o=function(e){return i.Children.toArray(e).some((e=>(0,i.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(n),d="string"==typeof o?l.A:a.A;return(0,r.jsx)(d,{...t,children:o},String(c))}}}]); \ No newline at end of file diff --git a/assets/js/2237.1c63dc97.js b/assets/js/2237.1c63dc97.js deleted file mode 100644 index 7478c4302..000000000 --- a/assets/js/2237.1c63dc97.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2237],{3363:(e,t,n)=>{n.d(t,{A:()=>a});n(6540);var i=n(53),s=n(1312),o=n(1107),r=n(4848);function a(e){let{className:t}=e;return(0,r.jsx)("main",{className:(0,i.A)("container margin-vert--xl",t),children:(0,r.jsx)("div",{className:"row",children:(0,r.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,r.jsx)(o.A,{as:"h1",className:"hero__title",children:(0,r.jsx)(s.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,r.jsx)("p",{children:(0,r.jsx)(s.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,r.jsx)("p",{children:(0,r.jsx)(s.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"Please contact the owner of the site that linked you to the original URL and let them know their link is broken."})})]})})})}},2237:(e,t,n)=>{n.r(t),n.d(t,{default:()=>l});n(6540);var i=n(1312),s=n(9024),o=n(8511),r=n(3363),a=n(4848);function l(){const e=(0,i.T)({id:"theme.NotFound.title",message:"Page Not Found"});return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(s.be,{title:e}),(0,a.jsx)(o.A,{children:(0,a.jsx)(r.A,{})})]})}}}]); \ No newline at end of file diff --git a/assets/js/26f1f3a5.45e59cc6.js b/assets/js/26f1f3a5.45e59cc6.js deleted file mode 100644 index c4871f27f..000000000 --- a/assets/js/26f1f3a5.45e59cc6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1863],{1938:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>t,metadata:()=>d,toc:()=>c});var s=r(4848),i=r(8453);const t={id:"PayloadType",title:"Enumeration: PayloadType",sidebar_label:"PayloadType",sidebar_position:0,custom_edit_url:null},a=void 0,d={id:"api/enums/PayloadType",title:"Enumeration: PayloadType",description:"Enumeration Members",source:"@site/docs/api/enums/PayloadType.md",sourceDirName:"api/enums",slug:"/api/enums/PayloadType",permalink:"/docs/api/enums/PayloadType",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"PayloadType",title:"Enumeration: PayloadType",sidebar_label:"PayloadType",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"EventType",permalink:"/docs/api/enums/EventType"},next:{title:"PluginType",permalink:"/docs/api/enums/PluginType"}},l={},c=[{value:"Enumeration Members",id:"enumeration-members",level:2},{value:"Failure",id:"failure",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"Success",id:"success",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"Warning",id:"warning",level:3},{value:"Defined in",id:"defined-in-2",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"enumeration-members",children:"Enumeration Members"}),"\n",(0,s.jsx)(n.h3,{id:"failure",children:"Failure"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"Failure"})," = ",(0,s.jsx)(n.code,{children:'"failure"'})]}),"\n",(0,s.jsx)(n.p,{children:"The PayloadType for a SernEmitter failure event"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L98",children:"src/core/structures/enums.ts:98"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"success",children:"Success"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"Success"})," = ",(0,s.jsx)(n.code,{children:'"success"'})]}),"\n",(0,s.jsx)(n.p,{children:"The PayloadType for a SernEmitter success event"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L94",children:"src/core/structures/enums.ts:94"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"warning",children:"Warning"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"Warning"})," = ",(0,s.jsx)(n.code,{children:'"warning"'})]}),"\n",(0,s.jsx)(n.p,{children:"The PayloadType for a SernEmitter warning event"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L102",children:"src/core/structures/enums.ts:102"})})]})}function u(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>a,x:()=>d});var s=r(6540);const i={},t=s.createContext(i);function a(e){const n=s.useContext(t);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/295686f2.49d1bd10.js b/assets/js/295686f2.49d1bd10.js deleted file mode 100644 index 388c4fcd0..000000000 --- a/assets/js/295686f2.49d1bd10.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3495],{2669:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>s,metadata:()=>l,toc:()=>o});var r=i(4848),d=i(8453);const s={id:"ContextMenuUser",title:"Interface: ContextMenuUser",sidebar_label:"ContextMenuUser",sidebar_position:0,custom_edit_url:null},t=void 0,l={id:"api/interfaces/ContextMenuUser",title:"Interface: ContextMenuUser",description:"Hierarchy",source:"@site/docs/api/interfaces/ContextMenuUser.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ContextMenuUser",permalink:"/docs/api/interfaces/ContextMenuUser",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ContextMenuUser",title:"Interface: ContextMenuUser",sidebar_label:"ContextMenuUser",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ContextMenuMsg",permalink:"/docs/api/interfaces/ContextMenuMsg"},next:{title:"ControlPlugin",permalink:"/docs/api/interfaces/ControlPlugin"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Module"})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"ContextMenuUser"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.description"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"ctx"}),": ",(0,r.jsx)(n.code,{children:"UserContextMenuCommandInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">) => ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"ctx"}),"): ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"ctx"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"UserContextMenuCommandInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"unknown"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.execute"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L55",children:"src/types/core-modules.ts:55"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.name"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"onEvent"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,r.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"plugins"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,r.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/CommandType#ctxuser",children:(0,r.jsx)(n.code,{children:"CtxUser"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.type"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L54",children:"src/types/core-modules.ts:54"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>l});var r=i(6540);const d={},s=r.createContext(d);function t(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:t(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2caf5b7a.b4fa0d12.js b/assets/js/2caf5b7a.b4fa0d12.js deleted file mode 100644 index aa84b9d49..000000000 --- a/assets/js/2caf5b7a.b4fa0d12.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7450],{3343:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>s,default:()=>h,frontMatter:()=>c,metadata:()=>o,toc:()=>t});var d=i(4848),r=i(8453);const c={id:"SernSubCommandData",title:"Interface: SernSubCommandData",sidebar_label:"SernSubCommandData",sidebar_position:0,custom_edit_url:null},s=void 0,o={id:"api/interfaces/SernSubCommandData",title:"Interface: SernSubCommandData",description:"Hierarchy",source:"@site/docs/api/interfaces/SernSubCommandData.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernSubCommandData",permalink:"/docs/api/interfaces/SernSubCommandData",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernSubCommandData",title:"Interface: SernSubCommandData",sidebar_label:"SernSubCommandData",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernEventsMapping",permalink:"/docs/api/interfaces/SernEventsMapping"},next:{title:"SernSubCommandGroupData",permalink:"/docs/api/interfaces/SernSubCommandGroupData"}},l={},t=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"description_localizations",id:"description_localizations",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"name_localizations",id:"name_localizations",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"options",id:"options",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"required",id:"required",level:3},{value:"Inherited from",id:"inherited-from-4",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-6",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"APIApplicationCommandOptionBase"}),"<",(0,d.jsx)(n.code,{children:"ApplicationCommandOptionType.Subcommand"}),">"]}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"SernSubCommandData"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"APIApplicationCommandOptionBase.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:7"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"description_localizations",children:"description_localizations"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description_localizations"}),": ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Record"}),"<",(0,d.jsx)(n.code,{children:'"id"'})," | ",(0,d.jsx)(n.code,{children:'"en-US"'})," | ",(0,d.jsx)(n.code,{children:'"en-GB"'})," | ",(0,d.jsx)(n.code,{children:'"bg"'})," | ",(0,d.jsx)(n.code,{children:'"zh-CN"'})," | ",(0,d.jsx)(n.code,{children:'"zh-TW"'})," | ",(0,d.jsx)(n.code,{children:'"hr"'})," | ",(0,d.jsx)(n.code,{children:'"cs"'})," | ",(0,d.jsx)(n.code,{children:'"da"'})," | ",(0,d.jsx)(n.code,{children:'"nl"'})," | ",(0,d.jsx)(n.code,{children:'"fi"'})," | ",(0,d.jsx)(n.code,{children:'"fr"'})," | ",(0,d.jsx)(n.code,{children:'"de"'})," | ",(0,d.jsx)(n.code,{children:'"el"'})," | ",(0,d.jsx)(n.code,{children:'"hi"'})," | ",(0,d.jsx)(n.code,{children:'"hu"'})," | ",(0,d.jsx)(n.code,{children:'"it"'})," | ",(0,d.jsx)(n.code,{children:'"ja"'})," | ",(0,d.jsx)(n.code,{children:'"ko"'})," | ",(0,d.jsx)(n.code,{children:'"lt"'})," | ",(0,d.jsx)(n.code,{children:'"no"'})," | ",(0,d.jsx)(n.code,{children:'"pl"'})," | ",(0,d.jsx)(n.code,{children:'"pt-BR"'})," | ",(0,d.jsx)(n.code,{children:'"ro"'})," | ",(0,d.jsx)(n.code,{children:'"ru"'})," | ",(0,d.jsx)(n.code,{children:'"es-ES"'})," | ",(0,d.jsx)(n.code,{children:'"sv-SE"'})," | ",(0,d.jsx)(n.code,{children:'"th"'})," | ",(0,d.jsx)(n.code,{children:'"tr"'})," | ",(0,d.jsx)(n.code,{children:'"uk"'})," | ",(0,d.jsx)(n.code,{children:'"vi"'}),", ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"string"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"APIApplicationCommandOptionBase.description_localizations"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:8"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"APIApplicationCommandOptionBase.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:5"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name_localizations",children:"name_localizations"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name_localizations"}),": ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Record"}),"<",(0,d.jsx)(n.code,{children:'"id"'})," | ",(0,d.jsx)(n.code,{children:'"en-US"'})," | ",(0,d.jsx)(n.code,{children:'"en-GB"'})," | ",(0,d.jsx)(n.code,{children:'"bg"'})," | ",(0,d.jsx)(n.code,{children:'"zh-CN"'})," | ",(0,d.jsx)(n.code,{children:'"zh-TW"'})," | ",(0,d.jsx)(n.code,{children:'"hr"'})," | ",(0,d.jsx)(n.code,{children:'"cs"'})," | ",(0,d.jsx)(n.code,{children:'"da"'})," | ",(0,d.jsx)(n.code,{children:'"nl"'})," | ",(0,d.jsx)(n.code,{children:'"fi"'})," | ",(0,d.jsx)(n.code,{children:'"fr"'})," | ",(0,d.jsx)(n.code,{children:'"de"'})," | ",(0,d.jsx)(n.code,{children:'"el"'})," | ",(0,d.jsx)(n.code,{children:'"hi"'})," | ",(0,d.jsx)(n.code,{children:'"hu"'})," | ",(0,d.jsx)(n.code,{children:'"it"'})," | ",(0,d.jsx)(n.code,{children:'"ja"'})," | ",(0,d.jsx)(n.code,{children:'"ko"'})," | ",(0,d.jsx)(n.code,{children:'"lt"'})," | ",(0,d.jsx)(n.code,{children:'"no"'})," | ",(0,d.jsx)(n.code,{children:'"pl"'})," | ",(0,d.jsx)(n.code,{children:'"pt-BR"'})," | ",(0,d.jsx)(n.code,{children:'"ro"'})," | ",(0,d.jsx)(n.code,{children:'"ru"'})," | ",(0,d.jsx)(n.code,{children:'"es-ES"'})," | ",(0,d.jsx)(n.code,{children:'"sv-SE"'})," | ",(0,d.jsx)(n.code,{children:'"th"'})," | ",(0,d.jsx)(n.code,{children:'"tr"'})," | ",(0,d.jsx)(n.code,{children:'"uk"'})," | ",(0,d.jsx)(n.code,{children:'"vi"'}),", ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"string"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"APIApplicationCommandOptionBase.name_localizations"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:6"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"options",children:"options"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"options"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#sernoptionsdata",children:(0,d.jsx)(n.code,{children:"SernOptionsData"})}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L209",children:"src/types/core-modules.ts:209"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"required",children:"required"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"required"}),": ",(0,d.jsx)(n.code,{children:"boolean"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-4",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"APIApplicationCommandOptionBase.required"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:9"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.code,{children:"Subcommand"})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"APIApplicationCommandOptionBase.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L208",children:"src/types/core-modules.ts:208"})})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>o});var d=i(6540);const r={},c=d.createContext(r);function s(e){const n=d.useContext(c);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),d.createElement(c.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2e208732.ab044513.js b/assets/js/2e208732.ab044513.js deleted file mode 100644 index 8d564dd26..000000000 --- a/assets/js/2e208732.ab044513.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3514],{8388:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/branding","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/2f13d849.d7e6f345.js b/assets/js/2f13d849.d7e6f345.js deleted file mode 100644 index 42184d04a..000000000 --- a/assets/js/2f13d849.d7e6f345.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5898],{972:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>d,toc:()=>a});var s=n(4848),o=n(8453);const r={slug:"getting-started",title:"How to get started with sern!",authors:["Sr Izan"],tags:["guides"]},i=void 0,d={permalink:"/blog/getting-started",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-09-30-mdx-blog-post.md",source:"@site/blog/2022-09-30-mdx-blog-post.md",title:"How to get started with sern!",description:"Hello everyone!",date:"2022-09-30T00:00:00.000Z",formattedDate:"September 30, 2022",tags:[{label:"guides",permalink:"/blog/tags/guides"}],readingTime:1.31,hasTruncateMarker:!1,authors:[{name:"Sr Izan",title:"Developer",url:"https://github.com/SrIzan10",imageURL:"https://github.com/SrIzan10.png",key:"Sr Izan"}],frontMatter:{slug:"getting-started",title:"How to get started with sern!",authors:["Sr Izan"],tags:["guides"]},unlisted:!1,prevItem:{title:"Release 2.0.0",permalink:"/blog/2.0.0"},nextItem:{title:"Release 1.2.0",permalink:"/blog/1.2.0"}},l={authorsImageUrls:[void 0]},a=[{value:"Hello everyone!",id:"hello-everyone",level:2},{value:"Step 1: Install the CLI.",id:"step-1-install-the-cli",level:3},{value:"Step 2: Have some way to store secrets.",id:"step-2-have-some-way-to-store-secrets",level:3},{value:"And... that's it?",id:"and-thats-it",level:3},{value:"Extra: Video tutorial!",id:"extra-video-tutorial",level:3},{value:"FAQ",id:"faq",level:2}];function c(e){const t={a:"a",admonition:"admonition",br:"br",code:"code",h2:"h2",h3:"h3",p:"p",pre:"pre",source:"source",strong:"strong",video:"video",...(0,o.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h2,{id:"hello-everyone",children:"Hello everyone!"}),"\n",(0,s.jsx)(t.p,{children:"I'm Sr Izan, your fellow user and contributor."}),"\n",(0,s.jsx)(t.p,{children:"Today I'm going to show you how to get started with sern and all its cool features."}),"\n",(0,s.jsx)(t.h3,{id:"step-1-install-the-cli",children:"Step 1: Install the CLI."}),"\n",(0,s.jsx)(t.p,{children:"Install the CLI:"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{children:"npm i -g @sern/cli\n"})}),"\n",(0,s.jsx)(t.p,{children:"and then run"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{children:"sern init\n"})}),"\n",(0,s.jsx)(t.admonition,{type:"tip",children:(0,s.jsxs)(t.p,{children:["You can also run ",(0,s.jsx)(t.code,{children:"sern init -y"})," if you want to use the default options."]})}),"\n",(0,s.jsxs)(t.p,{children:["The CLI is written in Typescript and open-sourced on ",(0,s.jsx)(t.a,{href:"https://github.com/sern-handler/cli",children:"Github"}),". (thanks ",(0,s.jsx)(t.a,{href:"https://github.com/EvolutionX-10",children:"evo"}),"!)"]}),"\n",(0,s.jsx)(t.h3,{id:"step-2-have-some-way-to-store-secrets",children:"Step 2: Have some way to store secrets."}),"\n",(0,s.jsxs)(t.p,{children:["Normally you'd need a way to store secrets, and the best way to do that is by installing another package: ",(0,s.jsx)(t.code,{children:"dotenv"})]}),"\n",(0,s.jsxs)(t.p,{children:["just ",(0,s.jsx)(t.code,{children:"npm i dotenv"})," in the project folder and add ",(0,s.jsx)(t.code,{children:"require('dotenv').config()"})," to your import section. Then, when you login, ",(0,s.jsx)(t.code,{children:"process.env.TOKEN"})," (or however you have it named on your ",(0,s.jsx)(t.code,{children:".env"})," file) should do the trick."]}),"\n",(0,s.jsx)(t.admonition,{type:"caution",children:(0,s.jsxs)(t.p,{children:["If you're using ESM, configure dotenv with ",(0,s.jsx)(t.code,{children:"import 'dotenv/config'"})," instead of ",(0,s.jsx)(t.code,{children:"require('dotenv').config()"}),"."]})}),"\n",(0,s.jsx)(t.h3,{id:"and-thats-it",children:"And... that's it?"}),"\n",(0,s.jsxs)(t.p,{children:["Yes, that's it. Here's a little FAQ to get you started. You can also join the ",(0,s.jsx)(t.a,{href:"https://sern.dev/discord",children:"Discord"})," for any problems."]}),"\n",(0,s.jsx)(t.h3,{id:"extra-video-tutorial",children:"Extra: Video tutorial!"}),"\n",(0,s.jsxs)(t.video,{width:"400",controls:!0,children:["\n ",(0,s.jsx)(t.source,{src:"https://srizan.s-ul.eu/wtJBVsZU",type:"video/mp4"}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"faq",children:"FAQ"}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Q"}),": How do I publish a slash command?",(0,s.jsx)(t.br,{}),"\n",(0,s.jsx)(t.strong,{children:"A"}),": Install the publish extension. Little video:",(0,s.jsx)(t.br,{}),"\n",(0,s.jsxs)(t.video,{width:"400",controls:!0,children:["\n",(0,s.jsx)(t.source,{src:"https://srizan.s-ul.eu/uHzPhfcS",type:"video/mp4"}),"\n"]})]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Q"}),": Any snippet VSCode extension?",(0,s.jsx)(t.br,{}),"\n",(0,s.jsx)(t.strong,{children:"A"}),": Yeah, just search ",(0,s.jsx)(t.code,{children:"sern Snippets"})," made by a verified publisher called Sr Izan (haha yeah me funny!)"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Q"}),": HEEEELLLPPPP!!!!",(0,s.jsx)(t.br,{}),"\n",(0,s.jsx)(t.strong,{children:"A"}),": Hey, don't panic! We're here to help so, join the ",(0,s.jsx)(t.a,{href:"https://sern.dev/discord",children:"Discord"}),". We're trying to get to 100 members!"]})]})}function h(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>d});var s=n(6540);const o={},r=s.createContext(o);function i(e){const t=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),s.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3020eeee.d9454985.js b/assets/js/3020eeee.d9454985.js deleted file mode 100644 index 2c225ffc7..000000000 --- a/assets/js/3020eeee.d9454985.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7200],{6265:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>i,default:()=>p,frontMatter:()=>a,metadata:()=>l,toc:()=>d});var t=s(4848),r=s(8453);const a={slug:"1.2.0",title:"Release 1.2.0",authors:["jacoobes"],tags:["release"]},i=void 0,l={permalink:"/blog/1.2.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-09-28-mdx-blog-post.md",source:"@site/blog/2022-09-28-mdx-blog-post.md",title:"Release 1.2.0",description:"Class-based modules",date:"2022-09-28T00:00:00.000Z",formattedDate:"September 28, 2022",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:1.71,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"1.2.0",title:"Release 1.2.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"How to get started with sern!",permalink:"/blog/getting-started"}},o={authorsImageUrls:[void 0]},d=[{value:"Class-based modules",id:"class-based-modules",level:2},{value:"Class based modules",id:"class-based-modules-1",level:3},{value:"Deprecation Warnings",id:"deprecation-warnings",level:3},{value:"Dependencies Update",id:"dependencies-update",level:3}];function c(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h2,{id:"class-based-modules",children:"Class-based modules"}),"\n",(0,t.jsx)(n.p,{children:"Today we're announcing the ability to create class based modules!\nTo get started, install"}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{children:"npm install @sern/handler@latest\n"})}),"\n",(0,t.jsx)(n.p,{children:"Quick List of changes!"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"#class-based-modules",children:"Class based modules"})}),"\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"#deprecation-warnings",children:"Deprecation Warnings"})}),"\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"#dependencies-update",children:"Dependencies update"})}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"class-based-modules-1",children:"Class based modules"}),"\n",(0,t.jsxs)(n.p,{children:["Incorporate class based modules into your project instead of the traditional ",(0,t.jsx)(n.code,{children:"commandModule"})," or ",(0,t.jsx)(n.code,{children:"eventModule"}),"\nExtend the new ",(0,t.jsx)(n.a,{href:"docs/api/classes/CommandExecutable",children:"CommandExecutable"})," or ",(0,t.jsx)(n.a,{href:"docs/api/classes/EventExecutable",children:"EventExecutable"})]}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:'title="commands/meaning-of-life.ts"',children:"import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';\nimport { publish } from '../plugins/publish.js';\nimport { serendipityOnly } from '../plugins/serendipityOnly.js';\n\nexport default class extends CommandExecutable {\n type = CommandType.Both as const;\n description = 'What is the meaning of life?'\n override onEvent = [\n serendipityOnly()\n ];\n override plugins = [\n publish(),\n ];\n // highlight-next-line\n execute = async (ctx: Context, args: Args) => {\n await ctx.reply('42')\n };\n}\n"})}),"\n",(0,t.jsx)(n.admonition,{type:"caution",children:(0,t.jsx)(n.p,{children:"execute must not be a method of the class. It should be as above, a property on the class!"})}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:'title="events/guildMemberAdd.ts"',children:"import { CommandType, EventExecutable, type EventType } from '@sern/handler';\nimport type { GuildMember } from 'discord.js'\n\nexport default class extends EventExecutable {\n type = EventType.Discord as const;\n // highlight-next-line\n execute = (member: GuildMember) => {\n console.log(member)\n };\n}\n"})}),"\n",(0,t.jsxs)(n.p,{children:["Now, you might ask ",(0,t.jsx)(n.strong,{children:"why"})," this feature was added. ",(0,t.jsx)(n.br,{})," Simply put, to give flexibility to the developers.\nI believe that you should build your own structures however you might like and customize to your liking.\nIn addition, ",(0,t.jsx)(n.strong,{children:"decorators now unofficially work with modules!"}),"\nFeel free to use TypeScript experimental decorators to augment and customize your classes."]}),"\n",(0,t.jsx)(n.h3,{id:"deprecation-warnings",children:"Deprecation Warnings"}),"\n",(0,t.jsx)(n.p,{children:"The next update will bring sern v2 with some important features. Here are some things to watch out for."}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.a,{href:"docs/api/interfaces/Wrapper",children:"Wrapper#client"})," will be deprecated"]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.a,{href:"docs/api/interfaces/Wrapper",children:"Wrapper#sernEmitter"})," will be deprecated\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"a SernEmitter will be automatically created once Sern#init is called"}),"\n"]}),"\n"]}),"\n",(0,t.jsxs)(n.li,{children:["The option to pass in a function or array for ",(0,t.jsx)(n.a,{href:"docs/api/interfaces/Wrapper",children:"Wrapper#events"})," will be deprecated. Only strings are accepted."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.a,{href:"docs/api/classes/SernEmitter",children:"Sern#addExternal"})," will be deprecated in favor of a better way."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"dependencies-update",children:"Dependencies Update"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"TypeScript has been updated to 4.8.3"}),"\n",(0,t.jsx)(n.li,{children:"Discord.js has been upgraded to 14.5"}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>i,x:()=>l});var t=s(6540);const r={},a=t.createContext(r);function i(e){const n=t.useContext(a);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),t.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/312.9786412c.js b/assets/js/312.9786412c.js deleted file mode 100644 index 44de0da43..000000000 --- a/assets/js/312.9786412c.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see 312.9786412c.js.LICENSE.txt */ -(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[312],{411:(e,t,n)=>{var o;!function(){"use strict";var r=!("undefined"==typeof window||!window.document||!window.document.createElement),a={canUseDOM:r,canUseWorkers:"undefined"!=typeof Worker,canUseEventListeners:r&&!(!window.addEventListener&&!window.attachEvent),canUseViewport:r&&!!window.screen};void 0===(o=function(){return a}.call(t,n,t,e))||(e.exports=o)}()},1345:(e,t,n)=>{"use strict";function o(){var e=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=e&&this.setState(e)}function r(e){this.setState(function(t){var n=this.constructor.getDerivedStateFromProps(e,t);return null!=n?n:null}.bind(this))}function a(e,t){try{var n=this.props,o=this.state;this.props=e,this.state=t,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,o)}finally{this.props=n,this.state=o}}function l(e){var t=e.prototype;if(!t||!t.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof e.getDerivedStateFromProps&&"function"!=typeof t.getSnapshotBeforeUpdate)return e;var n=null,l=null,s=null;if("function"==typeof t.componentWillMount?n="componentWillMount":"function"==typeof t.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof t.componentWillReceiveProps?l="componentWillReceiveProps":"function"==typeof t.UNSAFE_componentWillReceiveProps&&(l="UNSAFE_componentWillReceiveProps"),"function"==typeof t.componentWillUpdate?s="componentWillUpdate":"function"==typeof t.UNSAFE_componentWillUpdate&&(s="UNSAFE_componentWillUpdate"),null!==n||null!==l||null!==s){var i=e.displayName||e.name,u="function"==typeof e.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+i+" uses "+u+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==l?"\n "+l:"")+(null!==s?"\n "+s:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof e.getDerivedStateFromProps&&(t.componentWillMount=o,t.componentWillReceiveProps=r),"function"==typeof t.getSnapshotBeforeUpdate){if("function"!=typeof t.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");t.componentWillUpdate=a;var c=t.componentDidUpdate;t.componentDidUpdate=function(e,t,n){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;c.call(this,e,t,o)}}return e}n.r(t),n.d(t,{polyfill:()=>l}),o.__suppressDeprecationWarning=!0,r.__suppressDeprecationWarning=!0,a.__suppressDeprecationWarning=!0},1720:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bodyOpenClassName=t.portalClassName=void 0;var o=Object.assign||function(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t0&&0===(b-=1)&&c.show(t),n.props.shouldFocusAfterRender&&(n.props.shouldReturnFocusAfterClose?(i.returnFocus(n.props.preventScroll),i.teardownScopedFocus()):i.popWithoutFocus()),n.props.onAfterClose&&n.props.onAfterClose(),h.default.deregister(n)},n.open=function(){n.beforeOpen(),n.state.afterOpen&&n.state.beforeClose?(clearTimeout(n.closeTimer),n.setState({beforeClose:!1})):(n.props.shouldFocusAfterRender&&(i.setupScopedFocus(n.node),i.markForFocusLater()),n.setState({isOpen:!0},(function(){n.openAnimationFrame=requestAnimationFrame((function(){n.setState({afterOpen:!0}),n.props.isOpen&&n.props.onAfterOpen&&n.props.onAfterOpen({overlayEl:n.overlay,contentEl:n.content})}))})))},n.close=function(){n.props.closeTimeoutMS>0?n.closeWithTimeout():n.closeWithoutTimeout()},n.focusContent=function(){return n.content&&!n.contentHasFocus()&&n.content.focus({preventScroll:!0})},n.closeWithTimeout=function(){var e=Date.now()+n.props.closeTimeoutMS;n.setState({beforeClose:!0,closesAt:e},(function(){n.closeTimer=setTimeout(n.closeWithoutTimeout,n.state.closesAt-Date.now())}))},n.closeWithoutTimeout=function(){n.setState({beforeClose:!1,isOpen:!1,afterOpen:!1,closesAt:null},n.afterClose)},n.handleKeyDown=function(e){(function(e){return"Tab"===e.code||9===e.keyCode})(e)&&(0,u.default)(n.content,e),n.props.shouldCloseOnEsc&&function(e){return"Escape"===e.code||27===e.keyCode}(e)&&(e.stopPropagation(),n.requestClose(e))},n.handleOverlayOnClick=function(e){null===n.shouldClose&&(n.shouldClose=!0),n.shouldClose&&n.props.shouldCloseOnOverlayClick&&(n.ownerHandlesClose()?n.requestClose(e):n.focusContent()),n.shouldClose=null},n.handleContentOnMouseUp=function(){n.shouldClose=!1},n.handleOverlayOnMouseDown=function(e){n.props.shouldCloseOnOverlayClick||e.target!=n.overlay||e.preventDefault()},n.handleContentOnClick=function(){n.shouldClose=!1},n.handleContentOnMouseDown=function(){n.shouldClose=!1},n.requestClose=function(e){return n.ownerHandlesClose()&&n.props.onRequestClose(e)},n.ownerHandlesClose=function(){return n.props.onRequestClose},n.shouldBeClosed=function(){return!n.state.isOpen&&!n.state.beforeClose},n.contentHasFocus=function(){return document.activeElement===n.content||n.content.contains(document.activeElement)},n.buildClassName=function(e,t){var o="object"===(void 0===t?"undefined":r(t))?t:{base:y[e],afterOpen:y[e]+"--after-open",beforeClose:y[e]+"--before-close"},a=o.base;return n.state.afterOpen&&(a=a+" "+o.afterOpen),n.state.beforeClose&&(a=a+" "+o.beforeClose),"string"==typeof t&&t?a+" "+t:a},n.attributesFromObject=function(e,t){return Object.keys(t).reduce((function(n,o){return n[e+"-"+o]=t[o],n}),{})},n.state={afterOpen:!1,beforeClose:!1},n.shouldClose=null,n.moveFromContentToOverlay=null,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),a(t,[{key:"componentDidMount",value:function(){this.props.isOpen&&this.open()}},{key:"componentDidUpdate",value:function(e,t){this.props.isOpen&&!e.isOpen?this.open():!this.props.isOpen&&e.isOpen&&this.close(),this.props.shouldFocusAfterRender&&this.state.isOpen&&!t.isOpen&&this.focusContent()}},{key:"componentWillUnmount",value:function(){this.state.isOpen&&this.afterClose(),clearTimeout(this.closeTimer),cancelAnimationFrame(this.openAnimationFrame)}},{key:"beforeOpen",value:function(){var e=this.props,t=e.appElement,n=e.ariaHideApp,o=e.htmlOpenClassName,r=e.bodyOpenClassName,a=e.parentSelector,l=a&&a().ownerDocument||document;r&&f.add(l.body,r),o&&f.add(l.getElementsByTagName("html")[0],o),n&&(b+=1,c.hide(t)),h.default.register(this)}},{key:"render",value:function(){var e=this.props,t=e.id,n=e.className,r=e.overlayClassName,a=e.defaultStyles,l=e.children,s=n?{}:a.content,i=r?{}:a.overlay;if(this.shouldBeClosed())return null;var u={ref:this.setOverlayRef,className:this.buildClassName("overlay",r),style:o({},i,this.props.style.overlay),onClick:this.handleOverlayOnClick,onMouseDown:this.handleOverlayOnMouseDown},c=o({id:t,ref:this.setContentRef,style:o({},s,this.props.style.content),className:this.buildClassName("content",n),tabIndex:"-1",onKeyDown:this.handleKeyDown,onMouseDown:this.handleContentOnMouseDown,onMouseUp:this.handleContentOnMouseUp,onClick:this.handleContentOnClick,role:this.props.role,"aria-label":this.props.contentLabel},this.attributesFromObject("aria",o({modal:!0},this.props.aria)),this.attributesFromObject("data",this.props.data||{}),{"data-testid":this.props.testId}),f=this.props.contentElement(c,l);return this.props.overlayElement(u,f)}}]),t}(l.Component);O.defaultProps={style:{overlay:{},content:{}},defaultStyles:{}},O.propTypes={isOpen:s.default.bool.isRequired,defaultStyles:s.default.shape({content:s.default.object,overlay:s.default.object}),style:s.default.shape({content:s.default.object,overlay:s.default.object}),className:s.default.oneOfType([s.default.string,s.default.object]),overlayClassName:s.default.oneOfType([s.default.string,s.default.object]),parentSelector:s.default.func,bodyOpenClassName:s.default.string,htmlOpenClassName:s.default.string,ariaHideApp:s.default.bool,appElement:s.default.oneOfType([s.default.instanceOf(p.default),s.default.instanceOf(d.SafeHTMLCollection),s.default.instanceOf(d.SafeNodeList),s.default.arrayOf(s.default.instanceOf(p.default))]),onAfterOpen:s.default.func,onAfterClose:s.default.func,onRequestClose:s.default.func,closeTimeoutMS:s.default.number,shouldFocusAfterRender:s.default.bool,shouldCloseOnOverlayClick:s.default.bool,shouldReturnFocusAfterClose:s.default.bool,preventScroll:s.default.bool,role:s.default.string,contentLabel:s.default.string,aria:s.default.object,data:s.default.object,children:s.default.node,shouldCloseOnEsc:s.default.bool,overlayRef:s.default.func,contentRef:s.default.func,id:s.default.string,overlayElement:s.default.func,contentElement:s.default.func,testId:s.default.string},t.default=O,e.exports=t.default},6462:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){s&&(s.removeAttribute?s.removeAttribute("aria-hidden"):null!=s.length?s.forEach((function(e){return e.removeAttribute("aria-hidden")})):document.querySelectorAll(s).forEach((function(e){return e.removeAttribute("aria-hidden")})));s=null},t.log=function(){0},t.assertNodeList=i,t.setElement=function(e){var t=e;if("string"==typeof t&&l.canUseDOM){var n=document.querySelectorAll(t);i(n,t),t=n}return s=t||s},t.validateElement=u,t.hide=function(e){var t=!0,n=!1,o=void 0;try{for(var r,a=u(e)[Symbol.iterator]();!(t=(r=a.next()).done);t=!0){r.value.setAttribute("aria-hidden","true")}}catch(l){n=!0,o=l}finally{try{!t&&a.return&&a.return()}finally{if(n)throw o}}},t.show=function(e){var t=!0,n=!1,o=void 0;try{for(var r,a=u(e)[Symbol.iterator]();!(t=(r=a.next()).done);t=!0){r.value.removeAttribute("aria-hidden")}}catch(l){n=!0,o=l}finally{try{!t&&a.return&&a.return()}finally{if(n)throw o}}},t.documentNotReadyOrSSRTesting=function(){s=null};var o,r=n(9771),a=(o=r)&&o.__esModule?o:{default:o},l=n(834);var s=null;function i(e,t){if(!e||!e.length)throw new Error("react-modal: No elements were found for selector "+t+".")}function u(e){var t=e||s;return t?Array.isArray(t)||t instanceof HTMLCollection||t instanceof NodeList?t:[t]:((0,a.default)(!1,["react-modal: App element is not defined.","Please use `Modal.setAppElement(el)` or set `appElement={el}`.","This is needed so screen readers don't see main content","when modal is opened. It is not recommended, but you can opt-out","by setting `ariaHideApp={false}`."].join(" ")),[])}},7727:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){for(var e=[l,s],t=0;t0?(document.body.firstChild!==l&&document.body.insertBefore(l,document.body.firstChild),document.body.lastChild!==s&&document.body.appendChild(s)):(l.parentElement&&l.parentElement.removeChild(l),s.parentElement&&s.parentElement.removeChild(s))}))},4838:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){var e=document.getElementsByTagName("html")[0];for(var t in n)r(e,n[t]);var a=document.body;for(var l in o)r(a,o[l]);n={},o={}},t.log=function(){0};var n={},o={};function r(e,t){e.classList.remove(t)}t.add=function(e,t){return r=e.classList,a="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]||(e[t]=0),e[t]+=1}(a,e),r.add(e)}));var r,a},t.remove=function(e,t){return r=e.classList,a="html"==e.nodeName.toLowerCase()?n:o,void t.split(" ").forEach((function(e){!function(e,t){e[t]&&(e[t]-=1)}(a,e),0===a[e]&&r.remove(e)}));var r,a}},7791:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resetState=function(){l=[]},t.log=function(){0},t.handleBlur=u,t.handleFocus=c,t.markForFocusLater=function(){l.push(document.activeElement)},t.returnFocus=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=null;try{return void(0!==l.length&&(t=l.pop()).focus({preventScroll:e}))}catch(n){console.warn(["You tried to return focus to",t,"but it is not in the DOM anymore"].join(" "))}},t.popWithoutFocus=function(){l.length>0&&l.pop()},t.setupScopedFocus=function(e){s=e,window.addEventListener?(window.addEventListener("blur",u,!1),document.addEventListener("focus",c,!0)):(window.attachEvent("onBlur",u),document.attachEvent("onFocus",c))},t.teardownScopedFocus=function(){s=null,window.addEventListener?(window.removeEventListener("blur",u),document.removeEventListener("focus",c)):(window.detachEvent("onBlur",u),document.detachEvent("onFocus",c))};var o,r=n(2411),a=(o=r)&&o.__esModule?o:{default:o};var l=[],s=null,i=!1;function u(){i=!0}function c(){if(i){if(i=!1,!s)return;setTimeout((function(){s.contains(document.activeElement)||((0,a.default)(s)[0]||s).focus()}),0)}}},9628:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.log=function(){console.log("portalOpenInstances ----------"),console.log(o.openInstances.length),o.openInstances.forEach((function(e){return console.log(e)})),console.log("end portalOpenInstances ----------")},t.resetState=function(){o=new n};var n=function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.register=function(e){-1===t.openInstances.indexOf(e)&&(t.openInstances.push(e),t.emit("register"))},this.deregister=function(e){var n=t.openInstances.indexOf(e);-1!==n&&(t.openInstances.splice(n,1),t.emit("deregister"))},this.subscribe=function(e){t.subscribers.push(e)},this.emit=function(e){t.subscribers.forEach((function(n){return n(e,t.openInstances.slice())}))},this.openInstances=[],this.subscribers=[]},o=new n;t.default=o},834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.canUseDOM=t.SafeNodeList=t.SafeHTMLCollection=void 0;var o,r=n(411);var a=((o=r)&&o.__esModule?o:{default:o}).default,l=a.canUseDOM?window.HTMLElement:{};t.SafeHTMLCollection=a.canUseDOM?window.HTMLCollection:{},t.SafeNodeList=a.canUseDOM?window.NodeList:{},t.canUseDOM=a.canUseDOM;t.default=l},7067:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var n=(0,a.default)(e);if(!n.length)return void t.preventDefault();var o=void 0,r=t.shiftKey,s=n[0],i=n[n.length-1],u=l();if(e===u){if(!r)return;o=i}i!==u||r||(o=s);s===u&&r&&(o=i);if(o)return t.preventDefault(),void o.focus();var c=/(\bChrome\b|\bSafari\b)\//.exec(navigator.userAgent);if(null==c||"Chrome"==c[1]||null!=/\biPod\b|\biPad\b/g.exec(navigator.userAgent))return;var f=n.indexOf(u);f>-1&&(f+=r?-1:1);if(void 0===(o=n[f]))return t.preventDefault(),void(o=r?i:s).focus();t.preventDefault(),o.focus()};var o,r=n(2411),a=(o=r)&&o.__esModule?o:{default:o};function l(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document;return e.activeElement.shadowRoot?l(e.activeElement.shadowRoot):e.activeElement}e.exports=t.default},2411:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){var n=[].slice.call(t.querySelectorAll("*"),0).reduce((function(t,n){return t.concat(n.shadowRoot?e(n.shadowRoot):[n])}),[]);return n.filter(s)};var n="none",o="contents",r=/input|select|textarea|button|object|iframe/;function a(e){var t=e.offsetWidth<=0&&e.offsetHeight<=0;if(t&&!e.innerHTML)return!0;try{var r=window.getComputedStyle(e),a=r.getPropertyValue("display");return t?a!==o&&function(e,t){return"visible"!==t.getPropertyValue("overflow")||e.scrollWidth<=0&&e.scrollHeight<=0}(e,r):a===n}catch(l){return console.warn("Failed to inspect element style"),!1}}function l(e,t){var n=e.nodeName.toLowerCase();return(r.test(n)&&!e.disabled||"a"===n&&e.href||t)&&function(e){for(var t=e,n=e.getRootNode&&e.getRootNode();t&&t!==document.body;){if(n&&t===n&&(t=n.host.parentNode),a(t))return!1;t=t.parentNode}return!0}(e)}function s(e){var t=e.getAttribute("tabindex");null===t&&(t=void 0);var n=isNaN(t);return(n||t>=0)&&l(e,!n)}e.exports=t.default},312:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=n(1720),a=(o=r)&&o.__esModule?o:{default:o};t.default=a.default,e.exports=t.default},9771:e=>{"use strict";var t=function(){};e.exports=t}}]); \ No newline at end of file diff --git a/assets/js/312.9786412c.js.LICENSE.txt b/assets/js/312.9786412c.js.LICENSE.txt deleted file mode 100644 index b81f69a6b..000000000 --- a/assets/js/312.9786412c.js.LICENSE.txt +++ /dev/null @@ -1,17 +0,0 @@ -/*! - Copyright (c) 2015 Jed Watson. - Based on code that is Copyright 2013-2015, Facebook, Inc. - All rights reserved. -*/ - -/*! - * Adapted from jQuery UI core - * - * http://jqueryui.com - * - * Copyright 2014 jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/category/ui-core/ - */ diff --git a/assets/js/312c2bc5.2b89cd37.js b/assets/js/312c2bc5.2b89cd37.js deleted file mode 100644 index f70cd1b71..000000000 --- a/assets/js/312c2bc5.2b89cd37.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4430],{3586:(e,t,n)=>{n.r(t),n.d(t,{default:()=>j});var r=n(6540),s=n(8511),a=n(5648);const i={card:"card_zwE_",cardHeader:"cardHeader_zN_4",cardBody:"cardBody_bxHk",cardFooter:"cardFooter_teUh"};var o=n(312),c=n.n(o);const d={closeButton:"closeButton_VOlr",modal:"modal_Y_lZ"};var l=n(4428);var h=n(4848);const u={content:{top:"50%",left:"50%",right:"auto",bottom:"auto",marginRight:"-50%",transform:"translate(-50%, -50%)",width:"70vw",height:"50vh",backgroundColor:"#fff"}},m={content:{top:"50%",left:"50%",right:"auto",bottom:"auto",marginRight:"-50%",transform:"translate(-50%, -50%)",width:"70vw",height:"50vh",backgroundColor:"#333",color:"#fff"}};function f(e){let{plugin:t}=e;const[n,s]=r.useState(!1),[a]=function(){const[e,t]=(0,r.useState)(window.localStorage.getItem("theme"));return(0,r.useEffect)((()=>{window.addEventListener("storage",(e=>{"theme"===e.key&&t(e.newValue)}))}),[]),[e,t]}(),[i,o]=r.useState("dark"===a?m:u);function f(){s(!1)}return r.useEffect((()=>{o("dark"===a?m:u)}),[a]),(0,h.jsxs)("div",{children:[(0,h.jsx)("button",{onClick:function(){s(!0)},children:"Info"}),(0,h.jsxs)(c(),{isOpen:n,onRequestClose:f,style:i,contentLabel:t.name,children:[(0,h.jsxs)("h2",{children:[t.name," by ",g(t.author)]}),(0,h.jsx)("p",{children:t.description}),(0,h.jsx)(l.A,{language:"ts",title:"/src/commands/ping.ts",showLineNumbers:!0,children:t.example.replace("```ts","").replace("```","").trim()}),(0,h.jsx)("div",{className:d.closeButton,children:(0,h.jsx)("button",{onClick:f,children:"close"})})]})]})}function g(e){const[t]=e.toString().replace(/[\]<>@]/g,"").split("[");return t.trim()}function p(e){let{plugin:t}=e;return(0,h.jsxs)("div",{className:i.card,children:[(0,h.jsx)("div",{className:i.cardHeader,children:(0,h.jsx)("h3",{children:t.name})}),(0,h.jsx)("div",{className:i.cardBody,children:(0,h.jsx)("p",{children:t.trimmedDescription})}),(0,h.jsx)("div",{className:i.cardFooter,children:(0,h.jsx)(f,{plugin:t})})]})}function j(){const[e,t]=r.useState([]);return r.useEffect((()=>{(async()=>{const e=await fetch("https://raw.githubusercontent.com/sern-handler/awesome-plugins/main/pluginlist.json"),n=await e.json();n.forEach((e=>{e.trimmedDescription=e.description.length>100?e.description.slice(0,100)+"...":e.description})),t(n)})()}),[]),(0,h.jsxs)(s.A,{children:[(0,h.jsx)("h1",{className:a.A.header,children:"Plugins"}),(0,h.jsx)("div",{className:a.A.cntnr,children:e.map((e=>(0,h.jsx)(p,{plugin:e},e.hash)))})]})}},4428:(e,t,n)=>{n.d(t,{A:()=>c});var r=n(6540),s=n(2303),a=n(6846),i=n(3717),o=n(4848);function c(e){let{children:t,...n}=e;const c=(0,s.A)(),d=function(e){return r.Children.toArray(e).some((e=>(0,r.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),l="string"==typeof d?i.A:a.A;return(0,o.jsx)(l,{...n,children:d},String(c))}},5648:(e,t,n)=>{n.d(t,{A:()=>r});const r={heroBanner:"heroBanner_qdFl",header:"header_gB2a",buttons:"buttons_AeoN","padding-vert--md":"padding-vert--md_IMB4",cntnr:"cntnr_SOJH"}}}]); \ No newline at end of file diff --git a/assets/js/393be207.2d2d9a50.js b/assets/js/393be207.2d2d9a50.js deleted file mode 100644 index b00b5c2de..000000000 --- a/assets/js/393be207.2d2d9a50.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4134],{6602:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>l,frontMatter:()=>r,metadata:()=>p,toc:()=>i});var o=t(4848),a=t(8453);const r={title:"Markdown page example"},s="Markdown page example",p={type:"mdx",permalink:"/markdown-page",source:"@site/src/pages/markdown-page.md",title:"Markdown page example",description:"You don't need React to write simple standalone pages.",frontMatter:{title:"Markdown page example"},unlisted:!1},c={},i=[];function d(e){const n={h1:"h1",p:"p",...(0,a.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"markdown-page-example",children:"Markdown page example"}),"\n",(0,o.jsx)(n.p,{children:"You don't need React to write simple standalone pages."})]})}function l(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>p});var o=t(6540);const a={},r=o.createContext(a);function s(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function p(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:s(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3a0cb3a9.d273879e.js b/assets/js/3a0cb3a9.d273879e.js deleted file mode 100644 index ff31379b9..000000000 --- a/assets/js/3a0cb3a9.d273879e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8371],{5424:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>a,frontMatter:()=>c,metadata:()=>s,toc:()=>t});var d=i(4848),r=i(8453);const c={id:"SernAutocompleteData",title:"Interface: SernAutocompleteData",sidebar_label:"SernAutocompleteData",sidebar_position:0,custom_edit_url:null},l=void 0,s={id:"api/interfaces/SernAutocompleteData",title:"Interface: SernAutocompleteData",description:"Hierarchy",source:"@site/docs/api/interfaces/SernAutocompleteData.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernAutocompleteData",permalink:"/docs/api/interfaces/SernAutocompleteData",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernAutocompleteData",title:"Interface: SernAutocompleteData",sidebar_label:"SernAutocompleteData",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"RoleSelectCommand",permalink:"/docs/api/interfaces/RoleSelectCommand"},next:{title:"SernEmitterPlugin",permalink:"/docs/api/interfaces/SernEmitterPlugin"}},o={},t=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"autocomplete",id:"autocomplete",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"command",id:"command",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"descriptionLocalizations",id:"descriptionlocalizations",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"nameLocalizations",id:"namelocalizations",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"required",id:"required",level:3},{value:"Inherited from",id:"inherited-from-4",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-7",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"Omit"}),"<",(0,d.jsx)(n.code,{children:"BaseApplicationCommandOptionsData"}),", ",(0,d.jsx)(n.code,{children:'"autocomplete"'}),">"]}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"SernAutocompleteData"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"autocomplete",children:"autocomplete"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"autocomplete"}),": ",(0,d.jsx)(n.code,{children:"true"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L172",children:"src/types/core-modules.ts:172"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"command",children:"command"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"command"}),": ",(0,d.jsx)(n.code,{children:"AutocompleteCommand"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L177",children:"src/types/core-modules.ts:177"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Omit.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4493"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"descriptionlocalizations",children:"descriptionLocalizations"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"descriptionLocalizations"}),": ",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Record"}),"<",(0,d.jsx)(n.code,{children:'"id"'})," | ",(0,d.jsx)(n.code,{children:'"en-US"'})," | ",(0,d.jsx)(n.code,{children:'"en-GB"'})," | ",(0,d.jsx)(n.code,{children:'"bg"'})," | ",(0,d.jsx)(n.code,{children:'"zh-CN"'})," | ",(0,d.jsx)(n.code,{children:'"zh-TW"'})," | ",(0,d.jsx)(n.code,{children:'"hr"'})," | ",(0,d.jsx)(n.code,{children:'"cs"'})," | ",(0,d.jsx)(n.code,{children:'"da"'})," | ",(0,d.jsx)(n.code,{children:'"nl"'})," | ",(0,d.jsx)(n.code,{children:'"fi"'})," | ",(0,d.jsx)(n.code,{children:'"fr"'})," | ",(0,d.jsx)(n.code,{children:'"de"'})," | ",(0,d.jsx)(n.code,{children:'"el"'})," | ",(0,d.jsx)(n.code,{children:'"hi"'})," | ",(0,d.jsx)(n.code,{children:'"hu"'})," | ",(0,d.jsx)(n.code,{children:'"it"'})," | ",(0,d.jsx)(n.code,{children:'"ja"'})," | ",(0,d.jsx)(n.code,{children:'"ko"'})," | ",(0,d.jsx)(n.code,{children:'"lt"'})," | ",(0,d.jsx)(n.code,{children:'"no"'})," | ",(0,d.jsx)(n.code,{children:'"pl"'})," | ",(0,d.jsx)(n.code,{children:'"pt-BR"'})," | ",(0,d.jsx)(n.code,{children:'"ro"'})," | ",(0,d.jsx)(n.code,{children:'"ru"'})," | ",(0,d.jsx)(n.code,{children:'"es-ES"'})," | ",(0,d.jsx)(n.code,{children:'"sv-SE"'})," | ",(0,d.jsx)(n.code,{children:'"th"'})," | ",(0,d.jsx)(n.code,{children:'"tr"'})," | ",(0,d.jsx)(n.code,{children:'"uk"'})," | ",(0,d.jsx)(n.code,{children:'"vi"'}),", ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"string"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Omit.descriptionLocalizations"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4494"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Omit.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4491"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"namelocalizations",children:"nameLocalizations"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"nameLocalizations"}),": ",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Record"}),"<",(0,d.jsx)(n.code,{children:'"id"'})," | ",(0,d.jsx)(n.code,{children:'"en-US"'})," | ",(0,d.jsx)(n.code,{children:'"en-GB"'})," | ",(0,d.jsx)(n.code,{children:'"bg"'})," | ",(0,d.jsx)(n.code,{children:'"zh-CN"'})," | ",(0,d.jsx)(n.code,{children:'"zh-TW"'})," | ",(0,d.jsx)(n.code,{children:'"hr"'})," | ",(0,d.jsx)(n.code,{children:'"cs"'})," | ",(0,d.jsx)(n.code,{children:'"da"'})," | ",(0,d.jsx)(n.code,{children:'"nl"'})," | ",(0,d.jsx)(n.code,{children:'"fi"'})," | ",(0,d.jsx)(n.code,{children:'"fr"'})," | ",(0,d.jsx)(n.code,{children:'"de"'})," | ",(0,d.jsx)(n.code,{children:'"el"'})," | ",(0,d.jsx)(n.code,{children:'"hi"'})," | ",(0,d.jsx)(n.code,{children:'"hu"'})," | ",(0,d.jsx)(n.code,{children:'"it"'})," | ",(0,d.jsx)(n.code,{children:'"ja"'})," | ",(0,d.jsx)(n.code,{children:'"ko"'})," | ",(0,d.jsx)(n.code,{children:'"lt"'})," | ",(0,d.jsx)(n.code,{children:'"no"'})," | ",(0,d.jsx)(n.code,{children:'"pl"'})," | ",(0,d.jsx)(n.code,{children:'"pt-BR"'})," | ",(0,d.jsx)(n.code,{children:'"ro"'})," | ",(0,d.jsx)(n.code,{children:'"ru"'})," | ",(0,d.jsx)(n.code,{children:'"es-ES"'})," | ",(0,d.jsx)(n.code,{children:'"sv-SE"'})," | ",(0,d.jsx)(n.code,{children:'"th"'})," | ",(0,d.jsx)(n.code,{children:'"tr"'})," | ",(0,d.jsx)(n.code,{children:'"uk"'})," | ",(0,d.jsx)(n.code,{children:'"vi"'}),", ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"string"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Omit.nameLocalizations"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4492"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"required",children:"required"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"required"}),": ",(0,d.jsx)(n.code,{children:"boolean"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-4",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Omit.required"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4495"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.code,{children:"String"})," | ",(0,d.jsx)(n.code,{children:"Integer"})," | ",(0,d.jsx)(n.code,{children:"Number"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L173",children:"src/types/core-modules.ts:173"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>s});var d=i(6540);const r={},c=d.createContext(r);function l(e){const n=d.useContext(c);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),d.createElement(c.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3a25b5a8.62806fd5.js b/assets/js/3a25b5a8.62806fd5.js deleted file mode 100644 index 49c694db3..000000000 --- a/assets/js/3a25b5a8.62806fd5.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7804],{9619:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var r=t(4848),s=t(8453);const o={slug:"2.0.0",title:"Release 2.0.0",authors:["jacoobes"],tags:["release"]},i=void 0,a={permalink:"/blog/2.0.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-12-13-mdx-blog-post.md",source:"@site/blog/2022-12-13-mdx-blog-post.md",title:"Release 2.0.0",description:"2.0 Release",date:"2022-12-13T00:00:00.000Z",formattedDate:"December 13, 2022",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:3.63,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"2.0.0",title:"Release 2.0.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"Release 2.5.0",permalink:"/blog/2.5.0"},nextItem:{title:"How to get started with sern!",permalink:"/blog/getting-started"}},d={authorsImageUrls:[void 0]},l=[{value:"2.0 Release",id:"20-release",level:2},{value:"Plugin Support for Event Modules",id:"plugin-support-for-event-modules",level:3},{value:"Dependency Injection and Decoupling",id:"dependency-injection-and-decoupling",level:2},{value:"How do I start?",id:"how-do-i-start",level:3},{value:"New CommandTypes",id:"new-commandtypes",level:2},{value:"Typings Simplification",id:"typings-simplification",level:2},{value:"Breaking Changes",id:"breaking-changes",level:2},{value:"Context refactoring",id:"context-refactoring",level:2}];function c(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h2:"h2",h3:"h3",img:"img",p:"p",pre:"pre",strong:"strong",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"20-release",children:"2.0 Release"}),"\n",(0,r.jsxs)(n.p,{children:["Join our ",(0,r.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord"}),"! ",(0,r.jsx)(n.br,{}),"\nWow! We're finally increasing our semantic versioning by +",(0,r.jsx)(n.code,{children:"1.7.9."})," ",(0,r.jsx)(n.br,{}),"\nWhat does this mean?"]}),"\n",(0,r.jsx)(n.h3,{id:"plugin-support-for-event-modules",children:"Plugin Support for Event Modules"}),"\n",(0,r.jsxs)(n.p,{children:["You can now use plugins for event modules. Previous version would throw an error if the\n",(0,r.jsx)(n.code,{children:"plugins"})," field was populated."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",children:"export function commandPlTest() : SernEmitterPlugin {\n return {\n type: PluginType.Command,\n execute: ({ mod}, controller) => {\n if(mod.name === 'module.register') {\n console.log('Event Module created correctly')\n return controller.next()\n }\n console.log('event name is wrong')\n return controller.stop()\n }\n }\n}\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Applying this plugin to some ",(0,r.jsx)(n.code,{children:"eventModule"}),":"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",children:"export default eventModule({\n name: 'error',\n type: EventType.Sern,\n plugins: [commandPlTest()],\n execute(m) {\n console.log(m)\n },\n})\n"})}),"\n",(0,r.jsx)(n.h2,{id:"dependency-injection-and-decoupling",children:"Dependency Injection and Decoupling"}),"\n",(0,r.jsxs)(n.p,{children:["The powerful npm package ",(0,r.jsx)(n.code,{children:"iti"})," decouples sern even more.\nDecoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production\nand make sern even more customizable than before."]}),"\n",(0,r.jsx)(n.h3,{id:"how-do-i-start",children:"How do I start?"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",metastring:'title="src/index.ts"',children:"//With typescript, you can customize / augment your typings.\ninterface MyDependencies extends Dependencies {\n '@sern/client' : Singleton;\n '@sern/logger' : Singleton\n}\n\nexport const useContainer = Sern.makeDependencies({\n// exclude: new Set(['@sern/logger']), don't autofill optional dependencies\n build: root => root\n .add({ '@sern/client': single(client) }) \n .add({ '@sern/logger': single(new DefaultLogging()) })\n});\n\nSern.init({\n defaultPrefix: '!', // removing defaultPrefix will shut down text commands\n commands: 'src/commands',\n // events: 'src/events' (optional),\n containerConfig : {\n get: useContainer //pass in your dependency getter here\n }\n});\n\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Using the ",(0,r.jsx)(n.code,{children:"Sern#makeDependencies"})," function, inject your dependencies.\nWe'll use specific dependencies that are created with the ",(0,r.jsx)(n.code,{children:"@sern/keyword"}),"\nkey.\nUsing typescript to display all ",(0,r.jsx)(n.code,{children:"keywords"})," and what they represent:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",children:"export interface Dependencies {\n '@sern/client': Singleton; //Discord Client\n '@sern/logger'?: Singleton; //Logger\n '@sern/emitter': Singleton; //SernEmitter\n '@sern/store' : Singleton; //Stores all Command Modules\n '@sern/modules' : Singleton; //Manages Modules\n '@sern/errors': Singleton; //A Lifetime / Crash Handler\n}\n"})}),"\n",(0,r.jsx)(n.admonition,{type:"danger",children:(0,r.jsx)(n.p,{children:"Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies"})}),"\n",(0,r.jsxs)(n.p,{children:["At the moment, one optional dependency, ",(0,r.jsx)(n.code,{children:"@sern/logger"}),", exists. If not added explicitly,\nwe'll ",(0,r.jsx)(n.strong,{children:"autofill"})," with a ",(0,r.jsx)(n.a,{href:"https://sern.dev/docs/api/classes/defaultlogging",children:"DefaultLogger"}),"."]}),"\n",(0,r.jsx)(n.admonition,{type:"tip",children:(0,r.jsxs)(n.p,{children:["If you don't want a logger, add it to the\n",(0,r.jsx)(n.code,{children:"exclude"})," field while composing dependencies."]})}),"\n",(0,r.jsxs)(n.p,{children:["Use your generated dependency getter ",(0,r.jsx)(n.code,{children:"useContainer"})," (use whatever name you want), access them\nfrom anywhere."]}),"\n",(0,r.jsx)(n.admonition,{type:"note",children:(0,r.jsxs)(n.p,{children:["the function ",(0,r.jsx)(n.a,{href:"https://sern.dev/docs/api/modules#usecontainerraw",children:"useContainerRaw"})," is provided for direct access to dependencies and the internal\ndata structure. Use this wisely as no guarantees are made and crashes can happen."]})}),"\n",(0,r.jsxs)(n.p,{children:["The ",(0,r.jsx)(n.code,{children:"build"})," field follows ",(0,r.jsx)(n.a,{href:"https://itijs.org/docs/quick-start#usage",children:"createContainer"})," function call."]}),"\n",(0,r.jsx)(n.h2,{id:"new-commandtypes",children:"New CommandTypes"}),"\n",(0,r.jsxs)(n.p,{children:["2.0 includes all the new role select menus. ",(0,r.jsx)(n.code,{children:"CommandType.MenuSelect"})," has been renamed into\n",(0,r.jsx)(n.code,{children:"CommandType.StringSelect"}),". The remaining SelectMenus are\n",(0,r.jsx)(n.code,{children:"CommandType.RoleSelect"}),", ",(0,r.jsx)(n.code,{children:"CommandType.ChannelSelect"}),", ",(0,r.jsx)(n.code,{children:"CommandType.UserSelect"}),", ",(0,r.jsx)(n.code,{children:"CommandType.MentionableSelect"})]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",metastring:'title="commands/roleselect.ts"',children:"export default commandModule({\n type: CommandType.RoleSelect,\n execute(ctx) {\n ctx.reply('role select')\n },\n})\n"})}),"\n",(0,r.jsx)(n.p,{children:"In addition, commandModules with ContextMenus have been renamed."}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"- CommandType.MenuUser, CommandType.MenuMsg \n+ CommandType.CtxUser, CommandType.CtxMsg\n"})}),"\n",(0,r.jsx)(n.h2,{id:"typings-simplification",children:"Typings Simplification"}),"\n",(0,r.jsxs)(n.p,{children:["Pre 2.0:\n",(0,r.jsx)(n.img,{src:"https://cdn.discordapp.com/attachments/820348341358952550/1038577974829666386/image.png"}),"\n",(0,r.jsx)(n.br,{})," ",(0,r.jsx)(n.br,{})," ",(0,r.jsx)(n.br,{}),"\nPost 2.0:\n",(0,r.jsx)(n.br,{}),"\n",(0,r.jsx)(n.img,{src:"https://cdn.discordapp.com/attachments/820348341358952550/1052623728489550015/image.png"})]}),"\n",(0,r.jsx)(n.p,{children:"CommandPlugin and EventPlugin typings have also been static'ified, transformed from types to interfaces"}),"\n",(0,r.jsx)(n.h2,{id:"breaking-changes",children:"Breaking Changes"}),"\n",(0,r.jsx)(n.img,{src:"https://img.srizan.dev/Discord_z8Sn1UBfEe.png"}),"\n",(0,r.jsx)(n.br,{}),"\nAll deprecation warnings from previous versions have taken effect, and are removed in 2.0.\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"- type Module = EventModule | CommandModule\n+ type AnyModule = EventModule | CommandModule\n\n-export type SpreadParams unknown> = (\n- args: Parameters[number],\n- ) => unknown;\n"})}),"\n",(0,r.jsx)(n.p,{children:"Override type has been removed due to redundancy"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"- discord.js : 14.5\n+ discord.js : 14.7\n\n-typescript: 4.7\n+ typescript: 4.9\n"})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"+ interface Wrapper {\n+ readonly defaultPrefix?: string;\n+ readonly commands: string;\n+ readonly events?: string;\n+ readonly containerConfig : {\n+ get: (...keys: (keyof Dependencies)[]) => unknown[];\n+ }\n+}\n\n- interface Wrapper {\n- readonly client: Client;\n- readonly sernEmitter?: SernEmitter;\n- readonly defaultPrefix?: string;\n- readonly commands: string;\n- readonly events?:\n- | string\n- | { mod: EventModule; absPath: string }[]\n- | (() => { mod: EventModule; absPath: string }[]);\n-}\n"})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"+ DefaultLogger\n+ DefaultModuleManager\n+ SernEmitter\n+ DefaultErrorHandling\n+ type Singleton = () => T\n+ type Transient = () => () => T; \n+ type LogPayload = { message: T }\n+ export const single = () => T\n+ export const many = () => () => T\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Including the previous section, some names to symbols and data structures were altered to\nbe better represented. view ",(0,r.jsx)(n.a,{href:"/404.html",children:"changelog"})]}),"\n",(0,r.jsx)(n.h2,{id:"context-refactoring",children:"Context refactoring"}),"\n",(0,r.jsx)(n.p,{children:"The context data structure has been internally altered to represent its dynamics better."})]})}function p(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var r=t(6540);const s={},o=r.createContext(s);function i(e){const n=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),r.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3a2d3092.e959f693.js b/assets/js/3a2d3092.e959f693.js deleted file mode 100644 index 11bd478d4..000000000 --- a/assets/js/3a2d3092.e959f693.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4085],{7401:(n,e,o)=>{o.r(e),o.d(e,{assets:()=>a,contentTitle:()=>i,default:()=>u,frontMatter:()=>r,metadata:()=>c,toc:()=>d});var t=o(4848),s=o(8453);const r={sidebar_position:9},i="Good to know",c={id:"guide/walkthrough/good-to-know",title:"Good to know",description:"sern.config.json",source:"@site/docs/guide/walkthrough/good-to-know.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/good-to-know",permalink:"/docs/guide/walkthrough/good-to-know",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/good-to-know.md",tags:[],version:"current",sidebarPosition:9,frontMatter:{sidebar_position:9},sidebar:"tutorialSidebar",previous:{title:"Conclusion",permalink:"/docs/guide/walkthrough/conclusion"}},a={},d=[{value:"sern.config.json",id:"sernconfigjson",level:2}];function l(n){const e={a:"a",br:"br",code:"code",h1:"h1",h2:"h2",p:"p",pre:"pre",...(0,s.R)(),...n.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(e.h1,{id:"good-to-know",children:"Good to know"}),"\n",(0,t.jsx)(e.h2,{id:"sernconfigjson",children:"sern.config.json"}),"\n",(0,t.jsx)(e.p,{children:"A sern.config.json, although not necessary, allows your project to communicate with our cli."}),"\n",(0,t.jsxs)(e.p,{children:["For example, when installing typescript plugins, the language property is necessary to install from our\n",(0,t.jsx)(e.a,{href:"https://github.com/sern-handler/awesome-plugins",children:"open source repository"}),". ",(0,t.jsx)(e.br,{})]}),"\n",(0,t.jsxs)(e.p,{children:["Using the cli and running ",(0,t.jsx)(e.code,{children:"sern init --sync"})," on pre-existing projects should install this json file in the root directory given.\nOr, if this is a brand-new project, ",(0,t.jsx)(e.code,{children:"sern init"})," automatically installs it."]}),"\n",(0,t.jsx)(e.pre,{children:(0,t.jsx)(e.code,{className:"language-json",children:'{\n "language": "typescript",\n "paths": {\n "base": "src",\n "commands": "commands"\n }\n}\n'})})]})}function u(n={}){const{wrapper:e}={...(0,s.R)(),...n.components};return e?(0,t.jsx)(e,{...n,children:(0,t.jsx)(l,{...n})}):l(n)}},8453:(n,e,o)=>{o.d(e,{R:()=>i,x:()=>c});var t=o(6540);const s={},r=t.createContext(s);function i(n){const e=t.useContext(r);return t.useMemo((function(){return"function"==typeof n?n(e):{...e,...n}}),[e,n])}function c(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(s):n.components||s:i(n.components),t.createElement(r.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/3ae57366.d8e93ec3.js b/assets/js/3ae57366.d8e93ec3.js deleted file mode 100644 index 2c4c6bca8..000000000 --- a/assets/js/3ae57366.d8e93ec3.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2639],{1629:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>u,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var i=t(4848),r=t(8453);const s={sidebar_position:3},o="Transition from v2 to v3",a={id:"guide/walkthrough/transition",title:"Transition from v2 to v3",description:"v3 comes with the new Service api. To make sure to enable intellisense",source:"@site/docs/guide/walkthrough/transition.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/transition",permalink:"/docs/guide/walkthrough/transition",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/transition.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{sidebar_position:3},sidebar:"tutorialSidebar",previous:{title:"CLI",permalink:"/docs/guide/walkthrough/cli"},next:{title:"First Command",permalink:"/docs/guide/walkthrough/first-command"}},c={},d=[];function l(e){const n={a:"a",br:"br",code:"code",h1:"h1",img:"img",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"transition-from-v2-to-v3",children:"Transition from v2 to v3"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-diff",metastring:'title="src/index.ts"',children:"- Sern.makeDependencies({ build: () => {} })\n+ await makeDependencies({ build: () => {} })\n"})}),"\n",(0,i.jsxs)(n.p,{children:["v3 comes with the new ",(0,i.jsx)(n.a,{href:"../walkthrough/services",children:"Service api"}),". To make sure to enable intellisense\ninclude a dependencies.d.ts file into compilation. ",(0,i.jsx)(n.a,{href:"../../../blog/3.0.0",children:"Click here for all new features"})]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"/**\n * This file serves as intellisense for sern projects.\n * Types are declared here for dependencies to function properly\n * Service(s) api rely on this file to provide a better developer experience.\n */\n\nimport { SernEmitter, Logging, CoreModuleStore, ModuleManager, ErrorHandling, CoreDependencies, Singleton } from '@sern/handler'\nimport { Client } from 'discord.js'\n\ndeclare global {\n interface Dependencies extends CoreDependencies {\n '@sern/client': Singleton\n }\n}\n\nexport {}\n\n"})}),"\n",(0,i.jsxs)(n.p,{children:["A standard project file tree: ",(0,i.jsx)(n.br,{})]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.img,{alt:"file tree",src:t(1256).A+"",width:"314",height:"311"})})]})}function u(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(l,{...e})}):l(e)}},1256:(e,n,t)=>{t.d(n,{A:()=>i});const i=t.p+"assets/images/fs-1675f5c97d48bdee5c5937e7a51a9489.png"},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(6540);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3b15a34b.c5ad634a.js b/assets/js/3b15a34b.c5ad634a.js deleted file mode 100644 index f82e677a1..000000000 --- a/assets/js/3b15a34b.c5ad634a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5276],{5902:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>d,default:()=>f,frontMatter:()=>t,metadata:()=>l,toc:()=>c});var i=s(4848),r=s(8453);const t={id:"EventModuleDefs",title:"Interface: EventModuleDefs",sidebar_label:"EventModuleDefs",sidebar_position:0,custom_edit_url:null},d=void 0,l={id:"api/interfaces/EventModuleDefs",title:"Interface: EventModuleDefs",description:"Properties",source:"@site/docs/api/interfaces/EventModuleDefs.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/EventModuleDefs",permalink:"/docs/api/interfaces/EventModuleDefs",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"EventModuleDefs",title:"Interface: EventModuleDefs",sidebar_label:"EventModuleDefs",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ErrorHandling",permalink:"/docs/api/interfaces/ErrorHandling"},next:{title:"EventPlugin",permalink:"/docs/api/interfaces/EventPlugin"}},o={},c=[{value:"Properties",id:"properties",level:2},{value:"1",id:"1",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"2",id:"2",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"3",id:"3",level:3},{value:"Defined in",id:"defined-in-2",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"1",children:"1"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"1"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/DiscordEventCommand",children:(0,i.jsx)(n.code,{children:"DiscordEventCommand"})}),""]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L166",children:"src/types/core-modules.ts:166"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"2",children:"2"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"2"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/SernEventCommand",children:(0,i.jsx)(n.code,{children:"SernEventCommand"})}),""]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L165",children:"src/types/core-modules.ts:165"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"3",children:"3"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"3"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ExternalEventCommand",children:(0,i.jsx)(n.code,{children:"ExternalEventCommand"})})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L167",children:"src/types/core-modules.ts:167"})})]})}function f(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>d,x:()=>l});var i=s(6540);const r={},t=i.createContext(r);function d(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:d(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3dc7c79a.ee6642c4.js b/assets/js/3dc7c79a.ee6642c4.js deleted file mode 100644 index 46743b335..000000000 --- a/assets/js/3dc7c79a.ee6642c4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[612],{8914:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>a,contentTitle:()=>d,default:()=>g,frontMatter:()=>o,metadata:()=>s,toc:()=>c});var r=n(4848),i=n(8453);const o={},d="Preparing to Code",s={id:"guide/getting-started/preparing",title:"Preparing to Code",description:"After installing an IDE, you need to install node.",source:"@site/docs/guide/getting-started/preparing.md",sourceDirName:"guide/getting-started",slug:"/guide/getting-started/preparing",permalink:"/docs/guide/getting-started/preparing",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/getting-started/preparing.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Choosing an IDE",permalink:"/docs/guide/getting-started/choose-ide"},next:{title:"Goal",permalink:"/docs/guide/walkthrough/goal"}},a={},c=[{value:"Discord token",id:"discord-token",level:4}];function l(e){const t={a:"a",h1:"h1",h4:"h4",p:"p",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"preparing-to-code",children:"Preparing to Code"}),"\n",(0,r.jsx)(t.p,{children:"After installing an IDE, you need to install node."}),"\n",(0,r.jsxs)(t.p,{children:[(0,r.jsx)(t.a,{href:"https://nodejs.org/en/download/",children:"Click to download the LTS version of node right here"}),"."]}),"\n",(0,r.jsx)(t.p,{children:"After you downloaded node you will need:"}),"\n",(0,r.jsx)(t.h4,{id:"discord-token",children:(0,r.jsx)(t.a,{href:"https://github.com/reactiflux/discord-irc/wiki/Creating-a-discord-bot-&-getting-a-token",children:"Discord token"})}),"\n",(0,r.jsx)(t.p,{children:"CONTINUE \ud83e\udd13"})]})}function g(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>d,x:()=>s});var r=n(6540);const i={},o=r.createContext(i);function d(e){const t=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:d(e.components),r.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3f83d40d.f118a07d.js b/assets/js/3f83d40d.f118a07d.js deleted file mode 100644 index 063ae75c6..000000000 --- a/assets/js/3f83d40d.f118a07d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4523],{101:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>t,contentTitle:()=>o,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>d});var i=s(4848),l=s(8453);const r={slug:"2.5.0",title:"Release 2.5.0",authors:["jacoobes"],tags:["release"]},o=void 0,a={permalink:"/blog/2.5.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-01-12-mdx-blog-post.md",source:"@site/blog/2023-01-12-mdx-blog-post.md",title:"Release 2.5.0",description:"2.5 Release",date:"2023-01-12T00:00:00.000Z",formattedDate:"January 12, 2023",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:.895,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"2.5.0",title:"Release 2.5.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"Release 3.0.0",permalink:"/blog/3.0.0"},nextItem:{title:"Release 2.0.0",permalink:"/blog/2.0.0"}},t={authorsImageUrls:[void 0]},d=[{value:"2.5 Release",id:"25-release",level:2},{value:"Join our discord
",id:"join-our-discord-",level:3},{value:"Breaking changes",id:"breaking-changes",level:3},{value:"Deprecations",id:"deprecations",level:3},{value:"Reason",id:"reason",level:3}];function c(e){const n={a:"a",br:"br",code:"code",h2:"h2",h3:"h3",li:"li",strong:"strong",ul:"ul",...(0,l.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"25-release",children:"2.5 Release"}),"\n",(0,i.jsxs)(n.h3,{id:"join-our-discord-",children:["Join our ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord"})," ",(0,i.jsx)(n.br,{})]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Thank you for using sern in your projects. It's only going to get better!"}),"\n",(0,i.jsxs)(n.li,{children:["I apologize for the sudden small breaking change. After this update, there won't be any for a while.\nWow! We're increasing our semantic versioning by ",(0,i.jsx)(n.code,{children:"+0.3.9"})," ",(0,i.jsx)(n.br,{}),"\nWhat does this mean?"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"breaking-changes",children:"Breaking changes"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api/modules#controller",children:"controller"})," parameter for plugins has been removed\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"You'll need to import it instead"}),"\n",(0,i.jsxs)(n.li,{children:["This ",(0,i.jsx)(n.strong,{children:"breaks"})," old ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/CommandPlugin",children:"CommandPlugin"}),", but ",(0,i.jsx)(n.strong,{children:"not"})," old ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/EventPlugin",children:"EventPlugin"})]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"deprecations",children:"Deprecations"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api/interfaces/CommandPlugin",children:"CommandPlugin"})," and ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/EventPlugin",children:"EventPlugin"})," have been renamed ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/InitPlugin",children:"InitPlugin"})," and ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/ControlPlugin",children:"ControlPlugin"})]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"reason",children:"Reason"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more."}),"\n",(0,i.jsxs)(n.li,{children:["I realize that this affects all plugins. I have updated all ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/awesome-plugins/pull/68",children:"plugins"})," to match these changes"]}),"\n",(0,i.jsxs)(n.li,{children:["The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#commandcontrolplugin",children:"CommandControlPlugin"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#commandinitplugin",children:"CommandInitPlugin"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#eventcontrolplugin",children:"EventControlPlugin"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#eventinitplugin",children:"EventInitPlugin"})}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api/modules#discordeventcontrolplugin",children:"DiscordEventControlPlugin"}),"\nThis will probably be the last breaking change in a while. Thanks for using sern!"]}),"\n"]}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>o,x:()=>a});var i=s(6540);const l={},r=i.createContext(l);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/416.565dfe5d.js b/assets/js/416.565dfe5d.js deleted file mode 100644 index a5e21cdb1..000000000 --- a/assets/js/416.565dfe5d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[416],{416:(e,s,b)=>{b.r(s)}}]); \ No newline at end of file diff --git a/assets/js/425cbb82.4e855fab.js b/assets/js/425cbb82.4e855fab.js deleted file mode 100644 index ae81c135d..000000000 --- a/assets/js/425cbb82.4e855fab.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9563],{8403:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>h,frontMatter:()=>s,metadata:()=>d,toc:()=>a});var r=t(4848),i=t(8453);const s={id:"Plugin",title:"Interface: Plugin",sidebar_label:"Plugin",sidebar_position:0,custom_edit_url:null},l=void 0,d={id:"api/interfaces/Plugin",title:"Interface: Plugin",description:"Type parameters",source:"@site/docs/api/interfaces/Plugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Plugin",permalink:"/docs/api/interfaces/Plugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Plugin",title:"Interface: Plugin",sidebar_label:"Plugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ModuleManager",permalink:"/docs/api/interfaces/ModuleManager"},next:{title:"RoleSelectCommand",permalink:"/docs/api/interfaces/RoleSelectCommand"}},c={},a=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,r.jsx)(n.code,{children:"any"}),"[] = ",(0,r.jsx)(n.code,{children:"any"}),"[]"]})]})})]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"Args"}),") => ",(0,r.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,r.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"...args"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,r.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"...args"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Args"})})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,r.jsx)(n.code,{children:"PluginResult"})})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L64",children:"src/types/core-plugin.ts:64"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType",children:(0,r.jsx)(n.code,{children:"PluginType"})})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L63",children:"src/types/core-plugin.ts:63"})})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>d});var r=t(6540);const i={},s=r.createContext(i);function l(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/4279c33d.efcbca06.js b/assets/js/4279c33d.efcbca06.js deleted file mode 100644 index bb347409f..000000000 --- a/assets/js/4279c33d.efcbca06.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9302],{4076:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>a,frontMatter:()=>l,metadata:()=>t,toc:()=>h});var d=i(4848),r=i(8453);const l={id:"ChannelSelectCommand",title:"Interface: ChannelSelectCommand",sidebar_label:"ChannelSelectCommand",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/ChannelSelectCommand",title:"Interface: ChannelSelectCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/ChannelSelectCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ChannelSelectCommand",permalink:"/docs/api/interfaces/ChannelSelectCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ChannelSelectCommand",title:"Interface: ChannelSelectCommand",sidebar_label:"ChannelSelectCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ButtonCommand",permalink:"/docs/api/interfaces/ButtonCommand"},next:{title:"CommandModuleDefs",permalink:"/docs/api/interfaces/CommandModuleDefs"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"ChannelSelectCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.code,{children:"ChannelSelectMenuInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"ChannelSelectMenuInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L75",children:"src/types/core-modules.ts:75"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#channelselect",children:(0,d.jsx)(n.code,{children:"ChannelSelect"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L74",children:"src/types/core-modules.ts:74"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var d=i(6540);const r={},l=d.createContext(r);function s(e){const n=d.useContext(l);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),d.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/447d9066.2f7fdcff.js b/assets/js/447d9066.2f7fdcff.js deleted file mode 100644 index 3f19ff837..000000000 --- a/assets/js/447d9066.2f7fdcff.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[717],{2:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>a,frontMatter:()=>l,metadata:()=>t,toc:()=>o});var d=i(4848),r=i(8453);const l={id:"ModalSubmitCommand",title:"Interface: ModalSubmitCommand",sidebar_label:"ModalSubmitCommand",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/ModalSubmitCommand",title:"Interface: ModalSubmitCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/ModalSubmitCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ModalSubmitCommand",permalink:"/docs/api/interfaces/ModalSubmitCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ModalSubmitCommand",title:"Interface: ModalSubmitCommand",sidebar_label:"ModalSubmitCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"MentionableSelectCommand",permalink:"/docs/api/interfaces/MentionableSelectCommand"},next:{title:"Module",permalink:"/docs/api/interfaces/Module"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"ModalSubmitCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.code,{children:"ModalSubmitInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"ModalSubmitInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L95",children:"src/types/core-modules.ts:95"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#modal",children:(0,d.jsx)(n.code,{children:"Modal"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L94",children:"src/types/core-modules.ts:94"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var d=i(6540);const r={},l=d.createContext(r);function s(e){const n=d.useContext(l);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),d.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/462b6925.929f3fc0.js b/assets/js/462b6925.929f3fc0.js deleted file mode 100644 index 79da94868..000000000 --- a/assets/js/462b6925.929f3fc0.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5617],{4438:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>r,metadata:()=>t,toc:()=>h});var d=i(4848),s=i(8453);const r={id:"SlashCommand",title:"Interface: SlashCommand",sidebar_label:"SlashCommand",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/SlashCommand",title:"Interface: SlashCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/SlashCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SlashCommand",permalink:"/docs/api/interfaces/SlashCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SlashCommand",title:"Interface: SlashCommand",sidebar_label:"SlashCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernSubCommandGroupData",permalink:"/docs/api/interfaces/SernSubCommandGroupData"},next:{title:"StringSelectCommand",permalink:"/docs/api/interfaces/StringSelectCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"options",id:"options",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-6",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"SlashCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L118",children:"src/types/core-modules.ts:118"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,d.jsx)(n.code,{children:"Context"})}),", ",(0,d.jsx)(n.code,{children:"args"}),": [",(0,d.jsx)(n.code,{children:'"slash"'}),", ",(0,d.jsx)(n.a,{href:"/docs/api/modules#slashoptions",children:(0,d.jsx)(n.code,{children:"SlashOptions"})}),"]) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),", ",(0,d.jsx)(n.code,{children:"args"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,d.jsx)(n.code,{children:"Context"})})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"args"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["[",(0,d.jsx)(n.code,{children:'"slash"'}),", ",(0,d.jsx)(n.a,{href:"/docs/api/modules#slashoptions",children:(0,d.jsx)(n.code,{children:"SlashOptions"})}),"]"]})]})]})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L120",children:"src/types/core-modules.ts:120"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"options",children:"options"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"options"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#sernoptionsdata",children:(0,d.jsx)(n.code,{children:"SernOptionsData"})}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L119",children:"src/types/core-modules.ts:119"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#slash",children:(0,d.jsx)(n.code,{children:"Slash"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L117",children:"src/types/core-modules.ts:117"})})]})}function a(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var d=i(6540);const s={},r=d.createContext(s);function l(e){const n=d.useContext(r);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),d.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/46963930.2e9d61dc.js b/assets/js/46963930.2e9d61dc.js deleted file mode 100644 index 494c6f54d..000000000 --- a/assets/js/46963930.2e9d61dc.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8389],{5126:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>t,contentTitle:()=>l,default:()=>h,frontMatter:()=>d,metadata:()=>c,toc:()=>o});var i=r(4848),s=r(8453);const d={id:"CoreDependencies",title:"Interface: CoreDependencies",sidebar_label:"CoreDependencies",sidebar_position:0,custom_edit_url:null},l=void 0,c={id:"api/interfaces/CoreDependencies",title:"Interface: CoreDependencies",description:"Properties",source:"@site/docs/api/interfaces/CoreDependencies.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/CoreDependencies",permalink:"/docs/api/interfaces/CoreDependencies",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CoreDependencies",title:"Interface: CoreDependencies",sidebar_label:"CoreDependencies",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Controller",permalink:"/docs/api/interfaces/Controller"},next:{title:"CoreModuleStore",permalink:"/docs/api/interfaces/CoreModuleStore"}},t={},o=[{value:"Properties",id:"properties",level:2},{value:"@sern/client",id:"sernclient",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in",level:4},{value:"@sern/emitter",id:"sernemitter",level:3},{value:"Type declaration",id:"type-declaration-1",level:4},{value:"Returns",id:"returns-1",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"@sern/errors",id:"sernerrors",level:3},{value:"Type declaration",id:"type-declaration-2",level:4},{value:"Returns",id:"returns-2",level:5},{value:"Defined in",id:"defined-in-2",level:4},{value:"@sern/logger",id:"sernlogger",level:3},{value:"Type declaration",id:"type-declaration-3",level:4},{value:"Returns",id:"returns-3",level:5},{value:"Defined in",id:"defined-in-3",level:4},{value:"@sern/modules",id:"sernmodules",level:3},{value:"Type declaration",id:"type-declaration-4",level:4},{value:"Returns",id:"returns-4",level:5},{value:"Defined in",id:"defined-in-4",level:4},{value:"@sern/store",id:"sernstore",level:3},{value:"Type declaration",id:"type-declaration-5",level:4},{value:"Returns",id:"returns-5",level:5},{value:"Defined in",id:"defined-in-5",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"sernclient",children:"@sern/client"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"@sern/client"}),": () => ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,i.jsx)(n.code,{children:"Emitter"})})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,i.jsx)(n.code,{children:"Emitter"})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,i.jsx)(n.code,{children:"Emitter"})})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L28",children:"src/types/ioc.ts:28"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"sernemitter",children:"@sern/emitter"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"@sern/emitter"}),": () => ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,i.jsx)(n.code,{children:"Emitter"})})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration-1",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,i.jsx)(n.code,{children:"Emitter"})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns-1",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,i.jsx)(n.code,{children:"Emitter"})})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L29",children:"src/types/ioc.ts:29"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"sernerrors",children:"@sern/errors"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"@sern/errors"}),": () => ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ErrorHandling",children:(0,i.jsx)(n.code,{children:"ErrorHandling"})})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration-2",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ErrorHandling",children:(0,i.jsx)(n.code,{children:"ErrorHandling"})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns-2",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ErrorHandling",children:(0,i.jsx)(n.code,{children:"ErrorHandling"})})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L36",children:"src/types/ioc.ts:36"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"sernlogger",children:"@sern/logger"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"@sern/logger"}),": () => ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:(0,i.jsx)(n.code,{children:"Logging"})}),"<",(0,i.jsx)(n.code,{children:"unknown"}),">"]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration-3",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:(0,i.jsx)(n.code,{children:"Logging"})}),"<",(0,i.jsx)(n.code,{children:"unknown"}),">"]}),"\n",(0,i.jsx)(n.h5,{id:"returns-3",children:"Returns"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:(0,i.jsx)(n.code,{children:"Logging"})}),"<",(0,i.jsx)(n.code,{children:"unknown"}),">"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L37",children:"src/types/ioc.ts:37"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"sernmodules",children:"@sern/modules"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"@sern/modules"}),": () => ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:(0,i.jsx)(n.code,{children:"ModuleManager"})})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration-4",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:(0,i.jsx)(n.code,{children:"ModuleManager"})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns-4",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:(0,i.jsx)(n.code,{children:"ModuleManager"})})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L35",children:"src/types/ioc.ts:35"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"sernstore",children:"@sern/store"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"@sern/store"}),": () => ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/CoreModuleStore",children:(0,i.jsx)(n.code,{children:"CoreModuleStore"})})]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,i.jsx)(n.p,{children:"Will be removed and turned internal"}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration-5",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/CoreModuleStore",children:(0,i.jsx)(n.code,{children:"CoreModuleStore"})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns-5",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/interfaces/CoreModuleStore",children:(0,i.jsx)(n.code,{children:"CoreModuleStore"})})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L34",children:"src/types/ioc.ts:34"})})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>l,x:()=>c});var i=r(6540);const s={},d=i.createContext(s);function l(e){const n=i.useContext(d);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/476a0444.6d76be09.js b/assets/js/476a0444.6d76be09.js deleted file mode 100644 index ea9a21750..000000000 --- a/assets/js/476a0444.6d76be09.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2667],{149:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>o,frontMatter:()=>s,metadata:()=>d,toc:()=>a});var i=t(4848),r=t(8453);const s={id:"InitPlugin",title:"Interface: InitPlugin",sidebar_label:"InitPlugin",sidebar_position:0,custom_edit_url:null},l=void 0,d={id:"api/interfaces/InitPlugin",title:"Interface: InitPlugin",description:"Type parameters",source:"@site/docs/api/interfaces/InitPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/InitPlugin",permalink:"/docs/api/interfaces/InitPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"InitPlugin",title:"Interface: InitPlugin",sidebar_label:"InitPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"InitArgs",permalink:"/docs/api/interfaces/InitArgs"},next:{title:"Logging",permalink:"/docs/api/interfaces/Logging"}},c={},a=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"Args"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,i.jsx)(n.code,{children:"any"}),"[] = ",(0,i.jsx)(n.code,{children:"any"}),"[]"]})]})})]}),"\n",(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"execute"}),": (...",(0,i.jsx)(n.code,{children:"args"}),": ",(0,i.jsx)(n.code,{children:"Args"}),") => ",(0,i.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,i.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (",(0,i.jsx)(n.code,{children:"...args"}),"): ",(0,i.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,i.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,i.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"...args"})}),(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"Args"})})]})})]}),"\n",(0,i.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,i.jsx)(n.code,{children:"PluginResult"})})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L69",children:"src/types/core-plugin.ts:69"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"type"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/enums/PluginType#init",children:(0,i.jsx)(n.code,{children:"Init"})})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L68",children:"src/types/core-plugin.ts:68"})})]})}function o(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>d});var i=t(6540);const r={},s=i.createContext(r);function l(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/4b098d2e.f6e83fca.js b/assets/js/4b098d2e.f6e83fca.js deleted file mode 100644 index 15cc248bc..000000000 --- a/assets/js/4b098d2e.f6e83fca.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7567],{3142:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>s,metadata:()=>t,toc:()=>h});var r=i(4848),d=i(8453);const s={id:"UserSelectCommand",title:"Interface: UserSelectCommand",sidebar_label:"UserSelectCommand",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/UserSelectCommand",title:"Interface: UserSelectCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/UserSelectCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/UserSelectCommand",permalink:"/docs/api/interfaces/UserSelectCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"UserSelectCommand",title:"Interface: UserSelectCommand",sidebar_label:"UserSelectCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"TextCommand",permalink:"/docs/api/interfaces/TextCommand"},next:{title:"Wrapper",permalink:"/docs/api/interfaces/Wrapper"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Module"})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"UserSelectCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.description"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"ctx"}),": ",(0,r.jsx)(n.code,{children:"UserSelectMenuInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">) => ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"ctx"}),"): ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"ctx"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"UserSelectMenuInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"unknown"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.execute"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L90",children:"src/types/core-modules.ts:90"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.name"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"onEvent"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,r.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"plugins"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,r.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/CommandType#userselect",children:(0,r.jsx)(n.code,{children:"UserSelect"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.type"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L89",children:"src/types/core-modules.ts:89"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var r=i(6540);const d={},s=r.createContext(d);function l(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:l(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/4d00c3f4.7fc18024.js b/assets/js/4d00c3f4.7fc18024.js deleted file mode 100644 index d129cf5a5..000000000 --- a/assets/js/4d00c3f4.7fc18024.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8507],{1363:(e,n,d)=>{d.r(n),d.d(n,{assets:()=>t,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>c,toc:()=>a});var s=d(4848),i=d(8453);const r={id:"CommandModuleDefs",title:"Interface: CommandModuleDefs",sidebar_label:"CommandModuleDefs",sidebar_position:0,custom_edit_url:null},l=void 0,c={id:"api/interfaces/CommandModuleDefs",title:"Interface: CommandModuleDefs",description:"Properties",source:"@site/docs/api/interfaces/CommandModuleDefs.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/CommandModuleDefs",permalink:"/docs/api/interfaces/CommandModuleDefs",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CommandModuleDefs",title:"Interface: CommandModuleDefs",sidebar_label:"CommandModuleDefs",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ChannelSelectCommand",permalink:"/docs/api/interfaces/ChannelSelectCommand"},next:{title:"CommandPlugin",permalink:"/docs/api/interfaces/CommandPlugin"}},t={},a=[{value:"Properties",id:"properties",level:2},{value:"1",id:"1",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"1024",id:"1024",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"128",id:"128",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"16",id:"16",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"2",id:"2",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"256",id:"256",level:3},{value:"Defined in",id:"defined-in-5",level:4},{value:"3",id:"3",level:3},{value:"Defined in",id:"defined-in-6",level:4},{value:"32",id:"32",level:3},{value:"Defined in",id:"defined-in-7",level:4},{value:"4",id:"4",level:3},{value:"Defined in",id:"defined-in-8",level:4},{value:"512",id:"512",level:3},{value:"Defined in",id:"defined-in-9",level:4},{value:"64",id:"64",level:3},{value:"Defined in",id:"defined-in-10",level:4},{value:"8",id:"8",level:3},{value:"Defined in",id:"defined-in-11",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,s.jsx)(n.h3,{id:"1",children:"1"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"1"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/TextCommand",children:(0,s.jsx)(n.code,{children:"TextCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L150",children:"src/types/core-modules.ts:150"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"1024",children:"1024"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"1024"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/ChannelSelectCommand",children:(0,s.jsx)(n.code,{children:"ChannelSelectCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L158",children:"src/types/core-modules.ts:158"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"128",children:"128"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"128"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/UserSelectCommand",children:(0,s.jsx)(n.code,{children:"UserSelectCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L160",children:"src/types/core-modules.ts:160"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"16",children:"16"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"16"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/ButtonCommand",children:(0,s.jsx)(n.code,{children:"ButtonCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L155",children:"src/types/core-modules.ts:155"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"2",children:"2"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"2"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/SlashCommand",children:(0,s.jsx)(n.code,{children:"SlashCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L151",children:"src/types/core-modules.ts:151"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"256",children:"256"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"256"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/RoleSelectCommand",children:(0,s.jsx)(n.code,{children:"RoleSelectCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L157",children:"src/types/core-modules.ts:157"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"3",children:"3"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"3"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/BothCommand",children:(0,s.jsx)(n.code,{children:"BothCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L152",children:"src/types/core-modules.ts:152"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"32",children:"32"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"32"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/StringSelectCommand",children:(0,s.jsx)(n.code,{children:"StringSelectCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L156",children:"src/types/core-modules.ts:156"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"4",children:"4"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"4"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuUser",children:(0,s.jsx)(n.code,{children:"ContextMenuUser"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-8",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L154",children:"src/types/core-modules.ts:154"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"512",children:"512"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"512"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/MentionableSelectCommand",children:(0,s.jsx)(n.code,{children:"MentionableSelectCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-9",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L159",children:"src/types/core-modules.ts:159"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"64",children:"64"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"64"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/ModalSubmitCommand",children:(0,s.jsx)(n.code,{children:"ModalSubmitCommand"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-10",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L161",children:"src/types/core-modules.ts:161"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"8",children:"8"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"8"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuMsg",children:(0,s.jsx)(n.code,{children:"ContextMenuMsg"})})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-11",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L153",children:"src/types/core-modules.ts:153"})})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},8453:(e,n,d)=>{d.d(n,{R:()=>l,x:()=>c});var s=d(6540);const i={},r=s.createContext(i);function l(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/4e28a08b.ed6edefd.js b/assets/js/4e28a08b.ed6edefd.js deleted file mode 100644 index 0abadce5d..000000000 --- a/assets/js/4e28a08b.ed6edefd.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8881],{631:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>a,frontMatter:()=>l,metadata:()=>t,toc:()=>o});var d=i(4848),r=i(8453);const l={id:"RoleSelectCommand",title:"Interface: RoleSelectCommand",sidebar_label:"RoleSelectCommand",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/RoleSelectCommand",title:"Interface: RoleSelectCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/RoleSelectCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/RoleSelectCommand",permalink:"/docs/api/interfaces/RoleSelectCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"RoleSelectCommand",title:"Interface: RoleSelectCommand",sidebar_label:"RoleSelectCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Plugin",permalink:"/docs/api/interfaces/Plugin"},next:{title:"SernAutocompleteData",permalink:"/docs/api/interfaces/SernAutocompleteData"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"RoleSelectCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.code,{children:"RoleSelectMenuInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"RoleSelectMenuInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L80",children:"src/types/core-modules.ts:80"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#roleselect",children:(0,d.jsx)(n.code,{children:"RoleSelect"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L79",children:"src/types/core-modules.ts:79"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var d=i(6540);const r={},l=d.createContext(r);function s(e){const n=d.useContext(l);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),d.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/4fef5a93.9c85f814.js b/assets/js/4fef5a93.9c85f814.js deleted file mode 100644 index bd55c67df..000000000 --- a/assets/js/4fef5a93.9c85f814.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1986],{9455:(e,o,t)=>{t.r(o),t.d(o,{assets:()=>l,contentTitle:()=>s,default:()=>c,frontMatter:()=>a,metadata:()=>i,toc:()=>u});var r=t(4848),n=t(8453);const a={slug:"railway-deploy",title:"Deploying sern with Railway",authors:["Duro"],tags:["guides"]},s=void 0,i={permalink:"/blog/railway-deploy",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2024-02-23-mdx-blog-post.md",source:"@site/blog/2024-02-23-mdx-blog-post.md",title:"Deploying sern with Railway",description:"In this guide, I'll be showing you how to deploy your sern bot with Railway.",date:"2024-02-23T00:00:00.000Z",formattedDate:"February 23, 2024",tags:[{label:"guides",permalink:"/blog/tags/guides"}],readingTime:1.47,hasTruncateMarker:!1,authors:[{name:"Duro",title:"Developer",url:"https://github.com/DuroCodes",imageURL:"https://github.com/DuroCodes.png",key:"Duro"}],frontMatter:{slug:"railway-deploy",title:"Deploying sern with Railway",authors:["Duro"],tags:["guides"]},unlisted:!1,nextItem:{title:"New logo!",permalink:"/blog/newlogo"}},l={authorsImageUrls:[void 0]},u=[{value:"GitHub Repository",id:"github-repository",level:2},{value:"Railway Setup",id:"railway-setup",level:2},{value:"Deploy",id:"deploy",level:2}];function d(e){const o={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",...(0,n.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(o.p,{children:["In this guide, I'll be showing you how to deploy your sern bot with ",(0,r.jsx)(o.a,{href:"https://railway.app/",children:"Railway"}),"."]}),"\n",(0,r.jsxs)(o.p,{children:["This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the ",(0,r.jsx)(o.a,{href:"/blog/getting-started",children:"Getting Started"})," guide to set up your bot."]}),"\n",(0,r.jsx)(o.h2,{id:"github-repository",children:"GitHub Repository"}),"\n",(0,r.jsxs)(o.p,{children:["The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the ",(0,r.jsx)(o.a,{href:"https://docs.github.com/en/get-started/quickstart/create-a-repo",children:"GitHub guide"}),"."]}),"\n",(0,r.jsx)(o.p,{children:"Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway."}),"\n",(0,r.jsx)(o.h2,{id:"railway-setup",children:"Railway Setup"}),"\n",(0,r.jsxs)(o.p,{children:["After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at ",(0,r.jsx)(o.a,{href:"https://railway.app/",children:"railway.app"}),"."]}),"\n",(0,r.jsxs)(o.p,{children:["Once you've created your account, navigate to the ",(0,r.jsx)(o.a,{href:"https://railway.app/dashboard",children:"dashboard"}),' and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot\'s repository.']}),"\n",(0,r.jsxs)(o.p,{children:["Once you've selected your repository, click the \"Add Variables\" button to add your bot's environment variables. You'll need your environment variables from your ",(0,r.jsx)(o.code,{children:".env"})," file to add to Railway. (You can also add these later if you want.)"]}),"\n",(0,r.jsx)(o.h2,{id:"deploy",children:"Deploy"}),"\n",(0,r.jsx)(o.p,{children:"Once you've added your environment variables, click the \"Deploy\" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs."}),"\n",(0,r.jsxs)(o.admonition,{type:"note",children:[(0,r.jsxs)(o.p,{children:["Make sure you add your environment variables, and your node start script is correct in your ",(0,r.jsx)(o.code,{children:"package.json"})," file."]}),(0,r.jsx)(o.p,{children:"If you have any issues deploying your bot, you can check the logs for any errors."})]}),"\n",(0,r.jsxs)(o.p,{children:["That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the ",(0,r.jsx)(o.a,{href:"https://sern.dev/discord",children:"sern Discord server"}),"."]})]})}function c(e={}){const{wrapper:o}={...(0,n.R)(),...e.components};return o?(0,r.jsx)(o,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},8453:(e,o,t)=>{t.d(o,{R:()=>s,x:()=>i});var r=t(6540);const n={},a=r.createContext(n);function s(e){const o=r.useContext(a);return r.useMemo((function(){return"function"==typeof e?e(o):{...o,...e}}),[o,e])}function i(e){let o;return o=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:s(e.components),r.createElement(a.Provider,{value:o},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/522b21a2.0f1c9994.js b/assets/js/522b21a2.0f1c9994.js deleted file mode 100644 index 85965167e..000000000 --- a/assets/js/522b21a2.0f1c9994.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[284],{4810:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>t,default:()=>h,frontMatter:()=>r,metadata:()=>d,toc:()=>o});var i=s(4848),l=s(8453);const r={slug:"3.0.0",title:"Release 3.0.0",authors:["jacoobes"],tags:["release"]},t=void 0,d={permalink:"/blog/3.0.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-06-18-mdx-blog-post.md",source:"@site/blog/2023-06-18-mdx-blog-post.md",title:"Release 3.0.0",description:"3.0 Release",date:"2023-06-18T00:00:00.000Z",formattedDate:"June 18, 2023",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:2.475,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"3.0.0",title:"Release 3.0.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"New logo!",permalink:"/blog/newlogo"},nextItem:{title:"Release 2.5.0",permalink:"/blog/2.5.0"}},a={authorsImageUrls:[void 0]},o=[{value:"3.0 Release",id:"30-release",level:2},{value:"Join our discord
",id:"join-our-discord-",level:3},{value:"Features",id:"features",level:3},{value:"Dependency Management",id:"dependency-management",level:4},{value:"Quality of Life",id:"quality-of-life",level:4},{value:"Experimental",id:"experimental",level:3},{value:"Breaking changes",id:"breaking-changes",level:3},{value:"Deprecations",id:"deprecations",level:3}];function c(e){const n={a:"a",br:"br",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",pre:"pre",ul:"ul",...(0,l.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"30-release",children:"3.0 Release"}),"\n",(0,i.jsxs)(n.h3,{id:"join-our-discord-",children:["Join our ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord"})," ",(0,i.jsx)(n.br,{})]}),"\n",(0,i.jsx)(n.h3,{id:"features",children:"Features"}),"\n",(0,i.jsx)(n.h4,{id:"dependency-management",children:"Dependency Management"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"Service"})," API (recommended to use this over useContainer hooks)\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Dependencies type must be globally augmented in order for Services api to function properly"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["new methods on ModuleManager\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"getPublishableCommands()"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Init Hooks\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"implement starting behavior for dependencies"}),"\n",(0,i.jsxs)(n.li,{children:["To enforce and type check this, use the ",(0,i.jsx)(n.code,{children:"Initializable"})," type when making your Dependencies type!"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Emitter interface\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"More generic interface to define any event emitter"}),"\n",(0,i.jsx)(n.li,{children:"You can now swap out the SernEmitter with whatever emitter now."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"class DatabaseService implements Init {\n //some hypothetical database\n _pgsql : database() \n\n async init() {\n await _pgsql.load()\n }\n\n}\n\nawait makeDependencies({ \n build: root => root.add({\n db: new DatabaseService() //will be init'ed automatically\n })\n})\n\n"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["new SernEmitter event ",(0,i.jsx)(n.code,{children:"modulesLoaded"})," , which allows users to customize behavior after all modules are loaded!"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"\nexport default eventModule({\n name: 'modulesLoaded',\n type: EventType.Sern,\n execute: () => {\n console.log('All modules loaded')\n }\n})\n\n\n"})}),"\n",(0,i.jsx)(n.h4,{id:"quality-of-life",children:"Quality of Life"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"faster module loading"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"I utilize async generators for reading files now. A lot faster than the first iteration."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"better error handling"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Less boilerplate"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Services api cleans up v2 boilerplate"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"class modules devex got upgraded and work better than before"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["ignore commands and events with ",(0,i.jsx)(n.code,{children:"!"})," prefix on filename or directory (ie: ",(0,i.jsx)(n.code,{children:"!filename.ts"})," or ",(0,i.jsx)(n.code,{children:"!directory"})," will be ignored by sern)"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"Service"})," API (recommended to use this over useContainer hooks)"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Dependencies type must be globally augmented in order for Services api to function properly"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Less boilerplate"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"new methods on ModuleManager"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["ignore commands / events with ",(0,i.jsx)(n.code,{children:"!"})," prefix on filename or directory (ie: ",(0,i.jsx)(n.code,{children:"!filename.ts"})," or ",(0,i.jsx)(n.code,{children:"!directory"}),")"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:["new SernEmitter event ",(0,i.jsx)(n.code,{children:"modulesLoaded"})," , which allows users to customize behavior after all modules are loaded!"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Init Hooks"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"implement starting behavior for dependencies"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"experimental",children:"Experimental"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Experimental things may be subject to removal, need feedback and are not guaranteed stable"}),"\n",(0,i.jsxs)(n.li,{children:["dev / prod mode\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"sern will behave differently depending on mode set"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["init sern from ",(0,i.jsx)(n.code,{children:"file"})," option\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"reads from local sern.config.json"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-js",children:"Sern.init('file'); \n"})}),"\n",(0,i.jsx)(n.h3,{id:"breaking-changes",children:"Breaking changes"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Sern.makeDependencies -> makeDependencies\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.li,{children:"module store and manager internally changed, so those using them may recieve breaking changes"}),"\n",(0,i.jsx)(n.li,{children:"BaseOptions type removed"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-diff",children:"- Sern.makeDependencies({ build: () => {} })\n+ await makeDependencies({ build: () => {} })\n"})}),"\n",(0,i.jsx)(n.h3,{id:"deprecations",children:"Deprecations"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Removed all previous marked deprecations in v3"}),"\n",(0,i.jsx)(n.li,{children:"ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager"}),"\n",(0,i.jsx)(n.li,{children:"Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract"}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>t,x:()=>d});var i=s(6540);const l={},r=i.createContext(l);function t(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:t(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/53944420.ad694c41.js b/assets/js/53944420.ad694c41.js deleted file mode 100644 index cf9b4da9d..000000000 --- a/assets/js/53944420.ad694c41.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3218],{2867:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>d,metadata:()=>s,toc:()=>o});var r=i(4848),l=i(8453);const d={id:"AutocompletePlugin",title:"Interface: AutocompletePlugin",sidebar_label:"AutocompletePlugin",sidebar_position:0,custom_edit_url:null},t=void 0,s={id:"api/interfaces/AutocompletePlugin",title:"Interface: AutocompletePlugin",description:"Hierarchy",source:"@site/docs/api/interfaces/AutocompletePlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/AutocompletePlugin",permalink:"/docs/api/interfaces/AutocompletePlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"AutocompletePlugin",title:"Interface: AutocompletePlugin",sidebar_label:"AutocompletePlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"AutocompleteCommand",permalink:"/docs/api/interfaces/AutocompleteCommand"},next:{title:"BothCommand",permalink:"/docs/api/interfaces/BothCommand"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"AutocompletePlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"autocmp"}),": ",(0,r.jsx)(n.code,{children:"AutocompleteInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">, ",(0,r.jsx)(n.code,{children:"controlller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"autocmp"}),", ",(0,r.jsx)(n.code,{children:"controlller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"autocmp"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"AutocompleteInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controlller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L73",children:"src/handler/plugins/plugin.ts:73"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L31",children:"src/handler/plugins/plugin.ts:31"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,r.jsx)(n.code,{children:"Event"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L72",children:"src/handler/plugins/plugin.ts:72"})})]})}function a(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>s});var r=i(6540);const l={},d=r.createContext(l);function t(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:t(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/54bc704d.d663c813.js b/assets/js/54bc704d.d663c813.js deleted file mode 100644 index 7d6253664..000000000 --- a/assets/js/54bc704d.d663c813.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3788],{334:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var i=t(4848),s=t(8453);const r={},l=void 0,a={id:"cli/clear",title:"clear",description:"Implicits",source:"@site/docs/cli/clear.md",sourceDirName:"cli",slug:"/cli/clear",permalink:"/docs/cli/clear",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/cli/clear.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"build",permalink:"/docs/cli/build"},next:{title:"extra",permalink:"/docs/cli/extra"}},o={},c=[{value:"Implicits",id:"implicits",level:2},{value:"Features",id:"features",level:2}];function d(e){const n={a:"a",code:"code",h2:"h2",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"Usage: sern commands clear [options]\n\nClear and reset commands-data-remote.json and the api\n\nOptions:\n -y, --yes Say yes to all prompts\n -e, --env [path] Supply a path to a .env\n -h, --help display help for command\n"})}),"\n",(0,i.jsx)(n.h2,{id:"implicits",children:"Implicits"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Automatically reads a .env in the working directory. For seamless integration, your .env file should look like this:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-txt",metastring:'title=".env" ',children:"DISCORD_TOKEN=\nAPPLICATION_ID=\nNODE_ENV=\n"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:["Calls the discord API with the ",(0,i.jsx)(n.a,{href:"https://discord.com/developers/docs/interactions/application-commands#bulk-overwrite-global-application-commands",children:"PUT route"})," with an EMPTY array, essentially setting all registered commands to nothing."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:["Optionally override an .env path as a command line argument as well. ",(0,i.jsx)(n.strong,{children:"CLI arguments take precedence."}),"\nIf you do not know how to obtain either of these credentials, ",(0,i.jsx)(n.a,{href:"https://github.com/reactiflux/discord-irc/wiki/Creating-a-discord-bot-&-getting-a-token",children:"click here"})]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:["Automatically confirm with the ",(0,i.jsx)(n.strong,{children:"-y"})," flag."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"features",children:"Features"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Clears all application data and sern-commands-data.json"}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>a});var i=t(6540);const s={},r=i.createContext(s);function l(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/57124ee9.2d5f15a0.js b/assets/js/57124ee9.2d5f15a0.js deleted file mode 100644 index 8100b12ca..000000000 --- a/assets/js/57124ee9.2d5f15a0.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3993],{3956:(e,n,s)=>{s.r(n),s.d(n,{default:()=>l});var t=s(8511);const o={sponsorLayout:"sponsorLayout_gqDV",sponsorCard:"sponsorCard_N1Zc",sponsorMoney:"sponsorMoney_xMYY"};var a=s(6540),r=s(4848);function i(){const[e,n]=(0,a.useState)({});return(0,a.useEffect)((()=>{(async()=>{fetch("https://opencollective.com/api/graphql/v2",{body:JSON.stringify({operationName:"BannerTopContributors",variables:{collectiveSlug:"sern"},query:"query BannerTopContributors($collectiveSlug: String!) {\n account(slug: $collectiveSlug, throwIfMissing: false) {\n id\n currency\n slug\n ... on AccountWithContributions {\n contributors(limit: 150) {\n totalCount\n nodes {\n id\n name\n roles\n isAdmin\n isCore\n isBacker\n since\n image\n description\n collectiveSlug\n totalAmountDonated\n type\n publicMessage\n isIncognito\n __typename\n }\n __typename\n }\n __typename\n }\n __typename\n }\n}"}),method:"POST",headers:{"content-type":"application/json"}}).then((async e=>n(await e.json())))})()}),[]),e.data?(0,r.jsx)("div",{className:o.sponsorLayout,children:e.data?.account?.contributors?.nodes.filter((e=>e.totalAmountDonated>0)).map(((e,n)=>(0,r.jsxs)("div",{className:o.sponsorCard,children:[(0,r.jsxs)("a",{href:`https://opencollective.com/${e.collectiveSlug}`,children:[(0,r.jsx)("img",{src:e.image,alt:e.name}),(0,r.jsxs)("h3",{children:[e.name,e.isAdmin&&" (admin)"]})]}),(0,r.jsx)("p",{children:e.publicMessage}),(0,r.jsxs)("p",{className:o.sponsorMoney,children:["$",e.totalAmountDonated/100]})]},n)))}):(0,r.jsx)(c,{size:100})}function c(e){let{size:n}=e;return(0,r.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",className:"icon icon-tabler icon-tabler-loader-2",width:"44",height:"44",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"#2c3e50",fill:"none","stroke-linecap":"round","stroke-linejoin":"round",children:[(0,r.jsx)("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),(0,r.jsx)("path",{d:"M12 3a9 9 0 1 0 9 9",children:(0,r.jsx)("animateTransform",{attributeName:"transform",type:"rotate",from:"0 12 12",to:"360 12 12",dur:"0.5s",repeatCount:"indefinite"})})]})}function l(){return(0,r.jsxs)(t.A,{children:[(0,r.jsxs)("header",{className:"header",children:[(0,r.jsx)("h1",{className:"hero__title",children:"Sponsors"}),(0,r.jsx)("p",{className:"hero__subtitle",children:"These amazing people help us keep the project alive. A big thanks from the team!"})]}),(0,r.jsx)(i,{})]})}}}]); \ No newline at end of file diff --git a/assets/js/57fe7727.17516a49.js b/assets/js/57fe7727.17516a49.js deleted file mode 100644 index 53705fb2c..000000000 --- a/assets/js/57fe7727.17516a49.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4199],{5448:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>s,default:()=>a,frontMatter:()=>c,metadata:()=>o,toc:()=>t});var d=i(4848),r=i(8453);const c={id:"SernSubCommandGroupData",title:"Interface: SernSubCommandGroupData",sidebar_label:"SernSubCommandGroupData",sidebar_position:0,custom_edit_url:null},s=void 0,o={id:"api/interfaces/SernSubCommandGroupData",title:"Interface: SernSubCommandGroupData",description:"Hierarchy",source:"@site/docs/api/interfaces/SernSubCommandGroupData.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernSubCommandGroupData",permalink:"/docs/api/interfaces/SernSubCommandGroupData",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernSubCommandGroupData",title:"Interface: SernSubCommandGroupData",sidebar_label:"SernSubCommandGroupData",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernSubCommandData",permalink:"/docs/api/interfaces/SernSubCommandData"},next:{title:"SlashCommand",permalink:"/docs/api/interfaces/SlashCommand"}},l={},t=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"autocomplete",id:"autocomplete",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"descriptionLocalizations",id:"descriptionlocalizations",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"nameLocalizations",id:"namelocalizations",level:3},{value:"Inherited from",id:"inherited-from-4",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"options",id:"options",level:3},{value:"Defined in",id:"defined-in-5",level:4},{value:"required",id:"required",level:3},{value:"Inherited from",id:"inherited-from-5",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-7",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"BaseApplicationCommandOptionsData"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"SernSubCommandGroupData"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"autocomplete",children:"autocomplete"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"autocomplete"}),": ",(0,d.jsx)(n.code,{children:"undefined"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"BaseApplicationCommandOptionsData.autocomplete"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4496"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"BaseApplicationCommandOptionsData.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4493"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"descriptionlocalizations",children:"descriptionLocalizations"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"descriptionLocalizations"}),": ",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Record"}),"<",(0,d.jsx)(n.code,{children:'"id"'})," | ",(0,d.jsx)(n.code,{children:'"en-US"'})," | ",(0,d.jsx)(n.code,{children:'"en-GB"'})," | ",(0,d.jsx)(n.code,{children:'"bg"'})," | ",(0,d.jsx)(n.code,{children:'"zh-CN"'})," | ",(0,d.jsx)(n.code,{children:'"zh-TW"'})," | ",(0,d.jsx)(n.code,{children:'"hr"'})," | ",(0,d.jsx)(n.code,{children:'"cs"'})," | ",(0,d.jsx)(n.code,{children:'"da"'})," | ",(0,d.jsx)(n.code,{children:'"nl"'})," | ",(0,d.jsx)(n.code,{children:'"fi"'})," | ",(0,d.jsx)(n.code,{children:'"fr"'})," | ",(0,d.jsx)(n.code,{children:'"de"'})," | ",(0,d.jsx)(n.code,{children:'"el"'})," | ",(0,d.jsx)(n.code,{children:'"hi"'})," | ",(0,d.jsx)(n.code,{children:'"hu"'})," | ",(0,d.jsx)(n.code,{children:'"it"'})," | ",(0,d.jsx)(n.code,{children:'"ja"'})," | ",(0,d.jsx)(n.code,{children:'"ko"'})," | ",(0,d.jsx)(n.code,{children:'"lt"'})," | ",(0,d.jsx)(n.code,{children:'"no"'})," | ",(0,d.jsx)(n.code,{children:'"pl"'})," | ",(0,d.jsx)(n.code,{children:'"pt-BR"'})," | ",(0,d.jsx)(n.code,{children:'"ro"'})," | ",(0,d.jsx)(n.code,{children:'"ru"'})," | ",(0,d.jsx)(n.code,{children:'"es-ES"'})," | ",(0,d.jsx)(n.code,{children:'"sv-SE"'})," | ",(0,d.jsx)(n.code,{children:'"th"'})," | ",(0,d.jsx)(n.code,{children:'"tr"'})," | ",(0,d.jsx)(n.code,{children:'"uk"'})," | ",(0,d.jsx)(n.code,{children:'"vi"'}),", ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"string"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"BaseApplicationCommandOptionsData.descriptionLocalizations"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4494"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"BaseApplicationCommandOptionsData.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4491"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"namelocalizations",children:"nameLocalizations"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"nameLocalizations"}),": ",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Record"}),"<",(0,d.jsx)(n.code,{children:'"id"'})," | ",(0,d.jsx)(n.code,{children:'"en-US"'})," | ",(0,d.jsx)(n.code,{children:'"en-GB"'})," | ",(0,d.jsx)(n.code,{children:'"bg"'})," | ",(0,d.jsx)(n.code,{children:'"zh-CN"'})," | ",(0,d.jsx)(n.code,{children:'"zh-TW"'})," | ",(0,d.jsx)(n.code,{children:'"hr"'})," | ",(0,d.jsx)(n.code,{children:'"cs"'})," | ",(0,d.jsx)(n.code,{children:'"da"'})," | ",(0,d.jsx)(n.code,{children:'"nl"'})," | ",(0,d.jsx)(n.code,{children:'"fi"'})," | ",(0,d.jsx)(n.code,{children:'"fr"'})," | ",(0,d.jsx)(n.code,{children:'"de"'})," | ",(0,d.jsx)(n.code,{children:'"el"'})," | ",(0,d.jsx)(n.code,{children:'"hi"'})," | ",(0,d.jsx)(n.code,{children:'"hu"'})," | ",(0,d.jsx)(n.code,{children:'"it"'})," | ",(0,d.jsx)(n.code,{children:'"ja"'})," | ",(0,d.jsx)(n.code,{children:'"ko"'})," | ",(0,d.jsx)(n.code,{children:'"lt"'})," | ",(0,d.jsx)(n.code,{children:'"no"'})," | ",(0,d.jsx)(n.code,{children:'"pl"'})," | ",(0,d.jsx)(n.code,{children:'"pt-BR"'})," | ",(0,d.jsx)(n.code,{children:'"ro"'})," | ",(0,d.jsx)(n.code,{children:'"ru"'})," | ",(0,d.jsx)(n.code,{children:'"es-ES"'})," | ",(0,d.jsx)(n.code,{children:'"sv-SE"'})," | ",(0,d.jsx)(n.code,{children:'"th"'})," | ",(0,d.jsx)(n.code,{children:'"tr"'})," | ",(0,d.jsx)(n.code,{children:'"uk"'})," | ",(0,d.jsx)(n.code,{children:'"vi"'}),", ",(0,d.jsx)(n.code,{children:"null"})," | ",(0,d.jsx)(n.code,{children:"string"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-4",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"BaseApplicationCommandOptionsData.nameLocalizations"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4492"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"options",children:"options"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"options"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernSubCommandData",children:(0,d.jsx)(n.code,{children:"SernSubCommandData"})}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L214",children:"src/types/core-modules.ts:214"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"required",children:"required"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"required"}),": ",(0,d.jsx)(n.code,{children:"boolean"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-5",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"BaseApplicationCommandOptionsData.required"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:4495"}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.code,{children:"SubcommandGroup"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L213",children:"src/types/core-modules.ts:213"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>o});var d=i(6540);const r={},c=d.createContext(r);function s(e){const n=d.useContext(c);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),d.createElement(c.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5ae130ee.c0d17fb4.js b/assets/js/5ae130ee.c0d17fb4.js deleted file mode 100644 index e7ddcf41b..000000000 --- a/assets/js/5ae130ee.c0d17fb4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4184],{6866:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>s,metadata:()=>t,toc:()=>h});var r=i(4848),d=i(8453);const s={id:"ExternalEventCommand",title:"Interface: ExternalEventCommand",sidebar_label:"ExternalEventCommand",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/ExternalEventCommand",title:"Interface: ExternalEventCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/ExternalEventCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ExternalEventCommand",permalink:"/docs/api/interfaces/ExternalEventCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ExternalEventCommand",title:"Interface: ExternalEventCommand",sidebar_label:"ExternalEventCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ExternalEmitterPlugin",permalink:"/docs/api/interfaces/ExternalEmitterPlugin"},next:{title:"ExternalEventPlugin",permalink:"/docs/api/interfaces/ExternalEventPlugin"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"emitter",id:"emitter",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"Methods",id:"methods",level:2},{value:"execute",id:"execute",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-6",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Module"})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"ExternalEventCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.description"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"emitter",children:"emitter"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"emitter"}),": keyof ",(0,r.jsx)(n.code,{children:"Dependencies"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L48",children:"src/types/core-modules.ts:48"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.name"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L47",children:"src/types/core-modules.ts:47"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"onEvent"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,r.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"plugins"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,r.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/EventType#external",children:(0,r.jsx)(n.code,{children:"External"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.type"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L49",children:"src/types/core-modules.ts:49"})}),"\n",(0,r.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"execute"}),"(",(0,r.jsx)(n.code,{children:"...args"}),"): ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"...args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"unknown"}),"[]"]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"unknown"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.execute"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L50",children:"src/types/core-modules.ts:50"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var r=i(6540);const d={},s=r.createContext(d);function l(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:l(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5bc4ccbc.30c2085c.js b/assets/js/5bc4ccbc.30c2085c.js deleted file mode 100644 index 151056604..000000000 --- a/assets/js/5bc4ccbc.30c2085c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3140],{3969:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>h,frontMatter:()=>s,metadata:()=>l,toc:()=>a});var i=r(4848),d=r(8453);const s={id:"Wrapper",title:"Interface: Wrapper",sidebar_label:"Wrapper",sidebar_position:0,custom_edit_url:null},t=void 0,l={id:"api/interfaces/Wrapper",title:"Interface: Wrapper",description:"Properties",source:"@site/docs/api/interfaces/Wrapper.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Wrapper",permalink:"/docs/api/interfaces/Wrapper",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Wrapper",title:"Interface: Wrapper",sidebar_label:"Wrapper",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"UserSelectCommand",permalink:"/docs/api/interfaces/UserSelectCommand"},next:{title:"Response",permalink:"/docs/api/interfaces/CommandError.Response"}},c={},a=[{value:"Properties",id:"properties",level:2},{value:"commands",id:"commands",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"containerConfig",id:"containerconfig",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"defaultPrefix",id:"defaultprefix",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"events",id:"events",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"mode",id:"mode",level:3},{value:"Defined in",id:"defined-in-4",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"commands",children:"commands"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"commands"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core.ts#L9",children:"src/types/core.ts:9"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"containerconfig",children:"containerConfig"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"containerConfig"}),": ",(0,i.jsx)(n.code,{children:"Object"})]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"get"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,i.jsx)(n.code,{children:"keys"}),": keyof ",(0,i.jsx)(n.code,{children:"Dependencies"}),"[]) => ",(0,i.jsx)(n.code,{children:"unknown"}),"[]"]})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core.ts#L20",children:"src/types/core.ts:20"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"defaultprefix",children:"defaultPrefix"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"defaultPrefix"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core.ts#L10",children:"src/types/core.ts:10"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"events",children:"events"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"events"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core.ts#L11",children:"src/types/core.ts:11"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"mode",children:"mode"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"mode"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.p,{children:"Overload to enable mode in case developer does not use a .env file."}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/pull/325",children:"https://github.com/sern-handler/handler/pull/325"})}),"\n"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core.ts#L16",children:"src/types/core.ts:16"})})]})}function h(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>t,x:()=>l});var i=r(6540);const d={},s=i.createContext(d);function t(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:t(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5e8c322a.b5738332.js b/assets/js/5e8c322a.b5738332.js deleted file mode 100644 index 91dee12df..000000000 --- a/assets/js/5e8c322a.b5738332.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[594],{8897:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>c,frontMatter:()=>t,metadata:()=>a,toc:()=>d});var i=s(4848),r=s(8453);const t={id:"index",title:"@sern/handler",sidebar_label:"Readme",sidebar_position:0,custom_edit_url:null},l=void 0,a={id:"api/index",title:"@sern/handler",description:"Handlers. Redefined.",source:"@site/docs/api/index.md",sourceDirName:"api",slug:"/api/",permalink:"/docs/api/",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"index",title:"@sern/handler",sidebar_label:"Readme",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",next:{title:"Exports",permalink:"/docs/api/modules"}},o={},d=[{value:"Why?",id:"why",level:2},{value:"\ud83d\udcdc Installation",id:"-installation",level:2},{value:"\ud83d\udc76 Basic Usage",id:"-basic-usage",level:2},{value:"\ud83e\udd16 Bots Using sern",id:"-bots-using-sern",level:2},{value:"\ud83d\udcbb CLI",id:"-cli",level:2},{value:"\ud83d\udd17 Links",id:"-links",level:2},{value:"\ud83d\udc4b Contribute",id:"-contribute",level:2}];function h(e){const n={a:"a",code:"code",details:"details",div:"div",h1:"h1",h2:"h2",h4:"h4",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",summary:"summary",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(n.div,{align:"center",children:["\n ",(0,i.jsx)(n.img,{src:"https://raw.githubusercontent.com/sern-handler/.github/main/banner.png",width:"900px"}),"\n"]}),"\n",(0,i.jsx)(n.h1,{align:"center",children:"Handlers. Redefined."}),"\n",(0,i.jsx)(n.h4,{align:"center",children:"A complete, customizable, typesafe, & reactive framework for discord bots"}),"\n",(0,i.jsxs)(n.div,{align:"center",styles:"margin-top: 10px",children:["\n ",(0,i.jsx)(n.img,{src:"https://img.shields.io/badge/open-source-brightgreen"}),"\n ",(0,i.jsx)(n.a,{href:"https://www.npmjs.com/package/@sern/handler",children:(0,i.jsx)(n.img,{src:"https://img.shields.io/npm/v/@sern/handler?maxAge=3600",alt:"NPM version"})}),"\n ",(0,i.jsx)(n.a,{href:"https://www.npmjs.com/package/@sern/handler",children:(0,i.jsx)(n.img,{src:"https://img.shields.io/npm/dt/@sern/handler?maxAge=3600",alt:"NPM downloads"})}),"\n ",(0,i.jsx)(n.a,{href:"https://opensource.org/licenses/MIT",children:(0,i.jsx)(n.img,{src:"https://img.shields.io/badge/license-MIT-brightgreen",alt:"License MIT"})}),"\n ",(0,i.jsx)(n.a,{href:"https://sern.dev",children:(0,i.jsx)(n.img,{alt:"docs.rs",src:"https://img.shields.io/docsrs/docs"})}),"\n ",(0,i.jsx)(n.img,{alt:"Lines of code",src:"https://img.shields.io/badge/total%20lines-2k-blue"}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"why",children:"Why?"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"For you. A framework that's tailored to your exact needs."}),"\n",(0,i.jsx)(n.li,{children:"Lightweight. Does a lot while being small."}),"\n",(0,i.jsx)(n.li,{children:"Latest features. Support for discord.js v14 and all of its interactions."}),"\n",(0,i.jsx)(n.li,{children:"Start quickly. Plug and play or customize to your liking."}),"\n",(0,i.jsxs)(n.li,{children:["works with ",(0,i.jsx)(n.a,{href:"https://bun.sh/",children:"bun"})," and ",(0,i.jsx)(n.a,{href:"https://nodejs.org/en",children:"node"})," out the box!"]}),"\n",(0,i.jsx)(n.li,{children:"Use it with TypeScript or JavaScript. CommonJS and ESM supported."}),"\n",(0,i.jsxs)(n.li,{children:["Active and growing community, always here to help. ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"Join us"})]}),"\n",(0,i.jsx)(n.li,{children:"Unleash its full potential with a powerful CLI and awesome plugins."}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"-installation",children:"\ud83d\udcdc Installation"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://sern.dev/docs/guide/walkthrough/new-project",children:"Start here!!"})}),"\n",(0,i.jsx)(n.h2,{id:"-basic-usage",children:"\ud83d\udc76 Basic Usage"}),"\n",(0,i.jsxs)(n.details,{children:[(0,i.jsx)(n.summary,{children:"ping.ts"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"export default commandModule({\n type: CommandType.Slash,\n //Installed plugin to publish to discord api and allow access to owners only.\n plugins: [publish(), ownerOnly()],\n description: 'A ping pong command',\n execute(ctx) {\n ctx.reply('Hello owner of the bot');\n }\n});\n"})}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"-bots-using-sern",children:"\ud83e\udd16 Bots Using sern"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/sern-community",children:"Community Bot"}),", the community bot for our ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord server"}),"."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/SrIzan10/vinci",children:"Vinci"}),", the bot for Mara Turing."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/baskbotml/bask",children:"Bask"}),", Listen your favorite artists on Discord."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/SrIzan10/ava",children:"ava"}),", A discord bot that plays KNGI and Gensokyo Radio."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/murayamabot/murayama",children:"Murayama"}),", :pepega:"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/needhamgary/Protector",children:"Protector (WIP)"}),", Just a simple bot to help enhance a private minecraft server."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/Peter-MJ-Parker/sern-bud",children:"SmokinWeed \ud83d\udca8"}),", A fun bot for a small - but growing - server."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/jacoobes/man-nomic",children:"Man Nomic"}),", A simple information bot to provide information to the nomic-ai discord community."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/linear-discord",children:"Linear-Discord"})," Display and manage a linear dashboard."]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"-cli",children:"\ud83d\udcbb CLI"}),"\n",(0,i.jsxs)(n.p,{children:["It is ",(0,i.jsx)(n.strong,{children:"highly encouraged"})," to use the ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/cli",children:"command line interface"})," for your project. Don't forget to view it."]}),"\n",(0,i.jsx)(n.h2,{id:"-links",children:"\ud83d\udd17 Links"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"https://sern.dev",children:"Official Documentation and Guide"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"Support Server"})}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"-contribute",children:"\ud83d\udc4b Contribute"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Read our contribution ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/main/.github/CONTRIBUTING.md",children:"guidelines"})," carefully"]}),"\n",(0,i.jsxs)(n.li,{children:["Pull up on ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/issues",children:"issues"})," and report bugs"]}),"\n",(0,i.jsx)(n.li,{children:"All kinds of contributions are welcomed."}),"\n"]})]})}function c(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>l,x:()=>a});var i=s(6540);const r={},t=i.createContext(r);function l(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5e95c892.3c5661f6.js b/assets/js/5e95c892.3c5661f6.js deleted file mode 100644 index a742c7f78..000000000 --- a/assets/js/5e95c892.3c5661f6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9647],{7121:(e,s,r)=>{r.r(s),r.d(s,{default:()=>l});r(6540);var n=r(53),t=r(9024),u=r(7559),a=r(2831),c=r(8511),i=r(4848);function l(e){return(0,i.jsx)(t.e3,{className:(0,n.A)(u.G.wrapper.docsPages),children:(0,i.jsx)(c.A,{children:(0,a.v)(e.route.routes)})})}}}]); \ No newline at end of file diff --git a/assets/js/608ca171.62a6a6a8.js b/assets/js/608ca171.62a6a6a8.js deleted file mode 100644 index 7239447ae..000000000 --- a/assets/js/608ca171.62a6a6a8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8312],{5174:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>a});var i=t(4848),s=t(8453);const o={sidebar_position:2},r="CLI",l={id:"guide/walkthrough/cli",title:"CLI",description:"Setting up the CLI is easy.",source:"@site/docs/guide/walkthrough/cli.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/cli",permalink:"/docs/guide/walkthrough/cli",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/cli.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"tutorialSidebar",previous:{title:"Create a new project",permalink:"/docs/guide/walkthrough/new-project"},next:{title:"Transition from v2 to v3",permalink:"/docs/guide/walkthrough/transition"}},c={},a=[];function h(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h1:"h1",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"cli",children:"CLI"}),"\n",(0,i.jsxs)(n.p,{children:["Setting up the ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/cli",children:"CLI"})," is easy. ",(0,i.jsx)(n.br,{}),"\nThe cli is your plug to the sern ecosystem. This will allow you to install plugins with ease, install extra utilities, and much more.\nIf you haven't yet:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"npm install -g @sern/cli\n"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["To install ",(0,i.jsx)(n.a,{href:"/docs/guide/walkthrough/plugins",children:"plugins"})," maintained by the community ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/awesome-plugins",children:"repository"}),","]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"sern plugins\n"})}),"\n",(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsxs)(n.p,{children:["Make sure to have a correct ",(0,i.jsx)(n.a,{href:"/docs/guide/walkthrough/good-to-know#sernconfigjson",children:"sern.config.json"})]})}),"\n",(0,i.jsxs)(n.p,{children:["This will display a menu selection of all installable plugins. ",(0,i.jsx)(n.br,{})]}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Note"}),": You must have a ",(0,i.jsx)(n.a,{href:"/docs/guide/walkthrough/good-to-know",children:"sern.config.json"})," to use this command.\nIf you want to view plugins, visit the repository linked above."]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"To install extra utilities into your project"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"sern extra\n"})}),"\n",(0,i.jsxs)(n.p,{children:["We have a more in depth ",(0,i.jsx)(n.a,{href:"/docs/cli/",children:"guide"})," of the CLI"]})]})}function d(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>l});var i=t(6540);const s={},o=i.createContext(s);function r(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/61538263.61783d11.js b/assets/js/61538263.61783d11.js deleted file mode 100644 index 2c4ac0e29..000000000 --- a/assets/js/61538263.61783d11.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7823],{172:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>o,frontMatter:()=>i,metadata:()=>d,toc:()=>h});var r=t(4848),s=t(8453);const i={id:"Emitter",title:"Interface: Emitter",sidebar_label:"Emitter",sidebar_position:0,custom_edit_url:null},l=void 0,d={id:"api/interfaces/Emitter",title:"Interface: Emitter",description:"Methods",source:"@site/docs/api/interfaces/Emitter.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Emitter",permalink:"/docs/api/interfaces/Emitter",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Emitter",title:"Interface: Emitter",sidebar_label:"Emitter",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Disposable",permalink:"/docs/api/interfaces/Disposable"},next:{title:"ErrorHandling",permalink:"/docs/api/interfaces/ErrorHandling"}},c={},h=[{value:"Methods",id:"methods",level:2},{value:"addListener",id:"addlistener",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"emit",id:"emit",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"removeListener",id:"removelistener",level:3},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Defined in",id:"defined-in-2",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,r.jsx)(n.h3,{id:"addlistener",children:"addListener"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"addListener"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.code,{children:"this"})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"AnyFunction"})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"this"})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/emitter.ts#L6",children:"src/core/contracts/emitter.ts:6"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"emit",children:"emit"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"emit"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"...payload"}),"): ",(0,r.jsx)(n.code,{children:"boolean"})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"...payload"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"any"}),"[]"]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"boolean"})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/emitter.ts#L8",children:"src/core/contracts/emitter.ts:8"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"removelistener",children:"removeListener"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"removeListener"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.code,{children:"this"})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"AnyFunction"})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"this"})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/emitter.ts#L7",children:"src/core/contracts/emitter.ts:7"})})]})}function o(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>d});var r=t(6540);const s={},i=r.createContext(s);function l(e){const n=r.useContext(i);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),r.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/65578b65.40ff405f.js b/assets/js/65578b65.40ff405f.js deleted file mode 100644 index 93c07628d..000000000 --- a/assets/js/65578b65.40ff405f.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9385],{9854:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>s,metadata:()=>t,toc:()=>o});var d=i(4848),r=i(8453);const s={id:"BothCommand",title:"Interface: BothCommand",sidebar_label:"BothCommand",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/BothCommand",title:"Interface: BothCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/BothCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/BothCommand",permalink:"/docs/api/interfaces/BothCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"BothCommand",title:"Interface: BothCommand",sidebar_label:"BothCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"AutocompletePlugin",permalink:"/docs/api/interfaces/AutocompletePlugin"},next:{title:"ButtonCommand",permalink:"/docs/api/interfaces/ButtonCommand"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"alias",id:"alias",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"description",id:"description",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"options",id:"options",level:3},{value:"Defined in",id:"defined-in-5",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-7",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"BothCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"alias",children:"alias"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"alias"}),": ",(0,d.jsx)(n.code,{children:"string"}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L125",children:"src/types/core-modules.ts:125"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L126",children:"src/types/core-modules.ts:126"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,d.jsx)(n.code,{children:"Context"})}),", ",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#args",children:(0,d.jsx)(n.code,{children:"Args"})}),") => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),", ",(0,d.jsx)(n.code,{children:"args"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,d.jsx)(n.code,{children:"Context"})})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"args"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/modules#args",children:(0,d.jsx)(n.code,{children:"Args"})})})]})]})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L128",children:"src/types/core-modules.ts:128"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"options",children:"options"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"options"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#sernoptionsdata",children:(0,d.jsx)(n.code,{children:"SernOptionsData"})}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L127",children:"src/types/core-modules.ts:127"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#both",children:(0,d.jsx)(n.code,{children:"Both"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L124",children:"src/types/core-modules.ts:124"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var d=i(6540);const r={},s=d.createContext(r);function l(e){const n=d.useContext(s);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),d.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/6626dbb1.0740f761.js b/assets/js/6626dbb1.0740f761.js deleted file mode 100644 index d38523dc3..000000000 --- a/assets/js/6626dbb1.0740f761.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6462],{2643:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>d,contentTitle:()=>r,default:()=>h,frontMatter:()=>t,metadata:()=>o,toc:()=>a});var i=s(4848),l=s(8453);const t={},r=void 0,o={id:"cli/build",title:"build",description:"Guiding Principles",source:"@site/docs/cli/build.md",sourceDirName:"cli",slug:"/cli/build",permalink:"/docs/cli/build",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/cli/build.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"CLI",permalink:"/docs/cli/"},next:{title:"clear",permalink:"/docs/cli/clear"}},d={},a=[{value:"Guiding Principles",id:"guiding-principles",level:2},{value:"Experimental Features",id:"experimental-features",level:2},{value:"Features",id:"features",level:2},{value:"Implicits",id:"implicits",level:2},{value:"sern.build.js",id:"sernbuildjs",level:3},{value:"Usage",id:"usage",level:2},{value:"Adapting older projects",id:"adapting-older-projects",level:2},{value:"In depth",id:"in-depth",level:2},{value:"drop labels",id:"drop-labels",level:3},{value:"constants",id:"constants",level:3},{value:"process.env",id:"processenv",level:3}];function c(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",tabitem:"tabitem",tabs:"tabs",ul:"ul",...(0,l.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:'Usage: sern build [options]\n\nBuild your bot\n\nOptions:\n -f --format [fmt] The module system of your application. `cjs` or `esm` (default: "esm")\n -m --mode [mode] the mode for sern to build in. `production` or `development` (default: "development")\n -W --suppress-warnings suppress experimental warning\n -p --project [filePath] build with this sern.build file\n -h, --help display help for command\n'})}),"\n",(0,i.jsx)(n.h2,{id:"guiding-principles",children:"Guiding Principles"}),"\n",(0,i.jsxs)(n.p,{children:["When designing the ",(0,i.jsx)(n.code,{children:"sern build"})," command, our aim was to make building bot applications as simple as possible for the majority of developers. The setup process has been streamlined, and most of the configuration details have been handled for you. Here are some key points to keep in mind:"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Minimal Configuration"}),": In the vast majority (99%) of use cases, developers do not need to configure the bot application building process. We believe that simplicity is key, so only a few decisions need to be made on the developer's end."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Optimal Defaults"}),": We've chosen sensible defaults. This means you can get started without getting bogged down by complex, unneeded configurations."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Finetuned for production bots"}),": Our CLI leverages an opinionated build solution powered by esbuild. This ensures that bots are built without issues and can be shipped easily."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"experimental-features",children:"Experimental Features"}),"\n",(0,i.jsxs)(n.p,{children:["Both the ",(0,i.jsx)(n.code,{children:"sern build"})," and ",(0,i.jsx)(n.code,{children:"sern publish"})," commands are marked as experimental. While they might not be completely stable, they are designed to work for the majority of users. We appreciate any feedback in helping us make these features even better."]}),"\n",(0,i.jsx)(n.h2,{id:"features",children:"Features"}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"sern build"})," command comes equipped with a range of features designed to enhance your development process. Here's a glimpse of what it offers:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"esbuild Integration"}),": our CLI takes inspiration from the efficiency of SvelteKit, ensuring your bot application is built effectively and with type safety. Leverage the ",(0,i.jsx)(n.a,{href:"https://github.com/esbuild/community-plugins",children:"esbuild plugin ecosystem"}),"."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Zero Configuration"}),": Building your bot application without additional configuration. The CLI handles most of the setup for you."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Experimental Image Support"}),": We've introduced experimental support for top-level imports of PNG and JPG files, making it easier to include images in your bot application."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Compile Time Constants"}),": Customize your build with constants such as __DEV__, __PROD__, allowing you to tailor your application to different production stages."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Development and Production Modes"}),": The CLI supports both development and production modes, enabling you to tailor your bot application for different stages of development."]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsxs)(n.strong,{children:["Type-safe ",(0,i.jsx)(n.code,{children:"process.env"})]}),": The CLI generates a type-safe ",(0,i.jsx)(n.code,{children:"process.env"}),", reducing potential errors."]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"implicits",children:"Implicits"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"command line arguments take precendence over sern.build configuration file"}),"\n",(0,i.jsx)(n.li,{children:"default build format is ESM"}),"\n",(0,i.jsx)(n.li,{children:"defineVersion = true"}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"DEV"})," AND ",(0,i.jsx)(n.strong,{children:"PROD"})," constants are configured."]}),"\n",(0,i.jsxs)(n.li,{children:["only a ",(0,i.jsx)(n.a,{href:"https://esbuild.github.io/content-types/#tsconfig-json",children:"few tsconfig options"})," are respected."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"sernbuildjs",children:"sern.build.js"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"For any extra configuration you may need"}),"\n",(0,i.jsx)(n.li,{children:"the cli was intentionally made to be installed globally, and we can't provide typings at a project level. If you need typings, here they are:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"type BuildOptions = {\n /**\n * Define __VERSION__\n * This option is a quick switch to defining the __VERSION__ constant which will be a string of the version provided in \n * cwd's package.json\n */\n defineVersion?: boolean \n /**\n * default = esm\n */\n format?: 'cjs' | 'esm'\n /** \n * extra esbuild plugins to build with sern.\n */\n esbuildPlugins?: esbuild.Plugin[]\n /**\n * https://esbuild.github.io/api/#drop-labels\n **/\n dropLabels?: string[]\n /**\n * https://esbuild.github.io/api/#define\n **/\n define?: Record\n /** \n * Path to tsconfig\n **/\n tsconfig?: string;\n /**\n * default = 'development'\n */\n mode: 'production' | 'development',\n /**\n * will search for env file. If none exists, \n * default to .env.\n */\n env?: string\n}\n"})}),"\n",(0,i.jsx)(n.h2,{id:"usage",children:"Usage"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"sern build\n"})}),"\n",(0,i.jsx)(n.p,{children:"(that was easy)"}),"\n",(0,i.jsx)(n.h2,{id:"adapting-older-projects",children:"Adapting older projects"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Change your tsconfig.json to extend our generated one."}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{ \n // highlight-start\n "extends": "./.sern/tsconfig.json",\n // highlight-end\n "compilerOptions" : {\n //all of your old fields \n }\n}\n'})}),"\n",(0,i.jsx)(n.h2,{id:"in-depth",children:"In depth"}),"\n",(0,i.jsxs)(n.p,{children:["We use the ",(0,i.jsx)(n.code,{children:"define"})," and ",(0,i.jsx)(n.code,{children:"drop labels"})," api in C style macros to have easy development stage differences.\n",(0,i.jsx)(n.a,{href:"https://esbuild.github.io/api/#drop-labels",children:"Here"})," is the esbuild full API documentation"]}),"\n",(0,i.jsx)(n.h3,{id:"drop-labels",children:"drop labels"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"# mode is set to production\nsern build\n"})}),"\n",(0,i.jsx)(n.p,{children:"import Tabs from '@theme/Tabs';\nimport TabItem from '@theme/TabItem';"}),"\n",(0,i.jsxs)(n.tabs,{children:["\n",(0,i.jsxs)(n.tabitem,{value:"input",label:"Input",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"__DEV__: console.log('This is for production only')\n__PROD__: console.log('This is for either mode')\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.tabitem,{value:"sh",label:"Running build for production",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"# mode is set to production\nsern build\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.tabitem,{value:"output",label:"Output",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"__PROD__ console.log('This is for either mode')\n"})}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"constants",children:"constants"}),"\n",(0,i.jsx)(n.p,{children:"sern builds with three default constants. __DEV__, __PROD__, __VERSION__."}),"\n",(0,i.jsxs)(n.tabs,{children:["\n",(0,i.jsxs)(n.tabitem,{value:"input",label:"Preprocess",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"sern build\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.tabitem,{value:"sh",label:"Constants available and typesafe!",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"if(__PROD__) {\n console.log('Bot version: ' + __VERSION__)\n}\n"})}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.p,{children:["Full esbuild documentation ",(0,i.jsx)(n.a,{href:"https://esbuild.github.io/api/#define",children:"here"}),"\nAdd more to the ",(0,i.jsx)(n.code,{children:"define"})," field in build options (only availible with a ",(0,i.jsx)(n.code,{children:"sern.build"})," file at the moment."]}),"\n",(0,i.jsx)(n.h3,{id:"processenv",children:"process.env"}),"\n",(0,i.jsxs)(n.p,{children:["We generate your process.env with ",(0,i.jsx)(n.code,{children:"dotenv"})," and generate typings for process.env. Less hassle!"]}),"\n",(0,i.jsxs)(n.tabs,{children:["\n",(0,i.jsxs)(n.tabitem,{value:"input",label:".env",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"DISCORD_TOKEN=\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"process.env.DISCORD_TOKEN // string | undefined (not typesafe :()\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.tabitem,{value:"sh",label:"sern build",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-sh",children:"sern build\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"process.env.DISCORD_TOKEN // string (typesafe :))\n"})}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>r,x:()=>o});var i=s(6540);const l={},t=i.createContext(l);function r(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:r(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/67348500.4102b0ec.js b/assets/js/67348500.4102b0ec.js deleted file mode 100644 index 405accfdf..000000000 --- a/assets/js/67348500.4102b0ec.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2586],{9829:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>a,toc:()=>l});var r=t(4848),s=t(8453);const o={slug:"2.0.0",title:"Release 2.0.0",authors:["jacoobes"],tags:["release"]},i=void 0,a={permalink:"/blog/2.0.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-12-13-mdx-blog-post.md",source:"@site/blog/2022-12-13-mdx-blog-post.md",title:"Release 2.0.0",description:"2.0 Release",date:"2022-12-13T00:00:00.000Z",formattedDate:"December 13, 2022",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:3.63,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"2.0.0",title:"Release 2.0.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"Release 2.5.0",permalink:"/blog/2.5.0"},nextItem:{title:"How to get started with sern!",permalink:"/blog/getting-started"}},d={authorsImageUrls:[void 0]},l=[{value:"2.0 Release",id:"20-release",level:2},{value:"Plugin Support for Event Modules",id:"plugin-support-for-event-modules",level:3},{value:"Dependency Injection and Decoupling",id:"dependency-injection-and-decoupling",level:2},{value:"How do I start?",id:"how-do-i-start",level:3},{value:"New CommandTypes",id:"new-commandtypes",level:2},{value:"Typings Simplification",id:"typings-simplification",level:2},{value:"Breaking Changes",id:"breaking-changes",level:2},{value:"Context refactoring",id:"context-refactoring",level:2}];function c(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h2:"h2",h3:"h3",img:"img",p:"p",pre:"pre",strong:"strong",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"20-release",children:"2.0 Release"}),"\n",(0,r.jsxs)(n.p,{children:["Join our ",(0,r.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord"}),"! ",(0,r.jsx)(n.br,{}),"\nWow! We're finally increasing our semantic versioning by +",(0,r.jsx)(n.code,{children:"1.7.9."})," ",(0,r.jsx)(n.br,{}),"\nWhat does this mean?"]}),"\n",(0,r.jsx)(n.h3,{id:"plugin-support-for-event-modules",children:"Plugin Support for Event Modules"}),"\n",(0,r.jsxs)(n.p,{children:["You can now use plugins for event modules. Previous version would throw an error if the\n",(0,r.jsx)(n.code,{children:"plugins"})," field was populated."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",children:"export function commandPlTest() : SernEmitterPlugin {\n return {\n type: PluginType.Command,\n execute: ({ mod}, controller) => {\n if(mod.name === 'module.register') {\n console.log('Event Module created correctly')\n return controller.next()\n }\n console.log('event name is wrong')\n return controller.stop()\n }\n }\n}\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Applying this plugin to some ",(0,r.jsx)(n.code,{children:"eventModule"}),":"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",children:"export default eventModule({\n name: 'error',\n type: EventType.Sern,\n plugins: [commandPlTest()],\n execute(m) {\n console.log(m)\n },\n})\n"})}),"\n",(0,r.jsx)(n.h2,{id:"dependency-injection-and-decoupling",children:"Dependency Injection and Decoupling"}),"\n",(0,r.jsxs)(n.p,{children:["The powerful npm package ",(0,r.jsx)(n.code,{children:"iti"})," decouples sern even more.\nDecoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production\nand make sern even more customizable than before."]}),"\n",(0,r.jsx)(n.h3,{id:"how-do-i-start",children:"How do I start?"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",metastring:'title="src/index.ts"',children:"//With typescript, you can customize / augment your typings.\ninterface MyDependencies extends Dependencies {\n '@sern/client' : Singleton;\n '@sern/logger' : Singleton\n}\n\nexport const useContainer = Sern.makeDependencies({\n// exclude: new Set(['@sern/logger']), don't autofill optional dependencies\n build: root => root\n .add({ '@sern/client': single(client) }) \n .add({ '@sern/logger': single(new DefaultLogging()) })\n});\n\nSern.init({\n defaultPrefix: '!', // removing defaultPrefix will shut down text commands\n commands: 'src/commands',\n // events: 'src/events' (optional),\n containerConfig : {\n get: useContainer //pass in your dependency getter here\n }\n});\n\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Using the ",(0,r.jsx)(n.code,{children:"Sern#makeDependencies"})," function, inject your dependencies.\nWe'll use specific dependencies that are created with the ",(0,r.jsx)(n.code,{children:"@sern/keyword"}),"\nkey.\nUsing typescript to display all ",(0,r.jsx)(n.code,{children:"keywords"})," and what they represent:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",children:"export interface Dependencies {\n '@sern/client': Singleton; //Discord Client\n '@sern/logger'?: Singleton; //Logger\n '@sern/emitter': Singleton; //SernEmitter\n '@sern/store' : Singleton; //Stores all Command Modules\n '@sern/modules' : Singleton; //Manages Modules\n '@sern/errors': Singleton; //A Lifetime / Crash Handler\n}\n"})}),"\n",(0,r.jsx)(n.admonition,{type:"danger",children:(0,r.jsx)(n.p,{children:"Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies"})}),"\n",(0,r.jsxs)(n.p,{children:["At the moment, one optional dependency, ",(0,r.jsx)(n.code,{children:"@sern/logger"}),", exists. If not added explicitly,\nwe'll ",(0,r.jsx)(n.strong,{children:"autofill"})," with a ",(0,r.jsx)(n.a,{href:"https://sern.dev/docs/api/classes/defaultlogging",children:"DefaultLogger"}),"."]}),"\n",(0,r.jsx)(n.admonition,{type:"tip",children:(0,r.jsxs)(n.p,{children:["If you don't want a logger, add it to the\n",(0,r.jsx)(n.code,{children:"exclude"})," field while composing dependencies."]})}),"\n",(0,r.jsxs)(n.p,{children:["Use your generated dependency getter ",(0,r.jsx)(n.code,{children:"useContainer"})," (use whatever name you want), access them\nfrom anywhere."]}),"\n",(0,r.jsx)(n.admonition,{type:"note",children:(0,r.jsxs)(n.p,{children:["the function ",(0,r.jsx)(n.a,{href:"https://sern.dev/docs/api/modules#usecontainerraw",children:"useContainerRaw"})," is provided for direct access to dependencies and the internal\ndata structure. Use this wisely as no guarantees are made and crashes can happen."]})}),"\n",(0,r.jsxs)(n.p,{children:["The ",(0,r.jsx)(n.code,{children:"build"})," field follows ",(0,r.jsx)(n.a,{href:"https://itijs.org/docs/quick-start#usage",children:"createContainer"})," function call."]}),"\n",(0,r.jsx)(n.h2,{id:"new-commandtypes",children:"New CommandTypes"}),"\n",(0,r.jsxs)(n.p,{children:["2.0 includes all the new role select menus. ",(0,r.jsx)(n.code,{children:"CommandType.MenuSelect"})," has been renamed into\n",(0,r.jsx)(n.code,{children:"CommandType.StringSelect"}),". The remaining SelectMenus are\n",(0,r.jsx)(n.code,{children:"CommandType.RoleSelect"}),", ",(0,r.jsx)(n.code,{children:"CommandType.ChannelSelect"}),", ",(0,r.jsx)(n.code,{children:"CommandType.UserSelect"}),", ",(0,r.jsx)(n.code,{children:"CommandType.MentionableSelect"})]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-typescript",metastring:'title="commands/roleselect.ts"',children:"export default commandModule({\n type: CommandType.RoleSelect,\n execute(ctx) {\n ctx.reply('role select')\n },\n})\n"})}),"\n",(0,r.jsx)(n.p,{children:"In addition, commandModules with ContextMenus have been renamed."}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"- CommandType.MenuUser, CommandType.MenuMsg \n+ CommandType.CtxUser, CommandType.CtxMsg\n"})}),"\n",(0,r.jsx)(n.h2,{id:"typings-simplification",children:"Typings Simplification"}),"\n",(0,r.jsxs)(n.p,{children:["Pre 2.0:\n",(0,r.jsx)(n.img,{src:"https://cdn.discordapp.com/attachments/820348341358952550/1038577974829666386/image.png"}),"\n",(0,r.jsx)(n.br,{})," ",(0,r.jsx)(n.br,{})," ",(0,r.jsx)(n.br,{}),"\nPost 2.0:\n",(0,r.jsx)(n.br,{}),"\n",(0,r.jsx)(n.img,{src:"https://cdn.discordapp.com/attachments/820348341358952550/1052623728489550015/image.png"})]}),"\n",(0,r.jsx)(n.p,{children:"CommandPlugin and EventPlugin typings have also been static'ified, transformed from types to interfaces"}),"\n",(0,r.jsx)(n.h2,{id:"breaking-changes",children:"Breaking Changes"}),"\n",(0,r.jsx)(n.img,{src:"https://img.srizan.dev/Discord_z8Sn1UBfEe.png"}),"\n",(0,r.jsx)(n.br,{}),"\nAll deprecation warnings from previous versions have taken effect, and are removed in 2.0.\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"- type Module = EventModule | CommandModule\n+ type AnyModule = EventModule | CommandModule\n\n-export type SpreadParams unknown> = (\n- args: Parameters[number],\n- ) => unknown;\n"})}),"\n",(0,r.jsx)(n.p,{children:"Override type has been removed due to redundancy"}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"- discord.js : 14.5\n+ discord.js : 14.7\n\n-typescript: 4.7\n+ typescript: 4.9\n"})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"+ interface Wrapper {\n+ readonly defaultPrefix?: string;\n+ readonly commands: string;\n+ readonly events?: string;\n+ readonly containerConfig : {\n+ get: (...keys: (keyof Dependencies)[]) => unknown[];\n+ }\n+}\n\n- interface Wrapper {\n- readonly client: Client;\n- readonly sernEmitter?: SernEmitter;\n- readonly defaultPrefix?: string;\n- readonly commands: string;\n- readonly events?:\n- | string\n- | { mod: EventModule; absPath: string }[]\n- | (() => { mod: EventModule; absPath: string }[]);\n-}\n"})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-diff",children:"+ DefaultLogger\n+ DefaultModuleManager\n+ SernEmitter\n+ DefaultErrorHandling\n+ type Singleton = () => T\n+ type Transient = () => () => T; \n+ type LogPayload = { message: T }\n+ export const single = () => T\n+ export const many = () => () => T\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Including the previous section, some names to symbols and data structures were altered to\nbe better represented. view ",(0,r.jsx)(n.a,{href:"/404.html",children:"changelog"})]}),"\n",(0,r.jsx)(n.h2,{id:"context-refactoring",children:"Context refactoring"}),"\n",(0,r.jsx)(n.p,{children:"The context data structure has been internally altered to represent its dynamics better."})]})}function p(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var r=t(6540);const s={},o=r.createContext(s);function i(e){const n=r.useContext(o);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),r.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/67e3e25a.6b00f598.js b/assets/js/67e3e25a.6b00f598.js deleted file mode 100644 index 4fa8b963a..000000000 --- a/assets/js/67e3e25a.6b00f598.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8385],{7051:(e,s,r)=>{r.r(s),r.d(s,{assets:()=>l,contentTitle:()=>d,default:()=>u,frontMatter:()=>o,metadata:()=>i,toc:()=>c});var t=r(4848),n=r(8453);const o={id:"ModuleStore",title:"Class: ModuleStore",sidebar_label:"ModuleStore",sidebar_position:0,custom_edit_url:null},d=void 0,i={id:"api/classes/ModuleStore",title:"Class: ModuleStore",description:"Constructors",source:"@site/docs/api/classes/ModuleStore.md",sourceDirName:"api/classes",slug:"/api/classes/ModuleStore",permalink:"/docs/api/classes/ModuleStore",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ModuleStore",title:"Class: ModuleStore",sidebar_label:"ModuleStore",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"EventExecutable",permalink:"/docs/api/classes/EventExecutable"},next:{title:"SernEmitter",permalink:"/docs/api/classes/SernEmitter"}},l={},c=[{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Returns",id:"returns",level:4},{value:"Properties",id:"properties",level:2},{value:"commands",id:"commands",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"metadata",id:"metadata",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function a(e){const s={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,n.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.h2,{id:"constructors",children:"Constructors"}),"\n",(0,t.jsx)(s.h3,{id:"constructor",children:"constructor"}),"\n",(0,t.jsxs)(s.p,{children:["\u2022 ",(0,t.jsx)(s.strong,{children:"new ModuleStore"}),"(): ",(0,t.jsx)(s.a,{href:"/docs/api/classes/ModuleStore",children:(0,t.jsx)(s.code,{children:"ModuleStore"})})]}),"\n",(0,t.jsx)(s.h4,{id:"returns",children:"Returns"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"/docs/api/classes/ModuleStore",children:(0,t.jsx)(s.code,{children:"ModuleStore"})})}),"\n",(0,t.jsx)(s.h2,{id:"properties",children:"Properties"}),"\n",(0,t.jsx)(s.h3,{id:"commands",children:"commands"}),"\n",(0,t.jsxs)(s.p,{children:["\u2022 ",(0,t.jsx)(s.strong,{children:"commands"}),": ",(0,t.jsx)(s.code,{children:"Map"}),"<",(0,t.jsx)(s.code,{children:"string"}),", ",(0,t.jsx)(s.code,{children:"Module"}),">"]}),"\n",(0,t.jsx)(s.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/module-store.ts#L10",children:"src/core/structures/module-store.ts:10"})}),"\n",(0,t.jsx)(s.hr,{}),"\n",(0,t.jsx)(s.h3,{id:"metadata",children:"metadata"}),"\n",(0,t.jsxs)(s.p,{children:["\u2022 ",(0,t.jsx)(s.strong,{children:"metadata"}),": ",(0,t.jsx)(s.code,{children:"WeakMap"}),"<",(0,t.jsx)(s.code,{children:"Module"}),", ",(0,t.jsx)(s.code,{children:"CommandMeta"}),">"]}),"\n",(0,t.jsx)(s.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/module-store.ts#L9",children:"src/core/structures/module-store.ts:9"})})]})}function u(e={}){const{wrapper:s}={...(0,n.R)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,s,r)=>{r.d(s,{R:()=>d,x:()=>i});var t=r(6540);const n={},o=t.createContext(n);function d(e){const s=t.useContext(o);return t.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function i(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:d(e.components),t.createElement(o.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/6875c492.95d8358c.js b/assets/js/6875c492.95d8358c.js deleted file mode 100644 index dd68d337f..000000000 --- a/assets/js/6875c492.95d8358c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4813],{7713:(e,t,n)=>{n.d(t,{A:()=>r});n(6540);var s=n(1312),a=n(9022),i=n(4848);function r(e){const{metadata:t}=e,{previousPage:n,nextPage:r}=t;return(0,i.jsxs)("nav",{className:"pagination-nav","aria-label":(0,s.T)({id:"theme.blog.paginator.navAriaLabel",message:"Blog list page navigation",description:"The ARIA label for the blog pagination"}),children:[n&&(0,i.jsx)(a.A,{permalink:n,title:(0,i.jsx)(s.A,{id:"theme.blog.paginator.newerEntries",description:"The label used to navigate to the newer blog posts page (previous page)",children:"Newer Entries"})}),r&&(0,i.jsx)(a.A,{permalink:r,title:(0,i.jsx)(s.A,{id:"theme.blog.paginator.olderEntries",description:"The label used to navigate to the older blog posts page (next page)",children:"Older Entries"}),isNext:!0})]})}},3892:(e,t,n)=>{n.d(t,{A:()=>r});n(6540);var s=n(7131),a=n(8258),i=n(4848);function r(e){let{items:t,component:n=a.A}=e;return(0,i.jsx)(i.Fragment,{children:t.map((e=>{let{content:t}=e;return(0,i.jsx)(s.i,{content:t,children:(0,i.jsx)(n,{children:(0,i.jsx)(t,{})})},t.metadata.permalink)}))})}},3069:(e,t,n)=>{n.r(t),n.d(t,{default:()=>b});n(6540);var s=n(53),a=n(1312),i=n(5846),r=n(9024),l=n(7559),o=n(5489),c=n(6535),d=n(7713),g=n(1463),u=n(3892),h=n(996),p=n(1107),m=n(4848);function x(e){const t=function(){const{selectMessage:e}=(0,i.W)();return t=>e(t,(0,a.T)({id:"theme.blog.post.plurals",description:'Pluralized label for "{count} posts". 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 post|{count} posts"},{count:t}))}();return(0,a.T)({id:"theme.blog.tagTitle",description:"The title of the page for a blog tag",message:'{nPosts} tagged with "{tagName}"'},{nPosts:t(e.count),tagName:e.label})}function j(e){let{tag:t}=e;const n=x(t);return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(r.be,{title:n}),(0,m.jsx)(g.A,{tag:"blog_tags_posts"})]})}function A(e){let{tag:t,items:n,sidebar:s,listMetadata:i}=e;const r=x(t);return(0,m.jsxs)(c.A,{sidebar:s,children:[t.unlisted&&(0,m.jsx)(h.A,{}),(0,m.jsxs)("header",{className:"margin-bottom--xl",children:[(0,m.jsx)(p.A,{as:"h1",children:r}),(0,m.jsx)(o.A,{href:t.allTagsPath,children:(0,m.jsx)(a.A,{id:"theme.tags.tagsPageLink",description:"The label of the link targeting the tag list page",children:"View All Tags"})})]}),(0,m.jsx)(u.A,{items:n}),(0,m.jsx)(d.A,{metadata:i})]})}function b(e){return(0,m.jsxs)(r.e3,{className:(0,s.A)(l.G.wrapper.blogPages,l.G.page.blogTagPostListPage),children:[(0,m.jsx)(j,{...e}),(0,m.jsx)(A,{...e})]})}},996:(e,t,n)=>{n.d(t,{A:()=>h});n(6540);var s=n(53),a=n(1312),i=n(5260),r=n(4848);function l(){return(0,r.jsx)(a.A,{id:"theme.unlistedContent.title",description:"The unlisted content banner title",children:"Unlisted page"})}function o(){return(0,r.jsx)(a.A,{id:"theme.unlistedContent.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function c(){return(0,r.jsx)(i.A,{children:(0,r.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}var d=n(7559),g=n(7293);function u(e){let{className:t}=e;return(0,r.jsx)(g.A,{type:"caution",title:(0,r.jsx)(l,{}),className:(0,s.A)(t,d.G.common.unlistedBanner),children:(0,r.jsx)(o,{})})}function h(e){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(c,{}),(0,r.jsx)(u,{...e})]})}},4428:(e,t,n)=>{n.d(t,{A:()=>o});var s=n(6540),a=n(2303),i=n(6846),r=n(3717),l=n(4848);function o(e){let{children:t,...n}=e;const o=(0,a.A)(),c=function(e){return s.Children.toArray(e).some((e=>(0,s.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),d="string"==typeof c?r.A:i.A;return(0,l.jsx)(d,{...n,children:c},String(o))}}}]); \ No newline at end of file diff --git a/assets/js/69369ae2.5d8b0482.js b/assets/js/69369ae2.5d8b0482.js deleted file mode 100644 index 430d799fe..000000000 --- a/assets/js/69369ae2.5d8b0482.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9140],{1966:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/6b841b38.8168245a.js b/assets/js/6b841b38.8168245a.js deleted file mode 100644 index e7d2b2777..000000000 --- a/assets/js/6b841b38.8168245a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1747],{7757:e=>{e.exports=JSON.parse('{"name":"docusaurus-theme-search-algolia","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/6ba1d2c1.5a87af8a.js b/assets/js/6ba1d2c1.5a87af8a.js deleted file mode 100644 index 1594a8692..000000000 --- a/assets/js/6ba1d2c1.5a87af8a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6987],{8539:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>o,contentTitle:()=>i,default:()=>p,frontMatter:()=>a,metadata:()=>l,toc:()=>d});var t=s(4848),r=s(8453);const a={slug:"1.2.0",title:"Release 1.2.0",authors:["jacoobes"],tags:["release"]},i=void 0,l={permalink:"/blog/1.2.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-09-28-mdx-blog-post.md",source:"@site/blog/2022-09-28-mdx-blog-post.md",title:"Release 1.2.0",description:"Class-based modules",date:"2022-09-28T00:00:00.000Z",formattedDate:"September 28, 2022",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:1.71,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"1.2.0",title:"Release 1.2.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"How to get started with sern!",permalink:"/blog/getting-started"}},o={authorsImageUrls:[void 0]},d=[{value:"Class-based modules",id:"class-based-modules",level:2},{value:"Class based modules",id:"class-based-modules-1",level:3},{value:"Deprecation Warnings",id:"deprecation-warnings",level:3},{value:"Dependencies Update",id:"dependencies-update",level:3}];function c(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h2,{id:"class-based-modules",children:"Class-based modules"}),"\n",(0,t.jsx)(n.p,{children:"Today we're announcing the ability to create class based modules!\nTo get started, install"}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{children:"npm install @sern/handler@latest\n"})}),"\n",(0,t.jsx)(n.p,{children:"Quick List of changes!"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"#class-based-modules",children:"Class based modules"})}),"\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"#deprecation-warnings",children:"Deprecation Warnings"})}),"\n",(0,t.jsx)(n.li,{children:(0,t.jsx)(n.a,{href:"#dependencies-update",children:"Dependencies update"})}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"class-based-modules-1",children:"Class based modules"}),"\n",(0,t.jsxs)(n.p,{children:["Incorporate class based modules into your project instead of the traditional ",(0,t.jsx)(n.code,{children:"commandModule"})," or ",(0,t.jsx)(n.code,{children:"eventModule"}),"\nExtend the new ",(0,t.jsx)(n.a,{href:"docs/api/classes/CommandExecutable",children:"CommandExecutable"})," or ",(0,t.jsx)(n.a,{href:"docs/api/classes/EventExecutable",children:"EventExecutable"})]}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:'title="commands/meaning-of-life.ts"',children:"import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';\nimport { publish } from '../plugins/publish.js';\nimport { serendipityOnly } from '../plugins/serendipityOnly.js';\n\nexport default class extends CommandExecutable {\n type = CommandType.Both as const;\n description = 'What is the meaning of life?'\n override onEvent = [\n serendipityOnly()\n ];\n override plugins = [\n publish(),\n ];\n // highlight-next-line\n execute = async (ctx: Context, args: Args) => {\n await ctx.reply('42')\n };\n}\n"})}),"\n",(0,t.jsx)(n.admonition,{type:"caution",children:(0,t.jsx)(n.p,{children:"execute must not be a method of the class. It should be as above, a property on the class!"})}),"\n",(0,t.jsx)(n.pre,{children:(0,t.jsx)(n.code,{className:"language-ts",metastring:'title="events/guildMemberAdd.ts"',children:"import { CommandType, EventExecutable, type EventType } from '@sern/handler';\nimport type { GuildMember } from 'discord.js'\n\nexport default class extends EventExecutable {\n type = EventType.Discord as const;\n // highlight-next-line\n execute = (member: GuildMember) => {\n console.log(member)\n };\n}\n"})}),"\n",(0,t.jsxs)(n.p,{children:["Now, you might ask ",(0,t.jsx)(n.strong,{children:"why"})," this feature was added. ",(0,t.jsx)(n.br,{})," Simply put, to give flexibility to the developers.\nI believe that you should build your own structures however you might like and customize to your liking.\nIn addition, ",(0,t.jsx)(n.strong,{children:"decorators now unofficially work with modules!"}),"\nFeel free to use TypeScript experimental decorators to augment and customize your classes."]}),"\n",(0,t.jsx)(n.h3,{id:"deprecation-warnings",children:"Deprecation Warnings"}),"\n",(0,t.jsx)(n.p,{children:"The next update will bring sern v2 with some important features. Here are some things to watch out for."}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.a,{href:"docs/api/interfaces/Wrapper",children:"Wrapper#client"})," will be deprecated"]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.a,{href:"docs/api/interfaces/Wrapper",children:"Wrapper#sernEmitter"})," will be deprecated\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"a SernEmitter will be automatically created once Sern#init is called"}),"\n"]}),"\n"]}),"\n",(0,t.jsxs)(n.li,{children:["The option to pass in a function or array for ",(0,t.jsx)(n.a,{href:"docs/api/interfaces/Wrapper",children:"Wrapper#events"})," will be deprecated. Only strings are accepted."]}),"\n",(0,t.jsxs)(n.li,{children:[(0,t.jsx)(n.a,{href:"docs/api/classes/SernEmitter",children:"Sern#addExternal"})," will be deprecated in favor of a better way."]}),"\n"]}),"\n",(0,t.jsx)(n.h3,{id:"dependencies-update",children:"Dependencies Update"}),"\n",(0,t.jsxs)(n.ul,{children:["\n",(0,t.jsx)(n.li,{children:"TypeScript has been updated to 4.8.3"}),"\n",(0,t.jsx)(n.li,{children:"Discord.js has been upgraded to 14.5"}),"\n"]})]})}function p(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>i,x:()=>l});var t=s(6540);const r={},a=t.createContext(r);function i(e){const n=t.useContext(a);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:i(e.components),t.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/6c624b4c.8c48b52c.js b/assets/js/6c624b4c.8c48b52c.js deleted file mode 100644 index 6efee1e6b..000000000 --- a/assets/js/6c624b4c.8c48b52c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1611],{239:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>h,frontMatter:()=>l,metadata:()=>i,toc:()=>o});var d=s(4848),r=s(8453);const l={id:"CommandExecutable",title:"Class: CommandExecutable",sidebar_label:"CommandExecutable",sidebar_position:0,custom_edit_url:null},t=void 0,i={id:"api/classes/CommandExecutable",title:"Class: CommandExecutable",description:"Deprecated",source:"@site/docs/api/classes/CommandExecutable.md",sourceDirName:"api/classes",slug:"/api/classes/CommandExecutable",permalink:"/docs/api/classes/CommandExecutable",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CommandExecutable",title:"Class: CommandExecutable",sidebar_label:"CommandExecutable",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernError",permalink:"/docs/api/enums/SernError"},next:{title:"Context",permalink:"/docs/api/classes/Context"}},c={},o=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Type parameters",id:"type-parameters-1",level:4},{value:"Returns",id:"returns",level:4},{value:"Properties",id:"properties",level:2},{value:"plugins",id:"plugins",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"_instance",id:"_instance",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"Methods",id:"methods",level:2},{value:"execute",id:"execute",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"getInstance",id:"getinstance",level:3},{value:"Returns",id:"returns-2",level:4},{value:"Defined in",id:"defined-in-4",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,d.jsx)(n.p,{children:"Will be removed in future"}),"\n",(0,d.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"Type"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})," = ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,d.jsx)(n.h2,{id:"constructors",children:"Constructors"}),"\n",(0,d.jsx)(n.h3,{id:"constructor",children:"constructor"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"new CommandExecutable"}),"<",(0,d.jsx)(n.code,{children:"Type"}),">(): ",(0,d.jsx)(n.a,{href:"/docs/api/classes/CommandExecutable",children:(0,d.jsx)(n.code,{children:"CommandExecutable"})}),"<",(0,d.jsx)(n.code,{children:"Type"}),">"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-1",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"Type"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})," = ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/classes/CommandExecutable",children:(0,d.jsx)(n.code,{children:"CommandExecutable"})}),"<",(0,d.jsx)(n.code,{children:"Type"}),">"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#anycommandplugin",children:(0,d.jsx)(n.code,{children:"AnyCommandPlugin"})}),"[] = ",(0,d.jsx)(n.code,{children:"[]"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L80",children:"src/core/modules.ts:80"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Abstract"})," ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.code,{children:"Type"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L79",children:"src/core/modules.ts:79"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"_instance",children:"_instance"}),"\n",(0,d.jsxs)(n.p,{children:["\u25aa ",(0,d.jsx)(n.code,{children:"Static"})," ",(0,d.jsx)(n.code,{children:"Private"})," ",(0,d.jsx)(n.strong,{children:"_instance"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L81",children:"src/core/modules.ts:81"})}),"\n",(0,d.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"execute"}),"(",(0,d.jsx)(n.code,{children:"...args"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"...args"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"CommandArgs"}),"<",(0,d.jsx)(n.code,{children:"Type"}),", ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType#control",children:(0,d.jsx)(n.code,{children:"Control"})}),">"]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L92",children:"src/core/modules.ts:92"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"getinstance",children:"getInstance"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"getInstance"}),"(): ",(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L83",children:"src/core/modules.ts:83"})})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>t,x:()=>i});var d=s(6540);const r={},l=d.createContext(r);function t(e){const n=d.useContext(l);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:t(e.components),d.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/6cfc4513.eb58f2d8.js b/assets/js/6cfc4513.eb58f2d8.js deleted file mode 100644 index 2754844b1..000000000 --- a/assets/js/6cfc4513.eb58f2d8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9934],{2705:e=>{e.exports=JSON.parse('{"label":"guides","permalink":"/blog/tags/guides","allTagsPath":"/blog/tags","count":2,"unlisted":false}')}}]); \ No newline at end of file diff --git a/assets/js/6e55d25c.4e3858c6.js b/assets/js/6e55d25c.4e3858c6.js deleted file mode 100644 index 5389385fd..000000000 --- a/assets/js/6e55d25c.4e3858c6.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5116],{6232:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>a,contentTitle:()=>l,default:()=>h,frontMatter:()=>t,metadata:()=>o,toc:()=>c});var s=i(4848),r=i(8453);const t={},l=void 0,o={id:"cli/publish",title:"publish",description:"Implicits",source:"@site/docs/cli/publish.md",sourceDirName:"cli",slug:"/cli/publish",permalink:"/docs/cli/publish",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/cli/publish.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"extra",permalink:"/docs/cli/extra"},next:{title:"Introduction",permalink:"/docs/guide/"}},a={},c=[{value:"Implicits",id:"implicits",level:2},{value:"Usage",id:"usage",level:2},{value:"Features",id:"features",level:2},{value:"Config",id:"config",level:2},{value:"Prerequiring",id:"prerequiring",level:2},{value:"Example: command published in guild",id:"example-command-published-in-guild",level:3},{value:"Script ran:",id:"script-ran",level:4}];function d(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"Usage: sern commands publish [options] [path]\n\nNew way to manage your slash commands\n\nArguments:\n path path with respect to current working directory that will locate all published files\n\nOptions:\n -i, --import [scriptPath...] Prerequire a script to load into publisher\n -t, --token [token]\n --appId [applicationId]\n -h, --help display help for command\n"})}),"\n",(0,s.jsx)(n.h2,{id:"implicits",children:"Implicits"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Automatically reads a .env in the working directory. For seamless integration, your .env file should look like this:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-txt",metastring:'title=".env" ',children:"DISCORD_TOKEN=\nAPPLICATION_ID=\nNODE_ENV=\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Calls the discord API with the ",(0,s.jsx)(n.a,{href:"https://discord.com/developers/docs/interactions/application-commands#bulk-overwrite-global-application-commands",children:"PUT route"}),". Wherever your commands directory is located, publish will override the existing application commands at Discord. Existing commands do not count towards the command limit creation daily."]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["You may pass these in as command line arguments as well. ",(0,s.jsx)(n.strong,{children:"CLI arguments take precedence."}),"\nIf you do not know how to obtain either of these credentials, ",(0,s.jsx)(n.a,{href:"https://github.com/reactiflux/discord-irc/wiki/Creating-a-discord-bot-&-getting-a-token",children:"click here"})]}),"\n",(0,s.jsx)(n.h2,{id:"usage",children:"Usage"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.img,{alt:"usage",src:i(8295).A+"",width:"1171",height:"470"})}),"\n",(0,s.jsx)(n.h2,{id:"features",children:"Features"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Automatically syncs api with your command base"}),"\n",(0,s.jsxs)(n.li,{children:["generates JSON file of output (",(0,s.jsx)(n.strong,{children:".sern/command-data-remote.json"}),")"]}),"\n",(0,s.jsx)(n.li,{children:"supports publishing direct esm typescript files"}),"\n",(0,s.jsx)(n.li,{children:"commonjs + javascript users need to compile first and then run sern publish on the dist/ output"}),"\n",(0,s.jsx)(n.li,{children:"prerequire scripts."}),"\n",(0,s.jsx)(n.li,{children:"supports a configuration that is the same as the original publish plugin."}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Each command file can have an extra config that follows ",(0,s.jsx)(n.code,{children:"ValidPublishOptions"}),":"]}),"\n",(0,s.jsx)(n.h2,{id:"config",children:"Config"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",children:"\ntype ValidMemberPermissions = \n | PermissionFlagBits //discord.js enum\n | PermissionFlagBits[] //array of discord.js enum\n | string //must be a stringified number\n | bigint\n\ninterface PublishConfig {\n guildIds?: string[];\n\tdmPermission?: boolean;\n\tdefaultMemberPermissions: ValidMemberPermissions;\n}\ntype ValidPublishOptions = \n | PublishConfig\n | (absPath: string, module: CommandModule) => PublishConfig\n"})}),"\n",(0,s.jsx)(n.p,{children:"In other words, you can export a function or object."}),"\n",(0,s.jsx)(n.h2,{id:"prerequiring",children:"Prerequiring"}),"\n",(0,s.jsxs)(n.p,{children:["Is there a ",(0,s.jsx)(n.a,{href:"../guide/walkthrough/services",children:"service"})," that is required at the top level of a command?"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Create an ES6 script anywhere:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",metastring:'title="scripts/prerequire.mjs"',children:"import { makeDependencies, single, Service } from '@sern/handler'\nimport { Client } from 'discord.js'\n\nawait makeDependencies({\n build: (root) =>\n root.add({ \"@sern/client\": single(() => new Client(...options)) }),\n});\n\nawait Service('@sern/client').login()\n"})}),"\n",(0,s.jsx)(n.p,{children:"This will create a container for publishing. (as of 0.6.0, client is required or this will crash)"}),"\n",(0,s.jsx)(n.h3,{id:"example-command-published-in-guild",children:"Example: command published in guild"}),"\n",(0,s.jsx)(n.h4,{id:"script-ran",children:"Script ran:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"sern commands publish -i ./scripts/prerequire.mjs\n"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",metastring:"title=src/commands/ping.ts",children:"import { commandModule, Service, CommandType } from '@sern/handler'\n\nconst client = Service('@sern/client');\n\nexport const config = { \n guildIds: [\"889026545715400705\"]\n}\n\nexport default commandModule( {\n type: CommandType.Slash\n description: `${client.user.username}'s ping`,\n execute: (ctx) => { \n ctx.reply('pong')\n }\n})\n\n"})})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8295:(e,n,i)=>{i.d(n,{A:()=>s});const s=i.p+"assets/images/Code_-_Insiders_2kTVzm0uIQ-76ace605cf3a0c5b7a55cb2c5228fcfa.gif"},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>o});var s=i(6540);const r={},t=s.createContext(r);function l(e){const n=s.useContext(t);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),s.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/6ff82968.f2779ab7.js b/assets/js/6ff82968.f2779ab7.js deleted file mode 100644 index bdf454806..000000000 --- a/assets/js/6ff82968.f2779ab7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2968],{1002:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>s,metadata:()=>t,toc:()=>h});var d=i(4848),r=i(8453);const s={id:"TextCommand",title:"Interface: TextCommand",sidebar_label:"TextCommand",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/TextCommand",title:"Interface: TextCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/TextCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/TextCommand",permalink:"/docs/api/interfaces/TextCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"TextCommand",title:"Interface: TextCommand",sidebar_label:"TextCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"StringSelectCommand",permalink:"/docs/api/interfaces/StringSelectCommand"},next:{title:"UserSelectCommand",permalink:"/docs/api/interfaces/UserSelectCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"alias",id:"alias",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-6",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"TextCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"alias",children:"alias"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"alias"}),": ",(0,d.jsx)(n.code,{children:"string"}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L112",children:"src/types/core-modules.ts:112"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,d.jsx)(n.code,{children:"Context"})}),", ",(0,d.jsx)(n.code,{children:"args"}),": [",(0,d.jsx)(n.code,{children:'"text"'}),", ",(0,d.jsx)(n.code,{children:"string"}),"[]]) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),", ",(0,d.jsx)(n.code,{children:"args"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,d.jsx)(n.code,{children:"Context"})})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"args"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["[",(0,d.jsx)(n.code,{children:'"text"'}),", ",(0,d.jsx)(n.code,{children:"string"}),"[]]"]})]})]})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L113",children:"src/types/core-modules.ts:113"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#text",children:(0,d.jsx)(n.code,{children:"Text"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L111",children:"src/types/core-modules.ts:111"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var d=i(6540);const r={},s=d.createContext(r);function l(e){const n=d.useContext(s);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),d.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/701614d9.a0b5248c.js b/assets/js/701614d9.a0b5248c.js deleted file mode 100644 index 90bca17c7..000000000 --- a/assets/js/701614d9.a0b5248c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[877],{3774:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>o,frontMatter:()=>d,metadata:()=>s,toc:()=>h});var r=i(4848),l=i(8453);const d={id:"ExternalEmitterPlugin",title:"Interface: ExternalEmitterPlugin",sidebar_label:"ExternalEmitterPlugin",sidebar_position:0,custom_edit_url:null},t=void 0,s={id:"api/interfaces/ExternalEmitterPlugin",title:"Interface: ExternalEmitterPlugin",description:"Hierarchy",source:"@site/docs/api/interfaces/ExternalEmitterPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ExternalEmitterPlugin",permalink:"/docs/api/interfaces/ExternalEmitterPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ExternalEmitterPlugin",title:"Interface: ExternalEmitterPlugin",sidebar_label:"ExternalEmitterPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"EventPlugin",permalink:"/docs/api/interfaces/EventPlugin"},next:{title:"ExternalEventCommand",permalink:"/docs/api/interfaces/ExternalEventCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"ExternalEmitterPlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"payload"}),": { ",(0,r.jsx)(n.code,{children:"absPath"}),": ",(0,r.jsx)(n.code,{children:"string"})," ; ",(0,r.jsx)(n.code,{children:"mod"}),": ",(0,r.jsx)(n.code,{children:"ExternalEventCommand"})," & { ",(0,r.jsx)(n.code,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})," } }, ",(0,r.jsx)(n.code,{children:"controller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"payload"}),", ",(0,r.jsx)(n.code,{children:"controller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Object"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload.absPath"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"string"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload.mod"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"ExternalEventCommand"})," & { ",(0,r.jsx)(n.code,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})," }"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L57",children:"src/handler/plugins/plugin.ts:57"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L31",children:"src/handler/plugins/plugin.ts:31"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#command",children:(0,r.jsx)(n.code,{children:"Command"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L56",children:"src/handler/plugins/plugin.ts:56"})})]})}function o(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>s});var r=i(6540);const l={},d=r.createContext(l);function t(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:t(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/707baeff.821d1c11.js b/assets/js/707baeff.821d1c11.js deleted file mode 100644 index 6f8dce9cc..000000000 --- a/assets/js/707baeff.821d1c11.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5799],{476:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>u,frontMatter:()=>i,metadata:()=>l,toc:()=>o});var s=r(4848),t=r(8453);const i={id:"EventType",title:"Enumeration: EventType",sidebar_label:"EventType",sidebar_position:0,custom_edit_url:null},d=void 0,l={id:"api/enums/EventType",title:"Enumeration: EventType",description:"A bitfield that discriminates event modules",source:"@site/docs/api/enums/EventType.md",sourceDirName:"api/enums",slug:"/api/enums/EventType",permalink:"/docs/api/enums/EventType",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"EventType",title:"Enumeration: EventType",sidebar_label:"EventType",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CommandType",permalink:"/docs/api/enums/CommandType"},next:{title:"PayloadType",permalink:"/docs/api/enums/PayloadType"}},c={},o=[{value:"Enumeration Members",id:"enumeration-members",level:2},{value:"Discord",id:"discord",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"External",id:"external",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"Sern",id:"sern",level:3},{value:"Defined in",id:"defined-in-2",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",pre:"pre",strong:"strong",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:"A bitfield that discriminates event modules"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:(0,s.jsx)(n.code,{children:"Example"})})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",children:"export default eventModule({\n //highlight-next-line\n type : EventType.Discord,\n name : 'guildMemberAdd'\n execute(member : GuildMember) {\n console.log(member)\n }\n})\n"})}),"\n",(0,s.jsx)(n.h2,{id:"enumeration-members",children:"Enumeration Members"}),"\n",(0,s.jsx)(n.h3,{id:"discord",children:"Discord"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"Discord"})," = ",(0,s.jsx)(n.code,{children:"1"})]}),"\n",(0,s.jsx)(n.p,{children:"The EventType for handling discord events"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L51",children:"src/core/structures/enums.ts:51"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"external",children:"External"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"External"})," = ",(0,s.jsx)(n.code,{children:"3"})]}),"\n",(0,s.jsxs)(n.p,{children:["The EventType for handling external events.\nCould be for example, ",(0,s.jsx)(n.code,{children:"process"})," events, database events"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L60",children:"src/core/structures/enums.ts:60"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"sern",children:"Sern"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"Sern"})," = ",(0,s.jsx)(n.code,{children:"2"})]}),"\n",(0,s.jsx)(n.p,{children:"The EventType for handling sern events"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L55",children:"src/core/structures/enums.ts:55"})})]})}function u(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>d,x:()=>l});var s=r(6540);const t={},i=s.createContext(t);function d(e){const n=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:d(e.components),s.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/720cd117.11a04cd9.js b/assets/js/720cd117.11a04cd9.js deleted file mode 100644 index 112e42b05..000000000 --- a/assets/js/720cd117.11a04cd9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3186],{671:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>o,frontMatter:()=>l,metadata:()=>t,toc:()=>h});var r=i(4848),d=i(8453);const l={id:"SernEmitterPlugin",title:"Interface: SernEmitterPlugin",sidebar_label:"SernEmitterPlugin",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/SernEmitterPlugin",title:"Interface: SernEmitterPlugin",description:"Hierarchy",source:"@site/docs/api/interfaces/SernEmitterPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernEmitterPlugin",permalink:"/docs/api/interfaces/SernEmitterPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernEmitterPlugin",title:"Interface: SernEmitterPlugin",sidebar_label:"SernEmitterPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernAutocompleteData",permalink:"/docs/api/interfaces/SernAutocompleteData"},next:{title:"SernEventCommand",permalink:"/docs/api/interfaces/SernEventCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"SernEmitterPlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"payload"}),": { ",(0,r.jsx)(n.code,{children:"absPath"}),": ",(0,r.jsx)(n.code,{children:"string"})," ; ",(0,r.jsx)(n.code,{children:"mod"}),": ",(0,r.jsx)(n.code,{children:"SernEventCommand"})," & { ",(0,r.jsx)(n.code,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})," } }, ",(0,r.jsx)(n.code,{children:"controller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"payload"}),", ",(0,r.jsx)(n.code,{children:"controller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Object"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload.absPath"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"string"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload.mod"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"SernEventCommand"})," & { ",(0,r.jsx)(n.code,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})," }"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L65",children:"src/handler/plugins/plugin.ts:65"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L31",children:"src/handler/plugins/plugin.ts:31"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#command",children:(0,r.jsx)(n.code,{children:"Command"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L64",children:"src/handler/plugins/plugin.ts:64"})})]})}function o(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var r=i(6540);const d={},l=r.createContext(d);function s(e){const n=r.useContext(l);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:s(e.components),r.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7343edf0.33fdac37.js b/assets/js/7343edf0.33fdac37.js deleted file mode 100644 index 71e68ad51..000000000 --- a/assets/js/7343edf0.33fdac37.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7451],{2467:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>h,frontMatter:()=>i,metadata:()=>d,toc:()=>o});var r=t(4848),l=t(8453);const i={id:"ControlPlugin",title:"Interface: ControlPlugin",sidebar_label:"ControlPlugin",sidebar_position:0,custom_edit_url:null},s=void 0,d={id:"api/interfaces/ControlPlugin",title:"Interface: ControlPlugin",description:"Type parameters",source:"@site/docs/api/interfaces/ControlPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ControlPlugin",permalink:"/docs/api/interfaces/ControlPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ControlPlugin",title:"Interface: ControlPlugin",sidebar_label:"ControlPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ContextMenuUser",permalink:"/docs/api/interfaces/ContextMenuUser"},next:{title:"Controller",permalink:"/docs/api/interfaces/Controller"}},c={},o=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,r.jsx)(n.code,{children:"any"}),"[] = ",(0,r.jsx)(n.code,{children:"any"}),"[]"]})]})})]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"Args"}),") => ",(0,r.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,r.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"...args"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,r.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"...args"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Args"})})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,r.jsx)(n.code,{children:"PluginResult"})})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L73",children:"src/types/core-plugin.ts:73"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#control",children:(0,r.jsx)(n.code,{children:"Control"})})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L72",children:"src/types/core-plugin.ts:72"})})]})}function h(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>d});var r=t(6540);const l={},i=r.createContext(l);function s(e){const n=r.useContext(i);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:s(e.components),r.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/73bd57bd.6726c481.js b/assets/js/73bd57bd.6726c481.js deleted file mode 100644 index 1d0830a84..000000000 --- a/assets/js/73bd57bd.6726c481.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3581],{7164:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>d,default:()=>h,frontMatter:()=>i,metadata:()=>c,toc:()=>a});var s=t(4848),r=t(8453);const i={id:"Sern",title:"Namespace: Sern",sidebar_label:"Sern",sidebar_position:0,custom_edit_url:null},d=void 0,c={id:"api/namespaces/Sern",title:"Namespace: Sern",description:"Functions",source:"@site/docs/api/namespaces/Sern.md",sourceDirName:"api/namespaces",slug:"/api/namespaces/Sern",permalink:"/docs/api/namespaces/Sern",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Sern",title:"Namespace: Sern",sidebar_label:"Sern",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Presence",permalink:"/docs/api/namespaces/Presence"},next:{title:"CommandType",permalink:"/docs/api/enums/CommandType"}},l={},a=[{value:"Functions",id:"functions",level:2},{value:"init",id:"init",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"functions",children:"Functions"}),"\n",(0,s.jsx)(n.h3,{id:"init",children:"init"}),"\n",(0,s.jsxs)(n.p,{children:["\u25b8 ",(0,s.jsx)(n.strong,{children:"init"}),"(",(0,s.jsx)(n.code,{children:"maybeWrapper"}),"): ",(0,s.jsx)(n.code,{children:"void"})]}),"\n",(0,s.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,s.jsx)(n.tbody,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"maybeWrapper"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,s.jsx)(n.a,{href:"/docs/api/interfaces/Wrapper",children:(0,s.jsx)(n.code,{children:"Wrapper"})})," | ",(0,s.jsx)(n.code,{children:'"file"'})]})]})})]}),"\n",(0,s.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"void"})}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:(0,s.jsx)(n.code,{children:"Since"})})}),"\n",(0,s.jsx)(n.p,{children:"1.0.0"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:(0,s.jsx)(n.code,{children:"Example"})})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",metastring:'title="src/index.ts"',children:"Sern.init({\n commands: 'dist/commands',\n events: 'dist/events',\n})\n"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/sern.ts#L26",children:"src/sern.ts:26"})})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>d,x:()=>c});var s=t(6540);const r={},i=s.createContext(r);function d(e){const n=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:d(e.components),s.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/74e316f4.754f56ff.js b/assets/js/74e316f4.754f56ff.js deleted file mode 100644 index 31202e59a..000000000 --- a/assets/js/74e316f4.754f56ff.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3705],{6318:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>t,default:()=>h,frontMatter:()=>r,metadata:()=>d,toc:()=>o});var i=s(4848),l=s(8453);const r={slug:"3.0.0",title:"Release 3.0.0",authors:["jacoobes"],tags:["release"]},t=void 0,d={permalink:"/blog/3.0.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-06-18-mdx-blog-post.md",source:"@site/blog/2023-06-18-mdx-blog-post.md",title:"Release 3.0.0",description:"3.0 Release",date:"2023-06-18T00:00:00.000Z",formattedDate:"June 18, 2023",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:2.475,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"3.0.0",title:"Release 3.0.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"New logo!",permalink:"/blog/newlogo"},nextItem:{title:"Release 2.5.0",permalink:"/blog/2.5.0"}},a={authorsImageUrls:[void 0]},o=[{value:"3.0 Release",id:"30-release",level:2},{value:"Join our discord
",id:"join-our-discord-",level:3},{value:"Features",id:"features",level:3},{value:"Dependency Management",id:"dependency-management",level:4},{value:"Quality of Life",id:"quality-of-life",level:4},{value:"Experimental",id:"experimental",level:3},{value:"Breaking changes",id:"breaking-changes",level:3},{value:"Deprecations",id:"deprecations",level:3}];function c(e){const n={a:"a",br:"br",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",pre:"pre",ul:"ul",...(0,l.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"30-release",children:"3.0 Release"}),"\n",(0,i.jsxs)(n.h3,{id:"join-our-discord-",children:["Join our ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord"})," ",(0,i.jsx)(n.br,{})]}),"\n",(0,i.jsx)(n.h3,{id:"features",children:"Features"}),"\n",(0,i.jsx)(n.h4,{id:"dependency-management",children:"Dependency Management"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"Service"})," API (recommended to use this over useContainer hooks)\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Dependencies type must be globally augmented in order for Services api to function properly"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["new methods on ModuleManager\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"getPublishableCommands()"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Init Hooks\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"implement starting behavior for dependencies"}),"\n",(0,i.jsxs)(n.li,{children:["To enforce and type check this, use the ",(0,i.jsx)(n.code,{children:"Initializable"})," type when making your Dependencies type!"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Emitter interface\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"More generic interface to define any event emitter"}),"\n",(0,i.jsx)(n.li,{children:"You can now swap out the SernEmitter with whatever emitter now."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"class DatabaseService implements Init {\n //some hypothetical database\n _pgsql : database() \n\n async init() {\n await _pgsql.load()\n }\n\n}\n\nawait makeDependencies({ \n build: root => root.add({\n db: new DatabaseService() //will be init'ed automatically\n })\n})\n\n"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["new SernEmitter event ",(0,i.jsx)(n.code,{children:"modulesLoaded"})," , which allows users to customize behavior after all modules are loaded!"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",children:"\nexport default eventModule({\n name: 'modulesLoaded',\n type: EventType.Sern,\n execute: () => {\n console.log('All modules loaded')\n }\n})\n\n\n"})}),"\n",(0,i.jsx)(n.h4,{id:"quality-of-life",children:"Quality of Life"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"faster module loading"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"I utilize async generators for reading files now. A lot faster than the first iteration."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"better error handling"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Less boilerplate"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Services api cleans up v2 boilerplate"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"class modules devex got upgraded and work better than before"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["ignore commands and events with ",(0,i.jsx)(n.code,{children:"!"})," prefix on filename or directory (ie: ",(0,i.jsx)(n.code,{children:"!filename.ts"})," or ",(0,i.jsx)(n.code,{children:"!directory"})," will be ignored by sern)"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"Service"})," API (recommended to use this over useContainer hooks)"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Dependencies type must be globally augmented in order for Services api to function properly"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Less boilerplate"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"new methods on ModuleManager"}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["ignore commands / events with ",(0,i.jsx)(n.code,{children:"!"})," prefix on filename or directory (ie: ",(0,i.jsx)(n.code,{children:"!filename.ts"})," or ",(0,i.jsx)(n.code,{children:"!directory"}),")"]}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsxs)(n.p,{children:["new SernEmitter event ",(0,i.jsx)(n.code,{children:"modulesLoaded"})," , which allows users to customize behavior after all modules are loaded!"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Init Hooks"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"implement starting behavior for dependencies"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"experimental",children:"Experimental"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Experimental things may be subject to removal, need feedback and are not guaranteed stable"}),"\n",(0,i.jsxs)(n.li,{children:["dev / prod mode\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"sern will behave differently depending on mode set"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["init sern from ",(0,i.jsx)(n.code,{children:"file"})," option\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"reads from local sern.config.json"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-js",children:"Sern.init('file'); \n"})}),"\n",(0,i.jsx)(n.h3,{id:"breaking-changes",children:"Breaking changes"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Sern.makeDependencies -> makeDependencies\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.li,{children:"module store and manager internally changed, so those using them may recieve breaking changes"}),"\n",(0,i.jsx)(n.li,{children:"BaseOptions type removed"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-diff",children:"- Sern.makeDependencies({ build: () => {} })\n+ await makeDependencies({ build: () => {} })\n"})}),"\n",(0,i.jsx)(n.h3,{id:"deprecations",children:"Deprecations"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Removed all previous marked deprecations in v3"}),"\n",(0,i.jsx)(n.li,{children:"ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager"}),"\n",(0,i.jsx)(n.li,{children:"Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract"}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>t,x:()=>d});var i=s(6540);const l={},r=i.createContext(l);function t(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:t(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7508.f1041542.js b/assets/js/7508.f1041542.js deleted file mode 100644 index 3b38c5d84..000000000 --- a/assets/js/7508.f1041542.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7508],{7795:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);var s=n(53),o=n(6058),c=n(7559),a=n(4291);const r={codeBlockContainer:"codeBlockContainer_Ckt0"};var l=n(4848);function i(e){let{as:t,...n}=e;const i=(0,o.A)(),u=(0,a.M$)(i);return(0,l.jsx)(t,{...n,style:u,className:(0,s.A)(n.className,r.codeBlockContainer,c.G.common.codeBlock)})}},6846:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});n(6540);var s=n(53),o=n(7795),c=n(7562),a=n(4848);function r(e){let{children:t,className:n}=e;return(0,a.jsx)(o.A,{as:"pre",tabIndex:0,className:(0,s.A)(c.A.codeBlockStandalone,"thin-scrollbar",n),children:(0,a.jsx)("code",{className:c.A.codeBlockLines,children:t})})}},3717:(e,t,n)=>{"use strict";n.d(t,{A:()=>v});var s=n(6540),o=n(53),c=n(6342),a=n(6058),r=n(4291),l=n(9532);const i={attributes:!0,characterData:!0,childList:!0,subtree:!0};function u(e,t){const[n,o]=(0,s.useState)(),c=(0,s.useCallback)((()=>{o(e.current?.closest("[role=tabpanel][hidden]"))}),[e,o]);(0,s.useEffect)((()=>{c()}),[c]),function(e,t,n){void 0===n&&(n=i);const o=(0,l._q)(t),c=(0,l.Be)(n);(0,s.useEffect)((()=>{const t=new MutationObserver(o);return e&&t.observe(e,c),()=>t.disconnect()}),[e,o,c])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),c())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}var d=n(8181);const m={codeLine:"codeLine_lJS_",codeLineNumber:"codeLineNumber_Tfdd",codeLineContent:"codeLineContent_feaV"};var p=n(4848);function b(e){let{line:t,classNames:n,showLineNumbers:s,getLineProps:c,getTokenProps:a}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const r=c({line:t,className:(0,o.A)(n,s&&m.codeLine)}),l=t.map(((e,t)=>(0,p.jsx)("span",{...a({token:e,key:t})},t)));return(0,p.jsxs)("span",{...r,children:[s?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)("span",{className:m.codeLineNumber}),(0,p.jsx)("span",{className:m.codeLineContent,children:l})]}):l,(0,p.jsx)("br",{})]})}var h=n(1312);function f(e){return(0,p.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,p.jsx)("path",{fill:"currentColor",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"})})}function g(e){return(0,p.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,p.jsx)("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"})})}const k={copyButtonCopied:"copyButtonCopied_obH4",copyButtonIcons:"copyButtonIcons_eSgA",copyButtonIcon:"copyButtonIcon_y97N",copyButtonSuccessIcon:"copyButtonSuccessIcon_LjdS"};function B(e){let{code:t,className:n}=e;const[c,a]=(0,s.useState)(!1),r=(0,s.useRef)(void 0),l=(0,s.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;if("string"!=typeof e)throw new TypeError(`Expected parameter \`text\` to be a \`string\`, got \`${typeof e}\`.`);const s=document.createElement("textarea"),o=document.activeElement;s.value=e,s.setAttribute("readonly",""),s.style.contain="strict",s.style.position="absolute",s.style.left="-9999px",s.style.fontSize="12pt";const c=document.getSelection(),a=c.rangeCount>0&&c.getRangeAt(0);n.append(s),s.select(),s.selectionStart=0,s.selectionEnd=e.length;let r=!1;try{r=document.execCommand("copy")}catch{}s.remove(),a&&(c.removeAllRanges(),c.addRange(a)),o&&o.focus()}(t),a(!0),r.current=window.setTimeout((()=>{a(!1)}),1e3)}),[t]);return(0,s.useEffect)((()=>()=>window.clearTimeout(r.current)),[]),(0,p.jsx)("button",{type:"button","aria-label":c?(0,h.T)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,h.T)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,h.T)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,o.A)("clean-btn",n,k.copyButton,c&&k.copyButtonCopied),onClick:l,children:(0,p.jsxs)("span",{className:k.copyButtonIcons,"aria-hidden":"true",children:[(0,p.jsx)(f,{className:k.copyButtonIcon}),(0,p.jsx)(g,{className:k.copyButtonSuccessIcon})]})})}function x(e){return(0,p.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,p.jsx)("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"})})}const j={wordWrapButtonIcon:"wordWrapButtonIcon_Bwma",wordWrapButtonEnabled:"wordWrapButtonEnabled_EoeP"};function y(e){let{className:t,onClick:n,isEnabled:s}=e;const c=(0,h.T)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return(0,p.jsx)("button",{type:"button",onClick:n,className:(0,o.A)("clean-btn",t,s&&j.wordWrapButtonEnabled),"aria-label":c,title:c,children:(0,p.jsx)(x,{className:j.wordWrapButtonIcon,"aria-hidden":"true"})})}var w=n(7795),N=n(7562);function v(e){let{children:t,className:n="",metastring:l,title:i,showLineNumbers:m,language:h}=e;const{prism:{defaultLanguage:f,magicComments:g}}=(0,c.p)(),k=function(e){return e?.toLowerCase()}(h??(0,r.Op)(n)??f),x=(0,a.A)(),j=function(){const[e,t]=(0,s.useState)(!1),[n,o]=(0,s.useState)(!1),c=(0,s.useRef)(null),a=(0,s.useCallback)((()=>{const n=c.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[c,e]),r=(0,s.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=c.current,n=e>t||c.current.querySelector("code").hasAttribute("style");o(n)}),[c]);return u(c,r),(0,s.useEffect)((()=>{r()}),[e,r]),(0,s.useEffect)((()=>(window.addEventListener("resize",r,{passive:!0}),()=>{window.removeEventListener("resize",r)})),[r]),{codeBlockRef:c,isEnabled:e,isCodeScrollable:n,toggle:a}}(),v=(0,r.wt)(l)||i,{lineClassNames:C,code:A}=(0,r.Li)(t,{metastring:l,language:k,magicComments:g}),L=m??(0,r._u)(l);return(0,p.jsxs)(w.A,{as:"div",className:(0,o.A)(n,k&&!n.includes(`language-${k}`)&&`language-${k}`),children:[v&&(0,p.jsx)("div",{className:N.A.codeBlockTitle,children:v}),(0,p.jsxs)("div",{className:N.A.codeBlockContent,children:[(0,p.jsx)(d.f4,{theme:x,code:A,language:k??"text",children:e=>{let{className:t,style:n,tokens:s,getLineProps:c,getTokenProps:a}=e;return(0,p.jsx)("pre",{tabIndex:0,ref:j.codeBlockRef,className:(0,o.A)(t,N.A.codeBlock,"thin-scrollbar"),style:n,children:(0,p.jsx)("code",{className:(0,o.A)(N.A.codeBlockLines,L&&N.A.codeBlockLinesWithNumbering),children:s.map(((e,t)=>(0,p.jsx)(b,{line:e,getLineProps:c,getTokenProps:a,classNames:C[t],showLineNumbers:L},t)))})})}}),(0,p.jsxs)("div",{className:N.A.buttonGroup,children:[(j.isEnabled||j.isCodeScrollable)&&(0,p.jsx)(y,{className:N.A.codeButton,onClick:()=>j.toggle(),isEnabled:j.isEnabled}),(0,p.jsx)(B,{className:N.A.codeButton,code:A})]})]})]})}},6058:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var s=n(5293),o=n(6342);function c(){const{prism:e}=(0,o.p)(),{colorMode:t}=(0,s.G)(),n=e.theme,c=e.darkTheme||n;return"dark"===t?c:n}},4291:(e,t,n)=>{"use strict";n.d(t,{Li:()=>m,M$:()=>p,Op:()=>d,_u:()=>u,wt:()=>i});var s=n(8426),o=n.n(s);const c=/title=(?["'])(?.*?)\1/,a=/\{(?<range>[\d,-]+)\}/,r={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"},lua:{start:"--",end:""},wasm:{start:"\\;\\;",end:""},tex:{start:"%",end:""}};function l(e,t){const n=e.map((e=>{const{start:n,end:s}=r[e];return`(?:${n}\\s*(${t.flatMap((e=>[e.line,e.block?.start,e.block?.end].filter(Boolean))).join("|")})\\s*${s})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function i(e){return e?.match(c)?.groups.title??""}function u(e){return Boolean(e?.includes("showLineNumbers"))}function d(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return t?.replace(/language-/,"")}function m(e,t){let n=e.replace(/\n$/,"");const{language:s,magicComments:c,metastring:i}=t;if(i&&a.test(i)){const e=i.match(a).groups.range;if(0===c.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${i}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=c[0].className,s=o()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(s),code:n}}if(void 0===s)return{lineClassNames:{},code:n};const u=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return l(["js","jsBlock"],t);case"jsx":case"tsx":return l(["js","jsBlock","jsx"],t);case"html":return l(["js","jsBlock","html"],t);case"python":case"py":case"bash":return l(["bash"],t);case"markdown":case"md":return l(["html","jsx","bash"],t);case"tex":case"latex":case"matlab":return l(["tex"],t);case"lua":case"haskell":case"sql":return l(["lua"],t);case"wasm":return l(["wasm"],t);default:return l(Object.keys(r).filter((e=>!["lua","wasm","tex","latex","matlab"].includes(e))),t)}}(s,c),d=n.split("\n"),m=Object.fromEntries(c.map((e=>[e.className,{start:0,range:""}]))),p=Object.fromEntries(c.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),b=Object.fromEntries(c.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),h=Object.fromEntries(c.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let o=0;o<d.length;){const e=d[o].match(u);if(!e){o+=1;continue}const t=e.slice(1).find((e=>void 0!==e));p[t]?m[p[t]].range+=`${o},`:b[t]?m[b[t]].start=o:h[t]&&(m[h[t]].range+=`${m[h[t]].start}-${o-1},`),d.splice(o,1)}n=d.join("\n");const f={};return Object.entries(m).forEach((e=>{let[t,{range:n}]=e;o()(n).forEach((e=>{f[e]??=[],f[e].push(t)}))})),{lineClassNames:f,code:n}}function p(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[s,o]=e;const c=t[s];c&&"string"==typeof o&&(n[c]=o)})),n}},7562:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});const s={codeBlockContent:"codeBlockContent_biex",codeBlockTitle:"codeBlockTitle_Ktv7",codeBlock:"codeBlock_bY9V",codeBlockStandalone:"codeBlockStandalone_MEMb",codeBlockLines:"codeBlockLines_e6Vv",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_o6Pm",buttonGroup:"buttonGroup__atx"}},8426:(e,t)=>{function n(e){let t,n=[];for(let s of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(s))n.push(parseInt(s,10));else if(t=s.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,s,o,c]=t;if(s&&c){s=parseInt(s),c=parseInt(c);const e=s<c?1:-1;"-"!==o&&".."!==o&&"\u2025"!==o||(c+=e);for(let t=s;t!==c;t+=e)n.push(t)}}return n}t.default=n,e.exports=n}}]); \ No newline at end of file diff --git a/assets/js/77a07764.c63bd577.js b/assets/js/77a07764.c63bd577.js deleted file mode 100644 index 0e4ecd36a..000000000 --- a/assets/js/77a07764.c63bd577.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4446],{2269:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>o,contentTitle:()=>c,default:()=>h,frontMatter:()=>d,metadata:()=>i,toc:()=>l});var s=r(4848),t=r(8453);const d={id:"CommandError",title:"Namespace: CommandError",sidebar_label:"CommandError",sidebar_position:0,custom_edit_url:null},c=void 0,i={id:"api/namespaces/CommandError",title:"Namespace: CommandError",description:"Interfaces",source:"@site/docs/api/namespaces/CommandError.md",sourceDirName:"api/namespaces",slug:"/api/namespaces/CommandError",permalink:"/docs/api/namespaces/CommandError",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CommandError",title:"Namespace: CommandError",sidebar_label:"CommandError",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Exports",permalink:"/docs/api/modules"},next:{title:"Presence",permalink:"/docs/api/namespaces/Presence"}},o={},l=[{value:"Interfaces",id:"interfaces",level:2},{value:"Functions",id:"functions",level:2},{value:"of",id:"of",level:3},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"interfaces",children:"Interfaces"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/api/interfaces/CommandError.Response",children:"Response"})}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"functions",children:"Functions"}),"\n",(0,s.jsx)(n.h3,{id:"of",children:"of"}),"\n",(0,s.jsxs)(n.p,{children:["\u25b8 ",(0,s.jsx)(n.strong,{children:"of"}),"(): ",(0,s.jsx)(n.code,{children:"Object"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"Object"})}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"log"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:["<T>(",(0,s.jsx)(n.code,{children:"type"}),": keyof ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:(0,s.jsx)(n.code,{children:"Logging"})}),"<",(0,s.jsx)(n.code,{children:"unknown"}),">, ",(0,s.jsx)(n.code,{children:"message"}),": ",(0,s.jsx)(n.code,{children:"T"}),") => ",(0,s.jsx)(n.code,{children:"Record"}),"<",(0,s.jsx)(n.code,{children:"PropertyKey"}),", ",(0,s.jsx)(n.code,{children:"unknown"}),">"]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"reply"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:["(",(0,s.jsx)(n.code,{children:"bodyContent"}),": ",(0,s.jsx)(n.code,{children:"ReplyOptions"}),") => ",(0,s.jsx)(n.code,{children:"Record"}),"<",(0,s.jsx)(n.code,{children:"PropertyKey"}),", ",(0,s.jsx)(n.code,{children:"unknown"}),">"]})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"status"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:["(",(0,s.jsx)(n.code,{children:"p"}),": ",(0,s.jsx)(n.code,{children:'"fail"'})," | ",(0,s.jsx)(n.code,{children:'"continue"'}),") => ",(0,s.jsx)(n.code,{children:"Record"}),"<",(0,s.jsx)(n.code,{children:"PropertyKey"}),", ",(0,s.jsx)(n.code,{children:"unknown"}),">"]})]})]})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/504cdee/src/core/structures/command-error.ts#L10",children:"src/core/structures/command-error.ts:10"})})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>c,x:()=>i});var s=r(6540);const t={},d=s.createContext(t);function c(e){const n=s.useContext(d);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:c(e.components),s.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/79e7cc44.ec89a63b.js b/assets/js/79e7cc44.ec89a63b.js deleted file mode 100644 index 8b5f52ad3..000000000 --- a/assets/js/79e7cc44.ec89a63b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3617],{7213:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>o,frontMatter:()=>d,metadata:()=>t,toc:()=>h});var r=i(4848),l=i(8453);const d={id:"SernEventPlugin",title:"Interface: SernEventPlugin<T>",sidebar_label:"SernEventPlugin",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/SernEventPlugin",title:"Interface: SernEventPlugin<T>",description:"Type parameters",source:"@site/docs/api/interfaces/SernEventPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernEventPlugin",permalink:"/docs/api/interfaces/SernEventPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernEventPlugin",title:"Interface: SernEventPlugin<T>",sidebar_label:"SernEventPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernEventCommand",permalink:"/docs/api/interfaces/SernEventCommand"},next:{title:"SernEventsMapping",permalink:"/docs/api/interfaces/SernEventsMapping"}},c={},h=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.a,{href:"/docs/api/modules#serneventsmapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})})," = keyof ",(0,r.jsx)(n.a,{href:"/docs/api/modules#serneventsmapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})})]})]})})]}),"\n",(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"SernEventPlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/modules#serneventsmapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})}),"[",(0,r.jsx)(n.code,{children:"T"}),"], ",(0,r.jsx)(n.code,{children:"controller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"args"}),", ",(0,r.jsx)(n.code,{children:"controller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.a,{href:"/docs/api/modules#serneventsmapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})}),"[",(0,r.jsx)(n.code,{children:"T"}),"]"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L91",children:"src/handler/plugins/plugin.ts:91"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"T"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L89",children:"src/handler/plugins/plugin.ts:89"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,r.jsx)(n.code,{children:"Event"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L90",children:"src/handler/plugins/plugin.ts:90"})})]})}function o(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var r=i(6540);const l={},d=r.createContext(l);function s(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:s(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7b758ddf.bebefb7e.js b/assets/js/7b758ddf.bebefb7e.js deleted file mode 100644 index f0b915e3f..000000000 --- a/assets/js/7b758ddf.bebefb7e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5938],{6942:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>r,contentTitle:()=>a,default:()=>d,frontMatter:()=>s,metadata:()=>c,toc:()=>l});var o=n(4848),i=n(8453);const s={sidebar_position:7},a="Autocomplete",c={id:"guide/walkthrough/autocomplete",title:"Autocomplete",description:"Autocomplete is a special interaction where it can happen on multiple options on a single command. We've handled this with a simple",source:"@site/docs/guide/walkthrough/autocomplete.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/autocomplete",permalink:"/docs/guide/walkthrough/autocomplete",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/autocomplete.md",tags:[],version:"current",sidebarPosition:7,frontMatter:{sidebar_position:7},sidebar:"tutorialSidebar",previous:{title:"Services",permalink:"/docs/guide/walkthrough/services"},next:{title:"Dependency Injection",permalink:"/docs/guide/walkthrough/dependency-injection"}},r={},l=[{value:"Example",id:"example",level:2}];function p(e){const t={code:"code",h1:"h1",h2:"h2",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.h1,{id:"autocomplete",children:"Autocomplete"}),"\n",(0,o.jsx)(t.p,{children:"Autocomplete is a special interaction where it can happen on multiple options on a single command. We've handled this with a simple\ntree search algorithm in a nested options tree."}),"\n",(0,o.jsx)(t.h2,{id:"example",children:"Example"}),"\n",(0,o.jsx)(t.pre,{children:(0,o.jsx)(t.code,{className:"language-ts",metastring:'title="src/commands/cheese.ts" {11-18}',children:"export default commandModule({ \n type: CommandType.Slash,\n description: \"show me cheese\",\n options: [\n { \n name: \"list\",\n\t type: ApplicationCommandOptionType.String,\n\t description: \"pick a cheese to show\",\n\t required: true,\n\t autocomplete: true,\n\t command: {\n onEvent: [],\n execute: (ctx) => {\n const focus = ctx.options.getFocused();\n ctx.respond(['gouda', 'parmesan', 'harvati']\n .map((cheese) => ({ name: cheese, value: cheese })));\n\t }\n\t}\n\t}\n ],\n execute: (ctx, [, args]) => {\n const cheese = args.getString('list', true); \n ctx.reply('selected cheese');\n }\n})\n\n\n"})}),"\n",(0,o.jsx)(t.p,{children:"Sern will handle autocomplete interactions at arbitrary depths and subcommand levels."})]})}function d(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(p,{...e})}):p(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>a,x:()=>c});var o=n(6540);const i={},s=o.createContext(i);function a(e){const t=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),o.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7c2ff145.d5069700.js b/assets/js/7c2ff145.d5069700.js deleted file mode 100644 index 50e8e0d39..000000000 --- a/assets/js/7c2ff145.d5069700.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9143],{2945:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-blog","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/7cd974c8.f09c829b.js b/assets/js/7cd974c8.f09c829b.js deleted file mode 100644 index fc2c66257..000000000 --- a/assets/js/7cd974c8.f09c829b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8976],{9905:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>s,metadata:()=>l,toc:()=>o});var r=i(4848),d=i(8453);const s={id:"ContextMenuMsg",title:"Interface: ContextMenuMsg",sidebar_label:"ContextMenuMsg",sidebar_position:0,custom_edit_url:null},t=void 0,l={id:"api/interfaces/ContextMenuMsg",title:"Interface: ContextMenuMsg",description:"Hierarchy",source:"@site/docs/api/interfaces/ContextMenuMsg.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ContextMenuMsg",permalink:"/docs/api/interfaces/ContextMenuMsg",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ContextMenuMsg",title:"Interface: ContextMenuMsg",sidebar_label:"ContextMenuMsg",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CommandPlugin",permalink:"/docs/api/interfaces/CommandPlugin"},next:{title:"ContextMenuUser",permalink:"/docs/api/interfaces/ContextMenuUser"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Module"})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"ContextMenuMsg"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.description"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"ctx"}),": ",(0,r.jsx)(n.code,{children:"MessageContextMenuCommandInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">) => ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"ctx"}),"): ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"ctx"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"MessageContextMenuCommandInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"unknown"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.execute"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L60",children:"src/types/core-modules.ts:60"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.name"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"onEvent"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,r.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"plugins"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,r.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/CommandType#ctxmsg",children:(0,r.jsx)(n.code,{children:"CtxMsg"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.type"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L59",children:"src/types/core-modules.ts:59"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>l});var r=i(6540);const d={},s=r.createContext(d);function t(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:t(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7e205c4a.468206c4.js b/assets/js/7e205c4a.468206c4.js deleted file mode 100644 index 2a1bbbd2e..000000000 --- a/assets/js/7e205c4a.468206c4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2212],{2868:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>x,frontMatter:()=>i,metadata:()=>d,toc:()=>h});var r=t(4848),s=t(8453);const i={id:"SernEmitter",title:"Class: SernEmitter",sidebar_label:"SernEmitter",sidebar_position:0,custom_edit_url:null},l=void 0,d={id:"api/classes/SernEmitter",title:"Class: SernEmitter",description:"Since",source:"@site/docs/api/classes/SernEmitter.md",sourceDirName:"api/classes",slug:"/api/classes/SernEmitter",permalink:"/docs/api/classes/SernEmitter",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernEmitter",title:"Class: SernEmitter",sidebar_label:"SernEmitter",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ModuleStore",permalink:"/docs/api/classes/ModuleStore"},next:{title:"AutocompleteCommand",permalink:"/docs/api/interfaces/AutocompleteCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Returns",id:"returns",level:4},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"Properties",id:"properties",level:2},{value:"captureRejectionSymbol",id:"capturerejectionsymbol",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"captureRejections",id:"capturerejections",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"defaultMaxListeners",id:"defaultmaxlisteners",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"errorMonitor",id:"errormonitor",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"Methods",id:"methods",level:2},{value:"addListener",id:"addlistener",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Inherited from",id:"inherited-from-4",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"emit",id:"emit",level:3},{value:"Type parameters",id:"type-parameters",level:4},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"eventNames",id:"eventnames",level:3},{value:"Returns",id:"returns-3",level:4},{value:"Inherited from",id:"inherited-from-5",level:4},{value:"Defined in",id:"defined-in-7",level:4},{value:"getMaxListeners",id:"getmaxlisteners",level:3},{value:"Returns",id:"returns-4",level:4},{value:"Inherited from",id:"inherited-from-6",level:4},{value:"Defined in",id:"defined-in-8",level:4},{value:"listenerCount",id:"listenercount",level:3},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-5",level:4},{value:"Inherited from",id:"inherited-from-7",level:4},{value:"Defined in",id:"defined-in-9",level:4},{value:"listeners",id:"listeners",level:3},{value:"Parameters",id:"parameters-3",level:4},{value:"Returns",id:"returns-6",level:4},{value:"Inherited from",id:"inherited-from-8",level:4},{value:"Defined in",id:"defined-in-10",level:4},{value:"off",id:"off",level:3},{value:"Parameters",id:"parameters-4",level:4},{value:"Returns",id:"returns-7",level:4},{value:"Inherited from",id:"inherited-from-9",level:4},{value:"Defined in",id:"defined-in-11",level:4},{value:"on",id:"on",level:3},{value:"Type parameters",id:"type-parameters-1",level:4},{value:"Parameters",id:"parameters-5",level:4},{value:"Returns",id:"returns-8",level:4},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-12",level:4},{value:"once",id:"once",level:3},{value:"Type parameters",id:"type-parameters-2",level:4},{value:"Parameters",id:"parameters-6",level:4},{value:"Returns",id:"returns-9",level:4},{value:"Overrides",id:"overrides-3",level:4},{value:"Defined in",id:"defined-in-13",level:4},{value:"prependListener",id:"prependlistener",level:3},{value:"Parameters",id:"parameters-7",level:4},{value:"Returns",id:"returns-10",level:4},{value:"Inherited from",id:"inherited-from-10",level:4},{value:"Defined in",id:"defined-in-14",level:4},{value:"prependOnceListener",id:"prependoncelistener",level:3},{value:"Parameters",id:"parameters-8",level:4},{value:"Returns",id:"returns-11",level:4},{value:"Inherited from",id:"inherited-from-11",level:4},{value:"Defined in",id:"defined-in-15",level:4},{value:"rawListeners",id:"rawlisteners",level:3},{value:"Parameters",id:"parameters-9",level:4},{value:"Returns",id:"returns-12",level:4},{value:"Inherited from",id:"inherited-from-12",level:4},{value:"Defined in",id:"defined-in-16",level:4},{value:"removeAllListeners",id:"removealllisteners",level:3},{value:"Parameters",id:"parameters-10",level:4},{value:"Returns",id:"returns-13",level:4},{value:"Inherited from",id:"inherited-from-13",level:4},{value:"Defined in",id:"defined-in-17",level:4},{value:"removeListener",id:"removelistener",level:3},{value:"Parameters",id:"parameters-11",level:4},{value:"Returns",id:"returns-14",level:4},{value:"Inherited from",id:"inherited-from-14",level:4},{value:"Defined in",id:"defined-in-18",level:4},{value:"setMaxListeners",id:"setmaxlisteners",level:3},{value:"Parameters",id:"parameters-12",level:4},{value:"Returns",id:"returns-15",level:4},{value:"Inherited from",id:"inherited-from-15",level:4},{value:"Defined in",id:"defined-in-19",level:4},{value:"failure",id:"failure",level:3},{value:"Parameters",id:"parameters-13",level:4},{value:"Returns",id:"returns-16",level:4},{value:"Defined in",id:"defined-in-20",level:4},{value:"getEventListeners",id:"geteventlisteners",level:3},{value:"Parameters",id:"parameters-14",level:4},{value:"Returns",id:"returns-17",level:4},{value:"Inherited from",id:"inherited-from-16",level:4},{value:"Defined in",id:"defined-in-21",level:4},{value:"getMaxListeners",id:"getmaxlisteners-1",level:3},{value:"Parameters",id:"parameters-15",level:4},{value:"Returns",id:"returns-18",level:4},{value:"Inherited from",id:"inherited-from-17",level:4},{value:"Defined in",id:"defined-in-22",level:4},{value:"listenerCount",id:"listenercount-1",level:3},{value:"Parameters",id:"parameters-16",level:4},{value:"Returns",id:"returns-19",level:4},{value:"Inherited from",id:"inherited-from-18",level:4},{value:"Defined in",id:"defined-in-23",level:4},{value:"on",id:"on-1",level:3},{value:"Parameters",id:"parameters-17",level:4},{value:"Returns",id:"returns-20",level:4},{value:"Inherited from",id:"inherited-from-19",level:4},{value:"Defined in",id:"defined-in-24",level:4},{value:"Type parameters",id:"type-parameters-3",level:4},{value:"Parameters",id:"parameters-18",level:4},{value:"Returns",id:"returns-21",level:4},{value:"Inherited from",id:"inherited-from-20",level:4},{value:"Defined in",id:"defined-in-25",level:4},{value:"once",id:"once-1",level:3},{value:"Parameters",id:"parameters-19",level:4},{value:"Returns",id:"returns-22",level:4},{value:"Inherited from",id:"inherited-from-21",level:4},{value:"Defined in",id:"defined-in-26",level:4},{value:"Parameters",id:"parameters-20",level:4},{value:"Returns",id:"returns-23",level:4},{value:"Inherited from",id:"inherited-from-22",level:4},{value:"Defined in",id:"defined-in-27",level:4},{value:"Type parameters",id:"type-parameters-4",level:4},{value:"Parameters",id:"parameters-21",level:4},{value:"Returns",id:"returns-24",level:4},{value:"Inherited from",id:"inherited-from-23",level:4},{value:"Defined in",id:"defined-in-28",level:4},{value:"payload",id:"payload",level:3},{value:"Type parameters",id:"type-parameters-5",level:4},{value:"Parameters",id:"parameters-22",level:4},{value:"Returns",id:"returns-25",level:4},{value:"Defined in",id:"defined-in-29",level:4},{value:"setMaxListeners",id:"setmaxlisteners-1",level:3},{value:"Parameters",id:"parameters-23",level:4},{value:"Returns",id:"returns-26",level:4},{value:"Inherited from",id:"inherited-from-24",level:4},{value:"Defined in",id:"defined-in-30",level:4},{value:"success",id:"success",level:3},{value:"Parameters",id:"parameters-24",level:4},{value:"Returns",id:"returns-27",level:4},{value:"Defined in",id:"defined-in-31",level:4},{value:"warning",id:"warning",level:3},{value:"Parameters",id:"parameters-25",level:4},{value:"Returns",id:"returns-28",level:4},{value:"Defined in",id:"defined-in-32",level:4}];function o(e){const n={a:"a",code:"code",em:"em",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"1.0.0"}),"\n",(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"EventEmitter"})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"constructors",children:"Constructors"}),"\n",(0,r.jsx)(n.h3,{id:"constructor",children:"constructor"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"new SernEmitter"}),"(): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.constructor"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L10",children:"src/core/structures/sern-emitter.ts:10"})}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"capturerejectionsymbol",children:"captureRejectionSymbol"}),"\n",(0,r.jsxs)(n.p,{children:["\u25aa ",(0,r.jsx)(n.code,{children:"Static"})," ",(0,r.jsx)(n.code,{children:"Readonly"})," ",(0,r.jsx)(n.strong,{children:"captureRejectionSymbol"}),": typeof ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter#capturerejectionsymbol",children:(0,r.jsx)(n.code,{children:"captureRejectionSymbol"})})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.captureRejectionSymbol"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:357"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"capturerejections",children:"captureRejections"}),"\n",(0,r.jsxs)(n.p,{children:["\u25aa ",(0,r.jsx)(n.code,{children:"Static"})," ",(0,r.jsx)(n.strong,{children:"captureRejections"}),": ",(0,r.jsx)(n.code,{children:"boolean"})]}),"\n",(0,r.jsx)(n.p,{children:"Sets or gets the default captureRejection value for all emitters."}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.captureRejections"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:362"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"defaultmaxlisteners",children:"defaultMaxListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25aa ",(0,r.jsx)(n.code,{children:"Static"})," ",(0,r.jsx)(n.strong,{children:"defaultMaxListeners"}),": ",(0,r.jsx)(n.code,{children:"number"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.defaultMaxListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:363"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"errormonitor",children:"errorMonitor"}),"\n",(0,r.jsxs)(n.p,{children:["\u25aa ",(0,r.jsx)(n.code,{children:"Static"})," ",(0,r.jsx)(n.code,{children:"Readonly"})," ",(0,r.jsx)(n.strong,{children:"errorMonitor"}),": typeof ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter#errormonitor",children:(0,r.jsx)(n.code,{children:"errorMonitor"})})]}),"\n",(0,r.jsxs)(n.p,{children:["This symbol shall be used to install a listener for only monitoring ",(0,r.jsx)(n.code,{children:"'error'"}),"\nevents. Listeners installed using this symbol are called before the regular\n",(0,r.jsx)(n.code,{children:"'error'"})," listeners are called."]}),"\n",(0,r.jsxs)(n.p,{children:["Installing a listener using this symbol does not change the behavior once an\n",(0,r.jsx)(n.code,{children:"'error'"})," event is emitted, therefore the process will still crash if no\nregular ",(0,r.jsx)(n.code,{children:"'error'"})," listener is installed."]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.errorMonitor"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:356"}),"\n",(0,r.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,r.jsx)(n.h3,{id:"addlistener",children:"addListener"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"addListener"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["Alias for ",(0,r.jsx)(n.code,{children:"emitter.on(eventName, listener)"}),"."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"any"}),"[]) => ",(0,r.jsx)(n.code,{children:"void"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v0.1.26"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-4",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.addListener"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:383"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"emit",children:"emit"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"emit"}),"<",(0,r.jsx)(n.code,{children:"T"}),">(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"...args"}),"): ",(0,r.jsx)(n.code,{children:"boolean"})]}),"\n",(0,r.jsx)(n.p,{children:"Listening to sern events with on. This event stays on until a crash or a normal exit"}),"\n",(0,r.jsx)(n.h4,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"}})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"...args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})}),"[",(0,r.jsx)(n.code,{children:"T"}),"]"]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"the arguments for emitting the eventName"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"boolean"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.emit"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L40",children:"src/core/structures/sern-emitter.ts:40"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"eventnames",children:"eventNames"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"eventNames"}),"(): (",(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"}),")[]"]}),"\n",(0,r.jsxs)(n.p,{children:["Returns an array listing the events for which the emitter has registered\nlisteners. The values in the array are strings or ",(0,r.jsx)(n.code,{children:"Symbol"}),"s."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const EventEmitter = require('events');\nconst myEE = new EventEmitter();\nmyEE.on('foo', () => {});\nmyEE.on('bar', () => {});\n\nconst sym = Symbol('symbol');\nmyEE.on(sym, () => {});\n\nconsole.log(myEE.eventNames());\n// Prints: [ 'foo', 'bar', Symbol(symbol) ]\n"})}),"\n",(0,r.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:["(",(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"}),")[]"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v6.0.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-5",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.eventNames"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:702"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"getmaxlisteners",children:"getMaxListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"getMaxListeners"}),"(): ",(0,r.jsx)(n.code,{children:"number"})]}),"\n",(0,r.jsxs)(n.p,{children:["Returns the current max listener value for the ",(0,r.jsx)(n.code,{children:"EventEmitter"})," which is either\nset by ",(0,r.jsx)(n.code,{children:"emitter.setMaxListeners(n)"})," or defaults to ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter#defaultmaxlisteners",children:"defaultMaxListeners"}),"."]}),"\n",(0,r.jsx)(n.h4,{id:"returns-4",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"number"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v1.0.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-6",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.getMaxListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-8",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:555"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"listenercount",children:"listenerCount"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"listenerCount"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener?"}),"): ",(0,r.jsx)(n.code,{children:"number"})]}),"\n",(0,r.jsxs)(n.p,{children:["Returns the number of listeners listening to the event named ",(0,r.jsx)(n.code,{children:"eventName"}),"."]}),"\n",(0,r.jsxs)(n.p,{children:["If ",(0,r.jsx)(n.code,{children:"listener"})," is provided, it will return how many times the listener\nis found in the list of the listeners of the event."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The name of the event being listened for"})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Function"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The event handler function"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-5",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"number"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v3.2.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-7",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.listenerCount"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-9",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:649"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"listeners",children:"listeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"listeners"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),"): ",(0,r.jsx)(n.code,{children:"Function"}),"[]"]}),"\n",(0,r.jsxs)(n.p,{children:["Returns a copy of the array of listeners for the event named ",(0,r.jsx)(n.code,{children:"eventName"}),"."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"server.on('connection', (stream) => {\n console.log('someone connected!');\n});\nconsole.log(util.inspect(server.listeners('connection')));\n// Prints: [ [Function] ]\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-3",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-6",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Function"}),"[]"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v0.1.26"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-8",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.listeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-10",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:568"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"off",children:"off"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"off"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["Alias for ",(0,r.jsx)(n.code,{children:"emitter.removeListener()"}),"."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-4",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"any"}),"[]) => ",(0,r.jsx)(n.code,{children:"void"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-7",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v10.0.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-9",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.off"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-11",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:528"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"on",children:"on"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"on"}),"<",(0,r.jsx)(n.code,{children:"T"}),">(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsx)(n.p,{children:"Listening to sern events with on. This event stays on until a crash or a normal exit"}),"\n",(0,r.jsx)(n.h4,{id:"type-parameters-1",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-5",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"}})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})}),"[",(0,r.jsx)(n.code,{children:"T"}),"][]) => ",(0,r.jsx)(n.code,{children:"void"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"what to do with the data"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-8",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.on"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-12",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L18",children:"src/core/structures/sern-emitter.ts:18"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"once",children:"once"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"once"}),"<",(0,r.jsx)(n.code,{children:"T"}),">(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsx)(n.p,{children:"Listening to sern events with on. This event stays on until a crash or a normal exit"}),"\n",(0,r.jsx)(n.h4,{id:"type-parameters-2",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-6",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"}})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,r.jsx)(n.code,{children:"SernEventsMapping"})}),"[",(0,r.jsx)(n.code,{children:"T"}),"][]) => ",(0,r.jsx)(n.code,{children:"void"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"what to do with the data"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-9",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.h4,{id:"overrides-3",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.once"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-13",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L29",children:"src/core/structures/sern-emitter.ts:29"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"prependlistener",children:"prependListener"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"prependListener"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["Adds the ",(0,r.jsx)(n.code,{children:"listener"})," function to the ",(0,r.jsx)(n.em,{children:"beginning"})," of the listeners array for the\nevent named ",(0,r.jsx)(n.code,{children:"eventName"}),". No checks are made to see if the ",(0,r.jsx)(n.code,{children:"listener"})," has\nalready been added. Multiple calls passing the same combination of ",(0,r.jsx)(n.code,{children:"eventName"}),"and ",(0,r.jsx)(n.code,{children:"listener"})," will result in the ",(0,r.jsx)(n.code,{children:"listener"})," being added, and called, multiple\ntimes."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"server.prependListener('connection', (stream) => {\n console.log('someone connected!');\n});\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Returns a reference to the ",(0,r.jsx)(n.code,{children:"EventEmitter"}),", so that calls can be chained."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-7",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The name of the event."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"any"}),"[]) => ",(0,r.jsx)(n.code,{children:"void"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The callback function"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-10",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v6.0.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-10",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.prependListener"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-14",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:667"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"prependoncelistener",children:"prependOnceListener"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"prependOnceListener"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["Adds a ",(0,r.jsx)(n.strong,{children:"one-time"}),(0,r.jsx)(n.code,{children:"listener"})," function for the event named ",(0,r.jsx)(n.code,{children:"eventName"})," to the ",(0,r.jsx)(n.em,{children:"beginning"})," of the listeners array. The next time ",(0,r.jsx)(n.code,{children:"eventName"})," is triggered, this\nlistener is removed, and then invoked."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"server.prependOnceListener('connection', (stream) => {\n console.log('Ah, we have our first user!');\n});\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Returns a reference to the ",(0,r.jsx)(n.code,{children:"EventEmitter"}),", so that calls can be chained."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-8",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The name of the event."})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"any"}),"[]) => ",(0,r.jsx)(n.code,{children:"void"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The callback function"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-11",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v6.0.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-11",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.prependOnceListener"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-15",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:683"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"rawlisteners",children:"rawListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"rawListeners"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),"): ",(0,r.jsx)(n.code,{children:"Function"}),"[]"]}),"\n",(0,r.jsxs)(n.p,{children:["Returns a copy of the array of listeners for the event named ",(0,r.jsx)(n.code,{children:"eventName"}),",\nincluding any wrappers (such as those created by ",(0,r.jsx)(n.code,{children:".once()"}),")."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const emitter = new EventEmitter();\nemitter.once('log', () => console.log('log once'));\n\n// Returns a new Array with a function `onceWrapper` which has a property\n// `listener` which contains the original listener bound above\nconst listeners = emitter.rawListeners('log');\nconst logFnWrapper = listeners[0];\n\n// Logs \"log once\" to the console and does not unbind the `once` event\nlogFnWrapper.listener();\n\n// Logs \"log once\" to the console and removes the listener\nlogFnWrapper();\n\nemitter.on('log', () => console.log('log persistently'));\n// Will return a new Array with a single function bound by `.on()` above\nconst newListeners = emitter.rawListeners('log');\n\n// Logs \"log persistently\" twice\nnewListeners[0]();\nemitter.emit('log');\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-9",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-12",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Function"}),"[]"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v9.4.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-12",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.rawListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-16",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:598"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"removealllisteners",children:"removeAllListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"removeAllListeners"}),"(",(0,r.jsx)(n.code,{children:"event?"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["Removes all listeners, or those of the specified ",(0,r.jsx)(n.code,{children:"eventName"}),"."]}),"\n",(0,r.jsxs)(n.p,{children:["It is bad practice to remove listeners added elsewhere in the code,\nparticularly when the ",(0,r.jsx)(n.code,{children:"EventEmitter"})," instance was created by some other\ncomponent or module (e.g. sockets or file streams)."]}),"\n",(0,r.jsxs)(n.p,{children:["Returns a reference to the ",(0,r.jsx)(n.code,{children:"EventEmitter"}),", so that calls can be chained."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-10",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"event?"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-13",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v0.1.26"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-13",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.removeAllListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-17",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:539"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"removelistener",children:"removeListener"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"removeListener"}),"(",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"listener"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["Removes the specified ",(0,r.jsx)(n.code,{children:"listener"})," from the listener array for the event named",(0,r.jsx)(n.code,{children:"eventName"}),"."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const callback = (stream) => {\n console.log('someone connected!');\n};\nserver.on('connection', callback);\n// ...\nserver.removeListener('connection', callback);\n"})}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"removeListener()"})," will remove, at most, one instance of a listener from the\nlistener array. If any single listener has been added multiple times to the\nlistener array for the specified ",(0,r.jsx)(n.code,{children:"eventName"}),", then ",(0,r.jsx)(n.code,{children:"removeListener()"})," must be\ncalled multiple times to remove each instance."]}),"\n",(0,r.jsxs)(n.p,{children:["Once an event is emitted, all listeners attached to it at the\ntime of emitting are called in order. This implies that any",(0,r.jsx)(n.code,{children:"removeListener()"})," or ",(0,r.jsx)(n.code,{children:"removeAllListeners()"})," calls ",(0,r.jsx)(n.em,{children:"after"})," emitting and ",(0,r.jsx)(n.em,{children:"before"})," the last listener finishes execution\nwill not remove them from",(0,r.jsx)(n.code,{children:"emit()"})," in progress. Subsequent events behave as expected."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const myEmitter = new MyEmitter();\n\nconst callbackA = () => {\n console.log('A');\n myEmitter.removeListener('event', callbackB);\n};\n\nconst callbackB = () => {\n console.log('B');\n};\n\nmyEmitter.on('event', callbackA);\n\nmyEmitter.on('event', callbackB);\n\n// callbackA removes listener callbackB but it will still be called.\n// Internal listener array at time of emit [callbackA, callbackB]\nmyEmitter.emit('event');\n// Prints:\n// A\n// B\n\n// callbackB is now removed.\n// Internal listener array [callbackA]\nmyEmitter.emit('event');\n// Prints:\n// A\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Because listeners are managed using an internal array, calling this will\nchange the position indices of any listener registered ",(0,r.jsx)(n.em,{children:"after"})," the listener\nbeing removed. This will not impact the order in which listeners are called,\nbut it means that any copies of the listener array as returned by\nthe ",(0,r.jsx)(n.code,{children:"emitter.listeners()"})," method will need to be recreated."]}),"\n",(0,r.jsxs)(n.p,{children:["When a single function has been added as a handler multiple times for a single\nevent (as in the example below), ",(0,r.jsx)(n.code,{children:"removeListener()"})," will remove the most\nrecently added instance. In the example the ",(0,r.jsx)(n.code,{children:"once('ping')"}),"listener is removed:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const ee = new EventEmitter();\n\nfunction pong() {\n console.log('pong');\n}\n\nee.on('ping', pong);\nee.once('ping', pong);\nee.removeListener('ping', pong);\n\nee.emit('ping');\nee.emit('ping');\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Returns a reference to the ",(0,r.jsx)(n.code,{children:"EventEmitter"}),", so that calls can be chained."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-11",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"listener"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"any"}),"[]) => ",(0,r.jsx)(n.code,{children:"void"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-14",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v0.1.26"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-14",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.removeListener"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-18",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:523"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"setmaxlisteners",children:"setMaxListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"setMaxListeners"}),"(",(0,r.jsx)(n.code,{children:"n"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})]}),"\n",(0,r.jsxs)(n.p,{children:["By default ",(0,r.jsx)(n.code,{children:"EventEmitter"}),"s will print a warning if more than ",(0,r.jsx)(n.code,{children:"10"})," listeners are\nadded for a particular event. This is a useful default that helps finding\nmemory leaks. The ",(0,r.jsx)(n.code,{children:"emitter.setMaxListeners()"})," method allows the limit to be\nmodified for this specific ",(0,r.jsx)(n.code,{children:"EventEmitter"})," instance. The value can be set to",(0,r.jsx)(n.code,{children:"Infinity"})," (or ",(0,r.jsx)(n.code,{children:"0"}),") to indicate an unlimited number of listeners."]}),"\n",(0,r.jsxs)(n.p,{children:["Returns a reference to the ",(0,r.jsx)(n.code,{children:"EventEmitter"}),", so that calls can be chained."]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-12",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"n"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"number"})})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-15",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/classes/SernEmitter",children:(0,r.jsx)(n.code,{children:"SernEmitter"})})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v0.3.5"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-15",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.setMaxListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-19",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:549"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"failure",children:"failure"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"failure"}),"(",(0,r.jsx)(n.code,{children:"module?"}),", ",(0,r.jsx)(n.code,{children:"reason?"}),"): ",(0,r.jsx)(n.code,{children:"Object"})]}),"\n",(0,r.jsx)(n.p,{children:"Creates a compliant SernEmitter failure payload"}),"\n",(0,r.jsx)(n.h4,{id:"parameters-13",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"module?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Module"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"reason?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"unknown"})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-16",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Object"})}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"module?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"AnyModule"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"reason"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"Error"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"type"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/enums/PayloadType#failure",children:(0,r.jsx)(n.code,{children:"Failure"})})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-20",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L59",children:"src/core/structures/sern-emitter.ts:59"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"geteventlisteners",children:"getEventListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"getEventListeners"}),"(",(0,r.jsx)(n.code,{children:"emitter"}),", ",(0,r.jsx)(n.code,{children:"name"}),"): ",(0,r.jsx)(n.code,{children:"Function"}),"[]"]}),"\n",(0,r.jsxs)(n.p,{children:["Returns a copy of the array of listeners for the event named ",(0,r.jsx)(n.code,{children:"eventName"}),"."]}),"\n",(0,r.jsxs)(n.p,{children:["For ",(0,r.jsx)(n.code,{children:"EventEmitter"}),"s this behaves exactly the same as calling ",(0,r.jsx)(n.code,{children:".listeners"})," on\nthe emitter."]}),"\n",(0,r.jsxs)(n.p,{children:["For ",(0,r.jsx)(n.code,{children:"EventTarget"}),"s this is the only way to get the event listeners for the\nevent target. This is useful for debugging and diagnostic purposes."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { getEventListeners, EventEmitter } = require('events');\n\n{\n const ee = new EventEmitter();\n const listener = () => console.log('Events are fun');\n ee.on('foo', listener);\n getEventListeners(ee, 'foo'); // [listener]\n}\n{\n const et = new EventTarget();\n const listener = () => console.log('Events are fun');\n et.addEventListener('foo', listener);\n getEventListeners(et, 'foo'); // [listener]\n}\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-14",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"emitter"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"EventEmitter"})," | ",(0,r.jsx)(n.code,{children:"_DOMEventTarget"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"name"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-17",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Function"}),"[]"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v15.2.0, v14.17.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-16",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.getEventListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-21",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:299"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"getmaxlisteners-1",children:"getMaxListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"getMaxListeners"}),"(",(0,r.jsx)(n.code,{children:"emitter"}),"): ",(0,r.jsx)(n.code,{children:"number"})]}),"\n",(0,r.jsx)(n.p,{children:"Returns the currently set max amount of listeners."}),"\n",(0,r.jsxs)(n.p,{children:["For ",(0,r.jsx)(n.code,{children:"EventEmitter"}),"s this behaves exactly the same as calling ",(0,r.jsx)(n.code,{children:".getMaxListeners"})," on\nthe emitter."]}),"\n",(0,r.jsxs)(n.p,{children:["For ",(0,r.jsx)(n.code,{children:"EventTarget"}),"s this is the only way to get the max event listeners for the\nevent target. If the number of event handlers on a single EventTarget exceeds\nthe max set, the EventTarget will print a warning."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"import { getMaxListeners, setMaxListeners, EventEmitter } from 'node:events';\n\n{\n const ee = new EventEmitter();\n console.log(getMaxListeners(ee)); // 10\n setMaxListeners(11, ee);\n console.log(getMaxListeners(ee)); // 11\n}\n{\n const et = new EventTarget();\n console.log(getMaxListeners(et)); // 10\n setMaxListeners(11, et);\n console.log(getMaxListeners(et)); // 11\n}\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-15",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"emitter"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"EventEmitter"})," | ",(0,r.jsx)(n.code,{children:"_DOMEventTarget"})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-18",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"number"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v18.17.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-17",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.getMaxListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-22",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:328"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"listenercount-1",children:"listenerCount"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"listenerCount"}),"(",(0,r.jsx)(n.code,{children:"emitter"}),", ",(0,r.jsx)(n.code,{children:"eventName"}),"): ",(0,r.jsx)(n.code,{children:"number"})]}),"\n",(0,r.jsxs)(n.p,{children:["A class method that returns the number of listeners for the given ",(0,r.jsx)(n.code,{children:"eventName"}),"registered on the given ",(0,r.jsx)(n.code,{children:"emitter"}),"."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { EventEmitter, listenerCount } = require('events');\nconst myEmitter = new EventEmitter();\nmyEmitter.on('event', () => {});\nmyEmitter.on('event', () => {});\nconsole.log(listenerCount(myEmitter, 'event'));\n// Prints: 2\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-16",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"emitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"EventEmitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The emitter to query"})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The event name"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-19",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"number"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v0.9.12"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsxs)(n.p,{children:["Since v3.2.0 - Use ",(0,r.jsx)(n.code,{children:"listenerCount"})," instead."]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-18",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.listenerCount"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-23",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:271"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"on-1",children:"on"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"on"}),"(",(0,r.jsx)(n.code,{children:"emitter"}),", ",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"options?"}),"): ",(0,r.jsx)(n.code,{children:"AsyncIterableIterator"}),"<",(0,r.jsx)(n.code,{children:"any"}),">"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { on, EventEmitter } = require('events');\n\n(async () => {\n const ee = new EventEmitter();\n\n // Emit later on\n process.nextTick(() => {\n ee.emit('foo', 'bar');\n ee.emit('foo', 42);\n });\n\n for await (const event of on(ee, 'foo')) {\n // The execution of this inner block is synchronous and it\n // processes one event at a time (even with await). Do not use\n // if concurrent execution is required.\n console.log(event); // prints ['bar'] [42]\n }\n // Unreachable here\n})();\n"})}),"\n",(0,r.jsxs)(n.p,{children:["Returns an ",(0,r.jsx)(n.code,{children:"AsyncIterator"})," that iterates ",(0,r.jsx)(n.code,{children:"eventName"})," events. It will throw\nif the ",(0,r.jsx)(n.code,{children:"EventEmitter"})," emits ",(0,r.jsx)(n.code,{children:"'error'"}),". It removes all listeners when\nexiting the loop. The ",(0,r.jsx)(n.code,{children:"value"})," returned by each iteration is an array\ncomposed of the emitted event arguments."]}),"\n",(0,r.jsxs)(n.p,{children:["An ",(0,r.jsx)(n.code,{children:"AbortSignal"})," can be used to cancel waiting on events:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { on, EventEmitter } = require('events');\nconst ac = new AbortController();\n\n(async () => {\n const ee = new EventEmitter();\n\n // Emit later on\n process.nextTick(() => {\n ee.emit('foo', 'bar');\n ee.emit('foo', 42);\n });\n\n for await (const event of on(ee, 'foo', { signal: ac.signal })) {\n // The execution of this inner block is synchronous and it\n // processes one event at a time (even with await). Do not use\n // if concurrent execution is required.\n console.log(event); // prints ['bar'] [42]\n }\n // Unreachable here\n})();\n\nprocess.nextTick(() => ac.abort());\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-17",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"emitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"EventEmitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"-"})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"string"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"The name of the event being listened for"})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"options?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"StaticEventEmitterOptions"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"-"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-20",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"AsyncIterableIterator"}),"<",(0,r.jsx)(n.code,{children:"any"}),">"]}),"\n",(0,r.jsxs)(n.p,{children:["that iterates ",(0,r.jsx)(n.code,{children:"eventName"})," events emitted by the ",(0,r.jsx)(n.code,{children:"emitter"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v13.6.0, v12.16.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-19",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.on"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-24",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:254"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"on"}),"<",(0,r.jsx)(n.code,{children:"Emitter"}),", ",(0,r.jsx)(n.code,{children:"Events"}),">(",(0,r.jsx)(n.code,{children:"eventEmitter"}),", ",(0,r.jsx)(n.code,{children:"eventName"}),"): ",(0,r.jsx)(n.code,{children:"AsyncIterableIterator"}),"<",(0,r.jsx)(n.code,{children:"Emitter"})," extends ",(0,r.jsx)(n.code,{children:"Client"}),"<",(0,r.jsx)(n.code,{children:"boolean"}),"> ? ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"[",(0,r.jsx)(n.code,{children:"Events"}),"] : ",(0,r.jsx)(n.code,{children:"any"}),">"]}),"\n",(0,r.jsx)(n.h4,{id:"type-parameters-3",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Emitter"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,r.jsx)(n.code,{children:"__module"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Events"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.code,{children:"ClientEvents"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-18",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventEmitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Emitter"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"Emitter"})," extends ",(0,r.jsx)(n.code,{children:"Client"}),"<",(0,r.jsx)(n.code,{children:"boolean"}),"> ? ",(0,r.jsx)(n.code,{children:"Events"})," : ",(0,r.jsx)(n.code,{children:"string"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-21",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"AsyncIterableIterator"}),"<",(0,r.jsx)(n.code,{children:"Emitter"})," extends ",(0,r.jsx)(n.code,{children:"Client"}),"<",(0,r.jsx)(n.code,{children:"boolean"}),"> ? ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"[",(0,r.jsx)(n.code,{children:"Events"}),"] : ",(0,r.jsx)(n.code,{children:"any"}),">"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-20",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.on"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-25",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:243"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"once-1",children:"once"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"once"}),"(",(0,r.jsx)(n.code,{children:"emitter"}),", ",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"options?"}),"): ",(0,r.jsx)(n.code,{children:"Promise"}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>"]}),"\n",(0,r.jsxs)(n.p,{children:["Creates a ",(0,r.jsx)(n.code,{children:"Promise"})," that is fulfilled when the ",(0,r.jsx)(n.code,{children:"EventEmitter"})," emits the given\nevent or that is rejected if the ",(0,r.jsx)(n.code,{children:"EventEmitter"})," emits ",(0,r.jsx)(n.code,{children:"'error'"})," while waiting.\nThe ",(0,r.jsx)(n.code,{children:"Promise"})," will resolve with an array of all the arguments emitted to the\ngiven event."]}),"\n",(0,r.jsxs)(n.p,{children:["This method is intentionally generic and works with the web platform ",(0,r.jsx)(n.a,{href:"https://dom.spec.whatwg.org/#interface-eventtarget",children:"EventTarget"})," interface, which has no special",(0,r.jsx)(n.code,{children:"'error'"})," event\nsemantics and does not listen to the ",(0,r.jsx)(n.code,{children:"'error'"})," event."]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { once, EventEmitter } = require('events');\n\nasync function run() {\n const ee = new EventEmitter();\n\n process.nextTick(() => {\n ee.emit('myevent', 42);\n });\n\n const [value] = await once(ee, 'myevent');\n console.log(value);\n\n const err = new Error('kaboom');\n process.nextTick(() => {\n ee.emit('error', err);\n });\n\n try {\n await once(ee, 'myevent');\n } catch (err) {\n console.log('error happened', err);\n }\n}\n\nrun();\n"})}),"\n",(0,r.jsxs)(n.p,{children:["The special handling of the ",(0,r.jsx)(n.code,{children:"'error'"})," event is only used when ",(0,r.jsx)(n.code,{children:"events.once()"}),"is used to wait for another event. If ",(0,r.jsx)(n.code,{children:"events.once()"})," is used to wait for the\n'",(0,r.jsx)(n.code,{children:"error'"})," event itself, then it is treated as any other kind of event without\nspecial handling:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { EventEmitter, once } = require('events');\n\nconst ee = new EventEmitter();\n\nonce(ee, 'error')\n .then(([err]) => console.log('ok', err.message))\n .catch((err) => console.log('error', err.message));\n\nee.emit('error', new Error('boom'));\n\n// Prints: ok boom\n"})}),"\n",(0,r.jsxs)(n.p,{children:["An ",(0,r.jsx)(n.code,{children:"AbortSignal"})," can be used to cancel waiting for the event:"]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const { EventEmitter, once } = require('events');\n\nconst ee = new EventEmitter();\nconst ac = new AbortController();\n\nasync function foo(emitter, event, signal) {\n try {\n await once(emitter, event, { signal });\n console.log('event emitted!');\n } catch (error) {\n if (error.name === 'AbortError') {\n console.error('Waiting for the event was canceled!');\n } else {\n console.error('There was an error', error.message);\n }\n }\n}\n\nfoo(ee, 'foo', ac.signal);\nac.abort(); // Abort waiting for the event\nee.emit('foo'); // Prints: Waiting for the event was canceled!\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-19",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"emitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"_NodeEventTarget"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"symbol"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"options?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"StaticEventEmitterOptions"})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-22",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Promise"}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>"]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v11.13.0, v10.16.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-21",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.once"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-26",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:194"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"once"}),"(",(0,r.jsx)(n.code,{children:"emitter"}),", ",(0,r.jsx)(n.code,{children:"eventName"}),", ",(0,r.jsx)(n.code,{children:"options?"}),"): ",(0,r.jsx)(n.code,{children:"Promise"}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>"]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-20",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"emitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"_DOMEventTarget"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"string"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"options?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"StaticEventEmitterOptions"})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-23",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Promise"}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-22",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.once"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-27",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:195"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"once"}),"<",(0,r.jsx)(n.code,{children:"Emitter"}),", ",(0,r.jsx)(n.code,{children:"Event"}),">(",(0,r.jsx)(n.code,{children:"eventEmitter"}),", ",(0,r.jsx)(n.code,{children:"eventName"}),"): ",(0,r.jsx)(n.code,{children:"Promise"}),"<",(0,r.jsx)(n.code,{children:"Emitter"})," extends ",(0,r.jsx)(n.code,{children:"Client"}),"<",(0,r.jsx)(n.code,{children:"boolean"}),"> ? ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"[",(0,r.jsx)(n.code,{children:"Event"}),"] : ",(0,r.jsx)(n.code,{children:"any"}),"[]>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-parameters-4",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Emitter"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,r.jsx)(n.code,{children:"__module"})]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Event"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.code,{children:"ClientEvents"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-21",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventEmitter"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Emitter"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"eventName"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"Emitter"})," extends ",(0,r.jsx)(n.code,{children:"Client"}),"<",(0,r.jsx)(n.code,{children:"boolean"}),"> ? ",(0,r.jsx)(n.code,{children:"Event"})," : ",(0,r.jsx)(n.code,{children:"string"})]})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-24",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Promise"}),"<",(0,r.jsx)(n.code,{children:"Emitter"})," extends ",(0,r.jsx)(n.code,{children:"Client"}),"<",(0,r.jsx)(n.code,{children:"boolean"}),"> ? ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"[",(0,r.jsx)(n.code,{children:"Event"}),"] : ",(0,r.jsx)(n.code,{children:"any"}),"[]>"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-23",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.once"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-28",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/discord.js/typings/index.d.ts:239"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"payload",children:"payload"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"payload"}),"<",(0,r.jsx)(n.code,{children:"T"}),">(",(0,r.jsx)(n.code,{children:"type"}),", ",(0,r.jsx)(n.code,{children:"module?"}),", ",(0,r.jsx)(n.code,{children:"reason?"}),"): ",(0,r.jsx)(n.code,{children:"T"})]}),"\n",(0,r.jsx)(n.h4,{id:"type-parameters-5",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,r.jsx)(n.a,{href:"/docs/api/modules#payload",children:(0,r.jsx)(n.code,{children:"Payload"})})]})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"parameters-22",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"type"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/enums/PayloadType",children:(0,r.jsx)(n.code,{children:"PayloadType"})})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"module?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Module"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"reason?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"unknown"})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-25",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"T"})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-29",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L46",children:"src/core/structures/sern-emitter.ts:46"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"setmaxlisteners-1",children:"setMaxListeners"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"setMaxListeners"}),"(",(0,r.jsx)(n.code,{children:"n?"}),", ",(0,r.jsx)(n.code,{children:"...eventTargets"}),"): ",(0,r.jsx)(n.code,{children:"void"})]}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-js",children:"const {\n setMaxListeners,\n EventEmitter\n} = require('events');\n\nconst target = new EventTarget();\nconst emitter = new EventEmitter();\n\nsetMaxListeners(5, target, emitter);\n"})}),"\n",(0,r.jsx)(n.h4,{id:"parameters-23",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"n?"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"number"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["A non-negative number. The maximum number of listeners per ",(0,r.jsx)(n.code,{children:"EventTarget"})," event."]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"...eventTargets"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["(",(0,r.jsx)(n.code,{children:"EventEmitter"})," | ",(0,r.jsx)(n.code,{children:"_DOMEventTarget"}),")[]"]}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:"-"})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-26",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"void"})}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"v15.4.0"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-24",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"EventEmitter.setMaxListeners"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-30",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:"node_modules/@types/node/events.d.ts:346"}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"success",children:"success"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"success"}),"(",(0,r.jsx)(n.code,{children:"module"}),"): ",(0,r.jsx)(n.code,{children:"Object"})]}),"\n",(0,r.jsx)(n.p,{children:"Creates a compliant SernEmitter module success payload"}),"\n",(0,r.jsx)(n.h4,{id:"parameters-24",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"module"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Module"})})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-27",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Object"})}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"module"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"AnyModule"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"type"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/enums/PayloadType#success",children:(0,r.jsx)(n.code,{children:"Success"})})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-31",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L72",children:"src/core/structures/sern-emitter.ts:72"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"warning",children:"warning"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 ",(0,r.jsx)(n.strong,{children:"warning"}),"(",(0,r.jsx)(n.code,{children:"reason"}),"): ",(0,r.jsx)(n.code,{children:"Object"})]}),"\n",(0,r.jsx)(n.p,{children:"Creates a compliant SernEmitter module warning payload"}),"\n",(0,r.jsx)(n.h4,{id:"parameters-25",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"reason"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"unknown"})})]})})]}),"\n",(0,r.jsx)(n.h4,{id:"returns-28",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Object"})}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"reason"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"string"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"type"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/enums/PayloadType#warning",children:(0,r.jsx)(n.code,{children:"Warning"})})})]})]})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-32",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/structures/sern-emitter.ts#L82",children:"src/core/structures/sern-emitter.ts:82"})})]})}function x(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>d});var r=t(6540);const s={},i=r.createContext(s);function l(e){const n=r.useContext(i);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),r.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7f2ac8b7.126f370e.js b/assets/js/7f2ac8b7.126f370e.js deleted file mode 100644 index 819acb8cb..000000000 --- a/assets/js/7f2ac8b7.126f370e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9368],{5051:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>h,frontMatter:()=>d,metadata:()=>s,toc:()=>o});var r=t(4848),i=t(8453);const d={id:"AutocompleteCommand",title:"Interface: AutocompleteCommand",sidebar_label:"AutocompleteCommand",sidebar_position:0,custom_edit_url:null},l=void 0,s={id:"api/interfaces/AutocompleteCommand",title:"Interface: AutocompleteCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/AutocompleteCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/AutocompleteCommand",permalink:"/docs/api/interfaces/AutocompleteCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"AutocompleteCommand",title:"Interface: AutocompleteCommand",sidebar_label:"AutocompleteCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernEmitter",permalink:"/docs/api/classes/SernEmitter"},next:{title:"AutocompletePlugin",permalink:"/docs/api/interfaces/AutocompletePlugin"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-1",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Omit"}),"<",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Module",children:(0,r.jsx)(n.code,{children:"Module"})}),", ",(0,r.jsx)(n.code,{children:'"name"'})," | ",(0,r.jsx)(n.code,{children:'"type"'})," | ",(0,r.jsx)(n.code,{children:'"plugins"'})," | ",(0,r.jsx)(n.code,{children:'"description"'}),">"]}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"AutocompleteCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"ctx"}),": ",(0,r.jsx)(n.code,{children:"AutocompleteInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">) => ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"ctx"}),"): ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"ctx"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"AutocompleteInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"unknown"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Omit.execute"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L111",children:"src/types/module.ts:111"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"onEvent"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,r.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Omit.onEvent"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/module.ts#L110",children:"src/types/module.ts:110"})})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>s});var r=t(6540);const i={},d=r.createContext(i);function l(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/814f3328.2f7d455e.js b/assets/js/814f3328.2f7d455e.js deleted file mode 100644 index ad7ac5836..000000000 --- a/assets/js/814f3328.2f7d455e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7472],{5513:e=>{e.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"Deploying sern with Railway","permalink":"/blog/railway-deploy","unlisted":false},{"title":"New logo!","permalink":"/blog/newlogo","unlisted":false},{"title":"Release 3.0.0","permalink":"/blog/3.0.0","unlisted":false},{"title":"Release 2.5.0","permalink":"/blog/2.5.0","unlisted":false},{"title":"Release 2.0.0","permalink":"/blog/2.0.0","unlisted":false},{"title":"How to get started with sern!","permalink":"/blog/getting-started","unlisted":false},{"title":"Release 1.2.0","permalink":"/blog/1.2.0","unlisted":false}]}')}}]); \ No newline at end of file diff --git a/assets/js/82474f76.a3f2f6f9.js b/assets/js/82474f76.a3f2f6f9.js deleted file mode 100644 index 05cf44ee6..000000000 --- a/assets/js/82474f76.a3f2f6f9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1839],{1365:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>u,frontMatter:()=>i,metadata:()=>a,toc:()=>l});var s=n(4848),r=n(8453);const i={},o=void 0,a={id:"cli/extra",title:"extra",description:"This command is pretty straightfoward. Install utilities into your application. Assumes you have a sern.config.json.",source:"@site/docs/cli/extra.md",sourceDirName:"cli",slug:"/cli/extra",permalink:"/docs/cli/extra",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/cli/extra.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"clear",permalink:"/docs/cli/clear"},next:{title:"publish",permalink:"/docs/cli/publish"}},c={},l=[];function d(e){const t={code:"code",p:"p",pre:"pre",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-sh",children:"Usage: sern extra [options]\n\nEasy way to add extra things in your sern project\n\nOptions:\n -h, --help display help for command\n"})}),"\n",(0,s.jsx)(t.p,{children:"This command is pretty straightfoward. Install utilities into your application. Assumes you have a sern.config.json."})]})}function u(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>a});var s=n(6540);const r={},i=s.createContext(r);function o(e){const t=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),s.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/82cdda05.dcdcf129.js b/assets/js/82cdda05.dcdcf129.js deleted file mode 100644 index 875a55e35..000000000 --- a/assets/js/82cdda05.dcdcf129.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9392],{9673:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>o,frontMatter:()=>s,metadata:()=>d,toc:()=>h});var t=i(4848),r=i(8453);const s={id:"EventPlugin",title:"Interface: EventPlugin<T>",sidebar_label:"EventPlugin",sidebar_position:0,custom_edit_url:null},l=void 0,d={id:"api/interfaces/EventPlugin",title:"Interface: EventPlugin<T>",description:"Deprecated",source:"@site/docs/api/interfaces/EventPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/EventPlugin",permalink:"/docs/api/interfaces/EventPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"EventPlugin",title:"Interface: EventPlugin<T>",sidebar_label:"EventPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"EventModuleDefs",permalink:"/docs/api/interfaces/EventModuleDefs"},next:{title:"ExternalEmitterPlugin",permalink:"/docs/api/interfaces/ExternalEmitterPlugin"}},c={},h=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.p,{children:(0,t.jsx)(n.strong,{children:(0,t.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,t.jsx)(n.p,{children:"Use the newer helper functions"}),"\n",(0,t.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"T"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,t.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,t.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,t.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,t.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.code,{children:"Optional"})," ",(0,t.jsx)(n.strong,{children:"description"}),": ",(0,t.jsx)(n.code,{children:"string"})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L64",children:"src/types/plugin.ts:64"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.strong,{children:"execute"}),": (",(0,t.jsx)(n.code,{children:"args"}),": ",(0,t.jsx)(n.a,{href:"/docs/api/modules#commandargs",children:(0,t.jsx)(n.code,{children:"CommandArgs"})}),"<",(0,t.jsx)(n.code,{children:"T"}),", ",(0,t.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,t.jsx)(n.code,{children:"Event"})}),">, ",(0,t.jsx)(n.code,{children:"controller?"}),": ",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,t.jsx)(n.code,{children:"Controller"})}),") => ",(0,t.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,t.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,t.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 (",(0,t.jsx)(n.code,{children:"args"}),", ",(0,t.jsx)(n.code,{children:"controller?"}),"): ",(0,t.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,t.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,t.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsxs)(n.tbody,{children:[(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"args"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,t.jsx)(n.a,{href:"/docs/api/modules#commandargs",children:(0,t.jsx)(n.code,{children:"CommandArgs"})}),"<",(0,t.jsx)(n.code,{children:"T"}),", ",(0,t.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,t.jsx)(n.code,{children:"Event"})}),">"]})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"controller?"})}),(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,t.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,t.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,t.jsx)(n.code,{children:"PluginResult"})})}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L66",children:"src/types/plugin.ts:66"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.code,{children:"Optional"})," ",(0,t.jsx)(n.strong,{children:"name"}),": ",(0,t.jsx)(n.code,{children:"string"})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L63",children:"src/types/plugin.ts:63"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.strong,{children:"type"}),": ",(0,t.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,t.jsx)(n.code,{children:"Event"})})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L65",children:"src/types/plugin.ts:65"})})]})}function o(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>d});var t=i(6540);const r={},s=t.createContext(r);function l(e){const n=t.useContext(s);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),t.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/83d480e9.6fc38056.js b/assets/js/83d480e9.6fc38056.js deleted file mode 100644 index 628a00776..000000000 --- a/assets/js/83d480e9.6fc38056.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9650],{4078:e=>{e.exports=JSON.parse('{"label":"release","permalink":"/blog/tags/release","allTagsPath":"/blog/tags","count":4,"unlisted":false}')}}]); \ No newline at end of file diff --git a/assets/js/85456a26.e1958609.js b/assets/js/85456a26.e1958609.js deleted file mode 100644 index 213ceb36a..000000000 --- a/assets/js/85456a26.e1958609.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8036],{575:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>d,default:()=>h,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var r=t(4848),s=t(8453);const i={id:"InitArgs",title:"Interface: InitArgs<T>",sidebar_label:"InitArgs",sidebar_position:0,custom_edit_url:null},d=void 0,l={id:"api/interfaces/InitArgs",title:"Interface: InitArgs<T>",description:"Type parameters",source:"@site/docs/api/interfaces/InitArgs.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/InitArgs",permalink:"/docs/api/interfaces/InitArgs",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"InitArgs",title:"Interface: InitArgs<T>",sidebar_label:"InitArgs",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Init",permalink:"/docs/api/interfaces/Init"},next:{title:"InitPlugin",permalink:"/docs/api/interfaces/InitPlugin"}},a={},c=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"absPath",id:"abspath",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"module",id:"module",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,r.jsx)(n.a,{href:"/docs/api/modules#processed",children:(0,r.jsx)(n.code,{children:"Processed"})}),"<",(0,r.jsx)(n.a,{href:"Module.md",children:(0,r.jsx)(n.code,{children:"Module"})}),">"]})]})})]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"abspath",children:"absPath"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"absPath"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/plugins/args.ts#L107",children:"src/handler/plugins/args.ts:107"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"module",children:"module"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"module"}),": ",(0,r.jsx)(n.code,{children:"T"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/plugins/args.ts#L106",children:"src/handler/plugins/args.ts:106"})})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>d,x:()=>l});var r=t(6540);const s={},i=r.createContext(s);function d(e){const n=r.useContext(i);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:d(e.components),r.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/8645.5bf758dc.js b/assets/js/8645.5bf758dc.js deleted file mode 100644 index 77fd75fa9..000000000 --- a/assets/js/8645.5bf758dc.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8645],{7293:(n,e,t)=>{t.d(e,{A:()=>_});var i=t(6540),s=t(4848);function o(n){const{mdxAdmonitionTitle:e,rest:t}=function(n){const e=i.Children.toArray(n),t=e.find((n=>i.isValidElement(n)&&"mdxAdmonitionTitle"===n.type)),o=e.filter((n=>n!==t)),a=t?.props.children;return{mdxAdmonitionTitle:a,rest:o.length>0?(0,s.jsx)(s.Fragment,{children:o}):null}}(n.children),o=n.title??e;return{...n,...o&&{title:o},children:t}}var a=t(53),l=t(1312),r=t(7559);const c={admonition:"admonition_xJq3",admonitionHeading:"admonitionHeading_Gvgb",admonitionIcon:"admonitionIcon_Rf37",admonitionContent:"admonitionContent_BuS1"};function d(n){let{type:e,className:t,children:i}=n;return(0,s.jsx)("div",{className:(0,a.A)(r.G.common.admonition,r.G.common.admonitionType(e),c.admonition,t),children:i})}function u(n){let{icon:e,title:t}=n;return(0,s.jsxs)("div",{className:c.admonitionHeading,children:[(0,s.jsx)("span",{className:c.admonitionIcon,children:e}),t]})}function m(n){let{children:e}=n;return e?(0,s.jsx)("div",{className:c.admonitionContent,children:e}):null}function h(n){const{type:e,icon:t,title:i,children:o,className:a}=n;return(0,s.jsxs)(d,{type:e,className:a,children:[(0,s.jsx)(u,{title:i,icon:t}),(0,s.jsx)(m,{children:o})]})}function f(n){return(0,s.jsx)("svg",{viewBox:"0 0 14 16",...n,children:(0,s.jsx)("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"})})}const x={icon:(0,s.jsx)(f,{}),title:(0,s.jsx)(l.A,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)",children:"note"})};function j(n){return(0,s.jsx)(h,{...x,...n,className:(0,a.A)("alert alert--secondary",n.className),children:n.children})}function p(n){return(0,s.jsx)("svg",{viewBox:"0 0 12 16",...n,children:(0,s.jsx)("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"})})}const v={icon:(0,s.jsx)(p,{}),title:(0,s.jsx)(l.A,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)",children:"tip"})};function g(n){return(0,s.jsx)(h,{...v,...n,className:(0,a.A)("alert alert--success",n.className),children:n.children})}function A(n){return(0,s.jsx)("svg",{viewBox:"0 0 14 16",...n,children:(0,s.jsx)("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"})})}const N={icon:(0,s.jsx)(A,{}),title:(0,s.jsx)(l.A,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)",children:"info"})};function y(n){return(0,s.jsx)(h,{...N,...n,className:(0,a.A)("alert alert--info",n.className),children:n.children})}function C(n){return(0,s.jsx)("svg",{viewBox:"0 0 16 16",...n,children:(0,s.jsx)("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"})})}const b={icon:(0,s.jsx)(C,{}),title:(0,s.jsx)(l.A,{id:"theme.admonition.warning",description:"The default label used for the Warning admonition (:::warning)",children:"warning"})};function w(n){return(0,s.jsx)("svg",{viewBox:"0 0 12 16",...n,children:(0,s.jsx)("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"})})}const z={icon:(0,s.jsx)(w,{}),title:(0,s.jsx)(l.A,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)",children:"danger"})};const T={icon:(0,s.jsx)(C,{}),title:(0,s.jsx)(l.A,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)",children:"caution"})};const M={...{note:j,tip:g,info:y,warning:function(n){return(0,s.jsx)(h,{...b,...n,className:(0,a.A)("alert alert--warning",n.className),children:n.children})},danger:function(n){return(0,s.jsx)(h,{...z,...n,className:(0,a.A)("alert alert--danger",n.className),children:n.children})}},...{secondary:n=>(0,s.jsx)(j,{title:"secondary",...n}),important:n=>(0,s.jsx)(y,{title:"important",...n}),success:n=>(0,s.jsx)(g,{title:"success",...n}),caution:function(n){return(0,s.jsx)(h,{...T,...n,className:(0,a.A)("alert alert--warning",n.className),children:n.children})}}};function _(n){const e=o(n),t=(i=e.type,M[i]||(console.warn(`No admonition component found for admonition type "${i}". Using Info as fallback.`),M.info));var i;return(0,s.jsx)(t,{...e})}},8645:(n,e,t)=>{t.d(e,{A:()=>T});var i=t(6540),s=t(8453),o=t(5260),a=t(4428),l=t(4848);var r=t(5489);var c=t(53),d=t(2303),u=t(1422);const m={details:"details_lb9f",isBrowser:"isBrowser_bmU9",collapsibleContent:"collapsibleContent_i85q"};function h(n){return!!n&&("SUMMARY"===n.tagName||h(n.parentElement))}function f(n,e){return!!n&&(n===e||f(n.parentElement,e))}function x(n){let{summary:e,children:t,...s}=n;const o=(0,d.A)(),a=(0,i.useRef)(null),{collapsed:r,setCollapsed:x}=(0,u.u)({initialState:!s.open}),[j,p]=(0,i.useState)(s.open),v=i.isValidElement(e)?e:(0,l.jsx)("summary",{children:e??"Details"});return(0,l.jsxs)("details",{...s,ref:a,open:j,"data-collapsed":r,className:(0,c.A)(m.details,o&&m.isBrowser,s.className),onMouseDown:n=>{h(n.target)&&n.detail>1&&n.preventDefault()},onClick:n=>{n.stopPropagation();const e=n.target;h(e)&&f(e,a.current)&&(n.preventDefault(),r?(x(!1),p(!0)):x(!0))},children:[v,(0,l.jsx)(u.N,{lazy:!1,collapsed:r,disableSSRStyle:!0,onCollapseTransitionEnd:n=>{x(n),p(!n)},children:(0,l.jsx)("div",{className:m.collapsibleContent,children:t})})]})}const j={details:"details_b_Ee"},p="alert alert--info";function v(n){let{...e}=n;return(0,l.jsx)(x,{...e,className:(0,c.A)(p,j.details,e.className)})}function g(n){const e=i.Children.toArray(n.children),t=e.find((n=>i.isValidElement(n)&&"summary"===n.type)),s=(0,l.jsx)(l.Fragment,{children:e.filter((n=>n!==t))});return(0,l.jsx)(v,{...n,summary:t,children:s})}var A=t(1107);function N(n){return(0,l.jsx)(A.A,{...n})}const y={containsTaskList:"containsTaskList_mC6p"};function C(n){if(void 0!==n)return(0,c.A)(n,n?.includes("contains-task-list")&&y.containsTaskList)}const b={img:"img_ev3q"};var w=t(7293);const z={Head:o.A,details:g,Details:g,code:function(n){return i.Children.toArray(n.children).every((n=>"string"==typeof n&&!n.includes("\n")))?(0,l.jsx)("code",{...n}):(0,l.jsx)(a.A,{...n})},a:function(n){return(0,l.jsx)(r.A,{...n})},pre:function(n){return(0,l.jsx)(l.Fragment,{children:n.children})},ul:function(n){return(0,l.jsx)("ul",{...n,className:C(n.className)})},img:function(n){return(0,l.jsx)("img",{loading:"lazy",...n,className:(e=n.className,(0,c.A)(e,b.img))});var e},h1:n=>(0,l.jsx)(N,{as:"h1",...n}),h2:n=>(0,l.jsx)(N,{as:"h2",...n}),h3:n=>(0,l.jsx)(N,{as:"h3",...n}),h4:n=>(0,l.jsx)(N,{as:"h4",...n}),h5:n=>(0,l.jsx)(N,{as:"h5",...n}),h6:n=>(0,l.jsx)(N,{as:"h6",...n}),admonition:w.A,mermaid:()=>null};function T(n){let{children:e}=n;return(0,l.jsx)(s.x,{components:z,children:e})}},8453:(n,e,t)=>{t.d(e,{R:()=>a,x:()=>l});var i=t(6540);const s={},o=i.createContext(s);function a(n){const e=i.useContext(o);return i.useMemo((function(){return"function"==typeof n?n(e):{...e,...n}}),[e,n])}function l(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(s):n.components||s:a(n.components),i.createElement(o.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/86b8ce54.3f8ce513.js b/assets/js/86b8ce54.3f8ce513.js deleted file mode 100644 index cfac3f663..000000000 --- a/assets/js/86b8ce54.3f8ce513.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9856],{4941:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>i,default:()=>p,frontMatter:()=>r,metadata:()=>c,toc:()=>l});var o=t(4848),s=t(8453);const r={},i="CLI",c={id:"cli/README",title:"CLI",description:"Publish commands to the API, install plugins, and use other tools provided by our cli.",source:"@site/docs/cli/README.md",sourceDirName:"cli",slug:"/cli/",permalink:"/docs/cli/",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/cli/README.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Welcome!",permalink:"/docs/intro"},next:{title:"build",permalink:"/docs/cli/build"}},a={},l=[];function d(e){const n={code:"code",h1:"h1",p:"p",pre:"pre",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"cli",children:"CLI"}),"\n",(0,o.jsx)(n.p,{children:"Publish commands to the API, install plugins, and use other tools provided by our cli."}),"\n",(0,o.jsx)(n.p,{children:"The CLI is your pocketknife for discord bot development. It'll have all features necessary for developing and shipping to production."}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{children:"Usage: sern [options] [command]\n\n\n ___ ___ _ __ _ __\n / __|/ _ \\ '__| '_ \\\n \\__ \\ __/ | | | | |\n |___/\\___|_| |_| |_|\n\n Welcome!\n If you're new to sern, run npm create @sern/bot for an interactive setup to your new bot project!\n\n If you have any ideas, suggestions, bug reports, kindly join our support server: https://sern.dev/discord\n\nOptions:\n -v, --version output the version number\n -h, --help display help for command\n\nCommands:\n init [options] Quickest way to scaffold a new project [DEPRECATED]\n plugins [options] Install plugins from https://github.com/sern-handler/awesome-plugins\n extra Easy way to add extra things in your sern project\n commands Defacto way to manage your slash commands\n help [command] display help for command\n"})})]})}function p(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>c});var o=t(6540);const s={},r=o.createContext(s);function i(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/8747.34a2c022.js b/assets/js/8747.34a2c022.js deleted file mode 100644 index d279ca463..000000000 --- a/assets/js/8747.34a2c022.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8747],{6535:(e,t,s)=>{s.d(t,{A:()=>f});var a=s(6540),n=s(53),r=s(8511),l=s(4581),i=s(5489),o=s(1312),c=s(6347),m=s(9169);function d(e){const{pathname:t}=(0,c.zy)();return(0,a.useMemo)((()=>e.filter((e=>function(e,t){return!(e.unlisted&&!(0,m.ys)(e.permalink,t))}(e,t)))),[e,t])}const u={sidebar:"sidebar_re4s",sidebarItemTitle:"sidebarItemTitle_pO2u",sidebarItemList:"sidebarItemList_Yudw",sidebarItem:"sidebarItem__DBe",sidebarItemLink:"sidebarItemLink_mo7H",sidebarItemLinkActive:"sidebarItemLinkActive_I1ZP"};var h=s(4848);function g(e){let{sidebar:t}=e;const s=d(t.items);return(0,h.jsx)("aside",{className:"col col--3",children:(0,h.jsxs)("nav",{className:(0,n.A)(u.sidebar,"thin-scrollbar"),"aria-label":(0,o.T)({id:"theme.blog.sidebar.navAriaLabel",message:"Blog recent posts navigation",description:"The ARIA label for recent posts in the blog sidebar"}),children:[(0,h.jsx)("div",{className:(0,n.A)(u.sidebarItemTitle,"margin-bottom--md"),children:t.title}),(0,h.jsx)("ul",{className:(0,n.A)(u.sidebarItemList,"clean-list"),children:s.map((e=>(0,h.jsx)("li",{className:u.sidebarItem,children:(0,h.jsx)(i.A,{isNavLink:!0,to:e.permalink,className:u.sidebarItemLink,activeClassName:u.sidebarItemLinkActive,children:e.title})},e.permalink)))})]})})}var p=s(5600);function x(e){let{sidebar:t}=e;const s=d(t.items);return(0,h.jsx)("ul",{className:"menu__list",children:s.map((e=>(0,h.jsx)("li",{className:"menu__list-item",children:(0,h.jsx)(i.A,{isNavLink:!0,to:e.permalink,className:"menu__link",activeClassName:"menu__link--active",children:e.title})},e.permalink)))})}function j(e){return(0,h.jsx)(p.GX,{component:x,props:e})}function b(e){let{sidebar:t}=e;const s=(0,l.l)();return t?.items.length?"mobile"===s?(0,h.jsx)(j,{sidebar:t}):(0,h.jsx)(g,{sidebar:t}):null}function f(e){const{sidebar:t,toc:s,children:a,...l}=e,i=t&&t.items.length>0;return(0,h.jsx)(r.A,{...l,children:(0,h.jsx)("div",{className:"container margin-vert--lg",children:(0,h.jsxs)("div",{className:"row",children:[(0,h.jsx)(b,{sidebar:t}),(0,h.jsx)("main",{className:(0,n.A)("col",{"col--7":i,"col--9 col--offset-1":!i}),itemScope:!0,itemType:"https://schema.org/Blog",children:a}),s&&(0,h.jsx)("div",{className:"col col--2",children:s})]})})})}},8258:(e,t,s)=>{s.d(t,{A:()=>C});s(6540);var a=s(53),n=s(7131),r=s(6025),l=s(4848);function i(e){let{children:t,className:s}=e;const{frontMatter:a,assets:i,metadata:{description:o}}=(0,n.e)(),{withBaseUrl:c}=(0,r.h)(),m=i.image??a.image,d=a.keywords??[];return(0,l.jsxs)("article",{className:s,itemProp:"blogPost",itemScope:!0,itemType:"https://schema.org/BlogPosting",children:[o&&(0,l.jsx)("meta",{itemProp:"description",content:o}),m&&(0,l.jsx)("link",{itemProp:"image",href:c(m,{absolute:!0})}),d.length>0&&(0,l.jsx)("meta",{itemProp:"keywords",content:d.join(",")}),t]})}var o=s(5489);const c={title:"title_f1Hy"};function m(e){let{className:t}=e;const{metadata:s,isBlogPostPage:r}=(0,n.e)(),{permalink:i,title:m}=s,d=r?"h1":"h2";return(0,l.jsx)(d,{className:(0,a.A)(c.title,t),itemProp:"headline",children:r?m:(0,l.jsx)(o.A,{itemProp:"url",to:i,children:m})})}var d=s(1312),u=s(5846);const h={container:"container_mt6G"};function g(e){let{readingTime:t}=e;const s=function(){const{selectMessage:e}=(0,u.W)();return t=>{const s=Math.ceil(t);return e(s,(0,d.T)({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:s}))}}();return(0,l.jsx)(l.Fragment,{children:s(t)})}function p(e){let{date:t,formattedDate:s}=e;return(0,l.jsx)("time",{dateTime:t,itemProp:"datePublished",children:s})}function x(){return(0,l.jsx)(l.Fragment,{children:" \xb7 "})}function j(e){let{className:t}=e;const{metadata:s}=(0,n.e)(),{date:r,formattedDate:i,readingTime:o}=s;return(0,l.jsxs)("div",{className:(0,a.A)(h.container,"margin-vert--md",t),children:[(0,l.jsx)(p,{date:r,formattedDate:i}),void 0!==o&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(x,{}),(0,l.jsx)(g,{readingTime:o})]})]})}function b(e){return e.href?(0,l.jsx)(o.A,{...e}):(0,l.jsx)(l.Fragment,{children:e.children})}function f(e){let{author:t,className:s}=e;const{name:n,title:r,url:i,imageURL:o,email:c}=t,m=i||c&&`mailto:${c}`||void 0;return(0,l.jsxs)("div",{className:(0,a.A)("avatar margin-bottom--sm",s),children:[o&&(0,l.jsx)(b,{href:m,className:"avatar__photo-link",children:(0,l.jsx)("img",{className:"avatar__photo",src:o,alt:n,itemProp:"image"})}),n&&(0,l.jsxs)("div",{className:"avatar__intro",itemProp:"author",itemScope:!0,itemType:"https://schema.org/Person",children:[(0,l.jsx)("div",{className:"avatar__name",children:(0,l.jsx)(b,{href:m,itemProp:"url",children:(0,l.jsx)("span",{itemProp:"name",children:n})})}),r&&(0,l.jsx)("small",{className:"avatar__subtitle",itemProp:"description",children:r})]})]})}const v={authorCol:"authorCol_Hf19",imageOnlyAuthorRow:"imageOnlyAuthorRow_pa_O",imageOnlyAuthorCol:"imageOnlyAuthorCol_G86a"};function A(e){let{className:t}=e;const{metadata:{authors:s},assets:r}=(0,n.e)();if(0===s.length)return null;const i=s.every((e=>{let{name:t}=e;return!t}));return(0,l.jsx)("div",{className:(0,a.A)("margin-top--md margin-bottom--sm",i?v.imageOnlyAuthorRow:"row",t),children:s.map(((e,t)=>(0,l.jsx)("div",{className:(0,a.A)(!i&&"col col--6",i?v.imageOnlyAuthorCol:v.authorCol),children:(0,l.jsx)(f,{author:{...e,imageURL:r.authorsImageUrls[t]??e.imageURL}})},t)))})}function _(){return(0,l.jsxs)("header",{children:[(0,l.jsx)(m,{}),(0,l.jsx)(j,{}),(0,l.jsx)(A,{})]})}var N=s(440),P=s(8645);function k(e){let{children:t,className:s}=e;const{isBlogPostPage:r}=(0,n.e)();return(0,l.jsx)("div",{id:r?N.blogPostContainerID:void 0,className:(0,a.A)("markdown",s),itemProp:"articleBody",children:(0,l.jsx)(P.A,{children:t})})}var T=s(1943),w=s(2053);function I(){return(0,l.jsx)("b",{children:(0,l.jsx)(d.A,{id:"theme.blog.post.readMore",description:"The label used in blog post item excerpts to link to full blog posts",children:"Read More"})})}function y(e){const{blogPostTitle:t,...s}=e;return(0,l.jsx)(o.A,{"aria-label":(0,d.T)({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}),...s,children:(0,l.jsx)(I,{})})}const F={blogPostFooterDetailsFull:"blogPostFooterDetailsFull_mRVl"};function L(){const{metadata:e,isBlogPostPage:t}=(0,n.e)(),{tags:s,title:r,editUrl:i,hasTruncateMarker:o}=e,c=!t&&o,m=s.length>0;return m||c||i?(0,l.jsxs)("footer",{className:(0,a.A)("row docusaurus-mt-lg",t&&F.blogPostFooterDetailsFull),children:[m&&(0,l.jsx)("div",{className:(0,a.A)("col",{"col--9":c}),children:(0,l.jsx)(w.A,{tags:s})}),t&&i&&(0,l.jsx)("div",{className:"col margin-top--sm",children:(0,l.jsx)(T.A,{editUrl:i})}),c&&(0,l.jsx)("div",{className:(0,a.A)("col text--right",{"col--3":m}),children:(0,l.jsx)(y,{blogPostTitle:r,to:e.permalink})})]}):null}function C(e){let{children:t,className:s}=e;const r=function(){const{isBlogPostPage:e}=(0,n.e)();return e?void 0:"margin-bottom--xl"}();return(0,l.jsxs)(i,{className:(0,a.A)(r,s),children:[(0,l.jsx)(_,{}),(0,l.jsx)(k,{children:t}),(0,l.jsx)(L,{})]})}},1943:(e,t,s)=>{s.d(t,{A:()=>m});s(6540);var a=s(1312),n=s(7559),r=s(5489),l=s(53);const i={iconEdit:"iconEdit_Z9Sw"};var o=s(4848);function c(e){let{className:t,...s}=e;return(0,o.jsx)("svg",{fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,l.A)(i.iconEdit,t),"aria-hidden":"true",...s,children:(0,o.jsx)("g",{children:(0,o.jsx)("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 m(e){let{editUrl:t}=e;return(0,o.jsxs)(r.A,{to:t,className:n.G.common.editThisPage,children:[(0,o.jsx)(c,{}),(0,o.jsx)(a.A,{id:"theme.common.editThisPage",description:"The link label to edit the current page",children:"Edit this page"})]})}},9022:(e,t,s)=>{s.d(t,{A:()=>l});s(6540);var a=s(53),n=s(5489),r=s(4848);function l(e){const{permalink:t,title:s,subLabel:l,isNext:i}=e;return(0,r.jsxs)(n.A,{className:(0,a.A)("pagination-nav__link",i?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t,children:[l&&(0,r.jsx)("div",{className:"pagination-nav__sublabel",children:l}),(0,r.jsx)("div",{className:"pagination-nav__label",children:s})]})}},6133:(e,t,s)=>{s.d(t,{A:()=>i});s(6540);var a=s(53),n=s(5489);const r={tag:"tag_zVej",tagRegular:"tagRegular_sFm0",tagWithCount:"tagWithCount_h2kH"};var l=s(4848);function i(e){let{permalink:t,label:s,count:i}=e;return(0,l.jsxs)(n.A,{href:t,className:(0,a.A)(r.tag,i?r.tagWithCount:r.tagRegular),children:[s,i&&(0,l.jsx)("span",{children:i})]})}},2053:(e,t,s)=>{s.d(t,{A:()=>o});s(6540);var a=s(53),n=s(1312),r=s(6133);const l={tags:"tags_jXut",tag:"tag_QGVx"};var i=s(4848);function o(e){let{tags:t}=e;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("b",{children:(0,i.jsx)(n.A,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list",children:"Tags:"})}),(0,i.jsx)("ul",{className:(0,a.A)(l.tags,"padding--none","margin-left--sm"),children:t.map((e=>{let{label:t,permalink:s}=e;return(0,i.jsx)("li",{className:l.tag,children:(0,i.jsx)(r.A,{label:t,permalink:s})},s)}))})]})}},7131:(e,t,s)=>{s.d(t,{e:()=>o,i:()=>i});var a=s(6540),n=s(9532),r=s(4848);const l=a.createContext(null);function i(e){let{children:t,content:s,isBlogPostPage:n=!1}=e;const i=function(e){let{content:t,isBlogPostPage:s}=e;return(0,a.useMemo)((()=>({metadata:t.metadata,frontMatter:t.frontMatter,assets:t.assets,toc:t.toc,isBlogPostPage:s})),[t,s])}({content:s,isBlogPostPage:n});return(0,r.jsx)(l.Provider,{value:i,children:t})}function o(){const e=(0,a.useContext)(l);if(null===e)throw new n.dV("BlogPostProvider");return e}},5846:(e,t,s)=>{s.d(t,{W:()=>c});var a=s(6540),n=s(4586);const r=["zero","one","two","few","many","other"];function l(e){return r.filter((t=>e.includes(t)))}const i={locale:"en",pluralForms:l(["one","other"]),select:e=>1===e?"one":"other"};function o(){const{i18n:{currentLocale:e}}=(0,n.A)();return(0,a.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:l(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`),i}}),[e])}function c(){const e=o();return{selectMessage:(t,s)=>function(e,t,s){const a=e.split("|");if(1===a.length)return a[0];a.length>s.pluralForms.length&&console.error(`For locale=${s.locale}, a maximum of ${s.pluralForms.length} plural forms are expected (${s.pluralForms.join(",")}), but the message contains ${a.length}: ${e}`);const n=s.select(t),r=s.pluralForms.indexOf(n);return a[Math.min(r,a.length-1)]}(s,t,e)}}}}]); \ No newline at end of file diff --git a/assets/js/887ace0c.daabf20c.js b/assets/js/887ace0c.daabf20c.js deleted file mode 100644 index c61968367..000000000 --- a/assets/js/887ace0c.daabf20c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8820],{8778:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>l,contentTitle:()=>d,default:()=>o,frontMatter:()=>t,metadata:()=>c,toc:()=>a});var r=s(4848),i=s(8453);const t={id:"Presence.Result",title:"Interface: Result",sidebar_label:"Result",custom_edit_url:null},d=void 0,c={id:"api/interfaces/Presence.Result",title:"Interface: Result",description:"Presence.Result",source:"@site/docs/api/interfaces/Presence.Result.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Presence.Result",permalink:"/docs/api/interfaces/Presence.Result",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",frontMatter:{id:"Presence.Result",title:"Interface: Result",sidebar_label:"Result",custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Response",permalink:"/docs/api/interfaces/CommandError.Response"},next:{title:"Welcome!",permalink:"/docs/intro"}},l={},a=[{value:"Properties",id:"properties",level:2},{value:"activities",id:"activities",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"afk",id:"afk",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"onRepeat",id:"onrepeat",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-2",level:4},{value:"repeat",id:"repeat",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"shardId",id:"shardid",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"status",id:"status",level:3},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/namespaces/Presence",children:"Presence"}),".Result"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"activities",children:"activities"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"activities"}),": ",(0,r.jsx)(n.code,{children:"ActivitiesOptions"}),"[]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L11",children:"src/core/presences.ts:11"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"afk",children:"afk"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"afk"}),": ",(0,r.jsx)(n.code,{children:"boolean"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L10",children:"src/core/presences.ts:10"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onrepeat",children:"onRepeat"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"onRepeat"}),": (",(0,r.jsx)(n.code,{children:"previous"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,r.jsx)(n.code,{children:"Result"})}),") => ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,r.jsx)(n.code,{children:"Result"})})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"previous"}),"): ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,r.jsx)(n.code,{children:"Result"})})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"previous"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,r.jsx)(n.code,{children:"Result"})})})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Presence.Result",children:(0,r.jsx)(n.code,{children:"Result"})})}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L14",children:"src/core/presences.ts:14"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"repeat",children:"repeat"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"repeat"}),": ",(0,r.jsx)(n.code,{children:"number"})," | [",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:(0,r.jsx)(n.code,{children:"Emitter"})}),", ",(0,r.jsx)(n.code,{children:"string"}),"]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L13",children:"src/core/presences.ts:13"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"shardid",children:"shardId"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"shardId"}),": ",(0,r.jsx)(n.code,{children:"number"}),"[]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L12",children:"src/core/presences.ts:12"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"status",children:"status"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"status"}),": ",(0,r.jsx)(n.code,{children:"Status"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/presences.ts#L9",children:"src/core/presences.ts:9"})})]})}function o(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>d,x:()=>c});var r=s(6540);const i={},t=r.createContext(i);function d(e){const n=r.useContext(t);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:d(e.components),r.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/888566f1.8c07be1a.js b/assets/js/888566f1.8c07be1a.js deleted file mode 100644 index 2a951b383..000000000 --- a/assets/js/888566f1.8c07be1a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5037],{8188:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>c});var i=n(4848),s=n(8453);const o={},r="Choosing an IDE",a={id:"guide/getting-started/choose-ide",title:"Choosing an IDE",description:"Choosing an IDE is a matter of personal preference. They make programming easier. The following are some",source:"@site/docs/guide/getting-started/choose-ide.md",sourceDirName:"guide/getting-started",slug:"/guide/getting-started/choose-ide",permalink:"/docs/guide/getting-started/choose-ide",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/getting-started/choose-ide.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"Introduction",permalink:"/docs/guide/"},next:{title:"Preparing to Code",permalink:"/docs/guide/getting-started/preparing"}},d={},c=[];function l(e){const t={a:"a",h1:"h1",li:"li",p:"p",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.h1,{id:"choosing-an-ide",children:"Choosing an IDE"}),"\n",(0,i.jsx)(t.p,{children:"Choosing an IDE is a matter of personal preference. They make programming easier. The following are some\nsuggestions for choosing an IDE:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.a,{href:"https://code.visualstudio.com",children:"Visual Studio Code"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["we have an ",(0,i.jsx)(t.a,{href:"https://marketplace.visualstudio.com/items?itemName=SrIzan.sern-snippets",children:"snippet extension"})," to help automate development :)"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(t.li,{children:(0,i.jsx)(t.a,{href:"https://www.sublimetext.com/",children:"Sublime Text"})}),"\n",(0,i.jsx)(t.li,{children:(0,i.jsx)(t.a,{href:"https://notepad-plus-plus.org/",children:"NotePad++"})}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.a,{href:"https://neovim.io/",children:"nvim"})," (chad)"]}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(l,{...e})}):l(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>a});var i=n(6540);const s={},o=i.createContext(s);function r(e){const t=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/8913.9af1ee1a.js b/assets/js/8913.9af1ee1a.js deleted file mode 100644 index 8dd1d747a..000000000 --- a/assets/js/8913.9af1ee1a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8913],{8913:(e,s,b)=>{b.r(s)}}]); \ No newline at end of file diff --git a/assets/js/8a062262.e880708f.js b/assets/js/8a062262.e880708f.js deleted file mode 100644 index 38255a59f..000000000 --- a/assets/js/8a062262.e880708f.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2684],{5147:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>o,frontMatter:()=>l,metadata:()=>t,toc:()=>h});var r=i(4848),d=i(8453);const l={id:"DiscordEventPlugin",title:"Interface: DiscordEventPlugin<T>",sidebar_label:"DiscordEventPlugin",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/DiscordEventPlugin",title:"Interface: DiscordEventPlugin<T>",description:"Type parameters",source:"@site/docs/api/interfaces/DiscordEventPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/DiscordEventPlugin",permalink:"/docs/api/interfaces/DiscordEventPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DiscordEventPlugin",title:"Interface: DiscordEventPlugin<T>",sidebar_label:"DiscordEventPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DiscordEventCommand",permalink:"/docs/api/interfaces/DiscordEventCommand"},next:{title:"Disposable",permalink:"/docs/api/interfaces/Disposable"}},c={},h=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"T"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,r.jsx)(n.code,{children:"ClientEvents"})," = keyof ",(0,r.jsx)(n.code,{children:"ClientEvents"})]})]})})]}),"\n",(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"DiscordEventPlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"[",(0,r.jsx)(n.code,{children:"T"}),"], ",(0,r.jsx)(n.code,{children:"controller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"args"}),", ",(0,r.jsx)(n.code,{children:"controller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"ClientEvents"}),"[",(0,r.jsx)(n.code,{children:"T"}),"]"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L105",children:"src/handler/plugins/plugin.ts:105"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"T"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L103",children:"src/handler/plugins/plugin.ts:103"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,r.jsx)(n.code,{children:"Event"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L104",children:"src/handler/plugins/plugin.ts:104"})})]})}function o(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var r=i(6540);const d={},l=r.createContext(d);function s(e){const n=r.useContext(l);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:s(e.components),r.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/90fdad0c.ebd0c8d8.js b/assets/js/90fdad0c.ebd0c8d8.js deleted file mode 100644 index 9f7ca63c9..000000000 --- a/assets/js/90fdad0c.ebd0c8d8.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8418],{8868:(e,r,n)=>{n.r(r),n.d(r,{assets:()=>c,contentTitle:()=>t,default:()=>h,frontMatter:()=>l,metadata:()=>d,toc:()=>a});var i=n(4848),s=n(8453);const l={id:"DefaultErrorHandling",title:"Class: DefaultErrorHandling",sidebar_label:"DefaultErrorHandling",sidebar_position:0,custom_edit_url:null},t=void 0,d={id:"api/classes/DefaultErrorHandling",title:"Class: DefaultErrorHandling",description:"Since",source:"@site/docs/api/classes/DefaultErrorHandling.md",sourceDirName:"api/classes",slug:"/api/classes/DefaultErrorHandling",permalink:"/docs/api/classes/DefaultErrorHandling",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DefaultErrorHandling",title:"Class: DefaultErrorHandling",sidebar_label:"DefaultErrorHandling",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Context",permalink:"/docs/api/classes/Context"},next:{title:"DefaultLogging",permalink:"/docs/api/classes/DefaultLogging"}},c={},a=[{value:"Implements",id:"implements",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Returns",id:"returns",level:4},{value:"Properties",id:"properties",level:2},{value:"#keepAlive",id:"keepalive",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"Methods",id:"methods",level:2},{value:"crash",id:"crash",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Implementation of",id:"implementation-of",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"updateAlive",id:"updatealive",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Implementation of",id:"implementation-of-1",level:4},{value:"Defined in",id:"defined-in-2",level:4}];function o(e){const r={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(r.p,{children:(0,i.jsx)(r.strong,{children:(0,i.jsx)(r.code,{children:"Since"})})}),"\n",(0,i.jsx)(r.p,{children:"2.0.0\nVersion 4.0.0 will internalize this api. Please refrain from using the defaults!"}),"\n",(0,i.jsx)(r.h2,{id:"implements",children:"Implements"}),"\n",(0,i.jsxs)(r.ul,{children:["\n",(0,i.jsx)(r.li,{children:(0,i.jsx)(r.a,{href:"/docs/api/interfaces/ErrorHandling",children:(0,i.jsx)(r.code,{children:"ErrorHandling"})})}),"\n"]}),"\n",(0,i.jsx)(r.h2,{id:"constructors",children:"Constructors"}),"\n",(0,i.jsx)(r.h3,{id:"constructor",children:"constructor"}),"\n",(0,i.jsxs)(r.p,{children:["\u2022 ",(0,i.jsx)(r.strong,{children:"new DefaultErrorHandling"}),"(): ",(0,i.jsx)(r.a,{href:"/docs/api/classes/DefaultErrorHandling",children:(0,i.jsx)(r.code,{children:"DefaultErrorHandling"})})]}),"\n",(0,i.jsx)(r.h4,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.a,{href:"/docs/api/classes/DefaultErrorHandling",children:(0,i.jsx)(r.code,{children:"DefaultErrorHandling"})})}),"\n",(0,i.jsx)(r.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(r.h3,{id:"keepalive",children:"#keepAlive"}),"\n",(0,i.jsxs)(r.p,{children:["\u2022 ",(0,i.jsx)(r.code,{children:"Private"})," ",(0,i.jsx)(r.strong,{children:"#keepAlive"}),": ",(0,i.jsx)(r.code,{children:"number"})," = ",(0,i.jsx)(r.code,{children:"1"})]}),"\n",(0,i.jsx)(r.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/error-handling.ts#L13",children:"src/core/structures/services/error-handling.ts:13"})}),"\n",(0,i.jsx)(r.h2,{id:"methods",children:"Methods"}),"\n",(0,i.jsx)(r.h3,{id:"crash",children:"crash"}),"\n",(0,i.jsxs)(r.p,{children:["\u25b8 ",(0,i.jsx)(r.strong,{children:"crash"}),"(",(0,i.jsx)(r.code,{children:"err"}),"): ",(0,i.jsx)(r.code,{children:"never"})]}),"\n",(0,i.jsx)(r.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(r.table,{children:[(0,i.jsx)(r.thead,{children:(0,i.jsxs)(r.tr,{children:[(0,i.jsx)(r.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(r.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(r.tbody,{children:(0,i.jsxs)(r.tr,{children:[(0,i.jsx)(r.td,{style:{textAlign:"left"},children:(0,i.jsx)(r.code,{children:"err"})}),(0,i.jsx)(r.td,{style:{textAlign:"left"},children:(0,i.jsx)(r.code,{children:"Error"})})]})})]}),"\n",(0,i.jsx)(r.h4,{id:"returns-1",children:"Returns"}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.code,{children:"never"})}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.strong,{children:(0,i.jsx)(r.code,{children:"Deprecated"})})}),"\n",(0,i.jsx)(r.p,{children:"Version 4 will remove this method"}),"\n",(0,i.jsx)(r.h4,{id:"implementation-of",children:"Implementation of"}),"\n",(0,i.jsxs)(r.p,{children:[(0,i.jsx)(r.a,{href:"/docs/api/interfaces/ErrorHandling",children:"ErrorHandling"}),".",(0,i.jsx)(r.a,{href:"/docs/api/interfaces/ErrorHandling#crash",children:"crash"})]}),"\n",(0,i.jsx)(r.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/error-handling.ts#L9",children:"src/core/structures/services/error-handling.ts:9"})}),"\n",(0,i.jsx)(r.hr,{}),"\n",(0,i.jsx)(r.h3,{id:"updatealive",children:"updateAlive"}),"\n",(0,i.jsxs)(r.p,{children:["\u25b8 ",(0,i.jsx)(r.strong,{children:"updateAlive"}),"(",(0,i.jsx)(r.code,{children:"err"}),"): ",(0,i.jsx)(r.code,{children:"void"})]}),"\n",(0,i.jsx)(r.p,{children:"A function that is called on every throw."}),"\n",(0,i.jsx)(r.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(r.table,{children:[(0,i.jsx)(r.thead,{children:(0,i.jsxs)(r.tr,{children:[(0,i.jsx)(r.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(r.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(r.tbody,{children:(0,i.jsxs)(r.tr,{children:[(0,i.jsx)(r.td,{style:{textAlign:"left"},children:(0,i.jsx)(r.code,{children:"err"})}),(0,i.jsx)(r.td,{style:{textAlign:"left"},children:(0,i.jsx)(r.code,{children:"Error"})})]})})]}),"\n",(0,i.jsx)(r.h4,{id:"returns-2",children:"Returns"}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.code,{children:"void"})}),"\n",(0,i.jsx)(r.h4,{id:"implementation-of-1",children:"Implementation of"}),"\n",(0,i.jsxs)(r.p,{children:[(0,i.jsx)(r.a,{href:"/docs/api/interfaces/ErrorHandling",children:"ErrorHandling"}),".",(0,i.jsx)(r.a,{href:"/docs/api/interfaces/ErrorHandling#updatealive",children:"updateAlive"})]}),"\n",(0,i.jsx)(r.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(r.p,{children:(0,i.jsx)(r.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/error-handling.ts#L15",children:"src/core/structures/services/error-handling.ts:15"})})]})}function h(e={}){const{wrapper:r}={...(0,s.R)(),...e.components};return r?(0,i.jsx)(r,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},8453:(e,r,n)=>{n.d(r,{R:()=>t,x:()=>d});var i=n(6540);const s={},l=i.createContext(s);function t(e){const r=i.useContext(l);return i.useMemo((function(){return"function"==typeof e?e(r):{...r,...e}}),[r,e])}function d(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:t(e.components),i.createElement(l.Provider,{value:r},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/916aad9f.4db272d1.js b/assets/js/916aad9f.4db272d1.js deleted file mode 100644 index 4b42dadf1..000000000 --- a/assets/js/916aad9f.4db272d1.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[688],{1277:(e,o,t)=>{t.r(o),t.d(o,{assets:()=>l,contentTitle:()=>s,default:()=>c,frontMatter:()=>a,metadata:()=>i,toc:()=>u});var r=t(4848),n=t(8453);const a={slug:"railway-deploy",title:"Deploying sern with Railway",authors:["Duro"],tags:["guides"]},s=void 0,i={permalink:"/blog/railway-deploy",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2024-02-23-mdx-blog-post.md",source:"@site/blog/2024-02-23-mdx-blog-post.md",title:"Deploying sern with Railway",description:"In this guide, I'll be showing you how to deploy your sern bot with Railway.",date:"2024-02-23T00:00:00.000Z",formattedDate:"February 23, 2024",tags:[{label:"guides",permalink:"/blog/tags/guides"}],readingTime:1.47,hasTruncateMarker:!1,authors:[{name:"Duro",title:"Developer",url:"https://github.com/DuroCodes",imageURL:"https://github.com/DuroCodes.png",key:"Duro"}],frontMatter:{slug:"railway-deploy",title:"Deploying sern with Railway",authors:["Duro"],tags:["guides"]},unlisted:!1,nextItem:{title:"New logo!",permalink:"/blog/newlogo"}},l={authorsImageUrls:[void 0]},u=[{value:"GitHub Repository",id:"github-repository",level:2},{value:"Railway Setup",id:"railway-setup",level:2},{value:"Deploy",id:"deploy",level:2}];function d(e){const o={a:"a",admonition:"admonition",code:"code",h2:"h2",p:"p",...(0,n.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(o.p,{children:["In this guide, I'll be showing you how to deploy your sern bot with ",(0,r.jsx)(o.a,{href:"https://railway.app/",children:"Railway"}),"."]}),"\n",(0,r.jsxs)(o.p,{children:["This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the ",(0,r.jsx)(o.a,{href:"/blog/getting-started",children:"Getting Started"})," guide to set up your bot."]}),"\n",(0,r.jsx)(o.h2,{id:"github-repository",children:"GitHub Repository"}),"\n",(0,r.jsxs)(o.p,{children:["The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the ",(0,r.jsx)(o.a,{href:"https://docs.github.com/en/get-started/quickstart/create-a-repo",children:"GitHub guide"}),"."]}),"\n",(0,r.jsx)(o.p,{children:"Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway."}),"\n",(0,r.jsx)(o.h2,{id:"railway-setup",children:"Railway Setup"}),"\n",(0,r.jsxs)(o.p,{children:["After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at ",(0,r.jsx)(o.a,{href:"https://railway.app/",children:"railway.app"}),"."]}),"\n",(0,r.jsxs)(o.p,{children:["Once you've created your account, navigate to the ",(0,r.jsx)(o.a,{href:"https://railway.app/dashboard",children:"dashboard"}),' and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot\'s repository.']}),"\n",(0,r.jsxs)(o.p,{children:["Once you've selected your repository, click the \"Add Variables\" button to add your bot's environment variables. You'll need your environment variables from your ",(0,r.jsx)(o.code,{children:".env"})," file to add to Railway. (You can also add these later if you want.)"]}),"\n",(0,r.jsx)(o.h2,{id:"deploy",children:"Deploy"}),"\n",(0,r.jsx)(o.p,{children:"Once you've added your environment variables, click the \"Deploy\" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs."}),"\n",(0,r.jsxs)(o.admonition,{type:"note",children:[(0,r.jsxs)(o.p,{children:["Make sure you add your environment variables, and your node start script is correct in your ",(0,r.jsx)(o.code,{children:"package.json"})," file."]}),(0,r.jsx)(o.p,{children:"If you have any issues deploying your bot, you can check the logs for any errors."})]}),"\n",(0,r.jsxs)(o.p,{children:["That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the ",(0,r.jsx)(o.a,{href:"https://sern.dev/discord",children:"sern Discord server"}),"."]})]})}function c(e={}){const{wrapper:o}={...(0,n.R)(),...e.components};return o?(0,r.jsx)(o,{...e,children:(0,r.jsx)(d,{...e})}):d(e)}},8453:(e,o,t)=>{t.d(o,{R:()=>s,x:()=>i});var r=t(6540);const n={},a=r.createContext(n);function s(e){const o=r.useContext(a);return r.useMemo((function(){return"function"==typeof e?e(o):{...o,...e}}),[o,e])}function i(e){let o;return o=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:s(e.components),r.createElement(a.Provider,{value:o},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9201de17.8c27dbe9.js b/assets/js/9201de17.8c27dbe9.js deleted file mode 100644 index 2ac6e36c1..000000000 --- a/assets/js/9201de17.8c27dbe9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5822],{1711:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>d,contentTitle:()=>o,default:()=>u,frontMatter:()=>l,metadata:()=>t,toc:()=>c});var s=i(4848),r=i(8453);const l={},o="Introduction",t={id:"guide/README",title:"Introduction",description:"Welcome to our official guide. This guide will go through all the core features of the framework.",source:"@site/docs/guide/README.md",sourceDirName:"guide",slug:"/guide/",permalink:"/docs/guide/",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/README.md",tags:[],version:"current",frontMatter:{},sidebar:"tutorialSidebar",previous:{title:"publish",permalink:"/docs/cli/publish"},next:{title:"Choosing an IDE",permalink:"/docs/guide/getting-started/choose-ide"}},d={},c=[{value:"You will learn",id:"you-will-learn",level:2},{value:"Working with plugins",id:"working-with-plugins",level:3},{value:"Events",id:"events",level:3},{value:"Good to know",id:"good-to-know",level:3}];function h(e){const n={a:"a",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"introduction",children:"Introduction"}),"\n",(0,s.jsx)(n.p,{children:"Welcome to our official guide. This guide will go through all the core features of the framework."}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"\ud83d\udc96 Thank you for choosing sern to be your framework!"}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"Teaching the discord.js library and / or Javascript / Typescript is out of scope of this project, so the documentation assumes you already know these elements."}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://discord.js.org/#/",children:"discord.js"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://nodejs.dev/en/learn/",children:"javascript"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://www.typescriptlang.org/docs/",children:"typescript"})}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsx)(n.p,{children:"discord.js v14 is the only supported library at the moment"}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"you-will-learn",children:"You will learn"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/goal",children:"sern's goal"})}),"\n",(0,s.jsxs)(n.li,{children:["How to use sern with the ",(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/cli",children:"CLI"})]}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/first-command",children:"Your first command"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/first-command#context-class",children:"The Context class"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/autocomplete",children:"Autocomplete"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/services",children:"Services"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/dependency-injection",children:"dependency injection"})}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"working-with-plugins",children:"Working with plugins"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/plugins",children:"Plugins"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/plugins#command-plugins",children:"Init Plugins"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/plugins#event-plugins",children:"Control Plugins"})}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"events",children:"Events"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/sern-emitter",children:"The SernEmitter class"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/first-event",children:"Your first event"})}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"good-to-know",children:"Good to know"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"/docs/guide/walkthrough/good-to-know",children:"sern.config.json"})}),"\n"]})]})}function u(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>o,x:()=>t});var s=i(6540);const r={},l=s.createContext(r);function o(e){const n=s.useContext(l);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),s.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.f3ae504a.js b/assets/js/935f2afb.f3ae504a.js deleted file mode 100644 index 688b5d8d2..000000000 --- a/assets/js/935f2afb.f3ae504a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8581],{5610: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":"category","label":"API","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Exports","href":"/docs/api/modules","docId":"api/modules","unlisted":false},{"type":"category","label":"Namespaces","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"CommandError","href":"/docs/api/namespaces/CommandError","docId":"api/namespaces/CommandError","unlisted":false},{"type":"link","label":"Presence","href":"/docs/api/namespaces/Presence","docId":"api/namespaces/Presence","unlisted":false},{"type":"link","label":"Sern","href":"/docs/api/namespaces/Sern","docId":"api/namespaces/Sern","unlisted":false}]},{"type":"category","label":"Enumerations","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"CommandType","href":"/docs/api/enums/CommandType","docId":"api/enums/CommandType","unlisted":false},{"type":"link","label":"EventType","href":"/docs/api/enums/EventType","docId":"api/enums/EventType","unlisted":false},{"type":"link","label":"PayloadType","href":"/docs/api/enums/PayloadType","docId":"api/enums/PayloadType","unlisted":false},{"type":"link","label":"PluginType","href":"/docs/api/enums/PluginType","docId":"api/enums/PluginType","unlisted":false},{"type":"link","label":"SernError","href":"/docs/api/enums/SernError","docId":"api/enums/SernError","unlisted":false}]},{"type":"category","label":"Classes","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"CommandExecutable","href":"/docs/api/classes/CommandExecutable","docId":"api/classes/CommandExecutable","unlisted":false},{"type":"link","label":"Context","href":"/docs/api/classes/Context","docId":"api/classes/Context","unlisted":false},{"type":"link","label":"DefaultErrorHandling","href":"/docs/api/classes/DefaultErrorHandling","docId":"api/classes/DefaultErrorHandling","unlisted":false},{"type":"link","label":"DefaultLogging","href":"/docs/api/classes/DefaultLogging","docId":"api/classes/DefaultLogging","unlisted":false},{"type":"link","label":"DefaultModuleManager","href":"/docs/api/classes/DefaultModuleManager","docId":"api/classes/DefaultModuleManager","unlisted":false},{"type":"link","label":"EventExecutable","href":"/docs/api/classes/EventExecutable","docId":"api/classes/EventExecutable","unlisted":false},{"type":"link","label":"ModuleStore","href":"/docs/api/classes/ModuleStore","docId":"api/classes/ModuleStore","unlisted":false},{"type":"link","label":"SernEmitter","href":"/docs/api/classes/SernEmitter","docId":"api/classes/SernEmitter","unlisted":false}]},{"type":"category","label":"Interfaces","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"AutocompleteCommand","href":"/docs/api/interfaces/AutocompleteCommand","docId":"api/interfaces/AutocompleteCommand","unlisted":false},{"type":"link","label":"AutocompletePlugin","href":"/docs/api/interfaces/AutocompletePlugin","docId":"api/interfaces/AutocompletePlugin","unlisted":false},{"type":"link","label":"BothCommand","href":"/docs/api/interfaces/BothCommand","docId":"api/interfaces/BothCommand","unlisted":false},{"type":"link","label":"ButtonCommand","href":"/docs/api/interfaces/ButtonCommand","docId":"api/interfaces/ButtonCommand","unlisted":false},{"type":"link","label":"ChannelSelectCommand","href":"/docs/api/interfaces/ChannelSelectCommand","docId":"api/interfaces/ChannelSelectCommand","unlisted":false},{"type":"link","label":"CommandModuleDefs","href":"/docs/api/interfaces/CommandModuleDefs","docId":"api/interfaces/CommandModuleDefs","unlisted":false},{"type":"link","label":"CommandPlugin","href":"/docs/api/interfaces/CommandPlugin","docId":"api/interfaces/CommandPlugin","unlisted":false},{"type":"link","label":"ContextMenuMsg","href":"/docs/api/interfaces/ContextMenuMsg","docId":"api/interfaces/ContextMenuMsg","unlisted":false},{"type":"link","label":"ContextMenuUser","href":"/docs/api/interfaces/ContextMenuUser","docId":"api/interfaces/ContextMenuUser","unlisted":false},{"type":"link","label":"ControlPlugin","href":"/docs/api/interfaces/ControlPlugin","docId":"api/interfaces/ControlPlugin","unlisted":false},{"type":"link","label":"Controller","href":"/docs/api/interfaces/Controller","docId":"api/interfaces/Controller","unlisted":false},{"type":"link","label":"CoreDependencies","href":"/docs/api/interfaces/CoreDependencies","docId":"api/interfaces/CoreDependencies","unlisted":false},{"type":"link","label":"CoreModuleStore","href":"/docs/api/interfaces/CoreModuleStore","docId":"api/interfaces/CoreModuleStore","unlisted":false},{"type":"link","label":"Dependencies","href":"/docs/api/interfaces/Dependencies","docId":"api/interfaces/Dependencies","unlisted":false},{"type":"link","label":"DependencyConfiguration","href":"/docs/api/interfaces/DependencyConfiguration","docId":"api/interfaces/DependencyConfiguration","unlisted":false},{"type":"link","label":"DiscordEmitterPlugin","href":"/docs/api/interfaces/DiscordEmitterPlugin","docId":"api/interfaces/DiscordEmitterPlugin","unlisted":false},{"type":"link","label":"DiscordEventCommand","href":"/docs/api/interfaces/DiscordEventCommand","docId":"api/interfaces/DiscordEventCommand","unlisted":false},{"type":"link","label":"DiscordEventPlugin","href":"/docs/api/interfaces/DiscordEventPlugin","docId":"api/interfaces/DiscordEventPlugin","unlisted":false},{"type":"link","label":"Disposable","href":"/docs/api/interfaces/Disposable","docId":"api/interfaces/Disposable","unlisted":false},{"type":"link","label":"Emitter","href":"/docs/api/interfaces/Emitter","docId":"api/interfaces/Emitter","unlisted":false},{"type":"link","label":"ErrorHandling","href":"/docs/api/interfaces/ErrorHandling","docId":"api/interfaces/ErrorHandling","unlisted":false},{"type":"link","label":"EventModuleDefs","href":"/docs/api/interfaces/EventModuleDefs","docId":"api/interfaces/EventModuleDefs","unlisted":false},{"type":"link","label":"EventPlugin","href":"/docs/api/interfaces/EventPlugin","docId":"api/interfaces/EventPlugin","unlisted":false},{"type":"link","label":"ExternalEmitterPlugin","href":"/docs/api/interfaces/ExternalEmitterPlugin","docId":"api/interfaces/ExternalEmitterPlugin","unlisted":false},{"type":"link","label":"ExternalEventCommand","href":"/docs/api/interfaces/ExternalEventCommand","docId":"api/interfaces/ExternalEventCommand","unlisted":false},{"type":"link","label":"ExternalEventPlugin","href":"/docs/api/interfaces/ExternalEventPlugin","docId":"api/interfaces/ExternalEventPlugin","unlisted":false},{"type":"link","label":"Init","href":"/docs/api/interfaces/Init","docId":"api/interfaces/Init","unlisted":false},{"type":"link","label":"InitArgs","href":"/docs/api/interfaces/InitArgs","docId":"api/interfaces/InitArgs","unlisted":false},{"type":"link","label":"InitPlugin","href":"/docs/api/interfaces/InitPlugin","docId":"api/interfaces/InitPlugin","unlisted":false},{"type":"link","label":"Logging","href":"/docs/api/interfaces/Logging","docId":"api/interfaces/Logging","unlisted":false},{"type":"link","label":"MentionableSelectCommand","href":"/docs/api/interfaces/MentionableSelectCommand","docId":"api/interfaces/MentionableSelectCommand","unlisted":false},{"type":"link","label":"ModalSubmitCommand","href":"/docs/api/interfaces/ModalSubmitCommand","docId":"api/interfaces/ModalSubmitCommand","unlisted":false},{"type":"link","label":"Module","href":"/docs/api/interfaces/Module","docId":"api/interfaces/Module","unlisted":false},{"type":"link","label":"ModuleManager","href":"/docs/api/interfaces/ModuleManager","docId":"api/interfaces/ModuleManager","unlisted":false},{"type":"link","label":"Plugin","href":"/docs/api/interfaces/Plugin","docId":"api/interfaces/Plugin","unlisted":false},{"type":"link","label":"RoleSelectCommand","href":"/docs/api/interfaces/RoleSelectCommand","docId":"api/interfaces/RoleSelectCommand","unlisted":false},{"type":"link","label":"SernAutocompleteData","href":"/docs/api/interfaces/SernAutocompleteData","docId":"api/interfaces/SernAutocompleteData","unlisted":false},{"type":"link","label":"SernEmitterPlugin","href":"/docs/api/interfaces/SernEmitterPlugin","docId":"api/interfaces/SernEmitterPlugin","unlisted":false},{"type":"link","label":"SernEventCommand","href":"/docs/api/interfaces/SernEventCommand","docId":"api/interfaces/SernEventCommand","unlisted":false},{"type":"link","label":"SernEventPlugin","href":"/docs/api/interfaces/SernEventPlugin","docId":"api/interfaces/SernEventPlugin","unlisted":false},{"type":"link","label":"SernEventsMapping","href":"/docs/api/interfaces/SernEventsMapping","docId":"api/interfaces/SernEventsMapping","unlisted":false},{"type":"link","label":"SernSubCommandData","href":"/docs/api/interfaces/SernSubCommandData","docId":"api/interfaces/SernSubCommandData","unlisted":false},{"type":"link","label":"SernSubCommandGroupData","href":"/docs/api/interfaces/SernSubCommandGroupData","docId":"api/interfaces/SernSubCommandGroupData","unlisted":false},{"type":"link","label":"SlashCommand","href":"/docs/api/interfaces/SlashCommand","docId":"api/interfaces/SlashCommand","unlisted":false},{"type":"link","label":"StringSelectCommand","href":"/docs/api/interfaces/StringSelectCommand","docId":"api/interfaces/StringSelectCommand","unlisted":false},{"type":"link","label":"TextCommand","href":"/docs/api/interfaces/TextCommand","docId":"api/interfaces/TextCommand","unlisted":false},{"type":"link","label":"UserSelectCommand","href":"/docs/api/interfaces/UserSelectCommand","docId":"api/interfaces/UserSelectCommand","unlisted":false},{"type":"link","label":"Wrapper","href":"/docs/api/interfaces/Wrapper","docId":"api/interfaces/Wrapper","unlisted":false},{"type":"link","label":"Response","href":"/docs/api/interfaces/CommandError.Response","docId":"api/interfaces/CommandError.Response","unlisted":false},{"type":"link","label":"Result","href":"/docs/api/interfaces/Presence.Result","docId":"api/interfaces/Presence.Result","unlisted":false}]}],"href":"/docs/api/"},{"type":"link","label":"Welcome!","href":"/docs/intro","docId":"intro","unlisted":false},{"type":"category","label":"CLI","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"build","href":"/docs/cli/build","docId":"cli/build","unlisted":false},{"type":"link","label":"clear","href":"/docs/cli/clear","docId":"cli/clear","unlisted":false},{"type":"link","label":"extra","href":"/docs/cli/extra","docId":"cli/extra","unlisted":false},{"type":"link","label":"publish","href":"/docs/cli/publish","docId":"cli/publish","unlisted":false}],"href":"/docs/cli/"},{"type":"category","label":"Introduction","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Getting Started","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Choosing an IDE","href":"/docs/guide/getting-started/choose-ide","docId":"guide/getting-started/choose-ide","unlisted":false},{"type":"link","label":"Preparing to Code","href":"/docs/guide/getting-started/preparing","docId":"guide/getting-started/preparing","unlisted":false}]},{"type":"category","label":"Walkthrough","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Goal","href":"/docs/guide/walkthrough/goal","docId":"guide/walkthrough/goal","unlisted":false},{"type":"link","label":"Create a new project","href":"/docs/guide/walkthrough/new-project","docId":"guide/walkthrough/new-project","unlisted":false},{"type":"link","label":"CLI","href":"/docs/guide/walkthrough/cli","docId":"guide/walkthrough/cli","unlisted":false},{"type":"link","label":"Transition from v2 to v3","href":"/docs/guide/walkthrough/transition","docId":"guide/walkthrough/transition","unlisted":false},{"type":"link","label":"First Command","href":"/docs/guide/walkthrough/first-command","docId":"guide/walkthrough/first-command","unlisted":false},{"type":"link","label":"First Event Module","href":"/docs/guide/walkthrough/first-event","docId":"guide/walkthrough/first-event","unlisted":false},{"type":"link","label":"Plugins","href":"/docs/guide/walkthrough/plugins","docId":"guide/walkthrough/plugins","unlisted":false},{"type":"link","label":"Services","href":"/docs/guide/walkthrough/services","docId":"guide/walkthrough/services","unlisted":false},{"type":"link","label":"Autocomplete","href":"/docs/guide/walkthrough/autocomplete","docId":"guide/walkthrough/autocomplete","unlisted":false},{"type":"link","label":"Dependency Injection","href":"/docs/guide/walkthrough/dependency-injection","docId":"guide/walkthrough/dependency-injection","unlisted":false},{"type":"link","label":"The SernEmitter class","href":"/docs/guide/walkthrough/sern-emitter","docId":"guide/walkthrough/sern-emitter","unlisted":false},{"type":"link","label":"Conclusion","href":"/docs/guide/walkthrough/conclusion","docId":"guide/walkthrough/conclusion","unlisted":false},{"type":"link","label":"Good to know","href":"/docs/guide/walkthrough/good-to-know","docId":"guide/walkthrough/good-to-know","unlisted":false}]}],"href":"/docs/guide/"}]},"docs":{"api/classes/CommandExecutable":{"id":"api/classes/CommandExecutable","title":"Class: CommandExecutable<Type>","description":"Deprecated","sidebar":"tutorialSidebar"},"api/classes/Context":{"id":"api/classes/Context","title":"Class: Context","description":"Since","sidebar":"tutorialSidebar"},"api/classes/DefaultErrorHandling":{"id":"api/classes/DefaultErrorHandling","title":"Class: DefaultErrorHandling","description":"Since","sidebar":"tutorialSidebar"},"api/classes/DefaultLogging":{"id":"api/classes/DefaultLogging","title":"Class: DefaultLogging","description":"Since","sidebar":"tutorialSidebar"},"api/classes/DefaultModuleManager":{"id":"api/classes/DefaultModuleManager","title":"Class: DefaultModuleManager","description":"Since","sidebar":"tutorialSidebar"},"api/classes/EventExecutable":{"id":"api/classes/EventExecutable","title":"Class: EventExecutable<Type>","description":"Deprecated","sidebar":"tutorialSidebar"},"api/classes/ModuleStore":{"id":"api/classes/ModuleStore","title":"Class: ModuleStore","description":"Constructors","sidebar":"tutorialSidebar"},"api/classes/SernEmitter":{"id":"api/classes/SernEmitter","title":"Class: SernEmitter","description":"Since","sidebar":"tutorialSidebar"},"api/enums/CommandType":{"id":"api/enums/CommandType","title":"Enumeration: CommandType","description":"Since","sidebar":"tutorialSidebar"},"api/enums/EventType":{"id":"api/enums/EventType","title":"Enumeration: EventType","description":"A bitfield that discriminates event modules","sidebar":"tutorialSidebar"},"api/enums/PayloadType":{"id":"api/enums/PayloadType","title":"Enumeration: PayloadType","description":"Enumeration Members","sidebar":"tutorialSidebar"},"api/enums/PluginType":{"id":"api/enums/PluginType","title":"Enumeration: PluginType","description":"A bitfield that discriminates plugins","sidebar":"tutorialSidebar"},"api/enums/SernError":{"id":"api/enums/SernError","title":"Enumeration: SernError","description":"Enumeration Members","sidebar":"tutorialSidebar"},"api/index":{"id":"api/index","title":"@sern/handler","description":"Handlers. Redefined.","sidebar":"tutorialSidebar"},"api/interfaces/AutocompleteCommand":{"id":"api/interfaces/AutocompleteCommand","title":"Interface: AutocompleteCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/AutocompletePlugin":{"id":"api/interfaces/AutocompletePlugin","title":"Interface: AutocompletePlugin","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/BothCommand":{"id":"api/interfaces/BothCommand","title":"Interface: BothCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ButtonCommand":{"id":"api/interfaces/ButtonCommand","title":"Interface: ButtonCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ChannelSelectCommand":{"id":"api/interfaces/ChannelSelectCommand","title":"Interface: ChannelSelectCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/CommandError.Response":{"id":"api/interfaces/CommandError.Response","title":"Interface: Response","description":"CommandError.Response","sidebar":"tutorialSidebar"},"api/interfaces/CommandModuleDefs":{"id":"api/interfaces/CommandModuleDefs","title":"Interface: CommandModuleDefs","description":"Properties","sidebar":"tutorialSidebar"},"api/interfaces/CommandPlugin":{"id":"api/interfaces/CommandPlugin","title":"Interface: CommandPlugin<T>","description":"Deprecated","sidebar":"tutorialSidebar"},"api/interfaces/ContextMenuMsg":{"id":"api/interfaces/ContextMenuMsg","title":"Interface: ContextMenuMsg","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ContextMenuUser":{"id":"api/interfaces/ContextMenuUser","title":"Interface: ContextMenuUser","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/Controller":{"id":"api/interfaces/Controller","title":"Interface: Controller","description":"Properties","sidebar":"tutorialSidebar"},"api/interfaces/ControlPlugin":{"id":"api/interfaces/ControlPlugin","title":"Interface: ControlPlugin<Args>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/CoreDependencies":{"id":"api/interfaces/CoreDependencies","title":"Interface: CoreDependencies","description":"Properties","sidebar":"tutorialSidebar"},"api/interfaces/CoreModuleStore":{"id":"api/interfaces/CoreModuleStore","title":"Interface: CoreModuleStore","description":"Represents a core module store that stores IDs mapped to file paths.","sidebar":"tutorialSidebar"},"api/interfaces/Dependencies":{"id":"api/interfaces/Dependencies","title":"Interface: Dependencies","description":"Properties","sidebar":"tutorialSidebar"},"api/interfaces/DependencyConfiguration":{"id":"api/interfaces/DependencyConfiguration","title":"Interface: DependencyConfiguration<T>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/DiscordEmitterPlugin":{"id":"api/interfaces/DiscordEmitterPlugin","title":"Interface: DiscordEmitterPlugin","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/DiscordEventCommand":{"id":"api/interfaces/DiscordEventCommand","title":"Interface: DiscordEventCommand<T>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/DiscordEventPlugin":{"id":"api/interfaces/DiscordEventPlugin","title":"Interface: DiscordEventPlugin<T>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/Disposable":{"id":"api/interfaces/Disposable","title":"Interface: Disposable","description":"Represents a Disposable contract.","sidebar":"tutorialSidebar"},"api/interfaces/Emitter":{"id":"api/interfaces/Emitter","title":"Interface: Emitter","description":"Methods","sidebar":"tutorialSidebar"},"api/interfaces/ErrorHandling":{"id":"api/interfaces/ErrorHandling","title":"Interface: ErrorHandling","description":"Since","sidebar":"tutorialSidebar"},"api/interfaces/EventModuleDefs":{"id":"api/interfaces/EventModuleDefs","title":"Interface: EventModuleDefs","description":"Properties","sidebar":"tutorialSidebar"},"api/interfaces/EventPlugin":{"id":"api/interfaces/EventPlugin","title":"Interface: EventPlugin<T>","description":"Deprecated","sidebar":"tutorialSidebar"},"api/interfaces/ExternalEmitterPlugin":{"id":"api/interfaces/ExternalEmitterPlugin","title":"Interface: ExternalEmitterPlugin","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ExternalEventCommand":{"id":"api/interfaces/ExternalEventCommand","title":"Interface: ExternalEventCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ExternalEventPlugin":{"id":"api/interfaces/ExternalEventPlugin","title":"Interface: ExternalEventPlugin","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/Init":{"id":"api/interfaces/Init","title":"Interface: Init","description":"Represents an initialization contract.","sidebar":"tutorialSidebar"},"api/interfaces/InitArgs":{"id":"api/interfaces/InitArgs","title":"Interface: InitArgs<T>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/InitPlugin":{"id":"api/interfaces/InitPlugin","title":"Interface: InitPlugin<Args>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/Logging":{"id":"api/interfaces/Logging","title":"Interface: Logging<T>","description":"Since","sidebar":"tutorialSidebar"},"api/interfaces/MentionableSelectCommand":{"id":"api/interfaces/MentionableSelectCommand","title":"Interface: MentionableSelectCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ModalSubmitCommand":{"id":"api/interfaces/ModalSubmitCommand","title":"Interface: ModalSubmitCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/Module":{"id":"api/interfaces/Module","title":"Interface: Module","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/ModuleManager":{"id":"api/interfaces/ModuleManager","title":"Interface: ModuleManager","description":"Since","sidebar":"tutorialSidebar"},"api/interfaces/Plugin":{"id":"api/interfaces/Plugin","title":"Interface: Plugin<Args>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/Presence.Result":{"id":"api/interfaces/Presence.Result","title":"Interface: Result","description":"Presence.Result","sidebar":"tutorialSidebar"},"api/interfaces/RoleSelectCommand":{"id":"api/interfaces/RoleSelectCommand","title":"Interface: RoleSelectCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/SernAutocompleteData":{"id":"api/interfaces/SernAutocompleteData","title":"Interface: SernAutocompleteData","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/SernEmitterPlugin":{"id":"api/interfaces/SernEmitterPlugin","title":"Interface: SernEmitterPlugin","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/SernEventCommand":{"id":"api/interfaces/SernEventCommand","title":"Interface: SernEventCommand<T>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/SernEventPlugin":{"id":"api/interfaces/SernEventPlugin","title":"Interface: SernEventPlugin<T>","description":"Type parameters","sidebar":"tutorialSidebar"},"api/interfaces/SernEventsMapping":{"id":"api/interfaces/SernEventsMapping","title":"Interface: SernEventsMapping","description":"Properties","sidebar":"tutorialSidebar"},"api/interfaces/SernSubCommandData":{"id":"api/interfaces/SernSubCommandData","title":"Interface: SernSubCommandData","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/SernSubCommandGroupData":{"id":"api/interfaces/SernSubCommandGroupData","title":"Interface: SernSubCommandGroupData","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/SlashCommand":{"id":"api/interfaces/SlashCommand","title":"Interface: SlashCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/StringSelectCommand":{"id":"api/interfaces/StringSelectCommand","title":"Interface: StringSelectCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/TextCommand":{"id":"api/interfaces/TextCommand","title":"Interface: TextCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/UserSelectCommand":{"id":"api/interfaces/UserSelectCommand","title":"Interface: UserSelectCommand","description":"Hierarchy","sidebar":"tutorialSidebar"},"api/interfaces/Wrapper":{"id":"api/interfaces/Wrapper","title":"Interface: Wrapper","description":"Properties","sidebar":"tutorialSidebar"},"api/modules":{"id":"api/modules","title":"@sern/handler","description":"Namespaces","sidebar":"tutorialSidebar"},"api/namespaces/CommandError":{"id":"api/namespaces/CommandError","title":"Namespace: CommandError","description":"Interfaces","sidebar":"tutorialSidebar"},"api/namespaces/Presence":{"id":"api/namespaces/Presence","title":"Namespace: Presence","description":"Interfaces","sidebar":"tutorialSidebar"},"api/namespaces/Sern":{"id":"api/namespaces/Sern","title":"Namespace: Sern","description":"Functions","sidebar":"tutorialSidebar"},"cli/build":{"id":"cli/build","title":"build","description":"Guiding Principles","sidebar":"tutorialSidebar"},"cli/clear":{"id":"cli/clear","title":"clear","description":"Implicits","sidebar":"tutorialSidebar"},"cli/extra":{"id":"cli/extra","title":"extra","description":"This command is pretty straightfoward. Install utilities into your application. Assumes you have a sern.config.json.","sidebar":"tutorialSidebar"},"cli/publish":{"id":"cli/publish","title":"publish","description":"Implicits","sidebar":"tutorialSidebar"},"cli/README":{"id":"cli/README","title":"CLI","description":"Publish commands to the API, install plugins, and use other tools provided by our cli.","sidebar":"tutorialSidebar"},"guide/getting-started/choose-ide":{"id":"guide/getting-started/choose-ide","title":"Choosing an IDE","description":"Choosing an IDE is a matter of personal preference. They make programming easier. The following are some","sidebar":"tutorialSidebar"},"guide/getting-started/preparing":{"id":"guide/getting-started/preparing","title":"Preparing to Code","description":"After installing an IDE, you need to install node.","sidebar":"tutorialSidebar"},"guide/README":{"id":"guide/README","title":"Introduction","description":"Welcome to our official guide. This guide will go through all the core features of the framework.","sidebar":"tutorialSidebar"},"guide/walkthrough/autocomplete":{"id":"guide/walkthrough/autocomplete","title":"Autocomplete","description":"Autocomplete is a special interaction where it can happen on multiple options on a single command. We\'ve handled this with a simple","sidebar":"tutorialSidebar"},"guide/walkthrough/cli":{"id":"guide/walkthrough/cli","title":"CLI","description":"Setting up the CLI is easy.","sidebar":"tutorialSidebar"},"guide/walkthrough/conclusion":{"id":"guide/walkthrough/conclusion","title":"Conclusion","description":"If you reached this far, thank you for reading! We hope you have learned the necessities you need","sidebar":"tutorialSidebar"},"guide/walkthrough/dependency-injection":{"id":"guide/walkthrough/dependency-injection","title":"Dependency Injection","description":"This contains version 2 code. Please view transitioning to v3","sidebar":"tutorialSidebar"},"guide/walkthrough/first-command":{"id":"guide/walkthrough/first-command","title":"First Command","description":"We will dissect a basic command.","sidebar":"tutorialSidebar"},"guide/walkthrough/first-event":{"id":"guide/walkthrough/first-event","title":"First Event Module","description":"We will dissect a basic event module.","sidebar":"tutorialSidebar"},"guide/walkthrough/goal":{"id":"guide/walkthrough/goal","title":"Goal","description":"This walkthrough will be written in TypeScript but will have JavaScript snippets throughout.","sidebar":"tutorialSidebar"},"guide/walkthrough/good-to-know":{"id":"guide/walkthrough/good-to-know","title":"Good to know","description":"sern.config.json","sidebar":"tutorialSidebar"},"guide/walkthrough/new-project":{"id":"guide/walkthrough/new-project","title":"Create a new project","description":"and follow the interactive prompts.","sidebar":"tutorialSidebar"},"guide/walkthrough/plugins":{"id":"guide/walkthrough/plugins","title":"Plugins","description":"TLDR: Plugins help reduce code repetition and are installable via sern plugins. Put them onto the plugins field of a command/event module.","sidebar":"tutorialSidebar"},"guide/walkthrough/sern-emitter":{"id":"guide/walkthrough/sern-emitter","title":"The SernEmitter class","description":"You\'re shipped with the SernEmitter. This EventEmitter listens to","sidebar":"tutorialSidebar"},"guide/walkthrough/services":{"id":"guide/walkthrough/services","title":"Services","description":"This is version 3 api only!!","sidebar":"tutorialSidebar"},"guide/walkthrough/transition":{"id":"guide/walkthrough/transition","title":"Transition from v2 to v3","description":"v3 comes with the new Service api. To make sure to enable intellisense","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Welcome!","description":"Please read the transition page if you are moving from version 2 to version 3.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/9462.23a81660.js b/assets/js/9462.23a81660.js deleted file mode 100644 index 77125fb18..000000000 --- a/assets/js/9462.23a81660.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9462],{9462:(e,t,r)=>{function n(e,t){var r=void 0;return function(){for(var n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];r&&clearTimeout(r),r=setTimeout((function(){return e.apply(void 0,o)}),t)}}function o(e){return e!==Object(e)}function i(e,t){if(e===t)return!0;if(o(e)||o(t)||"function"==typeof e||"function"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var r=0,n=Object.keys(e);r<n.length;r++){var a=n[r];if(!(a in t))return!1;if(!i(e[a],t[a]))return!1}return!0}r.r(t),r.d(t,{DocSearchModal:()=>vn});var a=function(){};function c(e){var t=e.item,r=e.items;return{index:t.__autocomplete_indexName,items:[t],positions:[1+r.findIndex((function(e){return e.objectID===t.objectID}))],queryID:t.__autocomplete_queryID,algoliaSource:["autocomplete"]}}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,c=[],l=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(s){u=!0,o=s}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return c}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return u(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return u(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var s=["items"],f=["items"];function m(e){return m="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},m(e)}function p(e){return function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return v(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return v(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function d(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function y(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 h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach((function(t){b(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function b(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g(e){return e.map((function(e){var t=e.items,r=d(e,s);return h(h({},r),{},{objectIDs:(null==t?void 0:t.map((function(e){return e.objectID})))||r.objectIDs})}))}function O(e){var t,r,n,o=(t=l((e.version||"").split(".").map(Number),2),r=t[0],n=t[1],r>=3||2===r&&n>=4||1===r&&n>=10);function i(t,r,n){if(o&&void 0!==n){var i=n[0].__autocomplete_algoliaCredentials,a={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(p(r),[{headers:a}]))}else e.apply(void 0,[t].concat(p(r)))}return{init:function(t,r){e("init",{appId:t,apiKey:r})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&i("clickedObjectIDsAfterSearch",g(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&i("clickedObjectIDs",g(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];r.length>0&&e.apply(void 0,["clickedFilters"].concat(r))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&i("convertedObjectIDsAfterSearch",g(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&i("convertedObjectIDs",g(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];r.length>0&&e.apply(void 0,["convertedFilters"].concat(r))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&t.reduce((function(e,t){var r=t.items,n=d(t,f);return[].concat(p(e),p(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,r=[],n=0;n<e.objectIDs.length;n+=t)r.push(h(h({},e),{},{objectIDs:e.objectIDs.slice(n,n+t)}));return r}(h(h({},n),{},{objectIDs:(null==r?void 0:r.map((function(e){return e.objectID})))||n.objectIDs})).map((function(e){return{items:r,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return i("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];r.length>0&&e.apply(void 0,["viewedFilters"].concat(r))}}}function S(e){var t=e.items.reduce((function(e,t){var r;return e[t.__autocomplete_indexName]=(null!==(r=e[t.__autocomplete_indexName])&&void 0!==r?r:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function j(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}function w(e){return w="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},w(e)}function E(e){return function(e){if(Array.isArray(e))return P(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return P(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return P(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function I(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 D(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?I(Object(r),!0).forEach((function(t){A(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):I(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function A(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==w(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==w(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===w(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var k="2.6.0",x="https://cdn.jsdelivr.net/npm/search-insights@".concat(k,"/dist/search-insights.min.js"),C=n((function(e){var t=e.onItemsChange,r=e.items,n=e.insights,o=e.state;t({insights:n,insightsEvents:S({items:r}).map((function(e){return D({eventName:"Items Viewed"},e)})),state:o})}),400);function _(e){var t=function(e){return D({onItemsChange:function(e){var t=e.insights,r=e.insightsEvents;t.viewedObjectIDs.apply(t,E(r.map((function(e){return D(D({},e),{},{algoliaSource:[].concat(E(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onSelect:function(e){var t=e.insights,r=e.insightsEvents;t.clickedObjectIDsAfterSearch.apply(t,E(r.map((function(e){return D(D({},e),{},{algoliaSource:[].concat(E(e.algoliaSource||[]),["autocomplete-internal"])})}))))},onActive:a},e)}(e),r=t.insightsClient,o=t.onItemsChange,l=t.onSelect,u=t.onActive,s=r;r||function(e){if("undefined"!=typeof window)e({window:window})}((function(e){var t=e.window,r=t.AlgoliaAnalyticsObject||"aa";"string"==typeof r&&(s=t[r]),s||(t.AlgoliaAnalyticsObject=r,t[r]||(t[r]=function(){t[r].queue||(t[r].queue=[]);for(var e=arguments.length,n=new Array(e),o=0;o<e;o++)n[o]=arguments[o];t[r].queue.push(n)}),t[r].version=k,s=t[r],function(e){var t="[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete";try{var r=e.document.createElement("script");r.async=!0,r.src=x,r.onerror=function(){console.error(t)},document.body.appendChild(r)}catch(n){console.error(t)}}(t))}));var f=O(s),m={current:[]},p=n((function(e){var t=e.state;if(t.isOpen){var r=t.collections.reduce((function(e,t){return[].concat(E(e),E(t.items))}),[]).filter(j);i(m.current.map((function(e){return e.objectID})),r.map((function(e){return e.objectID})))||(m.current=r,r.length>0&&C({onItemsChange:o,items:r,insights:f,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,r=e.onSelect,n=e.onActive;s("addAlgoliaAgent","insights-plugin"),t({algoliaInsightsPlugin:{__algoliaSearchParameters:{clickAnalytics:!0},insights:f}}),r((function(e){var t=e.item,r=e.state,n=e.event;j(t)&&l({state:r,event:n,insights:f,item:t,insightsEvents:[D({eventName:"Item Selected"},c({item:t,items:m.current}))]})})),n((function(e){var t=e.item,r=e.state,n=e.event;j(t)&&u({state:r,event:n,insights:f,item:t,insightsEvents:[D({eventName:"Item Active"},c({item:t,items:m.current}))]})}))},onStateChange:function(e){var t=e.state;p({state:t})},__autocomplete_pluginOptions:e}}function N(e){return N="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},N(e)}function T(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 q(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==N(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==N(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===N(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function R(e,t,r){var n,o=t.initialState;return{getState:function(){return o},dispatch:function(n,i){var a=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?T(Object(r),!0).forEach((function(t){q(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},o);o=e(o,{type:n,props:t,payload:i}),r({state:o,prevState:a})},pendingRequests:(n=[],{add:function(e){return n.push(e),e.finally((function(){n=n.filter((function(t){return t!==e}))}))},cancelAll:function(){n.forEach((function(e){return e.cancel()}))},isEmpty:function(){return 0===n.length}})}}function L(e){return e.reduce((function(e,t){return e.concat(t)}),[])}function M(e){return M="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},M(e)}function H(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 F(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?H(Object(r),!0).forEach((function(t){U(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):H(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function U(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==M(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==M(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===M(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function B(e){return 0===e.collections.length?0:e.collections.reduce((function(e,t){return e+t.items.length}),0)}var V=0;function K(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 $(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?K(Object(r),!0).forEach((function(t){J(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):K(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function J(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==z(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==z(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===z(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function z(e){return z="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},z(e)}function W(e){return W="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},W(e)}function Q(e){return function(e){if(Array.isArray(e))return Z(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Z(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Z(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function G(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 X(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?G(Object(r),!0).forEach((function(t){Y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):G(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Y(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==W(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==W(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===W(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ee(e,t){var r,n="undefined"!=typeof window?window:{},o=e.plugins||[];return X(X({debug:!1,openOnFocus:!1,placeholder:"",autoFocus:!1,defaultActiveItemId:null,stallThreshold:300,insights:!1,environment:n,shouldPanelOpen:function(e){return B(e.state)>0},reshape:function(e){return e.sources}},e),{},{id:null!==(r=e.id)&&void 0!==r?r:"autocomplete-".concat(V++),plugins:o,initialState:X({activeItemId:null,query:"",completion:null,collections:[],isOpen:!1,status:"idle",context:{}},e.initialState),onStateChange:function(t){var r;null===(r=e.onStateChange)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onStateChange)||void 0===r?void 0:r.call(e,t)}))},onSubmit:function(t){var r;null===(r=e.onSubmit)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onSubmit)||void 0===r?void 0:r.call(e,t)}))},onReset:function(t){var r;null===(r=e.onReset)||void 0===r||r.call(e,t),o.forEach((function(e){var r;return null===(r=e.onReset)||void 0===r?void 0:r.call(e,t)}))},getSources:function(r){return Promise.all([].concat(Q(o.map((function(e){return e.getSources}))),[e.getSources]).filter(Boolean).map((function(e){return function(e,t){var r=[];return Promise.resolve(e(t)).then((function(e){return Array.isArray(e),Promise.all(e.filter((function(e){return Boolean(e)})).map((function(e){if(e.sourceId,r.includes(e.sourceId))throw new Error("[Autocomplete] The `sourceId` ".concat(JSON.stringify(e.sourceId)," is not unique."));r.push(e.sourceId);var t={getItemInputValue:function(e){return e.state.query},getItemUrl:function(){},onSelect:function(e){(0,e.setIsOpen)(!1)},onActive:a,onResolve:a};Object.keys(t).forEach((function(e){t[e].__default=!0}));var n=$($({},t),e);return Promise.resolve(n)})))}))}(e,r)}))).then((function(e){return L(e)})).then((function(e){return e.map((function(e){return X(X({},e),{},{onSelect:function(r){e.onSelect(r),t.forEach((function(e){var t;return null===(t=e.onSelect)||void 0===t?void 0:t.call(e,r)}))},onActive:function(r){e.onActive(r),t.forEach((function(e){var t;return null===(t=e.onActive)||void 0===t?void 0:t.call(e,r)}))},onResolve:function(r){e.onResolve(r),t.forEach((function(e){var t;return null===(t=e.onResolve)||void 0===t?void 0:t.call(e,r)}))}})}))}))},navigator:X({navigate:function(e){var t=e.itemUrl;n.location.assign(t)},navigateNewTab:function(e){var t=e.itemUrl,r=n.open(t,"_blank","noopener");null==r||r.focus()},navigateNewWindow:function(e){var t=e.itemUrl;n.open(t,"_blank","noopener")}},e.navigator)})}function te(e){return te="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},te(e)}function re(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 ne(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?re(Object(r),!0).forEach((function(t){oe(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):re(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function oe(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==te(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==te(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===te(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ie(e){return ie="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},ie(e)}function ae(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 ce(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ae(Object(r),!0).forEach((function(t){le(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ae(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function le(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ie(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==ie(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ie(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ue(e){return function(e){if(Array.isArray(e))return se(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return se(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return se(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function se(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function fe(e){return Boolean(e.execute)}function me(e,t,r){if(o=e,Boolean(null==o?void 0:o.execute)){var n="algolia"===e.requesterId?Object.assign.apply(Object,[{}].concat(ue(Object.keys(r.context).map((function(e){var t;return null===(t=r.context[e])||void 0===t?void 0:t.__algoliaSearchParameters}))))):{};return ce(ce({},e),{},{requests:e.queries.map((function(r){return{query:"algolia"===e.requesterId?ce(ce({},r),{},{params:ce(ce({},n),r.params)}):r,sourceId:t,transformResponse:e.transformResponse}}))})}var o;return{items:e,sourceId:t}}function pe(e){var t=e.reduce((function(e,t){if(!fe(t))return e.push(t),e;var r=t.searchClient,n=t.execute,o=t.requesterId,i=t.requests,a=e.find((function(e){return fe(t)&&fe(e)&&e.searchClient===r&&Boolean(o)&&e.requesterId===o}));if(a){var c;(c=a.items).push.apply(c,ue(i))}else{var l={execute:n,requesterId:o,items:i,searchClient:r};e.push(l)}return e}),[]).map((function(e){if(!fe(e))return Promise.resolve(e);var t=e,r=t.execute,n=t.items;return r({searchClient:t.searchClient,requests:n})}));return Promise.all(t).then((function(e){return L(e)}))}function ve(e,t,r){return t.map((function(t){var n,o=e.filter((function(e){return e.sourceId===t.sourceId})),i=o.map((function(e){return e.items})),a=o[0].transformResponse,c=a?a({results:n=i,hits:n.map((function(e){return e.hits})).filter(Boolean),facetHits:n.map((function(e){var t;return null===(t=e.facetHits)||void 0===t?void 0:t.map((function(e){return{label:e.value,count:e.count,_highlightResult:{label:{value:e.highlighted}}}}))})).filter(Boolean)}):i;return t.onResolve({source:t,results:i,items:c,state:r.getState()}),Array.isArray(c),c.every(Boolean),'The `getItems` function from source "'.concat(t.sourceId,'" must return an array of items but returned ').concat(JSON.stringify(void 0),".\n\nDid you forget to return items?\n\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems"),{source:t,items:c}}))}function de(e,t){var r=t;return{then:function(t,n){return de(e.then(be(t,r,e),be(n,r,e)),r)},catch:function(t){return de(e.catch(be(t,r,e)),r)},finally:function(t){return t&&r.onCancelList.push(t),de(e.finally(be(t&&function(){return r.onCancelList=[],t()},r,e)),r)},cancel:function(){r.isCanceled=!0;var e=r.onCancelList;r.onCancelList=[],e.forEach((function(e){e()}))},isCanceled:function(){return!0===r.isCanceled}}}function ye(e){return de(new Promise((function(t,r){return e(t,r)})),{isCanceled:!1,onCancelList:[]})}function he(e){return de(e,{isCanceled:!1,onCancelList:[]})}function be(e,t,r){return e?function(r){return t.isCanceled?r:e(r)}:r}function ge(e){var t=function(e){var t=e.collections.map((function(e){return e.items.length})).reduce((function(e,t,r){var n=(e[r-1]||0)+t;return e.push(n),e}),[]).reduce((function(t,r){return r<=e.activeItemId?t+1:t}),0);return e.collections[t]}(e);if(!t)return null;var r=t.items[function(e){for(var t=e.state,r=e.collection,n=!1,o=0,i=0;!1===n;){var a=t.collections[o];if(a===r){n=!0;break}i+=a.items.length,o++}return t.activeItemId-i}({state:e,collection:t})],n=t.source;return{item:r,itemInputValue:n.getItemInputValue({item:r,state:e}),itemUrl:n.getItemUrl({item:r,state:e}),source:n}}function Oe(e){return Oe="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},Oe(e)}ye.resolve=function(e){return he(Promise.resolve(e))},ye.reject=function(e){return he(Promise.reject(e))};var Se=["event","nextState","props","query","refresh","store"];function je(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 we(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?je(Object(r),!0).forEach((function(t){Ee(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):je(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ee(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Oe(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==Oe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Oe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Pe(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var Ie,De,Ae,ke=null,xe=(Ie=-1,De=-1,Ae=void 0,function(e){var t=++Ie;return Promise.resolve(e).then((function(e){return Ae&&t<De?Ae:(De=t,Ae=e,e)}))});function Ce(e){var t=e.event,r=e.nextState,n=void 0===r?{}:r,o=e.props,i=e.query,a=e.refresh,c=e.store,l=Pe(e,Se);ke&&o.environment.clearTimeout(ke);var u=l.setCollections,s=l.setIsOpen,f=l.setQuery,m=l.setActiveItemId,p=l.setStatus;if(f(i),m(o.defaultActiveItemId),!i&&!1===o.openOnFocus){var v,d=c.getState().collections.map((function(e){return we(we({},e),{},{items:[]})}));p("idle"),u(d),s(null!==(v=n.isOpen)&&void 0!==v?v:o.shouldPanelOpen({state:c.getState()}));var y=he(xe(d).then((function(){return Promise.resolve()})));return c.pendingRequests.add(y)}p("loading"),ke=o.environment.setTimeout((function(){p("stalled")}),o.stallThreshold);var h=he(xe(o.getSources(we({query:i,refresh:a,state:c.getState()},l)).then((function(e){return Promise.all(e.map((function(e){return Promise.resolve(e.getItems(we({query:i,refresh:a,state:c.getState()},l))).then((function(t){return me(t,e.sourceId,c.getState())}))}))).then(pe).then((function(t){return ve(t,e,c)})).then((function(e){return function(e){var t=e.collections,r=e.props,n=e.state,o=t.reduce((function(e,t){return ne(ne({},e),{},oe({},t.source.sourceId,ne(ne({},t.source),{},{getItems:function(){return L(t.items)}})))}),{}),i=r.plugins.reduce((function(e,t){return t.reshape?t.reshape(e):e}),{sourcesBySourceId:o,state:n}).sourcesBySourceId;return L(r.reshape({sourcesBySourceId:i,sources:Object.values(i),state:n})).filter(Boolean).map((function(e){return{source:e,items:e.getItems()}}))}({collections:e,props:o,state:c.getState()})}))})))).then((function(e){var r;p("idle"),u(e);var f=o.shouldPanelOpen({state:c.getState()});s(null!==(r=n.isOpen)&&void 0!==r?r:o.openOnFocus&&!i&&f||f);var m=ge(c.getState());if(null!==c.getState().activeItemId&&m){var v=m.item,d=m.itemInputValue,y=m.itemUrl,h=m.source;h.onActive(we({event:t,item:v,itemInputValue:d,itemUrl:y,refresh:a,source:h,state:c.getState()},l))}})).finally((function(){p("idle"),ke&&o.environment.clearTimeout(ke)}));return c.pendingRequests.add(h)}function _e(e){return _e="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(e)}var Ne=["event","props","refresh","store"];function Te(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 qe(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Te(Object(r),!0).forEach((function(t){Re(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Te(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Re(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==_e(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==_e(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===_e(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Le(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var Me=/((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;function He(e){return He="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},He(e)}var Fe=["props","refresh","store"],Ue=["inputElement","formElement","panelElement"],Be=["inputElement"],Ve=["inputElement","maxLength"],Ke=["sourceIndex"],$e=["sourceIndex"],Je=["item","source","sourceIndex"];function ze(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 We(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ze(Object(r),!0).forEach((function(t){Qe(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ze(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Qe(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==He(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==He(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===He(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ze(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Ge(e){var t=e.props,r=e.refresh,n=e.store,o=Ze(e,Fe),i=function(e,t){return void 0!==t?"".concat(e,"-").concat(t):e};return{getEnvironmentProps:function(e){var r=e.inputElement,o=e.formElement,i=e.panelElement;function a(e){!n.getState().isOpen&&n.pendingRequests.isEmpty()||e.target===r||!1===[o,i].some((function(t){return r=t,n=e.target,r===n||r.contains(n);var r,n}))&&(n.dispatch("blur",null),t.debug||n.pendingRequests.cancelAll())}return We({onTouchStart:a,onMouseDown:a,onTouchMove:function(e){!1!==n.getState().isOpen&&r===t.environment.document.activeElement&&e.target!==r&&r.blur()}},Ze(e,Ue))},getRootProps:function(e){return We({role:"combobox","aria-expanded":n.getState().isOpen,"aria-haspopup":"listbox","aria-owns":n.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label")},e)},getFormProps:function(e){e.inputElement;return We({action:"",noValidate:!0,role:"search",onSubmit:function(i){var a;i.preventDefault(),t.onSubmit(We({event:i,refresh:r,state:n.getState()},o)),n.dispatch("submit",null),null===(a=e.inputElement)||void 0===a||a.blur()},onReset:function(i){var a;i.preventDefault(),t.onReset(We({event:i,refresh:r,state:n.getState()},o)),n.dispatch("reset",null),null===(a=e.inputElement)||void 0===a||a.focus()}},Ze(e,Be))},getLabelProps:function(e){var r=e||{},n=r.sourceIndex,o=Ze(r,Ke);return We({htmlFor:"".concat(i(t.id,n),"-input"),id:"".concat(i(t.id,n),"-label")},o)},getInputProps:function(e){var i;function c(e){(t.openOnFocus||Boolean(n.getState().query))&&Ce(We({event:e,props:t,query:n.getState().completion||n.getState().query,refresh:r,store:n},o)),n.dispatch("focus",null)}var l=e||{},u=(l.inputElement,l.maxLength),s=void 0===u?512:u,f=Ze(l,Ve),m=ge(n.getState()),p=function(e){return Boolean(e&&e.match(Me))}((null===(i=t.environment.navigator)||void 0===i?void 0:i.userAgent)||""),v=null!=m&&m.itemUrl&&!p?"go":"search";return We({"aria-autocomplete":"both","aria-activedescendant":n.getState().isOpen&&null!==n.getState().activeItemId?"".concat(t.id,"-item-").concat(n.getState().activeItemId):void 0,"aria-controls":n.getState().isOpen?"".concat(t.id,"-list"):void 0,"aria-labelledby":"".concat(t.id,"-label"),value:n.getState().completion||n.getState().query,id:"".concat(t.id,"-input"),autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",enterKeyHint:v,spellCheck:"false",autoFocus:t.autoFocus,placeholder:t.placeholder,maxLength:s,type:"search",onChange:function(e){Ce(We({event:e,props:t,query:e.currentTarget.value.slice(0,s),refresh:r,store:n},o))},onKeyDown:function(e){!function(e){var t=e.event,r=e.props,n=e.refresh,o=e.store,i=Le(e,Ne);if("ArrowUp"===t.key||"ArrowDown"===t.key){var a=function(){var e=r.environment.document.getElementById("".concat(r.id,"-item-").concat(o.getState().activeItemId));e&&(e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView(!1))},c=function(){var e=ge(o.getState());if(null!==o.getState().activeItemId&&e){var r=e.item,a=e.itemInputValue,c=e.itemUrl,l=e.source;l.onActive(qe({event:t,item:r,itemInputValue:a,itemUrl:c,refresh:n,source:l,state:o.getState()},i))}};t.preventDefault(),!1===o.getState().isOpen&&(r.openOnFocus||Boolean(o.getState().query))?Ce(qe({event:t,props:r,query:o.getState().query,refresh:n,store:o},i)).then((function(){o.dispatch(t.key,{nextActiveItemId:r.defaultActiveItemId}),c(),setTimeout(a,0)})):(o.dispatch(t.key,{}),c(),a())}else if("Escape"===t.key)t.preventDefault(),o.dispatch(t.key,null),o.pendingRequests.cancelAll();else if("Tab"===t.key)o.dispatch("blur",null),o.pendingRequests.cancelAll();else if("Enter"===t.key){if(null===o.getState().activeItemId||o.getState().collections.every((function(e){return 0===e.items.length})))return void(r.debug||o.pendingRequests.cancelAll());t.preventDefault();var l=ge(o.getState()),u=l.item,s=l.itemInputValue,f=l.itemUrl,m=l.source;if(t.metaKey||t.ctrlKey)void 0!==f&&(m.onSelect(qe({event:t,item:u,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),r.navigator.navigateNewTab({itemUrl:f,item:u,state:o.getState()}));else if(t.shiftKey)void 0!==f&&(m.onSelect(qe({event:t,item:u,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),r.navigator.navigateNewWindow({itemUrl:f,item:u,state:o.getState()}));else if(t.altKey);else{if(void 0!==f)return m.onSelect(qe({event:t,item:u,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i)),void r.navigator.navigate({itemUrl:f,item:u,state:o.getState()});Ce(qe({event:t,nextState:{isOpen:!1},props:r,query:s,refresh:n,store:o},i)).then((function(){m.onSelect(qe({event:t,item:u,itemInputValue:s,itemUrl:f,refresh:n,source:m,state:o.getState()},i))}))}}}(We({event:e,props:t,refresh:r,store:n},o))},onFocus:c,onBlur:a,onClick:function(r){e.inputElement!==t.environment.document.activeElement||n.getState().isOpen||c(r)}},f)},getPanelProps:function(e){return We({onMouseDown:function(e){e.preventDefault()},onMouseLeave:function(){n.dispatch("mouseleave",null)}},e)},getListProps:function(e){var r=e||{},n=r.sourceIndex,o=Ze(r,$e);return We({role:"listbox","aria-labelledby":"".concat(i(t.id,n),"-label"),id:"".concat(i(t.id,n),"-list")},o)},getItemProps:function(e){var a=e.item,c=e.source,l=e.sourceIndex,u=Ze(e,Je);return We({id:"".concat(i(t.id,l),"-item-").concat(a.__autocomplete_id),role:"option","aria-selected":n.getState().activeItemId===a.__autocomplete_id,onMouseMove:function(e){if(a.__autocomplete_id!==n.getState().activeItemId){n.dispatch("mousemove",a.__autocomplete_id);var t=ge(n.getState());if(null!==n.getState().activeItemId&&t){var i=t.item,c=t.itemInputValue,l=t.itemUrl,u=t.source;u.onActive(We({event:e,item:i,itemInputValue:c,itemUrl:l,refresh:r,source:u,state:n.getState()},o))}}},onMouseDown:function(e){e.preventDefault()},onClick:function(e){var i=c.getItemInputValue({item:a,state:n.getState()}),l=c.getItemUrl({item:a,state:n.getState()});(l?Promise.resolve():Ce(We({event:e,nextState:{isOpen:!1},props:t,query:i,refresh:r,store:n},o))).then((function(){c.onSelect(We({event:e,item:a,itemInputValue:i,itemUrl:l,refresh:r,source:c,state:n.getState()},o))}))}},u)}}}var Xe=[{segment:"autocomplete-core",version:"1.9.3"}];function Ye(e){return Ye="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},Ye(e)}function et(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 tt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?et(Object(r),!0).forEach((function(t){rt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):et(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function rt(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ye(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==Ye(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===Ye(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function nt(e){var t,r,n,o,i=e.plugins,a=e.options,c=null===(t=((null===(r=a.__autocomplete_metadata)||void 0===r?void 0:r.userAgents)||[])[0])||void 0===t?void 0:t.segment,l=c?rt({},c,Object.keys((null===(n=a.__autocomplete_metadata)||void 0===n?void 0:n.options)||{})):{};return{plugins:i.map((function(e){return{name:e.name,options:Object.keys(e.__autocomplete_pluginOptions||[])}})),options:tt({"autocomplete-core":Object.keys(a)},l),ua:Xe.concat((null===(o=a.__autocomplete_metadata)||void 0===o?void 0:o.userAgents)||[])}}function ot(e){var t,r=e.state;return!1===r.isOpen||null===r.activeItemId?null:(null===(t=ge(r))||void 0===t?void 0:t.itemInputValue)||null}function it(e,t,r,n){if(!r)return null;if(e<0&&(null===t||null!==n&&0===t))return r+e;var o=(null===t?-1:t)+e;return o<=-1||o>=r?null===n?null:0:o}function at(e){return at="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},at(e)}function ct(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 lt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ct(Object(r),!0).forEach((function(t){ut(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ct(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ut(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==at(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==at(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===at(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var st=function(e,t){switch(t.type){case"setActiveItemId":case"mousemove":return lt(lt({},e),{},{activeItemId:t.payload});case"setQuery":return lt(lt({},e),{},{query:t.payload,completion:null});case"setCollections":return lt(lt({},e),{},{collections:t.payload});case"setIsOpen":return lt(lt({},e),{},{isOpen:t.payload});case"setStatus":return lt(lt({},e),{},{status:t.payload});case"setContext":return lt(lt({},e),{},{context:lt(lt({},e.context),t.payload)});case"ArrowDown":var r=lt(lt({},e),{},{activeItemId:t.payload.hasOwnProperty("nextActiveItemId")?t.payload.nextActiveItemId:it(1,e.activeItemId,B(e),t.props.defaultActiveItemId)});return lt(lt({},r),{},{completion:ot({state:r})});case"ArrowUp":var n=lt(lt({},e),{},{activeItemId:it(-1,e.activeItemId,B(e),t.props.defaultActiveItemId)});return lt(lt({},n),{},{completion:ot({state:n})});case"Escape":return e.isOpen?lt(lt({},e),{},{activeItemId:null,isOpen:!1,completion:null}):lt(lt({},e),{},{activeItemId:null,query:"",status:"idle",collections:[]});case"submit":return lt(lt({},e),{},{activeItemId:null,isOpen:!1,status:"idle"});case"reset":return lt(lt({},e),{},{activeItemId:!0===t.props.openOnFocus?t.props.defaultActiveItemId:null,status:"idle",query:""});case"focus":return lt(lt({},e),{},{activeItemId:t.props.defaultActiveItemId,isOpen:(t.props.openOnFocus||Boolean(e.query))&&t.props.shouldPanelOpen({state:e})});case"blur":return t.props.debug?e:lt(lt({},e),{},{isOpen:!1,activeItemId:null});case"mouseleave":return lt(lt({},e),{},{activeItemId:t.props.defaultActiveItemId});default:return"The reducer action ".concat(JSON.stringify(t.type)," is not supported."),e}};function ft(e){return ft="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},ft(e)}function mt(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 pt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?mt(Object(r),!0).forEach((function(t){vt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mt(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function vt(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ft(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==ft(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===ft(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function dt(e){var t=[],r=ee(e,t),n=R(st,r,(function(e){var t=e.prevState,n=e.state;r.onStateChange(pt({prevState:t,state:n,refresh:a,navigator:r.navigator},o))})),o=function(e){var t=e.store;return{setActiveItemId:function(e){t.dispatch("setActiveItemId",e)},setQuery:function(e){t.dispatch("setQuery",e)},setCollections:function(e){var r=0,n=e.map((function(e){return F(F({},e),{},{items:L(e.items).map((function(e){return F(F({},e),{},{__autocomplete_id:r++})}))})}));t.dispatch("setCollections",n)},setIsOpen:function(e){t.dispatch("setIsOpen",e)},setStatus:function(e){t.dispatch("setStatus",e)},setContext:function(e){t.dispatch("setContext",e)}}}({store:n}),i=Ge(pt({props:r,refresh:a,store:n,navigator:r.navigator},o));function a(){return Ce(pt({event:new Event("input"),nextState:{isOpen:n.getState().isOpen},props:r,navigator:r.navigator,query:n.getState().query,refresh:a,store:n},o))}if(e.insights&&!r.plugins.some((function(e){return"aa.algoliaInsightsPlugin"===e.name}))){var c="boolean"==typeof e.insights?{}:e.insights;r.plugins.push(_(c))}return r.plugins.forEach((function(e){var n;return null===(n=e.subscribe)||void 0===n?void 0:n.call(e,pt(pt({},o),{},{navigator:r.navigator,refresh:a,onSelect:function(e){t.push({onSelect:e})},onActive:function(e){t.push({onActive:e})},onResolve:function(e){t.push({onResolve:e})}}))})),function(e){var t,r,n=e.metadata,o=e.environment;if(null===(t=o.navigator)||void 0===t||null===(r=t.userAgent)||void 0===r?void 0:r.includes("Algolia Crawler")){var i=o.document.createElement("meta"),a=o.document.querySelector("head");i.name="algolia:metadata",setTimeout((function(){i.content=JSON.stringify(n),a.appendChild(i)}),0)}}({metadata:nt({plugins:r.plugins,options:e}),environment:r.environment}),pt(pt({refresh:a,navigator:r.navigator},i),o)}var yt=r(6540),ht=64;function bt(e){var t=e.translations,r=(void 0===t?{}:t).searchByText,n=void 0===r?"Search by":r;return yt.createElement("a",{href:"https://www.algolia.com/ref/docsearch/?utm_source=".concat(window.location.hostname,"&utm_medium=referral&utm_content=powered_by&utm_campaign=docsearch"),target:"_blank",rel:"noopener noreferrer"},yt.createElement("span",{className:"DocSearch-Label"},n),yt.createElement("svg",{width:"77",height:"19","aria-label":"Algolia",role:"img",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 2196.2 500"},yt.createElement("defs",null,yt.createElement("style",null,".cls-1,.cls-2{fill:#003dff;}.cls-2{fill-rule:evenodd;}")),yt.createElement("path",{className:"cls-2",d:"M1070.38,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),yt.createElement("rect",{className:"cls-1",x:"1845.88",y:"104.73",width:"62.58",height:"277.9",rx:"5.9",ry:"5.9"}),yt.createElement("path",{className:"cls-2",d:"M1851.78,71.38h50.77c3.26,0,5.9-2.64,5.9-5.9V5.9c0-3.62-3.24-6.39-6.82-5.83l-50.77,7.95c-2.87,.45-4.99,2.92-4.99,5.83v51.62c0,3.26,2.64,5.9,5.9,5.9Z"}),yt.createElement("path",{className:"cls-2",d:"M1764.03,275.3V5.91c0-3.63-3.24-6.39-6.82-5.83l-50.46,7.94c-2.87,.45-4.99,2.93-4.99,5.84l.17,273.22c0,12.92,0,92.7,95.97,95.49,3.33,.1,6.09-2.58,6.09-5.91v-40.78c0-2.96-2.19-5.51-5.12-5.84-34.85-4.01-34.85-47.57-34.85-54.72Z"}),yt.createElement("path",{className:"cls-2",d:"M1631.95,142.72c-11.14-12.25-24.83-21.65-40.78-28.31-15.92-6.53-33.26-9.85-52.07-9.85-18.78,0-36.15,3.17-51.92,9.85-15.59,6.66-29.29,16.05-40.76,28.31-11.47,12.23-20.38,26.87-26.76,44.03-6.38,17.17-9.24,37.37-9.24,58.36,0,20.99,3.19,36.87,9.55,54.21,6.38,17.32,15.14,32.11,26.45,44.36,11.29,12.23,24.83,21.62,40.6,28.46,15.77,6.83,40.12,10.33,52.4,10.48,12.25,0,36.78-3.82,52.7-10.48,15.92-6.68,29.46-16.23,40.78-28.46,11.29-12.25,20.05-27.04,26.25-44.36,6.22-17.34,9.24-33.22,9.24-54.21,0-20.99-3.34-41.19-10.03-58.36-6.38-17.17-15.14-31.8-26.43-44.03Zm-44.43,163.75c-11.47,15.75-27.56,23.7-48.09,23.7-20.55,0-36.63-7.8-48.1-23.7-11.47-15.75-17.21-34.01-17.21-61.2,0-26.89,5.59-49.14,17.06-64.87,11.45-15.75,27.54-23.52,48.07-23.52,20.55,0,36.63,7.78,48.09,23.52,11.47,15.57,17.36,37.98,17.36,64.87,0,27.19-5.72,45.3-17.19,61.2Z"}),yt.createElement("path",{className:"cls-2",d:"M894.42,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),yt.createElement("path",{className:"cls-2",d:"M2133.97,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-14.52,22.58-22.99,49.63-22.99,78.73,0,44.89,20.13,84.92,51.59,111.1,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47,1.23,0,2.46-.03,3.68-.09,.36-.02,.71-.05,1.07-.07,.87-.05,1.75-.11,2.62-.2,.34-.03,.68-.08,1.02-.12,.91-.1,1.82-.21,2.73-.34,.21-.03,.42-.07,.63-.1,32.89-5.07,61.56-30.82,70.9-62.81v57.83c0,3.26,2.64,5.9,5.9,5.9h50.42c3.26,0,5.9-2.64,5.9-5.9V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,206.92c-12.2,10.16-27.97,13.98-44.84,15.12-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-42.24,0-77.12-35.89-77.12-79.37,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33v142.83Z"}),yt.createElement("path",{className:"cls-2",d:"M1314.05,104.73h-49.33c-48.36,0-90.91,25.48-115.75,64.1-11.79,18.34-19.6,39.64-22.11,62.59-.58,5.3-.88,10.68-.88,16.14s.31,11.15,.93,16.59c4.28,38.09,23.14,71.61,50.66,94.52,2.93,2.6,6.05,4.98,9.31,7.14,12.86,8.49,28.11,13.47,44.52,13.47h0c17.99,0,34.61-5.93,48.16-15.97,16.29-11.58,28.88-28.54,34.48-47.75v50.26h-.11v11.08c0,21.84-5.71,38.27-17.34,49.36-11.61,11.08-31.04,16.63-58.25,16.63-11.12,0-28.79-.59-46.6-2.41-2.83-.29-5.46,1.5-6.27,4.22l-12.78,43.11c-1.02,3.46,1.27,7.02,4.83,7.53,21.52,3.08,42.52,4.68,54.65,4.68,48.91,0,85.16-10.75,108.89-32.21,21.48-19.41,33.15-48.89,35.2-88.52V110.63c0-3.26-2.64-5.9-5.9-5.9h-56.32Zm0,64.1s.65,139.13,0,143.36c-12.08,9.77-27.11,13.59-43.49,14.7-.16,.01-.33,.03-.49,.04-1.12,.07-2.24,.1-3.36,.1-1.32,0-2.63-.03-3.94-.1-40.41-2.11-74.52-37.26-74.52-79.38,0-10.25,1.96-20.01,5.42-28.98,11.22-29.12,38.77-49.74,71.06-49.74h49.33Z"}),yt.createElement("path",{className:"cls-1",d:"M249.83,0C113.3,0,2,110.09,.03,246.16c-2,138.19,110.12,252.7,248.33,253.5,42.68,.25,83.79-10.19,120.3-30.03,3.56-1.93,4.11-6.83,1.08-9.51l-23.38-20.72c-4.75-4.21-11.51-5.4-17.36-2.92-25.48,10.84-53.17,16.38-81.71,16.03-111.68-1.37-201.91-94.29-200.13-205.96,1.76-110.26,92-199.41,202.67-199.41h202.69V407.41l-115-102.18c-3.72-3.31-9.42-2.66-12.42,1.31-18.46,24.44-48.53,39.64-81.93,37.34-46.33-3.2-83.87-40.5-87.34-86.81-4.15-55.24,39.63-101.52,94-101.52,49.18,0,89.68,37.85,93.91,85.95,.38,4.28,2.31,8.27,5.52,11.12l29.95,26.55c3.4,3.01,8.79,1.17,9.63-3.3,2.16-11.55,2.92-23.58,2.07-35.92-4.82-70.34-61.8-126.93-132.17-131.26-80.68-4.97-148.13,58.14-150.27,137.25-2.09,77.1,61.08,143.56,138.19,145.26,32.19,.71,62.03-9.41,86.14-26.95l150.26,133.2c6.44,5.71,16.61,1.14,16.61-7.47V9.48C499.66,4.25,495.42,0,490.18,0H249.83Z"})))}function gt(e){return yt.createElement("svg",{width:"15",height:"15","aria-label":e.ariaLabel,role:"img"},yt.createElement("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"},e.children))}function Ot(e){var t=e.translations,r=void 0===t?{}:t,n=r.selectText,o=void 0===n?"to select":n,i=r.selectKeyAriaLabel,a=void 0===i?"Enter key":i,c=r.navigateText,l=void 0===c?"to navigate":c,u=r.navigateUpKeyAriaLabel,s=void 0===u?"Arrow up":u,f=r.navigateDownKeyAriaLabel,m=void 0===f?"Arrow down":f,p=r.closeText,v=void 0===p?"to close":p,d=r.closeKeyAriaLabel,y=void 0===d?"Escape key":d,h=r.searchByText,b=void 0===h?"Search by":h;return yt.createElement(yt.Fragment,null,yt.createElement("div",{className:"DocSearch-Logo"},yt.createElement(bt,{translations:{searchByText:b}})),yt.createElement("ul",{className:"DocSearch-Commands"},yt.createElement("li",null,yt.createElement("kbd",{className:"DocSearch-Commands-Key"},yt.createElement(gt,{ariaLabel:a},yt.createElement("path",{d:"M12 3.53088v3c0 1-1 2-2 2H4M7 11.53088l-3-3 3-3"}))),yt.createElement("span",{className:"DocSearch-Label"},o)),yt.createElement("li",null,yt.createElement("kbd",{className:"DocSearch-Commands-Key"},yt.createElement(gt,{ariaLabel:m},yt.createElement("path",{d:"M7.5 3.5v8M10.5 8.5l-3 3-3-3"}))),yt.createElement("kbd",{className:"DocSearch-Commands-Key"},yt.createElement(gt,{ariaLabel:s},yt.createElement("path",{d:"M7.5 11.5v-8M10.5 6.5l-3-3-3 3"}))),yt.createElement("span",{className:"DocSearch-Label"},l)),yt.createElement("li",null,yt.createElement("kbd",{className:"DocSearch-Commands-Key"},yt.createElement(gt,{ariaLabel:y},yt.createElement("path",{d:"M13.6167 8.936c-.1065.3583-.6883.962-1.4875.962-.7993 0-1.653-.9165-1.653-2.1258v-.5678c0-1.2548.7896-2.1016 1.653-2.1016.8634 0 1.3601.4778 1.4875 1.0724M9 6c-.1352-.4735-.7506-.9219-1.46-.8972-.7092.0246-1.344.57-1.344 1.2166s.4198.8812 1.3445.9805C8.465 7.3992 8.968 7.9337 9 8.5c.032.5663-.454 1.398-1.4595 1.398C6.6593 9.898 6 9 5.963 8.4851m-1.4748.5368c-.2635.5941-.8099.876-1.5443.876s-1.7073-.6248-1.7073-2.204v-.4603c0-1.0416.721-2.131 1.7073-2.131.9864 0 1.6425 1.031 1.5443 2.2492h-2.956"}))),yt.createElement("span",{className:"DocSearch-Label"},v))))}function St(e){var t=e.hit,r=e.children;return yt.createElement("a",{href:t.url},r)}function jt(){return yt.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},yt.createElement("path",{d:"M19 4.8a16 16 0 00-2-1.2m-3.3-1.2A16 16 0 001.1 4.7M16.7 8a12 12 0 00-2.8-1.4M10 6a12 12 0 00-6.7 2M12.3 14.7a4 4 0 00-4.5 0M14.5 11.4A8 8 0 0010 10M3 16L18 2M10 18h0"}))}function wt(e){var t=e.translations,r=void 0===t?{}:t,n=r.titleText,o=void 0===n?"Unable to fetch results":n,i=r.helpText,a=void 0===i?"You might want to check your network connection.":i;return yt.createElement("div",{className:"DocSearch-ErrorScreen"},yt.createElement("div",{className:"DocSearch-Screen-Icon"},yt.createElement(jt,null)),yt.createElement("p",{className:"DocSearch-Title"},o),yt.createElement("p",{className:"DocSearch-Help"},a))}function Et(){return yt.createElement("svg",{width:"40",height:"40",viewBox:"0 0 20 20",fill:"none",fillRule:"evenodd",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},yt.createElement("path",{d:"M15.5 4.8c2 3 1.7 7-1 9.7h0l4.3 4.3-4.3-4.3a7.8 7.8 0 01-9.8 1m-2.2-2.2A7.8 7.8 0 0113.2 2.4M2 18L18 2"}))}var Pt=["translations"];function It(e){return function(e){if(Array.isArray(e))return Dt(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Dt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Dt(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Dt(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function At(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function kt(e){var t=e.translations,r=void 0===t?{}:t,n=At(e,Pt),o=r.noResultsText,i=void 0===o?"No results for":o,a=r.suggestedQueryText,c=void 0===a?"Try searching for":a,l=r.reportMissingResultsText,u=void 0===l?"Believe this query should return results?":l,s=r.reportMissingResultsLinkText,f=void 0===s?"Let us know.":s,m=n.state.context.searchSuggestions;return yt.createElement("div",{className:"DocSearch-NoResults"},yt.createElement("div",{className:"DocSearch-Screen-Icon"},yt.createElement(Et,null)),yt.createElement("p",{className:"DocSearch-Title"},i,' "',yt.createElement("strong",null,n.state.query),'"'),m&&m.length>0&&yt.createElement("div",{className:"DocSearch-NoResults-Prefill-List"},yt.createElement("p",{className:"DocSearch-Help"},c,":"),yt.createElement("ul",null,m.slice(0,3).reduce((function(e,t){return[].concat(It(e),[yt.createElement("li",{key:t},yt.createElement("button",{className:"DocSearch-Prefill",key:t,type:"button",onClick:function(){n.setQuery(t.toLowerCase()+" "),n.refresh(),n.inputRef.current.focus()}},t))])}),[]))),n.getMissingResultsUrl&&yt.createElement("p",{className:"DocSearch-Help"},"".concat(u," "),yt.createElement("a",{href:n.getMissingResultsUrl({query:n.state.query}),target:"_blank",rel:"noopener noreferrer"},f)))}var xt=function(){return yt.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("path",{d:"M17 6v12c0 .52-.2 1-1 1H4c-.7 0-1-.33-1-1V2c0-.55.42-1 1-1h8l5 5zM14 8h-3.13c-.51 0-.87-.34-.87-.87V4",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))};function Ct(e){switch(e.type){case"lvl1":return yt.createElement(xt,null);case"content":return yt.createElement(Nt,null);default:return yt.createElement(_t,null)}}function _t(){return yt.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("path",{d:"M13 13h4-4V8H7v5h6v4-4H7V8H3h4V3v5h6V3v5h4-4v5zm-6 0v4-4H3h4z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}function Nt(){return yt.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("path",{d:"M17 5H3h14zm0 5H3h14zm0 5H3h14z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function Tt(){return yt.createElement("svg",{className:"DocSearch-Hit-Select-Icon",width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},yt.createElement("path",{d:"M18 3v4c0 2-2 4-4 4H2"}),yt.createElement("path",{d:"M8 17l-6-6 6-6"})))}var qt=["hit","attribute","tagName"];function Rt(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 Lt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Rt(Object(r),!0).forEach((function(t){Mt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Rt(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Mt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ht(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Ft(e,t){return t.split(".").reduce((function(e,t){return null!=e&&e[t]?e[t]:null}),e)}function Ut(e){var t=e.hit,r=e.attribute,n=e.tagName,o=void 0===n?"span":n,i=Ht(e,qt);return(0,yt.createElement)(o,Lt(Lt({},i),{},{dangerouslySetInnerHTML:{__html:Ft(t,"_snippetResult.".concat(r,".value"))||Ft(t,r)}}))}function Bt(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==r)return;var n,o,i=[],a=!0,c=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(l){c=!0,o=l}finally{try{a||null==r.return||r.return()}finally{if(c)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Vt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Vt(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Vt(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Kt(){return Kt=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Kt.apply(this,arguments)}function $t(e){return e.collection&&0!==e.collection.items.length?yt.createElement("section",{className:"DocSearch-Hits"},yt.createElement("div",{className:"DocSearch-Hit-source"},e.title),yt.createElement("ul",e.getListProps(),e.collection.items.map((function(t,r){return yt.createElement(Jt,Kt({key:[e.title,t.objectID].join(":"),item:t,index:r},e))})))):null}function Jt(e){var t=e.item,r=e.index,n=e.renderIcon,o=e.renderAction,i=e.getItemProps,a=e.onItemClick,c=e.collection,l=e.hitComponent,u=Bt(yt.useState(!1),2),s=u[0],f=u[1],m=Bt(yt.useState(!1),2),p=m[0],v=m[1],d=yt.useRef(null),y=l;return yt.createElement("li",Kt({className:["DocSearch-Hit",t.__docsearch_parent&&"DocSearch-Hit--Child",s&&"DocSearch-Hit--deleting",p&&"DocSearch-Hit--favoriting"].filter(Boolean).join(" "),onTransitionEnd:function(){d.current&&d.current()}},i({item:t,source:c.source,onClick:function(e){a(t,e)}})),yt.createElement(y,{hit:t},yt.createElement("div",{className:"DocSearch-Hit-Container"},n({item:t,index:r}),t.hierarchy[t.type]&&"lvl1"===t.type&&yt.createElement("div",{className:"DocSearch-Hit-content-wrapper"},yt.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.lvl1"}),t.content&&yt.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"content"})),t.hierarchy[t.type]&&("lvl2"===t.type||"lvl3"===t.type||"lvl4"===t.type||"lvl5"===t.type||"lvl6"===t.type)&&yt.createElement("div",{className:"DocSearch-Hit-content-wrapper"},yt.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"hierarchy.".concat(t.type)}),yt.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),"content"===t.type&&yt.createElement("div",{className:"DocSearch-Hit-content-wrapper"},yt.createElement(Ut,{className:"DocSearch-Hit-title",hit:t,attribute:"content"}),yt.createElement(Ut,{className:"DocSearch-Hit-path",hit:t,attribute:"hierarchy.lvl1"})),o({item:t,runDeleteTransition:function(e){f(!0),d.current=e},runFavoriteTransition:function(e){v(!0),d.current=e}}))))}var zt=/(<mark>|<\/mark>)/g,Wt=RegExp(zt.source);function Qt(e){var t,r,n=e;if(!n.__docsearch_parent&&!e._highlightResult)return e.hierarchy.lvl0;var o=((n.__docsearch_parent?null===(t=n.__docsearch_parent)||void 0===t||null===(t=t._highlightResult)||void 0===t||null===(t=t.hierarchy)||void 0===t?void 0:t.lvl0:null===(r=e._highlightResult)||void 0===r||null===(r=r.hierarchy)||void 0===r?void 0:r.lvl0)||{}).value;return o&&Wt.test(o)?o.replace(zt,""):o}function Zt(){return Zt=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Zt.apply(this,arguments)}function Gt(e){return yt.createElement("div",{className:"DocSearch-Dropdown-Container"},e.state.collections.map((function(t){if(0===t.items.length)return null;var r=Qt(t.items[0]);return yt.createElement($t,Zt({},e,{key:t.source.sourceId,title:r,collection:t,renderIcon:function(e){var r,n=e.item,o=e.index;return yt.createElement(yt.Fragment,null,n.__docsearch_parent&&yt.createElement("svg",{className:"DocSearch-Hit-Tree",viewBox:"0 0 24 54"},yt.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},n.__docsearch_parent!==(null===(r=t.items[o+1])||void 0===r?void 0:r.__docsearch_parent)?yt.createElement("path",{d:"M8 6v21M20 27H8.3"}):yt.createElement("path",{d:"M8 6v42M20 27H8.3"}))),yt.createElement("div",{className:"DocSearch-Hit-icon"},yt.createElement(Ct,{type:n.type})))},renderAction:function(){return yt.createElement("div",{className:"DocSearch-Hit-action"},yt.createElement(Tt,null))}}))})),e.resultsFooterComponent&&yt.createElement("section",{className:"DocSearch-HitsFooter"},yt.createElement(e.resultsFooterComponent,{state:e.state})))}function Xt(){return yt.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("g",{stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},yt.createElement("path",{d:"M3.18 6.6a8.23 8.23 0 1112.93 9.94h0a8.23 8.23 0 01-11.63 0"}),yt.createElement("path",{d:"M6.44 7.25H2.55V3.36M10.45 6v5.6M10.45 11.6L13 13"})))}function Yt(){return yt.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("path",{d:"M10 14.2L5 17l1-5.6-4-4 5.5-.7 2.5-5 2.5 5 5.6.8-4 4 .9 5.5z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinejoin:"round"}))}function er(){return yt.createElement("svg",{width:"20",height:"20",viewBox:"0 0 20 20"},yt.createElement("path",{d:"M10 10l5.09-5.09L10 10l5.09 5.09L10 10zm0 0L4.91 4.91 10 10l-5.09 5.09L10 10z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}var tr=["translations"];function rr(){return rr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},rr.apply(this,arguments)}function nr(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function or(e){var t=e.translations,r=void 0===t?{}:t,n=nr(e,tr),o=r.recentSearchesTitle,i=void 0===o?"Recent":o,a=r.noRecentSearchesText,c=void 0===a?"No recent searches":a,l=r.saveRecentSearchButtonTitle,u=void 0===l?"Save this search":l,s=r.removeRecentSearchButtonTitle,f=void 0===s?"Remove this search from history":s,m=r.favoriteSearchesTitle,p=void 0===m?"Favorite":m,v=r.removeFavoriteSearchButtonTitle,d=void 0===v?"Remove this search from favorites":v;return"idle"===n.state.status&&!1===n.hasCollections?n.disableUserPersonalization?null:yt.createElement("div",{className:"DocSearch-StartScreen"},yt.createElement("p",{className:"DocSearch-Help"},c)):!1===n.hasCollections?null:yt.createElement("div",{className:"DocSearch-Dropdown-Container"},yt.createElement($t,rr({},n,{title:i,collection:n.state.collections[0],renderIcon:function(){return yt.createElement("div",{className:"DocSearch-Hit-icon"},yt.createElement(Xt,null))},renderAction:function(e){var t=e.item,r=e.runFavoriteTransition,o=e.runDeleteTransition;return yt.createElement(yt.Fragment,null,yt.createElement("div",{className:"DocSearch-Hit-action"},yt.createElement("button",{className:"DocSearch-Hit-action-button",title:u,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r((function(){n.favoriteSearches.add(t),n.recentSearches.remove(t),n.refresh()}))}},yt.createElement(Yt,null))),yt.createElement("div",{className:"DocSearch-Hit-action"},yt.createElement("button",{className:"DocSearch-Hit-action-button",title:f,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),o((function(){n.recentSearches.remove(t),n.refresh()}))}},yt.createElement(er,null))))}})),yt.createElement($t,rr({},n,{title:p,collection:n.state.collections[1],renderIcon:function(){return yt.createElement("div",{className:"DocSearch-Hit-icon"},yt.createElement(Yt,null))},renderAction:function(e){var t=e.item,r=e.runDeleteTransition;return yt.createElement("div",{className:"DocSearch-Hit-action"},yt.createElement("button",{className:"DocSearch-Hit-action-button",title:d,type:"submit",onClick:function(e){e.preventDefault(),e.stopPropagation(),r((function(){n.favoriteSearches.remove(t),n.refresh()}))}},yt.createElement(er,null)))}})))}var ir=["translations"];function ar(){return ar=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},ar.apply(this,arguments)}function cr(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var lr=yt.memo((function(e){var t=e.translations,r=void 0===t?{}:t,n=cr(e,ir);if("error"===n.state.status)return yt.createElement(wt,{translations:null==r?void 0:r.errorScreen});var o=n.state.collections.some((function(e){return e.items.length>0}));return n.state.query?!1===o?yt.createElement(kt,ar({},n,{translations:null==r?void 0:r.noResultsScreen})):yt.createElement(Gt,n):yt.createElement(or,ar({},n,{hasCollections:o,translations:null==r?void 0:r.startScreen}))}),(function(e,t){return"loading"===t.state.status||"stalled"===t.state.status}));function ur(){return yt.createElement("svg",{viewBox:"0 0 38 38",stroke:"currentColor",strokeOpacity:".5"},yt.createElement("g",{fill:"none",fillRule:"evenodd"},yt.createElement("g",{transform:"translate(1 1)",strokeWidth:"2"},yt.createElement("circle",{strokeOpacity:".3",cx:"18",cy:"18",r:"18"}),yt.createElement("path",{d:"M36 18c0-9.94-8.06-18-18-18"},yt.createElement("animateTransform",{attributeName:"transform",type:"rotate",from:"0 18 18",to:"360 18 18",dur:"1s",repeatCount:"indefinite"})))))}var sr=r(9188),fr=["translations"];function mr(){return mr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},mr.apply(this,arguments)}function pr(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function vr(e){var t=e.translations,r=void 0===t?{}:t,n=pr(e,fr),o=r.resetButtonTitle,i=void 0===o?"Clear the query":o,a=r.resetButtonAriaLabel,c=void 0===a?"Clear the query":a,l=r.cancelButtonText,u=void 0===l?"Cancel":l,s=r.cancelButtonAriaLabel,f=void 0===s?"Cancel":s,m=r.searchInputLabel,p=void 0===m?"Search":m,v=n.getFormProps({inputElement:n.inputRef.current}).onReset;return yt.useEffect((function(){n.autoFocus&&n.inputRef.current&&n.inputRef.current.focus()}),[n.autoFocus,n.inputRef]),yt.useEffect((function(){n.isFromSelection&&n.inputRef.current&&n.inputRef.current.select()}),[n.isFromSelection,n.inputRef]),yt.createElement(yt.Fragment,null,yt.createElement("form",{className:"DocSearch-Form",onSubmit:function(e){e.preventDefault()},onReset:v},yt.createElement("label",mr({className:"DocSearch-MagnifierLabel"},n.getLabelProps()),yt.createElement(sr.W,null),yt.createElement("span",{className:"DocSearch-VisuallyHiddenForAccessibility"},p)),yt.createElement("div",{className:"DocSearch-LoadingIndicator"},yt.createElement(ur,null)),yt.createElement("input",mr({className:"DocSearch-Input",ref:n.inputRef},n.getInputProps({inputElement:n.inputRef.current,autoFocus:n.autoFocus,maxLength:ht}))),yt.createElement("button",{type:"reset",title:i,className:"DocSearch-Reset","aria-label":c,hidden:!n.state.query},yt.createElement(er,null))),yt.createElement("button",{className:"DocSearch-Cancel",type:"reset","aria-label":f,onClick:n.onClose},u))}var dr=["_highlightResult","_snippetResult"];function yr(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function hr(e){return!1===function(){var e="__TEST_KEY__";try{return localStorage.setItem(e,""),localStorage.removeItem(e),!0}catch(t){return!1}}()?{setItem:function(){},getItem:function(){return[]}}:{setItem:function(t){return window.localStorage.setItem(e,JSON.stringify(t))},getItem:function(){var t=window.localStorage.getItem(e);return t?JSON.parse(t):[]}}}function br(e){var t=e.key,r=e.limit,n=void 0===r?5:r,o=hr(t),i=o.getItem().slice(0,n);return{add:function(e){var t=e,r=(t._highlightResult,t._snippetResult,yr(t,dr)),a=i.findIndex((function(e){return e.objectID===r.objectID}));a>-1&&i.splice(a,1),i.unshift(r),i=i.slice(0,n),o.setItem(i)},remove:function(e){i=i.filter((function(t){return t.objectID!==e.objectID})),o.setItem(i)},getAll:function(){return i}}}function gr(e){const t=`algoliasearch-client-js-${e.key}`;let r;const n=()=>(void 0===r&&(r=e.localStorage||window.localStorage),r),o=()=>JSON.parse(n().getItem(t)||"{}"),i=e=>{n().setItem(t,JSON.stringify(e))};return{get:(t,r,n={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>{(()=>{const t=e.timeToLive?1e3*e.timeToLive:null,r=o(),n=Object.fromEntries(Object.entries(r).filter((([,e])=>void 0!==e.timestamp)));if(i(n),!t)return;const a=Object.fromEntries(Object.entries(n).filter((([,e])=>{const r=(new Date).getTime();return!(e.timestamp+t<r)})));i(a)})();const r=JSON.stringify(t);return o()[r]})).then((e=>Promise.all([e?e.value:r(),void 0!==e]))).then((([e,t])=>Promise.all([e,t||n.miss(e)]))).then((([e])=>e)),set:(e,r)=>Promise.resolve().then((()=>{const i=o();return i[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:r},n().setItem(t,JSON.stringify(i)),r})),delete:e=>Promise.resolve().then((()=>{const r=o();delete r[JSON.stringify(e)],n().setItem(t,JSON.stringify(r))})),clear:()=>Promise.resolve().then((()=>{n().removeItem(t)}))}}function Or(e){const t=[...e.caches],r=t.shift();return void 0===r?{get:(e,t,r={miss:()=>Promise.resolve()})=>t().then((e=>Promise.all([e,r.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,n,o={miss:()=>Promise.resolve()})=>r.get(e,n,o).catch((()=>Or({caches:t}).get(e,n,o))),set:(e,n)=>r.set(e,n).catch((()=>Or({caches:t}).set(e,n))),delete:e=>r.delete(e).catch((()=>Or({caches:t}).delete(e))),clear:()=>r.clear().catch((()=>Or({caches:t}).clear()))}}function Sr(e={serializable:!0}){let t={};return{get(r,n,o={miss:()=>Promise.resolve()}){const i=JSON.stringify(r);if(i in t)return Promise.resolve(e.serializable?JSON.parse(t[i]):t[i]);const a=n(),c=o&&o.miss||(()=>Promise.resolve());return a.then((e=>c(e))).then((()=>a))},set:(r,n)=>(t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}function jr(e){let t=e.length-1;for(;t>0;t--){const r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function wr(e,t){return t?(Object.keys(t).forEach((r=>{e[r]=t[r](e)})),e):e}function Er(e,...t){let r=0;return e.replace(/%s/g,(()=>encodeURIComponent(t[r++])))}const Pr="4.23.3",Ir={WithinQueryParameters:0,WithinHeaders:1};function Dr(e,t){const r=e||{},n=r.data||{};return Object.keys(r).forEach((e=>{-1===["timeout","headers","queryParameters","data","cacheable"].indexOf(e)&&(n[e]=r[e])})),{data:Object.entries(n).length>0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}const Ar={Read:1,Write:2,Any:3},kr={Up:1,Down:2,Timeouted:3},xr=12e4;function Cr(e,t=kr.Up){return{...e,status:t,lastUpdate:Date.now()}}function _r(e){return"string"==typeof e?{protocol:"https",url:e,accept:Ar.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||Ar.Any}}const Nr={Delete:"DELETE",Get:"GET",Post:"POST",Put:"PUT"};function Tr(e,t){return Promise.all(t.map((t=>e.get(t,(()=>Promise.resolve(Cr(t))))))).then((e=>{const r=e.filter((e=>function(e){return e.status===kr.Up||Date.now()-e.lastUpdate>xr}(e))),n=e.filter((e=>function(e){return e.status===kr.Timeouted&&Date.now()-e.lastUpdate<=xr}(e))),o=[...r,...n];return{getTimeout:(e,t)=>(0===n.length&&0===e?1:n.length+3+e)*t,statelessHosts:o.length>0?o.map((e=>_r(e))):t}}))}const qr=(e,t)=>(e=>{const t=e.status;return e.isTimedOut||(({isTimedOut:e,status:t})=>!e&&!~~t)(e)||2!=~~(t/100)&&4!=~~(t/100)})(e)?t.onRetry(e):(({status:e})=>2==~~(e/100))(e)?t.onSuccess(e):t.onFail(e);function Rr(e,t,r,n){const o=[],i=function(e,t){if(e.method===Nr.Get||void 0===e.data&&void 0===t.data)return;const r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}(r,n),a=function(e,t){const r={...e.headers,...t.headers},n={};return Object.keys(r).forEach((e=>{const t=r[e];n[e.toLowerCase()]=t})),n}(e,n),c=r.method,l=r.method!==Nr.Get?{}:{...r.data,...n.data},u={"x-algolia-agent":e.userAgent.value,...e.queryParameters,...l,...n.queryParameters};let s=0;const f=(t,l)=>{const m=t.pop();if(void 0===m)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.",transporterStackTrace:Fr(o)};const p={data:i,headers:a,method:c,url:Mr(m,r.path,u),connectTimeout:l(s,e.timeouts.connect),responseTimeout:l(s,n.timeout)},v=e=>{const r={request:p,response:e,host:m,triesLeft:t.length};return o.push(r),r},d={onSuccess:e=>function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e),onRetry(r){const n=v(r);return r.isTimedOut&&s++,Promise.all([e.logger.info("Retryable failure",Ur(n)),e.hostsCache.set(m,Cr(m,r.isTimedOut?kr.Timeouted:kr.Down))]).then((()=>f(t,l)))},onFail(e){throw v(e),function({content:e,status:t},r){let n=e;try{n=JSON.parse(e).message}catch(o){}return function(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}(n,t,r)}(e,Fr(o))}};return e.requester.send(p).then((e=>qr(e,d)))};return Tr(e.hostsCache,t).then((e=>f([...e.statelessHosts].reverse(),e.getTimeout)))}function Lr(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const r=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(r)&&(t.value=`${t.value}${r}`),t}};return t}function Mr(e,t,r){const n=Hr(r);let o=`${e.protocol}://${e.url}/${"/"===t.charAt(0)?t.substr(1):t}`;return n.length&&(o+=`?${n}`),o}function Hr(e){return Object.keys(e).map((t=>{return Er("%s=%s",t,(r=e[t],"[object Object]"===Object.prototype.toString.call(r)||"[object Array]"===Object.prototype.toString.call(r)?JSON.stringify(e[t]):e[t]));var r})).join("&")}function Fr(e){return e.map((e=>Ur(e)))}function Ur(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}const Br=e=>{const t=e.appId,r=function(e,t,r){const n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers:()=>e===Ir.WithinHeaders?n:{},queryParameters:()=>e===Ir.WithinQueryParameters?n:{}}}(void 0!==e.authMode?e.authMode:Ir.WithinHeaders,t,e.apiKey),n=function(e){const{hostsCache:t,logger:r,requester:n,requestsCache:o,responsesCache:i,timeouts:a,userAgent:c,hosts:l,queryParameters:u,headers:s}=e,f={hostsCache:t,logger:r,requester:n,requestsCache:o,responsesCache:i,timeouts:a,userAgent:c,headers:s,queryParameters:u,hosts:l.map((e=>_r(e))),read(e,t){const r=Dr(t,f.timeouts.read),n=()=>Rr(f,f.hosts.filter((e=>!!(e.accept&Ar.Read))),e,r);if(!0!==(void 0!==r.cacheable?r.cacheable:e.cacheable))return n();const o={request:e,mappedRequestOptions:r,transporter:{queryParameters:f.queryParameters,headers:f.headers}};return f.responsesCache.get(o,(()=>f.requestsCache.get(o,(()=>f.requestsCache.set(o,n()).then((e=>Promise.all([f.requestsCache.delete(o),e])),(e=>Promise.all([f.requestsCache.delete(o),Promise.reject(e)]))).then((([e,t])=>t))))),{miss:e=>f.responsesCache.set(o,e)})},write:(e,t)=>Rr(f,f.hosts.filter((e=>!!(e.accept&Ar.Write))),e,Dr(t,f.timeouts.write))};return f}({hosts:[{url:`${t}-dsn.algolia.net`,accept:Ar.Read},{url:`${t}.algolia.net`,accept:Ar.Write}].concat(jr([{url:`${t}-1.algolianet.com`},{url:`${t}-2.algolianet.com`},{url:`${t}-3.algolianet.com`}])),...e,headers:{...r.headers(),"content-type":"application/x-www-form-urlencoded",...e.headers},queryParameters:{...r.queryParameters(),...e.queryParameters}}),o={transporter:n,appId:t,addAlgoliaAgent(e,t){n.userAgent.add({segment:e,version:t})},clearCache:()=>Promise.all([n.requestsCache.clear(),n.responsesCache.clear()]).then((()=>{}))};return wr(o,e.methods)},Vr=e=>(t,r)=>t.method===Nr.Get?e.transporter.read(t,r):e.transporter.write(t,r),Kr=e=>(t,r={})=>wr({transporter:e.transporter,appId:e.appId,indexName:t},r.methods),$r=e=>(t,r)=>{const n=t.map((e=>({...e,params:Hr(e.params||{})})));return e.transporter.read({method:Nr.Post,path:"1/indexes/*/queries",data:{requests:n},cacheable:!0},r)},Jr=e=>(t,r)=>Promise.all(t.map((t=>{const{facetName:n,facetQuery:o,...i}=t.params;return Kr(e)(t.indexName,{methods:{searchForFacetValues:Qr}}).searchForFacetValues(n,o,{...r,...i})}))),zr=e=>(t,r,n)=>e.transporter.read({method:Nr.Post,path:Er("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n),Wr=e=>(t,r)=>e.transporter.read({method:Nr.Post,path:Er("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r),Qr=e=>(t,r,n)=>e.transporter.read({method:Nr.Post,path:Er("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n),Zr={Debug:1,Info:2,Error:3};const Gr=e=>(t,r)=>{const n=t.map((e=>({...e,threshold:e.threshold||0})));return e.transporter.read({method:Nr.Post,path:"1/indexes/*/recommendations",data:{requests:n},cacheable:!0},r)};function Xr(e,t,r){const n={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:e=>new Promise((t=>{const r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((t=>r.setRequestHeader(t,e.headers[t])));const n=(e,n)=>setTimeout((()=>{r.abort(),t({status:0,content:n,isTimedOut:!0})}),1e3*e),o=n(e.connectTimeout,"Connection timeout");let i;r.onreadystatechange=()=>{r.readyState>r.OPENED&&void 0===i&&(clearTimeout(o),i=n(e.responseTimeout,"Socket timeout"))},r.onerror=()=>{0===r.status&&(clearTimeout(o),clearTimeout(i),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=()=>{clearTimeout(o),clearTimeout(i),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))},logger:(o=Zr.Error,{debug:(e,t)=>(Zr.Debug>=o&&console.debug(e,t),Promise.resolve()),info:(e,t)=>(Zr.Info>=o&&console.info(e,t),Promise.resolve()),error:(e,t)=>(console.error(e,t),Promise.resolve())}),responsesCache:Sr(),requestsCache:Sr({serializable:!1}),hostsCache:Or({caches:[gr({key:`${Pr}-${e}`}),Sr()]}),userAgent:Lr(Pr).add({segment:"Browser",version:"lite"}),authMode:Ir.WithinQueryParameters};var o;return Br({...n,...r,methods:{search:$r,searchForFacetValues:Jr,multipleQueries:$r,multipleSearchForFacetValues:Jr,customRequest:Vr,initIndex:e=>t=>Kr(e)(t,{methods:{search:Wr,searchForFacetValues:Qr,findAnswers:zr}}),getRecommendations:Gr}})}Xr.version=Pr;const Yr=Xr;var en="3.6.0";function tn(){}function rn(e){return e}function nn(e){return 1===e.button||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}function on(e,t,r){return e.reduce((function(e,n){var o=t(n);return e.hasOwnProperty(o)||(e[o]=[]),e[o].length<(r||5)&&e[o].push(n),e}),{})}var an=["footer","searchBox"];function cn(){return cn=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},cn.apply(this,arguments)}function ln(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 un(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ln(Object(r),!0).forEach((function(t){sn(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ln(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function sn(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==r)return;var n,o,i=[],a=!0,c=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(l){c=!0,o=l}finally{try{a||null==r.return||r.return()}finally{if(c)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return mn(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return mn(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function mn(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function pn(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function vn(e){var t=e.appId,r=e.apiKey,n=e.indexName,o=e.placeholder,i=void 0===o?"Search docs":o,a=e.searchParameters,c=e.maxResultsPerGroup,l=e.onClose,u=void 0===l?tn:l,s=e.transformItems,f=void 0===s?rn:s,m=e.hitComponent,p=void 0===m?St:m,v=e.resultsFooterComponent,d=void 0===v?function(){return null}:v,y=e.navigator,h=e.initialScrollY,b=void 0===h?0:h,g=e.transformSearchClient,O=void 0===g?rn:g,S=e.disableUserPersonalization,j=void 0!==S&&S,w=e.initialQuery,E=void 0===w?"":w,P=e.translations,I=void 0===P?{}:P,D=e.getMissingResultsUrl,A=e.insights,k=void 0!==A&&A,x=I.footer,C=I.searchBox,_=pn(I,an),N=fn(yt.useState({query:"",collections:[],completion:null,context:{},isOpen:!1,activeItemId:null,status:"idle"}),2),T=N[0],q=N[1],R=yt.useRef(null),L=yt.useRef(null),M=yt.useRef(null),H=yt.useRef(null),F=yt.useRef(null),U=yt.useRef(10),B=yt.useRef("undefined"!=typeof window?window.getSelection().toString().slice(0,ht):"").current,V=yt.useRef(E||B).current,K=function(e,t,r){return yt.useMemo((function(){var n=Yr(e,t);return n.addAlgoliaAgent("docsearch",en),!1===/docsearch.js \(.*\)/.test(n.transporter.userAgent.value)&&n.addAlgoliaAgent("docsearch-react",en),r(n)}),[e,t,r])}(t,r,O),$=yt.useRef(br({key:"__DOCSEARCH_FAVORITE_SEARCHES__".concat(n),limit:10})).current,J=yt.useRef(br({key:"__DOCSEARCH_RECENT_SEARCHES__".concat(n),limit:0===$.getAll().length?7:4})).current,z=yt.useCallback((function(e){if(!j){var t="content"===e.type?e.__docsearch_parent:e;t&&-1===$.getAll().findIndex((function(e){return e.objectID===t.objectID}))&&J.add(t)}}),[$,J,j]),W=yt.useCallback((function(e){if(T.context.algoliaInsightsPlugin&&e.__autocomplete_id){var t=e,r={eventName:"Item Selected",index:t.__autocomplete_indexName,items:[t],positions:[e.__autocomplete_id],queryID:t.__autocomplete_queryID};T.context.algoliaInsightsPlugin.insights.clickedObjectIDsAfterSearch(r)}}),[T.context.algoliaInsightsPlugin]),Q=yt.useMemo((function(){return dt({id:"docsearch",defaultActiveItemId:0,placeholder:i,openOnFocus:!0,initialState:{query:V,context:{searchSuggestions:[]}},insights:k,navigator:y,onStateChange:function(e){q(e.state)},getSources:function(e){var o=e.query,i=e.state,l=e.setContext,s=e.setStatus;if(!o)return j?[]:[{sourceId:"recentSearches",onSelect:function(e){var t=e.item,r=e.event;z(t),nn(r)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return J.getAll()}},{sourceId:"favoriteSearches",onSelect:function(e){var t=e.item,r=e.event;z(t),nn(r)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return $.getAll()}}];var m=Boolean(k);return K.search([{query:o,indexName:n,params:un({attributesToRetrieve:["hierarchy.lvl0","hierarchy.lvl1","hierarchy.lvl2","hierarchy.lvl3","hierarchy.lvl4","hierarchy.lvl5","hierarchy.lvl6","content","type","url"],attributesToSnippet:["hierarchy.lvl1:".concat(U.current),"hierarchy.lvl2:".concat(U.current),"hierarchy.lvl3:".concat(U.current),"hierarchy.lvl4:".concat(U.current),"hierarchy.lvl5:".concat(U.current),"hierarchy.lvl6:".concat(U.current),"content:".concat(U.current)],snippetEllipsisText:"\u2026",highlightPreTag:"<mark>",highlightPostTag:"</mark>",hitsPerPage:20,clickAnalytics:m},a)}]).catch((function(e){throw"RetryError"===e.name&&s("error"),e})).then((function(e){var o=e.results[0],a=o.hits,s=o.nbHits,p=on(a,(function(e){return Qt(e)}),c);i.context.searchSuggestions.length<Object.keys(p).length&&l({searchSuggestions:Object.keys(p)}),l({nbHits:s});var v={};return m&&(v={__autocomplete_indexName:n,__autocomplete_queryID:o.queryID,__autocomplete_algoliaCredentials:{appId:t,apiKey:r}}),Object.values(p).map((function(e,t){return{sourceId:"hits".concat(t),onSelect:function(e){var t=e.item,r=e.event;z(t),nn(r)||u()},getItemUrl:function(e){return e.item.url},getItems:function(){return Object.values(on(e,(function(e){return e.hierarchy.lvl1}),c)).map(f).map((function(e){return e.map((function(t){var r=null,n=e.find((function(e){return"lvl1"===e.type&&e.hierarchy.lvl1===t.hierarchy.lvl1}));return"lvl1"!==t.type&&n&&(r=n),un(un({},t),{},{__docsearch_parent:r},v)}))})).flat()}}}))}))}})}),[n,a,c,K,u,J,$,z,V,i,y,f,j,k,t,r]),Z=Q.getEnvironmentProps,G=Q.getRootProps,X=Q.refresh;return function(e){var t=e.getEnvironmentProps,r=e.panelElement,n=e.formElement,o=e.inputElement;yt.useEffect((function(){if(r&&n&&o){var e=t({panelElement:r,formElement:n,inputElement:o}),i=e.onTouchStart,a=e.onTouchMove;return window.addEventListener("touchstart",i),window.addEventListener("touchmove",a),function(){window.removeEventListener("touchstart",i),window.removeEventListener("touchmove",a)}}}),[t,r,n,o])}({getEnvironmentProps:Z,panelElement:H.current,formElement:M.current,inputElement:F.current}),function(e){var t=e.container;yt.useEffect((function(){if(t){var e=t.querySelectorAll("a[href]:not([disabled]), button:not([disabled]), input:not([disabled])"),r=e[0],n=e[e.length-1];return t.addEventListener("keydown",o),function(){t.removeEventListener("keydown",o)}}function o(e){"Tab"===e.key&&(e.shiftKey?document.activeElement===r&&(e.preventDefault(),n.focus()):document.activeElement===n&&(e.preventDefault(),r.focus()))}}),[t])}({container:R.current}),yt.useEffect((function(){return document.body.classList.add("DocSearch--active"),function(){var e,t;document.body.classList.remove("DocSearch--active"),null===(e=(t=window).scrollTo)||void 0===e||e.call(t,0,b)}}),[]),yt.useEffect((function(){window.matchMedia("(max-width: 768px)").matches&&(U.current=5)}),[]),yt.useEffect((function(){H.current&&(H.current.scrollTop=0)}),[T.query]),yt.useEffect((function(){V.length>0&&(X(),F.current&&F.current.focus())}),[V,X]),yt.useEffect((function(){function e(){if(L.current){var e=.01*window.innerHeight;L.current.style.setProperty("--docsearch-vh","".concat(e,"px"))}}return e(),window.addEventListener("resize",e),function(){window.removeEventListener("resize",e)}}),[]),yt.createElement("div",cn({ref:R},G({"aria-expanded":!0}),{className:["DocSearch","DocSearch-Container","stalled"===T.status&&"DocSearch-Container--Stalled","error"===T.status&&"DocSearch-Container--Errored"].filter(Boolean).join(" "),role:"button",tabIndex:0,onMouseDown:function(e){e.target===e.currentTarget&&u()}}),yt.createElement("div",{className:"DocSearch-Modal",ref:L},yt.createElement("header",{className:"DocSearch-SearchBar",ref:M},yt.createElement(vr,cn({},Q,{state:T,autoFocus:0===V.length,inputRef:F,isFromSelection:Boolean(V)&&V===B,translations:C,onClose:u}))),yt.createElement("div",{className:"DocSearch-Dropdown",ref:H},yt.createElement(lr,cn({},Q,{indexName:n,state:T,hitComponent:p,resultsFooterComponent:d,disableUserPersonalization:j,recentSearches:J,favoriteSearches:$,inputRef:F,translations:_,getMissingResultsUrl:D,onItemClick:function(e,t){W(e),z(e),nn(t)||u()}}))),yt.createElement("footer",{className:"DocSearch-Footer"},yt.createElement(Ot,{translations:x}))))}}}]); \ No newline at end of file diff --git a/assets/js/9693de07.54a97dfa.js b/assets/js/9693de07.54a97dfa.js deleted file mode 100644 index 8ddc90238..000000000 --- a/assets/js/9693de07.54a97dfa.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[656],{7645:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>d,metadata:()=>t,toc:()=>o});var s=r(4848),i=r(8453);const d={id:"Dependencies",title:"Interface: Dependencies",sidebar_label:"Dependencies",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/Dependencies",title:"Interface: Dependencies",description:"Properties",source:"@site/docs/api/interfaces/Dependencies.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Dependencies",permalink:"/docs/api/interfaces/Dependencies",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Dependencies",title:"Interface: Dependencies",sidebar_label:"Dependencies",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CoreModuleStore",permalink:"/docs/api/interfaces/CoreModuleStore"},next:{title:"DependencyConfiguration",permalink:"/docs/api/interfaces/DependencyConfiguration"}},c={},o=[{value:"Properties",id:"properties",level:2},{value:"@sern/client",id:"sernclient",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"@sern/emitter",id:"sernemitter",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"@sern/errors",id:"sernerrors",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"@sern/logger",id:"sernlogger",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"@sern/modules",id:"sernmodules",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"@sern/store",id:"sernstore",level:3},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,s.jsx)(n.h3,{id:"sernclient",children:"@sern/client"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"@sern/client"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/modules#singleton",children:(0,s.jsx)(n.code,{children:"Singleton"})}),"<",(0,s.jsx)(n.code,{children:"__module"}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L40",children:"src/types/handler.ts:40"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"sernemitter",children:"@sern/emitter"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"@sern/emitter"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/modules#singleton",children:(0,s.jsx)(n.code,{children:"Singleton"})}),"<",(0,s.jsx)(n.a,{href:"../classes/SernEmitter.md",children:(0,s.jsx)(n.code,{children:"SernEmitter"})}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L42",children:"src/types/handler.ts:42"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"sernerrors",children:"@sern/errors"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"@sern/errors"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/modules#singleton",children:(0,s.jsx)(n.code,{children:"Singleton"})}),"<",(0,s.jsx)(n.a,{href:"ErrorHandling.md",children:(0,s.jsx)(n.code,{children:"ErrorHandling"})}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L45",children:"src/types/handler.ts:45"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"sernlogger",children:"@sern/logger"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"Optional"})," ",(0,s.jsx)(n.strong,{children:"@sern/logger"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/modules#singleton",children:(0,s.jsx)(n.code,{children:"Singleton"})}),"<",(0,s.jsx)(n.a,{href:"Logging.md",children:(0,s.jsx)(n.code,{children:"Logging"})}),"<",(0,s.jsx)(n.code,{children:"unknown"}),">>"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L41",children:"src/types/handler.ts:41"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"sernmodules",children:"@sern/modules"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"@sern/modules"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/modules#singleton",children:(0,s.jsx)(n.code,{children:"Singleton"})}),"<",(0,s.jsx)(n.a,{href:"ModuleManager.md",children:(0,s.jsx)(n.code,{children:"ModuleManager"})}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L44",children:"src/types/handler.ts:44"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"sernstore",children:"@sern/store"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"@sern/store"}),": ",(0,s.jsx)(n.a,{href:"/docs/api/modules#singleton",children:(0,s.jsx)(n.code,{children:"Singleton"})}),"<",(0,s.jsx)(n.a,{href:"../classes/ModuleStore.md",children:(0,s.jsx)(n.code,{children:"ModuleStore"})}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L43",children:"src/types/handler.ts:43"})})]})}function a(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(h,{...e})}):h(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>l,x:()=>t});var s=r(6540);const i={},d=s.createContext(i);function l(e){const n=s.useContext(d);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),s.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/97c22b42.2b330fbe.js b/assets/js/97c22b42.2b330fbe.js deleted file mode 100644 index 89a731058..000000000 --- a/assets/js/97c22b42.2b330fbe.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7374],{5787:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>a,frontMatter:()=>l,metadata:()=>t,toc:()=>h});var r=i(4848),d=i(8453);const l={id:"StringSelectCommand",title:"Interface: StringSelectCommand",sidebar_label:"StringSelectCommand",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/StringSelectCommand",title:"Interface: StringSelectCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/StringSelectCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/StringSelectCommand",permalink:"/docs/api/interfaces/StringSelectCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"StringSelectCommand",title:"Interface: StringSelectCommand",sidebar_label:"StringSelectCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SlashCommand",permalink:"/docs/api/interfaces/SlashCommand"},next:{title:"TextCommand",permalink:"/docs/api/interfaces/TextCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"Module"})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"StringSelectCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.description"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"ctx"}),": ",(0,r.jsx)(n.code,{children:"StringSelectMenuInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">) => ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"ctx"}),"): ",(0,r.jsx)(n.code,{children:"unknown"})]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsx)(n.tbody,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"ctx"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"StringSelectMenuInteraction"}),"<",(0,r.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.code,{children:"unknown"})}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.execute"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L70",children:"src/types/core-modules.ts:70"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.name"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"onEvent"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,r.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"plugins"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,r.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,r.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,r.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/CommandType#stringselect",children:(0,r.jsx)(n.code,{children:"StringSelect"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,r.jsx)(n.p,{children:"Module.type"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L69",children:"src/types/core-modules.ts:69"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var r=i(6540);const d={},l=r.createContext(d);function s(e){const n=r.useContext(l);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:s(e.components),r.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/981f6151.a5d396f1.js b/assets/js/981f6151.a5d396f1.js deleted file mode 100644 index f02fd1151..000000000 --- a/assets/js/981f6151.a5d396f1.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6052],{5982:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>r,contentTitle:()=>d,default:()=>c,frontMatter:()=>a,metadata:()=>i,toc:()=>l});var s=t(4848),o=t(8453);const a={sidebar_position:4},d="First Command",i={id:"guide/walkthrough/first-command",title:"First Command",description:"We will dissect a basic command.",source:"@site/docs/guide/walkthrough/first-command.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/first-command",permalink:"/docs/guide/walkthrough/first-command",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/first-command.md",tags:[],version:"current",sidebarPosition:4,frontMatter:{sidebar_position:4},sidebar:"tutorialSidebar",previous:{title:"Transition from v2 to v3",permalink:"/docs/guide/walkthrough/transition"},next:{title:"First Event Module",permalink:"/docs/guide/walkthrough/first-event"}},r={},l=[{value:"Types of command modules",id:"types-of-command-modules",level:3}];function m(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h1:"h1",h3:"h3",li:"li",p:"p",pre:"pre",strong:"strong",tabitem:"tabitem",tabs:"tabs",ul:"ul",...(0,o.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"first-command",children:"First Command"}),"\n",(0,s.jsxs)(n.p,{children:["We will dissect a basic command.\nIf you installed a new project via the cli, This is the ",(0,s.jsx)(n.code,{children:"ping"})," command located in src/commands folder."]}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsx)(n.p,{children:"TLDR: command modules are discord bot commands. There are many types, and each one will correspond to an event from discord.\nFor example, CommandType.Slash commands will listen to slash command interactions."})}),"\n",(0,s.jsx)(n.p,{children:"import Tabs from '@theme/Tabs';\nimport TabItem from '@theme/TabItem';"}),"\n",(0,s.jsxs)(n.tabs,{children:["\n",(0,s.jsxs)(n.tabitem,{value:"js",label:"JavaScript",children:["\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-js",children:"const { CommandType, commandModule } = require('@sern/handler');\n\nexport default commandModule({\n\ttype: CommandType.Both,\n\tplugins: [],\n\tdescription: 'A ping command',\n\t// alias : [],\n\texecute: async (ctx, args) => {\n\t\tawait ctx.reply('Pong \ud83c\udfd3');\n\t},\n})\n"})}),"\n"]}),"\n",(0,s.jsxs)(n.tabitem,{value:"ts",label:"Typescript",children:["\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",children:"import { commandModule, CommandType } from '@sern/handler';\n\nexport default commandModule({\n\ttype: CommandType.Both,\n\tplugins: [],\n\tdescription: 'A ping command',\n\t// alias : [],\n\texecute: async (ctx, args) => {\n\t\tawait ctx.reply({ content: 'Pong \ud83c\udfd3' });\n\t},\n});\n\n"})}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["To view what each of these properties mean in depth, visit the ",(0,s.jsx)(n.a,{href:"https://sern.dev/docs/api/enums/CommandType",children:"official documentation"}),"."]}),"\n",(0,s.jsx)(n.h3,{id:"types-of-command-modules",children:"Types of command modules"}),"\n",(0,s.jsxs)(n.p,{children:["Every command module ",(0,s.jsx)(n.code,{children:"type"})," is part of an enum. This field allows type inference for the rest of a module's fields. ",(0,s.jsx)(n.br,{}),"\nAll the command types can be found in the ",(0,s.jsx)(n.a,{href:"https://sern.dev/docs/api/enums/CommandType",children:"official documentation"}),"!"]}),"\n",(0,s.jsx)(n.p,{children:"So, lets say you want to make a command module that listens to modals. "}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"Note"}),": Keep in mind you'll need to send a modal with a custom id ",(0,s.jsx)(n.code,{children:"dm-me"}),". This example below is the response to a modal being sent.\n",(0,s.jsx)(n.br,{})]}),"\n",(0,s.jsxs)(n.tabs,{children:["\n",(0,s.jsxs)(n.tabitem,{value:"js",label:"JavaScript",children:["\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-javascript",children:"const { CommandType, commandModule } = require('@sern/handler');\nexports.default = commandModule({\n name: 'dm-me',\n type: CommandType.Modal,\n async execute (modal) {\n const value = modal.fields.getTextInputValue('message');\n modal.client.users.fetch('182326315813306368').then( u =>\n u.send(value + ` from ${modal.user}`)\n );\n modal.reply( { ephemeral:true, content: 'Sent' })\n }\n});\n"})}),"\n"]}),"\n",(0,s.jsxs)(n.tabitem,{value:"ts",label:"Typescript",children:["\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-typescript",children:"import { commandModule, CommandType } from '@sern/handler';\nexport default commandModule({\n name: 'dm-me',\n type: CommandType.Modal,\n async execute (modal) {\n const value = modal.fields.getTextInputValue('message');\n modal.client.users.fetch('182326315813306368').then( u =>\n u.send(value + ` from ${modal.user}`)\n );\n modal.reply( { ephemeral:true, content: 'Sent' })\n }\n});\n"})}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Commands are straight forward. Keep in mind, every other property on the commandModule object is\noptional ",(0,s.jsx)(n.strong,{children:"except"})," the type and execute function."]}),"\n",(0,s.jsx)(n.h1,{id:"context-class",children:"Context class"}),"\n",(0,s.jsxs)(n.p,{children:["The provided Context class helps with modules of ",(0,s.jsx)(n.code,{children:"CommandType.Both"})," (A mixture of slash / legacy commands)."]}),"\n",(0,s.jsx)(n.p,{children:"The Context class is passed into modules with type:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.code,{children:"CommandType.Both"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.code,{children:"CommandType.Slash"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.code,{children:"CommandType.Text"})}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"This data structure helps interop between legacy commands and slash commands with ease."})]})}function c(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(m,{...e})}):m(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>d,x:()=>i});var s=t(6540);const o={},a=s.createContext(o);function d(e){const n=s.useContext(a);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:d(e.components),s.createElement(a.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9b620520.c4e90e6c.js b/assets/js/9b620520.c4e90e6c.js deleted file mode 100644 index c82dfbc35..000000000 --- a/assets/js/9b620520.c4e90e6c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6193],{2423:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>a,frontMatter:()=>t,metadata:()=>l,toc:()=>o});var d=i(4848),r=i(8453);const t={id:"ButtonCommand",title:"Interface: ButtonCommand",sidebar_label:"ButtonCommand",sidebar_position:0,custom_edit_url:null},s=void 0,l={id:"api/interfaces/ButtonCommand",title:"Interface: ButtonCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/ButtonCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ButtonCommand",permalink:"/docs/api/interfaces/ButtonCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ButtonCommand",title:"Interface: ButtonCommand",sidebar_label:"ButtonCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"BothCommand",permalink:"/docs/api/interfaces/BothCommand"},next:{title:"ChannelSelectCommand",permalink:"/docs/api/interfaces/ChannelSelectCommand"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"ButtonCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.code,{children:"ButtonInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"ButtonInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L65",children:"src/types/core-modules.ts:65"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#button",children:(0,d.jsx)(n.code,{children:"Button"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L64",children:"src/types/core-modules.ts:64"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>l});var d=i(6540);const r={},t=d.createContext(r);function s(e){const n=d.useContext(t);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),d.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9c021584.ed65ee60.js b/assets/js/9c021584.ed65ee60.js deleted file mode 100644 index 46c25214f..000000000 --- a/assets/js/9c021584.ed65ee60.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1307],{5173:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/release","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/9e4087bc.1f4ede9b.js b/assets/js/9e4087bc.1f4ede9b.js deleted file mode 100644 index 53a6f9e1d..000000000 --- a/assets/js/9e4087bc.1f4ede9b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2711],{9331:(e,s,r)=>{r.r(s),r.d(s,{default:()=>o});r(6540);var t=r(5489),a=r(1312),i=r(9024),n=r(8511),c=r(1107),l=r(4848);function h(e){let{year:s,posts:r}=e;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(c.A,{as:"h3",id:s,children:s}),(0,l.jsx)("ul",{children:r.map((e=>(0,l.jsx)("li",{children:(0,l.jsxs)(t.A,{to:e.metadata.permalink,children:[e.metadata.formattedDate," - ",e.metadata.title]})},e.metadata.date)))})]})}function d(e){let{years:s}=e;return(0,l.jsx)("section",{className:"margin-vert--lg",children:(0,l.jsx)("div",{className:"container",children:(0,l.jsx)("div",{className:"row",children:s.map(((e,s)=>(0,l.jsx)("div",{className:"col col--4 margin-vert--lg",children:(0,l.jsx)(h,{...e})},s)))})})})}function o(e){let{archive:s}=e;const r=(0,a.T)({id:"theme.blog.archive.title",message:"Archive",description:"The page & hero title of the blog archive page"}),t=(0,a.T)({id:"theme.blog.archive.description",message:"Archive",description:"The page & hero description of the blog archive page"}),h=function(e){const s=e.reduce(((e,s)=>{const r=s.metadata.date.split("-")[0],t=e.get(r)??[];return e.set(r,[s,...t])}),new Map);return Array.from(s,(e=>{let[s,r]=e;return{year:s,posts:r}}))}(s.blogPosts);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(i.be,{title:r,description:t}),(0,l.jsxs)(n.A,{children:[(0,l.jsx)("header",{className:"hero hero--primary",children:(0,l.jsxs)("div",{className:"container",children:[(0,l.jsx)(c.A,{as:"h1",className:"hero__title",children:r}),(0,l.jsx)("p",{className:"hero__subtitle",children:t})]})}),(0,l.jsx)("main",{children:h.length>0&&(0,l.jsx)(d,{years:h})})]})]})}}}]); \ No newline at end of file diff --git a/assets/js/9f1290f8.547349cf.js b/assets/js/9f1290f8.547349cf.js deleted file mode 100644 index e67812b0b..000000000 --- a/assets/js/9f1290f8.547349cf.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6102],{841:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>a,frontMatter:()=>l,metadata:()=>t,toc:()=>h});var r=i(4848),d=i(8453);const l={id:"DiscordEmitterPlugin",title:"Interface: DiscordEmitterPlugin",sidebar_label:"DiscordEmitterPlugin",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/DiscordEmitterPlugin",title:"Interface: DiscordEmitterPlugin",description:"Hierarchy",source:"@site/docs/api/interfaces/DiscordEmitterPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/DiscordEmitterPlugin",permalink:"/docs/api/interfaces/DiscordEmitterPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DiscordEmitterPlugin",title:"Interface: DiscordEmitterPlugin",sidebar_label:"DiscordEmitterPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DependencyConfiguration",permalink:"/docs/api/interfaces/DependencyConfiguration"},next:{title:"DiscordEventCommand",permalink:"/docs/api/interfaces/DiscordEventCommand"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"DiscordEmitterPlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"payload"}),": { ",(0,r.jsx)(n.code,{children:"absPath"}),": ",(0,r.jsx)(n.code,{children:"string"})," ; ",(0,r.jsx)(n.code,{children:"mod"}),": ",(0,r.jsx)(n.code,{children:"DiscordEventCommand"}),"<keyof ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"> & { ",(0,r.jsx)(n.code,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})," } }, ",(0,r.jsx)(n.code,{children:"controller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"payload"}),", ",(0,r.jsx)(n.code,{children:"controller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"Object"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload.absPath"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"string"})})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"payload.mod"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"DiscordEventCommand"}),"<keyof ",(0,r.jsx)(n.code,{children:"ClientEvents"}),"> & { ",(0,r.jsx)(n.code,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})," }"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L49",children:"src/handler/plugins/plugin.ts:49"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L31",children:"src/handler/plugins/plugin.ts:31"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#command",children:(0,r.jsx)(n.code,{children:"Command"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L48",children:"src/handler/plugins/plugin.ts:48"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var r=i(6540);const d={},l=r.createContext(d);function s(e){const n=r.useContext(l);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:s(e.components),r.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a0b9ee13.29ed2101.js b/assets/js/a0b9ee13.29ed2101.js deleted file mode 100644 index 3365a86de..000000000 --- a/assets/js/a0b9ee13.29ed2101.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7557],{3045:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>s,metadata:()=>l,toc:()=>h});var i=r(4848),d=r(8453);const s={id:"SernEventCommand",title:"Interface: SernEventCommand<T>",sidebar_label:"SernEventCommand",sidebar_position:0,custom_edit_url:null},t=void 0,l={id:"api/interfaces/SernEventCommand",title:"Interface: SernEventCommand<T>",description:"Type parameters",source:"@site/docs/api/interfaces/SernEventCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernEventCommand",permalink:"/docs/api/interfaces/SernEventCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernEventCommand",title:"Interface: SernEventCommand<T>",sidebar_label:"SernEventCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernEmitterPlugin",permalink:"/docs/api/interfaces/SernEmitterPlugin"},next:{title:"SernEventPlugin",permalink:"/docs/api/interfaces/SernEventPlugin"}},c={},h=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"name",id:"name",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"Methods",id:"methods",level:2},{value:"execute",id:"execute",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"T"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,i.jsx)(n.code,{children:"SernEventsMapping"})})," = keyof ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,i.jsx)(n.code,{children:"SernEventsMapping"})})]})]})})]}),"\n",(0,i.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"Module"})}),"\n",(0,i.jsxs)(n.p,{children:["\u21b3 ",(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"SernEventCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"description"}),": ",(0,i.jsx)(n.code,{children:"string"})]}),"\n",(0,i.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,i.jsx)(n.p,{children:"Module.description"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.code,{children:"Optional"})," ",(0,i.jsx)(n.strong,{children:"name"}),": ",(0,i.jsx)(n.code,{children:"T"})]}),"\n",(0,i.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,i.jsx)(n.p,{children:"Module.name"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L42",children:"src/types/core-modules.ts:42"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"onEvent"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,i.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,i.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,i.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,i.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"plugins"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,i.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,i.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,i.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,i.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"type"}),": ",(0,i.jsx)(n.a,{href:"/docs/api/enums/EventType#sern",children:(0,i.jsx)(n.code,{children:"Sern"})})]}),"\n",(0,i.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,i.jsx)(n.p,{children:"Module.type"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L43",children:"src/types/core-modules.ts:43"})}),"\n",(0,i.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,i.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"execute"}),"(",(0,i.jsx)(n.code,{children:"...args"}),"): ",(0,i.jsx)(n.code,{children:"unknown"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"...args"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,i.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:(0,i.jsx)(n.code,{children:"SernEventsMapping"})}),"[",(0,i.jsx)(n.code,{children:"T"}),"]"]})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"unknown"})}),"\n",(0,i.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,i.jsx)(n.p,{children:"Module.execute"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L44",children:"src/types/core-modules.ts:44"})})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>t,x:()=>l});var i=r(6540);const d={},s=i.createContext(d);function t(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:t(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a0fd2c7a.408ca2fb.js b/assets/js/a0fd2c7a.408ca2fb.js deleted file mode 100644 index 00749ca6f..000000000 --- a/assets/js/a0fd2c7a.408ca2fb.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7767],{8787:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>a,frontMatter:()=>s,metadata:()=>t,toc:()=>o});var d=i(4848),r=i(8453);const s={id:"DiscordEventCommand",title:"Interface: DiscordEventCommand<T>",sidebar_label:"DiscordEventCommand",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/DiscordEventCommand",title:"Interface: DiscordEventCommand<T>",description:"Type parameters",source:"@site/docs/api/interfaces/DiscordEventCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/DiscordEventCommand",permalink:"/docs/api/interfaces/DiscordEventCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DiscordEventCommand",title:"Interface: DiscordEventCommand<T>",sidebar_label:"DiscordEventCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DiscordEmitterPlugin",permalink:"/docs/api/interfaces/DiscordEmitterPlugin"},next:{title:"DiscordEventPlugin",permalink:"/docs/api/interfaces/DiscordEventPlugin"}},c={},o=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"name",id:"name",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"Methods",id:"methods",level:2},{value:"execute",id:"execute",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,d.jsx)(n.code,{children:"ClientEvents"})," = keyof ",(0,d.jsx)(n.code,{children:"ClientEvents"})]})]})})]}),"\n",(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"DiscordEventCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L106",children:"src/types/core-modules.ts:106"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/EventType#discord",children:(0,d.jsx)(n.code,{children:"Discord"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L107",children:"src/types/core-modules.ts:107"})}),"\n",(0,d.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"execute"}),"(",(0,d.jsx)(n.code,{children:"...args"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"...args"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"ClientEvents"}),"[",(0,d.jsx)(n.code,{children:"T"}),"]"]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L108",children:"src/types/core-modules.ts:108"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var d=i(6540);const r={},s=d.createContext(r);function l(e){const n=d.useContext(s);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),d.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a3030d1c.2ebc2980.js b/assets/js/a3030d1c.2ebc2980.js deleted file mode 100644 index 26b6eedcc..000000000 --- a/assets/js/a3030d1c.2ebc2980.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5776],{577:(e,n,d)=>{d.r(n),d.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>o,frontMatter:()=>t,metadata:()=>i,toc:()=>a});var l=d(4848),r=d(8453);const t={id:"ModuleManager",title:"Interface: ModuleManager",sidebar_label:"ModuleManager",sidebar_position:0,custom_edit_url:null},s=void 0,i={id:"api/interfaces/ModuleManager",title:"Interface: ModuleManager",description:"Since",source:"@site/docs/api/interfaces/ModuleManager.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ModuleManager",permalink:"/docs/api/interfaces/ModuleManager",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ModuleManager",title:"Interface: ModuleManager",sidebar_label:"ModuleManager",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Module",permalink:"/docs/api/interfaces/Module"},next:{title:"Plugin",permalink:"/docs/api/interfaces/Plugin"}},c={},a=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Implemented by",id:"implemented-by",level:2},{value:"Methods",id:"methods",level:2},{value:"get",id:"get",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"getByNameCommandType",id:"getbynamecommandtype",level:3},{value:"Type parameters",id:"type-parameters",level:4},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"getMetadata",id:"getmetadata",level:3},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"getPublishableCommands",id:"getpublishablecommands",level:3},{value:"Returns",id:"returns-3",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"set",id:"set",level:3},{value:"Parameters",id:"parameters-3",level:4},{value:"Returns",id:"returns-4",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"setMetadata",id:"setmetadata",level:3},{value:"Parameters",id:"parameters-4",level:4},{value:"Returns",id:"returns-5",level:4},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.code,{children:"Since"})})}),"\n",(0,l.jsx)(n.p,{children:"2.0.0"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:"direct access to the module manager will be removed in version 4"}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsxs)(n.li,{children:["\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.code,{children:"MetadataAccess"})}),"\n",(0,l.jsxs)(n.p,{children:["\u21b3 ",(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.code,{children:"ModuleManager"})})]}),"\n"]}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"implemented-by",children:"Implemented by"}),"\n",(0,l.jsxs)(n.ul,{children:["\n",(0,l.jsx)(n.li,{children:(0,l.jsx)(n.a,{href:"/docs/api/classes/DefaultModuleManager",children:(0,l.jsx)(n.code,{children:"DefaultModuleManager"})})}),"\n"]}),"\n",(0,l.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,l.jsx)(n.h3,{id:"get",children:"get"}),"\n",(0,l.jsxs)(n.p,{children:["\u25b8 ",(0,l.jsx)(n.strong,{children:"get"}),"(",(0,l.jsx)(n.code,{children:"id"}),"): ",(0,l.jsx)(n.code,{children:"undefined"})," | ",(0,l.jsx)(n.code,{children:"Module"})]}),"\n",(0,l.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,l.jsxs)(n.table,{children:[(0,l.jsx)(n.thead,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,l.jsx)(n.tbody,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"id"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"string"})})]})})]}),"\n",(0,l.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,l.jsxs)(n.p,{children:[(0,l.jsx)(n.code,{children:"undefined"})," | ",(0,l.jsx)(n.code,{children:"Module"})]}),"\n",(0,l.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-manager.ts#L19",children:"src/core/contracts/module-manager.ts:19"})}),"\n",(0,l.jsx)(n.hr,{}),"\n",(0,l.jsx)(n.h3,{id:"getbynamecommandtype",children:"getByNameCommandType"}),"\n",(0,l.jsxs)(n.p,{children:["\u25b8 ",(0,l.jsx)(n.strong,{children:"getByNameCommandType"}),"<",(0,l.jsx)(n.code,{children:"T"}),">(",(0,l.jsx)(n.code,{children:"name"}),", ",(0,l.jsx)(n.code,{children:"commandType"}),"): ",(0,l.jsx)(n.code,{children:"undefined"})," | ",(0,l.jsx)(n.a,{href:"/docs/api/interfaces/CommandModuleDefs",children:(0,l.jsx)(n.code,{children:"CommandModuleDefs"})}),"[",(0,l.jsx)(n.code,{children:"T"}),"]"]}),"\n",(0,l.jsx)(n.h4,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,l.jsxs)(n.table,{children:[(0,l.jsx)(n.thead,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,l.jsx)(n.tbody,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"T"})}),(0,l.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,l.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,l.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,l.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,l.jsxs)(n.table,{children:[(0,l.jsx)(n.thead,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,l.jsxs)(n.tbody,{children:[(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"name"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"string"})})]}),(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"commandType"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"T"})})]})]})]}),"\n",(0,l.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,l.jsxs)(n.p,{children:[(0,l.jsx)(n.code,{children:"undefined"})," | ",(0,l.jsx)(n.a,{href:"/docs/api/interfaces/CommandModuleDefs",children:(0,l.jsx)(n.code,{children:"CommandModuleDefs"})}),"[",(0,l.jsx)(n.code,{children:"T"}),"]"]}),"\n",(0,l.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-manager.ts#L30",children:"src/core/contracts/module-manager.ts:30"})}),"\n",(0,l.jsx)(n.hr,{}),"\n",(0,l.jsx)(n.h3,{id:"getmetadata",children:"getMetadata"}),"\n",(0,l.jsxs)(n.p,{children:["\u25b8 ",(0,l.jsx)(n.strong,{children:"getMetadata"}),"(",(0,l.jsx)(n.code,{children:"m"}),"): ",(0,l.jsx)(n.code,{children:"undefined"})," | ",(0,l.jsx)(n.code,{children:"CommandMeta"})]}),"\n",(0,l.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,l.jsxs)(n.table,{children:[(0,l.jsx)(n.thead,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,l.jsx)(n.tbody,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"m"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"Module"})})]})})]}),"\n",(0,l.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,l.jsxs)(n.p,{children:[(0,l.jsx)(n.code,{children:"undefined"})," | ",(0,l.jsx)(n.code,{children:"CommandMeta"})]}),"\n",(0,l.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,l.jsx)(n.p,{children:"MetadataAccess.getMetadata"}),"\n",(0,l.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-manager.ts#L10",children:"src/core/contracts/module-manager.ts:10"})}),"\n",(0,l.jsx)(n.hr,{}),"\n",(0,l.jsx)(n.h3,{id:"getpublishablecommands",children:"getPublishableCommands"}),"\n",(0,l.jsxs)(n.p,{children:["\u25b8 ",(0,l.jsx)(n.strong,{children:"getPublishableCommands"}),"(): ",(0,l.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,l.jsx)(n.code,{children:"CommandModule"})}),"[]"]}),"\n",(0,l.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,l.jsxs)(n.p,{children:[(0,l.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,l.jsx)(n.code,{children:"CommandModule"})}),"[]"]}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.strong,{children:(0,l.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,l.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-manager.ts#L25",children:"src/core/contracts/module-manager.ts:25"})}),"\n",(0,l.jsx)(n.hr,{}),"\n",(0,l.jsx)(n.h3,{id:"set",children:"set"}),"\n",(0,l.jsxs)(n.p,{children:["\u25b8 ",(0,l.jsx)(n.strong,{children:"set"}),"(",(0,l.jsx)(n.code,{children:"id"}),", ",(0,l.jsx)(n.code,{children:"path"}),"): ",(0,l.jsx)(n.code,{children:"void"})]}),"\n",(0,l.jsx)(n.h4,{id:"parameters-3",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,l.jsxs)(n.table,{children:[(0,l.jsx)(n.thead,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,l.jsxs)(n.tbody,{children:[(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"id"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"string"})})]}),(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"path"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"Module"})})]})]})]}),"\n",(0,l.jsx)(n.h4,{id:"returns-4",children:"Returns"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.code,{children:"void"})}),"\n",(0,l.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-manager.ts#L21",children:"src/core/contracts/module-manager.ts:21"})}),"\n",(0,l.jsx)(n.hr,{}),"\n",(0,l.jsx)(n.h3,{id:"setmetadata",children:"setMetadata"}),"\n",(0,l.jsxs)(n.p,{children:["\u25b8 ",(0,l.jsx)(n.strong,{children:"setMetadata"}),"(",(0,l.jsx)(n.code,{children:"m"}),", ",(0,l.jsx)(n.code,{children:"c"}),"): ",(0,l.jsx)(n.code,{children:"void"})]}),"\n",(0,l.jsx)(n.h4,{id:"parameters-4",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,l.jsxs)(n.table,{children:[(0,l.jsx)(n.thead,{children:(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,l.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,l.jsxs)(n.tbody,{children:[(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"m"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"Module"})})]}),(0,l.jsxs)(n.tr,{children:[(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"c"})}),(0,l.jsx)(n.td,{style:{textAlign:"left"},children:(0,l.jsx)(n.code,{children:"CommandMeta"})})]})]})]}),"\n",(0,l.jsx)(n.h4,{id:"returns-5",children:"Returns"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.code,{children:"void"})}),"\n",(0,l.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,l.jsx)(n.p,{children:"MetadataAccess.setMetadata"}),"\n",(0,l.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,l.jsx)(n.p,{children:(0,l.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-manager.ts#L11",children:"src/core/contracts/module-manager.ts:11"})})]})}function o(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,l.jsx)(n,{...e,children:(0,l.jsx)(h,{...e})}):h(e)}},8453:(e,n,d)=>{d.d(n,{R:()=>s,x:()=>i});var l=d(6540);const r={},t=l.createContext(r);function s(e){const n=l.useContext(t);return l.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),l.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a4d0ee3e.3528b007.js b/assets/js/a4d0ee3e.3528b007.js deleted file mode 100644 index 133dc0e2c..000000000 --- a/assets/js/a4d0ee3e.3528b007.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2014],{6091:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>l,metadata:()=>s,toc:()=>o});var d=i(4848),r=i(8453);const l={id:"MentionableSelectCommand",title:"Interface: MentionableSelectCommand",sidebar_label:"MentionableSelectCommand",sidebar_position:0,custom_edit_url:null},t=void 0,s={id:"api/interfaces/MentionableSelectCommand",title:"Interface: MentionableSelectCommand",description:"Hierarchy",source:"@site/docs/api/interfaces/MentionableSelectCommand.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/MentionableSelectCommand",permalink:"/docs/api/interfaces/MentionableSelectCommand",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"MentionableSelectCommand",title:"Interface: MentionableSelectCommand",sidebar_label:"MentionableSelectCommand",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Logging",permalink:"/docs/api/interfaces/Logging"},next:{title:"ModalSubmitCommand",permalink:"/docs/api/interfaces/ModalSubmitCommand"}},c={},o=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"onEvent",id:"onevent",level:3},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"plugins",id:"plugins",level:3},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-5",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsxs)(n.li,{children:["\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"Module"})}),"\n",(0,d.jsxs)(n.p,{children:["\u21b3 ",(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"MentionableSelectCommand"})})]}),"\n"]}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.description"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L36",children:"src/types/core-modules.ts:36"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"ctx"}),": ",(0,d.jsx)(n.code,{children:"MentionableSelectMenuInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">) => ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"ctx"}),"): ",(0,d.jsx)(n.code,{children:"unknown"})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ctx"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.code,{children:"MentionableSelectMenuInteraction"}),"<",(0,d.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"unknown"})}),"\n",(0,d.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.execute"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L85",children:"src/types/core-modules.ts:85"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.name"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L33",children:"src/types/core-modules.ts:33"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"onevent",children:"onEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"onEvent"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.onEvent"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L34",children:"src/types/core-modules.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"plugins"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<",(0,d.jsx)(n.code,{children:"any"}),"[]>[]"]}),"\n",(0,d.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,d.jsx)(n.p,{children:"Module.plugins"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L35",children:"src/types/core-modules.ts:35"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType#mentionableselect",children:(0,d.jsx)(n.code,{children:"MentionableSelect"})})]}),"\n",(0,d.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,d.jsx)(n.p,{children:"Module.type"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L84",children:"src/types/core-modules.ts:84"})})]})}function a(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>s});var d=i(6540);const r={},l=d.createContext(r);function t(e){const n=d.useContext(l);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:t(e.components),d.createElement(l.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a5467962.7db8ad68.js b/assets/js/a5467962.7db8ad68.js deleted file mode 100644 index 758ed1fae..000000000 --- a/assets/js/a5467962.7db8ad68.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2831],{4113:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>t,contentTitle:()=>l,default:()=>o,frontMatter:()=>d,metadata:()=>c,toc:()=>h});var r=s(4848),i=s(8453);const d={id:"CommandType",title:"Enumeration: CommandType",sidebar_label:"CommandType",sidebar_position:0,custom_edit_url:null},l=void 0,c={id:"api/enums/CommandType",title:"Enumeration: CommandType",description:"Since",source:"@site/docs/api/enums/CommandType.md",sourceDirName:"api/enums",slug:"/api/enums/CommandType",permalink:"/docs/api/enums/CommandType",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CommandType",title:"Enumeration: CommandType",sidebar_label:"CommandType",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Sern",permalink:"/docs/api/namespaces/Sern"},next:{title:"EventType",permalink:"/docs/api/enums/EventType"}},t={},h=[{value:"Enumeration Members",id:"enumeration-members",level:2},{value:"Both",id:"both",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"Button",id:"button",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"ChannelSelect",id:"channelselect",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"CtxMsg",id:"ctxmsg",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"CtxUser",id:"ctxuser",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"MentionableSelect",id:"mentionableselect",level:3},{value:"Defined in",id:"defined-in-5",level:4},{value:"Modal",id:"modal",level:3},{value:"Defined in",id:"defined-in-6",level:4},{value:"RoleSelect",id:"roleselect",level:3},{value:"Defined in",id:"defined-in-7",level:4},{value:"Slash",id:"slash",level:3},{value:"Defined in",id:"defined-in-8",level:4},{value:"StringSelect",id:"stringselect",level:3},{value:"Defined in",id:"defined-in-9",level:4},{value:"Text",id:"text",level:3},{value:"Defined in",id:"defined-in-10",level:4},{value:"UserSelect",id:"userselect",level:3},{value:"Defined in",id:"defined-in-11",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",pre:"pre",strong:"strong",...(0,i.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Since"})})}),"\n",(0,r.jsx)(n.p,{children:"1.0.0\nA bitfield that discriminates command modules"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Example"})})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-ts",children:"export default commandModule({\n // highlight-next-line\n type : CommandType.Text,\n name : 'a text command'\n execute(message) {\n console.log(message.content)\n }\n})\n"})}),"\n",(0,r.jsx)(n.h2,{id:"enumeration-members",children:"Enumeration Members"}),"\n",(0,r.jsx)(n.h3,{id:"both",children:"Both"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Both"})," = ",(0,r.jsx)(n.code,{children:"3"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L20",children:"src/core/structures/enums.ts:20"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"button",children:"Button"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Button"})," = ",(0,r.jsx)(n.code,{children:"16"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L23",children:"src/core/structures/enums.ts:23"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"channelselect",children:"ChannelSelect"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"ChannelSelect"})," = ",(0,r.jsx)(n.code,{children:"1024"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L29",children:"src/core/structures/enums.ts:29"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"ctxmsg",children:"CtxMsg"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"CtxMsg"})," = ",(0,r.jsx)(n.code,{children:"8"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L22",children:"src/core/structures/enums.ts:22"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"ctxuser",children:"CtxUser"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"CtxUser"})," = ",(0,r.jsx)(n.code,{children:"4"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L21",children:"src/core/structures/enums.ts:21"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"mentionableselect",children:"MentionableSelect"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"MentionableSelect"})," = ",(0,r.jsx)(n.code,{children:"512"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L28",children:"src/core/structures/enums.ts:28"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"modal",children:"Modal"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Modal"})," = ",(0,r.jsx)(n.code,{children:"64"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L25",children:"src/core/structures/enums.ts:25"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"roleselect",children:"RoleSelect"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"RoleSelect"})," = ",(0,r.jsx)(n.code,{children:"256"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L27",children:"src/core/structures/enums.ts:27"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"slash",children:"Slash"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Slash"})," = ",(0,r.jsx)(n.code,{children:"2"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-8",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L19",children:"src/core/structures/enums.ts:19"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"stringselect",children:"StringSelect"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"StringSelect"})," = ",(0,r.jsx)(n.code,{children:"32"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-9",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L24",children:"src/core/structures/enums.ts:24"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"text",children:"Text"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Text"})," = ",(0,r.jsx)(n.code,{children:"1"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-10",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L18",children:"src/core/structures/enums.ts:18"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"userselect",children:"UserSelect"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"UserSelect"})," = ",(0,r.jsx)(n.code,{children:"128"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-11",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L26",children:"src/core/structures/enums.ts:26"})})]})}function o(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>l,x:()=>c});var r=s(6540);const i={},d=r.createContext(i);function l(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a6aa9e1f.2d113433.js b/assets/js/a6aa9e1f.2d113433.js deleted file mode 100644 index 5cc081a8d..000000000 --- a/assets/js/a6aa9e1f.2d113433.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7643],{7785:(e,t,n)=>{n.r(t),n.d(t,{default:()=>m});n(6540);var i=n(53),a=n(4586),r=n(9024),s=n(7559),l=n(6535),o=n(7713),d=n(1463),g=n(3892),c=n(4848);function p(e){const{metadata:t}=e,{siteConfig:{title:n}}=(0,a.A)(),{blogDescription:i,blogTitle:s,permalink:l}=t,o="/"===l?n:s;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(r.be,{title:o,description:i}),(0,c.jsx)(d.A,{tag:"blog_posts_list"})]})}function h(e){const{metadata:t,items:n,sidebar:i}=e;return(0,c.jsxs)(l.A,{sidebar:i,children:[(0,c.jsx)(g.A,{items:n}),(0,c.jsx)(o.A,{metadata:t})]})}function m(e){return(0,c.jsxs)(r.e3,{className:(0,i.A)(s.G.wrapper.blogPages,s.G.page.blogListPage),children:[(0,c.jsx)(p,{...e}),(0,c.jsx)(h,{...e})]})}},7713:(e,t,n)=>{n.d(t,{A:()=>s});n(6540);var i=n(1312),a=n(9022),r=n(4848);function s(e){const{metadata:t}=e,{previousPage:n,nextPage:s}=t;return(0,r.jsxs)("nav",{className:"pagination-nav","aria-label":(0,i.T)({id:"theme.blog.paginator.navAriaLabel",message:"Blog list page navigation",description:"The ARIA label for the blog pagination"}),children:[n&&(0,r.jsx)(a.A,{permalink:n,title:(0,r.jsx)(i.A,{id:"theme.blog.paginator.newerEntries",description:"The label used to navigate to the newer blog posts page (previous page)",children:"Newer Entries"})}),s&&(0,r.jsx)(a.A,{permalink:s,title:(0,r.jsx)(i.A,{id:"theme.blog.paginator.olderEntries",description:"The label used to navigate to the older blog posts page (next page)",children:"Older Entries"}),isNext:!0})]})}},3892:(e,t,n)=>{n.d(t,{A:()=>s});n(6540);var i=n(7131),a=n(8258),r=n(4848);function s(e){let{items:t,component:n=a.A}=e;return(0,r.jsx)(r.Fragment,{children:t.map((e=>{let{content:t}=e;return(0,r.jsx)(i.i,{content:t,children:(0,r.jsx)(n,{children:(0,r.jsx)(t,{})})},t.metadata.permalink)}))})}},4428:(e,t,n)=>{n.d(t,{A:()=>o});var i=n(6540),a=n(2303),r=n(6846),s=n(3717),l=n(4848);function o(e){let{children:t,...n}=e;const o=(0,a.A)(),d=function(e){return i.Children.toArray(e).some((e=>(0,i.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),g="string"==typeof d?s.A:r.A;return(0,l.jsx)(g,{...n,children:d},String(o))}}}]); \ No newline at end of file diff --git a/assets/js/a6d8dddc.72dbc8e5.js b/assets/js/a6d8dddc.72dbc8e5.js deleted file mode 100644 index 96a8a7b35..000000000 --- a/assets/js/a6d8dddc.72dbc8e5.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3033],{9088:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>l,contentTitle:()=>d,default:()=>h,frontMatter:()=>i,metadata:()=>o,toc:()=>c});var s=r(4848),t=r(8453);const i={id:"CommandError.Response",title:"Interface: Response",sidebar_label:"Response",custom_edit_url:null},d=void 0,o={id:"api/interfaces/CommandError.Response",title:"Interface: Response",description:"CommandError.Response",source:"@site/docs/api/interfaces/CommandError.Response.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/CommandError.Response",permalink:"/docs/api/interfaces/CommandError.Response",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",frontMatter:{id:"CommandError.Response",title:"Interface: Response",sidebar_label:"Response",custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Wrapper",permalink:"/docs/api/interfaces/Wrapper"},next:{title:"Result",permalink:"/docs/api/interfaces/Presence.Result"}},l={},c=[{value:"Properties",id:"properties",level:2},{value:"body",id:"body",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"log",id:"log",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-2",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.a,{href:"/docs/api/namespaces/CommandError",children:"CommandError"}),".Response"]}),"\n",(0,s.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,s.jsx)(n.h3,{id:"body",children:"body"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"Optional"})," ",(0,s.jsx)(n.strong,{children:"body"}),": ",(0,s.jsx)(n.code,{children:"ReplyOptions"})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/504cdee/src/core/structures/command-error.ts#L6",children:"src/core/structures/command-error.ts:6"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"log",children:"log"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"Optional"})," ",(0,s.jsx)(n.strong,{children:"log"}),": ",(0,s.jsx)(n.code,{children:"Object"})]}),"\n",(0,s.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"message"})}),(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"unknown"})})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"type"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:["keyof ",(0,s.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:(0,s.jsx)(n.code,{children:"Logging"})}),"<",(0,s.jsx)(n.code,{children:"unknown"}),">"]})]})]})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/504cdee/src/core/structures/command-error.ts#L7",children:"src/core/structures/command-error.ts:7"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"type"}),": ",(0,s.jsx)(n.code,{children:'"fail"'})," | ",(0,s.jsx)(n.code,{children:'"continue"'})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/504cdee/src/core/structures/command-error.ts#L5",children:"src/core/structures/command-error.ts:5"})})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>d,x:()=>o});var s=r(6540);const t={},i=s.createContext(t);function d(e){const n=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:d(e.components),s.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a7023ddc.6615db4d.js b/assets/js/a7023ddc.6615db4d.js deleted file mode 100644 index 77e306788..000000000 --- a/assets/js/a7023ddc.6615db4d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9267],{8289:e=>{e.exports=JSON.parse('[{"label":"guides","permalink":"/blog/tags/guides","count":2},{"label":"branding","permalink":"/blog/tags/branding","count":1},{"label":"release","permalink":"/blog/tags/release","count":4}]')}}]); \ No newline at end of file diff --git a/assets/js/a727fde1.b20a2b9a.js b/assets/js/a727fde1.b20a2b9a.js deleted file mode 100644 index fd9d2b4eb..000000000 --- a/assets/js/a727fde1.b20a2b9a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5342],{1438:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>o,default:()=>u,frontMatter:()=>r,metadata:()=>c,toc:()=>d});var i=t(4848),s=t(8453);const r={id:"Init",title:"Interface: Init",sidebar_label:"Init",sidebar_position:0,custom_edit_url:null},o=void 0,c={id:"api/interfaces/Init",title:"Interface: Init",description:"Represents an initialization contract.",source:"@site/docs/api/interfaces/Init.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Init",permalink:"/docs/api/interfaces/Init",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Init",title:"Interface: Init",sidebar_label:"Init",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ExternalEventPlugin",permalink:"/docs/api/interfaces/ExternalEventPlugin"},next:{title:"InitArgs",permalink:"/docs/api/interfaces/InitArgs"}},a={},d=[{value:"Methods",id:"methods",level:2},{value:"init",id:"init",level:3},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4}];function l(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"Represents an initialization contract.\nLet dependencies implement this to initiate some logic."}),"\n",(0,i.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,i.jsx)(n.h3,{id:"init",children:"init"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"init"}),"(): ",(0,i.jsx)(n.code,{children:"unknown"})]}),"\n",(0,i.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"unknown"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/hooks.ts#L7",children:"src/core/contracts/hooks.ts:7"})})]})}function u(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(l,{...e})}):l(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>c});var i=t(6540);const s={},r=i.createContext(s);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a7bd4aaa.5a4646c2.js b/assets/js/a7bd4aaa.5a4646c2.js deleted file mode 100644 index 7b890578f..000000000 --- a/assets/js/a7bd4aaa.5a4646c2.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7098],{4532:(e,n,s)=>{s.r(n),s.d(n,{default:()=>x});s(6540);var r=s(9024),t=s(2967),o=s(2252),i=s(2831),c=s(1463),u=s(4848);function a(e){const{version:n}=e;return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(c.A,{version:n.version,tag:(0,t.tU)(n.pluginId,n.version)}),(0,u.jsx)(r.be,{children:n.noIndex&&(0,u.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})]})}function l(e){const{version:n,route:s}=e;return(0,u.jsx)(r.e3,{className:n.className,children:(0,u.jsx)(o.n,{version:n,children:(0,i.v)(s.routes)})})}function x(e){return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(a,{...e}),(0,u.jsx)(l,{...e})]})}}}]); \ No newline at end of file diff --git a/assets/js/a94703ab.35d0f890.js b/assets/js/a94703ab.35d0f890.js deleted file mode 100644 index 39b4b8aa8..000000000 --- a/assets/js/a94703ab.35d0f890.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9048],{2559:(e,t,n)=>{n.r(t),n.d(t,{default:()=>be});var a=n(6540),o=n(53),i=n(9024),s=n(7559),l=n(1754),r=n(6588),c=n(1312),d=n(3104),u=n(5062);const m={backToTopButton:"backToTopButton_sjWU",backToTopButtonShow:"backToTopButtonShow_xfvO"};var b=n(4848);function h(){const{shown:e,scrollToTop:t}=function(e){let{threshold:t}=e;const[n,o]=(0,a.useState)(!1),i=(0,a.useRef)(!1),{startScroll:s,cancelScroll:l}=(0,d.gk)();return(0,d.Mq)(((e,n)=>{let{scrollY:a}=e;const s=n?.scrollY;s&&(i.current?i.current=!1:a>=s?(l(),o(!1)):a<t?o(!1):a+window.innerHeight<document.documentElement.scrollHeight&&o(!0))})),(0,u.$)((e=>{e.location.hash&&(i.current=!0,o(!1))})),{shown:n,scrollToTop:()=>s(0)}}({threshold:300});return(0,b.jsx)("button",{"aria-label":(0,c.T)({id:"theme.BackToTopButton.buttonAriaLabel",message:"Scroll back to top",description:"The ARIA label for the back to top button"}),className:(0,o.A)("clean-btn",s.G.common.backToTopButton,m.backToTopButton,e&&m.backToTopButtonShow),type:"button",onClick:t})}var p=n(3109),x=n(6347),j=n(4581),f=n(6342),_=n(3465);function v(e){return(0,b.jsx)("svg",{width:"20",height:"20","aria-hidden":"true",...e,children:(0,b.jsxs)("g",{fill:"#7a7a7a",children:[(0,b.jsx)("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"}),(0,b.jsx)("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 A={collapseSidebarButton:"collapseSidebarButton_PEFL",collapseSidebarButtonIcon:"collapseSidebarButtonIcon_kv0_"};function g(e){let{onClick:t}=e;return(0,b.jsx)("button",{type:"button",title:(0,c.T)({id:"theme.docs.sidebar.collapseButtonTitle",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),"aria-label":(0,c.T)({id:"theme.docs.sidebar.collapseButtonAriaLabel",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),className:(0,o.A)("button button--secondary button--outline",A.collapseSidebarButton),onClick:t,children:(0,b.jsx)(v,{className:A.collapseSidebarButtonIcon})})}var k=n(5041),C=n(9532);const S=Symbol("EmptyContext"),T=a.createContext(S);function N(e){let{children:t}=e;const[n,o]=(0,a.useState)(null),i=(0,a.useMemo)((()=>({expandedItem:n,setExpandedItem:o})),[n]);return(0,b.jsx)(T.Provider,{value:i,children:t})}var I=n(1422),B=n(9169),y=n(5489),w=n(2303);function L(e){let{collapsed:t,categoryLabel:n,onClick:a}=e;return(0,b.jsx)("button",{"aria-label":t?(0,c.T)({id:"theme.DocSidebarItem.expandCategoryAriaLabel",message:"Expand sidebar category '{label}'",description:"The ARIA label to expand the sidebar category"},{label:n}):(0,c.T)({id:"theme.DocSidebarItem.collapseCategoryAriaLabel",message:"Collapse sidebar category '{label}'",description:"The ARIA label to collapse the sidebar category"},{label:n}),type:"button",className:"clean-btn menu__caret",onClick:a})}function E(e){let{item:t,onItemClick:n,activePath:i,level:r,index:c,...d}=e;const{items:u,label:m,collapsible:h,className:p,href:x}=t,{docs:{sidebar:{autoCollapseCategories:j}}}=(0,f.p)(),_=function(e){const t=(0,w.A)();return(0,a.useMemo)((()=>e.href&&!e.linkUnlisted?e.href:!t&&e.collapsible?(0,l.Nr)(e):void 0),[e,t])}(t),v=(0,l.w8)(t,i),A=(0,B.ys)(x,i),{collapsed:g,setCollapsed:k}=(0,I.u)({initialState:()=>!!h&&(!v&&t.collapsed)}),{expandedItem:N,setExpandedItem:E}=function(){const e=(0,a.useContext)(T);if(e===S)throw new C.dV("DocSidebarItemsExpandedStateProvider");return e}(),M=function(e){void 0===e&&(e=!g),E(e?null:c),k(e)};return function(e){let{isActive:t,collapsed:n,updateCollapsed:o}=e;const i=(0,C.ZC)(t);(0,a.useEffect)((()=>{t&&!i&&n&&o(!1)}),[t,i,n,o])}({isActive:v,collapsed:g,updateCollapsed:M}),(0,a.useEffect)((()=>{h&&null!=N&&N!==c&&j&&k(!0)}),[h,N,c,k,j]),(0,b.jsxs)("li",{className:(0,o.A)(s.G.docs.docSidebarItemCategory,s.G.docs.docSidebarItemCategoryLevel(r),"menu__list-item",{"menu__list-item--collapsed":g},p),children:[(0,b.jsxs)("div",{className:(0,o.A)("menu__list-item-collapsible",{"menu__list-item-collapsible--active":A}),children:[(0,b.jsx)(y.A,{className:(0,o.A)("menu__link",{"menu__link--sublist":h,"menu__link--sublist-caret":!x&&h,"menu__link--active":v}),onClick:h?e=>{n?.(t),x?M(!1):(e.preventDefault(),M())}:()=>{n?.(t)},"aria-current":A?"page":void 0,"aria-expanded":h?!g:void 0,href:h?_??"#":_,...d,children:m}),x&&h&&(0,b.jsx)(L,{collapsed:g,categoryLabel:m,onClick:e=>{e.preventDefault(),M()}})]}),(0,b.jsx)(I.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:g,children:(0,b.jsx)(U,{items:u,tabIndex:g?-1:0,onItemClick:n,activePath:i,level:r+1})})]})}var M=n(6654),H=n(3186);const G={menuExternalLink:"menuExternalLink_NmtK"};function W(e){let{item:t,onItemClick:n,activePath:a,level:i,index:r,...c}=e;const{href:d,label:u,className:m,autoAddBaseUrl:h}=t,p=(0,l.w8)(t,a),x=(0,M.A)(d);return(0,b.jsx)("li",{className:(0,o.A)(s.G.docs.docSidebarItemLink,s.G.docs.docSidebarItemLinkLevel(i),"menu__list-item",m),children:(0,b.jsxs)(y.A,{className:(0,o.A)("menu__link",!x&&G.menuExternalLink,{"menu__link--active":p}),autoAddBaseUrl:h,"aria-current":p?"page":void 0,to:d,...x&&{onClick:n?()=>n(t):void 0},...c,children:[u,!x&&(0,b.jsx)(H.A,{})]})},u)}const P={menuHtmlItem:"menuHtmlItem_M9Kj"};function R(e){let{item:t,level:n,index:a}=e;const{value:i,defaultStyle:l,className:r}=t;return(0,b.jsx)("li",{className:(0,o.A)(s.G.docs.docSidebarItemLink,s.G.docs.docSidebarItemLinkLevel(n),l&&[P.menuHtmlItem,"menu__list-item"],r),dangerouslySetInnerHTML:{__html:i}},a)}function D(e){let{item:t,...n}=e;switch(t.type){case"category":return(0,b.jsx)(E,{item:t,...n});case"html":return(0,b.jsx)(R,{item:t,...n});default:return(0,b.jsx)(W,{item:t,...n})}}function F(e){let{items:t,...n}=e;const a=(0,l.Y)(t,n.activePath);return(0,b.jsx)(N,{children:a.map(((e,t)=>(0,b.jsx)(D,{item:e,index:t,...n},t)))})}const U=(0,a.memo)(F),V={menu:"menu_SIkG",menuWithAnnouncementBar:"menuWithAnnouncementBar_GW3s"};function Y(e){let{path:t,sidebar:n,className:i}=e;const l=function(){const{isActive:e}=(0,k.Mj)(),[t,n]=(0,a.useState)(e);return(0,d.Mq)((t=>{let{scrollY:a}=t;e&&n(0===a)}),[e]),e&&t}();return(0,b.jsx)("nav",{"aria-label":(0,c.T)({id:"theme.docs.sidebar.navAriaLabel",message:"Docs sidebar",description:"The ARIA label for the sidebar navigation"}),className:(0,o.A)("menu thin-scrollbar",V.menu,l&&V.menuWithAnnouncementBar,i),children:(0,b.jsx)("ul",{className:(0,o.A)(s.G.docs.docSidebarMenu,"menu__list"),children:(0,b.jsx)(U,{items:n,activePath:t,level:1})})})}const K="sidebar_njMd",z="sidebarWithHideableNavbar_wUlq",q="sidebarHidden_VK0M",O="sidebarLogo_isFc";function J(e){let{path:t,sidebar:n,onCollapse:a,isHidden:i}=e;const{navbar:{hideOnScroll:s},docs:{sidebar:{hideable:l}}}=(0,f.p)();return(0,b.jsxs)("div",{className:(0,o.A)(K,s&&z,i&&q),children:[s&&(0,b.jsx)(_.A,{tabIndex:-1,className:O}),(0,b.jsx)(Y,{path:t,sidebar:n}),l&&(0,b.jsx)(g,{onClick:a})]})}const Q=a.memo(J);var X=n(5600),Z=n(2069);const $=e=>{let{sidebar:t,path:n}=e;const a=(0,Z.M)();return(0,b.jsx)("ul",{className:(0,o.A)(s.G.docs.docSidebarMenu,"menu__list"),children:(0,b.jsx)(U,{items:t,activePath:n,onItemClick:e=>{"category"===e.type&&e.href&&a.toggle(),"link"===e.type&&a.toggle()},level:1})})};function ee(e){return(0,b.jsx)(X.GX,{component:$,props:e})}const te=a.memo(ee);function ne(e){const t=(0,j.l)(),n="desktop"===t||"ssr"===t,a="mobile"===t;return(0,b.jsxs)(b.Fragment,{children:[n&&(0,b.jsx)(Q,{...e}),a&&(0,b.jsx)(te,{...e})]})}const ae={expandButton:"expandButton_TmdG",expandButtonIcon:"expandButtonIcon_i1dp"};function oe(e){let{toggleSidebar:t}=e;return(0,b.jsx)("div",{className:ae.expandButton,title:(0,c.T)({id:"theme.docs.sidebar.expandButtonTitle",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),"aria-label":(0,c.T)({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,children:(0,b.jsx)(v,{className:ae.expandButtonIcon})})}const ie={docSidebarContainer:"docSidebarContainer_YfHR",docSidebarContainerHidden:"docSidebarContainerHidden_DPk8",sidebarViewport:"sidebarViewport_aRkj"};function se(e){let{children:t}=e;const n=(0,r.t)();return(0,b.jsx)(a.Fragment,{children:t},n?.name??"noSidebar")}function le(e){let{sidebar:t,hiddenSidebarContainer:n,setHiddenSidebarContainer:i}=e;const{pathname:l}=(0,x.zy)(),[r,c]=(0,a.useState)(!1),d=(0,a.useCallback)((()=>{r&&c(!1),!r&&(0,p.O)()&&c(!0),i((e=>!e))}),[i,r]);return(0,b.jsx)("aside",{className:(0,o.A)(s.G.docs.docSidebarContainer,ie.docSidebarContainer,n&&ie.docSidebarContainerHidden),onTransitionEnd:e=>{e.currentTarget.classList.contains(ie.docSidebarContainer)&&n&&c(!0)},children:(0,b.jsx)(se,{children:(0,b.jsxs)("div",{className:(0,o.A)(ie.sidebarViewport,r&&ie.sidebarViewportHidden),children:[(0,b.jsx)(ne,{sidebar:t,path:l,onCollapse:d,isHidden:r}),r&&(0,b.jsx)(oe,{toggleSidebar:d})]})})})}const re={docMainContainer:"docMainContainer_TBSr",docMainContainerEnhanced:"docMainContainerEnhanced_lQrH",docItemWrapperEnhanced:"docItemWrapperEnhanced_JWYK"};function ce(e){let{hiddenSidebarContainer:t,children:n}=e;const a=(0,r.t)();return(0,b.jsx)("main",{className:(0,o.A)(re.docMainContainer,(t||!a)&&re.docMainContainerEnhanced),children:(0,b.jsx)("div",{className:(0,o.A)("container padding-top--md padding-bottom--lg",re.docItemWrapper,t&&re.docItemWrapperEnhanced),children:n})})}const de={docRoot:"docRoot_UBD9",docsWrapper:"docsWrapper_hBAB"};function ue(e){let{children:t}=e;const n=(0,r.t)(),[o,i]=(0,a.useState)(!1);return(0,b.jsxs)("div",{className:de.docsWrapper,children:[(0,b.jsx)(h,{}),(0,b.jsxs)("div",{className:de.docRoot,children:[n&&(0,b.jsx)(le,{sidebar:n.items,hiddenSidebarContainer:o,setHiddenSidebarContainer:i}),(0,b.jsx)(ce,{hiddenSidebarContainer:o,children:t})]})]})}var me=n(3363);function be(e){const t=(0,l.B5)(e);if(!t)return(0,b.jsx)(me.A,{});const{docElement:n,sidebarName:a,sidebarItems:c}=t;return(0,b.jsx)(i.e3,{className:(0,o.A)(s.G.page.docsDocPage),children:(0,b.jsx)(r.V,{name:a,items:c,children:(0,b.jsx)(ue,{children:n})})})}},3363:(e,t,n)=>{n.d(t,{A:()=>l});n(6540);var a=n(53),o=n(1312),i=n(1107),s=n(4848);function l(e){let{className:t}=e;return(0,s.jsx)("main",{className:(0,a.A)("container margin-vert--xl",t),children:(0,s.jsx)("div",{className:"row",children:(0,s.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,s.jsx)(i.A,{as:"h1",className:"hero__title",children:(0,s.jsx)(o.A,{id:"theme.NotFound.title",description:"The title of the 404 page",children:"Page Not Found"})}),(0,s.jsx)("p",{children:(0,s.jsx)(o.A,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page",children:"We could not find what you were looking for."})}),(0,s.jsx)("p",{children:(0,s.jsx)(o.A,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page",children:"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/a96c96b0.f3e38592.js b/assets/js/a96c96b0.f3e38592.js deleted file mode 100644 index 893ef58d4..000000000 --- a/assets/js/a96c96b0.f3e38592.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3295],{6829:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>u,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var i=t(4848),r=t(8453);const s={sidebar_position:1},o="Goal",a={id:"guide/walkthrough/goal",title:"Goal",description:"This walkthrough will be written in TypeScript but will have JavaScript snippets throughout.",source:"@site/docs/guide/walkthrough/goal.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/goal",permalink:"/docs/guide/walkthrough/goal",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/goal.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Preparing to Code",permalink:"/docs/guide/getting-started/preparing"},next:{title:"Create a new project",permalink:"/docs/guide/walkthrough/new-project"}},l={},d=[{value:"Using @sapphire/framework",id:"using-sapphireframework",level:3},{value:"Using @sern/handler",id:"using-sernhandler",level:3}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h3:"h3",li:"li",p:"p",pre:"pre",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"goal",children:"Goal"}),"\n",(0,i.jsxs)(n.p,{children:["This walkthrough will be written in ",(0,i.jsx)(n.a,{href:"https://www.typescriptlang.org/",children:"TypeScript"})," but will have JavaScript snippets throughout."]}),"\n",(0,i.jsx)(n.h1,{id:"make-robust-modular-bots",children:"Make robust, modular, bots"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.em,{children:"Modularity"}),": sern is built with modularity in mind. You can swap pieces and parts easily."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.em,{children:"Familiar"}),": commands and structures are similar to classic v12 handlers and the official discord.js command handler guide, while packing many features"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.em,{children:"Concise"}),": Too much code is a liability. with sern, write less for more \ud83e\udd2f"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"using-sapphireframework",children:"Using @sapphire/framework"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="commands/ping.ts" showLineNumbers',children:"import { Command } from '@sapphire/framework'\nimport type { CommandInteraction } from 'discord.js'\n\nexport class PingCommand extends Command {\n public constructor(context: Command.Context) {\n super(context, {\n description: 'Pong!',\n chatInputCommand: {\n register: true,\n },\n })\n }\n public async chatInputRun(interaction: CommandInteraction) {\n await interaction.reply('Pong!')\n }\n}\n"})}),"\n",(0,i.jsx)(n.h3,{id:"using-sernhandler",children:"Using @sern/handler"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="commands/ping.ts" showLineNumbers',children:"import { commandModule, CommandType } from '@sern/handler'\nimport { publish } from '../plugins';\n\nexport default commandModule({ \n type: CommandType.Both,\n plugins: [publish()],\n description: 'Pong!',\n execute: (ctx, args) => {\n await ctx.reply('Pong!')\n }\n})\n"})}),"\n",(0,i.jsx)(n.p,{children:"Keep in mind the above example acts as both a slash command AND text command"})]})}function u(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>o,x:()=>a});var i=t(6540);const r={},s=i.createContext(r);function o(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:o(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/b134d7b8.f1083d8d.js b/assets/js/b134d7b8.f1083d8d.js deleted file mode 100644 index 47e5f3556..000000000 --- a/assets/js/b134d7b8.f1083d8d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5068],{9775:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>a,contentTitle:()=>t,default:()=>h,frontMatter:()=>s,metadata:()=>l,toc:()=>c});var r=i(4848),d=i(8453);const s={id:"SernEventsMapping",title:"Interface: SernEventsMapping",sidebar_label:"SernEventsMapping",sidebar_position:0,custom_edit_url:null},t=void 0,l={id:"api/interfaces/SernEventsMapping",title:"Interface: SernEventsMapping",description:"Properties",source:"@site/docs/api/interfaces/SernEventsMapping.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/SernEventsMapping",permalink:"/docs/api/interfaces/SernEventsMapping",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernEventsMapping",title:"Interface: SernEventsMapping",sidebar_label:"SernEventsMapping",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"SernEventPlugin",permalink:"/docs/api/interfaces/SernEventPlugin"},next:{title:"SernSubCommandData",permalink:"/docs/api/interfaces/SernSubCommandData"}},a={},c=[{value:"Properties",id:"properties",level:2},{value:"error",id:"error",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"module.activate",id:"moduleactivate",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"module.register",id:"moduleregister",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"modulesLoaded",id:"modulesloaded",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"warning",id:"warning",level:3},{value:"Defined in",id:"defined-in-4",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,d.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"error",children:"error"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"error"}),": [{ ",(0,r.jsx)(n.code,{children:"module?"}),": ",(0,r.jsx)(n.code,{children:"AnyModule"})," ; ",(0,r.jsx)(n.code,{children:"reason"}),": ",(0,r.jsx)(n.code,{children:"string"})," | ",(0,r.jsx)(n.code,{children:"Error"})," ; ",(0,r.jsx)(n.code,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PayloadType#failure",children:(0,r.jsx)(n.code,{children:"Failure"})})," }]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L21",children:"src/types/utility.ts:21"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"moduleactivate",children:"module.activate"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"module.activate"}),": [",(0,r.jsx)(n.a,{href:"/docs/api/modules#payload",children:(0,r.jsx)(n.code,{children:"Payload"})}),"]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L20",children:"src/types/utility.ts:20"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"moduleregister",children:"module.register"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"module.register"}),": [",(0,r.jsx)(n.a,{href:"/docs/api/modules#payload",children:(0,r.jsx)(n.code,{children:"Payload"})}),"]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L19",children:"src/types/utility.ts:19"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"modulesloaded",children:"modulesLoaded"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"modulesLoaded"}),": [undefined?]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L23",children:"src/types/utility.ts:23"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"warning",children:"warning"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"warning"}),": [",(0,r.jsx)(n.a,{href:"/docs/api/modules#payload",children:(0,r.jsx)(n.code,{children:"Payload"})}),"]"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L22",children:"src/types/utility.ts:22"})})]})}function h(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(o,{...e})}):o(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>t,x:()=>l});var r=i(6540);const d={},s=r.createContext(d);function t(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:t(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/b2b675dd.3bcec961.js b/assets/js/b2b675dd.3bcec961.js deleted file mode 100644 index 46343c17f..000000000 --- a/assets/js/b2b675dd.3bcec961.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1991],{2156:e=>{e.exports=JSON.parse('{"permalink":"/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":7,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/b2f554cd.11ce5c09.js b/assets/js/b2f554cd.11ce5c09.js deleted file mode 100644 index c5ded9121..000000000 --- a/assets/js/b2f554cd.11ce5c09.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5894],{6042:e=>{e.exports=JSON.parse('{"blogPosts":[{"id":"railway-deploy","metadata":{"permalink":"/blog/railway-deploy","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2024-02-23-mdx-blog-post.md","source":"@site/blog/2024-02-23-mdx-blog-post.md","title":"Deploying sern with Railway","description":"In this guide, I\'ll be showing you how to deploy your sern bot with Railway.","date":"2024-02-23T00:00:00.000Z","formattedDate":"February 23, 2024","tags":[{"label":"guides","permalink":"/blog/tags/guides"}],"readingTime":1.47,"hasTruncateMarker":false,"authors":[{"name":"Duro","title":"Developer","url":"https://github.com/DuroCodes","imageURL":"https://github.com/DuroCodes.png","key":"Duro"}],"frontMatter":{"slug":"railway-deploy","title":"Deploying sern with Railway","authors":["Duro"],"tags":["guides"]},"unlisted":false,"nextItem":{"title":"New logo!","permalink":"/blog/newlogo"}},"content":"In this guide, I\'ll be showing you how to deploy your sern bot with [Railway](https://railway.app/).\\n\\nThis guide assumes you have a sern bot already set up and ready to deploy. If you don\'t, you can follow the [Getting Started](/blog/getting-started) guide to set up your bot.\\n\\n## GitHub Repository\\n\\nThe first thing you\'ll need to deploy your bot is a GitHub repository for your bot. If you don\'t have one, you can create one by following the [GitHub guide](https://docs.github.com/en/get-started/quickstart/create-a-repo).\\n\\nOnce you have your repository set up, you can push your bot\'s code to the repository, and you\'re ready to deploy using Railway.\\n\\n## Railway Setup\\n\\nAfter you have your bot\'s code in a GitHub repository, you\'ll need to create an account on Railway. You can sign up using your GitHub account at [railway.app](https://railway.app/).\\n\\nOnce you\'ve created your account, navigate to the [dashboard](https://railway.app/dashboard) and click the \\"New Project\\" button. Click the \\"Deploy from GitHub repo\\" button, and select your bot\'s repository.\\n\\nOnce you\'ve selected your repository, click the \\"Add Variables\\" button to add your bot\'s environment variables. You\'ll need your environment variables from your `.env` file to add to Railway. (You can also add these later if you want.)\\n\\n## Deploy\\n\\nOnce you\'ve added your environment variables, click the \\"Deploy\\" button, and Railway will start deploying your bot. Once the deployment is complete, you\'ll be able to see your bot\'s URL and logs.\\n\\n:::note\\nMake sure you add your environment variables, and your node start script is correct in your `package.json` file.\\n\\nIf you have any issues deploying your bot, you can check the logs for any errors.\\n:::\\n\\nThat\'s it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the [sern Discord server](https://sern.dev/discord)."},{"id":"newlogo","metadata":{"permalink":"/blog/newlogo","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-7-4-mdx-blog-post.md","source":"@site/blog/2023-7-4-mdx-blog-post.md","title":"New logo!","description":"Hey everyone! Today we have very special news for you all: We\'re changing our logo!","date":"2023-07-04T00:00:00.000Z","formattedDate":"July 4, 2023","tags":[{"label":"branding","permalink":"/blog/tags/branding"}],"readingTime":0.83,"hasTruncateMarker":false,"authors":[{"name":"sern Team","url":"https://github.com/sern-handler","imageURL":"https://github.com/sernbot.png","key":"sern"}],"frontMatter":{"slug":"newlogo","title":"New logo!","authors":["sern"],"tags":["branding"]},"unlisted":false,"prevItem":{"title":"Deploying sern with Railway","permalink":"/blog/railway-deploy"},"nextItem":{"title":"Release 3.0.0","permalink":"/blog/3.0.0"}},"content":"Hey everyone! Today we have very special news for you all: We\'re changing our logo!\\n\\n# Why?\\n\\nYou see, on today\'s standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved. \\nWe were chilling, you know, cooking sern handler v3, sern gui, `npm create @sern/bot` and serncord when we thought about changing the logo to a sleek design with less colors. \\nAnd here we are!\\n\\n# Who did our new branding?\\n\\n[Ropox](https://github.com/Murtatrxx)! \\nBro\'s the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper: \\n![](/blog/newlogo/paperprototypes.jpg)\\nAnd there it all clicked: \\n![](/blog/newlogo/paperlogo.png)\\nseren tried by the way!\\n![](/blog/newlogo/serentried.png)\\n\\n# Anyways, here it is:\\n\\n![](/img/logo.png)\\n\\nPretty nice!\\n\\nBy the way, we have animations and variations on the way, so make sure to stay updated in the [discord server](https://sern.dev/discord)!\\n\\n# Finally, from the entire sern team, thank you for sticking around \u2764\ufe0f"},{"id":"3.0.0","metadata":{"permalink":"/blog/3.0.0","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-06-18-mdx-blog-post.md","source":"@site/blog/2023-06-18-mdx-blog-post.md","title":"Release 3.0.0","description":"3.0 Release","date":"2023-06-18T00:00:00.000Z","formattedDate":"June 18, 2023","tags":[{"label":"release","permalink":"/blog/tags/release"}],"readingTime":2.475,"hasTruncateMarker":false,"authors":[{"name":"jacoobes","title":"Head Dev","url":"https://github.com/jacoobes","imageURL":"https://github.com/jacoobes.png","key":"jacoobes"}],"frontMatter":{"slug":"3.0.0","title":"Release 3.0.0","authors":["jacoobes"],"tags":["release"]},"unlisted":false,"prevItem":{"title":"New logo!","permalink":"/blog/newlogo"},"nextItem":{"title":"Release 2.5.0","permalink":"/blog/2.5.0"}},"content":"## 3.0 Release\\n\\n### Join our [discord](https://sern.dev/discord) <br />\\n\\n### Features\\n\\n#### Dependency Management\\n- `Service` API (recommended to use this over useContainer hooks)\\n - Dependencies type must be globally augmented in order for Services api to function properly\\n- new methods on ModuleManager\\n - getPublishableCommands()\\n- Init Hooks \\n - implement starting behavior for dependencies\\n - To enforce and type check this, use the `Initializable` type when making your Dependencies type!\\n- Emitter interface\\n - More generic interface to define any event emitter\\n - You can now swap out the SernEmitter with whatever emitter now. \\n```ts \\nclass DatabaseService implements Init {\\n //some hypothetical database\\n _pgsql : database() \\n\\n async init() {\\n await _pgsql.load()\\n }\\n\\n}\\n\\nawait makeDependencies({ \\n build: root => root.add({\\n db: new DatabaseService() //will be init\'ed automatically\\n })\\n})\\n\\n```\\n- new SernEmitter event `modulesLoaded` , which allows users to customize behavior after all modules are loaded!\\n```ts\\n\\nexport default eventModule({\\n name: \'modulesLoaded\',\\n type: EventType.Sern,\\n execute: () => {\\n console.log(\'All modules loaded\')\\n }\\n})\\n\\n\\n```\\n\\n#### Quality of Life\\n- faster module loading\\n - I utilize async generators for reading files now. A lot faster than the first iteration.\\n- better error handling\\n- Less boilerplate\\n - Services api cleans up v2 boilerplate\\n- class modules devex got upgraded and work better than before\\n- automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)\\n - ignore commands and events with `!` prefix on filename or directory (ie: `!filename.ts` or `!directory` will be ignored by sern)\\n\\n- `Service` API (recommended to use this over useContainer hooks)\\n - Dependencies type must be globally augmented in order for Services api to function properly\\n- Less boilerplate\\n- new methods on ModuleManager\\n- automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)\\n - ignore commands / events with `!` prefix on filename or directory (ie: `!filename.ts` or `!directory`)\\n- new SernEmitter event `modulesLoaded` , which allows users to customize behavior after all modules are loaded!\\n- Init Hooks \\n - implement starting behavior for dependencies\\n\\n### Experimental\\n- Experimental things may be subject to removal, need feedback and are not guaranteed stable\\n- dev / prod mode \\n - sern will behave differently depending on mode set\\n- init sern from `file` option\\n - reads from local sern.config.json\\n\\n```js \\nSern.init(\'file\'); \\n```\\n### Breaking changes\\n- Sern.makeDependencies -> makeDependencies\\n - it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.\\n- module store and manager internally changed, so those using them may recieve breaking changes\\n- BaseOptions type removed\\n\\n```diff\\n- Sern.makeDependencies({ build: () => {} })\\n+ await makeDependencies({ build: () => {} })\\n```\\n\\n### Deprecations\\n- Removed all previous marked deprecations in v3\\n- ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager\\n- Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract"},{"id":"2.5.0","metadata":{"permalink":"/blog/2.5.0","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-01-12-mdx-blog-post.md","source":"@site/blog/2023-01-12-mdx-blog-post.md","title":"Release 2.5.0","description":"2.5 Release","date":"2023-01-12T00:00:00.000Z","formattedDate":"January 12, 2023","tags":[{"label":"release","permalink":"/blog/tags/release"}],"readingTime":0.895,"hasTruncateMarker":false,"authors":[{"name":"jacoobes","title":"Head Dev","url":"https://github.com/jacoobes","imageURL":"https://github.com/jacoobes.png","key":"jacoobes"}],"frontMatter":{"slug":"2.5.0","title":"Release 2.5.0","authors":["jacoobes"],"tags":["release"]},"unlisted":false,"prevItem":{"title":"Release 3.0.0","permalink":"/blog/3.0.0"},"nextItem":{"title":"Release 2.0.0","permalink":"/blog/2.0.0"}},"content":"## 2.5 Release\\n\\n### Join our [discord](https://sern.dev/discord) <br />\\n- Thank you for using sern in your projects. It\'s only going to get better!\\n- I apologize for the sudden small breaking change. After this update, there won\'t be any for a while.\\nWow! We\'re increasing our semantic versioning by `+0.3.9` <br />\\nWhat does this mean?\\n### Breaking changes\\n- [controller](../docs/api/modules#controller) parameter for plugins has been removed\\n - You\'ll need to import it instead\\n - This **breaks** old [CommandPlugin](../docs/api/interfaces/CommandPlugin), but **not** old [EventPlugin](../docs/api/interfaces/EventPlugin)\\n### Deprecations\\n- [CommandPlugin](../docs/api/interfaces/CommandPlugin) and [EventPlugin](../docs/api/interfaces/EventPlugin) have been renamed [InitPlugin](../docs/api/interfaces/InitPlugin) and [ControlPlugin](../docs/api/interfaces/ControlPlugin)\\n\\n### Reason\\n- The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.\\n- I realize that this affects all plugins. I have updated all [plugins](https://github.com/sern-handler/awesome-plugins/pull/68) to match these changes\\n- The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings\\n - [CommandControlPlugin](../docs/api/modules#commandcontrolplugin)\\n - [CommandInitPlugin](../docs/api/modules#commandinitplugin)\\n - [EventControlPlugin](../docs/api/modules#eventcontrolplugin)\\n - [EventInitPlugin](../docs/api/modules#eventinitplugin)\\n - [DiscordEventControlPlugin](../docs/api/modules#discordeventcontrolplugin)\\n This will probably be the last breaking change in a while. Thanks for using sern!"},{"id":"2.0.0","metadata":{"permalink":"/blog/2.0.0","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-12-13-mdx-blog-post.md","source":"@site/blog/2022-12-13-mdx-blog-post.md","title":"Release 2.0.0","description":"2.0 Release","date":"2022-12-13T00:00:00.000Z","formattedDate":"December 13, 2022","tags":[{"label":"release","permalink":"/blog/tags/release"}],"readingTime":3.63,"hasTruncateMarker":false,"authors":[{"name":"jacoobes","title":"Head Dev","url":"https://github.com/jacoobes","imageURL":"https://github.com/jacoobes.png","key":"jacoobes"}],"frontMatter":{"slug":"2.0.0","title":"Release 2.0.0","authors":["jacoobes"],"tags":["release"]},"unlisted":false,"prevItem":{"title":"Release 2.5.0","permalink":"/blog/2.5.0"},"nextItem":{"title":"How to get started with sern!","permalink":"/blog/getting-started"}},"content":"## 2.0 Release\\nJoin our [discord](https://sern.dev/discord)! <br />\\nWow! We\'re finally increasing our semantic versioning by +`1.7.9.` <br />\\nWhat does this mean?\\n\\n### Plugin Support for Event Modules\\nYou can now use plugins for event modules. Previous version would throw an error if the \\n`plugins` field was populated.\\n\\n```typescript \\nexport function commandPlTest() : SernEmitterPlugin {\\n return {\\n type: PluginType.Command,\\n execute: ({ mod}, controller) => {\\n if(mod.name === \'module.register\') {\\n console.log(\'Event Module created correctly\')\\n return controller.next()\\n }\\n console.log(\'event name is wrong\')\\n return controller.stop()\\n }\\n }\\n}\\n```\\nApplying this plugin to some `eventModule`: \\n```typescript\\nexport default eventModule({\\n name: \'error\',\\n type: EventType.Sern,\\n plugins: [commandPlTest()],\\n execute(m) {\\n console.log(m)\\n },\\n})\\n```\\n## Dependency Injection and Decoupling\\n\\nThe powerful npm package `iti` decouples sern even more.\\nDecoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production\\nand make sern even more customizable than before.\\n\\n### How do I start?\\n```typescript title=\\"src/index.ts\\"\\n//With typescript, you can customize / augment your typings.\\ninterface MyDependencies extends Dependencies {\\n \'@sern/client\' : Singleton<Client>;\\n \'@sern/logger\' : Singleton<DefaultLogging>\\n}\\n\\nexport const useContainer = Sern.makeDependencies<MyDependencies>({\\n// exclude: new Set([\'@sern/logger\']), don\'t autofill optional dependencies\\n build: root => root\\n .add({ \'@sern/client\': single(client) }) \\n .add({ \'@sern/logger\': single(new DefaultLogging()) })\\n});\\n\\nSern.init({\\n defaultPrefix: \'!\', // removing defaultPrefix will shut down text commands\\n commands: \'src/commands\',\\n // events: \'src/events\' (optional),\\n containerConfig : {\\n get: useContainer //pass in your dependency getter here\\n }\\n});\\n\\n```\\nUsing the `Sern#makeDependencies` function, inject your dependencies. \\nWe\'ll use specific dependencies that are created with the `@sern/keyword`\\nkey.\\nUsing typescript to display all `keywords` and what they represent:\\n```typescript\\nexport interface Dependencies {\\n \'@sern/client\': Singleton<EventEmitter>; //Discord Client\\n \'@sern/logger\'?: Singleton<Logging>; //Logger\\n \'@sern/emitter\': Singleton<SernEmitter>; //SernEmitter\\n \'@sern/store\' : Singleton<ModuleStore>; //Stores all Command Modules\\n \'@sern/modules\' : Singleton<ModuleManager>; //Manages Modules\\n \'@sern/errors\': Singleton<ErrorHandling>; //A Lifetime / Crash Handler\\n}\\n```\\n:::danger\\nSern#addExternal has been deprecated and removed in favor of Sern#makeDependencies\\n:::\\nAt the moment, one optional dependency, `@sern/logger`, exists. If not added explicitly,\\nwe\'ll **autofill** with a [DefaultLogger](https://sern.dev/docs/api/classes/defaultlogging).\\n\\n:::tip\\nIf you don\'t want a logger, add it to the\\n`exclude` field while composing dependencies.\\n:::\\n\\nUse your generated dependency getter `useContainer` (use whatever name you want), access them\\nfrom anywhere.\\n:::note\\nthe function [useContainerRaw](https://sern.dev/docs/api/modules#usecontainerraw) is provided for direct access to dependencies and the internal\\ndata structure. Use this wisely as no guarantees are made and crashes can happen.\\n:::\\n\\nThe `build` field follows [createContainer](https://itijs.org/docs/quick-start#usage) function call.\\n\\n## New CommandTypes\\n2.0 includes all the new role select menus. `CommandType.MenuSelect` has been renamed into\\n`CommandType.StringSelect`. The remaining SelectMenus are\\n`CommandType.RoleSelect`, `CommandType.ChannelSelect`, `CommandType.UserSelect`, `CommandType.MentionableSelect`\\n```typescript title=\\"commands/roleselect.ts\\"\\nexport default commandModule({\\n type: CommandType.RoleSelect,\\n execute(ctx) {\\n ctx.reply(\'role select\')\\n },\\n})\\n```\\nIn addition, commandModules with ContextMenus have been renamed.\\n```diff\\n- CommandType.MenuUser, CommandType.MenuMsg \\n+ CommandType.CtxUser, CommandType.CtxMsg\\n```\\n## Typings Simplification\\nPre 2.0: \\n<img src=\\"https://cdn.discordapp.com/attachments/820348341358952550/1038577974829666386/image.png\\" />\\n<br/> <br/> <br/>\\nPost 2.0:\\n<br/>\\n<img src=\\"https://cdn.discordapp.com/attachments/820348341358952550/1052623728489550015/image.png\\" />\\n\\nCommandPlugin<T\\\\> and EventPlugin<T\\\\> typings have also been static\'ified, transformed from types to interfaces\\n## Breaking Changes\\n<img src=\\"https://img.srizan.dev/Discord_z8Sn1UBfEe.png\\" />\\n<br />\\nAll deprecation warnings from previous versions have taken effect, and are removed in 2.0.\\n\\n```diff\\n- type Module = EventModule | CommandModule\\n+ type AnyModule = EventModule | CommandModule\\n\\n-export type SpreadParams<T extends (...args: never) => unknown> = (\\n- args: Parameters<T>[number],\\n- ) => unknown;\\n```\\nOverride type has been removed due to redundancy\\n```diff\\n- discord.js : 14.5\\n+ discord.js : 14.7\\n\\n-typescript: 4.7\\n+ typescript: 4.9\\n```\\n```diff\\n+ interface Wrapper {\\n+ readonly defaultPrefix?: string;\\n+ readonly commands: string;\\n+ readonly events?: string;\\n+ readonly containerConfig : {\\n+ get: (...keys: (keyof Dependencies)[]) => unknown[];\\n+ }\\n+}\\n\\n- interface Wrapper {\\n- readonly client: Client;\\n- readonly sernEmitter?: SernEmitter;\\n- readonly defaultPrefix?: string;\\n- readonly commands: string;\\n- readonly events?:\\n- | string\\n- | { mod: EventModule; absPath: string }[]\\n- | (() => { mod: EventModule; absPath: string }[]);\\n-}\\n```\\n```diff\\n+ DefaultLogger\\n+ DefaultModuleManager\\n+ SernEmitter\\n+ DefaultErrorHandling\\n+ type Singleton<T> = () => T\\n+ type Transient<T> = () => () => T; \\n+ type LogPayload<T = unknown> = { message: T }\\n+ export const single = <T>() => T\\n+ export const many = <T>() => () => T\\n```\\nIncluding the previous section, some names to symbols and data structures were altered to\\nbe better represented. view [changelog](/404.html)\\n\\n## Context refactoring\\nThe context data structure has been internally altered to represent its dynamics better."},{"id":"getting-started","metadata":{"permalink":"/blog/getting-started","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-09-30-mdx-blog-post.md","source":"@site/blog/2022-09-30-mdx-blog-post.md","title":"How to get started with sern!","description":"Hello everyone!","date":"2022-09-30T00:00:00.000Z","formattedDate":"September 30, 2022","tags":[{"label":"guides","permalink":"/blog/tags/guides"}],"readingTime":1.31,"hasTruncateMarker":false,"authors":[{"name":"Sr Izan","title":"Developer","url":"https://github.com/SrIzan10","imageURL":"https://github.com/SrIzan10.png","key":"Sr Izan"}],"frontMatter":{"slug":"getting-started","title":"How to get started with sern!","authors":["Sr Izan"],"tags":["guides"]},"unlisted":false,"prevItem":{"title":"Release 2.0.0","permalink":"/blog/2.0.0"},"nextItem":{"title":"Release 1.2.0","permalink":"/blog/1.2.0"}},"content":"## Hello everyone!\\n\\nI\'m Sr Izan, your fellow user and contributor.\\n\\nToday I\'m going to show you how to get started with sern and all its cool features.\\n\\n### Step 1: Install the CLI.\\n\\nInstall the CLI:\\n```\\nnpm i -g @sern/cli\\n```\\nand then run\\n```\\nsern init\\n```\\n:::tip\\nYou can also run `sern init -y` if you want to use the default options.\\n:::\\n\\nThe CLI is written in Typescript and open-sourced on [Github](https://github.com/sern-handler/cli). (thanks [evo](https://github.com/EvolutionX-10)!)\\n\\n### Step 2: Have some way to store secrets.\\n\\nNormally you\'d need a way to store secrets, and the best way to do that is by installing another package: `dotenv`\\n\\njust `npm i dotenv` in the project folder and add `require(\'dotenv\').config()` to your import section. Then, when you login, `process.env.TOKEN` (or however you have it named on your `.env` file) should do the trick.\\n\\n:::caution\\nIf you\'re using ESM, configure dotenv with `import \'dotenv/config\'` instead of `require(\'dotenv\').config()`.\\n:::\\n\\n### And... that\'s it?\\n\\nYes, that\'s it. Here\'s a little FAQ to get you started. You can also join the [Discord](https://sern.dev/discord) for any problems.\\n\\n### Extra: Video tutorial!\\n\\n<video width=\\"400\\" controls>\\n <source src=\\"https://srizan.s-ul.eu/wtJBVsZU\\" type=\\"video/mp4\\" />\\n</video>\\n\\n## FAQ\\n\\n**Q**: How do I publish a slash command? \\n**A**: Install the publish extension. Little video: \\n<video width=\\"400\\" controls>\\n <source src=\\"https://srizan.s-ul.eu/uHzPhfcS\\" type=\\"video/mp4\\" />\\n</video>\\n\\n**Q**: Any snippet VSCode extension? \\n**A**: Yeah, just search `sern Snippets` made by a verified publisher called Sr Izan (haha yeah me funny!) \\n\\n**Q**: HEEEELLLPPPP!!!! \\n**A**: Hey, don\'t panic! We\'re here to help so, join the [Discord](https://sern.dev/discord). We\'re trying to get to 100 members!"},{"id":"1.2.0","metadata":{"permalink":"/blog/1.2.0","editUrl":"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-09-28-mdx-blog-post.md","source":"@site/blog/2022-09-28-mdx-blog-post.md","title":"Release 1.2.0","description":"Class-based modules","date":"2022-09-28T00:00:00.000Z","formattedDate":"September 28, 2022","tags":[{"label":"release","permalink":"/blog/tags/release"}],"readingTime":1.71,"hasTruncateMarker":false,"authors":[{"name":"jacoobes","title":"Head Dev","url":"https://github.com/jacoobes","imageURL":"https://github.com/jacoobes.png","key":"jacoobes"}],"frontMatter":{"slug":"1.2.0","title":"Release 1.2.0","authors":["jacoobes"],"tags":["release"]},"unlisted":false,"prevItem":{"title":"How to get started with sern!","permalink":"/blog/getting-started"}},"content":"## Class-based modules\\n\\nToday we\'re announcing the ability to create class based modules!\\nTo get started, install\\n```\\nnpm install @sern/handler@latest\\n```\\n\\nQuick List of changes!\\n- [Class based modules](#class-based-modules)\\n- [Deprecation Warnings](#deprecation-warnings)\\n- [Dependencies update](#dependencies-update)\\n\\n\\n### Class based modules\\nIncorporate class based modules into your project instead of the traditional `commandModule` or `eventModule`\\nExtend the new [CommandExecutable](docs/api/classes/CommandExecutable) or [EventExecutable](docs/api/classes/EventExecutable)\\n```ts title=\\"commands/meaning-of-life.ts\\"\\nimport { CommandType, CommandExecutable, type Args, type Context } from \'@sern/handler\';\\nimport { publish } from \'../plugins/publish.js\';\\nimport { serendipityOnly } from \'../plugins/serendipityOnly.js\';\\n\\nexport default class extends CommandExecutable<CommandType.Both> {\\n type = CommandType.Both as const;\\n description = \'What is the meaning of life?\'\\n override onEvent = [\\n serendipityOnly()\\n ];\\n override plugins = [\\n publish(),\\n ];\\n // highlight-next-line\\n execute = async (ctx: Context, args: Args) => {\\n await ctx.reply(\'42\')\\n };\\n}\\n```\\n:::caution\\n\\nexecute must not be a method of the class. It should be as above, a property on the class!\\n\\n:::\\n\\n```ts title=\\"events/guildMemberAdd.ts\\"\\nimport { CommandType, EventExecutable, type EventType } from \'@sern/handler\';\\nimport type { GuildMember } from \'discord.js\'\\n\\nexport default class extends EventExecutable<EventType.Discord> {\\n type = EventType.Discord as const;\\n // highlight-next-line\\n execute = (member: GuildMember) => {\\n console.log(member)\\n };\\n}\\n```\\nNow, you might ask **why** this feature was added. <br /> Simply put, to give flexibility to the developers.\\nI believe that you should build your own structures however you might like and customize to your liking.\\nIn addition, **decorators now unofficially work with modules!**\\nFeel free to use TypeScript experimental decorators to augment and customize your classes. \\n\\n### Deprecation Warnings\\nThe next update will bring sern v2 with some important features. Here are some things to watch out for.\\n\\n- [Wrapper#client](docs/api/interfaces/Wrapper) will be deprecated\\n- [Wrapper#sernEmitter](docs/api/interfaces/Wrapper) will be deprecated\\n - a SernEmitter will be automatically created once Sern#init is called\\n- The option to pass in a function or array for [Wrapper#events](docs/api/interfaces/Wrapper) will be deprecated. Only strings are accepted.\\n- [Sern#addExternal](docs/api/classes/SernEmitter) will be deprecated in favor of a better way.\\n\\n### Dependencies Update\\n- TypeScript has been updated to 4.8.3\\n- Discord.js has been upgraded to 14.5"}]}')}}]); \ No newline at end of file diff --git a/assets/js/b654e1cf.5b8b0fa5.js b/assets/js/b654e1cf.5b8b0fa5.js deleted file mode 100644 index 47982facf..000000000 --- a/assets/js/b654e1cf.5b8b0fa5.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[5413],{9622:(A,g,e)=>{e.r(g),e.d(g,{assets:()=>C,contentTitle:()=>n,default:()=>I,frontMatter:()=>o,metadata:()=>t,toc:()=>E});var Q=e(4848),B=e(8453);const o={slug:"newlogo",title:"New logo!",authors:["sern"],tags:["branding"]},n="Why?",t={permalink:"/blog/newlogo",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-7-4-mdx-blog-post.md",source:"@site/blog/2023-7-4-mdx-blog-post.md",title:"New logo!",description:"Hey everyone! Today we have very special news for you all: We're changing our logo!",date:"2023-07-04T00:00:00.000Z",formattedDate:"July 4, 2023",tags:[{label:"branding",permalink:"/blog/tags/branding"}],readingTime:.83,hasTruncateMarker:!1,authors:[{name:"sern Team",url:"https://github.com/sern-handler",imageURL:"https://github.com/sernbot.png",key:"sern"}],frontMatter:{slug:"newlogo",title:"New logo!",authors:["sern"],tags:["branding"]},unlisted:!1,prevItem:{title:"Deploying sern with Railway",permalink:"/blog/railway-deploy"},nextItem:{title:"Release 3.0.0",permalink:"/blog/3.0.0"}},C={authorsImageUrls:[void 0]},E=[];function s(A){const g={a:"a",br:"br",code:"code",h1:"h1",img:"img",p:"p",...(0,B.R)(),...A.components};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(g.p,{children:"Hey everyone! Today we have very special news for you all: We're changing our logo!"}),"\n",(0,Q.jsxs)(g.p,{children:["You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.",(0,Q.jsx)(g.br,{}),"\nWe were chilling, you know, cooking sern handler v3, sern gui, ",(0,Q.jsx)(g.code,{children:"npm create @sern/bot"})," and serncord when we thought about changing the logo to a sleek design with less colors.",(0,Q.jsx)(g.br,{}),"\nAnd here we are!"]}),"\n",(0,Q.jsx)(g.h1,{id:"who-did-our-new-branding",children:"Who did our new branding?"}),"\n",(0,Q.jsxs)(g.p,{children:[(0,Q.jsx)(g.a,{href:"https://github.com/Murtatrxx",children:"Ropox"}),"!",(0,Q.jsx)(g.br,{}),"\nBro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:",(0,Q.jsx)(g.br,{}),"\n",(0,Q.jsx)(g.img,{src:e(1129).A+"",width:"3024",height:"4032"}),"\nAnd there it all clicked:",(0,Q.jsx)(g.br,{}),"\n",(0,Q.jsx)(g.img,{src:e(8165).A+"",width:"830",height:"455"}),"\nseren tried by the way!\n",(0,Q.jsx)(g.img,{src:e(8105).A+"",width:"908",height:"509"})]}),"\n",(0,Q.jsx)(g.h1,{id:"anyways-here-it-is",children:"Anyways, here it is:"}),"\n",(0,Q.jsx)(g.p,{children:(0,Q.jsx)(g.img,{src:e(3072).A+"",width:"1000",height:"1000"})}),"\n",(0,Q.jsx)(g.p,{children:"Pretty nice!"}),"\n",(0,Q.jsxs)(g.p,{children:["By the way, we have animations and variations on the way, so make sure to stay updated in the ",(0,Q.jsx)(g.a,{href:"https://sern.dev/discord",children:"discord server"}),"!"]}),"\n",(0,Q.jsx)(g.h1,{id:"finally-from-the-entire-sern-team-thank-you-for-sticking-around-\ufe0f",children:"Finally, from the entire sern team, thank you for sticking around \u2764\ufe0f"})]})}function I(A={}){const{wrapper:g}={...(0,B.R)(),...A.components};return g?(0,Q.jsx)(g,{...A,children:(0,Q.jsx)(s,{...A})}):s(A)}},8165:(A,g,e)=>{e.d(g,{A:()=>Q});const Q=e.p+"assets/images/paperlogo-41a5e76b2d3249b59105ee88f01f202b.png"},1129:(A,g,e)=>{e.d(g,{A:()=>Q});const Q=e.p+"assets/images/paperprototypes-cd697eaefd7ac467f2385dd119f6d78c.jpg"},8105:(A,g,e)=>{e.d(g,{A:()=>Q});const Q=e.p+"assets/images/serentried-2bcee1b2fda9864408e52072821d995f.png"},3072:(A,g,e)=>{e.d(g,{A:()=>Q});const Q="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAPoCAYAAABNo9TkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAABYxSURBVHgB7d1NjlxXGYDhc+MgiJi0JRbQO8BZQcwKaK8gyQpwhjgD2wPbYkSyAswKaFaAvQL3EooxstxDEElfqtxGDBmB33vP80itKvW4VFVvfednDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD6qZQBM6u3Fi3UAAP8Xx/C4HmM9HJ9dHz+AD6fnN2N5/en4+9Xdy6fXAxDowLwEOgA0HKPkcPxQfrWO9c93xj9eCXZmJdCBaQl0AMh6eYr1X1w+uhwwEYEOTEugA0DbabK+jPXJ8dnru5e/PQzYuU8GAABA0PGX9PObsRyn6eMvxx/WnwzYORN0YFom6ACwLf+eqN+9fPTHATsk0IFpCXQA2KZjpF8uY/nGsnf2xhJ3AABgU9axXNyM9c27i+dfDtgRgQ4AAGzQcnban/724sXvB+yEJe7AtCxxB4B9WMZ6tYzlgSXvbJ0JOgAAsGnrWO6dTnp/d/HifMCGCXQAAGDzTleyiXS2TqADAAC7INLZOoEOAADshkhnywQ6AACwK7eRvv7p3cXjswEbItABAIDdOR0cdzN+9njAhgh0AABgrx6+vXj+cMBGCHQAAGDPHtuPzlYIdAAAYMeWs3WMPwzYAIEOAADs2jHQ77+7eP7lgDiBDgAA7N46lidOdadOoAMAALt3unrtZvz0NwPCBDoAADCLh6bolAl0AABgEsuZKTplAh0AAJiJe9HJEugAAMBElrO/Xby4PyBIoAMAAFO5M1bL3EkS6AAAwFRu70V3WBw9Ah0AAJjMcvbj8tkXA2IEOgAAMJ1lvbk/IEagAwAAE1ouBsQIdAAAYEbn9qFTI9ABAIAp2YdOjUAHAACmtKzjfECIQAcAACa13hsQItABAIAprcMEnRaBDgAATGkR6MQIdAAAAAgQ6AAAwKzOB4QIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+G+WASHnn3+7DgBgSoc3z3w3Bab2yQAAAAA+OoEOAAAAAQIdAAAAAgQ6AAAABAh0AAAAGB+fQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdAAAAAgQ6AAAABAg0AEAACBAoAMAAECAQAcAAIAAgQ4AAAABAh0AAAACBDoAAAAECHQAAAAIEOgAAAAQINABAAAgQKADAABAgEAHAACAAIEOAAAAAQIdAAAAAgQ6AAAABAh0AAAACBDoAAAAECDQAQAAIECgAwAAQIBABwAAgACBDgAAAAECHQAAAAIEOgAAAAQIdGLWwwAAAJiQQAcAAIAAgU7MchgAAAATEui0rOMwAAAAJiTQiVmuBgAAwIQEOjV/HQAAABMS6MTceTUAAAAmJNBJOVw9vXbVGgAAMCOBTs+6XA4AAIDJCHSCltcDAABgMgKdoNM+9OV6AAAATESgk/N+H/p682oAAABMRKATtXw/AAAAJiLQSTpcPXtlmTsAADATgU7XevPdAAAAmIRAJ+wn35uiAwAAsxDoZH04LM4UHQAAmIJAJ+40RV8PAwAAYOcEOmm3U/TxdAAAAOycQCfvcPX85fHh1QAAANgxgc42rD987cA4AABgzwQ6m3C4+t1hrKul7gAAwG4JdDbjcPXsu7EOp7oDAAC7JNDZmE9PU/SrAQAAsDMCnU25PdX9hweuXgMAAPZGoLM5t/vRf/yVSAcAAPZEoLNJIh0AANgbgc5miXQAAGBPBDqb9p9Id3AcAACwbQKdzTtF+uHNs89dwQYAAGyZQGc3DlfPvhnr+vUYy/UAAADYGIHOrhyunr8c6z+P0/T1cgAAAGyIQGd33i95v3r+4Haa7gA5AABgG5YBO3d+79Hj4yv9q+PL/XwAAFmHN898NwWmZoLO7h2n6U/fn/Ruog4AAIT5lZLpnN/79tfHUL8Yy/LVAAAyTNCB2XkTZFrn9x6ejfHzL25jfdy3BB4APi6BDszOmyB88D7Yl89+Odbl/odYP/0d//fhEQD4nxLoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACz+xe+xzYG5IBdhQAAAA5lWElmTU0AKgAAAAgAAAAAAAAA0lOTAAAAAElFTkSuQmCC"},8453:(A,g,e)=>{e.d(g,{R:()=>n,x:()=>t});var Q=e(6540);const B={},o=Q.createContext(B);function n(A){const g=Q.useContext(o);return Q.useMemo((function(){return"function"==typeof A?A(g):{...g,...A}}),[g,A])}function t(A){let g;return g=A.disableParentContext?"function"==typeof A.components?A.components(B):A.components||B:n(A.components),Q.createElement(o.Provider,{value:g},A.children)}}}]); \ No newline at end of file diff --git a/assets/js/b91ce718.910fbf3c.js b/assets/js/b91ce718.910fbf3c.js deleted file mode 100644 index d10eb0392..000000000 --- a/assets/js/b91ce718.910fbf3c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2407],{1150:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>h,frontMatter:()=>t,metadata:()=>a,toc:()=>d});var i=s(4848),r=s(8453);const t={sidebar_position:6},l="Services",a={id:"guide/walkthrough/services",title:"Services",description:"This is version 3 api only!!",source:"@site/docs/guide/walkthrough/services.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/services",permalink:"/docs/guide/walkthrough/services",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/services.md",tags:[],version:"current",sidebarPosition:6,frontMatter:{sidebar_position:6},sidebar:"tutorialSidebar",previous:{title:"Plugins",permalink:"/docs/guide/walkthrough/plugins"},next:{title:"Autocomplete",permalink:"/docs/guide/walkthrough/autocomplete"}},c={},d=[{value:"Safety",id:"safety",level:2},{value:"Related api",id:"related-api",level:2}];function o(e){const n={a:"a",admonition:"admonition",blockquote:"blockquote",code:"code",h1:"h1",h2:"h2",li:"li",p:"p",pre:"pre",tabitem:"tabitem",tabs:"tabs",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"services",children:"Services"}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsx)(n.p,{children:"This is version 3 api only!!"})}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsx)(n.p,{children:"TLDR: The direct upgrade to useContainer. if you set up a bot with create-bot, check dependencies.d.ts.\nDependencies are the types that Services uses."})}),"\n",(0,i.jsx)(n.p,{children:"You need someway to use dependencies in your command module. Services to the rescue!"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="src/dependencies.d.ts"',children:"import { CoreDependencies, Singleton } from '@sern/handler'\nimport { Client } from 'discord.js'\n\ninterface Dependencies extends CoreDependencies { \n '@sern/client': Singleton<Client>\n}\n\n"})}),"\n",(0,i.jsx)(n.p,{children:"Recall, some keys in Dependencies are special."}),"\n",(0,i.jsxs)(n.blockquote,{children:["\n",(0,i.jsx)(n.p,{children:"Special key dependency must implement its contracts."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"@sern/client"}),": Your discord client. -> ",(0,i.jsx)(n.a,{href:"../../api/interfaces/Emitter",children:"Emitter"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"@sern/logger"}),": Log data -> ",(0,i.jsx)(n.a,{href:"../../api/interfaces/Logging",children:"Logging"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"@sern/errors"}),": Handling errors and lifetime -> ",(0,i.jsx)(n.a,{href:"../../api/interfaces/ErrorHandling",children:"ErrorHandling"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"@sern/modules"}),": Managing all command modules -> ",(0,i.jsx)(n.a,{href:"../../api/interfaces/ModuleManager",children:"ModuleManager"})]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.code,{children:"@sern/emitter"}),": is the key to emit events and occurences in a project -> ",(0,i.jsx)(n.a,{href:"../../api/interfaces/Emitter",children:"Emitter"})]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Lets try to access the client you provided."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="src/commands/ping.ts"',children:"import { Service } from '@sern/handler'\n\nexport default commandModule({ \n // ...\n execute: (ctx) => {\n //Client!\n const client = Service('@sern/client');\n }\n // \n})\n"})}),"\n",(0,i.jsx)(n.p,{children:"import Tabs from '@theme/Tabs';\nimport TabItem from '@theme/TabItem';"}),"\n",(0,i.jsx)(n.h2,{id:"safety",children:"Safety"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Services cannot be called in other services while makeDependencies is forming."}),"\n"]}),"\n",(0,i.jsxs)(n.tabs,{children:["\n",(0,i.jsxs)(n.tabitem,{value:"good",label:"A good example",children:["\n",(0,i.jsx)(n.p,{children:"Lets pass a logger into our database."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="index.ts" showLineNumbers',children:"await makeDependencies({ \n build: root => root\n //Overriding the default logger provided.\n .upsert({ '@sern/logger': single(() => new Logger()) })\n\n // Wiring our logger into the database.\n .add(ctx => {\n return { database: single(() => new Database(ctx['sern/logger']))) }\n })\n})\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.tabitem,{value:"bad",label:"Don't do this",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="index.ts" showLineNumbers',children:"await makeDependencies({ \n build: root => root\n //Overriding the default logger provided.\n .upsert({ '@sern/logger': single(() => new Logger()) })\n\n // Wiring our logger into the database.\n // We wire our database incorrectly. Logger should be passed INTO the constructor\n .add({ database: single(() => new Database()) })\n})\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="index.ts" showLineNumbers',children:"import { Service, makeDependencies } from '@sern/handler';\n\n//Calling Service prematurely!\nconst logger = Service('@sern/logger');\n\nclass Database {\n \n constructor() {\n this.logger = logger\n }\n}\n"})}),"\n",(0,i.jsx)(n.p,{children:"This is a code smell anyway. It breaks encapsulation and defeats the purpose of wiring dependencies\n\n"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Services can only be used after sern has made dependencies."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Calling a service before will crash your application."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"Services can be safely used outside of commandModules."}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Be careful to not cause too many side effects."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["\n",(0,i.jsx)(n.p,{children:"You will need to wire dependencies together."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.tabs,{children:["\n",(0,i.jsxs)(n.tabitem,{value:"good",label:"A good example",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="index.ts" showLineNumbers',children:"await makeDependencies(...pass your options here)\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="commands/ping.ts" showLineNumbers',children:"// This is guaranteed to be defined if configured correctly\nimport { Service } from '@sern/handler';\nconst client = Service('@sern/client');\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.tabitem,{value:"bad",label:"Don't do this",children:["\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-ts",metastring:'title="index.ts" showLineNumbers',children:"import { Service, makeDependencies } from '@sern/handler';\n/* DON'T USE SERVICES BEFORE CALLING makeDependencies */\nconst logger = Service('@sern/logger');\n\nawait makeDependencies()\n"})}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Services can only be used after sern has made dependencies.\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Calling a service before will crash your application."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Services can be safely used outside of commandModules.\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Be careful to not cause too many side effects."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"related-api",children:"Related api"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["use ",(0,i.jsx)(n.code,{children:"Service"})," for single dependency."]}),"\n",(0,i.jsxs)(n.li,{children:["use ",(0,i.jsx)(n.code,{children:"Services"})," for multiple dependencies."]}),"\n"]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(o,{...e})}):o(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>l,x:()=>a});var i=s(6540);const r={},t=i.createContext(r);function l(e){const n=i.useContext(t);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:l(e.components),i.createElement(t.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bcd9df7e.45ba7d7b.js b/assets/js/bcd9df7e.45ba7d7b.js deleted file mode 100644 index 0b56637cc..000000000 --- a/assets/js/bcd9df7e.45ba7d7b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4793],{4837:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>t,contentTitle:()=>l,default:()=>x,frontMatter:()=>i,metadata:()=>c,toc:()=>h});var s=r(4848),d=r(8453);const i={id:"Context",title:"Class: Context",sidebar_label:"Context",sidebar_position:0,custom_edit_url:null},l=void 0,c={id:"api/classes/Context",title:"Class: Context",description:"Since",source:"@site/docs/api/classes/Context.md",sourceDirName:"api/classes",slug:"/api/classes/Context",permalink:"/docs/api/classes/Context",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Context",title:"Class: Context",sidebar_label:"Context",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CommandExecutable",permalink:"/docs/api/classes/CommandExecutable"},next:{title:"DefaultErrorHandling",permalink:"/docs/api/classes/DefaultErrorHandling"}},t={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"Properties",id:"properties",level:2},{value:"ctx",id:"ctx",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"Accessors",id:"accessors",level:2},{value:"channel",id:"channel",level:3},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"channelId",id:"channelid",level:3},{value:"Returns",id:"returns-2",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"client",id:"client",level:3},{value:"Returns",id:"returns-3",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"createdTimestamp",id:"createdtimestamp",level:3},{value:"Returns",id:"returns-4",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"guild",id:"guild",level:3},{value:"Returns",id:"returns-5",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"guildId",id:"guildid",level:3},{value:"Returns",id:"returns-6",level:4},{value:"Defined in",id:"defined-in-7",level:4},{value:"id",id:"id",level:3},{value:"Returns",id:"returns-7",level:4},{value:"Defined in",id:"defined-in-8",level:4},{value:"inGuild",id:"inguild",level:3},{value:"Returns",id:"returns-8",level:4},{value:"Defined in",id:"defined-in-9",level:4},{value:"interaction",id:"interaction",level:3},{value:"Returns",id:"returns-9",level:4},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-10",level:4},{value:"member",id:"member",level:3},{value:"Returns",id:"returns-10",level:4},{value:"Defined in",id:"defined-in-11",level:4},{value:"message",id:"message",level:3},{value:"Returns",id:"returns-11",level:4},{value:"Inherited from",id:"inherited-from-2",level:4},{value:"Defined in",id:"defined-in-12",level:4},{value:"options",id:"options",level:3},{value:"Returns",id:"returns-12",level:4},{value:"Overrides",id:"overrides-1",level:4},{value:"Defined in",id:"defined-in-13",level:4},{value:"user",id:"user",level:3},{value:"Returns",id:"returns-13",level:4},{value:"Defined in",id:"defined-in-14",level:4},{value:"userId",id:"userid",level:3},{value:"Returns",id:"returns-14",level:4},{value:"Defined in",id:"defined-in-15",level:4},{value:"Methods",id:"methods",level:2},{value:"isMessage",id:"ismessage",level:3},{value:"Returns",id:"returns-15",level:4},{value:"Inherited from",id:"inherited-from-3",level:4},{value:"Defined in",id:"defined-in-16",level:4},{value:"isSlash",id:"isslash",level:3},{value:"Returns",id:"returns-16",level:4},{value:"Inherited from",id:"inherited-from-4",level:4},{value:"Defined in",id:"defined-in-17",level:4},{value:"reply",id:"reply",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-17",level:4},{value:"Defined in",id:"defined-in-18",level:4},{value:"wrap",id:"wrap",level:3},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-18",level:4},{value:"Overrides",id:"overrides-2",level:4},{value:"Defined in",id:"defined-in-19",level:4}];function o(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:(0,s.jsx)(n.code,{children:"Since"})})}),"\n",(0,s.jsx)(n.p,{children:"1.0.0\nProvides values shared between\nMessage and ChatInputCommandInteraction"}),"\n",(0,s.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"CoreContext"}),"<",(0,s.jsx)(n.code,{children:"Message"}),", ",(0,s.jsx)(n.code,{children:"ChatInputCommandInteraction"}),">"]}),"\n",(0,s.jsxs)(n.p,{children:["\u21b3 ",(0,s.jsx)(n.strong,{children:(0,s.jsx)(n.code,{children:"Context"})})]}),"\n"]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"constructors",children:"Constructors"}),"\n",(0,s.jsx)(n.h3,{id:"constructor",children:"constructor"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.strong,{children:"new Context"}),"(",(0,s.jsx)(n.code,{children:"ctx"}),"): ",(0,s.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,s.jsx)(n.code,{children:"Context"})})]}),"\n",(0,s.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,s.jsx)(n.tbody,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"ctx"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,s.jsx)(n.code,{children:"Result"}),"<",(0,s.jsx)(n.code,{children:"Message"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),">, ",(0,s.jsx)(n.code,{children:"ChatInputCommandInteraction"}),"<",(0,s.jsx)(n.code,{children:"CacheType"}),">>"]})]})})]}),"\n",(0,s.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,s.jsx)(n.code,{children:"Context"})})}),"\n",(0,s.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext<Message, ChatInputCommandInteraction>.constructor"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L29",children:"src/core/structures/context.ts:29"})}),"\n",(0,s.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,s.jsx)(n.h3,{id:"ctx",children:"ctx"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"Protected"})," ",(0,s.jsx)(n.strong,{children:"ctx"}),": ",(0,s.jsx)(n.code,{children:"Result"}),"<",(0,s.jsx)(n.code,{children:"Message"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),">, ",(0,s.jsx)(n.code,{children:"ChatInputCommandInteraction"}),"<",(0,s.jsx)(n.code,{children:"CacheType"}),">>"]}),"\n",(0,s.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.ctx"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L29",children:"src/core/structures/context.ts:29"})}),"\n",(0,s.jsx)(n.h2,{id:"accessors",children:"Accessors"}),"\n",(0,s.jsx)(n.h3,{id:"channel",children:"channel"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"channel"}),"(): ",(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"TextBasedChannel"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"TextBasedChannel"})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L39",children:"src/core/structures/context.ts:39"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"channelid",children:"channelId"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"channelId"}),"(): ",(0,s.jsx)(n.code,{children:"string"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"string"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L45",children:"src/core/structures/context.ts:45"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"client",children:"client"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"client"}),"(): ",(0,s.jsx)(n.code,{children:"Client"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"Client"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L91",children:"src/core/structures/context.ts:91"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"createdtimestamp",children:"createdTimestamp"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"createdTimestamp"}),"(): ",(0,s.jsx)(n.code,{children:"number"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-4",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"number"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L65",children:"src/core/structures/context.ts:65"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"guild",children:"guild"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"guild"}),"(): ",(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"Guild"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-5",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"Guild"})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L71",children:"src/core/structures/context.ts:71"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"guildid",children:"guildId"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"guildId"}),"(): ",(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"string"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-6",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"string"})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L77",children:"src/core/structures/context.ts:77"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"id",children:"id"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"id"}),"(): ",(0,s.jsx)(n.code,{children:"string"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-7",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"string"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-8",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L33",children:"src/core/structures/context.ts:33"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"inguild",children:"inGuild"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"inGuild"}),"(): ",(0,s.jsx)(n.code,{children:"boolean"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-8",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"boolean"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-9",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L97",children:"src/core/structures/context.ts:97"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"interaction",children:"interaction"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"interaction"}),"(): ",(0,s.jsx)(n.code,{children:"I"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-9",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"I"})}),"\n",(0,s.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.interaction"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-10",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/core-context.ts#L15",children:"src/core/structures/core-context.ts:15"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"member",children:"member"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"member"}),"(): ",(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"GuildMember"})," | ",(0,s.jsx)(n.code,{children:"APIInteractionGuildMember"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-10",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"null"})," | ",(0,s.jsx)(n.code,{children:"GuildMember"})," | ",(0,s.jsx)(n.code,{children:"APIInteractionGuildMember"})]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-11",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L85",children:"src/core/structures/context.ts:85"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"message",children:"message"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"message"}),"(): ",(0,s.jsx)(n.code,{children:"M"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-11",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"M"})}),"\n",(0,s.jsx)(n.h4,{id:"inherited-from-2",children:"Inherited from"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.message"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-12",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/core-context.ts#L12",children:"src/core/structures/core-context.ts:12"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"options",children:"options"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"options"}),"(): ",(0,s.jsx)(n.code,{children:"Omit"}),"<",(0,s.jsx)(n.code,{children:"CommandInteractionOptionResolver"}),"<",(0,s.jsx)(n.code,{children:"CacheType"}),">, ",(0,s.jsx)(n.code,{children:'"getMessage"'})," | ",(0,s.jsx)(n.code,{children:'"getFocused"'}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"returns-12",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"Omit"}),"<",(0,s.jsx)(n.code,{children:"CommandInteractionOptionResolver"}),"<",(0,s.jsx)(n.code,{children:"CacheType"}),">, ",(0,s.jsx)(n.code,{children:'"getMessage"'})," | ",(0,s.jsx)(n.code,{children:'"getFocused"'}),">"]}),"\n",(0,s.jsx)(n.h4,{id:"overrides-1",children:"Overrides"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.options"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-13",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L26",children:"src/core/structures/context.ts:26"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"user",children:"user"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"user"}),"(): ",(0,s.jsx)(n.code,{children:"User"})]}),"\n",(0,s.jsx)(n.p,{children:"If context is holding a message, message.author\nelse, interaction.user"}),"\n",(0,s.jsx)(n.h4,{id:"returns-13",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"User"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-14",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L55",children:"src/core/structures/context.ts:55"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"userid",children:"userId"}),"\n",(0,s.jsxs)(n.p,{children:["\u2022 ",(0,s.jsx)(n.code,{children:"get"})," ",(0,s.jsx)(n.strong,{children:"userId"}),"(): ",(0,s.jsx)(n.code,{children:"string"})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-14",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.code,{children:"string"})}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-15",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L61",children:"src/core/structures/context.ts:61"})}),"\n",(0,s.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,s.jsx)(n.h3,{id:"ismessage",children:"isMessage"}),"\n",(0,s.jsxs)(n.p,{children:["\u25b8 ",(0,s.jsx)(n.strong,{children:"isMessage"}),"(): this is CoreContext<Message<boolean>, never>"]}),"\n",(0,s.jsx)(n.h4,{id:"returns-15",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:"this is CoreContext<Message<boolean>, never>"}),"\n",(0,s.jsx)(n.h4,{id:"inherited-from-3",children:"Inherited from"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.isMessage"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-16",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/core-context.ts#L19",children:"src/core/structures/core-context.ts:19"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"isslash",children:"isSlash"}),"\n",(0,s.jsxs)(n.p,{children:["\u25b8 ",(0,s.jsx)(n.strong,{children:"isSlash"}),"(): this is CoreContext<never, ChatInputCommandInteraction<CacheType>>"]}),"\n",(0,s.jsx)(n.h4,{id:"returns-16",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:"this is CoreContext<never, ChatInputCommandInteraction<CacheType>>"}),"\n",(0,s.jsx)(n.h4,{id:"inherited-from-4",children:"Inherited from"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.isSlash"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-17",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/core-context.ts#L23",children:"src/core/structures/core-context.ts:23"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"reply",children:"reply"}),"\n",(0,s.jsxs)(n.p,{children:["\u25b8 ",(0,s.jsx)(n.strong,{children:"reply"}),"(",(0,s.jsx)(n.code,{children:"content"}),"): ",(0,s.jsx)(n.code,{children:"Promise"}),"<",(0,s.jsx)(n.code,{children:"Message"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),">>"]}),"\n",(0,s.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,s.jsx)(n.tbody,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"content"})}),(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"ReplyOptions"})})]})})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-17",children:"Returns"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.code,{children:"Promise"}),"<",(0,s.jsx)(n.code,{children:"Message"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),">>"]}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-18",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L103",children:"src/core/structures/context.ts:103"})}),"\n",(0,s.jsx)(n.hr,{}),"\n",(0,s.jsx)(n.h3,{id:"wrap",children:"wrap"}),"\n",(0,s.jsxs)(n.p,{children:["\u25b8 ",(0,s.jsx)(n.strong,{children:"wrap"}),"(",(0,s.jsx)(n.code,{children:"wrappable"}),"): ",(0,s.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,s.jsx)(n.code,{children:"Context"})})]}),"\n",(0,s.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,s.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,s.jsx)(n.tbody,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{style:{textAlign:"left"},children:(0,s.jsx)(n.code,{children:"wrappable"})}),(0,s.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,s.jsx)(n.code,{children:"Message"}),"<",(0,s.jsx)(n.code,{children:"boolean"}),"> | ",(0,s.jsx)(n.code,{children:"BaseInteraction"}),"<",(0,s.jsx)(n.code,{children:"CacheType"}),">"]})]})})]}),"\n",(0,s.jsx)(n.h4,{id:"returns-18",children:"Returns"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"/docs/api/classes/Context",children:(0,s.jsx)(n.code,{children:"Context"})})}),"\n",(0,s.jsx)(n.h4,{id:"overrides-2",children:"Overrides"}),"\n",(0,s.jsx)(n.p,{children:"CoreContext.wrap"}),"\n",(0,s.jsx)(n.h4,{id:"defined-in-19",children:"Defined in"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/context.ts#L113",children:"src/core/structures/context.ts:113"})})]})}function x(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(o,{...e})}):o(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>l,x:()=>c});var s=r(6540);const d={},i=s.createContext(d);function l(e){const n=s.useContext(i);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(d):e.components||d:l(e.components),s.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/beef0c9d.bf88ad5a.js b/assets/js/beef0c9d.bf88ad5a.js deleted file mode 100644 index c1ea45bd4..000000000 --- a/assets/js/beef0c9d.bf88ad5a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[497],{9898:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>o,contentTitle:()=>t,default:()=>u,frontMatter:()=>d,metadata:()=>l,toc:()=>c});var i=r(4848),s=r(8453);const d={id:"SernError",title:"Enumeration: SernError",sidebar_label:"SernError",sidebar_position:0,custom_edit_url:null},t=void 0,l={id:"api/enums/SernError",title:"Enumeration: SernError",description:"Enumeration Members",source:"@site/docs/api/enums/SernError.md",sourceDirName:"api/enums",slug:"/api/enums/SernError",permalink:"/docs/api/enums/SernError",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"SernError",title:"Enumeration: SernError",sidebar_label:"SernError",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"PluginType",permalink:"/docs/api/enums/PluginType"},next:{title:"CommandExecutable",permalink:"/docs/api/classes/CommandExecutable"}},o={},c=[{value:"Enumeration Members",id:"enumeration-members",level:2},{value:"InvalidModuleType",id:"invalidmoduletype",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"MismatchEvent",id:"mismatchevent",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"MismatchModule",id:"mismatchmodule",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"MissingRequired",id:"missingrequired",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"NotSupportedInteraction",id:"notsupportedinteraction",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"NotSupportedYet",id:"notsupportedyet",level:3},{value:"Defined in",id:"defined-in-5",level:4},{value:"PluginFailure",id:"pluginfailure",level:3},{value:"Defined in",id:"defined-in-6",level:4},{value:"UndefinedModule",id:"undefinedmodule",level:3},{value:"Defined in",id:"defined-in-7",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"enumeration-members",children:"Enumeration Members"}),"\n",(0,i.jsx)(n.h3,{id:"invalidmoduletype",children:"InvalidModuleType"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"InvalidModuleType"})," = ",(0,i.jsx)(n.code,{children:'"Detected an unknown module type"'})]}),"\n",(0,i.jsx)(n.p,{children:"Throws when registering an invalid module.\nThis means it is undefined or an invalid command type was provided"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L9",children:"src/handler/structures/errors.ts:9"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"mismatchevent",children:"MismatchEvent"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"MismatchEvent"})," = ",(0,i.jsx)(n.code,{children:'"You cannot use message when an interaction fired or vice versa"'})]}),"\n",(0,i.jsx)(n.p,{children:"A crash that occurs when accessing an invalid property of Context"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L29",children:"src/handler/structures/errors.ts:29"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"mismatchmodule",children:"MismatchModule"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"MismatchModule"})," = ",(0,i.jsx)(n.code,{children:'"A module type mismatched with event emitted!"'})]}),"\n",(0,i.jsx)(n.p,{children:"Attempted to lookup module in command module store. Nothing was found!"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L17",children:"src/handler/structures/errors.ts:17"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"missingrequired",children:"MissingRequired"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"MissingRequired"})," = ",(0,i.jsx)(n.code,{children:'"@sern/client is required but was not found"'})]}),"\n",(0,i.jsx)(n.p,{children:"Required Dependency not found"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L37",children:"src/handler/structures/errors.ts:37"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"notsupportedinteraction",children:"NotSupportedInteraction"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"NotSupportedInteraction"})," = ",(0,i.jsx)(n.code,{children:'"This interaction is not supported."'})]}),"\n",(0,i.jsx)(n.p,{children:"Unsupported interaction at this moment."}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L21",children:"src/handler/structures/errors.ts:21"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"notsupportedyet",children:"NotSupportedYet"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"NotSupportedYet"})," = ",(0,i.jsx)(n.code,{children:'"This feature is not supported yet"'})]}),"\n",(0,i.jsx)(n.p,{children:"Unsupported feature attempted to access at this time"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L33",children:"src/handler/structures/errors.ts:33"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"pluginfailure",children:"PluginFailure"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"PluginFailure"})," = ",(0,i.jsx)(n.code,{children:'"A plugin failed to call controller.next()"'})]}),"\n",(0,i.jsxs)(n.p,{children:["One plugin called ",(0,i.jsx)(n.code,{children:"controller.stop()"})," (end command execution / loading)"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L25",children:"src/handler/structures/errors.ts:25"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"undefinedmodule",children:"UndefinedModule"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"UndefinedModule"})," = ",(0,i.jsx)(n.code,{children:'"A module could not be detected"'})]}),"\n",(0,i.jsx)(n.p,{children:"Attempted to lookup module in command module store. Nothing was found!"}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/handler/structures/errors.ts#L13",children:"src/handler/structures/errors.ts:13"})})]})}function u(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>t,x:()=>l});var i=r(6540);const s={},d=i.createContext(s);function t(e){const n=i.useContext(d);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:t(e.components),i.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c0846785.305a360d.js b/assets/js/c0846785.305a360d.js deleted file mode 100644 index 14d8b690d..000000000 --- a/assets/js/c0846785.305a360d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7318],{9350:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>o,frontMatter:()=>r,metadata:()=>i,toc:()=>h});var t=s(4848),l=s(8453);const r={id:"EventExecutable",title:"Class: EventExecutable<Type>",sidebar_label:"EventExecutable",sidebar_position:0,custom_edit_url:null},d=void 0,i={id:"api/classes/EventExecutable",title:"Class: EventExecutable<Type>",description:"Deprecated",source:"@site/docs/api/classes/EventExecutable.md",sourceDirName:"api/classes",slug:"/api/classes/EventExecutable",permalink:"/docs/api/classes/EventExecutable",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"EventExecutable",title:"Class: EventExecutable<Type>",sidebar_label:"EventExecutable",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DefaultModuleManager",permalink:"/docs/api/classes/DefaultModuleManager"},next:{title:"ModuleStore",permalink:"/docs/api/classes/ModuleStore"}},c={},h=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Type parameters",id:"type-parameters-1",level:4},{value:"Returns",id:"returns",level:4},{value:"Properties",id:"properties",level:2},{value:"plugins",id:"plugins",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"_instance",id:"_instance",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"Methods",id:"methods",level:2},{value:"execute",id:"execute",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"getInstance",id:"getinstance",level:3},{value:"Returns",id:"returns-2",level:4},{value:"Defined in",id:"defined-in-4",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,l.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.p,{children:(0,t.jsx)(n.strong,{children:(0,t.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,t.jsx)(n.p,{children:"Will be removed in future"}),"\n",(0,t.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"Type"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,t.jsx)(n.a,{href:"/docs/api/enums/EventType",children:(0,t.jsx)(n.code,{children:"EventType"})})]})]})})]}),"\n",(0,t.jsx)(n.h2,{id:"constructors",children:"Constructors"}),"\n",(0,t.jsx)(n.h3,{id:"constructor",children:"constructor"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.strong,{children:"new EventExecutable"}),"<",(0,t.jsx)(n.code,{children:"Type"}),">(): ",(0,t.jsx)(n.a,{href:"/docs/api/classes/EventExecutable",children:(0,t.jsx)(n.code,{children:"EventExecutable"})}),"<",(0,t.jsx)(n.code,{children:"Type"}),">"]}),"\n",(0,t.jsx)(n.h4,{id:"type-parameters-1",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"Type"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,t.jsx)(n.a,{href:"/docs/api/enums/EventType",children:(0,t.jsx)(n.code,{children:"EventType"})})]})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.a,{href:"/docs/api/classes/EventExecutable",children:(0,t.jsx)(n.code,{children:"EventExecutable"})}),"<",(0,t.jsx)(n.code,{children:"Type"}),">"]}),"\n",(0,t.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,t.jsx)(n.h3,{id:"plugins",children:"plugins"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.strong,{children:"plugins"}),": ",(0,t.jsx)(n.a,{href:"/docs/api/modules#anyeventplugin",children:(0,t.jsx)(n.code,{children:"AnyEventPlugin"})}),"[] = ",(0,t.jsx)(n.code,{children:"[]"})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L101",children:"src/core/modules.ts:101"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.code,{children:"Abstract"})," ",(0,t.jsx)(n.strong,{children:"type"}),": ",(0,t.jsx)(n.code,{children:"Type"})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L100",children:"src/core/modules.ts:100"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"_instance",children:"_instance"}),"\n",(0,t.jsxs)(n.p,{children:["\u25aa ",(0,t.jsx)(n.code,{children:"Static"})," ",(0,t.jsx)(n.code,{children:"Private"})," ",(0,t.jsx)(n.strong,{children:"_instance"}),": ",(0,t.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,t.jsx)(n.code,{children:"EventModule"})})]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L103",children:"src/core/modules.ts:103"})}),"\n",(0,t.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,t.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 ",(0,t.jsx)(n.strong,{children:"execute"}),"(",(0,t.jsx)(n.code,{children:"...args"}),"): ",(0,t.jsx)(n.code,{children:"unknown"})]}),"\n",(0,t.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"...args"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,t.jsx)(n.code,{children:"EventArgs"}),"<",(0,t.jsx)(n.code,{children:"Type"}),", ",(0,t.jsx)(n.a,{href:"/docs/api/enums/PluginType#control",children:(0,t.jsx)(n.code,{children:"Control"})}),">"]})]})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.code,{children:"unknown"})}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L112",children:"src/core/modules.ts:112"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"getinstance",children:"getInstance"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 ",(0,t.jsx)(n.strong,{children:"getInstance"}),"(): ",(0,t.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,t.jsx)(n.code,{children:"EventModule"})})]}),"\n",(0,t.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,t.jsx)(n.code,{children:"EventModule"})})}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/9d5c6c7/src/core/modules.ts#L104",children:"src/core/modules.ts:104"})})]})}function o(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>d,x:()=>i});var t=s(6540);const l={},r=t.createContext(l);function d(e){const n=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:d(e.components),t.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c0930fba.2b67a718.js b/assets/js/c0930fba.2b67a718.js deleted file mode 100644 index 7ccbaec42..000000000 --- a/assets/js/c0930fba.2b67a718.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1703],{8450:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>s,metadata:()=>a,toc:()=>d});var r=n(4848),o=n(8453);const s={sidebar_position:1},i="Create a new project",a={id:"guide/walkthrough/new-project",title:"Create a new project",description:"and follow the interactive prompts.",source:"@site/docs/guide/walkthrough/new-project.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/new-project",permalink:"/docs/guide/walkthrough/new-project",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/new-project.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Goal",permalink:"/docs/guide/walkthrough/goal"},next:{title:"CLI",permalink:"/docs/guide/walkthrough/cli"}},c={},d=[];function l(e){const t={a:"a",code:"code",h1:"h1",p:"p",pre:"pre",...(0,o.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"create-a-new-project",children:"Create a new project"}),"\n",(0,r.jsx)(t.pre,{children:(0,r.jsx)(t.code,{className:"language-sh",children:"npm create @sern/bot\n"})}),"\n",(0,r.jsx)(t.p,{children:"and follow the interactive prompts."}),"\n",(0,r.jsxs)(t.p,{children:["if somehow you need help, feel free to ask ",(0,r.jsx)(t.a,{href:"https://sern.dev/discord",children:"here"})]})]})}function u(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(l,{...e})}):l(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>a});var r=n(6540);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/c4348237.e83a81df.js b/assets/js/c4348237.e83a81df.js deleted file mode 100644 index 7a188700e..000000000 --- a/assets/js/c4348237.e83a81df.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[987],{4061:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-pages","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/c4f5d8e4.8e18ce01.js b/assets/js/c4f5d8e4.8e18ce01.js deleted file mode 100644 index d39db5db1..000000000 --- a/assets/js/c4f5d8e4.8e18ce01.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2634],{6479:(e,t,l)=>{l.d(t,{A:()=>n});var c=l(6540);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var l=arguments[t];for(var c in l)Object.prototype.hasOwnProperty.call(l,c)&&(e[c]=l[c])}return e},a.apply(this,arguments)}const n=e=>{let{title:t,titleId:l,...n}=e;return c.createElement("svg",a({height:800,width:800,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512",xmlSpace:"preserve","aria-labelledby":l},n),t?c.createElement("title",{id:l},t):null,c.createElement("path",{style:{fill:"#e15649"},d:"M0 475.429h128v-73.143H0v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M128 475.429h128v-73.143H128v73.143z"}),c.createElement("path",{style:{fill:"#a52525"},d:"M256 475.429h128v-73.143H256v73.143z"}),c.createElement("path",{style:{fill:"#e15649"},d:"M384 475.429h128v-73.143H384v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M0 402.286h64v-73.143H0v73.143z"}),c.createElement("path",{style:{fill:"#a52525"},d:"M448 402.286h64v-73.143h-64v73.143zM64 402.286h128v-73.143H64v73.143z"}),c.createElement("path",{style:{fill:"#e15649"},d:"M192 402.286h128v-73.143H192v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M320 402.286h128v-73.143H320v73.143z"}),c.createElement("path",{style:{fill:"#e15649"},d:"M0 329.143h128V256H0v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M128 329.143h128V256H128v73.143z"}),c.createElement("path",{style:{fill:"#a52525"},d:"M256 329.143h128V256H256v73.143z"}),c.createElement("path",{style:{fill:"#e15649"},d:"M384 329.143h128V256H384v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M0 256h64v-73.143H0V256z"}),c.createElement("path",{style:{fill:"#a52525"},d:"M448 256h64v-73.143h-64V256zM64 256h128v-73.143H64V256z"}),c.createElement("path",{style:{fill:"#e15649"},d:"M192 256h128v-73.143H192V256z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M320 256h128v-73.143H320V256z"}),c.createElement("path",{style:{fill:"#e15649"},d:"M0 182.857h128v-73.143H0v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M128 182.857h128v-73.143H128v73.143z"}),c.createElement("path",{style:{fill:"#a52525"},d:"M256 182.857h128v-73.143H256v73.143z"}),c.createElement("path",{style:{fill:"#bc342e"},d:"M0 109.714h64V36.571H0v73.143z"}),c.createElement("path",{style:{fill:"#a52525"},d:"M64 109.714h128V36.571H64v73.143z"}))}},8804:(e,t,l)=>{l.d(t,{A:()=>d});var c,a,n,r,s,i=l(6540);function h(){return h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var l=arguments[t];for(var c in l)Object.prototype.hasOwnProperty.call(l,c)&&(e[c]=l[c])}return e},h.apply(this,arguments)}const d=e=>{let{title:t,titleId:l,...d}=e;return i.createElement("svg",h({width:800,height:800,viewBox:"0 0 1024 1024",className:"icon",xmlns:"http://www.w3.org/2000/svg","aria-labelledby":l},d),t?i.createElement("title",{id:l},t):null,c||(c=i.createElement("path",{d:"M564.9 273.2V106.9c0-.9-.7-1.6-1.6-1.6-.1 0-.5 0-.9.3L478.9 189c-6.9 6.9-17.7 8-25.8 2.5-29.2-19.5-63.3-29.8-98.5-29.8s-69.3 10.3-98.5 29.8c-8.1 5.4-18.9 4.4-25.8-2.5l-83.4-83.4c-.4-.3-.8-.3-.9-.3-.9 0-1.6.7-1.6 1.6v166.3c0 12.9 1.2 25.8 3.5 38.6l62.4 8.3c11.2 1.5 19.1 11.8 17.6 23-1.3 10.3-10.1 17.7-20.2 17.7-.9 0-1.8 0-2.7-.2l-45-6c2.9 7.6 6.2 15 9.9 22.3l36-3c11.3-1 21.2 7.4 22.1 18.6 1 11.2-7.4 21.1-18.6 22.1l-14.8 1.2c3.8 4.9 7.9 9.8 12.1 14.4 40.5 44.3 93.1 68.7 148 68.7s107.5-24.4 148-68.7c4.2-4.6 8.3-9.4 12.1-14.4l-14.8-1.2c-11.2-1-19.6-10.9-18.6-22.1 1-11.3 10.8-19.6 22.1-18.6l36.1 3c3.7-7.3 7-14.7 9.9-22.3l-45 6c-.9.1-1.8.2-2.7.2-10.1 0-18.9-7.5-20.2-17.7-1.5-11.2 6.4-21.5 17.6-23l62.4-8.3c2.1-12.8 3.3-25.7 3.3-38.6zm283.6 570.3c65.7-109.7 30-250.7-81.3-320.9L573.4 400.1c-11 20.7-24.6 40.2-40.6 57.7-48.4 52.9-111.6 82-178.2 82-26.5 0-52.6-4.6-77.3-13.6-.2 6.7-.3 13.5-.1 20.3 1.5 55.7 16.9 110.5 44.7 158.4 2.7 4.7 3.3 9.9 2.2 14.8V856c0 11.3-9.2 20.4-20.4 20.4h-21.2c-11.7 0-21.3 9.5-21.3 21.2v21.3h104.2c11.3 0 20.4-9.2 20.4-20.4v-151c0-11.3 9.1-20.4 20.4-20.4 11.3 0 20.4 9.1 20.4 20.4v130.7h20.2c7.5-27.4 32.6-47.7 62.4-47.7h29.4c-6.5-19.5-9.9-40-9.9-60.6 0-104.8 85.2-190 190-190 11.3 0 20.4 9.1 20.4 20.4 0 11.3-9.2 20.4-20.4 20.4-82.2 0-149.1 66.9-149.1 149.2 0 24.9 6.3 49.5 18.1 71.3 3.5 6.3 3.3 14-.4 20.2-3.7 6.2-10.4 10-17.6 10h-60.5c-13.1 0-23.8 10.7-23.8 23.8V919h233.3c47.2 0 92.1-22.7 120.1-60.8l9.7-14.7zm33-262.4V319.5c0-9.8-3.8-19-10.7-25.9-6.9-6.9-16.2-10.8-26-10.8-20.2 0-36.7 16.5-36.7 36.7v181.6c30.2 22.5 54.8 49.8 73.4 80zm40.9-261.6v397.8c0 .4 0 .8-.1 1.2 1.2 49.8-11.3 100.3-38.8 146.2-.1.2-.3.5-.4.7-.1.1-.1.2-.2.2-3.3 5.7-6.9 11.2-10.8 16.4-35.6 48.8-93 77.9-153.4 77.9H485c-22.3 0-40.4-18.2-40.4-40.4v-.5h-21.4c-8.4 23.8-31.2 40.9-57.8 40.9H259.6c-21.6 0-39.2-17.6-39.2-39.3v-22.9c0-34.3 27.9-62.1 62.1-62.1h.8v-116c-29.1-52.4-45.3-111.7-46.9-171.9-.4-13.5 0-26.9 1.1-40.1-22.1-12.9-42.6-29.6-61-49.7-46.3-50.7-72.9-118-72.9-184.7V106.9c0-23.4 19-42.5 42.5-42.5 10.8 0 21.1 4 28.9 11.4l.5.5 72.4 72.4c32.5-18.3 69.1-27.8 106.8-27.8s74.2 9.6 106.8 27.8l72.4-72.4.5-.5c7.9-7.3 18.2-11.4 28.9-11.4 23.4 0 42.5 19.1 42.5 42.5v166.3c0 30.1-5.4 60.4-15.7 89.1l177.1 111.9V319.5c0-42.8 34.8-77.6 77.6-77.6 20.7 0 40.2 8.1 54.8 22.7 14.7 14.7 22.8 34.2 22.8 54.9z",fill:"#633"})),a||(a=i.createElement("path",{d:"M881.5 319.5v261.6c-18.5-30.2-43.2-57.5-73.4-80V319.5c0-20.2 16.5-36.7 36.7-36.7 9.8 0 19 3.8 26 10.8 6.9 6.9 10.7 16.1 10.7 25.9zM767.2 522.6c111.3 70.3 147 211.2 81.3 320.9l-9.7 14.8c-28 38-72.9 60.8-120.1 60.8H485.4v-23.8c0-13.1 10.7-23.8 23.8-23.8h60.5c7.2 0 13.9-3.8 17.6-10 3.7-6.2 3.8-13.9.4-20.2-11.8-21.7-18.1-46.4-18.1-71.3 0-82.3 66.9-149.2 149.1-149.2 11.3 0 20.4-9.2 20.4-20.4 0-11.3-9.2-20.4-20.4-20.4-104.8 0-190 85.2-190 190 0 20.6 3.4 41.1 9.9 60.6h-29.4c-29.8 0-54.9 20.2-62.4 47.7h-20.2V747.5c0-11.3-9.2-20.4-20.4-20.4-11.3 0-20.4 9.1-20.4 20.4v151.1c0 11.3-9.2 20.4-20.4 20.4H261.2v-21.3c0-11.7 9.5-21.2 21.3-21.2h21.2c11.3 0 20.4-9.2 20.4-20.4V719.8c1.1-4.9.5-10.1-2.2-14.8-27.8-47.9-43.2-102.7-44.7-158.4-.2-6.8-.1-13.6.1-20.3 24.8 8.9 50.8 13.6 77.3 13.6 66.6 0 129.8-29.1 178.2-82 16-17.5 29.6-37 40.6-57.7l193.8 122.4z",fill:"#B2ABAC"})),n||(n=i.createElement("path",{d:"M821.1 682.6c11 44.8 4.2 91.4-19.2 131.2-3.8 6.5-10.6 10.1-17.6 10.1-3.5 0-7.1-.9-10.3-2.8-9.8-5.7-13-18.2-7.3-28 18-30.6 23.2-66.4 14.7-100.8-2.7-11 4-22 15-24.7 10.9-2.6 22 4.1 24.7 15z",fill:"#633"})),r||(r=i.createElement("path",{d:"M564.9 106.9v166.3c0 12.9-1.2 25.8-3.5 38.6L499 320c-11.2 1.5-19.1 11.8-17.6 23 1.4 10.3 10.1 17.7 20.2 17.7.9 0 1.8-.1 2.7-.2l45-6c-2.9 7.6-6.2 15-9.9 22.3l-36.1-3c-11.3-1-21.1 7.4-22.1 18.6-.9 11.2 7.4 21.1 18.6 22.1l14.8 1.2c-3.8 4.9-7.9 9.8-12.1 14.4-40.5 44.3-93.1 68.7-148 68.7s-107.5-24.4-148-68.7c-4.2-4.6-8.3-9.4-12.1-14.4l14.8-1.2c11.2-1 19.6-10.9 18.6-22.1-.9-11.3-10.8-19.6-22.1-18.6l-36 3c-3.7-7.3-7-14.7-9.9-22.3l45 6c.9.1 1.8.2 2.7.2 10.1 0 18.9-7.5 20.2-17.7 1.5-11.2-6.4-21.5-17.6-23l-62.4-8.3c-2.3-12.8-3.5-25.7-3.5-38.6V106.9c0-.9.7-1.6 1.6-1.6.1 0 .5 0 .9.3l83.4 83.4c6.9 6.9 17.7 8 25.8 2.5 29.2-19.5 63.3-29.8 98.5-29.8s69.3 10.3 98.5 29.8c8.1 5.4 18.9 4.4 25.8-2.5l83.4-83.4c.4-.3.8-.3.9-.3 1.1 0 1.9.7 1.9 1.6z",fill:"#B2ABAC"})),s||(s=i.createElement("path",{d:"M461.4 277.9a20 20 0 1 0 40 0 20 20 0 1 0-40 0ZM414.5 356.4c5 8.8 1.9 20.1-6.9 25.1-7.4 4.2-15.7 6.4-24 6.4-3.4 0-6.7-.3-10-1-6.9-1.5-13.3-4.4-18.9-8.5-5.5 4.1-11.9 7-18.8 8.5-3.3.7-6.7 1-10 1-8.4 0-16.7-2.2-24.1-6.4-8.8-5-11.9-16.3-6.9-25.1 5-8.9 16.3-11.9 25.1-6.9 1.8 1 4.7 2.1 8.4 1.3 4.2-.9 7.6-3.9 8.9-8 3.1-9.6 13.5-14.9 23.2-11.8 5.8 1.9 10 6.4 11.8 11.8 1.3 4 4.7 7.1 8.9 8 3.7.8 6.6-.3 8.4-1.3 8.6-5 19.9-1.9 24.9 6.9zM207.8 277.9a20 20 0 1 0 40 0 20 20 0 1 0-40 0Z",fill:"#633"})))}},3382:(e,t,l)=>{l.d(t,{A:()=>i});var c,a,n,r=l(6540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var l=arguments[t];for(var c in l)Object.prototype.hasOwnProperty.call(l,c)&&(e[c]=l[c])}return e},s.apply(this,arguments)}const i=e=>{let{title:t,titleId:l,...i}=e;return r.createElement("svg",s({xmlns:"http://www.w3.org/2000/svg",width:800,height:800,viewBox:"0 0 64 64",xmlSpace:"preserve","aria-labelledby":l},i),t?r.createElement("title",{id:l},t):null,c||(c=r.createElement("path",{fill:"#394240",d:"M62.828 16.484 47.512 1.172a4 4 0 0 0-5.656 0L0 43.031V64h20.973l41.855-41.855a4.003 4.003 0 0 0 0-5.661zM18 56H8V46l.172-.172 10 10L18 56zm5.828-5.828-10-10L44 10l10 10-30.172 30.172z"})),a||(a=r.createElement("path",{fill:"#F9EBB2",d:"M18 56H8V46l.172-.172 10 10z"})),n||(n=r.createElement("path",{fill:"#45AAB8",d:"m44 10 10 10-30.171 30.17-10-10z"})))}},8831:(e,t,l)=>{l.r(t),l.d(t,{default:()=>f});l(6540);var c=l(53),a=l(5489),n=l(4586),r=l(8511);const s={features:"features_t9lD",featureSvg:"featureSvg_GfXr"};var i=l(4848);const h=[{title:"Modular",Svg:l(6479).A,description:(0,i.jsx)(i.Fragment,{children:"Take apart, build, or customize code with ease to create robust bots."})},{title:"Concise",Svg:l(3382).A,description:(0,i.jsx)(i.Fragment,{children:"Commands are significantly smaller than other competitors. Write impactful, concise code."})},{title:"Familiar",Svg:l(8804).A,description:(0,i.jsx)(i.Fragment,{children:"Code like a traditional command handler. Although not exactly the same, the api is easy to learn and resembles classic v12 command handlers."})}];function d(e){let{Svg:t,title:l,description:a}=e;return(0,i.jsxs)("div",{className:(0,c.A)("col col--4"),children:[(0,i.jsx)("div",{className:"text--center",children:(0,i.jsx)(t,{className:s.featureSvg,role:"img"})}),(0,i.jsxs)("div",{className:"text--center padding-horiz--md",children:[(0,i.jsx)("h3",{children:l}),(0,i.jsx)("p",{children:a})]})]})}function o(){return(0,i.jsx)("section",{className:s.features,children:(0,i.jsx)("div",{className:"container",children:(0,i.jsx)("div",{className:"row",children:h.map(((e,t)=>(0,i.jsx)(d,{...e},t)))})})})}const v=l.p+"assets/images/sern-logo-9d28d12a0f06ff725ef05a05847343db.png";var m=l(5648);function p(){const{siteConfig:e}=(0,n.A)();return(0,i.jsx)("header",{className:(0,c.A)("hero hero--primary-lighter",m.A.heroBanner),children:(0,i.jsx)("div",{className:"container",children:(0,i.jsxs)("div",{className:"container",children:[(0,i.jsxs)("div",{className:"row",children:[(0,i.jsxs)("div",{className:"col col--6",children:[(0,i.jsx)("h1",{allowFontScaling:!0,numberOfLines:1,adjustsFontSizeToFit:!0,className:(0,c.A)("hero__title",m.A["padding-vert--md"]),style:m.A.herotitle_font,children:(0,i.jsx)("b",{children:e.title.slice(6)})}),(0,i.jsx)("p",{className:"hero__subtitle",children:e.tagline}),(0,i.jsx)(a.A,{className:"button button--secondary button--lg",to:"docs/guide/walkthrough/new-project",children:"npm create @sern/bot"})]}),(0,i.jsx)("div",{className:"col col--6",children:(0,i.jsx)("img",{src:v,alt:"logo",height:"auto",width:"auto"})})]}),(0,i.jsx)("div",{className:m.A.buttons})]})})})}function f(){const{siteConfig:e}=(0,n.A)();return(0,i.jsxs)(r.A,{title:"sern - Handlers. Redefined.",description:"Description will go into a meta tag in",children:[(0,i.jsx)(p,{}),(0,i.jsx)("main",{className:"user-select-none",children:(0,i.jsx)(o,{})})]})}},5648:(e,t,l)=>{l.d(t,{A:()=>c});const c={heroBanner:"heroBanner_qdFl",header:"header_gB2a",buttons:"buttons_AeoN","padding-vert--md":"padding-vert--md_IMB4",cntnr:"cntnr_SOJH"}}}]); \ No newline at end of file diff --git a/assets/js/c606405e.60902698.js b/assets/js/c606405e.60902698.js deleted file mode 100644 index cd66b5e9b..000000000 --- a/assets/js/c606405e.60902698.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4448],{2368:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>o,frontMatter:()=>d,metadata:()=>t,toc:()=>h});var r=i(4848),l=i(8453);const d={id:"ExternalEventPlugin",title:"Interface: ExternalEventPlugin",sidebar_label:"ExternalEventPlugin",sidebar_position:0,custom_edit_url:null},s=void 0,t={id:"api/interfaces/ExternalEventPlugin",title:"Interface: ExternalEventPlugin",description:"Hierarchy",source:"@site/docs/api/interfaces/ExternalEventPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/ExternalEventPlugin",permalink:"/docs/api/interfaces/ExternalEventPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"ExternalEventPlugin",title:"Interface: ExternalEventPlugin",sidebar_label:"ExternalEventPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ExternalEventCommand",permalink:"/docs/api/interfaces/ExternalEventCommand"},next:{title:"Init",permalink:"/docs/api/interfaces/Init"}},c={},h=[{value:"Hierarchy",id:"hierarchy",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Inherited from",id:"inherited-from",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Inherited from",id:"inherited-from-1",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Overrides",id:"overrides",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,l.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.h2,{id:"hierarchy",children:"Hierarchy"}),"\n",(0,r.jsxs)(n.ul,{children:["\n",(0,r.jsxs)(n.li,{children:["\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,r.jsx)(n.code,{children:"Plugin"})})}),"\n",(0,r.jsxs)(n.p,{children:["\u21b3 ",(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"ExternalEventPlugin"})})]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,r.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"description"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#description",children:"description"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L33",children:"src/handler/plugins/plugin.ts:33"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"execute"}),": (",(0,r.jsx)(n.code,{children:"args"}),": ",(0,r.jsx)(n.code,{children:"unknown"}),"[], ",(0,r.jsx)(n.code,{children:"controller"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})}),") => ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,r.jsxs)(n.p,{children:["\u25b8 (",(0,r.jsx)(n.code,{children:"args"}),", ",(0,r.jsx)(n.code,{children:"controller"}),"): ",(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,r.jsxs)(n.table,{children:[(0,r.jsx)(n.thead,{children:(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,r.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,r.jsxs)(n.tbody,{children:[(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"args"})}),(0,r.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,r.jsx)(n.code,{children:"unknown"}),"[]"]})]}),(0,r.jsxs)(n.tr,{children:[(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.code,{children:"controller"})}),(0,r.jsx)(n.td,{style:{textAlign:"left"},children:(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:(0,r.jsx)(n.code,{children:"Controller"})})})]})]})]}),"\n",(0,r.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.code,{children:"Awaitable"}),"<",(0,r.jsx)(n.code,{children:"Result"}),"<",(0,r.jsx)(n.code,{children:"void"}),", ",(0,r.jsx)(n.code,{children:"void"}),">>"]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L99",children:"src/handler/plugins/plugin.ts:99"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.code,{children:"Optional"})," ",(0,r.jsx)(n.strong,{children:"name"}),": ",(0,r.jsx)(n.code,{children:"string"})]}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,r.jsx)(n.p,{children:"will be removed in the next update"}),"\n",(0,r.jsx)(n.h4,{id:"inherited-from-1",children:"Inherited from"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#name",children:"name"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L31",children:"src/handler/plugins/plugin.ts:31"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"type"}),": ",(0,r.jsx)(n.a,{href:"/docs/api/enums/PluginType#event",children:(0,r.jsx)(n.code,{children:"Event"})})]}),"\n",(0,r.jsx)(n.h4,{id:"overrides",children:"Overrides"}),"\n",(0,r.jsxs)(n.p,{children:[(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"}),".",(0,r.jsx)(n.a,{href:"/docs/api/interfaces/Plugin#type",children:"type"})]}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/3daacfc/src/handler/plugins/plugin.ts#L98",children:"src/handler/plugins/plugin.ts:98"})})]})}function o(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>t});var r=i(6540);const l={},d=r.createContext(l);function s(e){const n=r.useContext(d);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:s(e.components),r.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/ccc49370.93ff3c1b.js b/assets/js/ccc49370.93ff3c1b.js deleted file mode 100644 index c942da6a0..000000000 --- a/assets/js/ccc49370.93ff3c1b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3249],{4029:(e,n,t)=>{t.r(n),t.d(n,{default:()=>p});t(6540);var i=t(53),s=t(9024),a=t(7559),r=t(7131),o=t(6535),l=t(8258),c=t(1312),d=t(9022),u=t(4848);function m(e){const{nextItem:n,prevItem:t}=e;return(0,u.jsxs)("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,c.T)({id:"theme.blog.post.paginator.navAriaLabel",message:"Blog post page navigation",description:"The ARIA label for the blog posts pagination"}),children:[t&&(0,u.jsx)(d.A,{...t,subLabel:(0,u.jsx)(c.A,{id:"theme.blog.post.paginator.newerPost",description:"The blog post button label to navigate to the newer/previous post",children:"Newer Post"})}),n&&(0,u.jsx)(d.A,{...n,subLabel:(0,u.jsx)(c.A,{id:"theme.blog.post.paginator.olderPost",description:"The blog post button label to navigate to the older/next post",children:"Older Post"}),isNext:!0})]})}function g(){const{assets:e,metadata:n}=(0,r.e)(),{title:t,description:i,date:a,tags:o,authors:l,frontMatter:c}=n,{keywords:d}=c,m=e.image??c.image;return(0,u.jsxs)(s.be,{title:t,description:i,keywords:d,image:m,children:[(0,u.jsx)("meta",{property:"og:type",content:"article"}),(0,u.jsx)("meta",{property:"article:published_time",content:a}),l.some((e=>e.url))&&(0,u.jsx)("meta",{property:"article:author",content:l.map((e=>e.url)).filter(Boolean).join(",")}),o.length>0&&(0,u.jsx)("meta",{property:"article:tag",content:o.map((e=>e.label)).join(",")})]})}var h=t(7763),f=t(996);function v(e){let{sidebar:n,children:t}=e;const{metadata:i,toc:s}=(0,r.e)(),{nextItem:a,prevItem:c,frontMatter:d,unlisted:g}=i,{hide_table_of_contents:v,toc_min_heading_level:p,toc_max_heading_level:x}=d;return(0,u.jsxs)(o.A,{sidebar:n,toc:!v&&s.length>0?(0,u.jsx)(h.A,{toc:s,minHeadingLevel:p,maxHeadingLevel:x}):void 0,children:[g&&(0,u.jsx)(f.A,{}),(0,u.jsx)(l.A,{children:t}),(a||c)&&(0,u.jsx)(m,{nextItem:a,prevItem:c})]})}function p(e){const n=e.content;return(0,u.jsx)(r.i,{content:e.content,isBlogPostPage:!0,children:(0,u.jsxs)(s.e3,{className:(0,i.A)(a.G.wrapper.blogPages,a.G.page.blogPostPage),children:[(0,u.jsx)(g,{}),(0,u.jsx)(v,{sidebar:e.sidebar,children:(0,u.jsx)(n,{})})]})})}},7763:(e,n,t)=>{t.d(n,{A:()=>c});t(6540);var i=t(53),s=t(5195);const a={tableOfContents:"tableOfContents_bqdL",docItemContainer:"docItemContainer_F8PC"};var r=t(4848);const o="table-of-contents__link toc-highlight",l="table-of-contents__link--active";function c(e){let{className:n,...t}=e;return(0,r.jsx)("div",{className:(0,i.A)(a.tableOfContents,"thin-scrollbar",n),children:(0,r.jsx)(s.A,{...t,linkClassName:o,linkActiveClassName:l})})}},5195:(e,n,t)=>{t.d(n,{A:()=>f});var i=t(6540),s=t(6342);function a(e){const n=e.map((e=>({...e,parentIndex:-1,children:[]}))),t=Array(7).fill(-1);n.forEach(((e,n)=>{const i=t.slice(2,e.level);e.parentIndex=Math.max(...i),t[e.level]=n}));const i=[];return n.forEach((e=>{const{parentIndex:t,...s}=e;t>=0?n[t].children.push(s):i.push(s)})),i}function r(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:i}=e;return n.flatMap((e=>{const n=r({toc:e.children,minHeadingLevel:t,maxHeadingLevel:i});return function(e){return e.level>=t&&e.level<=i}(e)?[{...e,children:n}]:n}))}function o(e){const n=e.getBoundingClientRect();return n.top===n.bottom?o(e.parentNode):n}function l(e,n){let{anchorTopOffset:t}=n;const i=e.find((e=>o(e).top>=t));if(i){return function(e){return e.top>0&&e.bottom<window.innerHeight/2}(o(i))?i:e[e.indexOf(i)-1]??null}return e[e.length-1]??null}function c(){const e=(0,i.useRef)(0),{navbar:{hideOnScroll:n}}=(0,s.p)();return(0,i.useEffect)((()=>{e.current=n?0:document.querySelector(".navbar").clientHeight}),[n]),e}function d(e){const n=(0,i.useRef)(void 0),t=c();(0,i.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:i,linkActiveClassName:s,minHeadingLevel:a,maxHeadingLevel:r}=e;function o(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(i),o=function(e){let{minHeadingLevel:n,maxHeadingLevel:t}=e;const i=[];for(let s=n;s<=t;s+=1)i.push(`h${s}.anchor`);return Array.from(document.querySelectorAll(i.join()))}({minHeadingLevel:a,maxHeadingLevel:r}),c=l(o,{anchorTopOffset:t.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,t){t?(n.current&&n.current!==e&&n.current.classList.remove(s),e.classList.add(s),n.current=e):e.classList.remove(s)}(e,e===d)}))}return document.addEventListener("scroll",o),document.addEventListener("resize",o),o(),()=>{document.removeEventListener("scroll",o),document.removeEventListener("resize",o)}}),[e,t])}var u=t(5489),m=t(4848);function g(e){let{toc:n,className:t,linkClassName:i,isChild:s}=e;return n.length?(0,m.jsx)("ul",{className:s?void 0:t,children:n.map((e=>(0,m.jsxs)("li",{children:[(0,m.jsx)(u.A,{to:`#${e.id}`,className:i??void 0,dangerouslySetInnerHTML:{__html:e.value}}),(0,m.jsx)(g,{isChild:!0,toc:e.children,className:t,linkClassName:i})]},e.id)))}):null}const h=i.memo(g);function f(e){let{toc:n,className:t="table-of-contents table-of-contents__left-border",linkClassName:o="table-of-contents__link",linkActiveClassName:l,minHeadingLevel:c,maxHeadingLevel:u,...g}=e;const f=(0,s.p)(),v=c??f.tableOfContents.minHeadingLevel,p=u??f.tableOfContents.maxHeadingLevel,x=function(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:s}=e;return(0,i.useMemo)((()=>r({toc:a(n),minHeadingLevel:t,maxHeadingLevel:s})),[n,t,s])}({toc:n,minHeadingLevel:v,maxHeadingLevel:p});return d((0,i.useMemo)((()=>{if(o&&l)return{linkClassName:o,linkActiveClassName:l,minHeadingLevel:v,maxHeadingLevel:p}}),[o,l,v,p])),(0,m.jsx)(h,{toc:x,className:t,linkClassName:o,...g})}},996:(e,n,t)=>{t.d(n,{A:()=>g});t(6540);var i=t(53),s=t(1312),a=t(5260),r=t(4848);function o(){return(0,r.jsx)(s.A,{id:"theme.unlistedContent.title",description:"The unlisted content banner title",children:"Unlisted page"})}function l(){return(0,r.jsx)(s.A,{id:"theme.unlistedContent.message",description:"The unlisted content banner message",children:"This page is unlisted. Search engines will not index it, and only users having a direct link can access it."})}function c(){return(0,r.jsx)(a.A,{children:(0,r.jsx)("meta",{name:"robots",content:"noindex, nofollow"})})}var d=t(7559),u=t(7293);function m(e){let{className:n}=e;return(0,r.jsx)(u.A,{type:"caution",title:(0,r.jsx)(o,{}),className:(0,i.A)(n,d.G.common.unlistedBanner),children:(0,r.jsx)(l,{})})}function g(e){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(c,{}),(0,r.jsx)(m,{...e})]})}},4428:(e,n,t)=>{t.d(n,{A:()=>l});var i=t(6540),s=t(2303),a=t(6846),r=t(3717),o=t(4848);function l(e){let{children:n,...t}=e;const l=(0,s.A)(),c=function(e){return i.Children.toArray(e).some((e=>(0,i.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(n),d="string"==typeof c?r.A:a.A;return(0,o.jsx)(d,{...t,children:c},String(l))}}}]); \ No newline at end of file diff --git a/assets/js/cf183316.3eea489e.js b/assets/js/cf183316.3eea489e.js deleted file mode 100644 index 5e8a90c4c..000000000 --- a/assets/js/cf183316.3eea489e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[152],{6137:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>h,frontMatter:()=>i,metadata:()=>c,toc:()=>l});var r=n(4848),s=n(8453);const i={sidebar_position:8},o="The SernEmitter class",c={id:"guide/walkthrough/sern-emitter",title:"The SernEmitter class",description:"You're shipped with the SernEmitter. This EventEmitter listens to",source:"@site/docs/guide/walkthrough/sern-emitter.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/sern-emitter",permalink:"/docs/guide/walkthrough/sern-emitter",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/sern-emitter.md",tags:[],version:"current",sidebarPosition:8,frontMatter:{sidebar_position:8},sidebar:"tutorialSidebar",previous:{title:"Dependency Injection",permalink:"/docs/guide/walkthrough/dependency-injection"},next:{title:"Conclusion",permalink:"/docs/guide/walkthrough/conclusion"}},d={},l=[];function a(e){const t={a:"a",br:"br",code:"code",h1:"h1",li:"li",p:"p",ul:"ul",...(0,s.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"the-sernemitter-class",children:"The SernEmitter class"}),"\n",(0,r.jsx)(t.p,{children:"You're shipped with the SernEmitter. This EventEmitter listens to"}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["command modules executing and its status, the ",(0,r.jsx)(t.code,{children:"module.activate"})," event"]}),"\n",(0,r.jsxs)(t.li,{children:["command modules registered and its status, the ",(0,r.jsx)(t.code,{children:"module.register"})," event"]}),"\n",(0,r.jsx)(t.li,{children:"On default, sern creates a single SernEmitter for your bot process."}),"\n",(0,r.jsxs)(t.li,{children:["any error that occurs, the ",(0,r.jsx)(t.code,{children:"error"})," event"]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.code,{children:"warn"})," events, where it is possible to throw errors"]}),"\n"]}),"\n",(0,r.jsxs)(t.p,{children:["You can put these and other event listeners into ",(0,r.jsx)(t.a,{href:"/docs/guide/walkthrough/first-event",children:"event modules"}),"!\n",(0,r.jsx)(t.br,{}),"View all ",(0,r.jsx)(t.a,{href:"https://sern.dev/docs/api/modules#serneventsmapping",children:"events"})]})]})}function h(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(a,{...e})}):a(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>c});var r=n(6540);const s={},i=r.createContext(s);function o(e){const t=r.useContext(i);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),r.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/cfb1619e.f2ad3e8a.js b/assets/js/cfb1619e.f2ad3e8a.js deleted file mode 100644 index b43b5276e..000000000 --- a/assets/js/cfb1619e.f2ad3e8a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6570],{2800:e=>{e.exports=JSON.parse('{"permalink":"/blog/tags/guides","page":1,"postsPerPage":10,"totalPages":1,"totalCount":2,"blogDescription":"Blog","blogTitle":"Blog"}')}}]); \ No newline at end of file diff --git a/assets/js/d9ea5336.cd1b3e0a.js b/assets/js/d9ea5336.cd1b3e0a.js deleted file mode 100644 index 601fb4f34..000000000 --- a/assets/js/d9ea5336.cd1b3e0a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2427],{2503:(e,n,l)=>{l.r(n),l.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>o,frontMatter:()=>d,metadata:()=>s,toc:()=>a});var i=l(4848),r=l(8453);const d={id:"Logging",title:"Interface: Logging<T>",sidebar_label:"Logging",sidebar_position:0,custom_edit_url:null},t=void 0,s={id:"api/interfaces/Logging",title:"Interface: Logging<T>",description:"Since",source:"@site/docs/api/interfaces/Logging.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Logging",permalink:"/docs/api/interfaces/Logging",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Logging",title:"Interface: Logging<T>",sidebar_label:"Logging",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"InitPlugin",permalink:"/docs/api/interfaces/InitPlugin"},next:{title:"MentionableSelectCommand",permalink:"/docs/api/interfaces/MentionableSelectCommand"}},c={},a=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Implemented by",id:"implemented-by",level:2},{value:"Methods",id:"methods",level:2},{value:"debug",id:"debug",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"error",id:"error",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Defined in",id:"defined-in-1",level:4},{value:"info",id:"info",level:3},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"warning",id:"warning",level:3},{value:"Parameters",id:"parameters-3",level:4},{value:"Returns",id:"returns-3",level:4},{value:"Defined in",id:"defined-in-3",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"Since"})})}),"\n",(0,i.jsx)(n.p,{children:"2.0.0"}),"\n",(0,i.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"T"})}),(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"unknown"})})]})})]}),"\n",(0,i.jsx)(n.h2,{id:"implemented-by",children:"Implemented by"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"/docs/api/classes/DefaultLogging",children:(0,i.jsx)(n.code,{children:"DefaultLogging"})})}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,i.jsx)(n.h3,{id:"debug",children:"debug"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"debug"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})}),"<",(0,i.jsx)(n.code,{children:"T"}),">"]})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/logging.ts#L8",children:"src/core/contracts/logging.ts:8"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"error",children:"error"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"error"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})}),"<",(0,i.jsx)(n.code,{children:"T"}),">"]})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/logging.ts#L5",children:"src/core/contracts/logging.ts:5"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"info",children:"info"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"info"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})}),"<",(0,i.jsx)(n.code,{children:"T"}),">"]})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/logging.ts#L7",children:"src/core/contracts/logging.ts:7"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"warning",children:"warning"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 ",(0,i.jsx)(n.strong,{children:"warning"}),"(",(0,i.jsx)(n.code,{children:"payload"}),"): ",(0,i.jsx)(n.code,{children:"void"})]}),"\n",(0,i.jsx)(n.h4,{id:"parameters-3",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,i.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,i.jsx)(n.tbody,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{style:{textAlign:"left"},children:(0,i.jsx)(n.code,{children:"payload"})}),(0,i.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,i.jsx)(n.a,{href:"/docs/api/modules#logpayload",children:(0,i.jsx)(n.code,{children:"LogPayload"})}),"<",(0,i.jsx)(n.code,{children:"T"}),">"]})]})})]}),"\n",(0,i.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.code,{children:"void"})}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/logging.ts#L6",children:"src/core/contracts/logging.ts:6"})})]})}function o(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,n,l)=>{l.d(n,{R:()=>t,x:()=>s});var i=l(6540);const r={},d=i.createContext(r);function t(e){const n=i.useContext(d);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:t(e.components),i.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e04ffa77.29f778fe.js b/assets/js/e04ffa77.29f778fe.js deleted file mode 100644 index 1ea372c54..000000000 --- a/assets/js/e04ffa77.29f778fe.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3787],{6575:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>s,default:()=>h,frontMatter:()=>d,metadata:()=>l,toc:()=>o});var t=i(4848),r=i(8453);const d={id:"DependencyConfiguration",title:"Interface: DependencyConfiguration<T>",sidebar_label:"DependencyConfiguration",sidebar_position:0,custom_edit_url:null},s=void 0,l={id:"api/interfaces/DependencyConfiguration",title:"Interface: DependencyConfiguration<T>",description:"Type parameters",source:"@site/docs/api/interfaces/DependencyConfiguration.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/DependencyConfiguration",permalink:"/docs/api/interfaces/DependencyConfiguration",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DependencyConfiguration",title:"Interface: DependencyConfiguration<T>",sidebar_label:"DependencyConfiguration",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Dependencies",permalink:"/docs/api/interfaces/Dependencies"},next:{title:"DiscordEmitterPlugin",permalink:"/docs/api/interfaces/DiscordEmitterPlugin"}},c={},o=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"build",id:"build",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in",level:4},{value:"exclude",id:"exclude",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,r.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"T"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Dependencies",children:(0,t.jsx)(n.code,{children:"Dependencies"})})]})]})})]}),"\n",(0,t.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,t.jsx)(n.h3,{id:"build",children:"build"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.strong,{children:"build"}),": (",(0,t.jsx)(n.code,{children:"root"}),": ",(0,t.jsx)(n.code,{children:"Container"}),"<",(0,t.jsx)(n.code,{children:"Omit"}),"<",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Dependencies",children:(0,t.jsx)(n.code,{children:"Dependencies"})}),", ",(0,t.jsx)(n.code,{children:'"@sern/client"'}),">, {}>) => ",(0,t.jsx)(n.code,{children:"Container"}),"<",(0,t.jsx)(n.code,{children:"T"}),", {}>"]}),"\n",(0,t.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,t.jsxs)(n.p,{children:["\u25b8 (",(0,t.jsx)(n.code,{children:"root"}),"): ",(0,t.jsx)(n.code,{children:"Container"}),"<",(0,t.jsx)(n.code,{children:"T"}),", {}>"]}),"\n",(0,t.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,t.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,t.jsx)(n.tbody,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{style:{textAlign:"left"},children:(0,t.jsx)(n.code,{children:"root"})}),(0,t.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,t.jsx)(n.code,{children:"Container"}),"<",(0,t.jsx)(n.code,{children:"Omit"}),"<",(0,t.jsx)(n.a,{href:"/docs/api/interfaces/Dependencies",children:(0,t.jsx)(n.code,{children:"Dependencies"})}),", ",(0,t.jsx)(n.code,{children:'"@sern/client"'}),">, {}>"]})]})})]}),"\n",(0,t.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,t.jsxs)(n.p,{children:[(0,t.jsx)(n.code,{children:"Container"}),"<",(0,t.jsx)(n.code,{children:"T"}),", {}>"]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L68",children:"src/types/handler.ts:68"})}),"\n",(0,t.jsx)(n.hr,{}),"\n",(0,t.jsx)(n.h3,{id:"exclude",children:"exclude"}),"\n",(0,t.jsxs)(n.p,{children:["\u2022 ",(0,t.jsx)(n.code,{children:"Optional"})," ",(0,t.jsx)(n.strong,{children:"exclude"}),": ",(0,t.jsx)(n.code,{children:"Set"}),"<",(0,t.jsx)(n.code,{children:'"@sern/logger"'}),">"]}),"\n",(0,t.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,t.jsx)(n.p,{children:(0,t.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/handler.ts#L67",children:"src/types/handler.ts:67"})})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>s,x:()=>l});var t=i(6540);const r={},d=t.createContext(r);function s(e){const n=t.useContext(d);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function l(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),t.createElement(d.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e2a53654.3ec46d07.js b/assets/js/e2a53654.3ec46d07.js deleted file mode 100644 index 5cbdaaecd..000000000 --- a/assets/js/e2a53654.3ec46d07.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1292],{3500:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>t,toc:()=>o});var d=i(4848),s=i(8453);const r={id:"CommandPlugin",title:"Interface: CommandPlugin<T>",sidebar_label:"CommandPlugin",sidebar_position:0,custom_edit_url:null},l=void 0,t={id:"api/interfaces/CommandPlugin",title:"Interface: CommandPlugin<T>",description:"Deprecated",source:"@site/docs/api/interfaces/CommandPlugin.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/CommandPlugin",permalink:"/docs/api/interfaces/CommandPlugin",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CommandPlugin",title:"Interface: CommandPlugin<T>",sidebar_label:"CommandPlugin",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CommandModuleDefs",permalink:"/docs/api/interfaces/CommandModuleDefs"},next:{title:"ContextMenuMsg",permalink:"/docs/api/interfaces/ContextMenuMsg"}},c={},o=[{value:"Type parameters",id:"type-parameters",level:2},{value:"Properties",id:"properties",level:2},{value:"description",id:"description",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"execute",id:"execute",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Parameters",id:"parameters",level:5},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-1",level:4},{value:"name",id:"name",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"type",id:"type",level:3},{value:"Defined in",id:"defined-in-3",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,d.jsx)(n.p,{children:"Use the newer helper functions and import { controller } from '@sern/handler'"}),"\n",(0,d.jsx)(n.h2,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})," = ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"description",children:"description"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"description"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L51",children:"src/types/plugin.ts:51"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"execute",children:"execute"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"execute"}),": (",(0,d.jsx)(n.code,{children:"m"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitArgs",children:(0,d.jsx)(n.code,{children:"InitArgs"})}),"<",(0,d.jsx)(n.a,{href:"/docs/api/modules#processed",children:(0,d.jsx)(n.code,{children:"Processed"})}),"<",(0,d.jsx)(n.a,{href:"../modules.md#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})}),">>, ",(0,d.jsx)(n.code,{children:"controller?"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#deprecated",children:(0,d.jsx)(n.code,{children:"Deprecated"})}),"<",(0,d.jsx)(n.code,{children:'"Please import controller instead"'}),">) => ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (",(0,d.jsx)(n.code,{children:"m"}),", ",(0,d.jsx)(n.code,{children:"controller?"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]}),"\n",(0,d.jsx)(n.h5,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"m"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitArgs",children:(0,d.jsx)(n.code,{children:"InitArgs"})}),"<",(0,d.jsx)(n.a,{href:"/docs/api/modules#processed",children:(0,d.jsx)(n.code,{children:"Processed"})}),"<",(0,d.jsx)(n.a,{href:"../modules.md#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})}),">>"]})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"controller?"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.a,{href:"/docs/api/modules#deprecated",children:(0,d.jsx)(n.code,{children:"Deprecated"})}),"<",(0,d.jsx)(n.code,{children:'"Please import controller instead"'}),">"]})]})]})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L53",children:"src/types/plugin.ts:53"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"name",children:"name"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Optional"})," ",(0,d.jsx)(n.strong,{children:"name"}),": ",(0,d.jsx)(n.code,{children:"string"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L50",children:"src/types/plugin.ts:50"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"type",children:"type"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType#init",children:(0,d.jsx)(n.code,{children:"Init"})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/c1f6906/src/types/plugin.ts#L52",children:"src/types/plugin.ts:52"})})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(a,{...e})}):a(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>t});var d=i(6540);const s={},r=d.createContext(s);function l(e){const n=d.useContext(r);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function t(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),d.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e4877132.0ff6f575.js b/assets/js/e4877132.0ff6f575.js deleted file mode 100644 index dfa94d5b2..000000000 --- a/assets/js/e4877132.0ff6f575.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1196],{6617:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>d,contentTitle:()=>l,default:()=>a,frontMatter:()=>s,metadata:()=>o,toc:()=>c});var r=i(4848),t=i(8453);const s={id:"PluginType",title:"Enumeration: PluginType",sidebar_label:"PluginType",sidebar_position:0,custom_edit_url:null},l=void 0,o={id:"api/enums/PluginType",title:"Enumeration: PluginType",description:"A bitfield that discriminates plugins",source:"@site/docs/api/enums/PluginType.md",sourceDirName:"api/enums",slug:"/api/enums/PluginType",permalink:"/docs/api/enums/PluginType",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"PluginType",title:"Enumeration: PluginType",sidebar_label:"PluginType",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"PayloadType",permalink:"/docs/api/enums/PayloadType"},next:{title:"SernError",permalink:"/docs/api/enums/SernError"}},d={},c=[{value:"Enumeration Members",id:"enumeration-members",level:2},{value:"Control",id:"control",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"Init",id:"init",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function u(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",pre:"pre",strong:"strong",...(0,t.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.p,{children:"A bitfield that discriminates plugins"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.strong,{children:(0,r.jsx)(n.code,{children:"Example"})})}),"\n",(0,r.jsx)(n.pre,{children:(0,r.jsx)(n.code,{className:"language-ts",children:"export default function myPlugin() : EventPlugin<CommandType.Text> {\n //highlight-next-line\n type : PluginType.Event,\n execute([ctx, args], controller) {\n return controller.next();\n }\n}\n"})}),"\n",(0,r.jsx)(n.h2,{id:"enumeration-members",children:"Enumeration Members"}),"\n",(0,r.jsx)(n.h3,{id:"control",children:"Control"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Control"})," = ",(0,r.jsx)(n.code,{children:"2"})]}),"\n",(0,r.jsx)(n.p,{children:"The PluginType for EventPlugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L85",children:"src/core/structures/enums.ts:85"})}),"\n",(0,r.jsx)(n.hr,{}),"\n",(0,r.jsx)(n.h3,{id:"init",children:"Init"}),"\n",(0,r.jsxs)(n.p,{children:["\u2022 ",(0,r.jsx)(n.strong,{children:"Init"})," = ",(0,r.jsx)(n.code,{children:"1"})]}),"\n",(0,r.jsx)(n.p,{children:"The PluginType for InitPlugins"}),"\n",(0,r.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,r.jsx)(n.p,{children:(0,r.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/enums.ts#L81",children:"src/core/structures/enums.ts:81"})})]})}function a(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,r.jsx)(n,{...e,children:(0,r.jsx)(u,{...e})}):u(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>o});var r=i(6540);const t={},s=r.createContext(t);function l(e){const n=r.useContext(s);return r.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),r.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e84a24a4.6f29891b.js b/assets/js/e84a24a4.6f29891b.js deleted file mode 100644 index 85c3f290d..000000000 --- a/assets/js/e84a24a4.6f29891b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[1884],{3521:(e,s,n)=>{n.r(s),n.d(s,{assets:()=>c,contentTitle:()=>o,default:()=>p,frontMatter:()=>r,metadata:()=>a,toc:()=>d});var t=n(4848),i=n(8453);const r={id:"Disposable",title:"Interface: Disposable",sidebar_label:"Disposable",sidebar_position:0,custom_edit_url:null},o=void 0,a={id:"api/interfaces/Disposable",title:"Interface: Disposable",description:"Represents a Disposable contract.",source:"@site/docs/api/interfaces/Disposable.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Disposable",permalink:"/docs/api/interfaces/Disposable",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Disposable",title:"Interface: Disposable",sidebar_label:"Disposable",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DiscordEventPlugin",permalink:"/docs/api/interfaces/DiscordEventPlugin"},next:{title:"Emitter",permalink:"/docs/api/interfaces/Emitter"}},c={},d=[{value:"Methods",id:"methods",level:2},{value:"dispose",id:"dispose",level:3},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4}];function l(e){const s={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",p:"p",strong:"strong",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.p,{children:"Represents a Disposable contract.\nLet dependencies implement this to dispose and cleanup."}),"\n",(0,t.jsx)(s.h2,{id:"methods",children:"Methods"}),"\n",(0,t.jsx)(s.h3,{id:"dispose",children:"dispose"}),"\n",(0,t.jsxs)(s.p,{children:["\u25b8 ",(0,t.jsx)(s.strong,{children:"dispose"}),"(): ",(0,t.jsx)(s.code,{children:"unknown"})]}),"\n",(0,t.jsx)(s.h4,{id:"returns",children:"Returns"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.code,{children:"unknown"})}),"\n",(0,t.jsx)(s.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,t.jsx)(s.p,{children:(0,t.jsx)(s.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/hooks.ts#L15",children:"src/core/contracts/hooks.ts:15"})})]})}function p(e={}){const{wrapper:s}={...(0,i.R)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(l,{...e})}):l(e)}},8453:(e,s,n)=>{n.d(s,{R:()=>o,x:()=>a});var t=n(6540);const i={},r=t.createContext(i);function o(e){const s=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function a(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),t.createElement(r.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e8e3d8c7.0fa3bc4f.js b/assets/js/e8e3d8c7.0fa3bc4f.js deleted file mode 100644 index 941b589d1..000000000 --- a/assets/js/e8e3d8c7.0fa3bc4f.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[6526],{79:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>a,default:()=>u,frontMatter:()=>r,metadata:()=>o,toc:()=>d});var s=t(4848),i=t(8453);const r={sidebar_position:5},a="First Event Module",o={id:"guide/walkthrough/first-event",title:"First Event Module",description:"We will dissect a basic event module.",source:"@site/docs/guide/walkthrough/first-event.md",sourceDirName:"guide/walkthrough",slug:"/guide/walkthrough/first-event",permalink:"/docs/guide/walkthrough/first-event",draft:!1,unlisted:!1,editUrl:"https://github.com/sern-handler/website/edit/main/docs/guide/walkthrough/first-event.md",tags:[],version:"current",sidebarPosition:5,frontMatter:{sidebar_position:5},sidebar:"tutorialSidebar",previous:{title:"First Command",permalink:"/docs/guide/walkthrough/first-command"},next:{title:"Plugins",permalink:"/docs/guide/walkthrough/plugins"}},l={},d=[{value:"External",id:"external",level:2}];function c(e){const n={a:"a",admonition:"admonition",br:"br",code:"code",h1:"h1",h2:"h2",p:"p",pre:"pre",tabitem:"tabitem",tabs:"tabs",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"first-event-module",children:"First Event Module"}),"\n",(0,s.jsxs)(n.p,{children:["We will dissect a basic event module. ",(0,s.jsx)(n.br,{})]}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsx)(n.p,{children:"TLDR: event modules are event listeners. there are three types EventType.Discord, EventType.Sern, EventType.External"})}),"\n",(0,s.jsx)(n.p,{children:"import Tabs from '@theme/Tabs';\nimport TabItem from '@theme/TabItem';"}),"\n",(0,s.jsxs)(n.tabs,{children:["\n",(0,s.jsxs)(n.tabitem,{value:"js",label:"JavaScript",children:["\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-javascript",children:"exports.default = eventModule({\n type: EventType.Sern,\n plugins : [], \n name: 'module.activate',\n execute(event) {\n console.log(event); \n }\n})\n"})}),"\n"]}),"\n",(0,s.jsxs)(n.tabitem,{value:"ts",label:"Typescript",children:["\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-typescript",children:"export default eventModule({\n type: EventType.Sern,\n plugins : [],\n name: 'module.activate', //name of event.\n execute(event) {\n console.log(event); \n }\n})\n"})}),"\n"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Like command modules, the ",(0,s.jsx)(n.code,{children:"type"})," property denotes what kind of event it is, which\ncan be found ",(0,s.jsx)(n.a,{href:"https://sern.dev/docs/api/enums/EventType",children:"here"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:["To view what each of these properties mean in depth, visit the ",(0,s.jsx)(n.a,{href:"https://sern.dev/docs/api/enums/EventType",children:"official documentation"}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"external",children:"External"}),"\n",(0,s.jsx)(n.p,{children:"In version 2 & 3, any dependency that you have passed into makeDependencies can be registered here as well."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",metastring:'title="src/index.ts"',children:"await makeDependencies({ \n build: root => root.add({\n eventlistener: single(() => new EventEmitter())\n })\n})\n"})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-ts",metastring:'title="events/myevent.ts"',children:"export default eventModule({ \n type: EventType.External, \n emitter: 'eventlistener',\n execute: (args) => {\n console.log('Got event from eventlistener: ', args); \n }\n\n})\n\n"})})]})}function u(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>a,x:()=>o});var s=t(6540);const i={},r=s.createContext(i);function a(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:a(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/edc18331.76541685.js b/assets/js/edc18331.76541685.js deleted file mode 100644 index 858c55245..000000000 --- a/assets/js/edc18331.76541685.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[3595],{7411:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>t,contentTitle:()=>o,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>d});var i=s(4848),l=s(8453);const r={slug:"2.5.0",title:"Release 2.5.0",authors:["jacoobes"],tags:["release"]},o=void 0,a={permalink:"/blog/2.5.0",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2023-01-12-mdx-blog-post.md",source:"@site/blog/2023-01-12-mdx-blog-post.md",title:"Release 2.5.0",description:"2.5 Release",date:"2023-01-12T00:00:00.000Z",formattedDate:"January 12, 2023",tags:[{label:"release",permalink:"/blog/tags/release"}],readingTime:.895,hasTruncateMarker:!1,authors:[{name:"jacoobes",title:"Head Dev",url:"https://github.com/jacoobes",imageURL:"https://github.com/jacoobes.png",key:"jacoobes"}],frontMatter:{slug:"2.5.0",title:"Release 2.5.0",authors:["jacoobes"],tags:["release"]},unlisted:!1,prevItem:{title:"Release 3.0.0",permalink:"/blog/3.0.0"},nextItem:{title:"Release 2.0.0",permalink:"/blog/2.0.0"}},t={authorsImageUrls:[void 0]},d=[{value:"2.5 Release",id:"25-release",level:2},{value:"Join our discord <br />",id:"join-our-discord-",level:3},{value:"Breaking changes",id:"breaking-changes",level:3},{value:"Deprecations",id:"deprecations",level:3},{value:"Reason",id:"reason",level:3}];function c(e){const n={a:"a",br:"br",code:"code",h2:"h2",h3:"h3",li:"li",strong:"strong",ul:"ul",...(0,l.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"25-release",children:"2.5 Release"}),"\n",(0,i.jsxs)(n.h3,{id:"join-our-discord-",children:["Join our ",(0,i.jsx)(n.a,{href:"https://sern.dev/discord",children:"discord"})," ",(0,i.jsx)(n.br,{})]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Thank you for using sern in your projects. It's only going to get better!"}),"\n",(0,i.jsxs)(n.li,{children:["I apologize for the sudden small breaking change. After this update, there won't be any for a while.\nWow! We're increasing our semantic versioning by ",(0,i.jsx)(n.code,{children:"+0.3.9"})," ",(0,i.jsx)(n.br,{}),"\nWhat does this mean?"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"breaking-changes",children:"Breaking changes"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api/modules#controller",children:"controller"})," parameter for plugins has been removed\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"You'll need to import it instead"}),"\n",(0,i.jsxs)(n.li,{children:["This ",(0,i.jsx)(n.strong,{children:"breaks"})," old ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/CommandPlugin",children:"CommandPlugin"}),", but ",(0,i.jsx)(n.strong,{children:"not"})," old ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/EventPlugin",children:"EventPlugin"})]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"deprecations",children:"Deprecations"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api/interfaces/CommandPlugin",children:"CommandPlugin"})," and ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/EventPlugin",children:"EventPlugin"})," have been renamed ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/InitPlugin",children:"InitPlugin"})," and ",(0,i.jsx)(n.a,{href:"../docs/api/interfaces/ControlPlugin",children:"ControlPlugin"})]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"reason",children:"Reason"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more."}),"\n",(0,i.jsxs)(n.li,{children:["I realize that this affects all plugins. I have updated all ",(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/awesome-plugins/pull/68",children:"plugins"})," to match these changes"]}),"\n",(0,i.jsxs)(n.li,{children:["The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#commandcontrolplugin",children:"CommandControlPlugin"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#commandinitplugin",children:"CommandInitPlugin"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#eventcontrolplugin",children:"EventControlPlugin"})}),"\n",(0,i.jsx)(n.li,{children:(0,i.jsx)(n.a,{href:"../docs/api/modules#eventinitplugin",children:"EventInitPlugin"})}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"../docs/api/modules#discordeventcontrolplugin",children:"DiscordEventControlPlugin"}),"\nThis will probably be the last breaking change in a while. Thanks for using sern!"]}),"\n"]}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>o,x:()=>a});var i=s(6540);const l={},r=i.createContext(l);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/eea0bf40.eb28a29e.js b/assets/js/eea0bf40.eb28a29e.js deleted file mode 100644 index f81b7d770..000000000 --- a/assets/js/eea0bf40.eb28a29e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[198],{224:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>o,contentTitle:()=>l,default:()=>h,frontMatter:()=>s,metadata:()=>d,toc:()=>c});var i=r(4848),t=r(8453);const s={id:"Controller",title:"Interface: Controller",sidebar_label:"Controller",sidebar_position:0,custom_edit_url:null},l=void 0,d={id:"api/interfaces/Controller",title:"Interface: Controller",description:"Properties",source:"@site/docs/api/interfaces/Controller.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/Controller",permalink:"/docs/api/interfaces/Controller",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"Controller",title:"Interface: Controller",sidebar_label:"Controller",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"ControlPlugin",permalink:"/docs/api/interfaces/ControlPlugin"},next:{title:"CoreDependencies",permalink:"/docs/api/interfaces/CoreDependencies"}},o={},c=[{value:"Properties",id:"properties",level:2},{value:"next",id:"next",level:3},{value:"Type declaration",id:"type-declaration",level:4},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in",level:4},{value:"stop",id:"stop",level:3},{value:"Type declaration",id:"type-declaration-1",level:4},{value:"Returns",id:"returns-1",level:5},{value:"Defined in",id:"defined-in-1",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",p:"p",strong:"strong",...(0,t.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,i.jsx)(n.h3,{id:"next",children:"next"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"next"}),": () => ",(0,i.jsx)(n.code,{children:"Ok"}),"<",(0,i.jsx)(n.code,{children:"void"}),">"]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.code,{children:"Ok"}),"<",(0,i.jsx)(n.code,{children:"void"}),">"]}),"\n",(0,i.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"Ok"}),"<",(0,i.jsx)(n.code,{children:"void"}),">"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L59",children:"src/types/core-plugin.ts:59"})}),"\n",(0,i.jsx)(n.hr,{}),"\n",(0,i.jsx)(n.h3,{id:"stop",children:"stop"}),"\n",(0,i.jsxs)(n.p,{children:["\u2022 ",(0,i.jsx)(n.strong,{children:"stop"}),": () => ",(0,i.jsx)(n.code,{children:"Err"}),"<",(0,i.jsx)(n.code,{children:"void"}),">"]}),"\n",(0,i.jsx)(n.h4,{id:"type-declaration-1",children:"Type declaration"}),"\n",(0,i.jsxs)(n.p,{children:["\u25b8 (): ",(0,i.jsx)(n.code,{children:"Err"}),"<",(0,i.jsx)(n.code,{children:"void"}),">"]}),"\n",(0,i.jsx)(n.h5,{id:"returns-1",children:"Returns"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"Err"}),"<",(0,i.jsx)(n.code,{children:"void"}),">"]}),"\n",(0,i.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L60",children:"src/types/core-plugin.ts:60"})})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>l,x:()=>d});var i=r(6540);const t={},s=i.createContext(t);function l(e){const n=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),i.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f0726797.b5af9164.js b/assets/js/f0726797.b5af9164.js deleted file mode 100644 index 98b275828..000000000 --- a/assets/js/f0726797.b5af9164.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[4244],{2054:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>d,default:()=>u,frontMatter:()=>s,metadata:()=>i,toc:()=>a});var n=r(4848),o=r(8453);const s={id:"CoreModuleStore",title:"Interface: CoreModuleStore",sidebar_label:"CoreModuleStore",sidebar_position:0,custom_edit_url:null},d=void 0,i={id:"api/interfaces/CoreModuleStore",title:"Interface: CoreModuleStore",description:"Represents a core module store that stores IDs mapped to file paths.",source:"@site/docs/api/interfaces/CoreModuleStore.md",sourceDirName:"api/interfaces",slug:"/api/interfaces/CoreModuleStore",permalink:"/docs/api/interfaces/CoreModuleStore",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"CoreModuleStore",title:"Interface: CoreModuleStore",sidebar_label:"CoreModuleStore",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"CoreDependencies",permalink:"/docs/api/interfaces/CoreDependencies"},next:{title:"Dependencies",permalink:"/docs/api/interfaces/Dependencies"}},c={},a=[{value:"Properties",id:"properties",level:2},{value:"commands",id:"commands",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"metadata",id:"metadata",level:3},{value:"Defined in",id:"defined-in-1",level:4}];function l(e){const t={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",p:"p",strong:"strong",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.p,{children:"Represents a core module store that stores IDs mapped to file paths."}),"\n",(0,n.jsx)(t.h2,{id:"properties",children:"Properties"}),"\n",(0,n.jsx)(t.h3,{id:"commands",children:"commands"}),"\n",(0,n.jsxs)(t.p,{children:["\u2022 ",(0,n.jsx)(t.strong,{children:"commands"}),": ",(0,n.jsx)(t.code,{children:"Map"}),"<",(0,n.jsx)(t.code,{children:"string"}),", ",(0,n.jsx)(t.code,{children:"Module"}),">"]}),"\n",(0,n.jsx)(t.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-store.ts#L7",children:"src/core/contracts/module-store.ts:7"})}),"\n",(0,n.jsx)(t.hr,{}),"\n",(0,n.jsx)(t.h3,{id:"metadata",children:"metadata"}),"\n",(0,n.jsxs)(t.p,{children:["\u2022 ",(0,n.jsx)(t.strong,{children:"metadata"}),": ",(0,n.jsx)(t.code,{children:"WeakMap"}),"<",(0,n.jsx)(t.code,{children:"Module"}),", ",(0,n.jsx)(t.code,{children:"CommandMeta"}),">"]}),"\n",(0,n.jsx)(t.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,n.jsx)(t.p,{children:(0,n.jsx)(t.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/module-store.ts#L8",children:"src/core/contracts/module-store.ts:8"})})]})}function u(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>d,x:()=>i});var n=r(6540);const o={},s=n.createContext(o);function d(e){const t=n.useContext(s);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:d(e.components),n.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f1cc380d.215be214.js b/assets/js/f1cc380d.215be214.js deleted file mode 100644 index cbfacdbdb..000000000 --- a/assets/js/f1cc380d.215be214.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[7571],{556:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>a,contentTitle:()=>t,default:()=>o,frontMatter:()=>r,metadata:()=>i,toc:()=>c});var d=s(4848),l=s(8453);const r={id:"DefaultModuleManager",title:"Class: DefaultModuleManager",sidebar_label:"DefaultModuleManager",sidebar_position:0,custom_edit_url:null},t=void 0,i={id:"api/classes/DefaultModuleManager",title:"Class: DefaultModuleManager",description:"Since",source:"@site/docs/api/classes/DefaultModuleManager.md",sourceDirName:"api/classes",slug:"/api/classes/DefaultModuleManager",permalink:"/docs/api/classes/DefaultModuleManager",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:0,frontMatter:{id:"DefaultModuleManager",title:"Class: DefaultModuleManager",sidebar_label:"DefaultModuleManager",sidebar_position:0,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"DefaultLogging",permalink:"/docs/api/classes/DefaultLogging"},next:{title:"EventExecutable",permalink:"/docs/api/classes/EventExecutable"}},a={},c=[{value:"Implements",id:"implements",level:2},{value:"Constructors",id:"constructors",level:2},{value:"constructor",id:"constructor",level:3},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns",level:4},{value:"Defined in",id:"defined-in",level:4},{value:"Properties",id:"properties",level:2},{value:"moduleStore",id:"modulestore",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"Methods",id:"methods",level:2},{value:"get",id:"get",level:3},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-1",level:4},{value:"Implementation of",id:"implementation-of",level:4},{value:"Defined in",id:"defined-in-2",level:4},{value:"getByNameCommandType",id:"getbynamecommandtype",level:3},{value:"Type parameters",id:"type-parameters",level:4},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-2",level:4},{value:"Implementation of",id:"implementation-of-1",level:4},{value:"Defined in",id:"defined-in-3",level:4},{value:"getMetadata",id:"getmetadata",level:3},{value:"Parameters",id:"parameters-3",level:4},{value:"Returns",id:"returns-3",level:4},{value:"Implementation of",id:"implementation-of-2",level:4},{value:"Defined in",id:"defined-in-4",level:4},{value:"getPublishableCommands",id:"getpublishablecommands",level:3},{value:"Returns",id:"returns-4",level:4},{value:"Implementation of",id:"implementation-of-3",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"set",id:"set",level:3},{value:"Parameters",id:"parameters-4",level:4},{value:"Returns",id:"returns-5",level:4},{value:"Implementation of",id:"implementation-of-4",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"setMetadata",id:"setmetadata",level:3},{value:"Parameters",id:"parameters-5",level:4},{value:"Returns",id:"returns-6",level:4},{value:"Implementation of",id:"implementation-of-5",level:4},{value:"Defined in",id:"defined-in-7",level:4}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",hr:"hr",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,l.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"2.0.0\nVersion 4.0.0 will internalize this api. Please refrain from using DefaultModuleManager!"}),"\n",(0,d.jsx)(n.h2,{id:"implements",children:"Implements"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:(0,d.jsx)(n.code,{children:"ModuleManager"})})}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"constructors",children:"Constructors"}),"\n",(0,d.jsx)(n.h3,{id:"constructor",children:"constructor"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.strong,{children:"new DefaultModuleManager"}),"(",(0,d.jsx)(n.code,{children:"moduleStore"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/classes/DefaultModuleManager",children:(0,d.jsx)(n.code,{children:"DefaultModuleManager"})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"moduleStore"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CoreModuleStore",children:(0,d.jsx)(n.code,{children:"CoreModuleStore"})})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"/docs/api/classes/DefaultModuleManager",children:(0,d.jsx)(n.code,{children:"DefaultModuleManager"})})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L11",children:"src/core/structures/services/module-manager.ts:11"})}),"\n",(0,d.jsx)(n.h2,{id:"properties",children:"Properties"}),"\n",(0,d.jsx)(n.h3,{id:"modulestore",children:"moduleStore"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Private"})," ",(0,d.jsx)(n.strong,{children:"moduleStore"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CoreModuleStore",children:(0,d.jsx)(n.code,{children:"CoreModuleStore"})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L11",children:"src/core/structures/services/module-manager.ts:11"})}),"\n",(0,d.jsx)(n.h2,{id:"methods",children:"Methods"}),"\n",(0,d.jsx)(n.h3,{id:"get",children:"get"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"get"}),"(",(0,d.jsx)(n.code,{children:"id"}),"): ",(0,d.jsx)(n.code,{children:"undefined"})," | ",(0,d.jsx)(n.code,{children:"Module"})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"id"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"string"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-1",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"undefined"})," | ",(0,d.jsx)(n.code,{children:"Module"})]}),"\n",(0,d.jsx)(n.h4,{id:"implementation-of",children:"Implementation of"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"}),".",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager#get",children:"get"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L34",children:"src/core/structures/services/module-manager.ts:34"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"getbynamecommandtype",children:"getByNameCommandType"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"getByNameCommandType"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"name"}),", ",(0,d.jsx)(n.code,{children:"commandType"}),"): ",(0,d.jsx)(n.code,{children:"undefined"})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CommandModuleDefs",children:(0,d.jsx)(n.code,{children:"CommandModuleDefs"})}),"[",(0,d.jsx)(n.code,{children:"T"}),"]"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"name"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"string"})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"commandType"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-2",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"undefined"})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CommandModuleDefs",children:(0,d.jsx)(n.code,{children:"CommandModuleDefs"})}),"[",(0,d.jsx)(n.code,{children:"T"}),"]"]}),"\n",(0,d.jsx)(n.h4,{id:"implementation-of-1",children:"Implementation of"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"}),".",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager#getbynamecommandtype",children:"getByNameCommandType"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L14",children:"src/core/structures/services/module-manager.ts:14"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"getmetadata",children:"getMetadata"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"getMetadata"}),"(",(0,d.jsx)(n.code,{children:"m"}),"): ",(0,d.jsx)(n.code,{children:"CommandMeta"})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-3",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"m"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"Module"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"CommandMeta"})}),"\n",(0,d.jsx)(n.h4,{id:"implementation-of-2",children:"Implementation of"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"}),".",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager#getmetadata",children:"getMetadata"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L26",children:"src/core/structures/services/module-manager.ts:26"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"getpublishablecommands",children:"getPublishableCommands"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"getPublishableCommands"}),"(): ",(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})}),"[]"]}),"\n",(0,d.jsx)(n.h4,{id:"returns-4",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})}),"[]"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Deprecated"})})}),"\n",(0,d.jsx)(n.h4,{id:"implementation-of-3",children:"Implementation of"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"}),".",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager#getpublishablecommands",children:"getPublishableCommands"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L41",children:"src/core/structures/services/module-manager.ts:41"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"set",children:"set"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"set"}),"(",(0,d.jsx)(n.code,{children:"id"}),", ",(0,d.jsx)(n.code,{children:"path"}),"): ",(0,d.jsx)(n.code,{children:"void"})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-4",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"id"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"string"})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"path"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})})})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-5",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"void"})}),"\n",(0,d.jsx)(n.h4,{id:"implementation-of-4",children:"Implementation of"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"}),".",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager#set",children:"set"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L37",children:"src/core/structures/services/module-manager.ts:37"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"setmetadata",children:"setMetadata"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"setMetadata"}),"(",(0,d.jsx)(n.code,{children:"m"}),", ",(0,d.jsx)(n.code,{children:"c"}),"): ",(0,d.jsx)(n.code,{children:"void"})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-5",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"m"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"Module"})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"c"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"CommandMeta"})})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-6",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"void"})}),"\n",(0,d.jsx)(n.h4,{id:"implementation-of-5",children:"Implementation of"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"}),".",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager#setmetadata",children:"setMetadata"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/structures/services/module-manager.ts#L22",children:"src/core/structures/services/module-manager.ts:22"})})]})}function o(e={}){const{wrapper:n}={...(0,l.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(h,{...e})}):h(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>t,x:()=>i});var d=s(6540);const l={},r=d.createContext(l);function t(e){const n=d.useContext(r);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function i(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(l):e.components||l:t(e.components),d.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f6aebfbf.66ce420a.js b/assets/js/f6aebfbf.66ce420a.js deleted file mode 100644 index 5c4f6287c..000000000 --- a/assets/js/f6aebfbf.66ce420a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[2649],{6976:(e,n,l)=>{l.r(n),l.d(n,{assets:()=>t,contentTitle:()=>r,default:()=>x,frontMatter:()=>i,metadata:()=>c,toc:()=>h});var d=l(4848),s=l(8453);const i={id:"modules",title:"@sern/handler",sidebar_label:"Exports",sidebar_position:.5,custom_edit_url:null},r=void 0,c={id:"api/modules",title:"@sern/handler",description:"Namespaces",source:"@site/docs/api/modules.md",sourceDirName:"api",slug:"/api/modules",permalink:"/docs/api/modules",draft:!1,unlisted:!1,editUrl:null,tags:[],version:"current",sidebarPosition:.5,frontMatter:{id:"modules",title:"@sern/handler",sidebar_label:"Exports",sidebar_position:.5,custom_edit_url:null},sidebar:"tutorialSidebar",previous:{title:"Readme",permalink:"/docs/api/"},next:{title:"CommandError",permalink:"/docs/api/namespaces/CommandError"}},t={},h=[{value:"Namespaces",id:"namespaces",level:2},{value:"Enumerations",id:"enumerations",level:2},{value:"Classes",id:"classes",level:2},{value:"Interfaces",id:"interfaces",level:2},{value:"Type Aliases",id:"type-aliases",level:2},{value:"AnyCommandPlugin",id:"anycommandplugin",level:3},{value:"Defined in",id:"defined-in",level:4},{value:"AnyEventPlugin",id:"anyeventplugin",level:3},{value:"Defined in",id:"defined-in-1",level:4},{value:"Args",id:"args",level:3},{value:"Defined in",id:"defined-in-2",level:4},{value:"CommandModule",id:"commandmodule",level:3},{value:"Defined in",id:"defined-in-3",level:4},{value:"EventModule",id:"eventmodule",level:3},{value:"Defined in",id:"defined-in-4",level:4},{value:"Initializable",id:"initializable",level:3},{value:"Type parameters",id:"type-parameters",level:4},{value:"Defined in",id:"defined-in-5",level:4},{value:"LogPayload",id:"logpayload",level:3},{value:"Type parameters",id:"type-parameters-1",level:4},{value:"Type declaration",id:"type-declaration",level:4},{value:"Defined in",id:"defined-in-6",level:4},{value:"Payload",id:"payload",level:3},{value:"Defined in",id:"defined-in-7",level:4},{value:"PluginResult",id:"pluginresult",level:3},{value:"Defined in",id:"defined-in-8",level:4},{value:"SernOptionsData",id:"sernoptionsdata",level:3},{value:"Defined in",id:"defined-in-9",level:4},{value:"Singleton",id:"singleton",level:3},{value:"Type parameters",id:"type-parameters-2",level:4},{value:"Type declaration",id:"type-declaration-1",level:4},{value:"Returns",id:"returns",level:5},{value:"Defined in",id:"defined-in-10",level:4},{value:"SlashOptions",id:"slashoptions",level:3},{value:"Defined in",id:"defined-in-11",level:4},{value:"Transient",id:"transient",level:3},{value:"Type parameters",id:"type-parameters-3",level:4},{value:"Type declaration",id:"type-declaration-2",level:4},{value:"Returns",id:"returns-1",level:5},{value:"Returns",id:"returns-2",level:5},{value:"Defined in",id:"defined-in-12",level:4},{value:"Variables",id:"variables",level:2},{value:"controller",id:"controller",level:3},{value:"Type declaration",id:"type-declaration-3",level:4},{value:"Defined in",id:"defined-in-13",level:4},{value:"Functions",id:"functions",level:2},{value:"CommandControlPlugin",id:"commandcontrolplugin",level:3},{value:"Type parameters",id:"type-parameters-4",level:4},{value:"Parameters",id:"parameters",level:4},{value:"Returns",id:"returns-3",level:4},{value:"Defined in",id:"defined-in-14",level:4},{value:"CommandInitPlugin",id:"commandinitplugin",level:3},{value:"Type parameters",id:"type-parameters-5",level:4},{value:"Parameters",id:"parameters-1",level:4},{value:"Returns",id:"returns-4",level:4},{value:"Defined in",id:"defined-in-15",level:4},{value:"DiscordEventControlPlugin",id:"discordeventcontrolplugin",level:3},{value:"Type parameters",id:"type-parameters-6",level:4},{value:"Parameters",id:"parameters-2",level:4},{value:"Returns",id:"returns-5",level:4},{value:"Defined in",id:"defined-in-16",level:4},{value:"EventControlPlugin",id:"eventcontrolplugin",level:3},{value:"Type parameters",id:"type-parameters-7",level:4},{value:"Parameters",id:"parameters-3",level:4},{value:"Returns",id:"returns-6",level:4},{value:"Defined in",id:"defined-in-17",level:4},{value:"EventInitPlugin",id:"eventinitplugin",level:3},{value:"Type parameters",id:"type-parameters-8",level:4},{value:"Parameters",id:"parameters-4",level:4},{value:"Returns",id:"returns-7",level:4},{value:"Defined in",id:"defined-in-18",level:4},{value:"Service",id:"service",level:3},{value:"Type parameters",id:"type-parameters-9",level:4},{value:"Parameters",id:"parameters-5",level:4},{value:"Returns",id:"returns-8",level:4},{value:"Defined in",id:"defined-in-19",level:4},{value:"Services",id:"services",level:3},{value:"Type parameters",id:"type-parameters-10",level:4},{value:"Parameters",id:"parameters-6",level:4},{value:"Returns",id:"returns-9",level:4},{value:"Defined in",id:"defined-in-20",level:4},{value:"commandModule",id:"commandmodule-1",level:3},{value:"Parameters",id:"parameters-7",level:4},{value:"Returns",id:"returns-10",level:4},{value:"Defined in",id:"defined-in-21",level:4},{value:"discordEvent",id:"discordevent",level:3},{value:"Type parameters",id:"type-parameters-11",level:4},{value:"Parameters",id:"parameters-8",level:4},{value:"Returns",id:"returns-11",level:4},{value:"Defined in",id:"defined-in-22",level:4},{value:"eventModule",id:"eventmodule-1",level:3},{value:"Parameters",id:"parameters-9",level:4},{value:"Returns",id:"returns-12",level:4},{value:"Defined in",id:"defined-in-23",level:4},{value:"makeDependencies",id:"makedependencies",level:3},{value:"Type parameters",id:"type-parameters-12",level:4},{value:"Parameters",id:"parameters-10",level:4},{value:"Returns",id:"returns-13",level:4},{value:"Defined in",id:"defined-in-24",level:4},{value:"makePlugin",id:"makeplugin",level:3},{value:"Type parameters",id:"type-parameters-13",level:4},{value:"Parameters",id:"parameters-11",level:4},{value:"Returns",id:"returns-14",level:4},{value:"Defined in",id:"defined-in-25",level:4},{value:"single",id:"single",level:3},{value:"Type parameters",id:"type-parameters-14",level:4},{value:"Parameters",id:"parameters-12",level:4},{value:"Returns",id:"returns-15",level:4},{value:"Returns",id:"returns-16",level:5},{value:"Defined in",id:"defined-in-26",level:4},{value:"transient",id:"transient-1",level:3},{value:"Type parameters",id:"type-parameters-15",level:4},{value:"Parameters",id:"parameters-13",level:4},{value:"Returns",id:"returns-17",level:4},{value:"Returns",id:"returns-18",level:5},{value:"Returns",id:"returns-19",level:5},{value:"Defined in",id:"defined-in-27",level:4}];function a(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",h4:"h4",h5:"h5",hr:"hr",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(n.h2,{id:"namespaces",children:"Namespaces"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/namespaces/Presence",children:"Presence"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/namespaces/Sern",children:"Sern"})}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"enumerations",children:"Enumerations"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:"CommandType"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/enums/EventType",children:"EventType"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/enums/PayloadType",children:"PayloadType"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType",children:"PluginType"})}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"classes",children:"Classes"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/classes/Context",children:"Context"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/classes/DefaultErrorHandling",children:"DefaultErrorHandling"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/classes/DefaultLogging",children:"DefaultLogging"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/classes/DefaultModuleManager",children:"DefaultModuleManager"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/classes/ModuleStore",children:"ModuleStore"})}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"interfaces",children:"Interfaces"}),"\n",(0,d.jsxs)(n.ul,{children:["\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/BothCommand",children:"BothCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ButtonCommand",children:"ButtonCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ChannelSelectCommand",children:"ChannelSelectCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CommandModuleDefs",children:"CommandModuleDefs"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuMsg",children:"ContextMenuMsg"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuUser",children:"ContextMenuUser"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:"ControlPlugin"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Controller",children:"Controller"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CoreDependencies",children:"CoreDependencies"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/CoreModuleStore",children:"CoreModuleStore"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/DiscordEventCommand",children:"DiscordEventCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Disposable",children:"Disposable"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Emitter",children:"Emitter"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ErrorHandling",children:"ErrorHandling"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/EventModuleDefs",children:"EventModuleDefs"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ExternalEventCommand",children:"ExternalEventCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Init",children:"Init"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:"InitPlugin"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Logging",children:"Logging"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/MentionableSelectCommand",children:"MentionableSelectCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModalSubmitCommand",children:"ModalSubmitCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModuleManager",children:"ModuleManager"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:"Plugin"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/RoleSelectCommand",children:"RoleSelectCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernAutocompleteData",children:"SernAutocompleteData"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernEventCommand",children:"SernEventCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernEventsMapping",children:"SernEventsMapping"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernSubCommandData",children:"SernSubCommandData"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernSubCommandGroupData",children:"SernSubCommandGroupData"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SlashCommand",children:"SlashCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/StringSelectCommand",children:"StringSelectCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/TextCommand",children:"TextCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/UserSelectCommand",children:"UserSelectCommand"})}),"\n",(0,d.jsx)(n.li,{children:(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Wrapper",children:"Wrapper"})}),"\n"]}),"\n",(0,d.jsx)(n.h2,{id:"type-aliases",children:"Type Aliases"}),"\n",(0,d.jsx)(n.h3,{id:"anycommandplugin",children:"AnyCommandPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"AnyCommandPlugin"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<[",(0,d.jsx)(n.code,{children:"InitArgs"}),"<",(0,d.jsx)(n.code,{children:"Processed"}),"<",(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})}),">>]>"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L76",children:"src/types/core-plugin.ts:76"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"anyeventplugin",children:"AnyEventPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"AnyEventPlugin"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ControlPlugin",children:(0,d.jsx)(n.code,{children:"ControlPlugin"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/InitPlugin",children:(0,d.jsx)(n.code,{children:"InitPlugin"})}),"<[",(0,d.jsx)(n.code,{children:"InitArgs"}),"<",(0,d.jsx)(n.code,{children:"Processed"}),"<",(0,d.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,d.jsx)(n.code,{children:"EventModule"})}),">>]>"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-1",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L77",children:"src/types/core-plugin.ts:77"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"args",children:"Args"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"Args"}),": ",(0,d.jsx)(n.code,{children:"ParseType"}),"<{ ",(0,d.jsx)(n.code,{children:"slash"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/modules#slashoptions",children:(0,d.jsx)(n.code,{children:"SlashOptions"})})," ; ",(0,d.jsx)(n.code,{children:"text"}),": ",(0,d.jsx)(n.code,{children:"string"}),"[] }>"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-2",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L16",children:"src/types/utility.ts:16"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"commandmodule",children:"CommandModule"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"CommandModule"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/TextCommand",children:(0,d.jsx)(n.code,{children:"TextCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SlashCommand",children:(0,d.jsx)(n.code,{children:"SlashCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/BothCommand",children:(0,d.jsx)(n.code,{children:"BothCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuUser",children:(0,d.jsx)(n.code,{children:"ContextMenuUser"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ContextMenuMsg",children:(0,d.jsx)(n.code,{children:"ContextMenuMsg"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ButtonCommand",children:(0,d.jsx)(n.code,{children:"ButtonCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/StringSelectCommand",children:(0,d.jsx)(n.code,{children:"StringSelectCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/MentionableSelectCommand",children:(0,d.jsx)(n.code,{children:"MentionableSelectCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/UserSelectCommand",children:(0,d.jsx)(n.code,{children:"UserSelectCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ChannelSelectCommand",children:(0,d.jsx)(n.code,{children:"ChannelSelectCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/RoleSelectCommand",children:(0,d.jsx)(n.code,{children:"RoleSelectCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ModalSubmitCommand",children:(0,d.jsx)(n.code,{children:"ModalSubmitCommand"})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-3",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L132",children:"src/types/core-modules.ts:132"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"eventmodule",children:"EventModule"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"EventModule"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/DiscordEventCommand",children:(0,d.jsx)(n.code,{children:"DiscordEventCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernEventCommand",children:(0,d.jsx)(n.code,{children:"SernEventCommand"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/ExternalEventCommand",children:(0,d.jsx)(n.code,{children:"ExternalEventCommand"})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-4",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L131",children:"src/types/core-modules.ts:131"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"initializable",children:"Initializable"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"Initializable"}),"<",(0,d.jsx)(n.code,{children:"T"}),">: ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.p,{children:"Type to annotate that something is initializable.\nIf T has an init method, this will be called."}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Init",children:(0,d.jsx)(n.code,{children:"Init"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-5",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L17",children:"src/types/ioc.ts:17"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"logpayload",children:"LogPayload"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"LogPayload"}),"<",(0,d.jsx)(n.code,{children:"T"}),">: ",(0,d.jsx)(n.code,{children:"Object"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-1",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"unknown"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration",children:"Type declaration"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"message"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-6",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/contracts/logging.ts#L11",children:"src/core/contracts/logging.ts:11"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"payload",children:"Payload"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"Payload"}),": { ",(0,d.jsx)(n.code,{children:"module"}),": ",(0,d.jsx)(n.code,{children:"AnyModule"})," ; ",(0,d.jsx)(n.code,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PayloadType#success",children:(0,d.jsx)(n.code,{children:"Success"})})," } | { ",(0,d.jsx)(n.code,{children:"module?"}),": ",(0,d.jsx)(n.code,{children:"AnyModule"})," ; ",(0,d.jsx)(n.code,{children:"reason"}),": ",(0,d.jsx)(n.code,{children:"string"})," | ",(0,d.jsx)(n.code,{children:"Error"})," ; ",(0,d.jsx)(n.code,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PayloadType#failure",children:(0,d.jsx)(n.code,{children:"Failure"})})," } | { ",(0,d.jsx)(n.code,{children:"module"}),": ",(0,d.jsx)(n.code,{children:"undefined"})," ; ",(0,d.jsx)(n.code,{children:"reason"}),": ",(0,d.jsx)(n.code,{children:"string"})," ; ",(0,d.jsx)(n.code,{children:"type"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PayloadType#warning",children:(0,d.jsx)(n.code,{children:"Warning"})})," }"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-7",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L26",children:"src/types/utility.ts:26"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"pluginresult",children:"PluginResult"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"PluginResult"}),": ",(0,d.jsx)(n.code,{children:"Awaitable"}),"<",(0,d.jsx)(n.code,{children:"VoidResult"}),">"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-8",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-plugin.ts#L51",children:"src/types/core-plugin.ts:51"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"sernoptionsdata",children:"SernOptionsData"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"SernOptionsData"}),": ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernSubCommandData",children:(0,d.jsx)(n.code,{children:"SernSubCommandData"})})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernSubCommandGroupData",children:(0,d.jsx)(n.code,{children:"SernSubCommandGroupData"})})," | ",(0,d.jsx)(n.code,{children:"APIApplicationCommandBasicOption"})," | ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernAutocompleteData",children:(0,d.jsx)(n.code,{children:"SernAutocompleteData"})})]}),"\n",(0,d.jsxs)(n.p,{children:["Type that replaces autocomplete with ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/SernAutocompleteData",children:"SernAutocompleteData"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-9",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/core-modules.ts#L200",children:"src/types/core-modules.ts:200"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"singleton",children:"Singleton"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"Singleton"}),"<",(0,d.jsx)(n.code,{children:"T"}),">: () => ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.p,{children:"Type to annotate that something is a singleton.\nT is created once and lazily."}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-2",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"})})}),(0,d.jsx)(n.tbody,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})})})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration-1",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (): ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h5,{id:"returns",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"T"})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-10",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L7",children:"src/types/ioc.ts:7"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"slashoptions",children:"SlashOptions"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"SlashOptions"}),": ",(0,d.jsx)(n.code,{children:"Omit"}),"<",(0,d.jsx)(n.code,{children:"CommandInteractionOptionResolver"}),", ",(0,d.jsx)(n.code,{children:'"getMessage"'})," | ",(0,d.jsx)(n.code,{children:'"getFocused"'}),">"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-11",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/utility.ts#L14",children:"src/types/utility.ts:14"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"transient",children:"Transient"}),"\n",(0,d.jsxs)(n.p,{children:["\u01ac ",(0,d.jsx)(n.strong,{children:"Transient"}),"<",(0,d.jsx)(n.code,{children:"T"}),">: () => () => ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.p,{children:"Type to annotate that something is transient.\nEvery time this is called, a new object is created"}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-3",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"})})}),(0,d.jsx)(n.tbody,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})})})]}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration-2",children:"Type declaration"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (): () => ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h5,{id:"returns-1",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"fn"})}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (): ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h5,{id:"returns-2",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"T"})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-12",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/types/ioc.ts#L12",children:"src/types/ioc.ts:12"})}),"\n",(0,d.jsx)(n.h2,{id:"variables",children:"Variables"}),"\n",(0,d.jsx)(n.h3,{id:"controller",children:"controller"}),"\n",(0,d.jsxs)(n.p,{children:["\u2022 ",(0,d.jsx)(n.code,{children:"Const"})," ",(0,d.jsx)(n.strong,{children:"controller"}),": ",(0,d.jsx)(n.code,{children:"Object"})]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"1.0.0\nThe object passed into every plugin to control a command's behavior"}),"\n",(0,d.jsx)(n.h4,{id:"type-declaration-3",children:"Type declaration"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"next"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["() => ",(0,d.jsx)(n.code,{children:"OkImpl"}),"<",(0,d.jsx)(n.code,{children:"void"}),">"]})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"stop"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["() => ",(0,d.jsx)(n.code,{children:"ErrImpl"}),"<",(0,d.jsx)(n.code,{children:"void"}),">"]})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-13",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L69",children:"src/core/create-plugins.ts:69"})}),"\n",(0,d.jsx)(n.h2,{id:"functions",children:"Functions"}),"\n",(0,d.jsx)(n.h3,{id:"commandcontrolplugin",children:"CommandControlPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"CommandControlPlugin"}),"<",(0,d.jsx)(n.code,{children:"I"}),">(",(0,d.jsx)(n.code,{children:"execute"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-4",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"I"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"CommandArgs"}),"<",(0,d.jsx)(n.code,{children:"I"}),", ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType#control",children:(0,d.jsx)(n.code,{children:"Control"})}),">) => ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-3",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsxs)(n.p,{children:["2.5.0\n@",(0,d.jsx)(n.strong,{children:"PURE"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-14",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L37",children:"src/core/create-plugins.ts:37"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"commandinitplugin",children:"CommandInitPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"CommandInitPlugin"}),"<",(0,d.jsx)(n.code,{children:"I"}),">(",(0,d.jsx)(n.code,{children:"execute"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-5",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"I"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/CommandType",children:(0,d.jsx)(n.code,{children:"CommandType"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-1",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"CommandArgs"}),"<",(0,d.jsx)(n.code,{children:"I"}),", ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType#init",children:(0,d.jsx)(n.code,{children:"Init"})}),">) => ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-4",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsxs)(n.p,{children:["2.5.0\n@",(0,d.jsx)(n.strong,{children:"PURE"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-15",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L28",children:"src/core/create-plugins.ts:28"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"discordeventcontrolplugin",children:"DiscordEventControlPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"DiscordEventControlPlugin"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"name"}),", ",(0,d.jsx)(n.code,{children:"execute"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-6",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,d.jsx)(n.code,{children:"ClientEvents"})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-2",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"name"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"ClientEvents"}),"[",(0,d.jsx)(n.code,{children:"T"}),"]) => ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-5",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"2.5.0"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Experimental"})})}),"\n",(0,d.jsx)(n.p,{children:"A specialized function for creating control plugins with discord.js ClientEvents.\nWill probably be moved one day!"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-16",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L58",children:"src/core/create-plugins.ts:58"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"eventcontrolplugin",children:"EventControlPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"EventControlPlugin"}),"<",(0,d.jsx)(n.code,{children:"I"}),">(",(0,d.jsx)(n.code,{children:"execute"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-7",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"I"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/EventType",children:(0,d.jsx)(n.code,{children:"EventType"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-3",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"EventArgs"}),"<",(0,d.jsx)(n.code,{children:"I"}),", ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType#control",children:(0,d.jsx)(n.code,{children:"Control"})}),">) => ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-6",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsxs)(n.p,{children:["2.5.0\n@",(0,d.jsx)(n.strong,{children:"PURE"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-17",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L46",children:"src/core/create-plugins.ts:46"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"eventinitplugin",children:"EventInitPlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"EventInitPlugin"}),"<",(0,d.jsx)(n.code,{children:"I"}),">(",(0,d.jsx)(n.code,{children:"execute"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-8",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"I"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.a,{href:"/docs/api/enums/EventType",children:(0,d.jsx)(n.code,{children:"EventType"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-4",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"EventArgs"}),"<",(0,d.jsx)(n.code,{children:"I"}),", ",(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType#init",children:(0,d.jsx)(n.code,{children:"Init"})}),">) => ",(0,d.jsx)(n.a,{href:"/docs/api/modules#pluginresult",children:(0,d.jsx)(n.code,{children:"PluginResult"})})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-7",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"unknown"}),"[]>"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsxs)(n.p,{children:["2.5.0\n@",(0,d.jsx)(n.strong,{children:"PURE"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-18",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L19",children:"src/core/create-plugins.ts:19"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"service",children:"Service"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"Service"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"key"}),"): ",(0,d.jsx)(n.code,{children:"NonNullable"}),"<",(0,d.jsx)(n.code,{children:"UnpackFunction"}),"<",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Dependencies"}),">[",(0,d.jsx)(n.code,{children:"T"}),"]>>"]}),"\n",(0,d.jsx)(n.p,{children:"The new Service api, a cleaner alternative to useContainer\nTo obtain intellisense, ensure a .d.ts file exists in the root of compilation.\nUsually our scaffolding tool takes care of this.\nNote: this method only works AFTER your container has been initiated"}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-9",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,d.jsx)(n.code,{children:"Dependencies"})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-5",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"key"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:"a key that corresponds to a dependency registered."})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-8",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"NonNullable"}),"<",(0,d.jsx)(n.code,{children:"UnpackFunction"}),"<",(0,d.jsx)(n.code,{children:"Partial"}),"<",(0,d.jsx)(n.code,{children:"Dependencies"}),">[",(0,d.jsx)(n.code,{children:"T"}),"]>>"]}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"3.0.0"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Example"})})}),"\n",(0,d.jsx)(n.pre,{children:(0,d.jsx)(n.code,{className:"language-ts",children:"const client = Service('@sern/client');\n"})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-19",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/ioc/dependency-injection.ts#L37",children:"src/core/ioc/dependency-injection.ts:37"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"services",children:"Services"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"Services"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"...keys"}),"): ",(0,d.jsx)(n.code,{children:"IntoDependencies"}),"<",(0,d.jsx)(n.code,{children:"T"}),">"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-10",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,d.jsx)(n.code,{children:"Dependencies"}),"[]"]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-6",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"...keys"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:"[...T[]]"})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-9",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"IntoDependencies"}),"<",(0,d.jsx)(n.code,{children:"T"}),">"]}),"\n",(0,d.jsx)(n.p,{children:"array of dependencies, in the same order of keys provided"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsxs)(n.p,{children:["3.0.0\nThe plural version of ",(0,d.jsx)(n.a,{href:"/docs/api/modules#service",children:"Service"})]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-20",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/ioc/dependency-injection.ts#L47",children:"src/core/ioc/dependency-injection.ts:47"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"commandmodule-1",children:"commandModule"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"commandModule"}),"(",(0,d.jsx)(n.code,{children:"mod"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-7",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"mod"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"InputCommand"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-10",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"/docs/api/modules#commandmodule",children:(0,d.jsx)(n.code,{children:"CommandModule"})})}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"1.0.0 The wrapper function to define command modules for sern"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-21",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/modules.ts#L19",children:"src/core/modules.ts:19"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"discordevent",children:"discordEvent"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"discordEvent"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"mod"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,d.jsx)(n.code,{children:"EventModule"})})]}),"\n",(0,d.jsxs)(n.p,{children:["Create event modules from discord.js client events,\nThis is an ",(0,d.jsx)(n.a,{href:"/docs/api/modules#eventmodule-1",children:"eventModule"})," for discord events,\nwhere typings can be very bad."]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-11",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends keyof ",(0,d.jsx)(n.code,{children:"ClientEvents"})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-8",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"mod"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"Object"})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"mod.execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"ClientEvents"}),"[",(0,d.jsx)(n.code,{children:"T"}),"]) => ",(0,d.jsx)(n.code,{children:"unknown"})]})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"mod.name"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"mod.plugins?"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:[(0,d.jsx)(n.a,{href:"/docs/api/modules#anyeventplugin",children:(0,d.jsx)(n.code,{children:"AnyEventPlugin"})}),"[]"]})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-11",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,d.jsx)(n.code,{children:"EventModule"})})}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Experimental"})})}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-22",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/modules.ts#L47",children:"src/core/modules.ts:47"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"eventmodule-1",children:"eventModule"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"eventModule"}),"(",(0,d.jsx)(n.code,{children:"mod"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,d.jsx)(n.code,{children:"EventModule"})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-9",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"mod"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"InputEvent"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-12",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"/docs/api/modules#eventmodule",children:(0,d.jsx)(n.code,{children:"EventModule"})})}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"1.0.0\nThe wrapper function to define event modules for sern"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-23",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/modules.ts#L32",children:"src/core/modules.ts:32"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"makedependencies",children:"makeDependencies"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"makeDependencies"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"conf"}),"): ",(0,d.jsx)(n.code,{children:"Promise"}),"<<V>(...",(0,d.jsx)(n.code,{children:"keys"}),": [...V[]]) => ",(0,d.jsx)(n.code,{children:"IntoDependencies"}),"<",(0,d.jsx)(n.code,{children:"V"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-12",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.code,{children:"Dependencies"})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-10",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"conf"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"ValidDependencyConfig"})})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-13",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.code,{children:"Promise"}),"<<V>(...",(0,d.jsx)(n.code,{children:"keys"}),": [...V[]]) => ",(0,d.jsx)(n.code,{children:"IntoDependencies"}),"<",(0,d.jsx)(n.code,{children:"V"}),">>"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-24",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/ioc/base.ts#L144",children:"src/core/ioc/base.ts:144"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"makeplugin",children:"makePlugin"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"makePlugin"}),"<",(0,d.jsx)(n.code,{children:"V"}),">(",(0,d.jsx)(n.code,{children:"type"}),", ",(0,d.jsx)(n.code,{children:"execute"}),"): ",(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"V"}),">"]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-13",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"V"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["extends ",(0,d.jsx)(n.code,{children:"unknown"}),"[]"]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-11",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsxs)(n.tbody,{children:[(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"type"})}),(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.a,{href:"/docs/api/enums/PluginType",children:(0,d.jsx)(n.code,{children:"PluginType"})})})]}),(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"execute"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["(...",(0,d.jsx)(n.code,{children:"args"}),": ",(0,d.jsx)(n.code,{children:"any"}),"[]) => ",(0,d.jsx)(n.code,{children:"any"})]})]})]})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-14",children:"Returns"}),"\n",(0,d.jsxs)(n.p,{children:[(0,d.jsx)(n.a,{href:"/docs/api/interfaces/Plugin",children:(0,d.jsx)(n.code,{children:"Plugin"})}),"<",(0,d.jsx)(n.code,{children:"V"}),">"]}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-25",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/create-plugins.ts#L6",children:"src/core/create-plugins.ts:6"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"single",children:"single"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"single"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"cb"}),"): () => ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsxs)(n.p,{children:["@",(0,d.jsx)(n.strong,{children:"PURE"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-14",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"})})}),(0,d.jsx)(n.tbody,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-12",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"cb"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["() => ",(0,d.jsx)(n.code,{children:"T"})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-15",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"fn"})}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (): ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h5,{id:"returns-16",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"T"})}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"2.0.0.\nCreates a singleton object."}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-26",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/ioc/dependency-injection.ts#L11",children:"src/core/ioc/dependency-injection.ts:11"})}),"\n",(0,d.jsx)(n.hr,{}),"\n",(0,d.jsx)(n.h3,{id:"transient-1",children:"transient"}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 ",(0,d.jsx)(n.strong,{children:"transient"}),"<",(0,d.jsx)(n.code,{children:"T"}),">(",(0,d.jsx)(n.code,{children:"cb"}),"): () => () => ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsxs)(n.p,{children:["@",(0,d.jsx)(n.strong,{children:"PURE"})]}),"\n",(0,d.jsx)(n.h4,{id:"type-parameters-15",children:"Type parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"})})}),(0,d.jsx)(n.tbody,{children:(0,d.jsx)(n.tr,{children:(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"T"})})})})]}),"\n",(0,d.jsx)(n.h4,{id:"parameters-13",children:"Parameters"}),"\n\n\n\n\n\n\n\n\n\n\n\n\n\n",(0,d.jsxs)(n.table,{children:[(0,d.jsx)(n.thead,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Name"}),(0,d.jsx)(n.th,{style:{textAlign:"left"},children:"Type"})]})}),(0,d.jsx)(n.tbody,{children:(0,d.jsxs)(n.tr,{children:[(0,d.jsx)(n.td,{style:{textAlign:"left"},children:(0,d.jsx)(n.code,{children:"cb"})}),(0,d.jsxs)(n.td,{style:{textAlign:"left"},children:["() => () => ",(0,d.jsx)(n.code,{children:"T"})]})]})})]}),"\n",(0,d.jsx)(n.h4,{id:"returns-17",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"fn"})}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (): () => ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h5,{id:"returns-18",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"fn"})}),"\n",(0,d.jsxs)(n.p,{children:["\u25b8 (): ",(0,d.jsx)(n.code,{children:"T"})]}),"\n",(0,d.jsx)(n.h5,{id:"returns-19",children:"Returns"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.code,{children:"T"})}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.strong,{children:(0,d.jsx)(n.code,{children:"Since"})})}),"\n",(0,d.jsx)(n.p,{children:"2.0.0\nCreates a transient object"}),"\n",(0,d.jsx)(n.h4,{id:"defined-in-27",children:"Defined in"}),"\n",(0,d.jsx)(n.p,{children:(0,d.jsx)(n.a,{href:"https://github.com/sern-handler/handler/blob/91b3768e376cfe22ec37d8ab44f4e4a4dfe8a1e8/src/core/ioc/dependency-injection.ts#L21",children:"src/core/ioc/dependency-injection.ts:21"})})]})}function x(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,d.jsx)(n,{...e,children:(0,d.jsx)(a,{...e})}):a(e)}},8453:(e,n,l)=>{l.d(n,{R:()=>r,x:()=>c});var d=l(6540);const s={},i=d.createContext(s);function r(e){const n=d.useContext(i);return d.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),d.createElement(i.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f7831d67.1fff8d58.js b/assets/js/f7831d67.1fff8d58.js deleted file mode 100644 index 06eecad0e..000000000 --- a/assets/js/f7831d67.1fff8d58.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[9611],{4144:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>h,frontMatter:()=>r,metadata:()=>d,toc:()=>a});var s=n(4848),o=n(8453);const r={slug:"getting-started",title:"How to get started with sern!",authors:["Sr Izan"],tags:["guides"]},i=void 0,d={permalink:"/blog/getting-started",editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/blog/2022-09-30-mdx-blog-post.md",source:"@site/blog/2022-09-30-mdx-blog-post.md",title:"How to get started with sern!",description:"Hello everyone!",date:"2022-09-30T00:00:00.000Z",formattedDate:"September 30, 2022",tags:[{label:"guides",permalink:"/blog/tags/guides"}],readingTime:1.31,hasTruncateMarker:!1,authors:[{name:"Sr Izan",title:"Developer",url:"https://github.com/SrIzan10",imageURL:"https://github.com/SrIzan10.png",key:"Sr Izan"}],frontMatter:{slug:"getting-started",title:"How to get started with sern!",authors:["Sr Izan"],tags:["guides"]},unlisted:!1,prevItem:{title:"Release 2.0.0",permalink:"/blog/2.0.0"},nextItem:{title:"Release 1.2.0",permalink:"/blog/1.2.0"}},l={authorsImageUrls:[void 0]},a=[{value:"Hello everyone!",id:"hello-everyone",level:2},{value:"Step 1: Install the CLI.",id:"step-1-install-the-cli",level:3},{value:"Step 2: Have some way to store secrets.",id:"step-2-have-some-way-to-store-secrets",level:3},{value:"And... that's it?",id:"and-thats-it",level:3},{value:"Extra: Video tutorial!",id:"extra-video-tutorial",level:3},{value:"FAQ",id:"faq",level:2}];function c(e){const t={a:"a",admonition:"admonition",br:"br",code:"code",h2:"h2",h3:"h3",p:"p",pre:"pre",source:"source",strong:"strong",video:"video",...(0,o.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h2,{id:"hello-everyone",children:"Hello everyone!"}),"\n",(0,s.jsx)(t.p,{children:"I'm Sr Izan, your fellow user and contributor."}),"\n",(0,s.jsx)(t.p,{children:"Today I'm going to show you how to get started with sern and all its cool features."}),"\n",(0,s.jsx)(t.h3,{id:"step-1-install-the-cli",children:"Step 1: Install the CLI."}),"\n",(0,s.jsx)(t.p,{children:"Install the CLI:"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{children:"npm i -g @sern/cli\n"})}),"\n",(0,s.jsx)(t.p,{children:"and then run"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{children:"sern init\n"})}),"\n",(0,s.jsx)(t.admonition,{type:"tip",children:(0,s.jsxs)(t.p,{children:["You can also run ",(0,s.jsx)(t.code,{children:"sern init -y"})," if you want to use the default options."]})}),"\n",(0,s.jsxs)(t.p,{children:["The CLI is written in Typescript and open-sourced on ",(0,s.jsx)(t.a,{href:"https://github.com/sern-handler/cli",children:"Github"}),". (thanks ",(0,s.jsx)(t.a,{href:"https://github.com/EvolutionX-10",children:"evo"}),"!)"]}),"\n",(0,s.jsx)(t.h3,{id:"step-2-have-some-way-to-store-secrets",children:"Step 2: Have some way to store secrets."}),"\n",(0,s.jsxs)(t.p,{children:["Normally you'd need a way to store secrets, and the best way to do that is by installing another package: ",(0,s.jsx)(t.code,{children:"dotenv"})]}),"\n",(0,s.jsxs)(t.p,{children:["just ",(0,s.jsx)(t.code,{children:"npm i dotenv"})," in the project folder and add ",(0,s.jsx)(t.code,{children:"require('dotenv').config()"})," to your import section. Then, when you login, ",(0,s.jsx)(t.code,{children:"process.env.TOKEN"})," (or however you have it named on your ",(0,s.jsx)(t.code,{children:".env"})," file) should do the trick."]}),"\n",(0,s.jsx)(t.admonition,{type:"caution",children:(0,s.jsxs)(t.p,{children:["If you're using ESM, configure dotenv with ",(0,s.jsx)(t.code,{children:"import 'dotenv/config'"})," instead of ",(0,s.jsx)(t.code,{children:"require('dotenv').config()"}),"."]})}),"\n",(0,s.jsx)(t.h3,{id:"and-thats-it",children:"And... that's it?"}),"\n",(0,s.jsxs)(t.p,{children:["Yes, that's it. Here's a little FAQ to get you started. You can also join the ",(0,s.jsx)(t.a,{href:"https://sern.dev/discord",children:"Discord"})," for any problems."]}),"\n",(0,s.jsx)(t.h3,{id:"extra-video-tutorial",children:"Extra: Video tutorial!"}),"\n",(0,s.jsxs)(t.video,{width:"400",controls:!0,children:["\n ",(0,s.jsx)(t.source,{src:"https://srizan.s-ul.eu/wtJBVsZU",type:"video/mp4"}),"\n"]}),"\n",(0,s.jsx)(t.h2,{id:"faq",children:"FAQ"}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Q"}),": How do I publish a slash command?",(0,s.jsx)(t.br,{}),"\n",(0,s.jsx)(t.strong,{children:"A"}),": Install the publish extension. Little video:",(0,s.jsx)(t.br,{}),"\n",(0,s.jsxs)(t.video,{width:"400",controls:!0,children:["\n",(0,s.jsx)(t.source,{src:"https://srizan.s-ul.eu/uHzPhfcS",type:"video/mp4"}),"\n"]})]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Q"}),": Any snippet VSCode extension?",(0,s.jsx)(t.br,{}),"\n",(0,s.jsx)(t.strong,{children:"A"}),": Yeah, just search ",(0,s.jsx)(t.code,{children:"sern Snippets"})," made by a verified publisher called Sr Izan (haha yeah me funny!)"]}),"\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Q"}),": HEEEELLLPPPP!!!!",(0,s.jsx)(t.br,{}),"\n",(0,s.jsx)(t.strong,{children:"A"}),": Hey, don't panic! We're here to help so, join the ",(0,s.jsx)(t.a,{href:"https://sern.dev/discord",children:"Discord"}),". We're trying to get to 100 members!"]})]})}function h(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>i,x:()=>d});var s=n(6540);const o={},r=s.createContext(o);function i(e){const t=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),s.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/main.b596629f.js b/assets/js/main.b596629f.js deleted file mode 100644 index 88eef8730..000000000 --- a/assets/js/main.b596629f.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.b596629f.js.LICENSE.txt */ -(self.webpackChunksern_website=self.webpackChunksern_website||[]).push([[8792],{9188:(e,t,n)=>{"use strict";n.d(t,{W:()=>a});var r=n(6540);function a(){return r.createElement("svg",{width:"20",height:"20",className:"DocSearch-Search-Icon",viewBox:"0 0 20 20","aria-hidden":"true"},r.createElement("path",{d:"M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z",stroke:"currentColor",fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"}))}},8328:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});n(6540);var r=n(3259),a=n.n(r),o=n(4054);const i={"01a85c17":[()=>Promise.all([n.e(1869),n.e(8209)]).then(n.bind(n,9158)),"@theme/BlogTagsListPage",9158],"083c37a9":[()=>n.e(2845).then(n.bind(n,2653)),"@site/docs/api/namespaces/Presence.md",2653],"0a33f845":[()=>n.e(7051).then(n.bind(n,5340)),"@site/docs/api/interfaces/Module.md",5340],"0c9bead8":[()=>n.e(7035).then(n.bind(n,4347)),"@site/docs/guide/walkthrough/dependency-injection.md",4347],"0e384e19":[()=>n.e(3976).then(n.bind(n,1512)),"@site/docs/intro.md",1512],17896441:[()=>Promise.all([n.e(1869),n.e(7508),n.e(8645),n.e(8401)]).then(n.bind(n,5022)),"@theme/DocItem",5022],"1a1cc5f0":[()=>n.e(5139).then(n.bind(n,2698)),"@site/blog/2023-7-4-mdx-blog-post.md?truncated=true",2698],"1a4e3797":[()=>Promise.all([n.e(1869),n.e(2138)]).then(n.bind(n,4604)),"@theme/SearchPage",4604],"1ac1bfe9":[()=>n.e(8811).then(n.bind(n,7348)),"@site/docs/guide/walkthrough/plugins.md",7348],"1adeaf48":[()=>n.e(9245).then(n.t.bind(n,4885,19)),"~blog/default/blog-tags-branding-41f.json",4885],"1aef51bd":[()=>n.e(2956).then(n.bind(n,8617)),"@site/docs/guide/walkthrough/conclusion.md",8617],"1b0c702f":[()=>n.e(9488).then(n.bind(n,6446)),"@site/docs/api/classes/DefaultLogging.md",6446],"1c127a4d":[()=>n.e(1054).then(n.bind(n,1253)),"@site/docs/api/interfaces/ErrorHandling.md",1253],"1f391b9e":[()=>Promise.all([n.e(1869),n.e(7508),n.e(8645),n.e(6061)]).then(n.bind(n,7973)),"@theme/MDXPage",7973],"26f1f3a5":[()=>n.e(1863).then(n.bind(n,1938)),"@site/docs/api/enums/PayloadType.md",1938],"295686f2":[()=>n.e(3495).then(n.bind(n,2669)),"@site/docs/api/interfaces/ContextMenuUser.md",2669],"2caf5b7a":[()=>n.e(7450).then(n.bind(n,3343)),"@site/docs/api/interfaces/SernSubCommandData.md",3343],"2e208732":[()=>n.e(3514).then(n.t.bind(n,8388,19)),"~blog/default/blog-tags-branding-41f-list.json",8388],"2f13d849":[()=>n.e(5898).then(n.bind(n,972)),"@site/blog/2022-09-30-mdx-blog-post.md?truncated=true",972],"3020eeee":[()=>n.e(7200).then(n.bind(n,6265)),"@site/blog/2022-09-28-mdx-blog-post.md",6265],"312c2bc5":[()=>Promise.all([n.e(1869),n.e(7508),n.e(312),n.e(4430)]).then(n.bind(n,3586)),"@site/src/pages/plugins.js",3586],"393be207":[()=>n.e(4134).then(n.bind(n,6602)),"@site/src/pages/markdown-page.md",6602],"3a0cb3a9":[()=>n.e(8371).then(n.bind(n,5424)),"@site/docs/api/interfaces/SernAutocompleteData.md",5424],"3a25b5a8":[()=>n.e(7804).then(n.bind(n,9619)),"@site/blog/2022-12-13-mdx-blog-post.md",9619],"3a2d3092":[()=>n.e(4085).then(n.bind(n,7401)),"@site/docs/guide/walkthrough/good-to-know.md",7401],"3ae57366":[()=>n.e(2639).then(n.bind(n,1629)),"@site/docs/guide/walkthrough/transition.md",1629],"3b15a34b":[()=>n.e(5276).then(n.bind(n,5902)),"@site/docs/api/interfaces/EventModuleDefs.md",5902],"3dc7c79a":[()=>n.e(612).then(n.bind(n,8914)),"@site/docs/guide/getting-started/preparing.md",8914],"3f83d40d":[()=>n.e(4523).then(n.bind(n,101)),"@site/blog/2023-01-12-mdx-blog-post.md?truncated=true",101],"425cbb82":[()=>n.e(9563).then(n.bind(n,8403)),"@site/docs/api/interfaces/Plugin.md",8403],"4279c33d":[()=>n.e(9302).then(n.bind(n,4076)),"@site/docs/api/interfaces/ChannelSelectCommand.md",4076],"447d9066":[()=>n.e(717).then(n.bind(n,2)),"@site/docs/api/interfaces/ModalSubmitCommand.md",2],"462b6925":[()=>n.e(5617).then(n.bind(n,4438)),"@site/docs/api/interfaces/SlashCommand.md",4438],46963930:[()=>n.e(8389).then(n.bind(n,5126)),"@site/docs/api/interfaces/CoreDependencies.md",5126],"476a0444":[()=>n.e(2667).then(n.bind(n,149)),"@site/docs/api/interfaces/InitPlugin.md",149],"4b098d2e":[()=>n.e(7567).then(n.bind(n,3142)),"@site/docs/api/interfaces/UserSelectCommand.md",3142],"4d00c3f4":[()=>n.e(8507).then(n.bind(n,1363)),"@site/docs/api/interfaces/CommandModuleDefs.md",1363],"4e28a08b":[()=>n.e(8881).then(n.bind(n,631)),"@site/docs/api/interfaces/RoleSelectCommand.md",631],"4fef5a93":[()=>n.e(1986).then(n.bind(n,9455)),"@site/blog/2024-02-23-mdx-blog-post.md?truncated=true",9455],"522b21a2":[()=>n.e(284).then(n.bind(n,4810)),"@site/blog/2023-06-18-mdx-blog-post.md",4810],53944420:[()=>n.e(3218).then(n.bind(n,2867)),"@site/docs/api/interfaces/AutocompletePlugin.md",2867],"54bc704d":[()=>n.e(3788).then(n.bind(n,334)),"@site/docs/cli/clear.md",334],"57124ee9":[()=>Promise.all([n.e(1869),n.e(3993)]).then(n.bind(n,3956)),"@site/src/pages/sponsors.js",3956],"57fe7727":[()=>n.e(4199).then(n.bind(n,5448)),"@site/docs/api/interfaces/SernSubCommandGroupData.md",5448],"5ae130ee":[()=>n.e(4184).then(n.bind(n,6866)),"@site/docs/api/interfaces/ExternalEventCommand.md",6866],"5bc4ccbc":[()=>n.e(3140).then(n.bind(n,3969)),"@site/docs/api/interfaces/Wrapper.md",3969],"5e8c322a":[()=>n.e(594).then(n.bind(n,8897)),"@site/docs/api/index.md",8897],"5e95c892":[()=>n.e(9647).then(n.bind(n,7121)),"@theme/DocsRoot",7121],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"608ca171":[()=>n.e(8312).then(n.bind(n,5174)),"@site/docs/guide/walkthrough/cli.md",5174],61538263:[()=>n.e(7823).then(n.bind(n,172)),"@site/docs/api/interfaces/Emitter.md",172],"65578b65":[()=>n.e(9385).then(n.bind(n,9854)),"@site/docs/api/interfaces/BothCommand.md",9854],"6626dbb1":[()=>n.e(6462).then(n.bind(n,2643)),"@site/docs/cli/build.md",2643],67348500:[()=>n.e(2586).then(n.bind(n,9829)),"@site/blog/2022-12-13-mdx-blog-post.md?truncated=true",9829],"67e3e25a":[()=>n.e(8385).then(n.bind(n,7051)),"@site/docs/api/classes/ModuleStore.md",7051],"6875c492":[()=>Promise.all([n.e(1869),n.e(7508),n.e(8645),n.e(8747),n.e(4813)]).then(n.bind(n,3069)),"@theme/BlogTagsPostsPage",3069],"69369ae2":[()=>n.e(9140).then(n.t.bind(n,1966,19)),"/home/runner/work/website/website/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",1966],"6b841b38":[()=>n.e(1747).then(n.t.bind(n,7757,19)),"/home/runner/work/website/website/.docusaurus/docusaurus-theme-search-algolia/default/plugin-route-context-module-100.json",7757],"6ba1d2c1":[()=>n.e(6987).then(n.bind(n,8539)),"@site/blog/2022-09-28-mdx-blog-post.md?truncated=true",8539],"6c624b4c":[()=>n.e(1611).then(n.bind(n,239)),"@site/docs/api/classes/CommandExecutable.md",239],"6cfc4513":[()=>n.e(9934).then(n.t.bind(n,2705,19)),"~blog/default/blog-tags-guides-c2f.json",2705],"6e55d25c":[()=>n.e(5116).then(n.bind(n,6232)),"@site/docs/cli/publish.md",6232],"6ff82968":[()=>n.e(2968).then(n.bind(n,1002)),"@site/docs/api/interfaces/TextCommand.md",1002],"701614d9":[()=>n.e(877).then(n.bind(n,3774)),"@site/docs/api/interfaces/ExternalEmitterPlugin.md",3774],"707baeff":[()=>n.e(5799).then(n.bind(n,476)),"@site/docs/api/enums/EventType.md",476],"720cd117":[()=>n.e(3186).then(n.bind(n,671)),"@site/docs/api/interfaces/SernEmitterPlugin.md",671],"7343edf0":[()=>n.e(7451).then(n.bind(n,2467)),"@site/docs/api/interfaces/ControlPlugin.md",2467],"73bd57bd":[()=>n.e(3581).then(n.bind(n,7164)),"@site/docs/api/namespaces/Sern.md",7164],"74e316f4":[()=>n.e(3705).then(n.bind(n,6318)),"@site/blog/2023-06-18-mdx-blog-post.md?truncated=true",6318],"77a07764":[()=>n.e(4446).then(n.bind(n,2269)),"@site/docs/api/namespaces/CommandError.md",2269],"79e7cc44":[()=>n.e(3617).then(n.bind(n,7213)),"@site/docs/api/interfaces/SernEventPlugin.md",7213],"7b758ddf":[()=>n.e(5938).then(n.bind(n,6942)),"@site/docs/guide/walkthrough/autocomplete.md",6942],"7c2ff145":[()=>n.e(9143).then(n.t.bind(n,2945,19)),"/home/runner/work/website/website/.docusaurus/docusaurus-plugin-content-blog/default/plugin-route-context-module-100.json",2945],"7cd974c8":[()=>n.e(8976).then(n.bind(n,9905)),"@site/docs/api/interfaces/ContextMenuMsg.md",9905],"7e205c4a":[()=>n.e(2212).then(n.bind(n,2868)),"@site/docs/api/classes/SernEmitter.md",2868],"7f2ac8b7":[()=>n.e(9368).then(n.bind(n,5051)),"@site/docs/api/interfaces/AutocompleteCommand.md",5051],"814f3328":[()=>n.e(7472).then(n.t.bind(n,5513,19)),"~blog/default/blog-post-list-prop-default.json",5513],"82474f76":[()=>n.e(1839).then(n.bind(n,1365)),"@site/docs/cli/extra.md",1365],"82cdda05":[()=>n.e(9392).then(n.bind(n,9673)),"@site/docs/api/interfaces/EventPlugin.md",9673],"83d480e9":[()=>n.e(9650).then(n.t.bind(n,4078,19)),"~blog/default/blog-tags-release-b5c.json",4078],"85456a26":[()=>n.e(8036).then(n.bind(n,575)),"@site/docs/api/interfaces/InitArgs.md",575],"86b8ce54":[()=>n.e(9856).then(n.bind(n,4941)),"@site/docs/cli/README.md",4941],"887ace0c":[()=>n.e(8820).then(n.bind(n,8778)),"@site/docs/api/interfaces/Presence.Result.md",8778],"888566f1":[()=>n.e(5037).then(n.bind(n,8188)),"@site/docs/guide/getting-started/choose-ide.md",8188],"8a062262":[()=>n.e(2684).then(n.bind(n,5147)),"@site/docs/api/interfaces/DiscordEventPlugin.md",5147],"90fdad0c":[()=>n.e(8418).then(n.bind(n,8868)),"@site/docs/api/classes/DefaultErrorHandling.md",8868],"916aad9f":[()=>n.e(688).then(n.bind(n,1277)),"@site/blog/2024-02-23-mdx-blog-post.md",1277],"9201de17":[()=>n.e(5822).then(n.bind(n,1711)),"@site/docs/guide/README.md",1711],"935f2afb":[()=>n.e(8581).then(n.t.bind(n,5610,19)),"~docs/default/version-current-metadata-prop-751.json",5610],"9693de07":[()=>n.e(656).then(n.bind(n,7645)),"@site/docs/api/interfaces/Dependencies.md",7645],"97c22b42":[()=>n.e(7374).then(n.bind(n,5787)),"@site/docs/api/interfaces/StringSelectCommand.md",5787],"981f6151":[()=>n.e(6052).then(n.bind(n,5982)),"@site/docs/guide/walkthrough/first-command.md",5982],"9b620520":[()=>n.e(6193).then(n.bind(n,2423)),"@site/docs/api/interfaces/ButtonCommand.md",2423],"9c021584":[()=>n.e(1307).then(n.t.bind(n,5173,19)),"~blog/default/blog-tags-release-b5c-list.json",5173],"9e4087bc":[()=>n.e(2711).then(n.bind(n,9331)),"@theme/BlogArchivePage",9331],"9f1290f8":[()=>n.e(6102).then(n.bind(n,841)),"@site/docs/api/interfaces/DiscordEmitterPlugin.md",841],a0b9ee13:[()=>n.e(7557).then(n.bind(n,3045)),"@site/docs/api/interfaces/SernEventCommand.md",3045],a0fd2c7a:[()=>n.e(7767).then(n.bind(n,8787)),"@site/docs/api/interfaces/DiscordEventCommand.md",8787],a3030d1c:[()=>n.e(5776).then(n.bind(n,577)),"@site/docs/api/interfaces/ModuleManager.md",577],a4d0ee3e:[()=>n.e(2014).then(n.bind(n,6091)),"@site/docs/api/interfaces/MentionableSelectCommand.md",6091],a5467962:[()=>n.e(2831).then(n.bind(n,4113)),"@site/docs/api/enums/CommandType.md",4113],a6aa9e1f:[()=>Promise.all([n.e(1869),n.e(7508),n.e(8645),n.e(8747),n.e(7643)]).then(n.bind(n,7785)),"@theme/BlogListPage",7785],a6d8dddc:[()=>n.e(3033).then(n.bind(n,9088)),"@site/docs/api/interfaces/CommandError.Response.md",9088],a7023ddc:[()=>n.e(9267).then(n.t.bind(n,8289,19)),"~blog/default/blog-tags-tags-4c2.json",8289],a727fde1:[()=>n.e(5342).then(n.bind(n,1438)),"@site/docs/api/interfaces/Init.md",1438],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,4532)),"@theme/DocVersionRoot",4532],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,2559)),"@theme/DocRoot",2559],a96c96b0:[()=>n.e(3295).then(n.bind(n,6829)),"@site/docs/guide/walkthrough/goal.md",6829],b134d7b8:[()=>n.e(5068).then(n.bind(n,9775)),"@site/docs/api/interfaces/SernEventsMapping.md",9775],b2b675dd:[()=>n.e(1991).then(n.t.bind(n,2156,19)),"~blog/default/blog-c06.json",2156],b2f554cd:[()=>n.e(5894).then(n.t.bind(n,6042,19)),"~blog/default/blog-archive-80c.json",6042],b654e1cf:[()=>n.e(5413).then(n.bind(n,9622)),"@site/blog/2023-7-4-mdx-blog-post.md",9622],b91ce718:[()=>n.e(2407).then(n.bind(n,1150)),"@site/docs/guide/walkthrough/services.md",1150],bcd9df7e:[()=>n.e(4793).then(n.bind(n,4837)),"@site/docs/api/classes/Context.md",4837],beef0c9d:[()=>n.e(497).then(n.bind(n,9898)),"@site/docs/api/enums/SernError.md",9898],c0846785:[()=>n.e(7318).then(n.bind(n,9350)),"@site/docs/api/classes/EventExecutable.md",9350],c0930fba:[()=>n.e(1703).then(n.bind(n,8450)),"@site/docs/guide/walkthrough/new-project.md",8450],c4348237:[()=>n.e(987).then(n.t.bind(n,4061,19)),"/home/runner/work/website/website/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",4061],c4f5d8e4:[()=>Promise.all([n.e(1869),n.e(2634)]).then(n.bind(n,8831)),"@site/src/pages/index.js",8831],c606405e:[()=>n.e(4448).then(n.bind(n,2368)),"@site/docs/api/interfaces/ExternalEventPlugin.md",2368],ccc49370:[()=>Promise.all([n.e(1869),n.e(7508),n.e(8645),n.e(8747),n.e(3249)]).then(n.bind(n,4029)),"@theme/BlogPostPage",4029],cf183316:[()=>n.e(152).then(n.bind(n,6137)),"@site/docs/guide/walkthrough/sern-emitter.md",6137],cfb1619e:[()=>n.e(6570).then(n.t.bind(n,2800,19)),"~blog/default/blog-tags-guides-c2f-list.json",2800],d9ea5336:[()=>n.e(2427).then(n.bind(n,2503)),"@site/docs/api/interfaces/Logging.md",2503],e04ffa77:[()=>n.e(3787).then(n.bind(n,6575)),"@site/docs/api/interfaces/DependencyConfiguration.md",6575],e2a53654:[()=>n.e(1292).then(n.bind(n,3500)),"@site/docs/api/interfaces/CommandPlugin.md",3500],e4877132:[()=>n.e(1196).then(n.bind(n,6617)),"@site/docs/api/enums/PluginType.md",6617],e84a24a4:[()=>n.e(1884).then(n.bind(n,3521)),"@site/docs/api/interfaces/Disposable.md",3521],e8e3d8c7:[()=>n.e(6526).then(n.bind(n,79)),"@site/docs/guide/walkthrough/first-event.md",79],edc18331:[()=>n.e(3595).then(n.bind(n,7411)),"@site/blog/2023-01-12-mdx-blog-post.md",7411],eea0bf40:[()=>n.e(198).then(n.bind(n,224)),"@site/docs/api/interfaces/Controller.md",224],f0726797:[()=>n.e(4244).then(n.bind(n,2054)),"@site/docs/api/interfaces/CoreModuleStore.md",2054],f1cc380d:[()=>n.e(7571).then(n.bind(n,556)),"@site/docs/api/classes/DefaultModuleManager.md",556],f6aebfbf:[()=>n.e(2649).then(n.bind(n,6976)),"@site/docs/api/modules.md",6976],f7831d67:[()=>n.e(9611).then(n.bind(n,4144)),"@site/blog/2022-09-30-mdx-blog-post.md",4144]};var l=n(4848);function s(e){let{error:t,retry:n,pastDelay:r}=e;return t?(0,l.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,l.jsx)("p",{children:String(t)}),(0,l.jsx)("div",{children:(0,l.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,l.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,l.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,l.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,l.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,l.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,l.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,l.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,l.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,l.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,l.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var c=n(6921),u=n(3102);function d(e,t){if("*"===e)return a()({loading:s,loader:()=>n.e(2237).then(n.bind(n,2237)),modules:["@theme/NotFound"],webpack:()=>[2237],render(e,t){const n=e.default;return(0,l.jsx)(u.W,{value:{plugin:{name:"native",id:"default"}},children:(0,l.jsx)(n,{...t})})}});const r=o[`${e}-${t}`],d={},p=[],f=[],m=(0,c.A)(r);return Object.entries(m).forEach((e=>{let[t,n]=e;const r=i[n];r&&(d[t]=r[0],p.push(r[1]),f.push(r[2]))})),a().Map({loading:s,loader:d,modules:p,webpack:()=>f,render(t,n){const a=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((t=>{let[n,r]=t;const o=r.default;if(!o)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof o&&"function"!=typeof o||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{o[e]=r[e]}));let i=a;const l=n.split(".");l.slice(0,-1).forEach((e=>{i=i[e]})),i[l[l.length-1]]=o}));const o=a.__comp;delete a.__comp;const i=a.__context;return delete a.__context,(0,l.jsx)(u.W,{value:i,children:(0,l.jsx)(o,{...a,...n})})}})}const p=[{path:"/blog",component:d("/blog","c3f"),exact:!0},{path:"/blog/1.2.0",component:d("/blog/1.2.0","cba"),exact:!0},{path:"/blog/2.0.0",component:d("/blog/2.0.0","c58"),exact:!0},{path:"/blog/2.5.0",component:d("/blog/2.5.0","a13"),exact:!0},{path:"/blog/3.0.0",component:d("/blog/3.0.0","24b"),exact:!0},{path:"/blog/archive",component:d("/blog/archive","825"),exact:!0},{path:"/blog/getting-started",component:d("/blog/getting-started","e5e"),exact:!0},{path:"/blog/newlogo",component:d("/blog/newlogo","346"),exact:!0},{path:"/blog/railway-deploy",component:d("/blog/railway-deploy","314"),exact:!0},{path:"/blog/tags",component:d("/blog/tags","61b"),exact:!0},{path:"/blog/tags/branding",component:d("/blog/tags/branding","298"),exact:!0},{path:"/blog/tags/guides",component:d("/blog/tags/guides","a8b"),exact:!0},{path:"/blog/tags/release",component:d("/blog/tags/release","bce"),exact:!0},{path:"/markdown-page",component:d("/markdown-page","494"),exact:!0},{path:"/plugins",component:d("/plugins","bcd"),exact:!0},{path:"/search",component:d("/search","c0c"),exact:!0},{path:"/sponsors",component:d("/sponsors","492"),exact:!0},{path:"/docs",component:d("/docs","670"),routes:[{path:"/docs",component:d("/docs","9c0"),routes:[{path:"/docs",component:d("/docs","78c"),routes:[{path:"/docs/api",component:d("/docs/api","c13"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/CommandExecutable",component:d("/docs/api/classes/CommandExecutable","574"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/Context",component:d("/docs/api/classes/Context","d4a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/DefaultErrorHandling",component:d("/docs/api/classes/DefaultErrorHandling","884"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/DefaultLogging",component:d("/docs/api/classes/DefaultLogging","bb9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/DefaultModuleManager",component:d("/docs/api/classes/DefaultModuleManager","46e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/EventExecutable",component:d("/docs/api/classes/EventExecutable","494"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/ModuleStore",component:d("/docs/api/classes/ModuleStore","14f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/classes/SernEmitter",component:d("/docs/api/classes/SernEmitter","a53"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/enums/CommandType",component:d("/docs/api/enums/CommandType","f9d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/enums/EventType",component:d("/docs/api/enums/EventType","a4e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/enums/PayloadType",component:d("/docs/api/enums/PayloadType","ea7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/enums/PluginType",component:d("/docs/api/enums/PluginType","36e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/enums/SernError",component:d("/docs/api/enums/SernError","992"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/AutocompleteCommand",component:d("/docs/api/interfaces/AutocompleteCommand","4b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/AutocompletePlugin",component:d("/docs/api/interfaces/AutocompletePlugin","3f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/BothCommand",component:d("/docs/api/interfaces/BothCommand","f15"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ButtonCommand",component:d("/docs/api/interfaces/ButtonCommand","78e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ChannelSelectCommand",component:d("/docs/api/interfaces/ChannelSelectCommand","c48"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/CommandError.Response",component:d("/docs/api/interfaces/CommandError.Response","ff6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/CommandModuleDefs",component:d("/docs/api/interfaces/CommandModuleDefs","8c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/CommandPlugin",component:d("/docs/api/interfaces/CommandPlugin","b30"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ContextMenuMsg",component:d("/docs/api/interfaces/ContextMenuMsg","33e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ContextMenuUser",component:d("/docs/api/interfaces/ContextMenuUser","385"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Controller",component:d("/docs/api/interfaces/Controller","6fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ControlPlugin",component:d("/docs/api/interfaces/ControlPlugin","e8b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/CoreDependencies",component:d("/docs/api/interfaces/CoreDependencies","551"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/CoreModuleStore",component:d("/docs/api/interfaces/CoreModuleStore","41c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Dependencies",component:d("/docs/api/interfaces/Dependencies","464"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/DependencyConfiguration",component:d("/docs/api/interfaces/DependencyConfiguration","689"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/DiscordEmitterPlugin",component:d("/docs/api/interfaces/DiscordEmitterPlugin","338"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/DiscordEventCommand",component:d("/docs/api/interfaces/DiscordEventCommand","777"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/DiscordEventPlugin",component:d("/docs/api/interfaces/DiscordEventPlugin","36b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Disposable",component:d("/docs/api/interfaces/Disposable","8a6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Emitter",component:d("/docs/api/interfaces/Emitter","2f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ErrorHandling",component:d("/docs/api/interfaces/ErrorHandling","410"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/EventModuleDefs",component:d("/docs/api/interfaces/EventModuleDefs","628"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/EventPlugin",component:d("/docs/api/interfaces/EventPlugin","d00"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ExternalEmitterPlugin",component:d("/docs/api/interfaces/ExternalEmitterPlugin","506"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ExternalEventCommand",component:d("/docs/api/interfaces/ExternalEventCommand","7fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ExternalEventPlugin",component:d("/docs/api/interfaces/ExternalEventPlugin","c5f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Init",component:d("/docs/api/interfaces/Init","bc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/InitArgs",component:d("/docs/api/interfaces/InitArgs","2c6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/InitPlugin",component:d("/docs/api/interfaces/InitPlugin","aa5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Logging",component:d("/docs/api/interfaces/Logging","f18"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/MentionableSelectCommand",component:d("/docs/api/interfaces/MentionableSelectCommand","4f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ModalSubmitCommand",component:d("/docs/api/interfaces/ModalSubmitCommand","26c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Module",component:d("/docs/api/interfaces/Module","83e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/ModuleManager",component:d("/docs/api/interfaces/ModuleManager","f0d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Plugin",component:d("/docs/api/interfaces/Plugin","252"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Presence.Result",component:d("/docs/api/interfaces/Presence.Result","e30"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/RoleSelectCommand",component:d("/docs/api/interfaces/RoleSelectCommand","9af"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernAutocompleteData",component:d("/docs/api/interfaces/SernAutocompleteData","548"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernEmitterPlugin",component:d("/docs/api/interfaces/SernEmitterPlugin","74c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernEventCommand",component:d("/docs/api/interfaces/SernEventCommand","912"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernEventPlugin",component:d("/docs/api/interfaces/SernEventPlugin","beb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernEventsMapping",component:d("/docs/api/interfaces/SernEventsMapping","aaa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernSubCommandData",component:d("/docs/api/interfaces/SernSubCommandData","650"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SernSubCommandGroupData",component:d("/docs/api/interfaces/SernSubCommandGroupData","b36"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/SlashCommand",component:d("/docs/api/interfaces/SlashCommand","b56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/StringSelectCommand",component:d("/docs/api/interfaces/StringSelectCommand","f54"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/TextCommand",component:d("/docs/api/interfaces/TextCommand","8f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/UserSelectCommand",component:d("/docs/api/interfaces/UserSelectCommand","3d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/interfaces/Wrapper",component:d("/docs/api/interfaces/Wrapper","cc3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/modules",component:d("/docs/api/modules","98a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/namespaces/CommandError",component:d("/docs/api/namespaces/CommandError","a99"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/namespaces/Presence",component:d("/docs/api/namespaces/Presence","fcf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/api/namespaces/Sern",component:d("/docs/api/namespaces/Sern","350"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/cli",component:d("/docs/cli","1d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/cli/build",component:d("/docs/cli/build","d03"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/cli/clear",component:d("/docs/cli/clear","862"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/cli/extra",component:d("/docs/cli/extra","886"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/cli/publish",component:d("/docs/cli/publish","133"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide",component:d("/docs/guide","f2d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/getting-started/choose-ide",component:d("/docs/guide/getting-started/choose-ide","2c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/getting-started/preparing",component:d("/docs/guide/getting-started/preparing","c46"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/autocomplete",component:d("/docs/guide/walkthrough/autocomplete","97f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/cli",component:d("/docs/guide/walkthrough/cli","6dc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/conclusion",component:d("/docs/guide/walkthrough/conclusion","195"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/dependency-injection",component:d("/docs/guide/walkthrough/dependency-injection","c3d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/first-command",component:d("/docs/guide/walkthrough/first-command","1a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/first-event",component:d("/docs/guide/walkthrough/first-event","218"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/goal",component:d("/docs/guide/walkthrough/goal","ed0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/good-to-know",component:d("/docs/guide/walkthrough/good-to-know","7b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/new-project",component:d("/docs/guide/walkthrough/new-project","20b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/plugins",component:d("/docs/guide/walkthrough/plugins","63f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/sern-emitter",component:d("/docs/guide/walkthrough/sern-emitter","200"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/services",component:d("/docs/guide/walkthrough/services","b7d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/guide/walkthrough/transition",component:d("/docs/guide/walkthrough/transition","ac6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/docs/intro",component:d("/docs/intro","aed"),exact:!0,sidebar:"tutorialSidebar"}]}]}]},{path:"/",component:d("/","473"),exact:!0},{path:"*",component:d("*")}]},6125:(e,t,n)=>{"use strict";n.d(t,{o:()=>o,x:()=>i});var r=n(6540),a=n(4848);const o=r.createContext(!1);function i(e){let{children:t}=e;const[n,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{i(!0)}),[]),(0,a.jsx)(o.Provider,{value:n,children:t})}},8536:(e,t,n)=>{"use strict";var r=n(6540),a=n(5338),o=n(4625),i=n(545),l=n(8193);const s=[n(119),n(6134),n(6294),n(1043)];var c=n(8328),u=n(6347),d=n(2831),p=n(4848);function f(e){let{children:t}=e;return(0,p.jsx)(p.Fragment,{children:t})}var m=n(5260),h=n(4586),g=n(6025),b=n(6342),y=n(9024),v=n(2131),w=n(4090),k=n(2967),x=n(440),S=n(1463);function E(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,h.A)(),r=(0,v.o)(),a=n[e].htmlLang,o=e=>e.replace("-","_");return(0,p.jsxs)(m.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,p.jsx)("meta",{property:"og:locale",content:o(a)}),Object.values(n).filter((e=>a!==e.htmlLang)).map((e=>(0,p.jsx)("meta",{property:"og:locale:alternate",content:o(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function C(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,h.A)(),r=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,h.A)(),{pathname:r}=(0,u.zy)();return e+(0,x.applyTrailingSlash)((0,g.A)(r),{trailingSlash:n,baseUrl:t})}(),a=t?`${n}${t}`:r;return(0,p.jsxs)(m.A,{children:[(0,p.jsx)("meta",{property:"og:url",content:a}),(0,p.jsx)("link",{rel:"canonical",href:a})]})}function _(){const{i18n:{currentLocale:e}}=(0,h.A)(),{metadata:t,image:n}=(0,b.p)();return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(m.A,{children:[(0,p.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,p.jsx)("body",{className:w.w})]}),n&&(0,p.jsx)(y.be,{image:n}),(0,p.jsx)(C,{}),(0,p.jsx)(E,{}),(0,p.jsx)(S.A,{tag:k.Cy,locale:e}),(0,p.jsx)(m.A,{children:t.map(((e,t)=>(0,p.jsx)("meta",{...e},t)))})]})}const T=new Map;function A(e){if(T.has(e.pathname))return{...e,pathname:T.get(e.pathname)};if((0,d.u)(c.A,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return T.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return T.set(e.pathname,t),{...e,pathname:t}}var j=n(6125),P=n(6988),R=n(205);function L(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=>{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>a.forEach((e=>e?.()))}const N=function(e){let{children:t,location:n,previousLocation:r}=e;return(0,R.A)((()=>{r!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,a=t.hash===n.hash,o=t.search===n.search;if(r&&a&&!o)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:r}),L("onRouteDidUpdate",{previousLocation:r,location:n}))}),[r,n]),t};function D(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.u)(c.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class M extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=l.A.canUseDOM?L("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=L("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),D(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,p.jsx)(N,{previousLocation:this.previousLocation,location:t,children:(0,p.jsx)(u.qh,{location:t,render:()=>e})})}}const O=M,I="__docusaurus-base-url-issue-banner-container",F="__docusaurus-base-url-issue-banner",B="__docusaurus-base-url-issue-banner-suggestion-container";function z(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${I}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n<div id="${F}" 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="${B}" style="font-weight: bold; color: green;"></span></p>\n</div>\n`}(e)).replace(/</g,"\\<")};\n bannerContainer.innerHTML = bannerHtml;\n document.body.prepend(bannerContainer);\n var suggestionContainer = document.getElementById('${B}');\n var actualHomePagePath = window.location.pathname;\n var suggestedBaseUrl = actualHomePagePath.substr(-1) === '/'\n ? actualHomePagePath\n : actualHomePagePath + '/';\n suggestionContainer.innerHTML = suggestedBaseUrl;\n}\n`}function U(){const{siteConfig:{baseUrl:e}}=(0,h.A)();return(0,p.jsx)(p.Fragment,{children:!l.A.canUseDOM&&(0,p.jsx)(m.A,{children:(0,p.jsx)("script",{children:z(e)})})})}function $(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,h.A)(),{pathname:n}=(0,u.zy)();return t&&n===e?(0,p.jsx)(U,{}):null}function q(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:r,localeConfigs:a}}=(0,h.A)(),o=(0,g.A)(e),{htmlLang:i,direction:l}=a[r];return(0,p.jsxs)(m.A,{children:[(0,p.jsx)("html",{lang:i,dir:l}),(0,p.jsx)("title",{children:t}),(0,p.jsx)("meta",{property:"og:title",content:t}),(0,p.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&(0,p.jsx)("meta",{name:"robots",content:"noindex, nofollow"}),e&&(0,p.jsx)("link",{rel:"icon",href:o})]})}var H=n(7489),G=n(2303);function W(){const e=(0,G.A)();return(0,p.jsx)(m.A,{children:(0,p.jsx)("html",{"data-has-hydrated":e})})}function V(){const e=(0,d.v)(c.A),t=(0,u.zy)();return(0,p.jsx)(H.A,{children:(0,p.jsx)(P.l,{children:(0,p.jsxs)(j.x,{children:[(0,p.jsxs)(f,{children:[(0,p.jsx)(q,{}),(0,p.jsx)(_,{}),(0,p.jsx)($,{}),(0,p.jsx)(O,{location:A(t),children:e})]}),(0,p.jsx)(W,{})]})})})}var K=n(4054);const Q=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const a=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;a?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var Y=n(6921);const Z=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ee={prefetch(e){if(!(e=>!J()&&!X.has(e)&&!Z.has(e))(e))return!1;Z.add(e);const t=(0,d.u)(c.A,e).flatMap((e=>{return t=e.route.path,Object.entries(K).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Y.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Q(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),D(e))},te=Object.freeze(ee),ne=Boolean(!0);if(l.A.canUseDOM){window.docusaurus=te;const e=document.getElementById("__docusaurus"),t=(0,p.jsx)(i.vd,{children:(0,p.jsx)(o.Kd,{children:(0,p.jsx)(V,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},l=()=>{if(ne)r.startTransition((()=>{a.hydrateRoot(e,t,{onRecoverableError:n})}));else{const o=a.createRoot(e,{onRecoverableError:n});r.startTransition((()=>{o.render(t)}))}};D(window.location.pathname).then(l)}},6988:(e,t,n)=>{"use strict";n.d(t,{o:()=>d,l:()=>p});var r=n(6540),a=n(4784);const o=JSON.parse('{"docusaurus-plugin-umami":{"default":{"websiteID":"e82ff65c-b08f-47b5-8e74-5c31cbcec0ad","analyticsDomain":"analytics.srizan.dev","scriptName":"ua.js","dataAutoTrack":true,"dataDoNotTrack":true,"dataCache":true,"dataDomains":"sern.dev","id":"default"}},"docusaurus-plugin-content-docs":{"default":{"path":"/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs","mainDocId":"api/index","docs":[{"id":"api/classes/CommandExecutable","path":"/docs/api/classes/CommandExecutable","sidebar":"tutorialSidebar"},{"id":"api/classes/Context","path":"/docs/api/classes/Context","sidebar":"tutorialSidebar"},{"id":"api/classes/DefaultErrorHandling","path":"/docs/api/classes/DefaultErrorHandling","sidebar":"tutorialSidebar"},{"id":"api/classes/DefaultLogging","path":"/docs/api/classes/DefaultLogging","sidebar":"tutorialSidebar"},{"id":"api/classes/DefaultModuleManager","path":"/docs/api/classes/DefaultModuleManager","sidebar":"tutorialSidebar"},{"id":"api/classes/EventExecutable","path":"/docs/api/classes/EventExecutable","sidebar":"tutorialSidebar"},{"id":"api/classes/ModuleStore","path":"/docs/api/classes/ModuleStore","sidebar":"tutorialSidebar"},{"id":"api/classes/SernEmitter","path":"/docs/api/classes/SernEmitter","sidebar":"tutorialSidebar"},{"id":"api/enums/CommandType","path":"/docs/api/enums/CommandType","sidebar":"tutorialSidebar"},{"id":"api/enums/EventType","path":"/docs/api/enums/EventType","sidebar":"tutorialSidebar"},{"id":"api/enums/PayloadType","path":"/docs/api/enums/PayloadType","sidebar":"tutorialSidebar"},{"id":"api/enums/PluginType","path":"/docs/api/enums/PluginType","sidebar":"tutorialSidebar"},{"id":"api/enums/SernError","path":"/docs/api/enums/SernError","sidebar":"tutorialSidebar"},{"id":"api/index","path":"/docs/api/","sidebar":"tutorialSidebar"},{"id":"api/interfaces/AutocompleteCommand","path":"/docs/api/interfaces/AutocompleteCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/AutocompletePlugin","path":"/docs/api/interfaces/AutocompletePlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/BothCommand","path":"/docs/api/interfaces/BothCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ButtonCommand","path":"/docs/api/interfaces/ButtonCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ChannelSelectCommand","path":"/docs/api/interfaces/ChannelSelectCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/CommandError.Response","path":"/docs/api/interfaces/CommandError.Response","sidebar":"tutorialSidebar"},{"id":"api/interfaces/CommandModuleDefs","path":"/docs/api/interfaces/CommandModuleDefs","sidebar":"tutorialSidebar"},{"id":"api/interfaces/CommandPlugin","path":"/docs/api/interfaces/CommandPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ContextMenuMsg","path":"/docs/api/interfaces/ContextMenuMsg","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ContextMenuUser","path":"/docs/api/interfaces/ContextMenuUser","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Controller","path":"/docs/api/interfaces/Controller","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ControlPlugin","path":"/docs/api/interfaces/ControlPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/CoreDependencies","path":"/docs/api/interfaces/CoreDependencies","sidebar":"tutorialSidebar"},{"id":"api/interfaces/CoreModuleStore","path":"/docs/api/interfaces/CoreModuleStore","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Dependencies","path":"/docs/api/interfaces/Dependencies","sidebar":"tutorialSidebar"},{"id":"api/interfaces/DependencyConfiguration","path":"/docs/api/interfaces/DependencyConfiguration","sidebar":"tutorialSidebar"},{"id":"api/interfaces/DiscordEmitterPlugin","path":"/docs/api/interfaces/DiscordEmitterPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/DiscordEventCommand","path":"/docs/api/interfaces/DiscordEventCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/DiscordEventPlugin","path":"/docs/api/interfaces/DiscordEventPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Disposable","path":"/docs/api/interfaces/Disposable","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Emitter","path":"/docs/api/interfaces/Emitter","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ErrorHandling","path":"/docs/api/interfaces/ErrorHandling","sidebar":"tutorialSidebar"},{"id":"api/interfaces/EventModuleDefs","path":"/docs/api/interfaces/EventModuleDefs","sidebar":"tutorialSidebar"},{"id":"api/interfaces/EventPlugin","path":"/docs/api/interfaces/EventPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ExternalEmitterPlugin","path":"/docs/api/interfaces/ExternalEmitterPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ExternalEventCommand","path":"/docs/api/interfaces/ExternalEventCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ExternalEventPlugin","path":"/docs/api/interfaces/ExternalEventPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Init","path":"/docs/api/interfaces/Init","sidebar":"tutorialSidebar"},{"id":"api/interfaces/InitArgs","path":"/docs/api/interfaces/InitArgs","sidebar":"tutorialSidebar"},{"id":"api/interfaces/InitPlugin","path":"/docs/api/interfaces/InitPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Logging","path":"/docs/api/interfaces/Logging","sidebar":"tutorialSidebar"},{"id":"api/interfaces/MentionableSelectCommand","path":"/docs/api/interfaces/MentionableSelectCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ModalSubmitCommand","path":"/docs/api/interfaces/ModalSubmitCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Module","path":"/docs/api/interfaces/Module","sidebar":"tutorialSidebar"},{"id":"api/interfaces/ModuleManager","path":"/docs/api/interfaces/ModuleManager","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Plugin","path":"/docs/api/interfaces/Plugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Presence.Result","path":"/docs/api/interfaces/Presence.Result","sidebar":"tutorialSidebar"},{"id":"api/interfaces/RoleSelectCommand","path":"/docs/api/interfaces/RoleSelectCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernAutocompleteData","path":"/docs/api/interfaces/SernAutocompleteData","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernEmitterPlugin","path":"/docs/api/interfaces/SernEmitterPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernEventCommand","path":"/docs/api/interfaces/SernEventCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernEventPlugin","path":"/docs/api/interfaces/SernEventPlugin","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernEventsMapping","path":"/docs/api/interfaces/SernEventsMapping","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernSubCommandData","path":"/docs/api/interfaces/SernSubCommandData","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SernSubCommandGroupData","path":"/docs/api/interfaces/SernSubCommandGroupData","sidebar":"tutorialSidebar"},{"id":"api/interfaces/SlashCommand","path":"/docs/api/interfaces/SlashCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/StringSelectCommand","path":"/docs/api/interfaces/StringSelectCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/TextCommand","path":"/docs/api/interfaces/TextCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/UserSelectCommand","path":"/docs/api/interfaces/UserSelectCommand","sidebar":"tutorialSidebar"},{"id":"api/interfaces/Wrapper","path":"/docs/api/interfaces/Wrapper","sidebar":"tutorialSidebar"},{"id":"api/modules","path":"/docs/api/modules","sidebar":"tutorialSidebar"},{"id":"api/namespaces/CommandError","path":"/docs/api/namespaces/CommandError","sidebar":"tutorialSidebar"},{"id":"api/namespaces/Presence","path":"/docs/api/namespaces/Presence","sidebar":"tutorialSidebar"},{"id":"api/namespaces/Sern","path":"/docs/api/namespaces/Sern","sidebar":"tutorialSidebar"},{"id":"cli/build","path":"/docs/cli/build","sidebar":"tutorialSidebar"},{"id":"cli/clear","path":"/docs/cli/clear","sidebar":"tutorialSidebar"},{"id":"cli/extra","path":"/docs/cli/extra","sidebar":"tutorialSidebar"},{"id":"cli/publish","path":"/docs/cli/publish","sidebar":"tutorialSidebar"},{"id":"cli/README","path":"/docs/cli/","sidebar":"tutorialSidebar"},{"id":"guide/getting-started/choose-ide","path":"/docs/guide/getting-started/choose-ide","sidebar":"tutorialSidebar"},{"id":"guide/getting-started/preparing","path":"/docs/guide/getting-started/preparing","sidebar":"tutorialSidebar"},{"id":"guide/README","path":"/docs/guide/","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/autocomplete","path":"/docs/guide/walkthrough/autocomplete","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/cli","path":"/docs/guide/walkthrough/cli","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/conclusion","path":"/docs/guide/walkthrough/conclusion","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/dependency-injection","path":"/docs/guide/walkthrough/dependency-injection","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/first-command","path":"/docs/guide/walkthrough/first-command","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/first-event","path":"/docs/guide/walkthrough/first-event","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/goal","path":"/docs/guide/walkthrough/goal","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/good-to-know","path":"/docs/guide/walkthrough/good-to-know","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/new-project","path":"/docs/guide/walkthrough/new-project","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/plugins","path":"/docs/guide/walkthrough/plugins","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/sern-emitter","path":"/docs/guide/walkthrough/sern-emitter","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/services","path":"/docs/guide/walkthrough/services","sidebar":"tutorialSidebar"},{"id":"guide/walkthrough/transition","path":"/docs/guide/walkthrough/transition","sidebar":"tutorialSidebar"},{"id":"intro","path":"/docs/intro","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/docs/api/","label":"API"}}}}],"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(2654);const s=JSON.parse('{"docusaurusVersion":"3.0.0","siteVersion":"1.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.0.0"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.0.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.0.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.0.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.0.0"},"docusaurus-theme-search-algolia":{"type":"package","name":"@docusaurus/theme-search-algolia","version":"3.0.0"},"docusaurus-plugin-umami":{"type":"package","name":"@dipakparmar/docusaurus-plugin-umami","version":"2.1.4"}}}');var c=n(4848);const u={siteConfig:a.default,siteMetadata:s,globalData:o,i18n:i,codeTranslations:l},d=r.createContext(u);function p(e){let{children:t}=e;return(0,c.jsx)(d.Provider,{value:u,children:t})}},7489:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});var r=n(6540),a=n(8193),o=n(5260),i=n(440),l=n(8511),s=n(4848);function c(e){let{error:t,tryAgain:n}=e;return(0,s.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,s.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,s.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,s.jsx)(u,{error:t})]})}function u(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,s.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function d(e){let{error:t,tryAgain:n}=e;return(0,s.jsxs)(f,{fallback:()=>(0,s.jsx)(c,{error:t,tryAgain:n}),children:[(0,s.jsx)(o.A,{children:(0,s.jsx)("title",{children:"Page Error"})}),(0,s.jsx)(l.A,{children:(0,s.jsx)(c,{error:t,tryAgain:n})})]})}const p=e=>(0,s.jsx)(d,{...e});class f extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??p)(e)}return e??null}}},8193:(e,t,n)=>{"use strict";n.d(t,{A:()=>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}},5260:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(6540);var r=n(545),a=n(4848);function o(e){return(0,a.jsx)(r.mg,{...e})}},5489:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});var r=n(6540),a=n(4625),o=n(440),i=n(4586),l=n(6654),s=n(8193),c=n(4848);const u=r.createContext({collectLink:()=>{}});var d=n(6025);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:m,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:b=!0,...y}=e;const{siteConfig:{trailingSlash:v,baseUrl:w}}=(0,i.A)(),{withBaseUrl:k}=(0,d.h)(),x=(0,r.useContext)(u),S=(0,r.useRef)(null);(0,r.useImperativeHandle)(t,(()=>S.current));const E=p||f;const C=(0,l.A)(E),_=E?.replace("pathname://","");let T=void 0!==_?(A=_,b&&(e=>e.startsWith("/"))(A)?k(A):A):void 0;var A;T&&C&&(T=(0,o.applyTrailingSlash)(T,{trailingSlash:v,baseUrl:w}));const j=(0,r.useRef)(!1),P=n?a.k2:a.N_,R=s.A.canUseIntersectionObserver,L=(0,r.useRef)(),N=()=>{j.current||null==T||(window.docusaurus.preload(T),j.current=!0)};(0,r.useEffect)((()=>(!R&&C&&null!=T&&window.docusaurus.prefetch(T),()=>{R&&L.current&&L.current.disconnect()})),[L,T,R,C]);const D=T?.startsWith("#")??!1,M=!T||!C||D;return M||g||x.collectLink(T),M?(0,c.jsx)("a",{ref:S,href:T,...E&&!C&&{target:"_blank",rel:"noopener noreferrer"},...y}):(0,c.jsx)(P,{...y,onMouseEnter:N,onTouchStart:N,innerRef:e=>{S.current=e,R&&e&&C&&(L.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(L.current.unobserve(e),L.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),L.current.observe(e))},to:T,...n&&{isActive:h,activeClassName:m}})}const f=r.forwardRef(p)},1312:(e,t,n)=>{"use strict";n.d(t,{A:()=>c,T:()=>s});var r=n(6540),a=n(4848);function o(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var i=n(2654);function l(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return i[t??n]??n??t}function s(e,t){let{message:n,id:r}=e;return o(l({message:n,id:r}),t)}function c(e){let{children:t,id:n,values:r}=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 i=l({message:t,id:n});return(0,a.jsx)(a.Fragment,{children:o(i,r)})}},7065:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});const r="default"},6654:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function a(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>a,z:()=>r})},6025:(e,t,n)=>{"use strict";n.d(t,{A:()=>l,h:()=>i});var r=n(6540),a=n(4586),o=n(6654);function i(){const{siteConfig:{baseUrl:e,url:t}}=(0,a.A)(),n=(0,r.useCallback)(((n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:a=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,o.z)(n))return n;if(a)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const l=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+l:l}(t,e,n,r)),[t,e]);return{withBaseUrl:n}}function l(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},4586:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(6540),a=n(6988);function o(){return(0,r.useContext)(a.o)}},2303:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(6540),a=n(6125);function o(){return(0,r.useContext)(a.o)}},205:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(6540);const a=n(8193).A.canUseDOM?r.useLayoutEffect:r.useEffect},6921:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function a(e){const t={};return function e(n,a){Object.entries(n).forEach((n=>{let[o,i]=n;const l=a?`${a}.${o}`:o;r(i)?e(i,l):t[l]=i}))}(e),t}},3102:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>o});var r=n(6540),a=n(4848);const o=r.createContext(null);function i(e){let{children:t,value:n}=e;const i=r.useContext(o),l=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:i,value:n})),[i,n]);return(0,a.jsx)(o.Provider,{value:l,children:t})}},4070:(e,t,n)=>{"use strict";n.d(t,{zK:()=>b,vT:()=>f,gk:()=>m,Gy:()=>d,HW:()=>y,ht:()=>p,r7:()=>g,jh:()=>h});var r=n(6347),a=n(4586),o=n(7065);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,a.A)();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=l(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}function c(e,t){const n=s(e,t),a=n?.docs.find((e=>!!(0,r.B6)(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={},d=()=>i("docusaurus-plugin-content-docs")??u,p=e=>function(e,t,n){void 0===t&&(t=o.W),void 0===n&&(n={});const r=i(e),a=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=d(),{pathname:n}=(0,r.zy)();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.B6)(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 m(e){void 0===e&&(e={});const t=f(e),{pathname:n}=(0,r.zy)();if(!t)return;return{activePlugin:t,activeVersion:s(t.pluginData,n)}}function h(e){return p(e).versions}function g(e){const t=p(e);return l(t)}function b(e){const t=p(e),{pathname:n}=(0,r.zy)();return c(t,n)}function y(e){const t=p(e),{pathname:n}=(0,r.zy)();return function(e,t){const n=l(e);return{latestDocSuggestion:c(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},6294:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>o});var r=n(5947),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()}}},6134:(e,t,n)=>{"use strict";n.r(t);var r=n(8181),a=n(4784);!function(e){const{themeConfig:{prism:t}}=a.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{"php"===e&&n(9700),n(8692)(`./prism-${e}`)})),delete globalThis.Prism}(r.My)},1107:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});n(6540);var r=n(53),a=n(1312),o=n(6342),i=n(5489);const l={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var s=n(4848);function c(e){let{as:t,id:n,...c}=e;const{navbar:{hideOnScroll:u}}=(0,o.p)();if("h1"===t||!n)return(0,s.jsx)(t,{...c,id:void 0});const d=(0,a.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof c.children?c.children:n});return(0,s.jsxs)(t,{...c,className:(0,r.A)("anchor",u?l.anchorWithHideOnScrollNavbar:l.anchorWithStickyNavbar,c.className),id:n,children:[c.children,(0,s.jsx)(i.A,{className:"hash-link",to:`#${n}`,"aria-label":d,title:d,children:"\u200b"})]})}},3186:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(6540);const r={iconExternalLink:"iconExternalLink_nPIU"};var a=n(4848);function o(e){let{width:t=13.5,height:n=13.5}=e;return(0,a.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,a.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},8511:(e,t,n)=>{"use strict";n.d(t,{A:()=>Lt});var r=n(6540),a=n(53),o=n(7489),i=n(9024),l=n(6347),s=n(1312),c=n(5062),u=n(4848);const d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,l.W6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,c.$)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const m=(0,s.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??m,{containerRef:n,onClick:r}=f();return(0,u.jsx)("div",{ref:n,role:"region","aria-label":m,children:(0,u.jsx)("a",{...e,href:`#${d}`,onClick:r,children:t})})}var g=n(7559),b=n(4090);const y={skipToContent:"skipToContent_fXgn"};function v(){return(0,u.jsx)(h,{className:y.skipToContent})}var w=n(6342),k=n(5041);function x(e){let{width:t=21,height:n=21,color:r="currentColor",strokeWidth:a=1.2,className:o,...i}=e;return(0,u.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...i,children:(0,u.jsx)("g",{stroke:r,strokeWidth:a,children:(0,u.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const S={closeButton:"closeButton_CVFx"};function E(e){return(0,u.jsx)("button",{type:"button","aria-label":(0,s.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,a.A)("clean-btn close",S.closeButton,e.className),children:(0,u.jsx)(x,{width:14,height:14,strokeWidth:3.1})})}const C={content:"content_knG7"};function _(e){const{announcementBar:t}=(0,w.p)(),{content:n}=t;return(0,u.jsx)("div",{...e,className:(0,a.A)(C.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const T={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function A(){const{announcementBar:e}=(0,w.p)(),{isActive:t,close:n}=(0,k.Mj)();if(!t)return null;const{backgroundColor:r,textColor:a,isCloseable:o}=e;return(0,u.jsxs)("div",{className:T.announcementBar,style:{backgroundColor:r,color:a},role:"banner",children:[o&&(0,u.jsx)("div",{className:T.announcementBarPlaceholder}),(0,u.jsx)(_,{className:T.announcementBarContent}),o&&(0,u.jsx)(E,{onClick:n,className:T.announcementBarClose})]})}var j=n(2069),P=n(3104);var R=n(9532),L=n(5600);const N=r.createContext(null);function D(e){let{children:t}=e;const n=function(){const e=(0,j.M)(),t=(0,L.YL)(),[n,a]=(0,r.useState)(!1),o=null!==t.component,i=(0,R.ZC)(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(0,u.jsx)(N.Provider,{value:n,children:t})}function M(e){if(e.component){const t=e.component;return(0,u.jsx)(t,{...e.props})}}function O(){const e=(0,r.useContext)(N);if(!e)throw new R.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,a=(0,r.useCallback)((()=>n(!1)),[n]),o=(0,L.YL)();return(0,r.useMemo)((()=>({shown:t,hide:a,content:M(o)})),[a,o,t])}function I(e){let{header:t,primaryMenu:n,secondaryMenu:r}=e;const{shown:o}=O();return(0,u.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,u.jsxs)("div",{className:(0,a.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":o}),children:[(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var F=n(5293),B=n(2303);function z(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function U(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:r,onChange:o}=e;const i=(0,B.A)(),l=(0,s.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===r?(0,s.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,s.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,u.jsx)("div",{className:(0,a.A)($.toggle,t),children:(0,u.jsxs)("button",{className:(0,a.A)("clean-btn",$.toggleButton,!i&&$.toggleButtonDisabled,n),type:"button",onClick:()=>o("dark"===r?"light":"dark"),disabled:!i,title:l,"aria-label":l,"aria-live":"polite",children:[(0,u.jsx)(z,{className:(0,a.A)($.toggleIcon,$.lightToggleIcon)}),(0,u.jsx)(U,{className:(0,a.A)($.toggleIcon,$.darkToggleIcon)})]})})}const H=r.memo(q),G={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function W(e){let{className:t}=e;const n=(0,w.p)().navbar.style,r=(0,w.p)().colorMode.disableSwitch,{colorMode:a,setColorMode:o}=(0,F.G)();return r?null:(0,u.jsx)(H,{className:t,buttonClassName:"dark"===n?G.darkNavbarColorModeToggle:void 0,value:a,onChange:o})}var V=n(3465);function K(){return(0,u.jsx)(V.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Q(){const e=(0,j.M)();return(0,u.jsx)("button",{type:"button","aria-label":(0,s.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,u.jsx)(x,{color:"var(--ifm-color-emphasis-600)"})})}function Y(){return(0,u.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,u.jsx)(K,{}),(0,u.jsx)(W,{className:"margin-right--md"}),(0,u.jsx)(Q,{})]})}var Z=n(5489),X=n(6025),J=n(6654),ee=n(1252),te=n(3186);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:r,href:a,label:o,html:i,isDropdownLink:l,prependBaseUrlToHref:s,...c}=e;const d=(0,X.A)(r),p=(0,X.A)(t),f=(0,X.A)(a,{forcePrependBaseUrl:!0}),m=o&&a&&!(0,J.A)(a),h=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,u.jsxs)(u.Fragment,{children:[o,m&&(0,u.jsx)(te.A,{...l&&{width:12,height:12}})]})};return a?(0,u.jsx)(Z.A,{href:s?f:a,...c,...h}):(0,u.jsx)(Z.A,{to:d,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?(0,ee.G)(n,t.pathname):t.pathname.startsWith(p)},...c,...h})}function re(e){let{className:t,isDropdownItem:n=!1,...r}=e;const o=(0,u.jsx)(ne,{className:(0,a.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...r});return n?(0,u.jsx)("li",{children:o}):o}function ae(e){let{className:t,isDropdownItem:n,...r}=e;return(0,u.jsx)("li",{className:"menu__list-item",children:(0,u.jsx)(ne,{className:(0,a.A)("menu__link",t),...r})})}function oe(e){let{mobile:t=!1,position:n,...r}=e;const a=t?ae:re;return(0,u.jsx)(a,{...r,activeClassName:r.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var ie=n(1422),le=n(9169),se=n(4586);function ce(e,t){return e.some((e=>function(e,t){return!!(0,le.ys)(e.to,t)||!!(0,ee.G)(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:o,onClick:i,...l}=e;const s=(0,r.useRef)(null),[c,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{s.current&&!s.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[s]),(0,u.jsxs)("div",{ref:s,className:(0,a.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":c}),children:[(0,u.jsx)(ne,{"aria-haspopup":"true","aria-expanded":c,role:"button",href:l.to?void 0:"#",className:(0,a.A)("navbar__link",o),...l,onClick:l.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!c))},children:l.children??l.label}),(0,u.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,r.createElement)(He,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function de(e){let{items:t,className:n,position:o,onClick:i,...s}=e;const c=function(){const{siteConfig:{baseUrl:e}}=(0,se.A)(),{pathname:t}=(0,l.zy)();return t.replace(e,"/")}(),d=ce(t,c),{collapsed:p,toggleCollapsed:f,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[c,d,m]),(0,u.jsxs)("li",{className:(0,a.A)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,u.jsx)(ne,{role:"button",className:(0,a.A)("menu__link menu__link--sublist menu__link--sublist-caret",n),...s,onClick:e=>{e.preventDefault(),f()},children:s.children??s.label}),(0,u.jsx)(ie.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,r.createElement)(He,{mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active",...e,key:t})))})]})}function pe(e){let{mobile:t=!1,...n}=e;const r=t?de:ue;return(0,u.jsx)(r,{...n})}var fe=n(2131);function me(e){let{width:t=20,height:n=20,...r}=e;return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...r,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const he="iconLanguage_nlXk";function ge(){return r.createElement("svg",{width:"15",height:"15",className:"DocSearch-Control-Key-Icon"},r.createElement("path",{d:"M4.505 4.496h2M5.505 5.496v5M8.216 4.496l.055 5.993M10 7.5c.333.333.5.667.5 1v2M12.326 4.5v5.996M8.384 4.496c1.674 0 2.116 0 2.116 1.5s-.442 1.5-2.116 1.5M3.205 9.303c-.09.448-.277 1.21-1.241 1.203C1 10.5.5 9.513.5 8V7c0-1.57.5-2.5 1.464-2.494.964.006 1.134.598 1.24 1.342M12.553 10.5h1.953",strokeWidth:"1.2",stroke:"currentColor",fill:"none",strokeLinecap:"square"}))}var be=n(9188),ye=["translations"];function ve(){return ve=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},ve.apply(this,arguments)}function we(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,a,o=[],i=!0,l=!1;try{for(n=n.call(e);!(i=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(s){l=!0,a=s}finally{try{i||null==n.return||n.return()}finally{if(l)throw a}}return o}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return ke(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ke(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ke(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function xe(e,t){if(null==e)return{};var n,r,a=function(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}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var Se="Ctrl";var Ee=r.forwardRef((function(e,t){var n=e.translations,a=void 0===n?{}:n,o=xe(e,ye),i=a.buttonText,l=void 0===i?"Search":i,s=a.buttonAriaLabel,c=void 0===s?"Search":s,u=we((0,r.useState)(null),2),d=u[0],p=u[1];return(0,r.useEffect)((function(){"undefined"!=typeof navigator&&(/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform)?p("\u2318"):p(Se))}),[]),r.createElement("button",ve({type:"button",className:"DocSearch DocSearch-Button","aria-label":c},o,{ref:t}),r.createElement("span",{className:"DocSearch-Button-Container"},r.createElement(be.W,null),r.createElement("span",{className:"DocSearch-Button-Placeholder"},l)),r.createElement("span",{className:"DocSearch-Button-Keys"},null!==d&&r.createElement(r.Fragment,null,r.createElement(Ce,{reactsToKey:d===Se?Se:"Meta"},d===Se?r.createElement(ge,null):d),r.createElement(Ce,{reactsToKey:"k"},"K"))))}));function Ce(e){var t=e.reactsToKey,n=e.children,a=we((0,r.useState)(!1),2),o=a[0],i=a[1];return(0,r.useEffect)((function(){if(t)return window.addEventListener("keydown",e),window.addEventListener("keyup",n),function(){window.removeEventListener("keydown",e),window.removeEventListener("keyup",n)};function e(e){e.key===t&&i(!0)}function n(e){e.key!==t&&"Meta"!==e.key||i(!1)}}),[t]),r.createElement("kbd",{className:o?"DocSearch-Button-Key DocSearch-Button-Key--pressed":"DocSearch-Button-Key"},n)}var _e=n(5260),Te=n(4255),Ae=n(1062),je=n(2967);var Pe=n(961);const Re={button:{buttonText:(0,s.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),buttonAriaLabel:(0,s.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"})},modal:{searchBox:{resetButtonTitle:(0,s.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),resetButtonAriaLabel:(0,s.T)({id:"theme.SearchModal.searchBox.resetButtonTitle",message:"Clear the query",description:"The label and ARIA label for search box reset button"}),cancelButtonText:(0,s.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"}),cancelButtonAriaLabel:(0,s.T)({id:"theme.SearchModal.searchBox.cancelButtonText",message:"Cancel",description:"The label and ARIA label for search box cancel button"})},startScreen:{recentSearchesTitle:(0,s.T)({id:"theme.SearchModal.startScreen.recentSearchesTitle",message:"Recent",description:"The title for recent searches"}),noRecentSearchesText:(0,s.T)({id:"theme.SearchModal.startScreen.noRecentSearchesText",message:"No recent searches",description:"The text when no recent searches"}),saveRecentSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.saveRecentSearchButtonTitle",message:"Save this search",description:"The label for save recent search button"}),removeRecentSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.removeRecentSearchButtonTitle",message:"Remove this search from history",description:"The label for remove recent search button"}),favoriteSearchesTitle:(0,s.T)({id:"theme.SearchModal.startScreen.favoriteSearchesTitle",message:"Favorite",description:"The title for favorite searches"}),removeFavoriteSearchButtonTitle:(0,s.T)({id:"theme.SearchModal.startScreen.removeFavoriteSearchButtonTitle",message:"Remove this search from favorites",description:"The label for remove favorite search button"})},errorScreen:{titleText:(0,s.T)({id:"theme.SearchModal.errorScreen.titleText",message:"Unable to fetch results",description:"The title for error screen of search modal"}),helpText:(0,s.T)({id:"theme.SearchModal.errorScreen.helpText",message:"You might want to check your network connection.",description:"The help text for error screen of search modal"})},footer:{selectText:(0,s.T)({id:"theme.SearchModal.footer.selectText",message:"to select",description:"The explanatory text of the action for the enter key"}),selectKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.selectKeyAriaLabel",message:"Enter key",description:"The ARIA label for the Enter key button that makes the selection"}),navigateText:(0,s.T)({id:"theme.SearchModal.footer.navigateText",message:"to navigate",description:"The explanatory text of the action for the Arrow up and Arrow down key"}),navigateUpKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.navigateUpKeyAriaLabel",message:"Arrow up",description:"The ARIA label for the Arrow up key button that makes the navigation"}),navigateDownKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.navigateDownKeyAriaLabel",message:"Arrow down",description:"The ARIA label for the Arrow down key button that makes the navigation"}),closeText:(0,s.T)({id:"theme.SearchModal.footer.closeText",message:"to close",description:"The explanatory text of the action for Escape key"}),closeKeyAriaLabel:(0,s.T)({id:"theme.SearchModal.footer.closeKeyAriaLabel",message:"Escape key",description:"The ARIA label for the Escape key button that close the modal"}),searchByText:(0,s.T)({id:"theme.SearchModal.footer.searchByText",message:"Search by",description:"The text explain that the search is making by Algolia"})},noResultsScreen:{noResultsText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.noResultsText",message:"No results for",description:"The text explains that there are no results for the following search"}),suggestedQueryText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.suggestedQueryText",message:"Try searching for",description:"The text for the suggested query when no results are found for the following search"}),reportMissingResultsText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsText",message:"Believe this query should return results?",description:"The text for the question where the user thinks there are missing results"}),reportMissingResultsLinkText:(0,s.T)({id:"theme.SearchModal.noResultsScreen.reportMissingResultsLinkText",message:"Let us know.",description:"The text for the link to report missing results"})}},placeholder:(0,s.T)({id:"theme.SearchModal.placeholder",message:"Search docs",description:"The placeholder of the input of the DocSearch pop-up modal"})};let Le=null;function Ne(e){let{hit:t,children:n}=e;return(0,u.jsx)(Z.A,{to:t.url,children:n})}function De(e){let{state:t,onClose:n}=e;const r=(0,Te.w)();return(0,u.jsx)(Z.A,{to:r(t.query),onClick:n,children:(0,u.jsx)(s.A,{id:"theme.SearchBar.seeAll",values:{count:t.context.nbHits},children:"See all {count} results"})})}function Me(e){let{contextualSearch:t,externalUrlRegex:a,...o}=e;const{siteMetadata:i}=(0,se.A)(),s=(0,Ae.C)(),c=function(){const{locale:e,tags:t}=(0,je.af)();return[`language:${e}`,t.map((e=>`docusaurus_tag:${e}`))]}(),d=o.searchParameters?.facetFilters??[],p=t?function(e,t){const n=e=>"string"==typeof e?[e]:e;return[...n(e),...n(t)]}(c,d):d,f={...o.searchParameters,facetFilters:p},m=(0,l.W6)(),h=(0,r.useRef)(null),g=(0,r.useRef)(null),[b,y]=(0,r.useState)(!1),[v,w]=(0,r.useState)(void 0),k=(0,r.useCallback)((()=>Le?Promise.resolve():Promise.all([n.e(9462).then(n.bind(n,9462)),Promise.all([n.e(1869),n.e(8913)]).then(n.bind(n,8913)),Promise.all([n.e(1869),n.e(416)]).then(n.bind(n,416))]).then((e=>{let[{DocSearchModal:t}]=e;Le=t}))),[]),x=(0,r.useCallback)((()=>{k().then((()=>{h.current=document.createElement("div"),document.body.insertBefore(h.current,document.body.firstChild),y(!0)}))}),[k,y]),S=(0,r.useCallback)((()=>{y(!1),h.current?.remove()}),[y]),E=(0,r.useCallback)((e=>{k().then((()=>{y(!0),w(e.key)}))}),[k,y,w]),C=(0,r.useRef)({navigate(e){let{itemUrl:t}=e;(0,ee.G)(a,t)?window.location.href=t:m.push(t)}}).current,_=(0,r.useRef)((e=>o.transformItems?o.transformItems(e):e.map((e=>({...e,url:s(e.url)}))))).current,T=(0,r.useMemo)((()=>e=>(0,u.jsx)(De,{...e,onClose:S})),[S]),A=(0,r.useCallback)((e=>(e.addAlgoliaAgent("docusaurus",i.docusaurusVersion),e)),[i.docusaurusVersion]);return function(e){var t=e.isOpen,n=e.onOpen,a=e.onClose,o=e.onInput,i=e.searchButtonRef;r.useEffect((function(){function e(e){var r;(27===e.keyCode&&t||"k"===(null===(r=e.key)||void 0===r?void 0:r.toLowerCase())&&(e.metaKey||e.ctrlKey)||!function(e){var t=e.target,n=t.tagName;return t.isContentEditable||"INPUT"===n||"SELECT"===n||"TEXTAREA"===n}(e)&&"/"===e.key&&!t)&&(e.preventDefault(),t?a():document.body.classList.contains("DocSearch--active")||document.body.classList.contains("DocSearch--active")||n()),i&&i.current===document.activeElement&&o&&/[a-zA-Z0-9]/.test(String.fromCharCode(e.keyCode))&&o(e)}return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[t,n,a,o,i])}({isOpen:b,onOpen:x,onClose:S,onInput:E,searchButtonRef:g}),(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(_e.A,{children:(0,u.jsx)("link",{rel:"preconnect",href:`https://${o.appId}-dsn.algolia.net`,crossOrigin:"anonymous"})}),(0,u.jsx)(Ee,{onTouchStart:k,onFocus:k,onMouseOver:k,onClick:x,ref:g,translations:Re.button}),b&&Le&&h.current&&(0,Pe.createPortal)((0,u.jsx)(Le,{onClose:S,initialScrollY:window.scrollY,initialQuery:v,navigator:C,transformItems:_,hitComponent:Ne,transformSearchClient:A,...o.searchPagePath&&{resultsFooterComponent:T},...o,searchParameters:f,placeholder:Re.placeholder,translations:Re.modal}),h.current)]})}function Oe(){const{siteConfig:e}=(0,se.A)();return(0,u.jsx)(Me,{...e.themeConfig.algolia})}const Ie={navbarSearchContainer:"navbarSearchContainer_Bca1"};function Fe(e){let{children:t,className:n}=e;return(0,u.jsx)("div",{className:(0,a.A)(n,Ie.navbarSearchContainer),children:t})}var Be=n(4070),ze=n(1754);var Ue=n(5597);const $e=e=>e.docs.find((t=>t.id===e.mainDocId));const qe={default:oe,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:r,queryString:a="",...o}=e;const{i18n:{currentLocale:i,locales:c,localeConfigs:d}}=(0,se.A)(),p=(0,fe.o)(),{search:f,hash:m}=(0,l.zy)(),h=[...n,...c.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${m}${a}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...r],g=t?(0,s.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return(0,u.jsx)(pe,{...o,mobile:t,label:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(me,{className:he}),g]}),items:h})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,u.jsx)(Fe,{className:n,children:(0,u.jsx)(Oe,{})})},dropdown:pe,html:function(e){let{value:t,className:n,mobile:r=!1,isDropdownItem:o=!1}=e;const i=o?"li":"div";return(0,u.jsx)(i,{className:(0,a.A)({navbar__item:!r&&!o,"menu__list-item":r},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:r,...a}=e;const{activeDoc:o}=(0,Be.zK)(r),i=(0,ze.QB)(t,r),l=o?.path===i?.path;return null===i||i.unlisted&&!l?null:(0,u.jsx)(oe,{exact:!0,...a,isActive:()=>l||!!o?.sidebar&&o.sidebar===i.sidebar,label:n??i.id,to:i.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:r,...a}=e;const{activeDoc:o}=(0,Be.zK)(r),i=(0,ze.fW)(t,r).link;if(!i)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,u.jsx)(oe,{exact:!0,...a,isActive:()=>o?.sidebar===t,label:n??i.label,to:i.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:r,...a}=e;const o=(0,ze.Vd)(r)[0],i=t??o.label,l=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(o).path;return(0,u.jsx)(oe,{...a,label:i,to:l})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:r,dropdownItemsBefore:a,dropdownItemsAfter:o,...i}=e;const{search:c,hash:d}=(0,l.zy)(),p=(0,Be.zK)(n),f=(0,Be.jh)(n),{savePreferredVersionName:m}=(0,Ue.g1)(n),h=[...a,...f.map((e=>{const t=p.alternateDocVersions[e.name]??$e(e);return{label:e.label,to:`${t.path}${c}${d}`,isActive:()=>e===p.activeVersion,onClick:()=>m(e.name)}})),...o],g=(0,ze.Vd)(n)[0],b=t&&h.length>1?(0,s.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):g.label,y=t&&h.length>1?void 0:$e(g).path;return h.length<=1?(0,u.jsx)(oe,{...i,mobile:t,label:b,to:y,isActive:r?()=>!1:void 0}):(0,u.jsx)(pe,{...i,mobile:t,label:b,to:y,items:h,isActive:r?()=>!1:void 0})}};function He(e){let{type:t,...n}=e;const r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),a=qe[r];if(!a)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,u.jsx)(a,{...n})}function Ge(){const e=(0,j.M)(),t=(0,w.p)().navbar.items;return(0,u.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,r.createElement)(He,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function We(e){return(0,u.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,u.jsx)(s.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function Ve(){const e=0===(0,w.p)().navbar.items.length,t=O();return(0,u.jsxs)(u.Fragment,{children:[!e&&(0,u.jsx)(We,{onClick:()=>t.hide()}),t.content]})}function Ke(){const e=(0,j.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,u.jsx)(I,{header:(0,u.jsx)(Y,{}),primaryMenu:(0,u.jsx)(Ge,{}),secondaryMenu:(0,u.jsx)(Ve,{})}):null}const Qe={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Ye(e){return(0,u.jsx)("div",{role:"presentation",...e,className:(0,a.A)("navbar-sidebar__backdrop",e.className)})}function Ze(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:o}}=(0,w.p)(),i=(0,j.M)(),{navbarRef:l,isNavbarVisible:d}=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,P.Mq)(((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=r?.scrollY,s=document.documentElement.scrollHeight-o.current,c=window.innerHeight;l&&i>=l?n(!1):i+c<s&&n(!0)})),(0,c.$)((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(0,u.jsxs)("nav",{ref:l,"aria-label":(0,s.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,a.A)("navbar","navbar--fixed-top",n&&[Qe.navbarHideable,!d&&Qe.navbarHidden],{"navbar--dark":"dark"===o,"navbar--primary":"primary"===o,"navbar-sidebar--show":i.shown}),children:[t,(0,u.jsx)(Ye,{onClick:i.toggle}),(0,u.jsx)(Ke,{})]})}var Xe=n(440);const Je={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function et(e){return(0,u.jsx)("button",{type:"button",...e,children:(0,u.jsx)(s.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function tt(e){let{error:t}=e;const n=(0,Xe.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,u.jsx)("p",{className:Je.errorBoundaryError,children:n})}class nt extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const rt="right";function at(e){let{width:t=30,height:n=30,className:r,...a}=e;return(0,u.jsx)("svg",{className:r,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...a,children:(0,u.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function ot(){const{toggle:e,shown:t}=(0,j.M)();return(0,u.jsx)("button",{onClick:e,"aria-label":(0,s.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,u.jsx)(at,{})})}const it={colorModeToggle:"colorModeToggle_DEke"};function lt(e){let{items:t}=e;return(0,u.jsx)(u.Fragment,{children:t.map(((e,t)=>(0,u.jsx)(nt,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,u.jsx)(He,{...e})},t)))})}function st(e){let{left:t,right:n}=e;return(0,u.jsxs)("div",{className:"navbar__inner",children:[(0,u.jsx)("div",{className:"navbar__items",children:t}),(0,u.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function ct(){const e=(0,j.M)(),t=(0,w.p)().navbar.items,[n,r]=function(e){function t(e){return"left"===(e.position??rt)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),a=t.find((e=>"search"===e.type));return(0,u.jsx)(st,{left:(0,u.jsxs)(u.Fragment,{children:[!e.disabled&&(0,u.jsx)(ot,{}),(0,u.jsx)(K,{}),(0,u.jsx)(lt,{items:n})]}),right:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(lt,{items:r}),(0,u.jsx)(W,{className:it.colorModeToggle}),!a&&(0,u.jsx)(Fe,{children:(0,u.jsx)(Oe,{})})]})})}function ut(){return(0,u.jsx)(Ze,{children:(0,u.jsx)(ct,{})})}function dt(e){let{item:t}=e;const{to:n,href:r,label:a,prependBaseUrlToHref:o,...i}=t,l=(0,X.A)(n),s=(0,X.A)(r,{forcePrependBaseUrl:!0});return(0,u.jsxs)(Z.A,{className:"footer__link-item",...r?{href:o?s:r}:{to:l},...i,children:[a,r&&!(0,J.A)(r)&&(0,u.jsx)(te.A,{})]})}function pt(e){let{item:t}=e;return t.html?(0,u.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)("li",{className:"footer__item",children:(0,u.jsx)(dt,{item:t})},t.href??t.to)}function ft(e){let{column:t}=e;return(0,u.jsxs)("div",{className:"col footer__col",children:[(0,u.jsx)("div",{className:"footer__title",children:t.title}),(0,u.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,u.jsx)(pt,{item:e},t)))})]})}function mt(e){let{columns:t}=e;return(0,u.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,u.jsx)(ft,{column:e},t)))})}function ht(){return(0,u.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function gt(e){let{item:t}=e;return t.html?(0,u.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)(dt,{item:t})}function bt(e){let{links:t}=e;return(0,u.jsx)("div",{className:"footer__links text--center",children:(0,u.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,u.jsxs)(r.Fragment,{children:[(0,u.jsx)(gt,{item:e}),t.length!==n+1&&(0,u.jsx)(ht,{})]},n)))})})}function yt(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,u.jsx)(mt,{columns:t}):(0,u.jsx)(bt,{links:t})}var vt=n(1122);const wt={footerLogoLink:"footerLogoLink_BH7S"};function kt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.h)(),r={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,u.jsx)(vt.A,{className:(0,a.A)("footer__logo",t.className),alt:t.alt,sources:r,width:t.width,height:t.height,style:t.style})}function xt(e){let{logo:t}=e;return t.href?(0,u.jsx)(Z.A,{href:t.href,className:wt.footerLogoLink,target:t.target,children:(0,u.jsx)(kt,{logo:t})}):(0,u.jsx)(kt,{logo:t})}function St(e){let{copyright:t}=e;return(0,u.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function Et(e){let{style:t,links:n,logo:r,copyright:o}=e;return(0,u.jsx)("footer",{className:(0,a.A)("footer",{"footer--dark":"dark"===t}),children:(0,u.jsxs)("div",{className:"container container-fluid",children:[n,(r||o)&&(0,u.jsxs)("div",{className:"footer__bottom text--center",children:[r&&(0,u.jsx)("div",{className:"margin-bottom--sm",children:r}),o]})]})})}function Ct(){const{footer:e}=(0,w.p)();if(!e)return null;const{copyright:t,links:n,logo:r,style:a}=e;return(0,u.jsx)(Et,{style:a,links:n&&n.length>0&&(0,u.jsx)(yt,{links:n}),logo:r&&(0,u.jsx)(xt,{logo:r}),copyright:t&&(0,u.jsx)(St,{copyright:t})})}const _t=r.memo(Ct),Tt=(0,R.fM)([F.a,k.oq,P.Tv,Ue.VQ,i.Jx,function(e){let{children:t}=e;return(0,u.jsx)(L.y_,{children:(0,u.jsx)(j.e,{children:(0,u.jsx)(D,{children:t})})})}]);function At(e){let{children:t}=e;return(0,u.jsx)(Tt,{children:t})}var jt=n(1107);function Pt(e){let{error:t,tryAgain:n}=e;return(0,u.jsx)("main",{className:"container margin-vert--xl",children:(0,u.jsx)("div",{className:"row",children:(0,u.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,u.jsx)(jt.A,{as:"h1",className:"hero__title",children:(0,u.jsx)(s.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,u.jsx)("div",{className:"margin-vert--lg",children:(0,u.jsx)(et,{onClick:n,className:"button button--primary shadow--lw"})}),(0,u.jsx)("hr",{}),(0,u.jsx)("div",{className:"margin-vert--md",children:(0,u.jsx)(tt,{error:t})})]})})})}const Rt={mainWrapper:"mainWrapper_z2l0"};function Lt(e){const{children:t,noFooter:n,wrapperClassName:r,title:l,description:s}=e;return(0,b.J)(),(0,u.jsxs)(At,{children:[(0,u.jsx)(i.be,{title:l,description:s}),(0,u.jsx)(v,{}),(0,u.jsx)(A,{}),(0,u.jsx)(ut,{}),(0,u.jsx)("div",{id:d,className:(0,a.A)(g.G.wrapper.main,Rt.mainWrapper,r),children:(0,u.jsx)(o.A,{fallback:e=>(0,u.jsx)(Pt,{...e}),children:t})}),!n&&(0,u.jsx)(_t,{})]})}},3465:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(6540);var r=n(5489),a=n(6025),o=n(4586),i=n(6342),l=n(1122),s=n(4848);function c(e){let{logo:t,alt:n,imageClassName:r}=e;const o={light:(0,a.A)(t.src),dark:(0,a.A)(t.srcDark||t.src)},i=(0,s.jsx)(l.A,{className:t.className,sources:o,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,s.jsx)("div",{className:r,children:i}):i}function u(e){const{siteConfig:{title:t}}=(0,o.A)(),{navbar:{title:n,logo:l}}=(0,i.p)(),{imageClassName:u,titleClassName:d,...p}=e,f=(0,a.A)(l?.href||"/"),m=n?"":t,h=l?.alt??m;return(0,s.jsxs)(r.A,{to:f,...p,...l?.target&&{target:l.target},children:[l&&(0,s.jsx)(c,{logo:l,alt:h,imageClassName:u}),null!=n&&(0,s.jsx)("b",{className:d,children:n})]})}},1463:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(6540);var r=n(5260),a=n(4848);function o(e){let{locale:t,version:n,tag:o}=e;const i=t;return(0,a.jsxs)(r.A,{children:[t&&(0,a.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,a.jsx)("meta",{name:"docusaurus_version",content:n}),o&&(0,a.jsx)("meta",{name:"docusaurus_tag",content:o}),i&&(0,a.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,a.jsx)("meta",{name:"docsearch:version",content:n}),o&&(0,a.jsx)("meta",{name:"docsearch:docusaurus_tag",content:o})]})}},1122:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(6540),a=n(53),o=n(2303),i=n(5293);const l={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var s=n(4848);function c(e){let{className:t,children:n}=e;const c=(0,o.A)(),{colorMode:u}=(0,i.G)();return(0,s.jsx)(s.Fragment,{children:(c?"dark"===u?["dark"]:["light"]:["light","dark"]).map((e=>{const o=n({theme:e,className:(0,a.A)(t,l.themedComponent,l[`themedComponent--${e}`])});return(0,s.jsx)(r.Fragment,{children:o},e)}))})}function u(e){const{sources:t,className:n,alt:r,...a}=e;return(0,s.jsx)(c,{className:n,children:e=>{let{theme:n,className:o}=e;return(0,s.jsx)("img",{src:t[n],alt:r,className:o,...a})}})}},1422:(e,t,n)=>{"use strict";n.d(t,{N:()=>b,u:()=>c});var r=n(6540),a=n(8193),o=n(205),i=n(3109),l=n(4848);const s="ease-in-out";function c(e){let{initialState:t}=e;const[n,a]=(0,r.useState)(t??!1),o=(0,r.useCallback)((()=>{a((e=>!e))}),[]);return{collapsed:n,setCollapsed:a,toggleCollapsed:o}}const u={display:"none",overflow:"hidden",height:"0px"},d={display:"block",overflow:"visible",height:"auto"};function p(e,t){const n=t?u:d;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function f(e){let{collapsibleRef:t,collapsed:n,animation:a}=e;const o=(0,r.useRef)(!1);(0,r.useEffect)((()=>{const e=t.current;function r(){const t=e.scrollHeight,n=a?.duration??function(e){if((0,i.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${a?.easing??s}`,height:`${t}px`}}function l(){const t=r();e.style.transition=t.transition,e.style.height=t.height}if(!o.current)return p(e,n),void(o.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(l(),requestAnimationFrame((()=>{e.style.height=u.height,e.style.overflow=u.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{l()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,a])}function m(e){if(!a.A.canUseDOM)return e?u:d}function h(e){let{as:t="div",collapsed:n,children:a,animation:o,onCollapseTransitionEnd:i,className:s,disableSSRStyle:c}=e;const u=(0,r.useRef)(null);return f({collapsibleRef:u,collapsed:n,animation:o}),(0,l.jsx)(t,{ref:u,style:c?void 0:m(n),onTransitionEnd:e=>{"height"===e.propertyName&&(p(u.current,n),i?.(n))},className:s,children:a})}function g(e){let{collapsed:t,...n}=e;const[a,i]=(0,r.useState)(!t),[s,c]=(0,r.useState)(t);return(0,o.A)((()=>{t||i(!0)}),[t]),(0,o.A)((()=>{a&&c(t)}),[a,t]),a?(0,l.jsx)(h,{...n,collapsed:s}):null}function b(e){let{lazy:t,...n}=e;const r=t?g:h;return(0,l.jsx)(r,{...n})}},5041:(e,t,n)=>{"use strict";n.d(t,{Mj:()=>h,oq:()=>m});var r=n(6540),a=n(2303),o=n(9466),i=n(9532),l=n(6342),s=n(4848);const c=(0,o.Wf)("docusaurus.announcement.dismiss"),u=(0,o.Wf)("docusaurus.announcement.id"),d=()=>"true"===c.get(),p=e=>c.set(String(e)),f=r.createContext(null);function m(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.p)(),t=(0,a.A)(),[n,o]=(0,r.useState)((()=>!!t&&d()));(0,r.useEffect)((()=>{o(d())}),[]);const i=(0,r.useCallback)((()=>{p(!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&&p(!1),!r&&d()||o(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return(0,s.jsx)(f.Provider,{value:n,children:t})}function h(){const e=(0,r.useContext)(f);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},5293:(e,t,n)=>{"use strict";n.d(t,{G:()=>b,a:()=>g});var r=n(6540),a=n(8193),o=n(9532),i=n(9466),l=n(6342),s=n(4848);const c=r.createContext(void 0),u="theme",d=(0,i.Wf)(u),p={light:"light",dark:"dark"},f=e=>e===p.dark?p.dark:p.light,m=e=>a.A.canUseDOM?f(document.documentElement.getAttribute("data-theme")):f(e),h=e=>{d.set(f(e))};function g(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.p)(),[a,o]=(0,r.useState)(m(e));(0,r.useEffect)((()=>{t&&d.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:a=!0}=r;t?(o(t),a&&h(t)):(o(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),d.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",f(a))}),[a]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==u)return;const t=d.get();null!==t&&i(f(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const s=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||s.current?s.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:a,setColorMode:i,get isDarkTheme(){return a===p.dark},setLightTheme(){i(p.light)},setDarkTheme(){i(p.dark)}})),[a,i])}();return(0,s.jsx)(c.Provider,{value:n,children:t})}function b(){const e=(0,r.useContext)(c);if(null==e)throw new o.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},5597:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>b,XK:()=>w,g1:()=>v});var r=n(6540),a=n(4070),o=n(7065),i=n(6342),l=n(1754),s=n(9532),c=n(9466),u=n(4848);const d=e=>`docs-preferred-version-${e}`,p={save:(e,t,n)=>{(0,c.Wf)(d(e),{persistence:t}).set(n)},read:(e,t)=>(0,c.Wf)(d(e),{persistence:t}).get(),clear:(e,t)=>{(0,c.Wf)(d(e),{persistence:t}).del()}},f=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const m=r.createContext(null);function h(){const e=(0,a.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[o,l]=(0,r.useState)((()=>f(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function a(e){const t=p.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(p.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,a(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[o,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){p.save(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=h();return(0,u.jsx)(m.Provider,{value:n,children:t})}function b(e){let{children:t}=e;return l.C5?(0,u.jsx)(g,{children:t}):(0,u.jsx)(u.Fragment,{children:t})}function y(){const e=(0,r.useContext)(m);if(!e)throw new s.dV("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=o.W);const t=(0,a.ht)(e),[n,i]=y(),{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])}}function w(){const e=(0,a.Gy)(),[t]=y();function n(n){const r=e[n],{preferredVersionName:a}=t[n];return r.versions.find((e=>e.name===a))??null}const r=Object.keys(e);return Object.fromEntries(r.map((e=>[e,n(e)])))}},6588:(e,t,n)=>{"use strict";n.d(t,{V:()=>s,t:()=>c});var r=n(6540),a=n(9532),o=n(4848);const i=Symbol("EmptyContext"),l=r.createContext(i);function s(e){let{children:t,name:n,items:a}=e;const i=(0,r.useMemo)((()=>n&&a?{name:n,items:a}:null),[n,a]);return(0,o.jsx)(l.Provider,{value:i,children:t})}function c(){const e=(0,r.useContext)(l);if(e===i)throw new a.dV("DocsSidebarProvider");return e}},2252:(e,t,n)=>{"use strict";n.d(t,{n:()=>l,r:()=>s});var r=n(6540),a=n(9532),o=n(4848);const i=r.createContext(null);function l(e){let{children:t,version:n}=e;return(0,o.jsx)(i.Provider,{value:n,children:t})}function s(){const e=(0,r.useContext)(i);if(null===e)throw new a.dV("DocsVersionProvider");return e}},2069:(e,t,n)=>{"use strict";n.d(t,{M:()=>f,e:()=>p});var r=n(6540),a=n(5600),o=n(4581),i=n(7485),l=n(6342),s=n(9532),c=n(4848);const u=r.createContext(void 0);function d(){const e=function(){const e=(0,a.YL)(),{items:t}=(0,l.p)().navbar;return 0===t.length&&!e.component}(),t=(0,o.l)(),n=!e&&"mobile"===t,[s,c]=(0,r.useState)(!1);(0,i.$Z)((()=>{if(s)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:s})),[e,n,u,s])}function p(e){let{children:t}=e;const n=d();return(0,c.jsx)(u.Provider,{value:n,children:t})}function f(){const e=r.useContext(u);if(void 0===e)throw new s.dV("NavbarMobileSidebarProvider");return e}},5600:(e,t,n)=>{"use strict";n.d(t,{GX:()=>c,YL:()=>s,y_:()=>l});var r=n(6540),a=n(9532),o=n(4848);const i=r.createContext(null);function l(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return(0,o.jsx)(i.Provider,{value:n,children:t})}function s(){const e=(0,r.useContext)(i);if(!e)throw new a.dV("NavbarSecondaryMenuContentProvider");return e[0]}function c(e){let{component:t,props:n}=e;const o=(0,r.useContext)(i);if(!o)throw new a.dV("NavbarSecondaryMenuContentProvider");const[,l]=o,s=(0,a.Be)(n);return(0,r.useEffect)((()=>{l({component:t,props:s})}),[l,t,s]),(0,r.useEffect)((()=>()=>l({component:null,props:null})),[l]),null}},4090:(e,t,n)=>{"use strict";n.d(t,{w:()=>a,J:()=>o});var r=n(6540);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)}}),[])}},4255:(e,t,n)=>{"use strict";n.d(t,{b:()=>l,w:()=>s});var r=n(6540),a=n(4586),o=n(7485);const i="q";function l(){return(0,o.l)(i)}function s(){const{siteConfig:{baseUrl:e,themeConfig:t}}=(0,a.A)(),{algolia:{searchPagePath:n}}=t;return(0,r.useCallback)((t=>`${e}${n}?${i}=${encodeURIComponent(t)}`),[e,n])}},4581:(e,t,n)=>{"use strict";n.d(t,{l:()=>l});var r=n(6540),a=n(8193);const o={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function l(){const[e,t]=(0,r.useState)((()=>"ssr"));return(0,r.useEffect)((()=>{function e(){t(function(){if(!a.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>i?o.desktop:o.mobile}())}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),e}},7559:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{}}},3109:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},1754:(e,t,n)=>{"use strict";n.d(t,{Nr:()=>f,w8:()=>g,C5:()=>p,B5:()=>E,Vd:()=>k,QB:()=>S,fW:()=>x,OF:()=>w,Y:()=>y});var r=n(6540),a=n(6347),o=n(2831),i=n(4070),l=n(5597),s=n(2252),c=n(6588);function u(e){return Array.from(new Set(e))}var d=n(9169);const p=!!i.Gy;function f(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=f(t);if(e)return e}}(e):void 0:e.href}const m=(e,t)=>void 0!==e&&(0,d.ys)(e,t),h=(e,t)=>e.some((e=>g(e,t)));function g(e,t){return"link"===e.type?m(e.href,t):"category"===e.type&&(m(e.href,t)||h(e.items,t))}function b(e,t){switch(e.type){case"category":return g(e,t)||e.items.some((e=>b(e,t)));case"link":return!e.unlisted||g(e,t);default:return!1}}function y(e,t){return(0,r.useMemo)((()=>e.filter((e=>b(e,t)))),[e,t])}function v(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,d.ys)(o.href,n)||e(o.items))||"link"===o.type&&(0,d.ys)(o.href,n)){return r&&"category"!==o.type||a.unshift(o),!0}return!1}(t),a}function w(){const e=(0,c.t)(),{pathname:t}=(0,a.zy)(),n=(0,i.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?v({sidebarItems:e.items,pathname:t}):null}function k(e){const{activeVersion:t}=(0,i.zK)(e),{preferredVersion:n}=(0,l.g1)(e),a=(0,i.r7)(e);return(0,r.useMemo)((()=>u([t,n,a].filter(Boolean))),[t,n,a])}function x(e,t){const n=k(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function S(e,t){const n=k(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${u(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function E(e){let{route:t}=e;const n=(0,a.zy)(),r=(0,s.r)(),i=t.routes,l=i.find((e=>(0,a.B6)(n.pathname,e)));if(!l)return null;const c=l.sidebar,u=c?r.docsSidebars[c]:void 0;return{docElement:(0,o.v)(i),sidebarName:c,sidebarItems:u}}},481:(e,t,n)=>{"use strict";n.d(t,{s:()=>a});var r=n(4586);function a(e){const{siteConfig:t}=(0,r.A)(),{title:n,titleDelimiter:a}=t;return e?.trim().length?`${e.trim()} ${a} ${n}`:n}},7485:(e,t,n)=>{"use strict";n.d(t,{$Z:()=>i,l:()=>s});var r=n(6540),a=n(6347),o=n(9532);function i(e){!function(e){const t=(0,a.W6)(),n=(0,o._q)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function l(e){return function(e){const t=(0,a.W6)();return(0,r.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}function s(e){const t=l(e)??"",n=function(){const e=(0,a.W6)();return(0,r.useCallback)(((t,n,r)=>{const a=new URLSearchParams(e.location.search);n?a.set(t,n):a.delete(t),(r?.push?e.push:e.replace)({search:a.toString()})}),[e])}();return[t,(0,r.useCallback)(((t,r)=>{n(e,t,r)}),[n,e])]}},9024:(e,t,n)=>{"use strict";n.d(t,{e3:()=>f,be:()=>d,Jx:()=>m});var r=n(6540),a=n(53),o=n(5260),i=n(3102);function l(){const e=r.useContext(i.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var s=n(6025),c=n(481),u=n(4848);function d(e){let{title:t,description:n,keywords:r,image:a,children:i}=e;const l=(0,c.s)(t),{withBaseUrl:d}=(0,s.h)(),p=a?d(a,{absolute:!0}):void 0;return(0,u.jsxs)(o.A,{children:[t&&(0,u.jsx)("title",{children:l}),t&&(0,u.jsx)("meta",{property:"og:title",content:l}),n&&(0,u.jsx)("meta",{name:"description",content:n}),n&&(0,u.jsx)("meta",{property:"og:description",content:n}),r&&(0,u.jsx)("meta",{name:"keywords",content:Array.isArray(r)?r.join(","):r}),p&&(0,u.jsx)("meta",{property:"og:image",content:p}),p&&(0,u.jsx)("meta",{name:"twitter:image",content:p}),i]})}const p=r.createContext(void 0);function f(e){let{className:t,children:n}=e;const i=r.useContext(p),l=(0,a.A)(i,t);return(0,u.jsxs)(p.Provider,{value:l,children:[(0,u.jsx)(o.A,{children:(0,u.jsx)("html",{className:l})}),n]})}function m(e){let{children:t}=e;const n=l(),r=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const o=`plugin-id-${n.plugin.id}`;return(0,u.jsx)(f,{className:(0,a.A)(r,o),children:t})}},9532:(e,t,n)=>{"use strict";n.d(t,{Be:()=>c,ZC:()=>l,_q:()=>i,dV:()=>s,fM:()=>u});var r=n(6540),a=n(205),o=n(4848);function i(e){const t=(0,r.useRef)(e);return(0,a.A)((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function l(e){const t=(0,r.useRef)();return(0,a.A)((()=>{t.current=e})),t.current}class s extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?<name>\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function c(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(0,o.jsx)(o.Fragment,{children:e.reduceRight(((e,t)=>(0,o.jsx)(t,{children:e})),n)})}}},1252:(e,t,n)=>{"use strict";function r(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}n.d(t,{G:()=>r})},9169:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>l,ys:()=>i});var r=n(6540),a=n(8328),o=n(4586);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function l(){const{baseUrl:e}=(0,o.A)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function 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.A,baseUrl:e})),[e])}},3104:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>p,Tv:()=>c,gk:()=>f});var r=n(6540),a=n(8193),o=n(2303),i=(n(205),n(9532)),l=n(4848);const s=r.createContext(void 0);function c(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,l.jsx)(s.Provider,{value:n,children:t})}function u(){const e=(0,r.useContext)(s);if(null==e)throw new i.dV("ScrollControllerProvider");return e}const d=()=>a.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function p(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=u(),a=(0,r.useRef)(d()),o=(0,i._q)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=d();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.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const 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:()=>e.current?.()}}},2967:(e,t,n)=>{"use strict";n.d(t,{Cy:()=>i,af:()=>s,tU:()=>l});var r=n(4070),a=n(4586),o=n(5597);const i="default";function l(e,t){return`docs-${e}-${t}`}function s(){const{i18n:e}=(0,a.A)(),t=(0,r.Gy)(),n=(0,r.gk)(),s=(0,o.XK)();const c=[i,...Object.keys(t).map((function(e){const r=n?.activePlugin.pluginId===e?n.activeVersion:void 0,a=s[e],o=t[e].versions.find((e=>e.isLast));return l(e,(r??a??o).name)}))];return{locale:e.currentLocale,tags:c}}},9466:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>s});n(6540);const r="localStorage";function a(e){let{key:t,oldValue:n,newValue:r,storage:a}=e;if(n===r)return;const o=document.createEvent("StorageEvent");o.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,a),window.dispatchEvent(o)}function o(e){if(void 0===e&&(e=r),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,i||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),i=!0),null}var t}let i=!1;const l={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function s(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(e);const n=o(t?.persistence);return null===n?l:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const r=n.getItem(e);n.setItem(e,t),a({key:e,oldValue:r,newValue:t,storage:n})}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{const t=n.getItem(e);n.removeItem(e),a({key:e,oldValue:t,newValue:null,storage:n})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const r=r=>{r.storageArea===n&&r.key===e&&t(r)};return window.addEventListener("storage",r),()=>window.removeEventListener("storage",r)}catch(r){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,r),()=>{}}}}}},2131:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(4586),a=n(6347),o=n(440);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:l}}=(0,r.A)(),{pathname:s}=(0,a.zy)(),c=(0,o.applyTrailingSlash)(s,{trailingSlash:n,baseUrl:e}),u=l===i?e:e.replace(`/${l}/`,"/"),d=c.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},5062:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(6540),a=n(6347),o=n(9532);function i(e){const t=(0,a.zy)(),n=(0,o.ZC)(t),i=(0,o._q)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6342:(e,t,n)=>{"use strict";n.d(t,{p:()=>a});var r=n(4586);function a(){return(0,r.A)().siteConfig.themeConfig}},8126:(e,t,n)=>{"use strict";n.d(t,{c:()=>a});var r=n(4586);function a(){const{siteConfig:{themeConfig:e}}=(0,r.A)();return e}},1062:(e,t,n)=>{"use strict";n.d(t,{C:()=>l});var r=n(6540),a=n(1252),o=n(6025),i=n(8126);function l(){const{withBaseUrl:e}=(0,o.h)(),{algolia:{externalUrlRegex:t,replaceSearchResultPathname:n}}=(0,i.c)();return(0,r.useCallback)((r=>{const o=new URL(r);if((0,a.G)(t,o.href))return r;const i=`${o.pathname+o.hash}`;return e(function(e,t){return t?e.replaceAll(new RegExp(t.from,"g"),t.to):e}(i,n))}),[e,t,n])}},2983:(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)}},253:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},440:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var a=n(2983);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(a).default}});var o=n(253);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return o.getErrorCausalChain}})},53:(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,{A:()=>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}},1513:(e,t,n)=>{"use strict";n.d(t,{zR:()=>w,TM:()=>_,yJ:()=>f,sC:()=>A,AO:()=>p});var r=n(8168);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),c=l||s;if(e&&a(e)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";if(i.length){var u=i[i.length-1];n="."===u||".."===u||""===u}else n=!1;for(var d=0,p=i.length;p>=0;p--){var f=i[p];"."===f?o(i,p):".."===f?(o(i,p),d++):d&&(o(i,p),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(1561);function s(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function f(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.A)({},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",y="hashchange";function v(){try{return window.history.state||{}}catch(e){return{}}}function w(e){void 0===e&&(e={}),h||(0,l.A)(!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,c=i.forceRefresh,w=void 0!==c&&c,k=i.getUserConfirmation,x=void 0===k?g:k,S=i.keyLength,E=void 0===S?6:S,C=e.basename?d(s(e.basename)):"";function _(e){var t=e||{},n=t.key,r=t.state,a=window.location,o=a.pathname+a.search+a.hash;return C&&(o=u(o,C)),f(o,r,n)}function T(){return Math.random().toString(36).substr(2,E)}var A=m();function j(e){(0,r.A)(U,e),U.length=n.length,A.notifyListeners(U.location,U.action)}function P(e){(function(e){return void 0===e.state&&-1===navigator.userAgent.indexOf("CriOS")})(e)||N(_(e.state))}function R(){N(_(v()))}var L=!1;function N(e){if(L)L=!1,j();else{A.confirmTransitionTo(e,"POP",x,(function(t){t?j({action:"POP",location:e}):function(e){var t=U.location,n=M.indexOf(t.key);-1===n&&(n=0);var r=M.indexOf(e.key);-1===r&&(r=0);var a=n-r;a&&(L=!0,I(a))}(e)}))}}var D=_(v()),M=[D.key];function O(e){return C+p(e)}function I(e){n.go(e)}var F=0;function B(e){1===(F+=e)&&1===e?(window.addEventListener(b,P),o&&window.addEventListener(y,R)):0===F&&(window.removeEventListener(b,P),o&&window.removeEventListener(y,R))}var z=!1;var U={length:n.length,action:"POP",location:D,createHref:O,push:function(e,t){var r="PUSH",o=f(e,t,T(),U.location);A.confirmTransitionTo(o,r,x,(function(e){if(e){var t=O(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=M.indexOf(U.location.key),c=M.slice(0,s+1);c.push(o.key),M=c,j({action:r,location:o})}else window.location.href=t}}))},replace:function(e,t){var r="REPLACE",o=f(e,t,T(),U.location);A.confirmTransitionTo(o,r,x,(function(e){if(e){var t=O(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=M.indexOf(U.location.key);-1!==s&&(M[s]=o.key),j({action:r,location:o})}else window.location.replace(t)}}))},go:I,goBack:function(){I(-1)},goForward:function(){I(1)},block:function(e){void 0===e&&(e=!1);var t=A.setPrompt(e);return z||(B(1),z=!0),function(){return z&&(z=!1,B(-1)),t()}},listen:function(e){var t=A.appendListener(e);return B(1),function(){B(-1),t()}}};return U}var k="hashchange",x={hashbang:{encodePath:function(e){return"!"===e.charAt(0)?e:"!/"+c(e)},decodePath:function(e){return"!"===e.charAt(0)?e.substr(1):e}},noslash:{encodePath:c,decodePath:s},slash:{encodePath:s,decodePath:s}};function S(e){var t=e.indexOf("#");return-1===t?e:e.slice(0,t)}function E(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.substring(t+1)}function C(e){window.location.replace(S(window.location.href)+"#"+e)}function _(e){void 0===e&&(e={}),h||(0,l.A)(!1);var t=window.history,n=(window.navigator.userAgent.indexOf("Firefox"),e),a=n.getUserConfirmation,o=void 0===a?g:a,i=n.hashType,c=void 0===i?"slash":i,b=e.basename?d(s(e.basename)):"",y=x[c],v=y.encodePath,w=y.decodePath;function _(){var e=w(E());return b&&(e=u(e,b)),f(e)}var T=m();function A(e){(0,r.A)(z,e),z.length=t.length,T.notifyListeners(z.location,z.action)}var j=!1,P=null;function R(){var e,t,n=E(),r=v(n);if(n!==r)C(r);else{var a=_(),i=z.location;if(!j&&(t=a,(e=i).pathname===t.pathname&&e.search===t.search&&e.hash===t.hash))return;if(P===p(a))return;P=null,function(e){if(j)j=!1,A();else{var t="POP";T.confirmTransitionTo(e,t,o,(function(n){n?A({action:t,location:e}):function(e){var t=z.location,n=M.lastIndexOf(p(t));-1===n&&(n=0);var r=M.lastIndexOf(p(e));-1===r&&(r=0);var a=n-r;a&&(j=!0,O(a))}(e)}))}}(a)}}var L=E(),N=v(L);L!==N&&C(N);var D=_(),M=[p(D)];function O(e){t.go(e)}var I=0;function F(e){1===(I+=e)&&1===e?window.addEventListener(k,R):0===I&&window.removeEventListener(k,R)}var B=!1;var z={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+"#"+v(b+p(e))},push:function(e,t){var n="PUSH",r=f(e,void 0,void 0,z.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=p(r),a=v(b+t);if(E()!==a){P=t,function(e){window.location.hash=e}(a);var o=M.lastIndexOf(p(z.location)),i=M.slice(0,o+1);i.push(t),M=i,A({action:n,location:r})}else A()}}))},replace:function(e,t){var n="REPLACE",r=f(e,void 0,void 0,z.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=p(r),a=v(b+t);E()!==a&&(P=t,C(a));var o=M.indexOf(p(z.location));-1!==o&&(M[o]=t),A({action:n,location:r})}}))},go:O,goBack:function(){O(-1)},goForward:function(){O(1)},block:function(e){void 0===e&&(e=!1);var t=T.setPrompt(e);return B||(F(1),B=!0),function(){return B&&(B=!1,F(-1)),t()}},listen:function(e){var t=T.appendListener(e);return F(1),function(){F(-1),t()}}};return z}function T(e,t,n){return Math.min(Math.max(e,t),n)}function A(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,c=void 0===s?6:s,u=m();function d(e){(0,r.A)(w,e),w.length=w.entries.length,u.notifyListeners(w.location,w.action)}function h(){return Math.random().toString(36).substr(2,c)}var g=T(l,0,o.length-1),b=o.map((function(e){return f(e,void 0,"string"==typeof e?h():e.key||h())})),y=p;function v(e){var t=T(w.index+e,0,w.entries.length-1),r=w.entries[t];u.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:y,push:function(e,t){var r="PUSH",a=f(e,t,h(),w.location);u.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=f(e,t,h(),w.location);u.confirmTransitionTo(a,r,n,(function(e){e&&(w.entries[w.index]=a,d({action:r,location:a}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(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),u.setPrompt(e)},listen:function(e){return u.appendListener(e)}};return w}},4146:(e,t,n)=>{"use strict";var r=n(4363),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 c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var i=u(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 y=p(n,b);try{c(t,b,y)}catch(v){}}}}return t}},311: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 c=[n,r,a,o,i,l],u=0;(s=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw s.framesToPop=1,s}}},4634:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},119:(e,t,n)=>{"use strict";n.r(t)},1043:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var r,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),c=o.querySelector(r.barSelector),u=r.speed,d=r.easing;return o.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(c,i(e,u,d)),1===e?(s(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){s(o,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*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");u(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),c=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&f(a),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var l=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,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 c(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},6969:e=>{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to <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"}}})},8722:(e,t,n)=>{const r=n(6969),a=n(8380),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(3157).resolve(t)],delete Prism.languages[e],n(3157)(t),o.add(e)}))}i.silent=!1,e.exports=i},9700:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,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 c=l[s];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=o[a],d=n.tokenStack[u],p="string"==typeof c?c:c.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++a;var h=p.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=p.substring(m+f.length),y=[];h&&y.push.apply(y,i([h])),y.push(g),b&&y.push.apply(y,i([b])),"string"==typeof c?l.splice.apply(l,[s,1].concat(y)):c.content=y}}else c.content&&i(c.content)}return l}(n.tokens)}}}})}(Prism)},8692:(e,t,n)=>{var r={"./":8722};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=8692},3157:(e,t,n)=>{var r={"./":8722};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=3157},8380:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,r=e.length;n<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 c(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,c),t(s.optional,c),t(s.modify,c)}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),c=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(c),l=(l||[]).map(c);var u=n(i),d=n(l);i.forEach((function e(n){var r=s[n];t(r&&r.require,(function(t){t in d||(u[t]=!0,e(t))}))}));for(var p,f=r(s),m=u;a(m);){for(var h in p={},m){var g=s[h];t(g&&g.modify,(function(e){e in d&&(p[e]=!0)}))}for(var b in d)if(!(b in u))for(var y in f(b))if(y in u){p[b]=!0;break}for(var v in m=p)u[v]=!0}var w={getIds:function(){var e=[];return w.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,r,a){var o=a?a.series:void 0,i=a?a.parallel:e,l={},s={};function c(e){if(e in l)return l[e];s[e]=!0;var a,u=[];for(var d in t(e))d in n&&u.push(d);if(0===u.length)a=r(e);else{var p=i(u.map((function(e){var t=c(e);return delete s[e],t})));o?a=o(p,(function(){return r(e)})):r(e)}return l[e]=a}for(var u in n)c(u);var d=[];for(var p in s)d.push(l[p]);return i(d)}(f,u,t,n)}};return w}}();e.exports=t},2694:(e,t,n)=>{"use strict";var r=n(6925);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}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},2551:(e,t,n)=>{"use strict";var r=n(6540),a=n(9982);function o(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 i=new Set,l={};function s(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(l[e]=t,e=0;e<t.length;e++)i.add(t[e])}var u=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),d=Object.prototype.hasOwnProperty,p=/^[: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]*$/,f={},m={};function h(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 g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new h(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new h(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new h(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new h(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){g[e]=new h(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new h(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new h(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new h(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new h(e,5,!1,e.toLowerCase(),null,!1,!1)}));var b=/[\-:]([a-z])/g;function y(e){return e[1].toUpperCase()}function v(e,t,n,r){var a=g.hasOwnProperty(t)?g[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!!d.call(m,e)||!d.call(f,e)&&(p.test(e)?m[e]=!0:(f[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(b,y);g[t]=new h(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(b,y);g[t]=new h(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(b,y);g[t]=new h(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new h(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new h("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new h(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,k=Symbol.for("react.element"),x=Symbol.for("react.portal"),S=Symbol.for("react.fragment"),E=Symbol.for("react.strict_mode"),C=Symbol.for("react.profiler"),_=Symbol.for("react.provider"),T=Symbol.for("react.context"),A=Symbol.for("react.forward_ref"),j=Symbol.for("react.suspense"),P=Symbol.for("react.suspense_list"),R=Symbol.for("react.memo"),L=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var N=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var D=Symbol.iterator;function M(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=D&&e[D]||e["@@iterator"])?e:null}var O,I=Object.assign;function F(e){if(void 0===O)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);O=t&&t[1]||""}return"\n"+O+e}var B=!1;function z(e,t){if(!e||B)return"";B=!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(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}catch(c){if(c&&r&&"string"==typeof c.stack){for(var a=c.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]){var s="\n"+a[i].replace(" at new "," at ");return e.displayName&&s.includes("<anonymous>")&&(s=s.replace("<anonymous>",e.displayName)),s}}while(1<=i&&0<=l);break}}}finally{B=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?F(e):""}function U(e){switch(e.tag){case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 2:case 15:return e=z(e.type,!1);case 11:return e=z(e.type.render,!1);case 1:return e=z(e.type,!0);default:return""}}function $(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 S:return"Fragment";case x:return"Portal";case C:return"Profiler";case E:return"StrictMode";case j:return"Suspense";case P:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case T:return(e.displayName||"Context")+".Consumer";case _:return(e._context.displayName||"Context")+".Provider";case A:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case R:return null!==(t=e.displayName||null)?t:$(e.type)||"Memo";case L:t=e._payload,e=e._init;try{return $(e(t))}catch(n){}}return null}function q(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return $(t);case 8:return t===E?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function H(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function G(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function W(e){e._valueTracker||(e._valueTracker=function(e){var t=G(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 V(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=G(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function K(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 Q(e,t){var n=t.checked;return I({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Y(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=H(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 Z(e,t){null!=(t=t.checked)&&v(e,"checked",t,!1)}function X(e,t){Z(e,t);var n=H(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")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,H(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function J(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 ee(e,t,n){"number"===t&&K(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(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=""+H(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 re(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(o(91));return I({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function ae(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(o(92));if(te(n)){if(1<n.length)throw Error(o(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:H(n)}}function oe(e,t){var n=H(t.value),r=H(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 ie(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function le(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 se(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?le(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ce,ue,de=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((ce=ce||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ce.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 ue(e,t)}))}:ue);function pe(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 fe={animationIterationCount:!0,aspectRatio:!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},me=["Webkit","ms","Moz","O"];function he(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||fe.hasOwnProperty(e)&&fe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),a=he(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}Object.keys(fe).forEach((function(e){me.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),fe[t]=fe[e]}))}));var be=I({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 ye(e,t){if(t){if(be[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(o(62))}}function ve(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}}var we=null;function ke(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var xe=null,Se=null,Ee=null;function Ce(e){if(e=va(e)){if("function"!=typeof xe)throw Error(o(280));var t=e.stateNode;t&&(t=ka(t),xe(e.stateNode,e.type,t))}}function _e(e){Se?Ee?Ee.push(e):Ee=[e]:Se=e}function Te(){if(Se){var e=Se,t=Ee;if(Ee=Se=null,Ce(e),t)for(e=0;e<t.length;e++)Ce(t[e])}}function Ae(e,t){return e(t)}function je(){}var Pe=!1;function Re(e,t,n){if(Pe)return e(t,n);Pe=!0;try{return Ae(e,t,n)}finally{Pe=!1,(null!==Se||null!==Ee)&&(je(),Te())}}function Le(e,t){var n=e.stateNode;if(null===n)return null;var r=ka(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(o(231,t,typeof n));return n}var Ne=!1;if(u)try{var De={};Object.defineProperty(De,"passive",{get:function(){Ne=!0}}),window.addEventListener("test",De,De),window.removeEventListener("test",De,De)}catch(ue){Ne=!1}function Me(e,t,n,r,a,o,i,l,s){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(u){this.onError(u)}}var Oe=!1,Ie=null,Fe=!1,Be=null,ze={onError:function(e){Oe=!0,Ie=e}};function Ue(e,t,n,r,a,o,i,l,s){Oe=!1,Ie=null,Me.apply(ze,arguments)}function $e(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{!!(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function qe(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 He(e){if($e(e)!==e)throw Error(o(188))}function Ge(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=$e(e)))throw Error(o(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(null===a)break;var i=a.alternate;if(null===i){if(null!==(r=a.return)){n=r;continue}break}if(a.child===i.child){for(i=a.child;i;){if(i===n)return He(a),e;if(i===r)return He(a),t;i=i.sibling}throw Error(o(188))}if(n.return!==r.return)n=a,r=i;else{for(var l=!1,s=a.child;s;){if(s===n){l=!0,n=a,r=i;break}if(s===r){l=!0,r=a,n=i;break}s=s.sibling}if(!l){for(s=i.child;s;){if(s===n){l=!0,n=i,r=a;break}if(s===r){l=!0,r=i,n=a;break}s=s.sibling}if(!l)throw Error(o(189))}}if(n.alternate!==r)throw Error(o(190))}if(3!==n.tag)throw Error(o(188));return n.stateNode.current===n?e:t}(e))?We(e):null}function We(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=We(e);if(null!==t)return t;e=e.sibling}return null}var Ve=a.unstable_scheduleCallback,Ke=a.unstable_cancelCallback,Qe=a.unstable_shouldYield,Ye=a.unstable_requestPaint,Ze=a.unstable_now,Xe=a.unstable_getCurrentPriorityLevel,Je=a.unstable_ImmediatePriority,et=a.unstable_UserBlockingPriority,tt=a.unstable_NormalPriority,nt=a.unstable_LowPriority,rt=a.unstable_IdlePriority,at=null,ot=null;var it=Math.clz32?Math.clz32:function(e){return e>>>=0,0===e?32:31-(lt(e)/st|0)|0},lt=Math.log,st=Math.LN2;var ct=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function pt(e,t){var n=e.pendingLanes;if(0===n)return 0;var r=0,a=e.suspendedLanes,o=e.pingedLanes,i=268435455&n;if(0!==i){var l=i&~a;0!==l?r=dt(l):0!==(o&=i)&&(r=dt(o))}else 0!==(i=n&~a)?r=dt(i):0!==o&&(r=dt(o));if(0===r)return 0;if(0!==t&&t!==r&&!(t&a)&&((a=r&-r)>=(o=t&-t)||16===a&&4194240&o))return t;if(4&r&&(r|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)a=1<<(n=31-it(t)),r|=e[n],t&=~a;return r}function ft(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function mt(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function ht(){var e=ct;return!(4194240&(ct<<=1))&&(ct=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function bt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-it(t)]=n}function yt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-it(n),a=1<<r;a&t|e[r]&t&&(e[r]|=t),n&=~a}}var vt=0;function wt(e){return 1<(e&=-e)?4<e?268435455&e?16:536870912:4:1}var kt,xt,St,Et,Ct,_t=!1,Tt=[],At=null,jt=null,Pt=null,Rt=new Map,Lt=new Map,Nt=[],Dt="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){switch(e){case"focusin":case"focusout":At=null;break;case"dragenter":case"dragleave":jt=null;break;case"mouseover":case"mouseout":Pt=null;break;case"pointerover":case"pointerout":Rt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Lt.delete(t.pointerId)}}function Ot(e,t,n,r,a,o){return null===e||e.nativeEvent!==o?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:o,targetContainers:[a]},null!==t&&(null!==(t=va(t))&&xt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==a&&-1===t.indexOf(a)&&t.push(a),e)}function It(e){var t=ya(e.target);if(null!==t){var n=$e(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=qe(n)))return e.blockedOn=t,void Ct(e.priority,(function(){St(n)}))}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Ft(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Qt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=va(n))&&xt(t),e.blockedOn=n,!1;var r=new(n=e.nativeEvent).constructor(n.type,n);we=r,n.target.dispatchEvent(r),we=null,t.shift()}return!0}function Bt(e,t,n){Ft(e)&&n.delete(t)}function zt(){_t=!1,null!==At&&Ft(At)&&(At=null),null!==jt&&Ft(jt)&&(jt=null),null!==Pt&&Ft(Pt)&&(Pt=null),Rt.forEach(Bt),Lt.forEach(Bt)}function Ut(e,t){e.blockedOn===t&&(e.blockedOn=null,_t||(_t=!0,a.unstable_scheduleCallback(a.unstable_NormalPriority,zt)))}function $t(e){function t(t){return Ut(t,e)}if(0<Tt.length){Ut(Tt[0],e);for(var n=1;n<Tt.length;n++){var r=Tt[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==At&&Ut(At,e),null!==jt&&Ut(jt,e),null!==Pt&&Ut(Pt,e),Rt.forEach(t),Lt.forEach(t),n=0;n<Nt.length;n++)(r=Nt[n]).blockedOn===e&&(r.blockedOn=null);for(;0<Nt.length&&null===(n=Nt[0]).blockedOn;)It(n),null===n.blockedOn&&Nt.shift()}var qt=w.ReactCurrentBatchConfig,Ht=!0;function Gt(e,t,n,r){var a=vt,o=qt.transition;qt.transition=null;try{vt=1,Vt(e,t,n,r)}finally{vt=a,qt.transition=o}}function Wt(e,t,n,r){var a=vt,o=qt.transition;qt.transition=null;try{vt=4,Vt(e,t,n,r)}finally{vt=a,qt.transition=o}}function Vt(e,t,n,r){if(Ht){var a=Qt(e,t,n,r);if(null===a)Hr(e,t,r,Kt,n),Mt(e,r);else if(function(e,t,n,r,a){switch(t){case"focusin":return At=Ot(At,e,t,n,r,a),!0;case"dragenter":return jt=Ot(jt,e,t,n,r,a),!0;case"mouseover":return Pt=Ot(Pt,e,t,n,r,a),!0;case"pointerover":var o=a.pointerId;return Rt.set(o,Ot(Rt.get(o)||null,e,t,n,r,a)),!0;case"gotpointercapture":return o=a.pointerId,Lt.set(o,Ot(Lt.get(o)||null,e,t,n,r,a)),!0}return!1}(a,e,t,n,r))r.stopPropagation();else if(Mt(e,r),4&t&&-1<Dt.indexOf(e)){for(;null!==a;){var o=va(a);if(null!==o&&kt(o),null===(o=Qt(e,t,n,r))&&Hr(e,t,r,Kt,n),o===a)break;a=o}null!==a&&r.stopPropagation()}else Hr(e,t,r,null,n)}}var Kt=null;function Qt(e,t,n,r){if(Kt=null,null!==(e=ya(e=ke(r))))if(null===(t=$e(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=qe(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Kt=e,null}function Yt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Xe()){case Je:return 1;case et:return 4;case tt:case nt:return 16;case rt:return 536870912;default:return 16}default:return 16}}var Zt=null,Xt=null,Jt=null;function en(){if(Jt)return Jt;var e,t,n=Xt,r=n.length,a="value"in Zt?Zt.value:Zt.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 Jt=a.slice(e,1<t?1-t:void 0)}function tn(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 nn(){return!0}function rn(){return!1}function an(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)?nn:rn,this.isPropagationStopped=rn,this}return I(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=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var on,ln,sn,cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},un=an(cn),dn=I({},cn,{view:0,detail:0}),pn=an(dn),fn=I({},dn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Cn,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!==sn&&(sn&&"mousemove"===e.type?(on=e.screenX-sn.screenX,ln=e.screenY-sn.screenY):ln=on=0,sn=e),on)},movementY:function(e){return"movementY"in e?e.movementY:ln}}),mn=an(fn),hn=an(I({},fn,{dataTransfer:0})),gn=an(I({},dn,{relatedTarget:0})),bn=an(I({},cn,{animationName:0,elapsedTime:0,pseudoElement:0})),yn=I({},cn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),vn=an(yn),wn=an(I({},cn,{data:0})),kn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},xn={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"},Sn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function En(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Sn[e])&&!!t[e]}function Cn(){return En}var _n=I({},dn,{key:function(e){if(e.key){var t=kn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?xn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Cn,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Tn=an(_n),An=an(I({},fn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),jn=an(I({},dn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Cn})),Pn=an(I({},cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Rn=I({},fn,{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}),Ln=an(Rn),Nn=[9,13,27,32],Dn=u&&"CompositionEvent"in window,Mn=null;u&&"documentMode"in document&&(Mn=document.documentMode);var On=u&&"TextEvent"in window&&!Mn,In=u&&(!Dn||Mn&&8<Mn&&11>=Mn),Fn=String.fromCharCode(32),Bn=!1;function zn(e,t){switch(e){case"keyup":return-1!==Nn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Un(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var $n=!1;var qn={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 Hn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!qn[e.type]:"textarea"===t}function Gn(e,t,n,r){_e(r),0<(t=Wr(t,"onChange")).length&&(n=new un("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Wn=null,Vn=null;function Kn(e){Fr(e,0)}function Qn(e){if(V(wa(e)))return e}function Yn(e,t){if("change"===e)return t}var Zn=!1;if(u){var Xn;if(u){var Jn="oninput"in document;if(!Jn){var er=document.createElement("div");er.setAttribute("oninput","return;"),Jn="function"==typeof er.oninput}Xn=Jn}else Xn=!1;Zn=Xn&&(!document.documentMode||9<document.documentMode)}function tr(){Wn&&(Wn.detachEvent("onpropertychange",nr),Vn=Wn=null)}function nr(e){if("value"===e.propertyName&&Qn(Vn)){var t=[];Gn(t,Vn,e,ke(e)),Re(Kn,t)}}function rr(e,t,n){"focusin"===e?(tr(),Vn=n,(Wn=t).attachEvent("onpropertychange",nr)):"focusout"===e&&tr()}function ar(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Qn(Vn)}function or(e,t){if("click"===e)return Qn(t)}function ir(e,t){if("input"===e||"change"===e)return Qn(t)}var lr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function sr(e,t){if(lr(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++){var a=n[r];if(!d.call(t,a)||!lr(e[a],t[a]))return!1}return!0}function cr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ur(e,t){var n,r=cr(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=cr(r)}}function dr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function pr(){for(var e=window,t=K();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=K((e=t.contentWindow).document)}return t}function fr(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)}function mr(e){var t=pr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&dr(n.ownerDocument.documentElement,n)){if(null!==r&&fr(n))if(t=r.start,void 0===(e=r.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var a=n.textContent.length,o=Math.min(r.start,a);r=void 0===r.end?o:Math.min(r.end,a),!e.extend&&o>r&&(a=r,r=o,o=a),a=ur(n,o);var i=ur(n,r);a&&i&&(1!==e.rangeCount||e.anchorNode!==a.node||e.anchorOffset!==a.offset||e.focusNode!==i.node||e.focusOffset!==i.offset)&&((t=t.createRange()).setStart(a.node,a.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(i.node,i.offset)):(t.setEnd(i.node,i.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var hr=u&&"documentMode"in document&&11>=document.documentMode,gr=null,br=null,yr=null,vr=!1;function wr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;vr||null==gr||gr!==K(r)||("selectionStart"in(r=gr)&&fr(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},yr&&sr(yr,r)||(yr=r,0<(r=Wr(br,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=gr)))}function kr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xr={animationend:kr("Animation","AnimationEnd"),animationiteration:kr("Animation","AnimationIteration"),animationstart:kr("Animation","AnimationStart"),transitionend:kr("Transition","TransitionEnd")},Sr={},Er={};function Cr(e){if(Sr[e])return Sr[e];if(!xr[e])return e;var t,n=xr[e];for(t in n)if(n.hasOwnProperty(t)&&t in Er)return Sr[e]=n[t];return e}u&&(Er=document.createElement("div").style,"AnimationEvent"in window||(delete xr.animationend.animation,delete xr.animationiteration.animation,delete xr.animationstart.animation),"TransitionEvent"in window||delete xr.transitionend.transition);var _r=Cr("animationend"),Tr=Cr("animationiteration"),Ar=Cr("animationstart"),jr=Cr("transitionend"),Pr=new Map,Rr="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Lr(e,t){Pr.set(e,t),s(t,[e])}for(var Nr=0;Nr<Rr.length;Nr++){var Dr=Rr[Nr];Lr(Dr.toLowerCase(),"on"+(Dr[0].toUpperCase()+Dr.slice(1)))}Lr(_r,"onAnimationEnd"),Lr(Tr,"onAnimationIteration"),Lr(Ar,"onAnimationStart"),Lr("dblclick","onDoubleClick"),Lr("focusin","onFocus"),Lr("focusout","onBlur"),Lr(jr,"onTransitionEnd"),c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),s("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),s("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),s("onBeforeInput",["compositionend","keypress","textInput","paste"]),s("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Mr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Or=new Set("cancel close invalid load scroll toggle".split(" ").concat(Mr));function Ir(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,a,i,l,s,c){if(Ue.apply(this,arguments),Oe){if(!Oe)throw Error(o(198));var u=Ie;Oe=!1,Ie=null,Fe||(Fe=!0,Be=u)}}(r,t,void 0,e),e.currentTarget=null}function Fr(e,t){t=!!(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,c=l.currentTarget;if(l=l.listener,s!==o&&a.isPropagationStopped())break e;Ir(a,l,c),o=s}else for(i=0;i<r.length;i++){if(s=(l=r[i]).instance,c=l.currentTarget,l=l.listener,s!==o&&a.isPropagationStopped())break e;Ir(a,l,c),o=s}}}if(Fe)throw e=Be,Fe=!1,Be=null,e}function Br(e,t){var n=t[ha];void 0===n&&(n=t[ha]=new Set);var r=e+"__bubble";n.has(r)||(qr(t,e,2,!1),n.add(r))}function zr(e,t,n){var r=0;t&&(r|=4),qr(n,e,r,t)}var Ur="_reactListening"+Math.random().toString(36).slice(2);function $r(e){if(!e[Ur]){e[Ur]=!0,i.forEach((function(t){"selectionchange"!==t&&(Or.has(t)||zr(t,!1,e),zr(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[Ur]||(t[Ur]=!0,zr("selectionchange",!1,t))}}function qr(e,t,n,r){switch(Yt(t)){case 1:var a=Gt;break;case 4:a=Wt;break;default:a=Vt}n=a.bind(null,t,n,e),a=void 0,!Ne||"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 Hr(e,t,n,r,a){var o=r;if(!(1&t||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=ya(l)))return;if(5===(s=i.tag)||6===s){r=o=i;continue e}l=l.parentNode}}r=r.return}Re((function(){var r=o,a=ke(n),i=[];e:{var l=Pr.get(e);if(void 0!==l){var s=un,c=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":s=Tn;break;case"focusin":c="focus",s=gn;break;case"focusout":c="blur",s=gn;break;case"beforeblur":case"afterblur":s=gn;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=mn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":s=hn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":s=jn;break;case _r:case Tr:case Ar:s=bn;break;case jr:s=Pn;break;case"scroll":s=pn;break;case"wheel":s=Ln;break;case"copy":case"cut":case"paste":s=vn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":s=An}var u=!!(4&t),d=!u&&"scroll"===e,p=u?null!==l?l+"Capture":null:l;u=[];for(var f,m=r;null!==m;){var h=(f=m).stateNode;if(5===f.tag&&null!==h&&(f=h,null!==p&&(null!=(h=Le(m,p))&&u.push(Gr(m,h,f)))),d)break;m=m.return}0<u.length&&(l=new s(l,c,null,n,a),i.push({event:l,listeners:u}))}}if(!(7&t)){if(s="mouseout"===e||"pointerout"===e,(!(l="mouseover"===e||"pointerover"===e)||n===we||!(c=n.relatedTarget||n.fromElement)||!ya(c)&&!c[ma])&&(s||l)&&(l=a.window===a?a:(l=a.ownerDocument)?l.defaultView||l.parentWindow:window,s?(s=r,null!==(c=(c=n.relatedTarget||n.toElement)?ya(c):null)&&(c!==(d=$e(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(s=null,c=r),s!==c)){if(u=mn,h="onMouseLeave",p="onMouseEnter",m="mouse","pointerout"!==e&&"pointerover"!==e||(u=An,h="onPointerLeave",p="onPointerEnter",m="pointer"),d=null==s?l:wa(s),f=null==c?l:wa(c),(l=new u(h,m+"leave",s,n,a)).target=d,l.relatedTarget=f,h=null,ya(a)===r&&((u=new u(p,m+"enter",c,n,a)).target=f,u.relatedTarget=d,h=u),d=h,s&&c)e:{for(p=c,m=0,f=u=s;f;f=Vr(f))m++;for(f=0,h=p;h;h=Vr(h))f++;for(;0<m-f;)u=Vr(u),m--;for(;0<f-m;)p=Vr(p),f--;for(;m--;){if(u===p||null!==p&&u===p.alternate)break e;u=Vr(u),p=Vr(p)}u=null}else u=null;null!==s&&Kr(i,l,s,u,!1),null!==c&&null!==d&&Kr(i,d,c,u,!0)}if("select"===(s=(l=r?wa(r):window).nodeName&&l.nodeName.toLowerCase())||"input"===s&&"file"===l.type)var g=Yn;else if(Hn(l))if(Zn)g=ir;else{g=ar;var b=rr}else(s=l.nodeName)&&"input"===s.toLowerCase()&&("checkbox"===l.type||"radio"===l.type)&&(g=or);switch(g&&(g=g(e,r))?Gn(i,g,n,a):(b&&b(e,l,r),"focusout"===e&&(b=l._wrapperState)&&b.controlled&&"number"===l.type&&ee(l,"number",l.value)),b=r?wa(r):window,e){case"focusin":(Hn(b)||"true"===b.contentEditable)&&(gr=b,br=r,yr=null);break;case"focusout":yr=br=gr=null;break;case"mousedown":vr=!0;break;case"contextmenu":case"mouseup":case"dragend":vr=!1,wr(i,n,a);break;case"selectionchange":if(hr)break;case"keydown":case"keyup":wr(i,n,a)}var y;if(Dn)e:{switch(e){case"compositionstart":var v="onCompositionStart";break e;case"compositionend":v="onCompositionEnd";break e;case"compositionupdate":v="onCompositionUpdate";break e}v=void 0}else $n?zn(e,n)&&(v="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(v="onCompositionStart");v&&(In&&"ko"!==n.locale&&($n||"onCompositionStart"!==v?"onCompositionEnd"===v&&$n&&(y=en()):(Xt="value"in(Zt=a)?Zt.value:Zt.textContent,$n=!0)),0<(b=Wr(r,v)).length&&(v=new wn(v,e,null,n,a),i.push({event:v,listeners:b}),y?v.data=y:null!==(y=Un(n))&&(v.data=y))),(y=On?function(e,t){switch(e){case"compositionend":return Un(t);case"keypress":return 32!==t.which?null:(Bn=!0,Fn);case"textInput":return(e=t.data)===Fn&&Bn?null:e;default:return null}}(e,n):function(e,t){if($n)return"compositionend"===e||!Dn&&zn(e,t)?(e=en(),Jt=Xt=Zt=null,$n=!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 In&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(r=Wr(r,"onBeforeInput")).length&&(a=new wn("onBeforeInput","beforeinput",null,n,a),i.push({event:a,listeners:r}),a.data=y))}Fr(i,t)}))}function Gr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Wr(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=Le(e,n))&&r.unshift(Gr(e,o,a)),null!=(o=Le(e,t))&&r.push(Gr(e,o,a))),e=e.return}return r}function Vr(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Kr(e,t,n,r,a){for(var o=t._reactName,i=[];null!==n&&n!==r;){var l=n,s=l.alternate,c=l.stateNode;if(null!==s&&s===r)break;5===l.tag&&null!==c&&(l=c,a?null!=(s=Le(n,o))&&i.unshift(Gr(n,s,l)):a||null!=(s=Le(n,o))&&i.push(Gr(n,s,l))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}var Qr=/\r\n?/g,Yr=/\u0000|\uFFFD/g;function Zr(e){return("string"==typeof e?e:""+e).replace(Qr,"\n").replace(Yr,"")}function Xr(e,t,n){if(t=Zr(t),Zr(e)!==t&&n)throw Error(o(425))}function Jr(){}var ea=null,ta=null;function na(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var ra="function"==typeof setTimeout?setTimeout:void 0,aa="function"==typeof clearTimeout?clearTimeout:void 0,oa="function"==typeof Promise?Promise:void 0,ia="function"==typeof queueMicrotask?queueMicrotask:void 0!==oa?function(e){return oa.resolve(null).then(e).catch(la)}:ra;function la(e){setTimeout((function(){throw e}))}function sa(e,t){var n=t,r=0;do{var a=n.nextSibling;if(e.removeChild(n),a&&8===a.nodeType)if("/$"===(n=a.data)){if(0===r)return e.removeChild(a),void $t(t);r--}else"$"!==n&&"$?"!==n&&"$!"!==n||r++;n=a}while(n);$t(t)}function ca(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function ua(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 da=Math.random().toString(36).slice(2),pa="__reactFiber$"+da,fa="__reactProps$"+da,ma="__reactContainer$"+da,ha="__reactEvents$"+da,ga="__reactListeners$"+da,ba="__reactHandles$"+da;function ya(e){var t=e[pa];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ma]||n[pa]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=ua(e);null!==e;){if(n=e[pa])return n;e=ua(e)}return t}n=(e=n).parentNode}return null}function va(e){return!(e=e[pa]||e[ma])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function wa(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(o(33))}function ka(e){return e[fa]||null}var xa=[],Sa=-1;function Ea(e){return{current:e}}function Ca(e){0>Sa||(e.current=xa[Sa],xa[Sa]=null,Sa--)}function _a(e,t){Sa++,xa[Sa]=e.current,e.current=t}var Ta={},Aa=Ea(Ta),ja=Ea(!1),Pa=Ta;function Ra(e,t){var n=e.type.contextTypes;if(!n)return Ta;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 La(e){return null!=(e=e.childContextTypes)}function Na(){Ca(ja),Ca(Aa)}function Da(e,t,n){if(Aa.current!==Ta)throw Error(o(168));_a(Aa,t),_a(ja,n)}function Ma(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var a in r=r.getChildContext())if(!(a in t))throw Error(o(108,q(e)||"Unknown",a));return I({},n,r)}function Oa(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Ta,Pa=Aa.current,_a(Aa,e),_a(ja,ja.current),!0}function Ia(e,t,n){var r=e.stateNode;if(!r)throw Error(o(169));n?(e=Ma(e,t,Pa),r.__reactInternalMemoizedMergedChildContext=e,Ca(ja),Ca(Aa),_a(Aa,e)):Ca(ja),_a(ja,n)}var Fa=null,Ba=!1,za=!1;function Ua(e){null===Fa?Fa=[e]:Fa.push(e)}function $a(){if(!za&&null!==Fa){za=!0;var e=0,t=vt;try{var n=Fa;for(vt=1;e<n.length;e++){var r=n[e];do{r=r(!0)}while(null!==r)}Fa=null,Ba=!1}catch(a){throw null!==Fa&&(Fa=Fa.slice(e+1)),Ve(Je,$a),a}finally{vt=t,za=!1}}return null}var qa=[],Ha=0,Ga=null,Wa=0,Va=[],Ka=0,Qa=null,Ya=1,Za="";function Xa(e,t){qa[Ha++]=Wa,qa[Ha++]=Ga,Ga=e,Wa=t}function Ja(e,t,n){Va[Ka++]=Ya,Va[Ka++]=Za,Va[Ka++]=Qa,Qa=e;var r=Ya;e=Za;var a=32-it(r)-1;r&=~(1<<a),n+=1;var o=32-it(t)+a;if(30<o){var i=a-a%5;o=(r&(1<<i)-1).toString(32),r>>=i,a-=i,Ya=1<<32-it(t)+a|n<<a|r,Za=o+e}else Ya=1<<o|n<<a|r,Za=e}function eo(e){null!==e.return&&(Xa(e,1),Ja(e,1,0))}function to(e){for(;e===Ga;)Ga=qa[--Ha],qa[Ha]=null,Wa=qa[--Ha],qa[Ha]=null;for(;e===Qa;)Qa=Va[--Ka],Va[Ka]=null,Za=Va[--Ka],Va[Ka]=null,Ya=Va[--Ka],Va[Ka]=null}var no=null,ro=null,ao=!1,oo=null;function io(e,t){var n=Lc(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function lo(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,no=e,ro=ca(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,no=e,ro=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Qa?{id:Ya,overflow:Za}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Lc(18,null,null,0)).stateNode=t,n.return=e,e.child=n,no=e,ro=null,!0);default:return!1}}function so(e){return!(!(1&e.mode)||128&e.flags)}function co(e){if(ao){var t=ro;if(t){var n=t;if(!lo(e,t)){if(so(e))throw Error(o(418));t=ca(n.nextSibling);var r=no;t&&lo(e,t)?io(r,n):(e.flags=-4097&e.flags|2,ao=!1,no=e)}}else{if(so(e))throw Error(o(418));e.flags=-4097&e.flags|2,ao=!1,no=e}}}function uo(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;no=e}function po(e){if(e!==no)return!1;if(!ao)return uo(e),ao=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!na(e.type,e.memoizedProps)),t&&(t=ro)){if(so(e))throw fo(),Error(o(418));for(;t;)io(e,t),t=ca(t.nextSibling)}if(uo(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(o(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){ro=ca(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}ro=null}}else ro=no?ca(e.stateNode.nextSibling):null;return!0}function fo(){for(var e=ro;e;)e=ca(e.nextSibling)}function mo(){ro=no=null,ao=!1}function ho(e){null===oo?oo=[e]:oo.push(e)}var go=w.ReactCurrentBatchConfig;function bo(e,t){if(e&&e.defaultProps){for(var n in t=I({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var yo=Ea(null),vo=null,wo=null,ko=null;function xo(){ko=wo=vo=null}function So(e){var t=yo.current;Ca(yo),e._currentValue=t}function Eo(e,t,n){for(;null!==e;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==r&&(r.childLanes|=t)):null!==r&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Co(e,t){vo=e,ko=wo=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(!!(e.lanes&t)&&(wl=!0),e.firstContext=null)}function _o(e){var t=e._currentValue;if(ko!==e)if(e={context:e,memoizedValue:t,next:null},null===wo){if(null===vo)throw Error(o(308));wo=e,vo.dependencies={lanes:0,firstContext:e}}else wo=wo.next=e;return t}var To=null;function Ao(e){null===To?To=[e]:To.push(e)}function jo(e,t,n,r){var a=t.interleaved;return null===a?(n.next=n,Ao(t)):(n.next=a.next,a.next=n),t.interleaved=n,Po(e,r)}function Po(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}var Ro=!1;function Lo(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function No(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 Do(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Mo(e,t,n){var r=e.updateQueue;if(null===r)return null;if(r=r.shared,2&js){var a=r.pending;return null===a?t.next=t:(t.next=a.next,a.next=t),r.pending=t,Po(e,n)}return null===(a=r.interleaved)?(t.next=t,Ao(r)):(t.next=a.next,a.next=t),r.interleaved=t,Po(e,n)}function Oo(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,4194240&n)){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,yt(e,n)}}function Io(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 Fo(e,t,n,r){var a=e.updateQueue;Ro=!1;var o=a.firstBaseUpdate,i=a.lastBaseUpdate,l=a.shared.pending;if(null!==l){a.shared.pending=null;var s=l,c=s.next;s.next=null,null===i?o=c:i.next=c,i=s;var u=e.alternate;null!==u&&((l=(u=u.updateQueue).lastBaseUpdate)!==i&&(null===l?u.firstBaseUpdate=c:l.next=c,u.lastBaseUpdate=s))}if(null!==o){var d=a.baseState;for(i=0,u=c=s=null,l=o;;){var p=l.lane,f=l.eventTime;if((r&p)===p){null!==u&&(u=u.next={eventTime:f,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var m=e,h=l;switch(p=t,f=n,h.tag){case 1:if("function"==typeof(m=h.payload)){d=m.call(f,d,p);break e}d=m;break e;case 3:m.flags=-65537&m.flags|128;case 0:if(null==(p="function"==typeof(m=h.payload)?m.call(f,d,p):m))break e;d=I({},d,p);break e;case 2:Ro=!0}}null!==l.callback&&0!==l.lane&&(e.flags|=64,null===(p=a.effects)?a.effects=[l]:p.push(l))}else f={eventTime:f,lane:p,tag:l.tag,payload:l.payload,callback:l.callback,next:null},null===u?(c=u=f,s=d):u=u.next=f,i|=p;if(null===(l=l.next)){if(null===(l=a.shared.pending))break;l=(p=l).next,p.next=null,a.lastBaseUpdate=p,a.shared.pending=null}}if(null===u&&(s=d),a.baseState=s,a.firstBaseUpdate=c,a.lastBaseUpdate=u,null!==(t=a.shared.interleaved)){a=t;do{i|=a.lane,a=a.next}while(a!==t)}else null===o&&(a.shared.lanes=0);Is|=i,e.lanes=i,e.memoizedState=d}}function Bo(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(o(191,a));a.call(r)}}}var zo=(new r.Component).refs;function Uo(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:I({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var $o={isMounted:function(e){return!!(e=e._reactInternals)&&$e(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=tc(),a=nc(e),o=Do(r,a);o.payload=t,null!=n&&(o.callback=n),null!==(t=Mo(e,o,a))&&(rc(t,e,a,r),Oo(t,e,a))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=tc(),a=nc(e),o=Do(r,a);o.tag=1,o.payload=t,null!=n&&(o.callback=n),null!==(t=Mo(e,o,a))&&(rc(t,e,a,r),Oo(t,e,a))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=tc(),r=nc(e),a=Do(n,r);a.tag=2,null!=t&&(a.callback=t),null!==(t=Mo(e,a,r))&&(rc(t,e,r,n),Oo(t,e,r))}};function qo(e,t,n,r,a,o,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,o,i):!t.prototype||!t.prototype.isPureReactComponent||(!sr(n,r)||!sr(a,o))}function Ho(e,t,n){var r=!1,a=Ta,o=t.contextType;return"object"==typeof o&&null!==o?o=_o(o):(a=La(t)?Pa:Aa.current,o=(r=null!=(r=t.contextTypes))?Ra(e,a):Ta),t=new t(n,o),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=$o,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=o),t}function Go(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&&$o.enqueueReplaceState(t,t.state,null)}function Wo(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs=zo,Lo(e);var o=t.contextType;"object"==typeof o&&null!==o?a.context=_o(o):(o=La(t)?Pa:Aa.current,a.context=Ra(e,o)),a.state=e.memoizedState,"function"==typeof(o=t.getDerivedStateFromProps)&&(Uo(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&&$o.enqueueReplaceState(a,a.state,null),Fo(e,n,a,r),a.state=e.memoizedState),"function"==typeof a.componentDidMount&&(e.flags|=4194308)}function Vo(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(o(309));var r=n.stateNode}if(!r)throw Error(o(147,e));var a=r,i=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===i?t.ref:(t=function(e){var t=a.refs;t===zo&&(t=a.refs={}),null===e?delete t[i]:t[i]=e},t._stringRef=i,t)}if("string"!=typeof e)throw Error(o(284));if(!n._owner)throw Error(o(290,e))}return e}function Ko(e,t){throw e=Object.prototype.toString.call(t),Error(o(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Qo(e){return(0,e._init)(e._payload)}function Yo(e){function t(t,n){if(e){var r=t.deletions;null===r?(t.deletions=[n],t.flags|=16):r.push(n)}}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=Dc(e,t)).index=0,e.sibling=null,e}function i(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):(t.flags|=1048576,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=Fc(n,e.mode,r)).return=e,t):((t=a(t,n)).return=e,t)}function c(e,t,n,r){var o=n.type;return o===S?d(e,t,n.props.children,r,n.key):null!==t&&(t.elementType===o||"object"==typeof o&&null!==o&&o.$$typeof===L&&Qo(o)===t.type)?((r=a(t,n.props)).ref=Vo(e,t,n),r.return=e,r):((r=Mc(n.type,n.key,n.props,null,e.mode,r)).ref=Vo(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Bc(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=Oc(n,e.mode,r,o)).return=e,t):((t=a(t,n)).return=e,t)}function p(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Fc(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case k:return(n=Mc(t.type,t.key,t.props,null,e.mode,n)).ref=Vo(e,null,t),n.return=e,n;case x:return(t=Bc(t,e.mode,n)).return=e,t;case L:return p(e,(0,t._init)(t._payload),n)}if(te(t)||M(t))return(t=Oc(t,e.mode,n,null)).return=e,t;Ko(e,t)}return null}function f(e,t,n,r){var a=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==a?null:s(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case k:return n.key===a?c(e,t,n,r):null;case x:return n.key===a?u(e,t,n,r):null;case L:return f(e,t,(a=n._init)(n._payload),r)}if(te(n)||M(n))return null!==a?null:d(e,t,n,r,null);Ko(e,n)}return null}function m(e,t,n,r,a){if("string"==typeof r&&""!==r||"number"==typeof r)return s(t,e=e.get(n)||null,""+r,a);if("object"==typeof r&&null!==r){switch(r.$$typeof){case k:return c(t,e=e.get(null===r.key?n:r.key)||null,r,a);case x:return u(t,e=e.get(null===r.key?n:r.key)||null,r,a);case L:return m(e,t,n,(0,r._init)(r._payload),a)}if(te(r)||M(r))return d(t,e=e.get(n)||null,r,a,null);Ko(t,r)}return null}function h(a,o,l,s){for(var c=null,u=null,d=o,h=o=0,g=null;null!==d&&h<l.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var b=f(a,d,l[h],s);if(null===b){null===d&&(d=g);break}e&&d&&null===b.alternate&&t(a,d),o=i(b,o,h),null===u?c=b:u.sibling=b,u=b,d=g}if(h===l.length)return n(a,d),ao&&Xa(a,h),c;if(null===d){for(;h<l.length;h++)null!==(d=p(a,l[h],s))&&(o=i(d,o,h),null===u?c=d:u.sibling=d,u=d);return ao&&Xa(a,h),c}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),o=i(g,o,h),null===u?c=g:u.sibling=g,u=g);return e&&d.forEach((function(e){return t(a,e)})),ao&&Xa(a,h),c}function g(a,l,s,c){var u=M(s);if("function"!=typeof u)throw Error(o(150));if(null==(s=u.call(s)))throw Error(o(151));for(var d=u=null,h=l,g=l=0,b=null,y=s.next();null!==h&&!y.done;g++,y=s.next()){h.index>g?(b=h,h=null):b=h.sibling;var v=f(a,h,y.value,c);if(null===v){null===h&&(h=b);break}e&&h&&null===v.alternate&&t(a,h),l=i(v,l,g),null===d?u=v:d.sibling=v,d=v,h=b}if(y.done)return n(a,h),ao&&Xa(a,g),u;if(null===h){for(;!y.done;g++,y=s.next())null!==(y=p(a,y.value,c))&&(l=i(y,l,g),null===d?u=y:d.sibling=y,d=y);return ao&&Xa(a,g),u}for(h=r(a,h);!y.done;g++,y=s.next())null!==(y=m(h,a,g,y.value,c))&&(e&&null!==y.alternate&&h.delete(null===y.key?g:y.key),l=i(y,l,g),null===d?u=y:d.sibling=y,d=y);return e&&h.forEach((function(e){return t(a,e)})),ao&&Xa(a,g),u}return function e(r,o,i,s){if("object"==typeof i&&null!==i&&i.type===S&&null===i.key&&(i=i.props.children),"object"==typeof i&&null!==i){switch(i.$$typeof){case k:e:{for(var c=i.key,u=o;null!==u;){if(u.key===c){if((c=i.type)===S){if(7===u.tag){n(r,u.sibling),(o=a(u,i.props.children)).return=r,r=o;break e}}else if(u.elementType===c||"object"==typeof c&&null!==c&&c.$$typeof===L&&Qo(c)===u.type){n(r,u.sibling),(o=a(u,i.props)).ref=Vo(r,u,i),o.return=r,r=o;break e}n(r,u);break}t(r,u),u=u.sibling}i.type===S?((o=Oc(i.props.children,r.mode,s,i.key)).return=r,r=o):((s=Mc(i.type,i.key,i.props,null,r.mode,s)).ref=Vo(r,o,i),s.return=r,r=s)}return l(r);case x:e:{for(u=i.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===i.containerInfo&&o.stateNode.implementation===i.implementation){n(r,o.sibling),(o=a(o,i.children||[])).return=r,r=o;break e}n(r,o);break}t(r,o),o=o.sibling}(o=Bc(i,r.mode,s)).return=r,r=o}return l(r);case L:return e(r,o,(u=i._init)(i._payload),s)}if(te(i))return h(r,o,i,s);if(M(i))return g(r,o,i,s);Ko(r,i)}return"string"==typeof i&&""!==i||"number"==typeof i?(i=""+i,null!==o&&6===o.tag?(n(r,o.sibling),(o=a(o,i)).return=r,r=o):(n(r,o),(o=Fc(i,r.mode,s)).return=r,r=o),l(r)):n(r,o)}}var Zo=Yo(!0),Xo=Yo(!1),Jo={},ei=Ea(Jo),ti=Ea(Jo),ni=Ea(Jo);function ri(e){if(e===Jo)throw Error(o(174));return e}function ai(e,t){switch(_a(ni,t),_a(ti,e),_a(ei,Jo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:se(null,"");break;default:t=se(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Ca(ei),_a(ei,t)}function oi(){Ca(ei),Ca(ti),Ca(ni)}function ii(e){ri(ni.current);var t=ri(ei.current),n=se(t,e.type);t!==n&&(_a(ti,e),_a(ei,n))}function li(e){ti.current===e&&(Ca(ei),Ca(ti))}var si=Ea(0);function ci(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(128&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 ui=[];function di(){for(var e=0;e<ui.length;e++)ui[e]._workInProgressVersionPrimary=null;ui.length=0}var pi=w.ReactCurrentDispatcher,fi=w.ReactCurrentBatchConfig,mi=0,hi=null,gi=null,bi=null,yi=!1,vi=!1,wi=0,ki=0;function xi(){throw Error(o(321))}function Si(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!lr(e[n],t[n]))return!1;return!0}function Ei(e,t,n,r,a,i){if(mi=i,hi=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,pi.current=null===e||null===e.memoizedState?ll:sl,e=n(r,a),vi){i=0;do{if(vi=!1,wi=0,25<=i)throw Error(o(301));i+=1,bi=gi=null,t.updateQueue=null,pi.current=cl,e=n(r,a)}while(vi)}if(pi.current=il,t=null!==gi&&null!==gi.next,mi=0,bi=gi=hi=null,yi=!1,t)throw Error(o(300));return e}function Ci(){var e=0!==wi;return wi=0,e}function _i(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===bi?hi.memoizedState=bi=e:bi=bi.next=e,bi}function Ti(){if(null===gi){var e=hi.alternate;e=null!==e?e.memoizedState:null}else e=gi.next;var t=null===bi?hi.memoizedState:bi.next;if(null!==t)bi=t,gi=e;else{if(null===e)throw Error(o(310));e={memoizedState:(gi=e).memoizedState,baseState:gi.baseState,baseQueue:gi.baseQueue,queue:gi.queue,next:null},null===bi?hi.memoizedState=bi=e:bi=bi.next=e}return bi}function Ai(e,t){return"function"==typeof t?t(e):t}function ji(e){var t=Ti(),n=t.queue;if(null===n)throw Error(o(311));n.lastRenderedReducer=e;var r=gi,a=r.baseQueue,i=n.pending;if(null!==i){if(null!==a){var l=a.next;a.next=i.next,i.next=l}r.baseQueue=a=i,n.pending=null}if(null!==a){i=a.next,r=r.baseState;var s=l=null,c=null,u=i;do{var d=u.lane;if((mi&d)===d)null!==c&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var p={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===c?(s=c=p,l=r):c=c.next=p,hi.lanes|=d,Is|=d}u=u.next}while(null!==u&&u!==i);null===c?l=r:c.next=s,lr(r,t.memoizedState)||(wl=!0),t.memoizedState=r,t.baseState=l,t.baseQueue=c,n.lastRenderedState=r}if(null!==(e=n.interleaved)){a=e;do{i=a.lane,hi.lanes|=i,Is|=i,a=a.next}while(a!==e)}else null===a&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Pi(e){var t=Ti(),n=t.queue;if(null===n)throw Error(o(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,i=t.memoizedState;if(null!==a){n.pending=null;var l=a=a.next;do{i=e(i,l.action),l=l.next}while(l!==a);lr(i,t.memoizedState)||(wl=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function Ri(){}function Li(e,t){var n=hi,r=Ti(),a=t(),i=!lr(r.memoizedState,a);if(i&&(r.memoizedState=a,wl=!0),r=r.queue,Hi(Mi.bind(null,n,r,e),[e]),r.getSnapshot!==t||i||null!==bi&&1&bi.memoizedState.tag){if(n.flags|=2048,Bi(9,Di.bind(null,n,r,a,t),void 0,null),null===Ps)throw Error(o(349));30&mi||Ni(n,t,a)}return a}function Ni(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=hi.updateQueue)?(t={lastEffect:null,stores:null},hi.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function Di(e,t,n,r){t.value=n,t.getSnapshot=r,Oi(t)&&Ii(e)}function Mi(e,t,n){return n((function(){Oi(t)&&Ii(e)}))}function Oi(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!lr(e,n)}catch(r){return!0}}function Ii(e){var t=Po(e,1);null!==t&&rc(t,e,1,-1)}function Fi(e){var t=_i();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Ai,lastRenderedState:e},t.queue=e,e=e.dispatch=nl.bind(null,hi,e),[t.memoizedState,e]}function Bi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=hi.updateQueue)?(t={lastEffect:null,stores:null},hi.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 zi(){return Ti().memoizedState}function Ui(e,t,n,r){var a=_i();hi.flags|=e,a.memoizedState=Bi(1|t,n,void 0,void 0===r?null:r)}function $i(e,t,n,r){var a=Ti();r=void 0===r?null:r;var o=void 0;if(null!==gi){var i=gi.memoizedState;if(o=i.destroy,null!==r&&Si(r,i.deps))return void(a.memoizedState=Bi(t,n,o,r))}hi.flags|=e,a.memoizedState=Bi(1|t,n,o,r)}function qi(e,t){return Ui(8390656,8,e,t)}function Hi(e,t){return $i(2048,8,e,t)}function Gi(e,t){return $i(4,2,e,t)}function Wi(e,t){return $i(4,4,e,t)}function Vi(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 Ki(e,t,n){return n=null!=n?n.concat([e]):null,$i(4,4,Vi.bind(null,t,e),n)}function Qi(){}function Yi(e,t){var n=Ti();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Si(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Zi(e,t){var n=Ti();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Si(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Xi(e,t,n){return 21&mi?(lr(n,t)||(n=ht(),hi.lanes|=n,Is|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,wl=!0),e.memoizedState=n)}function Ji(e,t){var n=vt;vt=0!==n&&4>n?n:4,e(!0);var r=fi.transition;fi.transition={};try{e(!1),t()}finally{vt=n,fi.transition=r}}function el(){return Ti().memoizedState}function tl(e,t,n){var r=nc(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},rl(e))al(t,n);else if(null!==(n=jo(e,t,n,r))){rc(n,e,r,tc()),ol(n,t,r)}}function nl(e,t,n){var r=nc(e),a={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(rl(e))al(t,a);else{var o=e.alternate;if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var i=t.lastRenderedState,l=o(i,n);if(a.hasEagerState=!0,a.eagerState=l,lr(l,i)){var s=t.interleaved;return null===s?(a.next=a,Ao(t)):(a.next=s.next,s.next=a),void(t.interleaved=a)}}catch(c){}null!==(n=jo(e,t,a,r))&&(rc(n,e,r,a=tc()),ol(n,t,r))}}function rl(e){var t=e.alternate;return e===hi||null!==t&&t===hi}function al(e,t){vi=yi=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function ol(e,t,n){if(4194240&n){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,yt(e,n)}}var il={readContext:_o,useCallback:xi,useContext:xi,useEffect:xi,useImperativeHandle:xi,useInsertionEffect:xi,useLayoutEffect:xi,useMemo:xi,useReducer:xi,useRef:xi,useState:xi,useDebugValue:xi,useDeferredValue:xi,useTransition:xi,useMutableSource:xi,useSyncExternalStore:xi,useId:xi,unstable_isNewReconciler:!1},ll={readContext:_o,useCallback:function(e,t){return _i().memoizedState=[e,void 0===t?null:t],e},useContext:_o,useEffect:qi,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Ui(4194308,4,Vi.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Ui(4194308,4,e,t)},useInsertionEffect:function(e,t){return Ui(4,2,e,t)},useMemo:function(e,t){var n=_i();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=_i();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=tl.bind(null,hi,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},_i().memoizedState=e},useState:Fi,useDebugValue:Qi,useDeferredValue:function(e){return _i().memoizedState=e},useTransition:function(){var e=Fi(!1),t=e[0];return e=Ji.bind(null,e[1]),_i().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=hi,a=_i();if(ao){if(void 0===n)throw Error(o(407));n=n()}else{if(n=t(),null===Ps)throw Error(o(349));30&mi||Ni(r,t,n)}a.memoizedState=n;var i={value:n,getSnapshot:t};return a.queue=i,qi(Mi.bind(null,r,i,e),[e]),r.flags|=2048,Bi(9,Di.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=_i(),t=Ps.identifierPrefix;if(ao){var n=Za;t=":"+t+"R"+(n=(Ya&~(1<<32-it(Ya)-1)).toString(32)+n),0<(n=wi++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=ki++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},sl={readContext:_o,useCallback:Yi,useContext:_o,useEffect:Hi,useImperativeHandle:Ki,useInsertionEffect:Gi,useLayoutEffect:Wi,useMemo:Zi,useReducer:ji,useRef:zi,useState:function(){return ji(Ai)},useDebugValue:Qi,useDeferredValue:function(e){return Xi(Ti(),gi.memoizedState,e)},useTransition:function(){return[ji(Ai)[0],Ti().memoizedState]},useMutableSource:Ri,useSyncExternalStore:Li,useId:el,unstable_isNewReconciler:!1},cl={readContext:_o,useCallback:Yi,useContext:_o,useEffect:Hi,useImperativeHandle:Ki,useInsertionEffect:Gi,useLayoutEffect:Wi,useMemo:Zi,useReducer:Pi,useRef:zi,useState:function(){return Pi(Ai)},useDebugValue:Qi,useDeferredValue:function(e){var t=Ti();return null===gi?t.memoizedState=e:Xi(t,gi.memoizedState,e)},useTransition:function(){return[Pi(Ai)[0],Ti().memoizedState]},useMutableSource:Ri,useSyncExternalStore:Li,useId:el,unstable_isNewReconciler:!1};function ul(e,t){try{var n="",r=t;do{n+=U(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,digest:null}}function dl(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function pl(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}var fl="function"==typeof WeakMap?WeakMap:Map;function ml(e,t,n){(n=Do(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Gs||(Gs=!0,Ws=r),pl(0,t)},n}function hl(e,t,n){(n=Do(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var a=t.value;n.payload=function(){return r(a)},n.callback=function(){pl(0,t)}}var o=e.stateNode;return null!==o&&"function"==typeof o.componentDidCatch&&(n.callback=function(){pl(0,t),"function"!=typeof r&&(null===Vs?Vs=new Set([this]):Vs.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function gl(e,t,n){var r=e.pingCache;if(null===r){r=e.pingCache=new fl;var a=new Set;r.set(t,a)}else void 0===(a=r.get(t))&&(a=new Set,r.set(t,a));a.has(n)||(a.add(n),e=_c.bind(null,e,t,n),t.then(e,e))}function bl(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function yl(e,t,n,r,a){return 1&e.mode?(e.flags|=65536,e.lanes=a,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=Do(-1,1)).tag=2,Mo(n,t,1))),n.lanes|=1),e)}var vl=w.ReactCurrentOwner,wl=!1;function kl(e,t,n,r){t.child=null===e?Xo(t,null,n,r):Zo(t,e.child,n,r)}function xl(e,t,n,r,a){n=n.render;var o=t.ref;return Co(t,a),r=Ei(e,t,n,r,o,a),n=Ci(),null===e||wl?(ao&&n&&eo(t),t.flags|=1,kl(e,t,r,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Gl(e,t,a))}function Sl(e,t,n,r,a){if(null===e){var o=n.type;return"function"!=typeof o||Nc(o)||void 0!==o.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Mc(n.type,null,r,t,t.mode,a)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,El(e,t,o,r,a))}if(o=e.child,!(e.lanes&a)){var i=o.memoizedProps;if((n=null!==(n=n.compare)?n:sr)(i,r)&&e.ref===t.ref)return Gl(e,t,a)}return t.flags|=1,(e=Dc(o,r)).ref=t.ref,e.return=t,t.child=e}function El(e,t,n,r,a){if(null!==e){var o=e.memoizedProps;if(sr(o,r)&&e.ref===t.ref){if(wl=!1,t.pendingProps=r=o,!(e.lanes&a))return t.lanes=e.lanes,Gl(e,t,a);131072&e.flags&&(wl=!0)}}return Tl(e,t,n,r,a)}function Cl(e,t,n){var r=t.pendingProps,a=r.children,o=null!==e?e.memoizedState:null;if("hidden"===r.mode)if(1&t.mode){if(!(1073741824&n))return e=null!==o?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,_a(Ds,Ns),Ns|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=null!==o?o.baseLanes:n,_a(Ds,Ns),Ns|=r}else t.memoizedState={baseLanes:0,cachePool:null,transitions:null},_a(Ds,Ns),Ns|=n;else null!==o?(r=o.baseLanes|n,t.memoizedState=null):r=n,_a(Ds,Ns),Ns|=r;return kl(e,t,a,n),t.child}function _l(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Tl(e,t,n,r,a){var o=La(n)?Pa:Aa.current;return o=Ra(t,o),Co(t,a),n=Ei(e,t,n,r,o,a),r=Ci(),null===e||wl?(ao&&r&&eo(t),t.flags|=1,kl(e,t,n,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Gl(e,t,a))}function Al(e,t,n,r,a){if(La(n)){var o=!0;Oa(t)}else o=!1;if(Co(t,a),null===t.stateNode)Hl(e,t),Ho(t,n,r),Wo(t,n,r,a),r=!0;else if(null===e){var i=t.stateNode,l=t.memoizedProps;i.props=l;var s=i.context,c=n.contextType;"object"==typeof c&&null!==c?c=_o(c):c=Ra(t,c=La(n)?Pa:Aa.current);var u=n.getDerivedStateFromProps,d="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==r||s!==c)&&Go(t,i,r,c),Ro=!1;var p=t.memoizedState;i.state=p,Fo(t,r,i,a),s=t.memoizedState,l!==r||p!==s||ja.current||Ro?("function"==typeof u&&(Uo(t,n,u,r),s=t.memoizedState),(l=Ro||qo(t,n,l,r,p,s,c))?(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|=4194308)):("function"==typeof i.componentDidMount&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=s),i.props=r,i.state=s,i.context=c,r=l):("function"==typeof i.componentDidMount&&(t.flags|=4194308),r=!1)}else{i=t.stateNode,No(e,t),l=t.memoizedProps,c=t.type===t.elementType?l:bo(t.type,l),i.props=c,d=t.pendingProps,p=i.context,"object"==typeof(s=n.contextType)&&null!==s?s=_o(s):s=Ra(t,s=La(n)?Pa:Aa.current);var f=n.getDerivedStateFromProps;(u="function"==typeof f||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==d||p!==s)&&Go(t,i,r,s),Ro=!1,p=t.memoizedState,i.state=p,Fo(t,r,i,a);var m=t.memoizedState;l!==d||p!==m||ja.current||Ro?("function"==typeof f&&(Uo(t,n,f,r),m=t.memoizedState),(c=Ro||qo(t,n,c,r,p,m,s)||!1)?(u||"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|=1024)):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),i.props=r,i.state=m,i.context=s,r=c):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),r=!1)}return jl(e,t,n,r,o,a)}function jl(e,t,n,r,a,o){_l(e,t);var i=!!(128&t.flags);if(!r&&!i)return a&&Ia(t,n,!1),Gl(e,t,o);r=t.stateNode,vl.current=t;var l=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=Zo(t,e.child,null,o),t.child=Zo(t,null,l,o)):kl(e,t,l,o),t.memoizedState=r.state,a&&Ia(t,n,!0),t.child}function Pl(e){var t=e.stateNode;t.pendingContext?Da(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Da(0,t.context,!1),ai(e,t.containerInfo)}function Rl(e,t,n,r,a){return mo(),ho(a),t.flags|=256,kl(e,t,n,r),t.child}var Ll,Nl,Dl,Ml,Ol={dehydrated:null,treeContext:null,retryLane:0};function Il(e){return{baseLanes:e,cachePool:null,transitions:null}}function Fl(e,t,n){var r,a=t.pendingProps,i=si.current,l=!1,s=!!(128&t.flags);if((r=s)||(r=(null===e||null!==e.memoizedState)&&!!(2&i)),r?(l=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(i|=1),_a(si,1&i),null===e)return co(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(1&t.mode?"$!"===e.data?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(s=a.children,e=a.fallback,l?(a=t.mode,l=t.child,s={mode:"hidden",children:s},1&a||null===l?l=Ic(s,a,0,null):(l.childLanes=0,l.pendingProps=s),e=Oc(e,a,n,null),l.return=t,e.return=t,l.sibling=e,t.child=l,t.child.memoizedState=Il(n),t.memoizedState=Ol,e):Bl(t,s));if(null!==(i=e.memoizedState)&&null!==(r=i.dehydrated))return function(e,t,n,r,a,i,l){if(n)return 256&t.flags?(t.flags&=-257,zl(e,t,l,r=dl(Error(o(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(i=r.fallback,a=t.mode,r=Ic({mode:"visible",children:r.children},a,0,null),(i=Oc(i,a,l,null)).flags|=2,r.return=t,i.return=t,r.sibling=i,t.child=r,1&t.mode&&Zo(t,e.child,null,l),t.child.memoizedState=Il(l),t.memoizedState=Ol,i);if(!(1&t.mode))return zl(e,t,l,null);if("$!"===a.data){if(r=a.nextSibling&&a.nextSibling.dataset)var s=r.dgst;return r=s,zl(e,t,l,r=dl(i=Error(o(419)),r,void 0))}if(s=!!(l&e.childLanes),wl||s){if(null!==(r=Ps)){switch(l&-l){case 4:a=2;break;case 16:a=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}0!==(a=a&(r.suspendedLanes|l)?0:a)&&a!==i.retryLane&&(i.retryLane=a,Po(e,a),rc(r,e,a,-1))}return gc(),zl(e,t,l,r=dl(Error(o(421))))}return"$?"===a.data?(t.flags|=128,t.child=e.child,t=Ac.bind(null,e),a._reactRetry=t,null):(e=i.treeContext,ro=ca(a.nextSibling),no=t,ao=!0,oo=null,null!==e&&(Va[Ka++]=Ya,Va[Ka++]=Za,Va[Ka++]=Qa,Ya=e.id,Za=e.overflow,Qa=t),t=Bl(t,r.children),t.flags|=4096,t)}(e,t,s,a,r,i,n);if(l){l=a.fallback,s=t.mode,r=(i=e.child).sibling;var c={mode:"hidden",children:a.children};return 1&s||t.child===i?(a=Dc(i,c)).subtreeFlags=14680064&i.subtreeFlags:((a=t.child).childLanes=0,a.pendingProps=c,t.deletions=null),null!==r?l=Dc(r,l):(l=Oc(l,s,n,null)).flags|=2,l.return=t,a.return=t,a.sibling=l,t.child=a,a=l,l=t.child,s=null===(s=e.child.memoizedState)?Il(n):{baseLanes:s.baseLanes|n,cachePool:null,transitions:s.transitions},l.memoizedState=s,l.childLanes=e.childLanes&~n,t.memoizedState=Ol,a}return e=(l=e.child).sibling,a=Dc(l,{mode:"visible",children:a.children}),!(1&t.mode)&&(a.lanes=n),a.return=t,a.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=a,t.memoizedState=null,a}function Bl(e,t){return(t=Ic({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function zl(e,t,n,r){return null!==r&&ho(r),Zo(t,e.child,null,n),(e=Bl(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Ul(e,t,n){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t),Eo(e.return,t,n)}function $l(e,t,n,r,a){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=a)}function ql(e,t,n){var r=t.pendingProps,a=r.revealOrder,o=r.tail;if(kl(e,t,r.children,n),2&(r=si.current))r=1&r|2,t.flags|=128;else{if(null!==e&&128&e.flags)e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Ul(e,n,t);else if(19===e.tag)Ul(e,n,t);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(_a(si,r),1&t.mode)switch(a){case"forwards":for(n=t.child,a=null;null!==n;)null!==(e=n.alternate)&&null===ci(e)&&(a=n),n=n.sibling;null===(n=a)?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),$l(t,!1,a,n,o);break;case"backwards":for(n=null,a=t.child,t.child=null;null!==a;){if(null!==(e=a.alternate)&&null===ci(e)){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}$l(t,!0,n,null,o);break;case"together":$l(t,!1,null,null,void 0);break;default:t.memoizedState=null}else t.memoizedState=null;return t.child}function Hl(e,t){!(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Gl(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Is|=t.lanes,!(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(n=Dc(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Dc(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Wl(e,t){if(!ao)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 Vl(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,r=0;if(t)for(var a=e.child;null!==a;)n|=a.lanes|a.childLanes,r|=14680064&a.subtreeFlags,r|=14680064&a.flags,a.return=e,a=a.sibling;else for(a=e.child;null!==a;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags,r|=a.flags,a.return=e,a=a.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Kl(e,t,n){var r=t.pendingProps;switch(to(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Vl(t),null;case 1:case 17:return La(t.type)&&Na(),Vl(t),null;case 3:return r=t.stateNode,oi(),Ca(ja),Ca(Aa),di(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(po(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&!(256&t.flags)||(t.flags|=1024,null!==oo&&(lc(oo),oo=null))),Nl(e,t),Vl(t),null;case 5:li(t);var a=ri(ni.current);if(n=t.type,null!==e&&null!=t.stateNode)Dl(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(null===t.stateNode)throw Error(o(166));return Vl(t),null}if(e=ri(ei.current),po(t)){r=t.stateNode,n=t.type;var i=t.memoizedProps;switch(r[pa]=t,r[fa]=i,e=!!(1&t.mode),n){case"dialog":Br("cancel",r),Br("close",r);break;case"iframe":case"object":case"embed":Br("load",r);break;case"video":case"audio":for(a=0;a<Mr.length;a++)Br(Mr[a],r);break;case"source":Br("error",r);break;case"img":case"image":case"link":Br("error",r),Br("load",r);break;case"details":Br("toggle",r);break;case"input":Y(r,i),Br("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!i.multiple},Br("invalid",r);break;case"textarea":ae(r,i),Br("invalid",r)}for(var s in ye(n,i),a=null,i)if(i.hasOwnProperty(s)){var c=i[s];"children"===s?"string"==typeof c?r.textContent!==c&&(!0!==i.suppressHydrationWarning&&Xr(r.textContent,c,e),a=["children",c]):"number"==typeof c&&r.textContent!==""+c&&(!0!==i.suppressHydrationWarning&&Xr(r.textContent,c,e),a=["children",""+c]):l.hasOwnProperty(s)&&null!=c&&"onScroll"===s&&Br("scroll",r)}switch(n){case"input":W(r),J(r,i,!0);break;case"textarea":W(r),ie(r);break;case"select":case"option":break;default:"function"==typeof i.onClick&&(r.onclick=Jr)}r=a,t.updateQueue=r,null!==r&&(t.flags|=4)}else{s=9===a.nodeType?a:a.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=le(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=s.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),"select"===n&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[pa]=t,e[fa]=r,Ll(e,t,!1,!1),t.stateNode=e;e:{switch(s=ve(n,r),n){case"dialog":Br("cancel",e),Br("close",e),a=r;break;case"iframe":case"object":case"embed":Br("load",e),a=r;break;case"video":case"audio":for(a=0;a<Mr.length;a++)Br(Mr[a],e);a=r;break;case"source":Br("error",e),a=r;break;case"img":case"image":case"link":Br("error",e),Br("load",e),a=r;break;case"details":Br("toggle",e),a=r;break;case"input":Y(e,r),a=Q(e,r),Br("invalid",e);break;case"option":default:a=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=I({},r,{value:void 0}),Br("invalid",e);break;case"textarea":ae(e,r),a=re(e,r),Br("invalid",e)}for(i in ye(n,a),c=a)if(c.hasOwnProperty(i)){var u=c[i];"style"===i?ge(e,u):"dangerouslySetInnerHTML"===i?null!=(u=u?u.__html:void 0)&&de(e,u):"children"===i?"string"==typeof u?("textarea"!==n||""!==u)&&pe(e,u):"number"==typeof u&&pe(e,""+u):"suppressContentEditableWarning"!==i&&"suppressHydrationWarning"!==i&&"autoFocus"!==i&&(l.hasOwnProperty(i)?null!=u&&"onScroll"===i&&Br("scroll",e):null!=u&&v(e,i,u,s))}switch(n){case"input":W(e),J(e,r,!1);break;case"textarea":W(e),ie(e);break;case"option":null!=r.value&&e.setAttribute("value",""+H(r.value));break;case"select":e.multiple=!!r.multiple,null!=(i=r.value)?ne(e,!!r.multiple,i,!1):null!=r.defaultValue&&ne(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof a.onClick&&(e.onclick=Jr)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Vl(t),null;case 6:if(e&&null!=t.stateNode)Ml(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(o(166));if(n=ri(ni.current),ri(ei.current),po(t)){if(r=t.stateNode,n=t.memoizedProps,r[pa]=t,(i=r.nodeValue!==n)&&null!==(e=no))switch(e.tag){case 3:Xr(r.nodeValue,n,!!(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Xr(r.nodeValue,n,!!(1&e.mode))}i&&(t.flags|=4)}else(r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[pa]=t,t.stateNode=r}return Vl(t),null;case 13:if(Ca(si),r=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(ao&&null!==ro&&1&t.mode&&!(128&t.flags))fo(),mo(),t.flags|=98560,i=!1;else if(i=po(t),null!==r&&null!==r.dehydrated){if(null===e){if(!i)throw Error(o(318));if(!(i=null!==(i=t.memoizedState)?i.dehydrated:null))throw Error(o(317));i[pa]=t}else mo(),!(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Vl(t),i=!1}else null!==oo&&(lc(oo),oo=null),i=!0;if(!i)return 65536&t.flags?t:null}return 128&t.flags?(t.lanes=n,t):((r=null!==r)!==(null!==e&&null!==e.memoizedState)&&r&&(t.child.flags|=8192,1&t.mode&&(null===e||1&si.current?0===Ms&&(Ms=3):gc())),null!==t.updateQueue&&(t.flags|=4),Vl(t),null);case 4:return oi(),Nl(e,t),null===e&&$r(t.stateNode.containerInfo),Vl(t),null;case 10:return So(t.type._context),Vl(t),null;case 19:if(Ca(si),null===(i=t.memoizedState))return Vl(t),null;if(r=!!(128&t.flags),null===(s=i.rendering))if(r)Wl(i,!1);else{if(0!==Ms||null!==e&&128&e.flags)for(e=t.child;null!==e;){if(null!==(s=ci(e))){for(t.flags|=128,Wl(i,!1),null!==(r=s.updateQueue)&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;null!==n;)e=r,(i=n).flags&=14680066,null===(s=i.alternate)?(i.childLanes=0,i.lanes=e,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=s.childLanes,i.lanes=s.lanes,i.child=s.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=s.memoizedProps,i.memoizedState=s.memoizedState,i.updateQueue=s.updateQueue,i.type=s.type,e=s.dependencies,i.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return _a(si,1&si.current|2),t.child}e=e.sibling}null!==i.tail&&Ze()>qs&&(t.flags|=128,r=!0,Wl(i,!1),t.lanes=4194304)}else{if(!r)if(null!==(e=ci(s))){if(t.flags|=128,r=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Wl(i,!0),null===i.tail&&"hidden"===i.tailMode&&!s.alternate&&!ao)return Vl(t),null}else 2*Ze()-i.renderingStartTime>qs&&1073741824!==n&&(t.flags|=128,r=!0,Wl(i,!1),t.lanes=4194304);i.isBackwards?(s.sibling=t.child,t.child=s):(null!==(n=i.last)?n.sibling=s:t.child=s,i.last=s)}return null!==i.tail?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Ze(),t.sibling=null,n=si.current,_a(si,r?1&n|2:1&n),t):(Vl(t),null);case 22:case 23:return pc(),r=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==r&&(t.flags|=8192),r&&1&t.mode?!!(1073741824&Ns)&&(Vl(t),6&t.subtreeFlags&&(t.flags|=8192)):Vl(t),null;case 24:case 25:return null}throw Error(o(156,t.tag))}function Ql(e,t){switch(to(t),t.tag){case 1:return La(t.type)&&Na(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return oi(),Ca(ja),Ca(Aa),di(),65536&(e=t.flags)&&!(128&e)?(t.flags=-65537&e|128,t):null;case 5:return li(t),null;case 13:if(Ca(si),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(o(340));mo()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Ca(si),null;case 4:return oi(),null;case 10:return So(t.type._context),null;case 22:case 23:return pc(),null;default:return null}}Ll=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}},Nl=function(){},Dl=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,ri(ei.current);var o,i=null;switch(n){case"input":a=Q(e,a),r=Q(e,r),i=[];break;case"select":a=I({},a,{value:void 0}),r=I({},r,{value:void 0}),i=[];break;case"textarea":a=re(e,a),r=re(e,r),i=[];break;default:"function"!=typeof a.onClick&&"function"==typeof r.onClick&&(e.onclick=Jr)}for(u in ye(n,r),n=null,a)if(!r.hasOwnProperty(u)&&a.hasOwnProperty(u)&&null!=a[u])if("style"===u){var s=a[u];for(o in s)s.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(l.hasOwnProperty(u)?i||(i=[]):(i=i||[]).push(u,null));for(u in r){var c=r[u];if(s=null!=a?a[u]:void 0,r.hasOwnProperty(u)&&c!==s&&(null!=c||null!=s))if("style"===u)if(s){for(o in s)!s.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&s[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(i||(i=[]),i.push(u,n)),n=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,s=s?s.__html:void 0,null!=c&&s!==c&&(i=i||[]).push(u,c)):"children"===u?"string"!=typeof c&&"number"!=typeof c||(i=i||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(l.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&Br("scroll",e),i||s===c||(i=[])):(i=i||[]).push(u,c))}n&&(i=i||[]).push("style",n);var u=i;(t.updateQueue=u)&&(t.flags|=4)}},Ml=function(e,t,n,r){n!==r&&(t.flags|=4)};var Yl=!1,Zl=!1,Xl="function"==typeof WeakSet?WeakSet:Set,Jl=null;function es(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(r){Cc(e,t,r)}else n.current=null}function ts(e,t,n){try{n()}catch(r){Cc(e,t,r)}}var ns=!1;function rs(e,t,n){var r=t.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var a=r=r.next;do{if((a.tag&e)===e){var o=a.destroy;a.destroy=void 0,void 0!==o&&ts(t,n,o)}a=a.next}while(a!==r)}}function as(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function os(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function is(e){var t=e.alternate;null!==t&&(e.alternate=null,is(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[pa],delete t[fa],delete t[ha],delete t[ga],delete t[ba])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ls(e){return 5===e.tag||3===e.tag||4===e.tag}function ss(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||ls(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function cs(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,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=Jr));else if(4!==r&&null!==(e=e.child))for(cs(e,t,n),e=e.sibling;null!==e;)cs(e,t,n),e=e.sibling}function us(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(us(e,t,n),e=e.sibling;null!==e;)us(e,t,n),e=e.sibling}var ds=null,ps=!1;function fs(e,t,n){for(n=n.child;null!==n;)ms(e,t,n),n=n.sibling}function ms(e,t,n){if(ot&&"function"==typeof ot.onCommitFiberUnmount)try{ot.onCommitFiberUnmount(at,n)}catch(l){}switch(n.tag){case 5:Zl||es(n,t);case 6:var r=ds,a=ps;ds=null,fs(e,t,n),ps=a,null!==(ds=r)&&(ps?(e=ds,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):ds.removeChild(n.stateNode));break;case 18:null!==ds&&(ps?(e=ds,n=n.stateNode,8===e.nodeType?sa(e.parentNode,n):1===e.nodeType&&sa(e,n),$t(e)):sa(ds,n.stateNode));break;case 4:r=ds,a=ps,ds=n.stateNode.containerInfo,ps=!0,fs(e,t,n),ds=r,ps=a;break;case 0:case 11:case 14:case 15:if(!Zl&&(null!==(r=n.updateQueue)&&null!==(r=r.lastEffect))){a=r=r.next;do{var o=a,i=o.destroy;o=o.tag,void 0!==i&&(2&o||4&o)&&ts(n,t,i),a=a.next}while(a!==r)}fs(e,t,n);break;case 1:if(!Zl&&(es(n,t),"function"==typeof(r=n.stateNode).componentWillUnmount))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Cc(n,t,l)}fs(e,t,n);break;case 21:fs(e,t,n);break;case 22:1&n.mode?(Zl=(r=Zl)||null!==n.memoizedState,fs(e,t,n),Zl=r):fs(e,t,n);break;default:fs(e,t,n)}}function hs(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Xl),t.forEach((function(t){var r=jc.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function gs(e,t){var n=t.deletions;if(null!==n)for(var r=0;r<n.length;r++){var a=n[r];try{var i=e,l=t,s=l;e:for(;null!==s;){switch(s.tag){case 5:ds=s.stateNode,ps=!1;break e;case 3:case 4:ds=s.stateNode.containerInfo,ps=!0;break e}s=s.return}if(null===ds)throw Error(o(160));ms(i,l,a),ds=null,ps=!1;var c=a.alternate;null!==c&&(c.return=null),a.return=null}catch(u){Cc(a,t,u)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)bs(t,e),t=t.sibling}function bs(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(gs(t,e),ys(e),4&r){try{rs(3,e,e.return),as(3,e)}catch(g){Cc(e,e.return,g)}try{rs(5,e,e.return)}catch(g){Cc(e,e.return,g)}}break;case 1:gs(t,e),ys(e),512&r&&null!==n&&es(n,n.return);break;case 5:if(gs(t,e),ys(e),512&r&&null!==n&&es(n,n.return),32&e.flags){var a=e.stateNode;try{pe(a,"")}catch(g){Cc(e,e.return,g)}}if(4&r&&null!=(a=e.stateNode)){var i=e.memoizedProps,l=null!==n?n.memoizedProps:i,s=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===s&&"radio"===i.type&&null!=i.name&&Z(a,i),ve(s,l);var u=ve(s,i);for(l=0;l<c.length;l+=2){var d=c[l],p=c[l+1];"style"===d?ge(a,p):"dangerouslySetInnerHTML"===d?de(a,p):"children"===d?pe(a,p):v(a,d,p,u)}switch(s){case"input":X(a,i);break;case"textarea":oe(a,i);break;case"select":var f=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!i.multiple;var m=i.value;null!=m?ne(a,!!i.multiple,m,!1):f!==!!i.multiple&&(null!=i.defaultValue?ne(a,!!i.multiple,i.defaultValue,!0):ne(a,!!i.multiple,i.multiple?[]:"",!1))}a[fa]=i}catch(g){Cc(e,e.return,g)}}break;case 6:if(gs(t,e),ys(e),4&r){if(null===e.stateNode)throw Error(o(162));a=e.stateNode,i=e.memoizedProps;try{a.nodeValue=i}catch(g){Cc(e,e.return,g)}}break;case 3:if(gs(t,e),ys(e),4&r&&null!==n&&n.memoizedState.isDehydrated)try{$t(t.containerInfo)}catch(g){Cc(e,e.return,g)}break;case 4:default:gs(t,e),ys(e);break;case 13:gs(t,e),ys(e),8192&(a=e.child).flags&&(i=null!==a.memoizedState,a.stateNode.isHidden=i,!i||null!==a.alternate&&null!==a.alternate.memoizedState||($s=Ze())),4&r&&hs(e);break;case 22:if(d=null!==n&&null!==n.memoizedState,1&e.mode?(Zl=(u=Zl)||d,gs(t,e),Zl=u):gs(t,e),ys(e),8192&r){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!d&&1&e.mode)for(Jl=e,d=e.child;null!==d;){for(p=Jl=d;null!==Jl;){switch(m=(f=Jl).child,f.tag){case 0:case 11:case 14:case 15:rs(4,f,f.return);break;case 1:es(f,f.return);var h=f.stateNode;if("function"==typeof h.componentWillUnmount){r=f,n=f.return;try{t=r,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(g){Cc(r,n,g)}}break;case 5:es(f,f.return);break;case 22:if(null!==f.memoizedState){xs(p);continue}}null!==m?(m.return=f,Jl=m):xs(p)}d=d.sibling}e:for(d=null,p=e;;){if(5===p.tag){if(null===d){d=p;try{a=p.stateNode,u?"function"==typeof(i=a.style).setProperty?i.setProperty("display","none","important"):i.display="none":(s=p.stateNode,l=null!=(c=p.memoizedProps.style)&&c.hasOwnProperty("display")?c.display:null,s.style.display=he("display",l))}catch(g){Cc(e,e.return,g)}}}else if(6===p.tag){if(null===d)try{p.stateNode.nodeValue=u?"":p.memoizedProps}catch(g){Cc(e,e.return,g)}}else if((22!==p.tag&&23!==p.tag||null===p.memoizedState||p===e)&&null!==p.child){p.child.return=p,p=p.child;continue}if(p===e)break e;for(;null===p.sibling;){if(null===p.return||p.return===e)break e;d===p&&(d=null),p=p.return}d===p&&(d=null),p.sibling.return=p.return,p=p.sibling}}break;case 19:gs(t,e),ys(e),4&r&&hs(e);case 21:}}function ys(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(ls(n)){var r=n;break e}n=n.return}throw Error(o(160))}switch(r.tag){case 5:var a=r.stateNode;32&r.flags&&(pe(a,""),r.flags&=-33),us(e,ss(e),a);break;case 3:case 4:var i=r.stateNode.containerInfo;cs(e,ss(e),i);break;default:throw Error(o(161))}}catch(l){Cc(e,e.return,l)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function vs(e,t,n){Jl=e,ws(e,t,n)}function ws(e,t,n){for(var r=!!(1&e.mode);null!==Jl;){var a=Jl,o=a.child;if(22===a.tag&&r){var i=null!==a.memoizedState||Yl;if(!i){var l=a.alternate,s=null!==l&&null!==l.memoizedState||Zl;l=Yl;var c=Zl;if(Yl=i,(Zl=s)&&!c)for(Jl=a;null!==Jl;)s=(i=Jl).child,22===i.tag&&null!==i.memoizedState?Ss(a):null!==s?(s.return=i,Jl=s):Ss(a);for(;null!==o;)Jl=o,ws(o,t,n),o=o.sibling;Jl=a,Yl=l,Zl=c}ks(e)}else 8772&a.subtreeFlags&&null!==o?(o.return=a,Jl=o):ks(e)}}function ks(e){for(;null!==Jl;){var t=Jl;if(8772&t.flags){var n=t.alternate;try{if(8772&t.flags)switch(t.tag){case 0:case 11:case 15:Zl||as(5,t);break;case 1:var r=t.stateNode;if(4&t.flags&&!Zl)if(null===n)r.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:bo(t.type,n.memoizedProps);r.componentDidUpdate(a,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var i=t.updateQueue;null!==i&&Bo(t,i,r);break;case 3:var l=t.updateQueue;if(null!==l){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Bo(t,l,n)}break;case 5:var s=t.stateNode;if(null===n&&4&t.flags){n=s;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var d=u.memoizedState;if(null!==d){var p=d.dehydrated;null!==p&&$t(p)}}}break;default:throw Error(o(163))}Zl||512&t.flags&&os(t)}catch(f){Cc(t,t.return,f)}}if(t===e){Jl=null;break}if(null!==(n=t.sibling)){n.return=t.return,Jl=n;break}Jl=t.return}}function xs(e){for(;null!==Jl;){var t=Jl;if(t===e){Jl=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Jl=n;break}Jl=t.return}}function Ss(e){for(;null!==Jl;){var t=Jl;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{as(4,t)}catch(s){Cc(t,n,s)}break;case 1:var r=t.stateNode;if("function"==typeof r.componentDidMount){var a=t.return;try{r.componentDidMount()}catch(s){Cc(t,a,s)}}var o=t.return;try{os(t)}catch(s){Cc(t,o,s)}break;case 5:var i=t.return;try{os(t)}catch(s){Cc(t,i,s)}}}catch(s){Cc(t,t.return,s)}if(t===e){Jl=null;break}var l=t.sibling;if(null!==l){l.return=t.return,Jl=l;break}Jl=t.return}}var Es,Cs=Math.ceil,_s=w.ReactCurrentDispatcher,Ts=w.ReactCurrentOwner,As=w.ReactCurrentBatchConfig,js=0,Ps=null,Rs=null,Ls=0,Ns=0,Ds=Ea(0),Ms=0,Os=null,Is=0,Fs=0,Bs=0,zs=null,Us=null,$s=0,qs=1/0,Hs=null,Gs=!1,Ws=null,Vs=null,Ks=!1,Qs=null,Ys=0,Zs=0,Xs=null,Js=-1,ec=0;function tc(){return 6&js?Ze():-1!==Js?Js:Js=Ze()}function nc(e){return 1&e.mode?2&js&&0!==Ls?Ls&-Ls:null!==go.transition?(0===ec&&(ec=ht()),ec):0!==(e=vt)?e:e=void 0===(e=window.event)?16:Yt(e.type):1}function rc(e,t,n,r){if(50<Zs)throw Zs=0,Xs=null,Error(o(185));bt(e,n,r),2&js&&e===Ps||(e===Ps&&(!(2&js)&&(Fs|=n),4===Ms&&sc(e,Ls)),ac(e,r),1===n&&0===js&&!(1&t.mode)&&(qs=Ze()+500,Ba&&$a()))}function ac(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,a=e.expirationTimes,o=e.pendingLanes;0<o;){var i=31-it(o),l=1<<i,s=a[i];-1===s?l&n&&!(l&r)||(a[i]=ft(l,t)):s<=t&&(e.expiredLanes|=l),o&=~l}}(e,t);var r=pt(e,e===Ps?Ls:0);if(0===r)null!==n&&Ke(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(null!=n&&Ke(n),1===t)0===e.tag?function(e){Ba=!0,Ua(e)}(cc.bind(null,e)):Ua(cc.bind(null,e)),ia((function(){!(6&js)&&$a()})),n=null;else{switch(wt(r)){case 1:n=Je;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=rt}n=Pc(n,oc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function oc(e,t){if(Js=-1,ec=0,6&js)throw Error(o(327));var n=e.callbackNode;if(Sc()&&e.callbackNode!==n)return null;var r=pt(e,e===Ps?Ls:0);if(0===r)return null;if(30&r||r&e.expiredLanes||t)t=bc(e,r);else{t=r;var a=js;js|=2;var i=hc();for(Ps===e&&Ls===t||(Hs=null,qs=Ze()+500,fc(e,t));;)try{vc();break}catch(s){mc(e,s)}xo(),_s.current=i,js=a,null!==Rs?t=0:(Ps=null,Ls=0,t=Ms)}if(0!==t){if(2===t&&(0!==(a=mt(e))&&(r=a,t=ic(e,a))),1===t)throw n=Os,fc(e,0),sc(e,r),ac(e,Ze()),n;if(6===t)sc(e,r);else{if(a=e.current.alternate,!(30&r||function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var r=0;r<n.length;r++){var a=n[r],o=a.getSnapshot;a=a.value;try{if(!lr(o(),a))return!1}catch(l){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(a)||(t=bc(e,r),2===t&&(i=mt(e),0!==i&&(r=i,t=ic(e,i))),1!==t)))throw n=Os,fc(e,0),sc(e,r),ac(e,Ze()),n;switch(e.finishedWork=a,e.finishedLanes=r,t){case 0:case 1:throw Error(o(345));case 2:case 5:xc(e,Us,Hs);break;case 3:if(sc(e,r),(130023424&r)===r&&10<(t=$s+500-Ze())){if(0!==pt(e,0))break;if(((a=e.suspendedLanes)&r)!==r){tc(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=ra(xc.bind(null,e,Us,Hs),t);break}xc(e,Us,Hs);break;case 4:if(sc(e,r),(4194240&r)===r)break;for(t=e.eventTimes,a=-1;0<r;){var l=31-it(r);i=1<<l,(l=t[l])>a&&(a=l),r&=~i}if(r=a,10<(r=(120>(r=Ze()-r)?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Cs(r/1960))-r)){e.timeoutHandle=ra(xc.bind(null,e,Us,Hs),r);break}xc(e,Us,Hs);break;default:throw Error(o(329))}}}return ac(e,Ze()),e.callbackNode===n?oc.bind(null,e):null}function ic(e,t){var n=zs;return e.current.memoizedState.isDehydrated&&(fc(e,t).flags|=256),2!==(e=bc(e,t))&&(t=Us,Us=n,null!==t&&lc(t)),e}function lc(e){null===Us?Us=e:Us.push.apply(Us,e)}function sc(e,t){for(t&=~Bs,t&=~Fs,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),r=1<<n;e[n]=-1,t&=~r}}function cc(e){if(6&js)throw Error(o(327));Sc();var t=pt(e,0);if(!(1&t))return ac(e,Ze()),null;var n=bc(e,t);if(0!==e.tag&&2===n){var r=mt(e);0!==r&&(t=r,n=ic(e,r))}if(1===n)throw n=Os,fc(e,0),sc(e,t),ac(e,Ze()),n;if(6===n)throw Error(o(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,xc(e,Us,Hs),ac(e,Ze()),null}function uc(e,t){var n=js;js|=1;try{return e(t)}finally{0===(js=n)&&(qs=Ze()+500,Ba&&$a())}}function dc(e){null!==Qs&&0===Qs.tag&&!(6&js)&&Sc();var t=js;js|=1;var n=As.transition,r=vt;try{if(As.transition=null,vt=1,e)return e()}finally{vt=r,As.transition=n,!(6&(js=t))&&$a()}}function pc(){Ns=Ds.current,Ca(Ds)}function fc(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,aa(n)),null!==Rs)for(n=Rs.return;null!==n;){var r=n;switch(to(r),r.tag){case 1:null!=(r=r.type.childContextTypes)&&Na();break;case 3:oi(),Ca(ja),Ca(Aa),di();break;case 5:li(r);break;case 4:oi();break;case 13:case 19:Ca(si);break;case 10:So(r.type._context);break;case 22:case 23:pc()}n=n.return}if(Ps=e,Rs=e=Dc(e.current,null),Ls=Ns=t,Ms=0,Os=null,Bs=Fs=Is=0,Us=zs=null,null!==To){for(t=0;t<To.length;t++)if(null!==(r=(n=To[t]).interleaved)){n.interleaved=null;var a=r.next,o=n.pending;if(null!==o){var i=o.next;o.next=a,r.next=i}n.pending=r}To=null}return e}function mc(e,t){for(;;){var n=Rs;try{if(xo(),pi.current=il,yi){for(var r=hi.memoizedState;null!==r;){var a=r.queue;null!==a&&(a.pending=null),r=r.next}yi=!1}if(mi=0,bi=gi=hi=null,vi=!1,wi=0,Ts.current=null,null===n||null===n.return){Ms=1,Os=t,Rs=null;break}e:{var i=e,l=n.return,s=n,c=t;if(t=Ls,s.flags|=32768,null!==c&&"object"==typeof c&&"function"==typeof c.then){var u=c,d=s,p=d.tag;if(!(1&d.mode||0!==p&&11!==p&&15!==p)){var f=d.alternate;f?(d.updateQueue=f.updateQueue,d.memoizedState=f.memoizedState,d.lanes=f.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=bl(l);if(null!==m){m.flags&=-257,yl(m,l,s,0,t),1&m.mode&&gl(i,u,t),c=u;var h=(t=m).updateQueue;if(null===h){var g=new Set;g.add(c),t.updateQueue=g}else h.add(c);break e}if(!(1&t)){gl(i,u,t),gc();break e}c=Error(o(426))}else if(ao&&1&s.mode){var b=bl(l);if(null!==b){!(65536&b.flags)&&(b.flags|=256),yl(b,l,s,0,t),ho(ul(c,s));break e}}i=c=ul(c,s),4!==Ms&&(Ms=2),null===zs?zs=[i]:zs.push(i),i=l;do{switch(i.tag){case 3:i.flags|=65536,t&=-t,i.lanes|=t,Io(i,ml(0,c,t));break e;case 1:s=c;var y=i.type,v=i.stateNode;if(!(128&i.flags||"function"!=typeof y.getDerivedStateFromError&&(null===v||"function"!=typeof v.componentDidCatch||null!==Vs&&Vs.has(v)))){i.flags|=65536,t&=-t,i.lanes|=t,Io(i,hl(i,s,t));break e}}i=i.return}while(null!==i)}kc(n)}catch(w){t=w,Rs===n&&null!==n&&(Rs=n=n.return);continue}break}}function hc(){var e=_s.current;return _s.current=il,null===e?il:e}function gc(){0!==Ms&&3!==Ms&&2!==Ms||(Ms=4),null===Ps||!(268435455&Is)&&!(268435455&Fs)||sc(Ps,Ls)}function bc(e,t){var n=js;js|=2;var r=hc();for(Ps===e&&Ls===t||(Hs=null,fc(e,t));;)try{yc();break}catch(a){mc(e,a)}if(xo(),js=n,_s.current=r,null!==Rs)throw Error(o(261));return Ps=null,Ls=0,Ms}function yc(){for(;null!==Rs;)wc(Rs)}function vc(){for(;null!==Rs&&!Qe();)wc(Rs)}function wc(e){var t=Es(e.alternate,e,Ns);e.memoizedProps=e.pendingProps,null===t?kc(e):Rs=t,Ts.current=null}function kc(e){var t=e;do{var n=t.alternate;if(e=t.return,32768&t.flags){if(null!==(n=Ql(n,t)))return n.flags&=32767,void(Rs=n);if(null===e)return Ms=6,void(Rs=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}else if(null!==(n=Kl(n,t,Ns)))return void(Rs=n);if(null!==(t=t.sibling))return void(Rs=t);Rs=t=e}while(null!==t);0===Ms&&(Ms=5)}function xc(e,t,n){var r=vt,a=As.transition;try{As.transition=null,vt=1,function(e,t,n,r){do{Sc()}while(null!==Qs);if(6&js)throw Error(o(327));n=e.finishedWork;var a=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(o(177));e.callbackNode=null,e.callbackPriority=0;var i=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var a=31-it(n),o=1<<a;t[a]=0,r[a]=-1,e[a]=-1,n&=~o}}(e,i),e===Ps&&(Rs=Ps=null,Ls=0),!(2064&n.subtreeFlags)&&!(2064&n.flags)||Ks||(Ks=!0,Pc(tt,(function(){return Sc(),null}))),i=!!(15990&n.flags),!!(15990&n.subtreeFlags)||i){i=As.transition,As.transition=null;var l=vt;vt=1;var s=js;js|=4,Ts.current=null,function(e,t){if(ea=Ht,fr(e=pr())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var r=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(r&&0!==r.rangeCount){n=r.anchorNode;var a=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch(k){n=null;break e}var l=0,s=-1,c=-1,u=0,d=0,p=e,f=null;t:for(;;){for(var m;p!==n||0!==a&&3!==p.nodeType||(s=l+a),p!==i||0!==r&&3!==p.nodeType||(c=l+r),3===p.nodeType&&(l+=p.nodeValue.length),null!==(m=p.firstChild);)f=p,p=m;for(;;){if(p===e)break t;if(f===n&&++u===a&&(s=l),f===i&&++d===r&&(c=l),null!==(m=p.nextSibling))break;f=(p=f).parentNode}p=m}n=-1===s||-1===c?null:{start:s,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(ta={focusedElem:e,selectionRange:n},Ht=!1,Jl=t;null!==Jl;)if(e=(t=Jl).child,1028&t.subtreeFlags&&null!==e)e.return=t,Jl=e;else for(;null!==Jl;){t=Jl;try{var h=t.alternate;if(1024&t.flags)switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==h){var g=h.memoizedProps,b=h.memoizedState,y=t.stateNode,v=y.getSnapshotBeforeUpdate(t.elementType===t.type?g:bo(t.type,g),b);y.__reactInternalSnapshotBeforeUpdate=v}break;case 3:var w=t.stateNode.containerInfo;1===w.nodeType?w.textContent="":9===w.nodeType&&w.documentElement&&w.removeChild(w.documentElement);break;default:throw Error(o(163))}}catch(k){Cc(t,t.return,k)}if(null!==(e=t.sibling)){e.return=t.return,Jl=e;break}Jl=t.return}h=ns,ns=!1}(e,n),bs(n,e),mr(ta),Ht=!!ea,ta=ea=null,e.current=n,vs(n,e,a),Ye(),js=s,vt=l,As.transition=i}else e.current=n;if(Ks&&(Ks=!1,Qs=e,Ys=a),i=e.pendingLanes,0===i&&(Vs=null),function(e){if(ot&&"function"==typeof ot.onCommitFiberRoot)try{ot.onCommitFiberRoot(at,e,void 0,!(128&~e.current.flags))}catch(t){}}(n.stateNode),ac(e,Ze()),null!==t)for(r=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],r(a.value,{componentStack:a.stack,digest:a.digest});if(Gs)throw Gs=!1,e=Ws,Ws=null,e;!!(1&Ys)&&0!==e.tag&&Sc(),i=e.pendingLanes,1&i?e===Xs?Zs++:(Zs=0,Xs=e):Zs=0,$a()}(e,t,n,r)}finally{As.transition=a,vt=r}return null}function Sc(){if(null!==Qs){var e=wt(Ys),t=As.transition,n=vt;try{if(As.transition=null,vt=16>e?16:e,null===Qs)var r=!1;else{if(e=Qs,Qs=null,Ys=0,6&js)throw Error(o(331));var a=js;for(js|=4,Jl=e.current;null!==Jl;){var i=Jl,l=i.child;if(16&Jl.flags){var s=i.deletions;if(null!==s){for(var c=0;c<s.length;c++){var u=s[c];for(Jl=u;null!==Jl;){var d=Jl;switch(d.tag){case 0:case 11:case 15:rs(8,d,i)}var p=d.child;if(null!==p)p.return=d,Jl=p;else for(;null!==Jl;){var f=(d=Jl).sibling,m=d.return;if(is(d),d===u){Jl=null;break}if(null!==f){f.return=m,Jl=f;break}Jl=m}}}var h=i.alternate;if(null!==h){var g=h.child;if(null!==g){h.child=null;do{var b=g.sibling;g.sibling=null,g=b}while(null!==g)}}Jl=i}}if(2064&i.subtreeFlags&&null!==l)l.return=i,Jl=l;else e:for(;null!==Jl;){if(2048&(i=Jl).flags)switch(i.tag){case 0:case 11:case 15:rs(9,i,i.return)}var y=i.sibling;if(null!==y){y.return=i.return,Jl=y;break e}Jl=i.return}}var v=e.current;for(Jl=v;null!==Jl;){var w=(l=Jl).child;if(2064&l.subtreeFlags&&null!==w)w.return=l,Jl=w;else e:for(l=v;null!==Jl;){if(2048&(s=Jl).flags)try{switch(s.tag){case 0:case 11:case 15:as(9,s)}}catch(x){Cc(s,s.return,x)}if(s===l){Jl=null;break e}var k=s.sibling;if(null!==k){k.return=s.return,Jl=k;break e}Jl=s.return}}if(js=a,$a(),ot&&"function"==typeof ot.onPostCommitFiberRoot)try{ot.onPostCommitFiberRoot(at,e)}catch(x){}r=!0}return r}finally{vt=n,As.transition=t}}return!1}function Ec(e,t,n){e=Mo(e,t=ml(0,t=ul(n,t),1),1),t=tc(),null!==e&&(bt(e,1,t),ac(e,t))}function Cc(e,t,n){if(3===e.tag)Ec(e,e,n);else for(;null!==t;){if(3===t.tag){Ec(t,e,n);break}if(1===t.tag){var r=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Vs||!Vs.has(r))){t=Mo(t,e=hl(t,e=ul(n,e),1),1),e=tc(),null!==t&&(bt(t,1,e),ac(t,e));break}}t=t.return}}function _c(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=tc(),e.pingedLanes|=e.suspendedLanes&n,Ps===e&&(Ls&n)===n&&(4===Ms||3===Ms&&(130023424&Ls)===Ls&&500>Ze()-$s?fc(e,0):Bs|=n),ac(e,t)}function Tc(e,t){0===t&&(1&e.mode?(t=ut,!(130023424&(ut<<=1))&&(ut=4194304)):t=1);var n=tc();null!==(e=Po(e,t))&&(bt(e,t,n),ac(e,n))}function Ac(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Tc(e,n)}function jc(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,a=e.memoizedState;null!==a&&(n=a.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(o(314))}null!==r&&r.delete(t),Tc(e,n)}function Pc(e,t){return Ve(e,t)}function Rc(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.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Lc(e,t,n,r){return new Rc(e,t,n,r)}function Nc(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Dc(e,t){var n=e.alternate;return null===n?((n=Lc(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.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,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 Mc(e,t,n,r,a,i){var l=2;if(r=e,"function"==typeof e)Nc(e)&&(l=1);else if("string"==typeof e)l=5;else e:switch(e){case S:return Oc(n.children,a,i,t);case E:l=8,a|=8;break;case C:return(e=Lc(12,n,t,2|a)).elementType=C,e.lanes=i,e;case j:return(e=Lc(13,n,t,a)).elementType=j,e.lanes=i,e;case P:return(e=Lc(19,n,t,a)).elementType=P,e.lanes=i,e;case N:return Ic(n,a,i,t);default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case _:l=10;break e;case T:l=9;break e;case A:l=11;break e;case R:l=14;break e;case L:l=16,r=null;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Lc(l,n,t,a)).elementType=e,t.type=r,t.lanes=i,t}function Oc(e,t,n,r){return(e=Lc(7,e,r,t)).lanes=n,e}function Ic(e,t,n,r){return(e=Lc(22,e,r,t)).elementType=N,e.lanes=n,e.stateNode={isHidden:!1},e}function Fc(e,t,n){return(e=Lc(6,e,null,t)).lanes=n,e}function Bc(e,t,n){return(t=Lc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function zc(e,t,n,r,a){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=r,this.onRecoverableError=a,this.mutableSourceEagerHydrationData=null}function Uc(e,t,n,r,a,o,i,l,s){return e=new zc(e,t,n,l,s),1===t?(t=1,!0===o&&(t|=8)):t=0,o=Lc(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Lo(o),e}function $c(e){if(!e)return Ta;e:{if($e(e=e._reactInternals)!==e||1!==e.tag)throw Error(o(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(La(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(o(171))}if(1===e.tag){var n=e.type;if(La(n))return Ma(e,n,t)}return t}function qc(e,t,n,r,a,o,i,l,s){return(e=Uc(n,r,!0,e,0,o,0,l,s)).context=$c(null),n=e.current,(o=Do(r=tc(),a=nc(n))).callback=null!=t?t:null,Mo(n,o,a),e.current.lanes=a,bt(e,a,r),ac(e,r),e}function Hc(e,t,n,r){var a=t.current,o=tc(),i=nc(a);return n=$c(n),null===t.context?t.context=n:t.pendingContext=n,(t=Do(o,i)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),null!==(e=Mo(a,t,i))&&(rc(e,a,i,o),Oo(e,a,i)),i}function Gc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Wc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Vc(e,t){Wc(e,t),(e=e.alternate)&&Wc(e,t)}Es=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||ja.current)wl=!0;else{if(!(e.lanes&n||128&t.flags))return wl=!1,function(e,t,n){switch(t.tag){case 3:Pl(t),mo();break;case 5:ii(t);break;case 1:La(t.type)&&Oa(t);break;case 4:ai(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,a=t.memoizedProps.value;_a(yo,r._currentValue),r._currentValue=a;break;case 13:if(null!==(r=t.memoizedState))return null!==r.dehydrated?(_a(si,1&si.current),t.flags|=128,null):n&t.child.childLanes?Fl(e,t,n):(_a(si,1&si.current),null!==(e=Gl(e,t,n))?e.sibling:null);_a(si,1&si.current);break;case 19:if(r=!!(n&t.childLanes),128&e.flags){if(r)return ql(e,t,n);t.flags|=128}if(null!==(a=t.memoizedState)&&(a.rendering=null,a.tail=null,a.lastEffect=null),_a(si,si.current),r)break;return null;case 22:case 23:return t.lanes=0,Cl(e,t,n)}return Gl(e,t,n)}(e,t,n);wl=!!(131072&e.flags)}else wl=!1,ao&&1048576&t.flags&&Ja(t,Wa,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Hl(e,t),e=t.pendingProps;var a=Ra(t,Aa.current);Co(t,n),a=Ei(null,t,r,e,a,n);var i=Ci();return t.flags|=1,"object"==typeof a&&null!==a&&"function"==typeof a.render&&void 0===a.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,La(r)?(i=!0,Oa(t)):i=!1,t.memoizedState=null!==a.state&&void 0!==a.state?a.state:null,Lo(t),a.updater=$o,t.stateNode=a,a._reactInternals=t,Wo(t,r,e,n),t=jl(null,t,r,!0,i,n)):(t.tag=0,ao&&i&&eo(t),kl(null,t,a,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Hl(e,t),e=t.pendingProps,r=(a=r._init)(r._payload),t.type=r,a=t.tag=function(e){if("function"==typeof e)return Nc(e)?1:0;if(null!=e){if((e=e.$$typeof)===A)return 11;if(e===R)return 14}return 2}(r),e=bo(r,e),a){case 0:t=Tl(null,t,r,e,n);break e;case 1:t=Al(null,t,r,e,n);break e;case 11:t=xl(null,t,r,e,n);break e;case 14:t=Sl(null,t,r,bo(r.type,e),n);break e}throw Error(o(306,r,""))}return t;case 0:return r=t.type,a=t.pendingProps,Tl(e,t,r,a=t.elementType===r?a:bo(r,a),n);case 1:return r=t.type,a=t.pendingProps,Al(e,t,r,a=t.elementType===r?a:bo(r,a),n);case 3:e:{if(Pl(t),null===e)throw Error(o(387));r=t.pendingProps,a=(i=t.memoizedState).element,No(e,t),Fo(t,r,null,n);var l=t.memoizedState;if(r=l.element,i.isDehydrated){if(i={element:r,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=i,t.memoizedState=i,256&t.flags){t=Rl(e,t,r,n,a=ul(Error(o(423)),t));break e}if(r!==a){t=Rl(e,t,r,n,a=ul(Error(o(424)),t));break e}for(ro=ca(t.stateNode.containerInfo.firstChild),no=t,ao=!0,oo=null,n=Xo(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(mo(),r===a){t=Gl(e,t,n);break e}kl(e,t,r,n)}t=t.child}return t;case 5:return ii(t),null===e&&co(t),r=t.type,a=t.pendingProps,i=null!==e?e.memoizedProps:null,l=a.children,na(r,a)?l=null:null!==i&&na(r,i)&&(t.flags|=32),_l(e,t),kl(e,t,l,n),t.child;case 6:return null===e&&co(t),null;case 13:return Fl(e,t,n);case 4:return ai(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Zo(t,null,r,n):kl(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,xl(e,t,r,a=t.elementType===r?a:bo(r,a),n);case 7:return kl(e,t,t.pendingProps,n),t.child;case 8:case 12:return kl(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,a=t.pendingProps,i=t.memoizedProps,l=a.value,_a(yo,r._currentValue),r._currentValue=l,null!==i)if(lr(i.value,l)){if(i.children===a.children&&!ja.current){t=Gl(e,t,n);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var s=i.dependencies;if(null!==s){l=i.child;for(var c=s.firstContext;null!==c;){if(c.context===r){if(1===i.tag){(c=Do(-1,n&-n)).tag=2;var u=i.updateQueue;if(null!==u){var d=(u=u.shared).pending;null===d?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}i.lanes|=n,null!==(c=i.alternate)&&(c.lanes|=n),Eo(i.return,n,t),s.lanes|=n;break}c=c.next}}else if(10===i.tag)l=i.type===t.type?null:i.child;else if(18===i.tag){if(null===(l=i.return))throw Error(o(341));l.lanes|=n,null!==(s=l.alternate)&&(s.lanes|=n),Eo(l,n,t),l=i.sibling}else l=i.child;if(null!==l)l.return=i;else for(l=i;null!==l;){if(l===t){l=null;break}if(null!==(i=l.sibling)){i.return=l.return,l=i;break}l=l.return}i=l}kl(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=t.pendingProps.children,Co(t,n),r=r(a=_o(a)),t.flags|=1,kl(e,t,r,n),t.child;case 14:return a=bo(r=t.type,t.pendingProps),Sl(e,t,r,a=bo(r.type,a),n);case 15:return El(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:bo(r,a),Hl(e,t),t.tag=1,La(r)?(e=!0,Oa(t)):e=!1,Co(t,n),Ho(t,r,a),Wo(t,r,a,n),jl(null,t,r,!0,e,n);case 19:return ql(e,t,n);case 22:return Cl(e,t,n)}throw Error(o(156,t.tag))};var Kc="function"==typeof reportError?reportError:function(e){console.error(e)};function Qc(e){this._internalRoot=e}function Yc(e){this._internalRoot=e}function Zc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Xc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Jc(){}function eu(e,t,n,r,a){var o=n._reactRootContainer;if(o){var i=o;if("function"==typeof a){var l=a;a=function(){var e=Gc(i);l.call(e)}}Hc(t,i,e,a)}else i=function(e,t,n,r,a){if(a){if("function"==typeof r){var o=r;r=function(){var e=Gc(i);o.call(e)}}var i=qc(t,r,e,0,null,!1,0,"",Jc);return e._reactRootContainer=i,e[ma]=i.current,$r(8===e.nodeType?e.parentNode:e),dc(),i}for(;a=e.lastChild;)e.removeChild(a);if("function"==typeof r){var l=r;r=function(){var e=Gc(s);l.call(e)}}var s=Uc(e,0,!1,null,0,!1,0,"",Jc);return e._reactRootContainer=s,e[ma]=s.current,$r(8===e.nodeType?e.parentNode:e),dc((function(){Hc(t,s,n,r)})),s}(n,t,e,a,r);return Gc(i)}Yc.prototype.render=Qc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(o(409));Hc(e,t,null,null)},Yc.prototype.unmount=Qc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;dc((function(){Hc(null,e,null,null)})),t[ma]=null}},Yc.prototype.unstable_scheduleHydration=function(e){if(e){var t=Et();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Nt.length&&0!==t&&t<Nt[n].priority;n++);Nt.splice(n,0,e),0===n&&It(e)}},kt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=dt(t.pendingLanes);0!==n&&(yt(t,1|n),ac(t,Ze()),!(6&js)&&(qs=Ze()+500,$a()))}break;case 13:dc((function(){var t=Po(e,1);if(null!==t){var n=tc();rc(t,e,1,n)}})),Vc(e,1)}},xt=function(e){if(13===e.tag){var t=Po(e,134217728);if(null!==t)rc(t,e,134217728,tc());Vc(e,134217728)}},St=function(e){if(13===e.tag){var t=nc(e),n=Po(e,t);if(null!==n)rc(n,e,t,tc());Vc(e,t)}},Et=function(){return vt},Ct=function(e,t){var n=vt;try{return vt=e,t()}finally{vt=n}},xe=function(e,t,n){switch(t){case"input":if(X(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=ka(r);if(!a)throw Error(o(90));V(r),X(r,a)}}}break;case"textarea":oe(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},Ae=uc,je=dc;var tu={usingClientEntryPoint:!1,Events:[va,wa,ka,_e,Te,uc]},nu={findFiberByHostInstance:ya,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},ru={bundleType:nu.bundleType,version:nu.version,rendererPackageName:nu.rendererPackageName,rendererConfig:nu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:w.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ge(e))?null:e.stateNode},findFiberByHostInstance:nu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var au=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!au.isDisabled&&au.supportsFiber)try{at=au.inject(ru),ot=au}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=tu,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Zc(t))throw Error(o(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:x,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.createRoot=function(e,t){if(!Zc(e))throw Error(o(299));var n=!1,r="",a=Kc;return null!=t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(r=t.identifierPrefix),void 0!==t.onRecoverableError&&(a=t.onRecoverableError)),t=Uc(e,1,!1,null,0,n,0,r,a),e[ma]=t.current,$r(8===e.nodeType?e.parentNode:e),new Qc(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(o(188));throw e=Object.keys(e).join(","),Error(o(268,e))}return e=null===(e=Ge(t))?null:e.stateNode},t.flushSync=function(e){return dc(e)},t.hydrate=function(e,t,n){if(!Xc(t))throw Error(o(200));return eu(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Zc(e))throw Error(o(405));var r=null!=n&&n.hydratedSources||null,a=!1,i="",l=Kc;if(null!=n&&(!0===n.unstable_strictMode&&(a=!0),void 0!==n.identifierPrefix&&(i=n.identifierPrefix),void 0!==n.onRecoverableError&&(l=n.onRecoverableError)),t=qc(t,null,e,1,null!=n?n:null,a,0,i,l),e[ma]=t.current,$r(e),r)for(e=0;e<r.length;e++)a=(a=(n=r[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new Yc(t)},t.render=function(e,t,n){if(!Xc(t))throw Error(o(200));return eu(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Xc(e))throw Error(o(40));return!!e._reactRootContainer&&(dc((function(){eu(null,null,e,!1,(function(){e._reactRootContainer=null,e[ma]=null}))})),!0)},t.unstable_batchedUpdates=uc,t.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Xc(n))throw Error(o(200));if(null==e||void 0===e._reactInternals)throw Error(o(38));return eu(e,t,n,!1,r)},t.version="18.2.0-next-9e3b772b8-20220608"},5338:(e,t,n)=>{"use strict";var r=n(961);t.createRoot=r.createRoot,t.hydrateRoot=r.hydrateRoot},961:(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(2551)},115: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,c,u;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(u=e.entries();!(s=u.next()).done;)if(!i.has(s.value[0]))return!1;for(u=e.entries();!(s=u.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(u=e.entries();!(s=u.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&&"function"==typeof e.valueOf&&"function"==typeof i.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString&&"function"==typeof e.toString&&"function"==typeof i.toString)return e.toString()===i.toString();if((l=(c=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(s=l;0!=s--;)if(!Object.prototype.hasOwnProperty.call(i,c[s]))return!1;if(t&&e instanceof Element)return!1;for(s=l;0!=s--;)if(("_owner"!==c[s]&&"__v"!==c[s]&&"__o"!==c[s]||!e.$$typeof)&&!o(e[c[s]],i[c[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}}},545:(e,t,n)=>{"use strict";n.d(t,{mg:()=>J,vd:()=>G});var r=n(6540),a=n(5556),o=n.n(a),i=n(115),l=n.n(i),s=n(311),c=n.n(s),u=n(2833),d=n.n(u);function p(){return p=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},p.apply(this,arguments)}function f(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"]},y={type:["application/ld+json"]},v={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"},x=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},E=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},C=function(e){return S(e,"onChangeClientState")||function(){}},_=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return p({},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}),[])},A=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 c=e[n].toLowerCase();return r[n]||(r[n]={}),a[n]||(a[n]={}),!r[n][c]&&(a[n][c]=!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=p({},r[l],a[l]);r[l]=s}return e}),[]).reverse()},j=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},P=function(e){return Array.isArray(e)?e.join(""):e},R=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}},L=function(e,t){var n;return p({},e,((n={})[t]=void 0,n))},N=[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,"'")},M=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}),"")},O=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[k[n]||n]=e[n],t}),t)},I=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=O(n,a),[r.createElement(g.TITLE,o,e)];var e,n,a,o},toString:function(){return function(e,t,n,r){var a=M(n),o=P(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 O(t)},toString:function(){return M(t)}};default:return{toComponent:function(){return I(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===N.indexOf(e);return t+"<"+e+' data-rh="true" '+a+(i?"/>":">"+o+"</"+e+">")}),"")}(e,t,n)}}}},B=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,c=e.titleAttributes,u=e.linkTags,d=e.metaTags,p=e.scriptTags,f={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var m=function(e){var t=e.linkTags,n=e.scriptTags,r=e.encode,a=R(e.metaTags,v),o=R(t,b),i=R(n,y);return{priorityMethods:{toComponent:function(){return[].concat(I(g.META,a.priority),I(g.LINK,o.priority),I(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);f=m.priorityMethods,u=m.linkTags,d=m.metaTags,p=m.scriptTags}return{priority:f,base:F(g.BASE,t,r),bodyAttributes:F("bodyAttributes",n,r),htmlAttributes:F("htmlAttributes",a,r),link:F(g.LINK,u,r),meta:F(g.META,d,r),noscript:F(g.NOSCRIPT,o,r),script:F(g.SCRIPT,p,r),style:F(g.STYLE,i,r),title:F(g.TITLE,{title:s,titleAttributes:c},r)}},z=[],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?z:n.instances},add:function(e){(n.canUseDOM?z:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?z:n.instances).indexOf(e);(n.canUseDOM?z:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=B({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})}),H="undefined"!=typeof document,G=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new U(r.props.context,t.canUseDOM),r}return f(t,e),t.prototype.render=function(){return r.createElement($.Provider,{value:this.helmetData.value},this.props.children)},t}(r.Component);G.canUseDOM=H,G.propTypes={context:o().shape({helmet:o().shape()}),children:o().node.isRequired},G.defaultProps={context:{}},G.displayName="HelmetProvider";var W=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],c=t[s]||"";n.getAttribute(s)!==c&&n.setAttribute(s,c),-1===a.indexOf(s)&&a.push(s);var u=o.indexOf(s);-1!==u&&o.splice(u,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(","))}},K=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,c=e.styleTags,u=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=P(e)),V(g.TITLE,t)}(u,d);var p={baseTag:W(g.BASE,n),linkTags:W(g.LINK,a),metaTags:W(g.META,o),noscriptTags:W(g.NOSCRIPT,i),scriptTags:W(g.SCRIPT,s),styleTags:W(g.STYLE,c)},f={},m={};Object.keys(p).forEach((function(e){var t=p[e],n=t.newTags,r=t.oldTags;n.length&&(f[e]=n),r.length&&(m[e]=p[e].oldTags)})),t&&t(),l(e,f,m)},Q=null,Y=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}f(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=p({},e.props);return delete t.context,t})),{baseTag:T(["href"],e),bodyAttributes:_("bodyAttributes",e),defer:S(e,"defer"),encode:S(e,"encodeSpecialCharacters"),htmlAttributes:_("htmlAttributes",e),linkTags:A(g.LINK,["rel","href"],e),metaTags:A(g.META,["name","charset","http-equiv","property","itemprop"],e),noscriptTags:A(g.NOSCRIPT,["innerHTML"],e),onChangeClientState:C(e),scriptTags:A(g.SCRIPT,["src","innerHTML"],e),styleTags:A(g.STYLE,["cssText"],e),title:E(e),titleAttributes:_("titleAttributes",e),prioritizeSeoTags:j(e,"prioritizeSeoTags")});G.canUseDOM?(t=o,Q&&cancelAnimationFrame(Q),t.defer?Q=requestAnimationFrame((function(){K(t,(function(){Q=null}))})):(K(t),Q=null)):B&&(a=B(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);Y.propTypes={context:q.isRequired},Y.displayName="HelmetDispatcher";var Z=["children"],X=["children"],J=function(e){function t(){return e.apply(this,arguments)||this}f(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!l()(L(this.props,"helmetData"),L(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 p({},r,((t={})[n.type]=[].concat(r[n.type]||[],[p({},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 p({},a,((t={})[r.type]=i,t.titleAttributes=p({},o),t));case g.BODY:return p({},a,{bodyAttributes:p({},o)});case g.HTML:return p({},a,{htmlAttributes:p({},o)});default:return p({},a,((n={})[r.type]=p({},o),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=p({},t);return Object.keys(e).forEach((function(t){var r;n=p({},n,((r={})[t]=e[t],r))})),n},n.warnOnInvalidChildren=function(e,t){return c()(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."),c()(!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,Z),l=Object.keys(i).reduce((function(e,t){return e[x[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=p({},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(Y,p({},a,{context:o.value,helmetData:void 0})):r.createElement($.Consumer,null,(function(e){return r.createElement(Y,p({},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"},2799:(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,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,p=n?Symbol.for("react.forward_ref"):60112,f=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,y=n?Symbol.for("react.fundamental"):60117,v=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 u:case d:case o:case l:case i:case f:return e;default:switch(e=e&&e.$$typeof){case c:case p:case g:case h:case s:return e;default:return t}}case a:return t}}}function x(e){return k(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=s,t.Element=r,t.ForwardRef=p,t.Fragment=o,t.Lazy=g,t.Memo=h,t.Portal=a,t.Profiler=l,t.StrictMode=i,t.Suspense=f,t.isAsyncMode=function(e){return x(e)||k(e)===u},t.isConcurrentMode=x,t.isContextConsumer=function(e){return k(e)===c},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)===p},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)===f},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===o||e===d||e===l||e===i||e===f||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===h||e.$$typeof===s||e.$$typeof===c||e.$$typeof===p||e.$$typeof===y||e.$$typeof===v||e.$$typeof===w||e.$$typeof===b)},t.typeOf=k},4363:(e,t,n)=>{"use strict";e.exports=n(2799)},3259:(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(6540),s=n(5556),c=[],u=[];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 p(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 f(e,t){return l.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,p;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=i({loader:null,loading:null,delay:200,timeout:null,render:f,webpack:null,modules:null},t),h=null;function g(){return h||(h=e(m.loader)),h.promise}return c.push(g),"function"==typeof m.webpack&&u.push((function(){if((0,m.webpack)().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return g()})),p=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})}),p}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(p,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(c).then(e,t)}))},h.preloadReady=function(){return new Promise((function(e,t){b(u).then(e,e)}))},e.exports=h},2831:(e,t,n)=>{"use strict";n.d(t,{u:()=>i,v:()=>l});var r=n(6347),a=n(8168),o=n(6540);function i(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var a=e.path?(0,r.B6)(t,e):n.length?n[n.length-1].match:r.Ix.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.dO,n,e.map((function(e,n){return o.createElement(r.qh,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,a.A)({},n,{},t,{route:e})):o.createElement(e.component,(0,a.A)({},n,t,{route:e}))}})}))):null}},4625:(e,t,n)=>{"use strict";n.d(t,{Kd:()=>u,N_:()=>g,k2:()=>v});var r=n(6347),a=n(2892),o=n(6540),i=n(1513),l=n(8168),s=n(8587),c=n(1561),u=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.zR)(t.props),t}return(0,a.A)(t,e),t.prototype.render=function(){return o.createElement(r.Ix,{history:this.history,children:this.props.children})},t}(o.Component);o.Component;var d=function(e,t){return"function"==typeof e?e(t):e},p=function(e,t){return"string"==typeof e?(0,i.yJ)(e,null,null,t):e},f=function(e){return e},m=o.forwardRef;void 0===m&&(m=f);var h=m((function(e,t){var n=e.innerRef,r=e.navigate,a=e.onClick,i=(0,s.A)(e,["innerRef","navigate","onClick"]),c=i.target,u=(0,l.A)({},i,{onClick:function(e){try{a&&a(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||c&&"_self"!==c||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return u.ref=f!==m&&t||n,o.createElement("a",u)}));var g=m((function(e,t){var n=e.component,a=void 0===n?h:n,u=e.replace,g=e.to,b=e.innerRef,y=(0,s.A)(e,["component","replace","to","innerRef"]);return o.createElement(r.XZ.Consumer,null,(function(e){e||(0,c.A)(!1);var n=e.history,r=p(d(g,e.location),e.location),s=r?n.createHref(r):"",h=(0,l.A)({},y,{href:s,navigate:function(){var t=d(g,e.location),r=(0,i.AO)(e.location)===(0,i.AO)(p(t));(u||r?n.replace:n.push)(t)}});return f!==m?h.ref=t||b:h.innerRef=b,o.createElement(a,h)}))})),b=function(e){return e},y=o.forwardRef;void 0===y&&(y=b);var v=y((function(e,t){var n=e["aria-current"],a=void 0===n?"page":n,i=e.activeClassName,u=void 0===i?"active":i,f=e.activeStyle,m=e.className,h=e.exact,v=e.isActive,w=e.location,k=e.sensitive,x=e.strict,S=e.style,E=e.to,C=e.innerRef,_=(0,s.A)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return o.createElement(r.XZ.Consumer,null,(function(e){e||(0,c.A)(!1);var n=w||e.location,i=p(d(E,n),n),s=i.pathname,T=s&&s.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),A=T?(0,r.B6)(n.pathname,{path:T,exact:h,sensitive:k,strict:x}):null,j=!!(v?v(A,n):A),P="function"==typeof m?m(j):m,R="function"==typeof S?S(j):S;j&&(P=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(" ")}(P,u),R=(0,l.A)({},R,f));var L=(0,l.A)({"aria-current":j&&a||null,className:P,style:R,to:i},_);return b!==y?L.ref=t||C:L.innerRef=C,o.createElement(g,L)}))}))},6347:(e,t,n)=>{"use strict";n.d(t,{B6:()=>S,Ix:()=>v,W6:()=>L,XZ:()=>y,dO:()=>P,qh:()=>E,zy:()=>N});var r=n(2892),a=n(6540),o=n(5556),i=n.n(o),l=n(1513),s=n(1561),c=n(8168),u=n(8505),d=n.n(u),p=(n(4363),n(8587)),f=(n(4146),1073741823),m="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};var h=a.createContext||function(e,t){var n,o,l="__create-react-context-"+function(){var e="__global_unique_id__";return m[e]=(m[e]||0)+1}()+"__",s=function(e){function n(){for(var t,n,r,a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=e.call.apply(e,[this].concat(o))||this).emitter=(n=t.props.value,r=[],{on:function(e){r.push(e)},off:function(e){r=r.filter((function(t){return t!==e}))},get:function(){return n},set:function(e,t){n=e,r.forEach((function(e){return e(n,t)}))}}),t}(0,r.A)(n,e);var a=n.prototype;return a.getChildContext=function(){var e;return(e={})[l]=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):f,0!==(n|=0)&&this.emitter.set(e.value,n))}var o,i},a.render=function(){return this.props.children},n}(a.Component);s.childContextTypes=((n={})[l]=i().object.isRequired,n);var c=function(t){function n(){for(var e,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(e=t.call.apply(t,[this].concat(r))||this).observedBits=void 0,e.state={value:e.getValue()},e.onUpdate=function(t,n){(0|e.observedBits)&n&&e.setState({value:e.getValue()})},e}(0,r.A)(n,t);var a=n.prototype;return a.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?f:t},a.componentDidMount=function(){this.context[l]&&this.context[l].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?f:e},a.componentWillUnmount=function(){this.context[l]&&this.context[l].off(this.onUpdate)},a.getValue=function(){return this.context[l]?this.context[l].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 c.contextTypes=((o={})[l]=i().object,o),{Provider:s,Consumer:c}},g=function(e){var t=h();return t.displayName=e,t},b=g("Router-History"),y=g("Router"),v=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.A)(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(y.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},a.createElement(b.Provider,{children:this.props.children||null,value:this.props.history}))},t}(a.Component);a.Component;a.Component;var w={},k=1e4,x=0;function S(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,c=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=w[n]||(w[n]={});if(r[e])return r[e];var a=[],o={regexp:d()(e,a,t),keys:a};return x<k&&(r[e]=o,x++),o}(n,{end:o,strict:l,sensitive:c}),a=r.regexp,i=r.keys,s=a.exec(e);if(!s)return null;var u=s[0],p=s.slice(1),f=e===u;return o&&!f?null:{path:n,url:"/"===n&&""===u?"/":u,isExact:f,params:i.reduce((function(e,t,n){return e[t.name]=p[n],e}),{})}}),null)}var E=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.A)(t,e),t.prototype.render=function(){var e=this;return a.createElement(y.Consumer,null,(function(t){t||(0,s.A)(!1);var n=e.props.location||t.location,r=e.props.computedMatch?e.props.computedMatch:e.props.path?S(n.pathname,e.props):t.match,o=(0,c.A)({},t,{location:n,match:r}),i=e.props,l=i.children,u=i.component,d=i.render;return Array.isArray(l)&&function(e){return 0===a.Children.count(e)}(l)&&(l=null),a.createElement(y.Provider,{value:o},o.match?l?"function"==typeof l?l(o):l:u?a.createElement(u,o):d?d(o):null:"function"==typeof l?l(o):null)}))},t}(a.Component);function C(e){return"/"===e.charAt(0)?e:"/"+e}function _(e,t){if(!e)return t;var n=C(e);return 0!==t.pathname.indexOf(n)?t:(0,c.A)({},t,{pathname:t.pathname.substr(n.length)})}function T(e){return"string"==typeof e?e:(0,l.AO)(e)}function A(e){return function(){(0,s.A)(!1)}}function j(){}a.Component;var P=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.A)(t,e),t.prototype.render=function(){var e=this;return a.createElement(y.Consumer,null,(function(t){t||(0,s.A)(!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?S(o.pathname,(0,c.A)({},e.props,{path:i})):t.match}})),r?a.cloneElement(n,{location:o,computedMatch:r}):null}))},t}(a.Component);var R=a.useContext;function L(){return R(b)}function N(){return R(y).location}},8505:(e,t,n)=>{var r=n(4634);e.exports=f,e.exports.parse=o,e.exports.compile=function(e,t){return l(o(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=p;var a=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,i=0,l="",u=t&&t.delimiter||"/";null!=(n=a.exec(e));){var d=n[0],p=n[1],f=n.index;if(l+=e.slice(i,f),i=f+d.length,p)l+=p[1];else{var m=e[i],h=n[2],g=n[3],b=n[4],y=n[5],v=n[6],w=n[7];l&&(r.push(l),l="");var k=null!=h&&null!=m&&m!==h,x="+"===v||"*"===v,S="?"===v||"*"===v,E=n[2]||u,C=b||y;r.push({name:g||o++,prefix:h||"",delimiter:E,optional:S,repeat:x,partial:k,asterisk:!!w,pattern:C?c(C):w?".*":"[^"+s(E)+"]+?"})}}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,c=0;c<e.length;c++){var u=e[c];if("string"!=typeof u){var d,p=l[u.name];if(null==p){if(u.optional){u.partial&&(o+=u.prefix);continue}throw new TypeError('Expected "'+u.name+'" to be defined')}if(r(p)){if(!u.repeat)throw new TypeError('Expected "'+u.name+'" to not repeat, but received `'+JSON.stringify(p)+"`");if(0===p.length){if(u.optional)continue;throw new TypeError('Expected "'+u.name+'" to not be empty')}for(var f=0;f<p.length;f++){if(d=s(p[f]),!n[c].test(d))throw new TypeError('Expected all "'+u.name+'" to match "'+u.pattern+'", but received `'+JSON.stringify(d)+"`");o+=(0===f?u.prefix:u.delimiter)+d}}else{if(d=u.asterisk?encodeURI(p).replace(/[?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})):s(p),!n[c].test(d))throw new TypeError('Expected "'+u.name+'" to match "'+u.pattern+'", but received "'+d+'"');o+=u.prefix+d}}else o+=u}return o}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function c(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function u(e,t){return e.keys=t,e}function d(e){return e&&e.sensitive?"":"i"}function p(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 c=e[l];if("string"==typeof c)i+=s(c);else{var p=s(c.prefix),f="(?:"+c.pattern+")";t.push(c),c.repeat&&(f+="(?:"+p+f+")*"),i+=f=c.optional?c.partial?p+"("+f+")?":"(?:"+p+"("+f+"))?":p+"("+f+")"}}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+"|$)",u(new RegExp("^"+i,d(n)),t)}function f(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 u(e,t)}(e,t):r(e)?function(e,t,n){for(var r=[],a=0;a<e.length;a++)r.push(f(e[a],t,n).source);return u(new RegExp("(?:"+r.join("|")+")",d(n)),t)}(e,t,n):function(e,t,n){return p(o(e,n),t,n)}(e,t,n)}},1020:(e,t,n)=>{"use strict";var r=n(6540),a=Symbol.for("react.element"),o=Symbol.for("react.fragment"),i=Object.prototype.hasOwnProperty,l=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,o={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)i.call(t,r)&&!s.hasOwnProperty(r)&&(o[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===o[r]&&(o[r]=t[r]);return{$$typeof:a,type:e,key:c,ref:u,props:o,_owner:l.current}}t.Fragment=o,t.jsx=c,t.jsxs=c},5287:(e,t)=>{"use strict";var n=Symbol.for("react.element"),r=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),l=Symbol.for("react.provider"),s=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),f=Symbol.iterator;var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h=Object.assign,g={};function b(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}function y(){}function v(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}b.prototype.isReactComponent={},b.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},b.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=b.prototype;var w=v.prototype=new y;w.constructor=v,h(w,b.prototype),w.isPureReactComponent=!0;var k=Array.isArray,x=Object.prototype.hasOwnProperty,S={current:null},E={key:!0,ref:!0,__self:!0,__source:!0};function C(e,t,r){var a,o={},i=null,l=null;if(null!=t)for(a in void 0!==t.ref&&(l=t.ref),void 0!==t.key&&(i=""+t.key),t)x.call(t,a)&&!E.hasOwnProperty(a)&&(o[a]=t[a]);var s=arguments.length-2;if(1===s)o.children=r;else if(1<s){for(var c=Array(s),u=0;u<s;u++)c[u]=arguments[u+2];o.children=c}if(e&&e.defaultProps)for(a in s=e.defaultProps)void 0===o[a]&&(o[a]=s[a]);return{$$typeof:n,type:e,key:i,ref:l,props:o,_owner:S.current}}function _(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var T=/\/+/g;function A(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 j(e,t,a,o,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 n:case r:s=!0}}if(s)return i=i(s=e),e=""===o?"."+A(s,0):o,k(i)?(a="",null!=e&&(a=e.replace(T,"$&/")+"/"),j(i,t,a,"",(function(e){return e}))):null!=i&&(_(i)&&(i=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,a+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(T,"$&/")+"/")+e)),t.push(i)),1;if(s=0,o=""===o?".":o+":",k(e))for(var c=0;c<e.length;c++){var u=o+A(l=e[c],c);s+=j(l,t,a,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=f&&e[f]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(l=e.next()).done;)s+=j(l=l.value,t,a,u=o+A(l,c++),i);else if("object"===l)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return s}function P(e,t,n){if(null==e)return e;var r=[],a=0;return j(e,r,"","",(function(e){return t.call(n,e,a++)})),r}function R(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var L={current:null},N={transition:null},D={ReactCurrentDispatcher:L,ReactCurrentBatchConfig:N,ReactCurrentOwner:S};t.Children={map:P,forEach:function(e,t,n){P(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return P(e,(function(){t++})),t},toArray:function(e){return P(e,(function(e){return e}))||[]},only:function(e){if(!_(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=b,t.Fragment=a,t.Profiler=i,t.PureComponent=v,t.StrictMode=o,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=D,t.cloneElement=function(e,t,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var a=h({},e.props),o=e.key,i=e.ref,l=e._owner;if(null!=t){if(void 0!==t.ref&&(i=t.ref,l=S.current),void 0!==t.key&&(o=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(c in t)x.call(t,c)&&!E.hasOwnProperty(c)&&(a[c]=void 0===t[c]&&void 0!==s?s[c]:t[c])}var c=arguments.length-2;if(1===c)a.children=r;else if(1<c){s=Array(c);for(var u=0;u<c;u++)s[u]=arguments[u+2];a.children=s}return{$$typeof:n,type:e.type,key:o,ref:i,props:a,_owner:l}},t.createContext=function(e){return(e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:l,_context:e},e.Consumer=e},t.createElement=C,t.createFactory=function(e){var t=C.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=_,t.lazy=function(e){return{$$typeof:p,_payload:{_status:-1,_result:e},_init:R}},t.memo=function(e,t){return{$$typeof:d,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=N.transition;N.transition={};try{e()}finally{N.transition=t}},t.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},t.useCallback=function(e,t){return L.current.useCallback(e,t)},t.useContext=function(e){return L.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return L.current.useDeferredValue(e)},t.useEffect=function(e,t){return L.current.useEffect(e,t)},t.useId=function(){return L.current.useId()},t.useImperativeHandle=function(e,t,n){return L.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return L.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return L.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return L.current.useMemo(e,t)},t.useReducer=function(e,t,n){return L.current.useReducer(e,t,n)},t.useRef=function(e){return L.current.useRef(e)},t.useState=function(e){return L.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return L.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return L.current.useTransition()},t.version="18.2.0"},6540:(e,t,n)=>{"use strict";e.exports=n(5287)},4848:(e,t,n)=>{"use strict";e.exports=n(1020)},7463:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var r=n-1>>>1,a=e[r];if(!(0<o(a,t)))break e;e[r]=t,e[n]=a,n=r}}function r(e){return 0===e.length?null:e[0]}function a(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,a=e.length,i=a>>>1;r<i;){var l=2*(r+1)-1,s=e[l],c=l+1,u=e[c];if(0>o(s,n))c<a&&0>o(u,s)?(e[r]=u,e[c]=n,r=c):(e[r]=s,e[l]=n,r=l);else{if(!(c<a&&0>o(u,n)))break e;e[r]=u,e[c]=n,r=c}}}return t}function o(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}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}}var c=[],u=[],d=1,p=null,f=3,m=!1,h=!1,g=!1,b="function"==typeof setTimeout?setTimeout:null,y="function"==typeof clearTimeout?clearTimeout:null,v="undefined"!=typeof setImmediate?setImmediate:null;function w(e){for(var t=r(u);null!==t;){if(null===t.callback)a(u);else{if(!(t.startTime<=e))break;a(u),t.sortIndex=t.expirationTime,n(c,t)}t=r(u)}}function k(e){if(g=!1,w(e),!h)if(null!==r(c))h=!0,N(x);else{var t=r(u);null!==t&&D(k,t.startTime-e)}}function x(e,n){h=!1,g&&(g=!1,y(_),_=-1),m=!0;var o=f;try{for(w(n),p=r(c);null!==p&&(!(p.expirationTime>n)||e&&!j());){var i=p.callback;if("function"==typeof i){p.callback=null,f=p.priorityLevel;var l=i(p.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?p.callback=l:p===r(c)&&a(c),w(n)}else a(c);p=r(c)}if(null!==p)var s=!0;else{var d=r(u);null!==d&&D(k,d.startTime-n),s=!1}return s}finally{p=null,f=o,m=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var S,E=!1,C=null,_=-1,T=5,A=-1;function j(){return!(t.unstable_now()-A<T)}function P(){if(null!==C){var e=t.unstable_now();A=e;var n=!0;try{n=C(!0,e)}finally{n?S():(E=!1,C=null)}}else E=!1}if("function"==typeof v)S=function(){v(P)};else if("undefined"!=typeof MessageChannel){var R=new MessageChannel,L=R.port2;R.port1.onmessage=P,S=function(){L.postMessage(null)}}else S=function(){b(P,0)};function N(e){C=e,E||(E=!0,S())}function D(e,n){_=b((function(){e(t.unstable_now())}),n)}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(){h||m||(h=!0,N(x))},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"):T=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return f},t.unstable_getFirstCallbackNode=function(){return r(c)},t.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},t.unstable_scheduleCallback=function(e,a,o){var i=t.unstable_now();switch("object"==typeof o&&null!==o?o="number"==typeof(o=o.delay)&&0<o?i+o:i:o=i,e){case 1:var l=-1;break;case 2:l=250;break;case 5:l=1073741823;break;case 4:l=1e4;break;default:l=5e3}return e={id:d++,callback:a,priorityLevel:e,startTime:o,expirationTime:l=o+l,sortIndex:-1},o>i?(e.sortIndex=o,n(u,e),null===r(c)&&e===r(u)&&(g?(y(_),_=-1):g=!0,D(k,o-i))):(e.sortIndex=l,n(c,e),h||m||(h=!0,N(x))),e},t.unstable_shouldYield=j,t.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}},9982:(e,t,n)=>{"use strict";e.exports=n(7463)},2833: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 c=o[s];if(!l(c))return!1;var u=e[c],d=t[c];if(!1===(a=n?n.call(r,u,d,c):void 0)||void 0===a&&u!==d)return!1}return!0}},4784:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>r});const r={title:"sern - Handlers. Redefined.",tagline:"With the support of the community made plugins and a powerful CLI, it's more than just a handler.",url:"https://sern.dev",baseUrl:"/",onBrokenLinks:"ignore",onBrokenMarkdownLinks:"warn",favicon:"/img/favicon.ico",organizationName:"sern-handler",projectName:"website",deploymentBranch:"main",trailingSlash:!1,i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},markdown:{format:"detect",mermaid:!1,mdx1Compat:{comments:!0,admonitions:!0,headingIds:!0}},presets:[["classic",{docs:{sidebarPath:"/home/runner/work/website/website/sidebars.js",editUrl:"https://github.com/sern-handler/website/edit/main/"},blog:{showReadingTime:!0,editUrl:"https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/",blogSidebarCount:"ALL"},pages:{path:"src/pages",routeBasePath:"/",include:["**/*.{js,jsx,ts,tsx,md,mdx}"],exclude:["**/_*.{js,jsx,ts,tsx,md,mdx}","**/_*/**","**/*.test.{js,jsx,ts,tsx}","**/__tests__/**"]},theme:{customCss:"/home/runner/work/website/website/src/css/custom.css"}}]],themeConfig:{image:"https://sern.dev/img/logo.png",algolia:{appId:"AA9S5J9NYT",apiKey:"ccfe6abc4d12ac6f882565a9d0caafb1",indexName:"sern",insights:!0,container:"div",debug:!1,contextualSearch:!0,externalUrlRegex:"external\\.com|domain\\.com",replaceSearchResultPathname:{from:"/docs/api",to:"/docs/api"},searchParameters:{},searchPagePath:"search"},navbar:{title:"Home",logo:{alt:"logo logo",src:"img/favicon.ico"},items:[{type:"doc",docId:"intro",position:"left",label:"Docs & Guide"},{to:"/blog",label:"Blog",position:"left"},{href:"https://github.com/sern-handler",label:"GitHub",position:"right"},{to:"/sponsors",label:"Sponsor",position:"left"},{to:"/plugins",label:"Plugins",position:"left"}],hideOnScroll:!1},footer:{style:"dark",links:[{title:"Information",items:[{label:"Docs & Guide",to:"/docs/intro"}]},{title:"Community",items:[{label:"Stack Overflow",href:"https://stackoverflow.com/questions/tagged/sern-handler"},{label:"Discord",href:"https://discord.gg/DwbF5H5JgQ"},{label:"Open Collective",href:"https://opencollective.com/sern"}]},{title:"More",items:[{label:"Blog",to:"/blog"},{label:"GitHub",href:"https://github.com/sern-handler"}]}],copyright:"Built with \u2764\ufe0f by the sern Handler team and its contributors"},metadata:[{name:"og:title",content:"sern - Handlers. Redefined."},{name:"og:description",content:"A modular, customizable, fast Discord.js framework to streamline bot development"},{name:"og:url",content:"https://sern.dev"},{name:"og:type",content:"website"},{name:"twitter:site",content:"@sern-handler"},{property:"og:image:alt",content:"sernlogo"},{name:"twitter:title",content:"sern - Handlers. Redefined."},{name:"twitter:description",content:"A modular, customizable, fast Discord.js framework to streamline bot development"},{name:"keywords",content:"discord, bot, handler, framework, documentation, sern"},{name:"twitter:image",content:"https://sern.dev/img/logo.png"},{name:"twitter:url",content:"https://sern.dev"},{property:"og:image:height",content:"512"},{property:"og:image:width",content:"1024"},{name:"theme-color",content:"#F25186"}],prism:{theme:{plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},darkTheme:{plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:"#c5a5c5"}},{types:["attr-value"],style:{color:"#8dc891"}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:"#8dc891"}},{types:["punctuation"],style:{color:"#8dc891"}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:"#c5a5c5"}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},additionalLanguages:[],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},colorMode:{defaultMode:"light",disableSwitch:!1,respectPrefersColorScheme:!1},docs:{versionPersistence:"localStorage",sidebar:{hideable:!1,autoCollapseCategories:!1}},tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},plugins:[["@dipakparmar/docusaurus-plugin-umami",{websiteID:"e82ff65c-b08f-47b5-8e74-5c31cbcec0ad",analyticsDomain:"analytics.srizan.dev",scriptName:"ua.js",dataAutoTrack:!0,dataDoNotTrack:!0,dataCache:!0,dataDomains:"sern.dev"}]],baseUrlIssueBanner:!0,onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},themes:[],scripts:[],headTags:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1}},8168:(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,{A:()=>r})},2892:(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)}function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,r(e,t)}n.d(t,{A:()=>a})},8587:(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,{A:()=>r})},8181:(e,t,n)=>{"use strict";n.d(t,{f4:()=>J,My:()=>_});var r=n(6540);function a(e){var t,n,r="";if("string"==typeof e||"number"==typeof e)r+=e;else if("object"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(n=a(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}const o=function(){for(var e,t,n=0,r="",o=arguments.length;n<o;n++)(e=arguments[n])&&(t=a(e))&&(r&&(r+=" "),r+=t);return r};var i,l,s,c,u,d=Object.create,p=Object.defineProperty,f=Object.defineProperties,m=Object.getOwnPropertyDescriptor,h=Object.getOwnPropertyDescriptors,g=Object.getOwnPropertyNames,b=Object.getOwnPropertySymbols,y=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty,w=Object.prototype.propertyIsEnumerable,k=(e,t,n)=>t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,x=(e,t)=>{for(var n in t||(t={}))v.call(t,n)&&k(e,n,t[n]);if(b)for(var n of b(t))w.call(t,n)&&k(e,n,t[n]);return e},S=(e,t)=>f(e,h(t)),E=(e,t)=>{var n={};for(var r in e)v.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&b)for(var r of b(e))t.indexOf(r)<0&&w.call(e,r)&&(n[r]=e[r]);return n},C=(i={"../../node_modules/.pnpm/prismjs@1.29.0_patch_hash=vrxx3pzkik6jpmgpayxfjunetu/node_modules/prismjs/prism.js"(e,t){var n=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 c=a[e];return a[e]=i,r.languages.DFS(r.languages,(function(t,n){n===c&&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],c=r.util.type(s);"Object"!==c||o[i(s)]?"Array"!==c||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};if(r.hooks.run("before-tokenize",o),!o.grammar)throw new Error('The language "'+o.language+'" has no grammar.');return 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){for(var t=[],n=e.head.next;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,u,d){for(var p in n)if(n.hasOwnProperty(p)&&n[p]){var f=n[p];f=Array.isArray(f)?f:[f];for(var m=0;m<f.length;++m){if(d&&d.cause==p+","+m)return;var h=f[m],g=h.inside,b=!!h.lookbehind,y=!!h.greedy,v=h.alias;if(y&&!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,x=l.next,S=u;x!==t.tail&&!(d&&S>=d.reach);S+=x.value.length,x=x.next){var E=x.value;if(t.length>e.length)return;if(!(E instanceof a)){var C,_=1;if(y){if(!(C=o(k,S,e,b))||C.index>=e.length)break;var T=C.index,A=C.index+C[0].length,j=S;for(j+=x.value.length;T>=j;)j+=(x=x.next).value.length;if(S=j-=x.value.length,x.value instanceof a)continue;for(var P=x;P!==t.tail&&(j<A||"string"==typeof P.value);P=P.next)_++,j+=P.value.length;_--,E=e.slice(S,j),C.index-=S}else if(!(C=o(k,0,E,b)))continue;T=C.index;var R=C[0],L=E.slice(0,T),N=E.slice(T+R.length),D=S+E.length;d&&D>d.reach&&(d.reach=D);var M=x.prev;if(L&&(M=s(t,M,L),S+=L.length),c(t,M,_),x=s(t,M,new a(p,g?r.tokenize(R,g):R,v,R)),N&&s(t,x,N),_>1){var O={cause:p+","+m,reach:D};i(e,t,n,x.prev,S,O),d&&O.reach>d.reach&&(d.reach=O.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 c(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}();t.exports=n,n.default=n}},function(){return l||(0,i[g(i)[0]])((l={exports:{}}).exports,l),l.exports}),_=((e,t,n)=>(n=null!=e?d(y(e)):{},((e,t,n,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let a of g(t))v.call(e,a)||a===n||p(e,a,{get:()=>t[a],enumerable:!(r=m(t,a))||r.enumerable});return e})(!t&&e&&e.__esModule?n:p(n,"default",{value:e,enumerable:!0}),e)))(C());_.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"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},_.languages.markup.tag.inside["attr-value"].inside.entity=_.languages.markup.entity,_.languages.markup.doctype.inside["internal-subset"].inside=_.languages.markup,_.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(_.languages.markup.tag,"addInlined",{value:function(e,t){var n;(t=((n=((n={})["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:_.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i,{"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}}))["language-"+t]={pattern:/[\s\S]+/,inside:_.languages[t]},{}))[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},_.languages.insertBefore("markup","cdata",t)}}),Object.defineProperty(_.languages.markup.tag,"addAttribute",{value:function(e,t){_.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:_.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),_.languages.html=_.languages.markup,_.languages.mathml=_.languages.markup,_.languages.svg=_.languages.markup,_.languages.xml=_.languages.extend("markup",{}),_.languages.ssml=_.languages.xml,_.languages.atom=_.languages.xml,_.languages.rss=_.languages.xml,function(e){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,r="(?:[^\\\\-]|"+n.source+")",a=(r=RegExp(r+"-"+r),{pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"});e.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:r,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":t,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:n}},"special-escape":t,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":a}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:"punctuation",inside:{"group-name":a}},{pattern:/\)/,alias:"punctuation"}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:"number"},alternation:{pattern:/\|/,alias:"keyword"}}}(_),_.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:/[{}[\];(),.:]/},_.languages.javascript=_.languages.extend("clike",{"class-name":[_.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}|\?\?=?|\?\.?|[~:]/}),_.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,_.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:_.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:_.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:_.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:_.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:_.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),_.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:_.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"}}),_.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),_.languages.markup&&(_.languages.markup.tag.addInlined("script","javascript"),_.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")),_.languages.js=_.languages.javascript,_.languages.actionscript=_.languages.extend("javascript",{keyword:/\b(?:as|break|case|catch|class|const|default|delete|do|dynamic|each|else|extends|final|finally|for|function|get|if|implements|import|in|include|instanceof|interface|internal|is|namespace|native|new|null|override|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|use|var|void|while|with)\b/,operator:/\+\+|--|(?:[+\-*\/%^]|&&?|\|\|?|<<?|>>?>?|[!=]=?)=?|[~?@]/}),_.languages.actionscript["class-name"].alias="function",delete _.languages.actionscript.parameter,delete _.languages.actionscript["literal-property"],_.languages.markup&&_.languages.insertBefore("actionscript","string",{xml:{pattern:/(^|[^.])<\/?\w+(?:\s+[^\s>\/=]+=("|')(?:\\[\s\S]|(?!\2)[^\\])*\2)*\s*\/?>/,lookbehind:!0,inside:_.languages.markup}}),c=/#(?!\{).+/,u={pattern:/#\{[^}]+\}/,alias:"variable"},(s=_).languages.coffeescript=s.languages.extend("javascript",{comment:c,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:u}}],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"}}),s.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:c,interpolation:u}}}),s.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:s.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:u}}]}),s.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete s.languages.coffeescript["template-string"],s.languages.coffee=s.languages.coffeescript,function(e){var t=e.languages.javadoclike={parameter:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,lookbehind:!0},keyword:{pattern:/(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,lookbehind:!0},punctuation:/[{}]/};Object.defineProperty(t,"addSupport",{value:function(t,n){(t="string"==typeof t?[t]:t).forEach((function(t){var r=function(e){e.inside||(e.inside={}),e.inside.rest=n},a="doc-comment";if(o=e.languages[t]){var o,i=o[a];if((i=i||(o=e.languages.insertBefore(t,"comment",{"doc-comment":{pattern:/(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,lookbehind:!0,alias:"comment"}}))[a])instanceof RegExp&&(i=o[a]={pattern:i}),Array.isArray(i))for(var l=0,s=i.length;l<s;l++)i[l]instanceof RegExp&&(i[l]={pattern:i[l]}),r(i[l]);else r(i)}}))}}),t.addSupport(["java","javascript","php"],t)}(_),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;(t=(e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),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,e.languages.markup))&&(t.tag.addInlined("style","css"),t.tag.addAttribute("style","css"))}(_),function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,n=(t=(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("\\[(?:[^[\\]\"']|"+t.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":[t,{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}}),{pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0}),{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|RebeccaPurple|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:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,number:n})}(_),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}(_),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,i=(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,o=t[n];"code"!==o.type?e(o.content):(a=o.content[1],o=o.content[3],a&&o&&"code-language"===a.type&&"code-block"===o.type&&"string"==typeof a.content&&(a=a.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),a="language-"+(a=(/[a-z][\w-]*/i.exec(a)||[""])[0].toLowerCase()),o.alias?"string"==typeof o.alias?o.alias=[o.alias,a]:o.alias.push(a):o.alias=[a]))}}(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];if(o=/language-(.+)/.exec(o)){n=o[1];break}}var c,u=e.languages[n];u?t.content=e.highlight(t.content.replace(i,"").replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,(function(e,t){var n;return"#"===(t=t.toLowerCase())[0]?(n="x"===t[1]?parseInt(t.slice(2),16):Number(t.slice(1)),s(n)):l[t]||e})),u,n):n&&"none"!==n&&e.plugins.autoloader&&(c="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random()),t.attributes.id=c,e.plugins.autoloader.loadLanguages(n,(function(){var t=document.getElementById(c);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})))}})),RegExp(e.languages.markup.tag.pattern.source,"gi")),l={amp:"&",lt:"<",gt:">",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(_),_.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:_.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+/},_.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"])&&"("===u(1).content){n+=2;var o=p(/^\($/,/^\)$/);if(-1===o)continue;for(;n<o;n++){var i=u(0);"variable"===i.type&&(f(i,"variable-input"),a.push(i.content))}n=o+1}if(d(["punctuation","property-query"])&&"{"===u(0).content&&(n++,f(u(0),"property-mutation"),0<a.length)){var l=p(/^\{$/,/^\}$/);if(-1!==l)for(var s=n;s<l;s++){var c=t[s];"variable"===c.type&&0<=a.indexOf(c.content)&&f(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n<e.length;n++){var r=u(n+t);if(!r||r.type!==e[n])return}return 1}function p(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 f(e,t){var n=e.alias;n?Array.isArray(n)||(e.alias=n=[n]):e.alias=n=[],n.push(t)}})),_.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(t,n,r){return t={code:t,grammar:n,language:r},e.hooks.run("before-tokenize",t),t.tokens=e.tokenize(t.code,t.grammar),e.hooks.run("after-tokenize",t),t.tokens}function s(t,n,i){var s=e.tokenize(t,{interpolation:{pattern:RegExp(o),lookbehind:!0}}),c=0,u={},d=(s=l(s.map((function(e){if("string"==typeof e)return e;var n,r;for(e=e.content;-1!==t.indexOf((r=c++,n="___"+i.toUpperCase()+"_"+r+"___")););return u[n]=e,n})).join(""),n,i),Object.keys(u));return c=0,function t(n){for(var o=0;o<n.length;o++){if(c>=d.length)return;var i,s,p,f,m,h,g,b=n[o];"string"==typeof b||"string"==typeof b.content?(i=d[c],-1!==(g=(h="string"==typeof b?b:b.content).indexOf(i))&&(++c,s=h.substring(0,g),m=u[i],p=void 0,(f={})["interpolation-punctuation"]=a,3===(f=e.tokenize(m,f)).length&&((p=[1,1]).push.apply(p,l(f[1],e.languages.javascript,"javascript")),f.splice.apply(f,p)),p=new e.Token("interpolation",f,r.alias,m),f=h.substring(g+i.length),m=[],s&&m.push(s),m.push(p),f&&(t(h=[f]),m.push.apply(m,h)),"string"==typeof b?(n.splice.apply(n,[o,1].concat(m)),o+=m.length-1):b.content=m)):(g=b.content,Array.isArray(g)?t(g):t([g]))}}(s),new e.Token(i,s,"language-"+i,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 c={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function u(e){return"string"==typeof e?e:Array.isArray(e)?e.map(u).join(""):u(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in c&&function t(n){for(var r=0,a=n.length;r<a;r++){var o,i,l,c=n[r];"string"!=typeof c&&(o=c.content,Array.isArray(o)?"template-string"===c.type?(c=o[1],3===o.length&&"string"!=typeof c&&"embedded-code"===c.type&&(i=u(c),c=c.alias,c=Array.isArray(c)?c[0]:c,l=e.languages[c])&&(o[1]=s(i,l,c))):t(o):"string"!=typeof o&&t([o]))}}(t.tokens)}))}(_),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}(_),function(e){var t=e.languages.javascript,n=/\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source,r="(@(?:arg|argument|param|property)\\s+(?:"+n+"\\s+)?)";e.languages.jsdoc=e.languages.extend("javadoclike",{parameter:{pattern:RegExp(r+/(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),lookbehind:!0,inside:{punctuation:/\./}}}),e.languages.insertBefore("jsdoc","keyword",{"optional-parameter":{pattern:RegExp(r+/\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),lookbehind:!0,inside:{parameter:{pattern:/(^\[)[$\w\xA0-\uFFFF\.]+/,lookbehind:!0,inside:{punctuation:/\./}},code:{pattern:/(=)[\s\S]*(?=\]$)/,lookbehind:!0,inside:t,alias:"language-javascript"},punctuation:/[=[\]]/}},"class-name":[{pattern:RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:<TYPE>\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(/<TYPE>/g,(function(){return n}))),lookbehind:!0,inside:{punctuation:/\./}},{pattern:RegExp("(@[a-z]+\\s+)"+n),lookbehind:!0,inside:{string:t.string,number:t.number,boolean:t.boolean,keyword:e.languages.typescript.keyword,operator:/=>|\.\.\.|[&|?:*]/,punctuation:/[.,;=<>{}()[\]]/}}],example:{pattern:/(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,lookbehind:!0,inside:{code:{pattern:/^([\t ]*(?:\*\s*)?)\S.*$/m,lookbehind:!0,inside:t,alias:"language-javascript"}}}}),e.languages.javadoclike.addSupport("javascript",e.languages.jsdoc)}(_),function(e){e.languages.flow=e.languages.extend("javascript",{}),e.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"class-name"}]}),e.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\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)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(_),_.languages.n4js=_.languages.extend("javascript",{keyword:/\b(?:Array|any|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/}),_.languages.insertBefore("n4js","constant",{annotation:{pattern:/@+\w+/,alias:"operator"}}),_.languages.n4jsd=_.languages.n4js,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];a=(o="RegExp"===e.util.type(o)?e.languages.javascript[a]={pattern:o}:o).inside||{};(o.inside=a)["maybe-class-name"]=/^[A-Z][\s\S]*/}}(_),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)}function i(t){for(var n=[],r=0;r<t.length;r++){var a=t[r],o=!1;"string"!=typeof a&&("tag"===a.type&&a.content[0]&&"tag"===a.content[0].type?"</"===a.content[0].content[0].content?0<n.length&&n[n.length-1].tagName===l(a.content[0].content[1])&&n.pop():"/>"!==a.content[a.content.length-1].content&&n.push({tagName:l(a.content[0].content[1]),openedBraces:0}):0<n.length&&"punctuation"===a.type&&"{"===a.content?n[n.length-1].openedBraces++:0<n.length&&0<n[n.length-1].openedBraces&&"punctuation"===a.type&&"}"===a.content?n[n.length-1].openedBraces--:o=!0),(o||"string"==typeof a)&&0<n.length&&0===n[n.length-1].openedBraces&&(o=l(a),r<t.length-1&&("string"==typeof t[r+1]||"plain-text"===t[r+1].type)&&(o+=l(t[r+1]),t.splice(r+1,1)),0<r&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(o=l(t[r-1])+o,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",o,null,o)),a.content&&"string"!=typeof a.content&&i(a.content)}}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 l=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(l).join(""):""};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||i(e.tokens)}))}(_),function(e){var t=e.util.clone(e.languages.typescript);(t=(e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"],e.languages.tsx.tag)).pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+t.pattern.source+")",t.pattern.flags),t.lookbehind=!0}(_),_.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(/(^|[^"#])/.source+"(?:"+/"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source+"|"+/"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source+")"+/(?!["#])/.source),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:"punctuation"},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(/(^|[^"#])(#+)/.source+"(?:"+/"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source+"|"+/"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source+")\\2"),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:"punctuation"},string:/[\s\S]+/}}],directive:{pattern:RegExp(/#/.source+"(?:"+/(?:elseif|if)\b/.source+"(?:[ \t]*"+/(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source+")+|"+/(?:else|endif)\b/.source+")"),alias:"property",inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:"constant"},"other-directive":{pattern:/#\w+\b/,alias:"property"},attribute:{pattern:/@\w+/,alias:"atrule"},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:"function"},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:"important"},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:"constant"},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:"keyword"},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},_.languages.swift["string-literal"].forEach((function(e){e.inside.interpolation.inside=_.languages.swift})),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:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!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"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(_),_.languages.c=_.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|[?:~]|[-+*/%&|^!=<>]=?/}),_.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),_.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},_.languages.c.string],char:_.languages.c.char,comment:_.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:_.languages.c}}}}),_.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 _.languages.c.boolean,_.languages.objectivec=_.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 _.languages.objectivec["class-name"],_.languages.objc=_.languages.objectivec,_.languages.reason=_.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/}),_.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 _.languages.reason.function,function(e){for(var t=/\/\*(?:[^*/]|\*(?!\/)|\/(?!\*)|<self>)*\*\//.source,n=0;n<2;n++)t=t.replace(/<self>/g,(function(){return t}));t=t.replace(/<self>/g,(function(){return/[^\s\S]/.source})),e.languages.rust={comment:[{pattern:RegExp(/(^|[^\\])/.source+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:"attr-name",inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:"punctuation"},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:"symbol"},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:"punctuation"},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:"function"},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:"class-name"},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:"namespace"},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:"namespace",inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:"property"},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust["closure-params"].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string}(_),_.languages.go=_.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/}),_.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete _.languages.go["class-name"],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"])}(_),_.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:/[{}[\];(),.:]/},_.languages.python["string-interpolation"].inside.interpolation.inside.rest=_.languages.python,_.languages.py=_.languages.python;((e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})})({},{dracula:()=>T,duotoneDark:()=>A,duotoneLight:()=>j,github:()=>P,jettwaveDark:()=>q,jettwaveLight:()=>H,nightOwl:()=>R,nightOwlLight:()=>L,oceanicNext:()=>M,okaidia:()=>O,oneDark:()=>G,oneLight:()=>W,palenight:()=>I,shadesOfPurple:()=>F,synthwave84:()=>B,ultramin:()=>z,vsDark:()=>U,vsLight:()=>$});var T={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)"}}]},A={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"}}]},j={plain:{backgroundColor:"#faf8f5",color:"#728fcb"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#b6ad9a"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#063289"}},{types:["property","function"],style:{color:"#b29762"}},{types:["tag-id","selector","atrule-id"],style:{color:"#2d2006"}},{types:["attr-name"],style:{color:"#896724"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule"],style:{color:"#728fcb"}},{types:["placeholder","variable"],style:{color:"#93abdc"}},{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:"#896724"}}]},P={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"}}]},R={plain:{color:"#d6deeb",backgroundColor:"#011627"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(99, 119, 119)",fontStyle:"italic"}},{types:["string","url"],style:{color:"rgb(173, 219, 103)"}},{types:["variable"],style:{color:"rgb(214, 222, 235)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation"],style:{color:"rgb(199, 146, 234)"}},{types:["selector","doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(255, 203, 139)"}},{types:["tag","operator","keyword"],style:{color:"rgb(127, 219, 202)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["property"],style:{color:"rgb(128, 203, 196)"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}}]},L={plain:{color:"#403f53",backgroundColor:"#FBFBFB"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)",fontStyle:"italic"}},{types:["inserted","attr-name"],style:{color:"rgb(72, 118, 214)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(152, 159, 177)",fontStyle:"italic"}},{types:["string","builtin","char","constant","url"],style:{color:"rgb(72, 118, 214)"}},{types:["variable"],style:{color:"rgb(201, 103, 101)"}},{types:["number"],style:{color:"rgb(170, 9, 130)"}},{types:["punctuation"],style:{color:"rgb(153, 76, 195)"}},{types:["function","selector","doctype"],style:{color:"rgb(153, 76, 195)",fontStyle:"italic"}},{types:["class-name"],style:{color:"rgb(17, 17, 17)"}},{types:["tag"],style:{color:"rgb(153, 76, 195)"}},{types:["operator","property","keyword","namespace"],style:{color:"rgb(12, 150, 155)"}},{types:["boolean"],style:{color:"rgb(188, 84, 84)"}}]},N="#c5a5c5",D="#8dc891",M={plain:{backgroundColor:"#282c34",color:"#ffffff"},styles:[{types:["attr-name"],style:{color:N}},{types:["attr-value"],style:{color:D}},{types:["comment","block-comment","prolog","doctype","cdata","shebang"],style:{color:"#999999"}},{types:["property","number","function-name","constant","symbol","deleted"],style:{color:"#5a9bcf"}},{types:["boolean"],style:{color:"#ff8b50"}},{types:["tag"],style:{color:"#fc929e"}},{types:["string"],style:{color:D}},{types:["punctuation"],style:{color:D}},{types:["selector","char","builtin","inserted"],style:{color:"#D8DEE9"}},{types:["function"],style:{color:"#79b6f2"}},{types:["operator","entity","url","variable"],style:{color:"#d7deea"}},{types:["keyword"],style:{color:N}},{types:["atrule","class-name"],style:{color:"#FAC863"}},{types:["important"],style:{fontWeight:"400"}},{types:["bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}}]},O={plain:{color:"#f8f8f2",backgroundColor:"#272822"},styles:[{types:["changed"],style:{color:"rgb(162, 191, 252)",fontStyle:"italic"}},{types:["deleted"],style:{color:"#f92672",fontStyle:"italic"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)",fontStyle:"italic"}},{types:["comment"],style:{color:"#8292a2",fontStyle:"italic"}},{types:["string","url"],style:{color:"#a6e22e"}},{types:["variable"],style:{color:"#f8f8f2"}},{types:["number"],style:{color:"#ae81ff"}},{types:["builtin","char","constant","function","class-name"],style:{color:"#e6db74"}},{types:["punctuation"],style:{color:"#f8f8f2"}},{types:["selector","doctype"],style:{color:"#a6e22e",fontStyle:"italic"}},{types:["tag","operator","keyword"],style:{color:"#66d9ef"}},{types:["boolean"],style:{color:"#ae81ff"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)",opacity:.7}},{types:["tag","property"],style:{color:"#f92672"}},{types:["attr-name"],style:{color:"#a6e22e !important"}},{types:["doctype"],style:{color:"#8292a2"}},{types:["rule"],style:{color:"#e6db74"}}]},I={plain:{color:"#bfc7d5",backgroundColor:"#292d3e"},styles:[{types:["comment"],style:{color:"rgb(105, 112, 152)",fontStyle:"italic"}},{types:["string","inserted"],style:{color:"rgb(195, 232, 141)"}},{types:["number"],style:{color:"rgb(247, 140, 108)"}},{types:["builtin","char","constant","function"],style:{color:"rgb(130, 170, 255)"}},{types:["punctuation","selector"],style:{color:"rgb(199, 146, 234)"}},{types:["variable"],style:{color:"rgb(191, 199, 213)"}},{types:["class-name","attr-name"],style:{color:"rgb(255, 203, 107)"}},{types:["tag","deleted"],style:{color:"rgb(255, 85, 114)"}},{types:["operator"],style:{color:"rgb(137, 221, 255)"}},{types:["boolean"],style:{color:"rgb(255, 88, 116)"}},{types:["keyword"],style:{fontStyle:"italic"}},{types:["doctype"],style:{color:"rgb(199, 146, 234)",fontStyle:"italic"}},{types:["namespace"],style:{color:"rgb(178, 204, 214)"}},{types:["url"],style:{color:"rgb(221, 221, 221)"}}]},F={plain:{color:"#9EFEFF",backgroundColor:"#2D2A55"},styles:[{types:["changed"],style:{color:"rgb(255, 238, 128)"}},{types:["deleted"],style:{color:"rgba(239, 83, 80, 0.56)"}},{types:["inserted"],style:{color:"rgb(173, 219, 103)"}},{types:["comment"],style:{color:"rgb(179, 98, 255)",fontStyle:"italic"}},{types:["punctuation"],style:{color:"rgb(255, 255, 255)"}},{types:["constant"],style:{color:"rgb(255, 98, 140)"}},{types:["string","url"],style:{color:"rgb(165, 255, 144)"}},{types:["variable"],style:{color:"rgb(255, 238, 128)"}},{types:["number","boolean"],style:{color:"rgb(255, 98, 140)"}},{types:["attr-name"],style:{color:"rgb(255, 180, 84)"}},{types:["keyword","operator","property","namespace","tag","selector","doctype"],style:{color:"rgb(255, 157, 0)"}},{types:["builtin","char","constant","function","class-name"],style:{color:"rgb(250, 208, 0)"}}]},B={plain:{backgroundColor:"linear-gradient(to bottom, #2a2139 75%, #34294f)",backgroundImage:"#34294f",color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"},styles:[{types:["comment","block-comment","prolog","doctype","cdata"],style:{color:"#495495",fontStyle:"italic"}},{types:["punctuation"],style:{color:"#ccc"}},{types:["tag","attr-name","namespace","number","unit","hexcode","deleted"],style:{color:"#e2777a"}},{types:["property","selector"],style:{color:"#72f1b8",textShadow:"0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475"}},{types:["function-name"],style:{color:"#6196cc"}},{types:["boolean","selector-id","function"],style:{color:"#fdfdfd",textShadow:"0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975"}},{types:["class-name","maybe-class-name","builtin"],style:{color:"#fff5f6",textShadow:"0 0 2px #000, 0 0 10px #fc1f2c75, 0 0 5px #fc1f2c75, 0 0 25px #fc1f2c75"}},{types:["constant","symbol"],style:{color:"#f92aad",textShadow:"0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3"}},{types:["important","atrule","keyword","selector-class"],style:{color:"#f4eee4",textShadow:"0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575"}},{types:["string","char","attr-value","regex","variable"],style:{color:"#f87c32"}},{types:["parameter"],style:{fontStyle:"italic"}},{types:["entity","url"],style:{color:"#67cdcc"}},{types:["operator"],style:{color:"ffffffee"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["entity"],style:{cursor:"help"}},{types:["inserted"],style:{color:"green"}}]},z={plain:{color:"#282a2e",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(197, 200, 198)"}},{types:["string","number","builtin","variable"],style:{color:"rgb(150, 152, 150)"}},{types:["class-name","function","tag","attr-name"],style:{color:"rgb(40, 42, 46)"}}]},U={plain:{color:"#9CDCFE",backgroundColor:"#1E1E1E"},styles:[{types:["prolog"],style:{color:"rgb(0, 0, 128)"}},{types:["comment"],style:{color:"rgb(106, 153, 85)"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"rgb(86, 156, 214)"}},{types:["number","inserted"],style:{color:"rgb(181, 206, 168)"}},{types:["constant"],style:{color:"rgb(100, 102, 149)"}},{types:["attr-name","variable"],style:{color:"rgb(156, 220, 254)"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"rgb(206, 145, 120)"}},{types:["selector"],style:{color:"rgb(215, 186, 125)"}},{types:["tag"],style:{color:"rgb(78, 201, 176)"}},{types:["tag"],languages:["markup"],style:{color:"rgb(86, 156, 214)"}},{types:["punctuation","operator"],style:{color:"rgb(212, 212, 212)"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"rgb(220, 220, 170)"}},{types:["class-name"],style:{color:"rgb(78, 201, 176)"}},{types:["char"],style:{color:"rgb(209, 105, 105)"}}]},$={plain:{color:"#000000",backgroundColor:"#ffffff"},styles:[{types:["comment"],style:{color:"rgb(0, 128, 0)"}},{types:["builtin"],style:{color:"rgb(0, 112, 193)"}},{types:["number","variable","inserted"],style:{color:"rgb(9, 134, 88)"}},{types:["operator"],style:{color:"rgb(0, 0, 0)"}},{types:["constant","char"],style:{color:"rgb(129, 31, 63)"}},{types:["tag"],style:{color:"rgb(128, 0, 0)"}},{types:["attr-name"],style:{color:"rgb(255, 0, 0)"}},{types:["deleted","string"],style:{color:"rgb(163, 21, 21)"}},{types:["changed","punctuation"],style:{color:"rgb(4, 81, 165)"}},{types:["function","keyword"],style:{color:"rgb(0, 0, 255)"}},{types:["class-name"],style:{color:"rgb(38, 127, 153)"}}]},q={plain:{color:"#f8fafc",backgroundColor:"#011627"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#569CD6"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#f8fafc"}},{types:["attr-name","variable"],style:{color:"#9CDCFE"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#cbd5e1"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#D4D4D4"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#7dd3fc"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},H={plain:{color:"#0f172a",backgroundColor:"#f1f5f9"},styles:[{types:["prolog"],style:{color:"#000080"}},{types:["comment"],style:{color:"#6A9955"}},{types:["builtin","changed","keyword","interpolation-punctuation"],style:{color:"#0c4a6e"}},{types:["number","inserted"],style:{color:"#B5CEA8"}},{types:["constant"],style:{color:"#0f172a"}},{types:["attr-name","variable"],style:{color:"#0c4a6e"}},{types:["deleted","string","attr-value","template-punctuation"],style:{color:"#64748b"}},{types:["selector"],style:{color:"#D7BA7D"}},{types:["tag"],style:{color:"#0ea5e9"}},{types:["tag"],languages:["markup"],style:{color:"#0ea5e9"}},{types:["punctuation","operator"],style:{color:"#475569"}},{types:["punctuation"],languages:["markup"],style:{color:"#808080"}},{types:["function"],style:{color:"#0e7490"}},{types:["class-name"],style:{color:"#0ea5e9"}},{types:["char"],style:{color:"#D16969"}}]},G={plain:{backgroundColor:"hsl(220, 13%, 18%)",color:"hsl(220, 14%, 71%)",textShadow:"0 1px rgba(0, 0, 0, 0.3)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(220, 10%, 40%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(220, 14%, 71%)"}},{types:["attr-name","class-name","maybe-class-name","boolean","constant","number","atrule"],style:{color:"hsl(29, 54%, 61%)"}},{types:["keyword"],style:{color:"hsl(286, 60%, 67%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(355, 65%, 65%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value"],style:{color:"hsl(95, 38%, 62%)"}},{types:["variable","operator","function"],style:{color:"hsl(207, 82%, 66%)"}},{types:["url"],style:{color:"hsl(187, 47%, 55%)"}},{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:"hsl(220, 14%, 71%)"}}]},W={plain:{backgroundColor:"hsl(230, 1%, 98%)",color:"hsl(230, 8%, 24%)"},styles:[{types:["comment","prolog","cdata"],style:{color:"hsl(230, 4%, 64%)"}},{types:["doctype","punctuation","entity"],style:{color:"hsl(230, 8%, 24%)"}},{types:["attr-name","class-name","boolean","constant","number","atrule"],style:{color:"hsl(35, 99%, 36%)"}},{types:["keyword"],style:{color:"hsl(301, 63%, 40%)"}},{types:["property","tag","symbol","deleted","important"],style:{color:"hsl(5, 74%, 59%)"}},{types:["selector","string","char","builtin","inserted","regex","attr-value","punctuation"],style:{color:"hsl(119, 34%, 47%)"}},{types:["variable","operator","function"],style:{color:"hsl(221, 87%, 60%)"}},{types:["url"],style:{color:"hsl(198, 99%, 37%)"}},{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:"hsl(230, 8%, 24%)"}}]},V=(e,t)=>{const{plain:n}=e,r=e.styles.reduce(((e,n)=>{const{languages:r,style:a}=n;return r&&!r.includes(t)||n.types.forEach((t=>{const n=x(x({},e[t]),a);e[t]=n})),e}),{});return r.root=n,r.plain=S(x({},n),{backgroundColor:void 0}),r},K=/\r\n|\r|\n/,Q=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)},Y=(e,t)=>{const n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},Z=e=>{const t=[[]],n=[e],r=[0],a=[e.length];let o=0,i=0,l=[];const s=[l];for(;i>-1;){for(;(o=r[i]++)<a[i];){let e,c=t[i];const u=n[i][o];if("string"==typeof u?(c=i>0?c:["plain"],e=u):(c=Y(c,u.type),u.alias&&(c=Y(c,u.alias)),e=u.content),"string"!=typeof e){i++,t.push(c),n.push(e),r.push(0),a.push(e.length);continue}const d=e.split(K),p=d.length;l.push({types:c,content:d[0]});for(let t=1;t<p;t++)Q(l),s.push(l=[]),l.push({types:c,content:d[t]})}i--,t.pop(),n.pop(),r.pop(),a.pop()}return Q(l),s},X=({children:e,language:t,code:n,theme:a,prism:i})=>{const l=t.toLowerCase(),s=((e,t)=>{const[n,a]=(0,r.useState)(V(t,e)),o=(0,r.useRef)(),i=(0,r.useRef)();return(0,r.useEffect)((()=>{t===o.current&&e===i.current||(o.current=t,i.current=e,a(V(t,e)))}),[e,t]),n})(l,a),c=(e=>(0,r.useCallback)((t=>{var n=t,{className:r,style:a,line:i}=n,l=E(n,["className","style","line"]);const s=S(x({},l),{className:o("token-line",r)});return"object"==typeof e&&"plain"in e&&(s.style=e.plain),"object"==typeof a&&(s.style=x(x({},s.style||{}),a)),s}),[e]))(s),u=(e=>{const t=(0,r.useCallback)((({types:t,empty:n})=>{if(null!=e)return 1===t.length&&"plain"===t[0]?null!=n?{display:"inline-block"}:void 0:1===t.length&&null!=n?e[t[0]]:Object.assign(null!=n?{display:"inline-block"}:{},...t.map((t=>e[t])))}),[e]);return(0,r.useCallback)((e=>{var n=e,{token:r,className:a,style:i}=n,l=E(n,["token","className","style"]);const s=S(x({},l),{className:o("token",...r.types,a),children:r.content,style:t(r)});return null!=i&&(s.style=x(x({},s.style||{}),i)),s}),[t])})(s),d=(({prism:e,code:t,grammar:n,language:a})=>{const o=(0,r.useRef)(e);return(0,r.useMemo)((()=>{if(null==n)return Z([t]);const e={code:t,grammar:n,language:a,tokens:[]};return o.current.hooks.run("before-tokenize",e),e.tokens=o.current.tokenize(t,n),o.current.hooks.run("after-tokenize",e),Z(e.tokens)}),[t,n,a])})({prism:i,language:l,code:n,grammar:i.languages[l]});return e({tokens:d,className:`prism-code language-${l}`,style:null!=s?s.root:{},getLineProps:c,getTokenProps:u})},J=e=>(0,r.createElement)(X,S(x({},e),{prism:e.prism||_,theme:e.theme||U,code:e.code,language:e.language}))},1561:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=!0,a="Invariant failed";function o(e,t){if(!e){if(r)throw new Error(a);var n="function"==typeof t?t():t,o=n?"".concat(a,": ").concat(n):a;throw new Error(o)}}},2654:e=>{"use strict";e.exports={}},4054:e=>{"use strict";e.exports=JSON.parse('{"/blog-c3f":{"__comp":"a6aa9e1f","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","items":[{"content":"4fef5a93"},{"content":"1a1cc5f0"},{"content":"74e316f4"},{"content":"3f83d40d"},{"content":"67348500"},{"content":"2f13d849"},{"content":"6ba1d2c1"}],"metadata":"b2b675dd"},"/blog/1.2.0-cba":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"3020eeee"},"/blog/2.0.0-c58":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"3a25b5a8"},"/blog/2.5.0-a13":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"edc18331"},"/blog/3.0.0-24b":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"522b21a2"},"/blog/archive-825":{"__comp":"9e4087bc","__context":{"plugin":"7c2ff145"},"archive":"b2f554cd"},"/blog/getting-started-e5e":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"f7831d67"},"/blog/newlogo-346":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"b654e1cf"},"/blog/railway-deploy-314":{"__comp":"ccc49370","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","content":"916aad9f"},"/blog/tags-61b":{"__comp":"01a85c17","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","tags":"a7023ddc"},"/blog/tags/branding-298":{"__comp":"6875c492","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","items":[{"content":"1a1cc5f0"}],"tag":"1adeaf48","listMetadata":"2e208732"},"/blog/tags/guides-a8b":{"__comp":"6875c492","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","items":[{"content":"4fef5a93"},{"content":"2f13d849"}],"tag":"6cfc4513","listMetadata":"cfb1619e"},"/blog/tags/release-bce":{"__comp":"6875c492","__context":{"plugin":"7c2ff145"},"sidebar":"814f3328","items":[{"content":"74e316f4"},{"content":"3f83d40d"},{"content":"67348500"},{"content":"6ba1d2c1"}],"tag":"83d480e9","listMetadata":"9c021584"},"/markdown-page-494":{"__comp":"1f391b9e","__context":{"plugin":"c4348237"},"content":"393be207"},"/plugins-bcd":{"__comp":"312c2bc5","__context":{"plugin":"c4348237"},"config":"5e9f5e1a"},"/search-c0c":{"__comp":"1a4e3797","__context":{"plugin":"6b841b38"}},"/sponsors-492":{"__comp":"57124ee9","__context":{"plugin":"c4348237"},"config":"5e9f5e1a"},"/docs-670":{"__comp":"5e95c892","__context":{"plugin":"69369ae2"}},"/docs-9c0":{"__comp":"a7bd4aaa","version":"935f2afb"},"/docs-78c":{"__comp":"a94703ab"},"/docs/api-c13":{"__comp":"17896441","content":"5e8c322a"},"/docs/api/classes/CommandExecutable-574":{"__comp":"17896441","content":"6c624b4c"},"/docs/api/classes/Context-d4a":{"__comp":"17896441","content":"bcd9df7e"},"/docs/api/classes/DefaultErrorHandling-884":{"__comp":"17896441","content":"90fdad0c"},"/docs/api/classes/DefaultLogging-bb9":{"__comp":"17896441","content":"1b0c702f"},"/docs/api/classes/DefaultModuleManager-46e":{"__comp":"17896441","content":"f1cc380d"},"/docs/api/classes/EventExecutable-494":{"__comp":"17896441","content":"c0846785"},"/docs/api/classes/ModuleStore-14f":{"__comp":"17896441","content":"67e3e25a"},"/docs/api/classes/SernEmitter-a53":{"__comp":"17896441","content":"7e205c4a"},"/docs/api/enums/CommandType-f9d":{"__comp":"17896441","content":"a5467962"},"/docs/api/enums/EventType-a4e":{"__comp":"17896441","content":"707baeff"},"/docs/api/enums/PayloadType-ea7":{"__comp":"17896441","content":"26f1f3a5"},"/docs/api/enums/PluginType-36e":{"__comp":"17896441","content":"e4877132"},"/docs/api/enums/SernError-992":{"__comp":"17896441","content":"beef0c9d"},"/docs/api/interfaces/AutocompleteCommand-4b7":{"__comp":"17896441","content":"7f2ac8b7"},"/docs/api/interfaces/AutocompletePlugin-3f5":{"__comp":"17896441","content":"53944420"},"/docs/api/interfaces/BothCommand-f15":{"__comp":"17896441","content":"65578b65"},"/docs/api/interfaces/ButtonCommand-78e":{"__comp":"17896441","content":"9b620520"},"/docs/api/interfaces/ChannelSelectCommand-c48":{"__comp":"17896441","content":"4279c33d"},"/docs/api/interfaces/CommandError.Response-ff6":{"__comp":"17896441","content":"a6d8dddc"},"/docs/api/interfaces/CommandModuleDefs-8c4":{"__comp":"17896441","content":"4d00c3f4"},"/docs/api/interfaces/CommandPlugin-b30":{"__comp":"17896441","content":"e2a53654"},"/docs/api/interfaces/ContextMenuMsg-33e":{"__comp":"17896441","content":"7cd974c8"},"/docs/api/interfaces/ContextMenuUser-385":{"__comp":"17896441","content":"295686f2"},"/docs/api/interfaces/Controller-6fd":{"__comp":"17896441","content":"eea0bf40"},"/docs/api/interfaces/ControlPlugin-e8b":{"__comp":"17896441","content":"7343edf0"},"/docs/api/interfaces/CoreDependencies-551":{"__comp":"17896441","content":"46963930"},"/docs/api/interfaces/CoreModuleStore-41c":{"__comp":"17896441","content":"f0726797"},"/docs/api/interfaces/Dependencies-464":{"__comp":"17896441","content":"9693de07"},"/docs/api/interfaces/DependencyConfiguration-689":{"__comp":"17896441","content":"e04ffa77"},"/docs/api/interfaces/DiscordEmitterPlugin-338":{"__comp":"17896441","content":"9f1290f8"},"/docs/api/interfaces/DiscordEventCommand-777":{"__comp":"17896441","content":"a0fd2c7a"},"/docs/api/interfaces/DiscordEventPlugin-36b":{"__comp":"17896441","content":"8a062262"},"/docs/api/interfaces/Disposable-8a6":{"__comp":"17896441","content":"e84a24a4"},"/docs/api/interfaces/Emitter-2f3":{"__comp":"17896441","content":"61538263"},"/docs/api/interfaces/ErrorHandling-410":{"__comp":"17896441","content":"1c127a4d"},"/docs/api/interfaces/EventModuleDefs-628":{"__comp":"17896441","content":"3b15a34b"},"/docs/api/interfaces/EventPlugin-d00":{"__comp":"17896441","content":"82cdda05"},"/docs/api/interfaces/ExternalEmitterPlugin-506":{"__comp":"17896441","content":"701614d9"},"/docs/api/interfaces/ExternalEventCommand-7fd":{"__comp":"17896441","content":"5ae130ee"},"/docs/api/interfaces/ExternalEventPlugin-c5f":{"__comp":"17896441","content":"c606405e"},"/docs/api/interfaces/Init-bc5":{"__comp":"17896441","content":"a727fde1"},"/docs/api/interfaces/InitArgs-2c6":{"__comp":"17896441","content":"85456a26"},"/docs/api/interfaces/InitPlugin-aa5":{"__comp":"17896441","content":"476a0444"},"/docs/api/interfaces/Logging-f18":{"__comp":"17896441","content":"d9ea5336"},"/docs/api/interfaces/MentionableSelectCommand-4f2":{"__comp":"17896441","content":"a4d0ee3e"},"/docs/api/interfaces/ModalSubmitCommand-26c":{"__comp":"17896441","content":"447d9066"},"/docs/api/interfaces/Module-83e":{"__comp":"17896441","content":"0a33f845"},"/docs/api/interfaces/ModuleManager-f0d":{"__comp":"17896441","content":"a3030d1c"},"/docs/api/interfaces/Plugin-252":{"__comp":"17896441","content":"425cbb82"},"/docs/api/interfaces/Presence.Result-e30":{"__comp":"17896441","content":"887ace0c"},"/docs/api/interfaces/RoleSelectCommand-9af":{"__comp":"17896441","content":"4e28a08b"},"/docs/api/interfaces/SernAutocompleteData-548":{"__comp":"17896441","content":"3a0cb3a9"},"/docs/api/interfaces/SernEmitterPlugin-74c":{"__comp":"17896441","content":"720cd117"},"/docs/api/interfaces/SernEventCommand-912":{"__comp":"17896441","content":"a0b9ee13"},"/docs/api/interfaces/SernEventPlugin-beb":{"__comp":"17896441","content":"79e7cc44"},"/docs/api/interfaces/SernEventsMapping-aaa":{"__comp":"17896441","content":"b134d7b8"},"/docs/api/interfaces/SernSubCommandData-650":{"__comp":"17896441","content":"2caf5b7a"},"/docs/api/interfaces/SernSubCommandGroupData-b36":{"__comp":"17896441","content":"57fe7727"},"/docs/api/interfaces/SlashCommand-b56":{"__comp":"17896441","content":"462b6925"},"/docs/api/interfaces/StringSelectCommand-f54":{"__comp":"17896441","content":"97c22b42"},"/docs/api/interfaces/TextCommand-8f2":{"__comp":"17896441","content":"6ff82968"},"/docs/api/interfaces/UserSelectCommand-3d0":{"__comp":"17896441","content":"4b098d2e"},"/docs/api/interfaces/Wrapper-cc3":{"__comp":"17896441","content":"5bc4ccbc"},"/docs/api/modules-98a":{"__comp":"17896441","content":"f6aebfbf"},"/docs/api/namespaces/CommandError-a99":{"__comp":"17896441","content":"77a07764"},"/docs/api/namespaces/Presence-fcf":{"__comp":"17896441","content":"083c37a9"},"/docs/api/namespaces/Sern-350":{"__comp":"17896441","content":"73bd57bd"},"/docs/cli-1d5":{"__comp":"17896441","content":"86b8ce54"},"/docs/cli/build-d03":{"__comp":"17896441","content":"6626dbb1"},"/docs/cli/clear-862":{"__comp":"17896441","content":"54bc704d"},"/docs/cli/extra-886":{"__comp":"17896441","content":"82474f76"},"/docs/cli/publish-133":{"__comp":"17896441","content":"6e55d25c"},"/docs/guide-f2d":{"__comp":"17896441","content":"9201de17"},"/docs/guide/getting-started/choose-ide-2c7":{"__comp":"17896441","content":"888566f1"},"/docs/guide/getting-started/preparing-c46":{"__comp":"17896441","content":"3dc7c79a"},"/docs/guide/walkthrough/autocomplete-97f":{"__comp":"17896441","content":"7b758ddf"},"/docs/guide/walkthrough/cli-6dc":{"__comp":"17896441","content":"608ca171"},"/docs/guide/walkthrough/conclusion-195":{"__comp":"17896441","content":"1aef51bd"},"/docs/guide/walkthrough/dependency-injection-c3d":{"__comp":"17896441","content":"0c9bead8"},"/docs/guide/walkthrough/first-command-1a8":{"__comp":"17896441","content":"981f6151"},"/docs/guide/walkthrough/first-event-218":{"__comp":"17896441","content":"e8e3d8c7"},"/docs/guide/walkthrough/goal-ed0":{"__comp":"17896441","content":"a96c96b0"},"/docs/guide/walkthrough/good-to-know-7b6":{"__comp":"17896441","content":"3a2d3092"},"/docs/guide/walkthrough/new-project-20b":{"__comp":"17896441","content":"c0930fba"},"/docs/guide/walkthrough/plugins-63f":{"__comp":"17896441","content":"1ac1bfe9"},"/docs/guide/walkthrough/sern-emitter-200":{"__comp":"17896441","content":"cf183316"},"/docs/guide/walkthrough/services-b7d":{"__comp":"17896441","content":"b91ce718"},"/docs/guide/walkthrough/transition-ac6":{"__comp":"17896441","content":"3ae57366"},"/docs/intro-aed":{"__comp":"17896441","content":"0e384e19"},"/-473":{"__comp":"c4f5d8e4","__context":{"plugin":"c4348237"},"config":"5e9f5e1a"}}')}},e=>{e.O(0,[1869],(()=>{return t=8536,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/assets/js/main.b596629f.js.LICENSE.txt b/assets/js/main.b596629f.js.LICENSE.txt deleted file mode 100644 index 91dc89499..000000000 --- a/assets/js/main.b596629f.js.LICENSE.txt +++ /dev/null @@ -1,64 +0,0 @@ -/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress - * @license MIT */ - -/*! Bundled license information: - -prismjs/prism.js: - (** - * Prism: Lightweight, robust, elegant syntax highlighting - * - * @license MIT <https://opensource.org/licenses/MIT> - * @author Lea Verou <https://lea.verou.me> - * @namespace - * @public - *) -*/ - -/** - * @license React - * 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 - * react-jsx-runtime.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 - * 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. - */ - -/** - * @license React - * 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. - */ diff --git a/assets/js/runtime~main.15d9890c.js b/assets/js/runtime~main.15d9890c.js deleted file mode 100644 index bc7d31305..000000000 --- a/assets/js/runtime~main.15d9890c.js +++ /dev/null @@ -1 +0,0 @@ -(()=>{"use strict";var e,a,c,f,d,b={},t={};function r(e){var a=t[e];if(void 0!==a)return a.exports;var c=t[e]={id:e,loaded:!1,exports:{}};return b[e].call(c.exports,c,c.exports,r),c.loaded=!0,c.exports}r.m=b,r.c=t,e=[],r.O=(a,c,f,d)=>{if(!c){var b=1/0;for(i=0;i<e.length;i++){c=e[i][0],f=e[i][1],d=e[i][2];for(var t=!0,o=0;o<c.length;o++)(!1&d||b>=d)&&Object.keys(r.O).every((e=>r.O[e](c[o])))?c.splice(o--,1):(t=!1,d<b&&(b=d));if(t){e.splice(i--,1);var n=f();void 0!==n&&(a=n)}}return a}d=d||0;for(var i=e.length;i>0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[c,f,d]},r.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return r.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,f){if(1&f&&(e=this(e)),8&f)return e;if("object"==typeof e&&e){if(4&f&&e.__esModule)return e;if(16&f&&"function"==typeof e.then)return e}var d=Object.create(null);r.r(d);var b={};a=a||[null,c({}),c([]),c(c)];for(var t=2&f&&e;"object"==typeof t&&!~a.indexOf(t);t=c(t))Object.getOwnPropertyNames(t).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,r.d(d,b),d},r.d=(e,a)=>{for(var c in a)r.o(a,c)&&!r.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((a,c)=>(r.f[c](e,a),a)),[])),r.u=e=>"assets/js/"+({152:"cf183316",198:"eea0bf40",284:"522b21a2",497:"beef0c9d",594:"5e8c322a",612:"3dc7c79a",656:"9693de07",688:"916aad9f",717:"447d9066",877:"701614d9",987:"c4348237",1054:"1c127a4d",1196:"e4877132",1292:"e2a53654",1307:"9c021584",1611:"6c624b4c",1703:"c0930fba",1747:"6b841b38",1839:"82474f76",1863:"26f1f3a5",1884:"e84a24a4",1986:"4fef5a93",1991:"b2b675dd",2014:"a4d0ee3e",2138:"1a4e3797",2212:"7e205c4a",2407:"b91ce718",2427:"d9ea5336",2586:"67348500",2634:"c4f5d8e4",2639:"3ae57366",2649:"f6aebfbf",2667:"476a0444",2684:"8a062262",2711:"9e4087bc",2831:"a5467962",2845:"083c37a9",2956:"1aef51bd",2968:"6ff82968",3033:"a6d8dddc",3140:"5bc4ccbc",3186:"720cd117",3218:"53944420",3249:"ccc49370",3295:"a96c96b0",3495:"295686f2",3514:"2e208732",3581:"73bd57bd",3595:"edc18331",3617:"79e7cc44",3705:"74e316f4",3787:"e04ffa77",3788:"54bc704d",3976:"0e384e19",3993:"57124ee9",4085:"3a2d3092",4134:"393be207",4184:"5ae130ee",4199:"57fe7727",4244:"f0726797",4430:"312c2bc5",4446:"77a07764",4448:"c606405e",4523:"3f83d40d",4793:"bcd9df7e",4813:"6875c492",5037:"888566f1",5068:"b134d7b8",5116:"6e55d25c",5139:"1a1cc5f0",5276:"3b15a34b",5342:"a727fde1",5413:"b654e1cf",5617:"462b6925",5776:"a3030d1c",5799:"707baeff",5822:"9201de17",5894:"b2f554cd",5898:"2f13d849",5938:"7b758ddf",6052:"981f6151",6061:"1f391b9e",6102:"9f1290f8",6193:"9b620520",6462:"6626dbb1",6526:"e8e3d8c7",6570:"cfb1619e",6987:"6ba1d2c1",7035:"0c9bead8",7051:"0a33f845",7098:"a7bd4aaa",7200:"3020eeee",7318:"c0846785",7374:"97c22b42",7450:"2caf5b7a",7451:"7343edf0",7472:"814f3328",7557:"a0b9ee13",7567:"4b098d2e",7571:"f1cc380d",7643:"a6aa9e1f",7767:"a0fd2c7a",7804:"3a25b5a8",7823:"61538263",8036:"85456a26",8209:"01a85c17",8312:"608ca171",8371:"3a0cb3a9",8385:"67e3e25a",8389:"46963930",8401:"17896441",8418:"90fdad0c",8507:"4d00c3f4",8581:"935f2afb",8811:"1ac1bfe9",8820:"887ace0c",8881:"4e28a08b",8976:"7cd974c8",9048:"a94703ab",9140:"69369ae2",9143:"7c2ff145",9245:"1adeaf48",9267:"a7023ddc",9302:"4279c33d",9368:"7f2ac8b7",9385:"65578b65",9392:"82cdda05",9488:"1b0c702f",9563:"425cbb82",9611:"f7831d67",9647:"5e95c892",9650:"83d480e9",9856:"86b8ce54",9934:"6cfc4513"}[e]||e)+"."+{152:"3eea489e",198:"eb28a29e",284:"0f1c9994",312:"9786412c",416:"565dfe5d",497:"bf88ad5a",594:"b5738332",612:"ee6642c4",656:"54a97dfa",688:"4db272d1",717:"2f7fdcff",877:"a0b5248c",987:"e83a81df",1054:"41c1b2bf",1196:"0ff6f575",1292:"3ec46d07",1307:"ed65ee60",1611:"8c48b52c",1703:"2b67a718",1747:"8168245a",1839:"a3f2f6f9",1863:"45e59cc6",1884:"6f29891b",1986:"9c85f814",1991:"3bcec961",2014:"3528b007",2138:"46e3e239",2212:"468206c4",2237:"1c63dc97",2407:"910fbf3c",2427:"cd1b3e0a",2586:"4102b0ec",2634:"8e18ce01",2639:"d8e93ec3",2649:"66ce420a",2667:"6d76be09",2684:"e880708f",2711:"1f4ede9b",2831:"7db8ad68",2845:"2616149c",2956:"5eac930b",2968:"f2779ab7",3033:"72dbc8e5",3140:"30c2085c",3186:"11a04cd9",3218:"ad694c41",3249:"93ff3c1b",3295:"f3e38592",3495:"49d1bd10",3514:"ab044513",3581:"6726c481",3595:"76541685",3617:"ec89a63b",3705:"754f56ff",3787:"29f778fe",3788:"d663c813",3976:"9d7c7828",3993:"2d5f15a0",4085:"e959f693",4134:"2d2d9a50",4184:"c0d17fb4",4199:"17516a49",4244:"b5af9164",4430:"2b89cd37",4446:"c63bd577",4448:"60902698",4523:"f118a07d",4793:"45ba7d7b",4813:"95d8358c",5037:"8c07be1a",5068:"f1083d8d",5116:"4e3858c6",5139:"17a326b8",5276:"c5ad634a",5342:"b20a2b9a",5413:"5b8b0fa5",5617:"929f3fc0",5776:"2ebc2980",5799:"821d1c11",5822:"8c27dbe9",5894:"11ce5c09",5898:"d7e6f345",5938:"bebefb7e",6052:"a5d396f1",6061:"1e64a77c",6102:"547349cf",6193:"c4e90e6c",6462:"0740f761",6526:"0fa3bc4f",6570:"f2ad3e8a",6987:"5a87af8a",7035:"0c0b05da",7051:"363a9226",7098:"5a4646c2",7200:"d9454985",7318:"305a360d",7374:"2b330fbe",7450:"b4fa0d12",7451:"33fdac37",7472:"2f7d455e",7508:"f1041542",7557:"29ed2101",7567:"f6e83fca",7571:"215be214",7643:"2d113433",7767:"408ca2fb",7804:"62806fd5",7823:"61783d11",8036:"e1958609",8209:"90531079",8312:"62a6a6a8",8371:"d273879e",8385:"6b00f598",8389:"2e9d61dc",8401:"7d56c575",8418:"ebd0c8d8",8507:"7fc18024",8581:"f3ae504a",8645:"5bf758dc",8747:"34a2c022",8811:"0d260689",8820:"daabf20c",8881:"ed6edefd",8913:"9af1ee1a",8976:"f09c829b",9048:"35d0f890",9140:"5d8b0482",9143:"d5069700",9245:"14b0065c",9267:"6615db4d",9302:"efcbca06",9368:"126f370e",9385:"40ff405f",9392:"dcdcf129",9462:"23a81660",9488:"54a9c869",9563:"4e855fab",9611:"1fff8d58",9647:"3c5661f6",9650:"6fc38056",9856:"3f8ce513",9934:"eb58f2d8"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),f={},d="sern-website:",r.l=(e,a,c,b)=>{if(f[e])f[e].push(a);else{var t,o;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==d+c){t=u;break}}t||(o=!0,(t=document.createElement("script")).charset="utf-8",t.timeout=120,r.nc&&t.setAttribute("nonce",r.nc),t.setAttribute("data-webpack",d+c),t.src=e),f[e]=[a];var l=(a,c)=>{t.onerror=t.onload=null,clearTimeout(s);var d=f[e];if(delete f[e],t.parentNode&&t.parentNode.removeChild(t),d&&d.forEach((e=>e(c))),a)return a(c)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/",r.gca=function(e){return e={17896441:"8401",46963930:"8389",53944420:"3218",61538263:"7823",67348500:"2586",cf183316:"152",eea0bf40:"198","522b21a2":"284",beef0c9d:"497","5e8c322a":"594","3dc7c79a":"612","9693de07":"656","916aad9f":"688","447d9066":"717","701614d9":"877",c4348237:"987","1c127a4d":"1054",e4877132:"1196",e2a53654:"1292","9c021584":"1307","6c624b4c":"1611",c0930fba:"1703","6b841b38":"1747","82474f76":"1839","26f1f3a5":"1863",e84a24a4:"1884","4fef5a93":"1986",b2b675dd:"1991",a4d0ee3e:"2014","1a4e3797":"2138","7e205c4a":"2212",b91ce718:"2407",d9ea5336:"2427",c4f5d8e4:"2634","3ae57366":"2639",f6aebfbf:"2649","476a0444":"2667","8a062262":"2684","9e4087bc":"2711",a5467962:"2831","083c37a9":"2845","1aef51bd":"2956","6ff82968":"2968",a6d8dddc:"3033","5bc4ccbc":"3140","720cd117":"3186",ccc49370:"3249",a96c96b0:"3295","295686f2":"3495","2e208732":"3514","73bd57bd":"3581",edc18331:"3595","79e7cc44":"3617","74e316f4":"3705",e04ffa77:"3787","54bc704d":"3788","0e384e19":"3976","57124ee9":"3993","3a2d3092":"4085","393be207":"4134","5ae130ee":"4184","57fe7727":"4199",f0726797:"4244","312c2bc5":"4430","77a07764":"4446",c606405e:"4448","3f83d40d":"4523",bcd9df7e:"4793","6875c492":"4813","888566f1":"5037",b134d7b8:"5068","6e55d25c":"5116","1a1cc5f0":"5139","3b15a34b":"5276",a727fde1:"5342",b654e1cf:"5413","462b6925":"5617",a3030d1c:"5776","707baeff":"5799","9201de17":"5822",b2f554cd:"5894","2f13d849":"5898","7b758ddf":"5938","981f6151":"6052","1f391b9e":"6061","9f1290f8":"6102","9b620520":"6193","6626dbb1":"6462",e8e3d8c7:"6526",cfb1619e:"6570","6ba1d2c1":"6987","0c9bead8":"7035","0a33f845":"7051",a7bd4aaa:"7098","3020eeee":"7200",c0846785:"7318","97c22b42":"7374","2caf5b7a":"7450","7343edf0":"7451","814f3328":"7472",a0b9ee13:"7557","4b098d2e":"7567",f1cc380d:"7571",a6aa9e1f:"7643",a0fd2c7a:"7767","3a25b5a8":"7804","85456a26":"8036","01a85c17":"8209","608ca171":"8312","3a0cb3a9":"8371","67e3e25a":"8385","90fdad0c":"8418","4d00c3f4":"8507","935f2afb":"8581","1ac1bfe9":"8811","887ace0c":"8820","4e28a08b":"8881","7cd974c8":"8976",a94703ab:"9048","69369ae2":"9140","7c2ff145":"9143","1adeaf48":"9245",a7023ddc:"9267","4279c33d":"9302","7f2ac8b7":"9368","65578b65":"9385","82cdda05":"9392","1b0c702f":"9488","425cbb82":"9563",f7831d67:"9611","5e95c892":"9647","83d480e9":"9650","86b8ce54":"9856","6cfc4513":"9934"}[e]||e,r.p+r.u(e)},(()=>{var e={5354:0,1869:0};r.f.j=(a,c)=>{var f=r.o(e,a)?e[a]:void 0;if(0!==f)if(f)c.push(f[2]);else if(/^(1869|5354)$/.test(a))e[a]=0;else{var d=new Promise(((c,d)=>f=e[a]=[c,d]));c.push(f[2]=d);var b=r.p+r.u(a),t=new Error;r.l(b,(c=>{if(r.o(e,a)&&(0!==(f=e[a])&&(e[a]=void 0),f)){var d=c&&("load"===c.type?"missing":c.type),b=c&&c.target&&c.target.src;t.message="Loading chunk "+a+" failed.\n("+d+": "+b+")",t.name="ChunkLoadError",t.type=d,t.request=b,f[1](t)}}),"chunk-"+a,a)}},r.O.j=a=>0===e[a];var a=(a,c)=>{var f,d,b=c[0],t=c[1],o=c[2],n=0;if(b.some((a=>0!==e[a]))){for(f in t)r.o(t,f)&&(r.m[f]=t[f]);if(o)var i=o(r)}for(a&&a(c);n<b.length;n++)d=b[n],r.o(e,d)&&e[d]&&e[d][0](),e[d]=0;return r.O(i)},c=self.webpackChunksern_website=self.webpackChunksern_website||[];c.forEach(a.bind(null,0)),c.push=a.bind(null,c.push.bind(c))})()})(); \ No newline at end of file diff --git a/blog.html b/blog.html deleted file mode 100644 index 4bfb52a01..000000000 --- a/blog.html +++ /dev/null @@ -1,324 +0,0 @@ -<!doctype html> -<html lang="en" dir="ltr" class="blog-wrapper blog-list-page plugin-blog plugin-id-default" data-has-hydrated="false"> -<head> -<meta charset="UTF-8"> -<meta name="generator" content="Docusaurus v3.0.0"> -<title data-rh="true">Blog | sern - Handlers. Redefined. - - - - - - - - - - - -

· 2 min read
Duro

In this guide, I'll be showing you how to deploy your sern bot with Railway.

-

This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the Getting Started guide to set up your bot.

-

GitHub Repository

-

The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the GitHub guide.

-

Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway.

-

Railway Setup

-

After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

-

Once you've created your account, navigate to the dashboard and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot's repository.

-

Once you've selected your repository, click the "Add Variables" button to add your bot's environment variables. You'll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

-

Deploy

-

Once you've added your environment variables, click the "Deploy" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs.

-
note

Make sure you add your environment variables, and your node start script is correct in your package.json file.

If you have any issues deploying your bot, you can check the logs for any errors.

-

That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

· One min read

Hey everyone! Today we have very special news for you all: We're changing our logo!

-

You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
-We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
-And here we are!

-

Who did our new branding?

-

Ropox!
-Bro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
- -And there it all clicked:
- -seren tried by the way! -

-

Anyways, here it is:

-

-

Pretty nice!

-

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

-

Finally, from the entire sern team, thank you for sticking around ❤️

· 3 min read
jacoobes

3.0 Release

-

Join our discord

-

Features

-

Dependency Management

-
    -
  • Service API (recommended to use this over useContainer hooks) -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • new methods on ModuleManager -
      -
    • getPublishableCommands()
    • -
    -
  • -
  • Init Hooks -
      -
    • implement starting behavior for dependencies
    • -
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • -
    -
  • -
  • Emitter interface -
      -
    • More generic interface to define any event emitter
    • -
    • You can now swap out the SernEmitter with whatever emitter now.
    • -
    -
  • -
-
class DatabaseService implements Init {
//some hypothetical database
_pgsql : database()

async init() {
await _pgsql.load()
}

}

await makeDependencies({
build: root => root.add({
db: new DatabaseService() //will be init'ed automatically
})
})

-
    -
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • -
-

export default eventModule({
name: 'modulesLoaded',
type: EventType.Sern,
execute: () => {
console.log('All modules loaded')
}
})


-

Quality of Life

-
    -
  • -

    faster module loading

    -
      -
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • -
    -
  • -
  • -

    better error handling

    -
  • -
  • -

    Less boilerplate

    -
      -
    • Services api cleans up v2 boilerplate
    • -
    -
  • -
  • -

    class modules devex got upgraded and work better than before

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • -
    -
  • -
  • -

    Service API (recommended to use this over useContainer hooks)

    -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • -

    Less boilerplate

    -
  • -
  • -

    new methods on ModuleManager

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • -
    -
  • -
  • -

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    -
  • -
  • -

    Init Hooks

    -
      -
    • implement starting behavior for dependencies
    • -
    -
  • -
-

Experimental

-
    -
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • -
  • dev / prod mode -
      -
    • sern will behave differently depending on mode set
    • -
    -
  • -
  • init sern from file option -
      -
    • reads from local sern.config.json
    • -
    -
  • -
-
Sern.init('file'); 
-

Breaking changes

-
    -
  • Sern.makeDependencies -> makeDependencies -
      -
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • -
    -
  • -
  • module store and manager internally changed, so those using them may recieve breaking changes
  • -
  • BaseOptions type removed
  • -
-
- Sern.makeDependencies({ build: () => {} })
+ await makeDependencies({ build: () => {} })
-

Deprecations

-
    -
  • Removed all previous marked deprecations in v3
  • -
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • -
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • -

· One min read
jacoobes

2.5 Release

-

Join our discord

-
    -
  • Thank you for using sern in your projects. It's only going to get better!
  • -
  • I apologize for the sudden small breaking change. After this update, there won't be any for a while. -Wow! We're increasing our semantic versioning by +0.3.9
    -What does this mean?
  • -
-

Breaking changes

- -

Deprecations

- -

Reason

-
    -
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • -
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • -
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings - -
  • -

· 4 min read
jacoobes

2.0 Release

-

Join our discord!
-Wow! We're finally increasing our semantic versioning by +1.7.9.
-What does this mean?

-

Plugin Support for Event Modules

-

You can now use plugins for event modules. Previous version would throw an error if the -plugins field was populated.

-
export function commandPlTest() : SernEmitterPlugin {
return {
type: PluginType.Command,
execute: ({ mod}, controller) => {
if(mod.name === 'module.register') {
console.log('Event Module created correctly')
return controller.next()
}
console.log('event name is wrong')
return controller.stop()
}
}
}
-

Applying this plugin to some eventModule:

-
export default eventModule({
name: 'error',
type: EventType.Sern,
plugins: [commandPlTest()],
execute(m) {
console.log(m)
},
})
-

Dependency Injection and Decoupling

-

The powerful npm package iti decouples sern even more. -Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production -and make sern even more customizable than before.

-

How do I start?

-
src/index.ts
//With typescript, you can customize / augment your typings.
interface MyDependencies extends Dependencies {
'@sern/client' : Singleton<Client>;
'@sern/logger' : Singleton<DefaultLogging>
}

export const useContainer = Sern.makeDependencies<MyDependencies>({
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
build: root => root
.add({ '@sern/client': single(client) })
.add({ '@sern/logger': single(new DefaultLogging()) })
});

Sern.init({
defaultPrefix: '!', // removing defaultPrefix will shut down text commands
commands: 'src/commands',
// events: 'src/events' (optional),
containerConfig : {
get: useContainer //pass in your dependency getter here
}
});

-

Using the Sern#makeDependencies function, inject your dependencies. -We'll use specific dependencies that are created with the @sern/keyword -key. -Using typescript to display all keywords and what they represent:

-
export interface Dependencies {
'@sern/client': Singleton<EventEmitter>; //Discord Client
'@sern/logger'?: Singleton<Logging>; //Logger
'@sern/emitter': Singleton<SernEmitter>; //SernEmitter
'@sern/store' : Singleton<ModuleStore>; //Stores all Command Modules
'@sern/modules' : Singleton<ModuleManager>; //Manages Modules
'@sern/errors': Singleton<ErrorHandling>; //A Lifetime / Crash Handler
}
-
danger

Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies

-

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, -we'll autofill with a DefaultLogger.

-
tip

If you don't want a logger, add it to the -exclude field while composing dependencies.

-

Use your generated dependency getter useContainer (use whatever name you want), access them -from anywhere.

-
note

the function useContainerRaw is provided for direct access to dependencies and the internal -data structure. Use this wisely as no guarantees are made and crashes can happen.

-

The build field follows createContainer function call.

-

New CommandTypes

-

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into -CommandType.StringSelect. The remaining SelectMenus are -CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

-
commands/roleselect.ts
export default commandModule({
type: CommandType.RoleSelect,
execute(ctx) {
ctx.reply('role select')
},
})
-

In addition, commandModules with ContextMenus have been renamed.

-
- CommandType.MenuUser, CommandType.MenuMsg 
+ CommandType.CtxUser, CommandType.CtxMsg
-

Typings Simplification

-

Pre 2.0: - -


-Post 2.0: -
-

-

CommandPlugin<T> and EventPlugin<T> typings have also been static'ified, transformed from types to interfaces

-

Breaking Changes

- -
-All deprecation warnings from previous versions have taken effect, and are removed in 2.0. -
- type Module = EventModule | CommandModule
+ type AnyModule = EventModule | CommandModule

-export type SpreadParams<T extends (...args: never) => unknown> = (
- args: Parameters<T>[number],
- ) => unknown;
-

Override type has been removed due to redundancy

-
- discord.js : 14.5
+ discord.js : 14.7

-typescript: 4.7
+ typescript: 4.9
-
+ interface Wrapper {
+ readonly defaultPrefix?: string;
+ readonly commands: string;
+ readonly events?: string;
+ readonly containerConfig : {
+ get: (...keys: (keyof Dependencies)[]) => unknown[];
+ }
+}

- interface Wrapper {
- readonly client: Client;
- readonly sernEmitter?: SernEmitter;
- readonly defaultPrefix?: string;
- readonly commands: string;
- readonly events?:
- | string
- | { mod: EventModule; absPath: string }[]
- | (() => { mod: EventModule; absPath: string }[]);
-}
-
+ DefaultLogger
+ DefaultModuleManager
+ SernEmitter
+ DefaultErrorHandling
+ type Singleton<T> = () => T
+ type Transient<T> = () => () => T;
+ type LogPayload<T = unknown> = { message: T }
+ export const single = <T>() => T
+ export const many = <T>() => () => T
-

Including the previous section, some names to symbols and data structures were altered to -be better represented. view changelog

-

Context refactoring

-

The context data structure has been internally altered to represent its dynamics better.

· 2 min read
Sr Izan

Hello everyone!

-

I'm Sr Izan, your fellow user and contributor.

-

Today I'm going to show you how to get started with sern and all its cool features.

-

Step 1: Install the CLI.

-

Install the CLI:

-
npm i -g @sern/cli
-

and then run

-
sern init
-
tip

You can also run sern init -y if you want to use the default options.

-

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

-

Step 2: Have some way to store secrets.

-

Normally you'd need a way to store secrets, and the best way to do that is by installing another package: dotenv

-

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

-
caution

If you're using ESM, configure dotenv with import 'dotenv/config' instead of require('dotenv').config().

-

And... that's it?

-

Yes, that's it. Here's a little FAQ to get you started. You can also join the Discord for any problems.

-

Extra: Video tutorial!

- -

FAQ

-

Q: How do I publish a slash command?
-A: Install the publish extension. Little video:
-

-

Q: Any snippet VSCode extension?
-A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

-

Q: HEEEELLLPPPP!!!!
-A: Hey, don't panic! We're here to help so, join the Discord. We're trying to get to 100 members!

· 2 min read
jacoobes

Class-based modules

-

Today we're announcing the ability to create class based modules! -To get started, install

-
npm install @sern/handler@latest
-

Quick List of changes!

- -

Class based modules

-

Incorporate class based modules into your project instead of the traditional commandModule or eventModule -Extend the new CommandExecutable or EventExecutable

-
commands/meaning-of-life.ts
import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';
import { publish } from '../plugins/publish.js';
import { serendipityOnly } from '../plugins/serendipityOnly.js';

export default class extends CommandExecutable<CommandType.Both> {
type = CommandType.Both as const;
description = 'What is the meaning of life?'
override onEvent = [
serendipityOnly()
];
override plugins = [
publish(),
];
execute = async (ctx: Context, args: Args) => {
await ctx.reply('42')
};
}
-
caution

execute must not be a method of the class. It should be as above, a property on the class!

-
events/guildMemberAdd.ts
import { CommandType, EventExecutable, type EventType } from '@sern/handler';
import type { GuildMember } from 'discord.js'

export default class extends EventExecutable<EventType.Discord> {
type = EventType.Discord as const;
execute = (member: GuildMember) => {
console.log(member)
};
}
-

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. -I believe that you should build your own structures however you might like and customize to your liking. -In addition, decorators now unofficially work with modules! -Feel free to use TypeScript experimental decorators to augment and customize your classes.

-

Deprecation Warnings

-

The next update will bring sern v2 with some important features. Here are some things to watch out for.

-
    -
  • Wrapper#client will be deprecated
  • -
  • Wrapper#sernEmitter will be deprecated -
      -
    • a SernEmitter will be automatically created once Sern#init is called
    • -
    -
  • -
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • -
  • Sern#addExternal will be deprecated in favor of a better way.
  • -
-

Dependencies Update

-
    -
  • TypeScript has been updated to 4.8.3
  • -
  • Discord.js has been upgraded to 14.5
  • -
- - \ No newline at end of file diff --git a/blog/1.2.0.html b/blog/1.2.0.html deleted file mode 100644 index 2c2d8975b..000000000 --- a/blog/1.2.0.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - -Release 1.2.0 | sern - Handlers. Redefined. - - - - - - - - - - - -

Release 1.2.0

· 2 min read
jacoobes

Class-based modules

-

Today we're announcing the ability to create class based modules! -To get started, install

-
npm install @sern/handler@latest
-

Quick List of changes!

- -

Class based modules

-

Incorporate class based modules into your project instead of the traditional commandModule or eventModule -Extend the new CommandExecutable or EventExecutable

-
commands/meaning-of-life.ts
import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';
import { publish } from '../plugins/publish.js';
import { serendipityOnly } from '../plugins/serendipityOnly.js';

export default class extends CommandExecutable<CommandType.Both> {
type = CommandType.Both as const;
description = 'What is the meaning of life?'
override onEvent = [
serendipityOnly()
];
override plugins = [
publish(),
];
execute = async (ctx: Context, args: Args) => {
await ctx.reply('42')
};
}
-
caution

execute must not be a method of the class. It should be as above, a property on the class!

-
events/guildMemberAdd.ts
import { CommandType, EventExecutable, type EventType } from '@sern/handler';
import type { GuildMember } from 'discord.js'

export default class extends EventExecutable<EventType.Discord> {
type = EventType.Discord as const;
execute = (member: GuildMember) => {
console.log(member)
};
}
-

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. -I believe that you should build your own structures however you might like and customize to your liking. -In addition, decorators now unofficially work with modules! -Feel free to use TypeScript experimental decorators to augment and customize your classes.

-

Deprecation Warnings

-

The next update will bring sern v2 with some important features. Here are some things to watch out for.

-
    -
  • Wrapper#client will be deprecated
  • -
  • Wrapper#sernEmitter will be deprecated -
      -
    • a SernEmitter will be automatically created once Sern#init is called
    • -
    -
  • -
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • -
  • Sern#addExternal will be deprecated in favor of a better way.
  • -
-

Dependencies Update

-
    -
  • TypeScript has been updated to 4.8.3
  • -
  • Discord.js has been upgraded to 14.5
  • -
- - \ No newline at end of file diff --git a/blog/1.2.0/index.html b/blog/1.2.0/index.html new file mode 100644 index 000000000..483fdca6d --- /dev/null +++ b/blog/1.2.0/index.html @@ -0,0 +1,83 @@ + Release 1.2.0 | sern + + + Skip to content

Release 1.2.0

Class-based modules

+

Today we’re announcing the ability to create class based modules! +To get started, install

+
npm install @sern/handler@latest
+

Quick List of changes!

+ +

Class based modules

+

Incorporate class based modules into your project instead of the traditional commandModule or eventModule +Extend the new CommandExecutable or EventExecutable

+
commands/meaning-of-life.ts
1
import {
2
CommandType,
3
CommandExecutable,
4
type Args,
5
type Context,
6
} from "@sern/handler";
7
import { publish } from "../plugins/publish.js";
8
import { serendipityOnly } from "../plugins/serendipityOnly.js";
9
+
10
export default class extends CommandExecutable<CommandType.Both> {
11
type = CommandType.Both as const;
12
description = "What is the meaning of life?";
13
override onEvent = [serendipityOnly()];
14
override plugins = [publish()];
15
execute = async (ctx: Context, args: Args) => {
16
await ctx.reply("42");
17
};
18
}
+ +
events/guildMemberAdd.ts
1
import { CommandType, EventExecutable, type EventType } from "@sern/handler";
2
import type { GuildMember } from "discord.js";
3
+
4
export default class extends EventExecutable<EventType.Discord> {
5
type = EventType.Discord as const;
6
execute = (member: GuildMember) => {
7
console.log(member);
8
};
9
}
+

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. +I believe that you should build your own structures however you might like and customize to your liking. +In addition, decorators now unofficially work with modules! +Feel free to use TypeScript experimental decorators to augment and customize your classes.

+

Deprecation Warnings

+

The next update will bring sern v2 with some important features. Here are some things to watch out for.

+
    +
  • Wrapper#client will be deprecated
  • +
  • Wrapper#sernEmitter will be deprecated +
      +
    • a SernEmitter will be automatically created once Sern#init is called
    • +
    +
  • +
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • +
  • Sern#addExternal will be deprecated in favor of a better way.
  • +
+

Dependencies Update

+
    +
  • TypeScript has been updated to 4.8.3
  • +
  • Discord.js has been upgraded to 14.5
  • +
\ No newline at end of file diff --git a/blog/2.0.0.html b/blog/2.0.0.html deleted file mode 100644 index bf0571128..000000000 --- a/blog/2.0.0.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - -Release 2.0.0 | sern - Handlers. Redefined. - - - - - - - - - - - -

Release 2.0.0

· 4 min read
jacoobes

2.0 Release

-

Join our discord!
-Wow! We're finally increasing our semantic versioning by +1.7.9.
-What does this mean?

-

Plugin Support for Event Modules

-

You can now use plugins for event modules. Previous version would throw an error if the -plugins field was populated.

-
export function commandPlTest() : SernEmitterPlugin {
return {
type: PluginType.Command,
execute: ({ mod}, controller) => {
if(mod.name === 'module.register') {
console.log('Event Module created correctly')
return controller.next()
}
console.log('event name is wrong')
return controller.stop()
}
}
}
-

Applying this plugin to some eventModule:

-
export default eventModule({
name: 'error',
type: EventType.Sern,
plugins: [commandPlTest()],
execute(m) {
console.log(m)
},
})
-

Dependency Injection and Decoupling

-

The powerful npm package iti decouples sern even more. -Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production -and make sern even more customizable than before.

-

How do I start?

-
src/index.ts
//With typescript, you can customize / augment your typings.
interface MyDependencies extends Dependencies {
'@sern/client' : Singleton<Client>;
'@sern/logger' : Singleton<DefaultLogging>
}

export const useContainer = Sern.makeDependencies<MyDependencies>({
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
build: root => root
.add({ '@sern/client': single(client) })
.add({ '@sern/logger': single(new DefaultLogging()) })
});

Sern.init({
defaultPrefix: '!', // removing defaultPrefix will shut down text commands
commands: 'src/commands',
// events: 'src/events' (optional),
containerConfig : {
get: useContainer //pass in your dependency getter here
}
});

-

Using the Sern#makeDependencies function, inject your dependencies. -We'll use specific dependencies that are created with the @sern/keyword -key. -Using typescript to display all keywords and what they represent:

-
export interface Dependencies {
'@sern/client': Singleton<EventEmitter>; //Discord Client
'@sern/logger'?: Singleton<Logging>; //Logger
'@sern/emitter': Singleton<SernEmitter>; //SernEmitter
'@sern/store' : Singleton<ModuleStore>; //Stores all Command Modules
'@sern/modules' : Singleton<ModuleManager>; //Manages Modules
'@sern/errors': Singleton<ErrorHandling>; //A Lifetime / Crash Handler
}
-
danger

Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies

-

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, -we'll autofill with a DefaultLogger.

-
tip

If you don't want a logger, add it to the -exclude field while composing dependencies.

-

Use your generated dependency getter useContainer (use whatever name you want), access them -from anywhere.

-
note

the function useContainerRaw is provided for direct access to dependencies and the internal -data structure. Use this wisely as no guarantees are made and crashes can happen.

-

The build field follows createContainer function call.

-

New CommandTypes

-

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into -CommandType.StringSelect. The remaining SelectMenus are -CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

-
commands/roleselect.ts
export default commandModule({
type: CommandType.RoleSelect,
execute(ctx) {
ctx.reply('role select')
},
})
-

In addition, commandModules with ContextMenus have been renamed.

-
- CommandType.MenuUser, CommandType.MenuMsg 
+ CommandType.CtxUser, CommandType.CtxMsg
-

Typings Simplification

-

Pre 2.0: - -


-Post 2.0: -
-

-

CommandPlugin<T> and EventPlugin<T> typings have also been static'ified, transformed from types to interfaces

-

Breaking Changes

- -
-All deprecation warnings from previous versions have taken effect, and are removed in 2.0. -
- type Module = EventModule | CommandModule
+ type AnyModule = EventModule | CommandModule

-export type SpreadParams<T extends (...args: never) => unknown> = (
- args: Parameters<T>[number],
- ) => unknown;
-

Override type has been removed due to redundancy

-
- discord.js : 14.5
+ discord.js : 14.7

-typescript: 4.7
+ typescript: 4.9
-
+ interface Wrapper {
+ readonly defaultPrefix?: string;
+ readonly commands: string;
+ readonly events?: string;
+ readonly containerConfig : {
+ get: (...keys: (keyof Dependencies)[]) => unknown[];
+ }
+}

- interface Wrapper {
- readonly client: Client;
- readonly sernEmitter?: SernEmitter;
- readonly defaultPrefix?: string;
- readonly commands: string;
- readonly events?:
- | string
- | { mod: EventModule; absPath: string }[]
- | (() => { mod: EventModule; absPath: string }[]);
-}
-
+ DefaultLogger
+ DefaultModuleManager
+ SernEmitter
+ DefaultErrorHandling
+ type Singleton<T> = () => T
+ type Transient<T> = () => () => T;
+ type LogPayload<T = unknown> = { message: T }
+ export const single = <T>() => T
+ export const many = <T>() => () => T
-

Including the previous section, some names to symbols and data structures were altered to -be better represented. view changelog

-

Context refactoring

-

The context data structure has been internally altered to represent its dynamics better.

- - \ No newline at end of file diff --git a/blog/2.0.0/index.html b/blog/2.0.0/index.html new file mode 100644 index 000000000..48d6df106 --- /dev/null +++ b/blog/2.0.0/index.html @@ -0,0 +1,105 @@ + Release 2.0.0 | sern + + + Skip to content

Release 2.0.0

2.0 Release

+

Join our discord!
+Wow! We’re finally increasing our semantic versioning by +1.7.9.
+What does this mean?

+

Plugin Support for Event Modules

+

You can now use plugins for event modules. Previous version would throw an error if the +plugins field was populated.

+
1
export function commandPlTest(): SernEmitterPlugin {
2
return {
3
type: PluginType.Command,
4
execute: ({ mod }, controller) => {
5
if (mod.name === "module.register") {
6
console.log("Event Module created correctly");
7
return controller.next();
8
}
9
console.log("event name is wrong");
10
return controller.stop();
11
},
12
};
13
}
+

Applying this plugin to some eventModule:

+
1
export default eventModule({
2
name: "error",
3
type: EventType.Sern,
4
plugins: [commandPlTest()],
5
execute(m) {
6
console.log(m);
7
},
8
});
+

Dependency Injection and Decoupling

+

The powerful npm package iti decouples sern even more. +Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production +and make sern even more customizable than before.

+

How do I start?

+
src/index.ts
1
//With typescript, you can customize / augment your typings.
2
interface MyDependencies extends Dependencies {
3
"@sern/client": Singleton<Client>;
4
"@sern/logger": Singleton<DefaultLogging>;
5
}
6
+
7
export const useContainer = Sern.makeDependencies<MyDependencies>({
8
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
9
build: (root) =>
10
root
11
.add({ "@sern/client": single(client) })
12
.add({ "@sern/logger": single(new DefaultLogging()) }),
13
});
14
+
15
Sern.init({
16
defaultPrefix: "!", // removing defaultPrefix will shut down text commands
17
commands: "src/commands",
18
// events: 'src/events' (optional),
19
containerConfig: {
20
get: useContainer, //pass in your dependency getter here
21
},
22
});
+

Using the Sern#makeDependencies function, inject your dependencies. +We’ll use specific dependencies that are created with the @sern/keyword +key. +Using typescript to display all keywords and what they represent:

+
1
export interface Dependencies {
2
"@sern/client": Singleton<EventEmitter>; //Discord Client
3
"@sern/logger"?: Singleton<Logging>; //Logger
4
"@sern/emitter": Singleton<SernEmitter>; //SernEmitter
5
"@sern/store": Singleton<ModuleStore>; //Stores all Command Modules
6
"@sern/modules": Singleton<ModuleManager>; //Manages Modules
7
"@sern/errors": Singleton<ErrorHandling>; //A Lifetime / Crash Handler
8
}
+ +

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, +we’ll autofill with a DefaultLogger.

+ +

Use your generated dependency getter useContainer (use whatever name you want), access them +from anywhere.

+ +

The build field follows createContainer function call.

+

New CommandTypes

+

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into +CommandType.StringSelect. The remaining SelectMenus are +CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

+
commands/roleselect.ts
1
export default commandModule({
2
type: CommandType.RoleSelect,
3
execute(ctx) {
4
ctx.reply("role select");
5
},
6
});
+

In addition, commandModules with ContextMenus have been renamed.

+
CommandType.MenuUser, CommandType.MenuMsg
CommandType.CtxUser, CommandType.CtxMsg
+

Typings Simplification

+

Pre 2.0: + +


+Post 2.0: +
+

+

CommandPlugin<T> and EventPlugin<T> typings have also been static’ified, transformed from types to interfaces

+

Breaking Changes

+ +
+All deprecation warnings from previous versions have taken effect, and are removed in 2.0. +
type Module = EventModule | CommandModule
type AnyModule = EventModule | CommandModule
+
export type SpreadParams<T extends (...args: never) => unknown> = (
args: Parameters<T>[number],
) => unknown;
+

Override type has been removed due to redundancy

+
discord.js : 14.5
discord.js : 14.7
+
typescript: 4.7
typescript: 4.9
+
interface Wrapper {
readonly defaultPrefix?: string;
readonly commands: string;
readonly events?: string;
readonly containerConfig : {
get: (...keys: (keyof Dependencies)[]) => unknown[];
}
}
+
interface Wrapper {
readonly client: Client;
readonly sernEmitter?: SernEmitter;
readonly defaultPrefix?: string;
readonly commands: string;
readonly events?:
| string
| { mod: EventModule; absPath: string }[]
| (() => { mod: EventModule; absPath: string }[]);
}
+
DefaultLogger
DefaultModuleManager
SernEmitter
DefaultErrorHandling
type Singleton<T> = () => T
type Transient<T> = () => () => T;
type LogPayload<T = unknown> = { message: T }
export const single = <T>() => T
export const many = <T>() => () => T
+

Including the previous section, some names to symbols and data structures were altered to +be better represented. view changelog

+

Context refactoring

+

The context data structure has been internally altered to represent its dynamics better.

\ No newline at end of file diff --git a/blog/2.5.0.html b/blog/2.5.0.html deleted file mode 100644 index a98cf74e2..000000000 --- a/blog/2.5.0.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - -Release 2.5.0 | sern - Handlers. Redefined. - - - - - - - - - - - -

Release 2.5.0

· One min read
jacoobes

2.5 Release

-

Join our discord

-
    -
  • Thank you for using sern in your projects. It's only going to get better!
  • -
  • I apologize for the sudden small breaking change. After this update, there won't be any for a while. -Wow! We're increasing our semantic versioning by +0.3.9
    -What does this mean?
  • -
-

Breaking changes

- -

Deprecations

- -

Reason

-
    -
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • -
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • -
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings - -
  • -
- - \ No newline at end of file diff --git a/blog/2.5.0/index.html b/blog/2.5.0/index.html new file mode 100644 index 000000000..7fac9ebfc --- /dev/null +++ b/blog/2.5.0/index.html @@ -0,0 +1,77 @@ + Release 2.5.0 | sern + + + Skip to content

Release 2.5.0

2.5 Release

+

Join our discord

+
    +
  • Thank you for using sern in your projects. It’s only going to get better!
  • +
  • I apologize for the sudden small breaking change. After this update, there won’t be any for a while. +Wow! We’re increasing our semantic versioning by +0.3.9
    +What does this mean?
  • +
+

Breaking changes

+ +

Deprecations

+ +

Reason

+
    +
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • +
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • +
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings + +
  • +
\ No newline at end of file diff --git a/blog/2/index.html b/blog/2/index.html new file mode 100644 index 000000000..5619cf4b7 --- /dev/null +++ b/blog/2/index.html @@ -0,0 +1,115 @@ + Blog | sern + + + + Skip to content

Blog

How to get started with sern!

Hello everyone!

+

I’m Sr Izan, your fellow user and contributor.

+

Today I’m going to show you how to get started with sern and all its cool features.

+

Step 1: Install the CLI.

+

Install the CLI:

+
npm i -g @sern/cli
+

and then run

+
sern init
+ +

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

+

Step 2: Have some way to store secrets.

+

Normally you’d need a way to store secrets, and the best way to do that is by installing another package: dotenv

+

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

+ +

And… that’s it?

+

Yes, that’s it. Here’s a little FAQ to get you started. You can also join the Discord for any problems.

+

Extra: Video tutorial!

+ +

FAQ

+

Q: How do I publish a slash command?
+A: Install the publish extension. Little video:

+ +

Q: Any snippet VSCode extension?
+A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

+

Q: HEEEELLLPPPP!!!!
+A: Hey, don’t panic! We’re here to help so, join the Discord. We’re trying to get to 100 members!

Release 1.2.0

Class-based modules

+

Today we’re announcing the ability to create class based modules! +To get started, install

+
npm install @sern/handler@latest
+

Quick List of changes!

+ +

Class based modules

+

Incorporate class based modules into your project instead of the traditional commandModule or eventModule +Extend the new CommandExecutable or EventExecutable

+
commands/meaning-of-life.ts
1
import {
2
CommandType,
3
CommandExecutable,
4
type Args,
5
type Context,
6
} from "@sern/handler";
7
import { publish } from "../plugins/publish.js";
8
import { serendipityOnly } from "../plugins/serendipityOnly.js";
9
+
10
export default class extends CommandExecutable<CommandType.Both> {
11
type = CommandType.Both as const;
12
description = "What is the meaning of life?";
13
override onEvent = [serendipityOnly()];
14
override plugins = [publish()];
15
execute = async (ctx: Context, args: Args) => {
16
await ctx.reply("42");
17
};
18
}
+ +
events/guildMemberAdd.ts
1
import { CommandType, EventExecutable, type EventType } from "@sern/handler";
2
import type { GuildMember } from "discord.js";
3
+
4
export default class extends EventExecutable<EventType.Discord> {
5
type = EventType.Discord as const;
6
execute = (member: GuildMember) => {
7
console.log(member);
8
};
9
}
+

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. +I believe that you should build your own structures however you might like and customize to your liking. +In addition, decorators now unofficially work with modules! +Feel free to use TypeScript experimental decorators to augment and customize your classes.

+

Deprecation Warnings

+

The next update will bring sern v2 with some important features. Here are some things to watch out for.

+
    +
  • Wrapper#client will be deprecated
  • +
  • Wrapper#sernEmitter will be deprecated +
      +
    • a SernEmitter will be automatically created once Sern#init is called
    • +
    +
  • +
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • +
  • Sern#addExternal will be deprecated in favor of a better way.
  • +
+

Dependencies Update

+
    +
  • TypeScript has been updated to 4.8.3
  • +
  • Discord.js has been upgraded to 14.5
  • +
\ No newline at end of file diff --git a/blog/3.0.0.html b/blog/3.0.0.html deleted file mode 100644 index b8cc2a744..000000000 --- a/blog/3.0.0.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - -Release 3.0.0 | sern - Handlers. Redefined. - - - - - - - - - - - -

Release 3.0.0

· 3 min read
jacoobes

3.0 Release

-

Join our discord

-

Features

-

Dependency Management

-
    -
  • Service API (recommended to use this over useContainer hooks) -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • new methods on ModuleManager -
      -
    • getPublishableCommands()
    • -
    -
  • -
  • Init Hooks -
      -
    • implement starting behavior for dependencies
    • -
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • -
    -
  • -
  • Emitter interface -
      -
    • More generic interface to define any event emitter
    • -
    • You can now swap out the SernEmitter with whatever emitter now.
    • -
    -
  • -
-
class DatabaseService implements Init {
//some hypothetical database
_pgsql : database()

async init() {
await _pgsql.load()
}

}

await makeDependencies({
build: root => root.add({
db: new DatabaseService() //will be init'ed automatically
})
})

-
    -
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • -
-

export default eventModule({
name: 'modulesLoaded',
type: EventType.Sern,
execute: () => {
console.log('All modules loaded')
}
})


-

Quality of Life

-
    -
  • -

    faster module loading

    -
      -
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • -
    -
  • -
  • -

    better error handling

    -
  • -
  • -

    Less boilerplate

    -
      -
    • Services api cleans up v2 boilerplate
    • -
    -
  • -
  • -

    class modules devex got upgraded and work better than before

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • -
    -
  • -
  • -

    Service API (recommended to use this over useContainer hooks)

    -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • -

    Less boilerplate

    -
  • -
  • -

    new methods on ModuleManager

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • -
    -
  • -
  • -

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    -
  • -
  • -

    Init Hooks

    -
      -
    • implement starting behavior for dependencies
    • -
    -
  • -
-

Experimental

-
    -
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • -
  • dev / prod mode -
      -
    • sern will behave differently depending on mode set
    • -
    -
  • -
  • init sern from file option -
      -
    • reads from local sern.config.json
    • -
    -
  • -
-
Sern.init('file'); 
-

Breaking changes

-
    -
  • Sern.makeDependencies -> makeDependencies -
      -
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • -
    -
  • -
  • module store and manager internally changed, so those using them may recieve breaking changes
  • -
  • BaseOptions type removed
  • -
-
- Sern.makeDependencies({ build: () => {} })
+ await makeDependencies({ build: () => {} })
-

Deprecations

-
    -
  • Removed all previous marked deprecations in v3
  • -
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • -
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • -
- - \ No newline at end of file diff --git a/blog/3.0.0/index.html b/blog/3.0.0/index.html new file mode 100644 index 000000000..33e157bd6 --- /dev/null +++ b/blog/3.0.0/index.html @@ -0,0 +1,163 @@ + Release 3.0.0 | sern + + + Skip to content

Release 3.0.0

3.0 Release

+

Join our discord

+

Features

+

Dependency Management

+
    +
  • Service API (recommended to use this over useContainer hooks) +
      +
    • Dependencies type must be globally augmented in order for Services api to function properly
    • +
    +
  • +
  • new methods on ModuleManager +
      +
    • getPublishableCommands()
    • +
    +
  • +
  • Init Hooks +
      +
    • implement starting behavior for dependencies
    • +
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • +
    +
  • +
  • Emitter interface +
      +
    • More generic interface to define any event emitter
    • +
    • You can now swap out the SernEmitter with whatever emitter now.
    • +
    +
  • +
+
1
class DatabaseService implements Init {
2
//some hypothetical database
3
_pgsql : database()
4
+
5
async init() {
6
await _pgsql.load()
7
}
8
+
9
}
10
+
11
await makeDependencies({
12
build: root => root.add({
13
db: new DatabaseService() //will be init'ed automatically
14
})
15
})
+
    +
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • +
+
1
export default eventModule({
2
name: "modulesLoaded",
3
type: EventType.Sern,
4
execute: () => {
5
console.log("All modules loaded");
6
},
7
});
+

Quality of Life

+
    +
  • +

    faster module loading

    +
      +
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • +
    +
  • +
  • +

    better error handling

    +
  • +
  • +

    Less boilerplate

    +
      +
    • Services api cleans up v2 boilerplate
    • +
    +
  • +
  • +

    class modules devex got upgraded and work better than before

    +
  • +
  • +

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    +
      +
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • +
    +
  • +
  • +

    Service API (recommended to use this over useContainer hooks)

    +
      +
    • Dependencies type must be globally augmented in order for Services api to function properly
    • +
    +
  • +
  • +

    Less boilerplate

    +
  • +
  • +

    new methods on ModuleManager

    +
  • +
  • +

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    +
      +
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • +
    +
  • +
  • +

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    +
  • +
  • +

    Init Hooks

    +
      +
    • implement starting behavior for dependencies
    • +
    +
  • +
+

Experimental

+
    +
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • +
  • dev / prod mode +
      +
    • sern will behave differently depending on mode set
    • +
    +
  • +
  • init sern from file option +
      +
    • reads from local sern.config.json
    • +
    +
  • +
+
1
Sern.init("file");
+

Breaking changes

+
    +
  • Sern.makeDependencies -> makeDependencies +
      +
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • +
    +
  • +
  • module store and manager internally changed, so those using them may recieve breaking changes
  • +
  • BaseOptions type removed
  • +
+
Sern.makeDependencies({ build: () => {} })
await makeDependencies({ build: () => {} })
+

Deprecations

+
    +
  • Removed all previous marked deprecations in v3
  • +
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • +
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • +
\ No newline at end of file diff --git a/blog/archive.html b/blog/archive.html deleted file mode 100644 index 993eb096f..000000000 --- a/blog/archive.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - -Archive | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/blog/atom.xml b/blog/atom.xml deleted file mode 100644 index 2df9534e9..000000000 --- a/blog/atom.xml +++ /dev/null @@ -1,405 +0,0 @@ - - - https://sern.dev/blog - sern - Handlers. Redefined. Blog - 2024-02-23T00:00:00.000Z - https://github.com/jpmonette/feed - - sern - Handlers. Redefined. Blog - https://sern.dev/img/favicon.ico - - <![CDATA[Deploying sern with Railway]]> - https://sern.dev/blog/railway-deploy - - 2024-02-23T00:00:00.000Z - - In this guide, I'll be showing you how to deploy your sern bot with Railway.

-

This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the Getting Started guide to set up your bot.

-

GitHub Repository

-

The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the GitHub guide.

-

Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway.

-

Railway Setup

-

After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

-

Once you've created your account, navigate to the dashboard and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot's repository.

-

Once you've selected your repository, click the "Add Variables" button to add your bot's environment variables. You'll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

-

Deploy

-

Once you've added your environment variables, click the "Deploy" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs.

-
note

Make sure you add your environment variables, and your node start script is correct in your package.json file.

If you have any issues deploying your bot, you can check the logs for any errors.

-

That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

]]>
- - Duro - https://github.com/DuroCodes - - -
- - <![CDATA[New logo!]]> - https://sern.dev/blog/newlogo - - 2023-07-04T00:00:00.000Z - - Hey everyone! Today we have very special news for you all: We're changing our logo!

-

You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
-We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
-And here we are!

-

Who did our new branding?

-

Ropox!
-Bro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
- -And there it all clicked:
- -seren tried by the way! -

-

Anyways, here it is:

-

-

Pretty nice!

-

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

-

Finally, from the entire sern team, thank you for sticking around ❤️

]]>
- - sern Team - https://github.com/sern-handler - - -
- - <![CDATA[Release 3.0.0]]> - https://sern.dev/blog/3.0.0 - - 2023-06-18T00:00:00.000Z - - 3.0 Release -

Join our discord

-

Features

-

Dependency Management

-
    -
  • Service API (recommended to use this over useContainer hooks) -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • new methods on ModuleManager -
      -
    • getPublishableCommands()
    • -
    -
  • -
  • Init Hooks -
      -
    • implement starting behavior for dependencies
    • -
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • -
    -
  • -
  • Emitter interface -
      -
    • More generic interface to define any event emitter
    • -
    • You can now swap out the SernEmitter with whatever emitter now.
    • -
    -
  • -
-
class DatabaseService implements Init {
//some hypothetical database
_pgsql : database()

async init() {
await _pgsql.load()
}

}

await makeDependencies({
build: root => root.add({
db: new DatabaseService() //will be init'ed automatically
})
})

-
    -
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • -
-

export default eventModule({
name: 'modulesLoaded',
type: EventType.Sern,
execute: () => {
console.log('All modules loaded')
}
})


-

Quality of Life

-
    -
  • -

    faster module loading

    -
      -
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • -
    -
  • -
  • -

    better error handling

    -
  • -
  • -

    Less boilerplate

    -
      -
    • Services api cleans up v2 boilerplate
    • -
    -
  • -
  • -

    class modules devex got upgraded and work better than before

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • -
    -
  • -
  • -

    Service API (recommended to use this over useContainer hooks)

    -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • -

    Less boilerplate

    -
  • -
  • -

    new methods on ModuleManager

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • -
    -
  • -
  • -

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    -
  • -
  • -

    Init Hooks

    -
      -
    • implement starting behavior for dependencies
    • -
    -
  • -
-

Experimental

-
    -
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • -
  • dev / prod mode -
      -
    • sern will behave differently depending on mode set
    • -
    -
  • -
  • init sern from file option -
      -
    • reads from local sern.config.json
    • -
    -
  • -
-
Sern.init('file'); 
-

Breaking changes

-
    -
  • Sern.makeDependencies -> makeDependencies -
      -
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • -
    -
  • -
  • module store and manager internally changed, so those using them may recieve breaking changes
  • -
  • BaseOptions type removed
  • -
-
- Sern.makeDependencies({ build: () => {} })
+ await makeDependencies({ build: () => {} })
-

Deprecations

-
    -
  • Removed all previous marked deprecations in v3
  • -
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • -
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • -
]]>
- - jacoobes - https://github.com/jacoobes - - -
- - <![CDATA[Release 2.5.0]]> - https://sern.dev/blog/2.5.0 - - 2023-01-12T00:00:00.000Z - - 2.5 Release -

Join our discord

-
    -
  • Thank you for using sern in your projects. It's only going to get better!
  • -
  • I apologize for the sudden small breaking change. After this update, there won't be any for a while. -Wow! We're increasing our semantic versioning by +0.3.9
    -What does this mean?
  • -
-

Breaking changes

- -

Deprecations

- -

Reason

-
    -
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • -
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • -
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings - -
  • -
]]>
- - jacoobes - https://github.com/jacoobes - - -
- - <![CDATA[Release 2.0.0]]> - https://sern.dev/blog/2.0.0 - - 2022-12-13T00:00:00.000Z - - 2.0 Release -

Join our discord!
-Wow! We're finally increasing our semantic versioning by +1.7.9.
-What does this mean?

-

Plugin Support for Event Modules

-

You can now use plugins for event modules. Previous version would throw an error if the -plugins field was populated.

-
export function commandPlTest() : SernEmitterPlugin {
return {
type: PluginType.Command,
execute: ({ mod}, controller) => {
if(mod.name === 'module.register') {
console.log('Event Module created correctly')
return controller.next()
}
console.log('event name is wrong')
return controller.stop()
}
}
}
-

Applying this plugin to some eventModule:

-
export default eventModule({
name: 'error',
type: EventType.Sern,
plugins: [commandPlTest()],
execute(m) {
console.log(m)
},
})
-

Dependency Injection and Decoupling

-

The powerful npm package iti decouples sern even more. -Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production -and make sern even more customizable than before.

-

How do I start?

-
src/index.ts
//With typescript, you can customize / augment your typings.
interface MyDependencies extends Dependencies {
'@sern/client' : Singleton<Client>;
'@sern/logger' : Singleton<DefaultLogging>
}

export const useContainer = Sern.makeDependencies<MyDependencies>({
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
build: root => root
.add({ '@sern/client': single(client) })
.add({ '@sern/logger': single(new DefaultLogging()) })
});

Sern.init({
defaultPrefix: '!', // removing defaultPrefix will shut down text commands
commands: 'src/commands',
// events: 'src/events' (optional),
containerConfig : {
get: useContainer //pass in your dependency getter here
}
});

-

Using the Sern#makeDependencies function, inject your dependencies. -We'll use specific dependencies that are created with the @sern/keyword -key. -Using typescript to display all keywords and what they represent:

-
export interface Dependencies {
'@sern/client': Singleton<EventEmitter>; //Discord Client
'@sern/logger'?: Singleton<Logging>; //Logger
'@sern/emitter': Singleton<SernEmitter>; //SernEmitter
'@sern/store' : Singleton<ModuleStore>; //Stores all Command Modules
'@sern/modules' : Singleton<ModuleManager>; //Manages Modules
'@sern/errors': Singleton<ErrorHandling>; //A Lifetime / Crash Handler
}
-
danger

Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies

-

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, -we'll autofill with a DefaultLogger.

-
tip

If you don't want a logger, add it to the -exclude field while composing dependencies.

-

Use your generated dependency getter useContainer (use whatever name you want), access them -from anywhere.

-
note

the function useContainerRaw is provided for direct access to dependencies and the internal -data structure. Use this wisely as no guarantees are made and crashes can happen.

-

The build field follows createContainer function call.

-

New CommandTypes

-

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into -CommandType.StringSelect. The remaining SelectMenus are -CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

-
commands/roleselect.ts
export default commandModule({
type: CommandType.RoleSelect,
execute(ctx) {
ctx.reply('role select')
},
})
-

In addition, commandModules with ContextMenus have been renamed.

-
- CommandType.MenuUser, CommandType.MenuMsg 
+ CommandType.CtxUser, CommandType.CtxMsg
-

Typings Simplification

-

Pre 2.0: - -


-Post 2.0: -
-

-

CommandPlugin<T> and EventPlugin<T> typings have also been static'ified, transformed from types to interfaces

-

Breaking Changes

- -
-All deprecation warnings from previous versions have taken effect, and are removed in 2.0. -
- type Module = EventModule | CommandModule
+ type AnyModule = EventModule | CommandModule

-export type SpreadParams<T extends (...args: never) => unknown> = (
- args: Parameters<T>[number],
- ) => unknown;
-

Override type has been removed due to redundancy

-
- discord.js : 14.5
+ discord.js : 14.7

-typescript: 4.7
+ typescript: 4.9
-
+ interface Wrapper {
+ readonly defaultPrefix?: string;
+ readonly commands: string;
+ readonly events?: string;
+ readonly containerConfig : {
+ get: (...keys: (keyof Dependencies)[]) => unknown[];
+ }
+}

- interface Wrapper {
- readonly client: Client;
- readonly sernEmitter?: SernEmitter;
- readonly defaultPrefix?: string;
- readonly commands: string;
- readonly events?:
- | string
- | { mod: EventModule; absPath: string }[]
- | (() => { mod: EventModule; absPath: string }[]);
-}
-
+ DefaultLogger
+ DefaultModuleManager
+ SernEmitter
+ DefaultErrorHandling
+ type Singleton<T> = () => T
+ type Transient<T> = () => () => T;
+ type LogPayload<T = unknown> = { message: T }
+ export const single = <T>() => T
+ export const many = <T>() => () => T
-

Including the previous section, some names to symbols and data structures were altered to -be better represented. view changelog

-

Context refactoring

-

The context data structure has been internally altered to represent its dynamics better.

]]>
- - jacoobes - https://github.com/jacoobes - - -
- - <![CDATA[How to get started with sern!]]> - https://sern.dev/blog/getting-started - - 2022-09-30T00:00:00.000Z - - Hello everyone! -

I'm Sr Izan, your fellow user and contributor.

-

Today I'm going to show you how to get started with sern and all its cool features.

-

Step 1: Install the CLI.

-

Install the CLI:

-
npm i -g @sern/cli
-

and then run

-
sern init
-
tip

You can also run sern init -y if you want to use the default options.

-

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

-

Step 2: Have some way to store secrets.

-

Normally you'd need a way to store secrets, and the best way to do that is by installing another package: dotenv

-

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

-
caution

If you're using ESM, configure dotenv with import 'dotenv/config' instead of require('dotenv').config().

-

And... that's it?

-

Yes, that's it. Here's a little FAQ to get you started. You can also join the Discord for any problems.

-

Extra: Video tutorial!

- -

FAQ

-

Q: How do I publish a slash command?
-A: Install the publish extension. Little video:
-

-

Q: Any snippet VSCode extension?
-A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

-

Q: HEEEELLLPPPP!!!!
-A: Hey, don't panic! We're here to help so, join the Discord. We're trying to get to 100 members!

]]>
- - Sr Izan - https://github.com/SrIzan10 - - -
- - <![CDATA[Release 1.2.0]]> - https://sern.dev/blog/1.2.0 - - 2022-09-28T00:00:00.000Z - - Class-based modules -

Today we're announcing the ability to create class based modules! -To get started, install

-
npm install @sern/handler@latest
-

Quick List of changes!

- -

Class based modules

-

Incorporate class based modules into your project instead of the traditional commandModule or eventModule -Extend the new CommandExecutable or EventExecutable

-
commands/meaning-of-life.ts
import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';
import { publish } from '../plugins/publish.js';
import { serendipityOnly } from '../plugins/serendipityOnly.js';

export default class extends CommandExecutable<CommandType.Both> {
type = CommandType.Both as const;
description = 'What is the meaning of life?'
override onEvent = [
serendipityOnly()
];
override plugins = [
publish(),
];
execute = async (ctx: Context, args: Args) => {
await ctx.reply('42')
};
}
-
caution

execute must not be a method of the class. It should be as above, a property on the class!

-
events/guildMemberAdd.ts
import { CommandType, EventExecutable, type EventType } from '@sern/handler';
import type { GuildMember } from 'discord.js'

export default class extends EventExecutable<EventType.Discord> {
type = EventType.Discord as const;
execute = (member: GuildMember) => {
console.log(member)
};
}
-

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. -I believe that you should build your own structures however you might like and customize to your liking. -In addition, decorators now unofficially work with modules! -Feel free to use TypeScript experimental decorators to augment and customize your classes.

-

Deprecation Warnings

-

The next update will bring sern v2 with some important features. Here are some things to watch out for.

-
    -
  • Wrapper#client will be deprecated
  • -
  • Wrapper#sernEmitter will be deprecated -
      -
    • a SernEmitter will be automatically created once Sern#init is called
    • -
    -
  • -
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • -
  • Sern#addExternal will be deprecated in favor of a better way.
  • -
-

Dependencies Update

-
    -
  • TypeScript has been updated to 4.8.3
  • -
  • Discord.js has been upgraded to 14.5
  • -
]]>
- - jacoobes - https://github.com/jacoobes - - -
-
\ No newline at end of file diff --git a/blog/getting-started.html b/blog/getting-started.html deleted file mode 100644 index a83e45cbd..000000000 --- a/blog/getting-started.html +++ /dev/null @@ -1,49 +0,0 @@ - - - - - -How to get started with sern! | sern - Handlers. Redefined. - - - - - - - - - - - -

How to get started with sern!

· 2 min read
Sr Izan

Hello everyone!

-

I'm Sr Izan, your fellow user and contributor.

-

Today I'm going to show you how to get started with sern and all its cool features.

-

Step 1: Install the CLI.

-

Install the CLI:

-
npm i -g @sern/cli
-

and then run

-
sern init
-
tip

You can also run sern init -y if you want to use the default options.

-

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

-

Step 2: Have some way to store secrets.

-

Normally you'd need a way to store secrets, and the best way to do that is by installing another package: dotenv

-

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

-
caution

If you're using ESM, configure dotenv with import 'dotenv/config' instead of require('dotenv').config().

-

And... that's it?

-

Yes, that's it. Here's a little FAQ to get you started. You can also join the Discord for any problems.

-

Extra: Video tutorial!

- -

FAQ

-

Q: How do I publish a slash command?
-A: Install the publish extension. Little video:
-

-

Q: Any snippet VSCode extension?
-A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

-

Q: HEEEELLLPPPP!!!!
-A: Hey, don't panic! We're here to help so, join the Discord. We're trying to get to 100 members!

- - \ No newline at end of file diff --git a/blog/getting-started/index.html b/blog/getting-started/index.html new file mode 100644 index 000000000..24f221f65 --- /dev/null +++ b/blog/getting-started/index.html @@ -0,0 +1,71 @@ + How to get started with sern! | sern + + + Skip to content

How to get started with sern!

Hello everyone!

+

I’m Sr Izan, your fellow user and contributor.

+

Today I’m going to show you how to get started with sern and all its cool features.

+

Step 1: Install the CLI.

+

Install the CLI:

+
npm i -g @sern/cli
+

and then run

+
sern init
+ +

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

+

Step 2: Have some way to store secrets.

+

Normally you’d need a way to store secrets, and the best way to do that is by installing another package: dotenv

+

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

+ +

And… that’s it?

+

Yes, that’s it. Here’s a little FAQ to get you started. You can also join the Discord for any problems.

+

Extra: Video tutorial!

+ +

FAQ

+

Q: How do I publish a slash command?
+A: Install the publish extension. Little video:

+ +

Q: Any snippet VSCode extension?
+A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

+

Q: HEEEELLLPPPP!!!!
+A: Hey, don’t panic! We’re here to help so, join the Discord. We’re trying to get to 100 members!

\ No newline at end of file diff --git a/blog/index.html b/blog/index.html new file mode 100644 index 000000000..579d6a039 --- /dev/null +++ b/blog/index.html @@ -0,0 +1,293 @@ + Blog | sern + + + + Skip to content

Blog

Deploying sern with Railway

In this guide, I’ll be showing you how to deploy your sern bot with Railway.

+

This guide assumes you have a sern bot already set up and ready to deploy. If you don’t, you can follow the Getting Started guide to set up your bot.

+

GitHub Repository

+

The first thing you’ll need to deploy your bot is a GitHub repository for your bot. If you don’t have one, you can create one by following the GitHub guide.

+

Once you have your repository set up, you can push your bot’s code to the repository, and you’re ready to deploy using Railway.

+

Railway Setup

+

After you have your bot’s code in a GitHub repository, you’ll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

+

Once you’ve created your account, navigate to the dashboard and click the “New Project” button. Click the “Deploy from GitHub repo” button, and select your bot’s repository.

+

Once you’ve selected your repository, click the “Add Variables” button to add your bot’s environment variables. You’ll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

+

Deploy

+

Once you’ve added your environment variables, click the “Deploy” button, and Railway will start deploying your bot. Once the deployment is complete, you’ll be able to see your bot’s URL and logs.

+ +

That’s it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

New logo!

Hey everyone! Today we have very special news for you all: We’re changing our logo!

+

Why?

+

You see, on today’s standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
+We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
+And here we are!

+

Who did our new branding?

+

Ropox!
+Bro’s the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
+ +And there it all clicked:
+ +seren tried by the way! +

+

Anyways, here it is:

+

+

Pretty nice!

+

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

+

Finally, from the entire sern team, thank you for sticking around ❤️

Release 3.0.0

3.0 Release

+

Join our discord

+

Features

+

Dependency Management

+
    +
  • Service API (recommended to use this over useContainer hooks) +
      +
    • Dependencies type must be globally augmented in order for Services api to function properly
    • +
    +
  • +
  • new methods on ModuleManager +
      +
    • getPublishableCommands()
    • +
    +
  • +
  • Init Hooks +
      +
    • implement starting behavior for dependencies
    • +
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • +
    +
  • +
  • Emitter interface +
      +
    • More generic interface to define any event emitter
    • +
    • You can now swap out the SernEmitter with whatever emitter now.
    • +
    +
  • +
+
1
class DatabaseService implements Init {
2
//some hypothetical database
3
_pgsql : database()
4
+
5
async init() {
6
await _pgsql.load()
7
}
8
+
9
}
10
+
11
await makeDependencies({
12
build: root => root.add({
13
db: new DatabaseService() //will be init'ed automatically
14
})
15
})
+
    +
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • +
+
1
export default eventModule({
2
name: "modulesLoaded",
3
type: EventType.Sern,
4
execute: () => {
5
console.log("All modules loaded");
6
},
7
});
+

Quality of Life

+
    +
  • +

    faster module loading

    +
      +
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • +
    +
  • +
  • +

    better error handling

    +
  • +
  • +

    Less boilerplate

    +
      +
    • Services api cleans up v2 boilerplate
    • +
    +
  • +
  • +

    class modules devex got upgraded and work better than before

    +
  • +
  • +

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    +
      +
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • +
    +
  • +
  • +

    Service API (recommended to use this over useContainer hooks)

    +
      +
    • Dependencies type must be globally augmented in order for Services api to function properly
    • +
    +
  • +
  • +

    Less boilerplate

    +
  • +
  • +

    new methods on ModuleManager

    +
  • +
  • +

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    +
      +
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • +
    +
  • +
  • +

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    +
  • +
  • +

    Init Hooks

    +
      +
    • implement starting behavior for dependencies
    • +
    +
  • +
+

Experimental

+
    +
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • +
  • dev / prod mode +
      +
    • sern will behave differently depending on mode set
    • +
    +
  • +
  • init sern from file option +
      +
    • reads from local sern.config.json
    • +
    +
  • +
+
1
Sern.init("file");
+

Breaking changes

+
    +
  • Sern.makeDependencies -> makeDependencies +
      +
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • +
    +
  • +
  • module store and manager internally changed, so those using them may recieve breaking changes
  • +
  • BaseOptions type removed
  • +
+
Sern.makeDependencies({ build: () => {} })
await makeDependencies({ build: () => {} })
+

Deprecations

+
    +
  • Removed all previous marked deprecations in v3
  • +
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • +
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • +

Release 2.5.0

2.5 Release

+

Join our discord

+
    +
  • Thank you for using sern in your projects. It’s only going to get better!
  • +
  • I apologize for the sudden small breaking change. After this update, there won’t be any for a while. +Wow! We’re increasing our semantic versioning by +0.3.9
    +What does this mean?
  • +
+

Breaking changes

+ +

Deprecations

+ +

Reason

+
    +
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • +
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • +
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings + +
  • +

Release 2.0.0

2.0 Release

+

Join our discord!
+Wow! We’re finally increasing our semantic versioning by +1.7.9.
+What does this mean?

+

Plugin Support for Event Modules

+

You can now use plugins for event modules. Previous version would throw an error if the +plugins field was populated.

+
1
export function commandPlTest(): SernEmitterPlugin {
2
return {
3
type: PluginType.Command,
4
execute: ({ mod }, controller) => {
5
if (mod.name === "module.register") {
6
console.log("Event Module created correctly");
7
return controller.next();
8
}
9
console.log("event name is wrong");
10
return controller.stop();
11
},
12
};
13
}
+

Applying this plugin to some eventModule:

+
1
export default eventModule({
2
name: "error",
3
type: EventType.Sern,
4
plugins: [commandPlTest()],
5
execute(m) {
6
console.log(m);
7
},
8
});
+

Dependency Injection and Decoupling

+

The powerful npm package iti decouples sern even more. +Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production +and make sern even more customizable than before.

+

How do I start?

+
src/index.ts
1
//With typescript, you can customize / augment your typings.
2
interface MyDependencies extends Dependencies {
3
"@sern/client": Singleton<Client>;
4
"@sern/logger": Singleton<DefaultLogging>;
5
}
6
+
7
export const useContainer = Sern.makeDependencies<MyDependencies>({
8
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
9
build: (root) =>
10
root
11
.add({ "@sern/client": single(client) })
12
.add({ "@sern/logger": single(new DefaultLogging()) }),
13
});
14
+
15
Sern.init({
16
defaultPrefix: "!", // removing defaultPrefix will shut down text commands
17
commands: "src/commands",
18
// events: 'src/events' (optional),
19
containerConfig: {
20
get: useContainer, //pass in your dependency getter here
21
},
22
});
+

Using the Sern#makeDependencies function, inject your dependencies. +We’ll use specific dependencies that are created with the @sern/keyword +key. +Using typescript to display all keywords and what they represent:

+
1
export interface Dependencies {
2
"@sern/client": Singleton<EventEmitter>; //Discord Client
3
"@sern/logger"?: Singleton<Logging>; //Logger
4
"@sern/emitter": Singleton<SernEmitter>; //SernEmitter
5
"@sern/store": Singleton<ModuleStore>; //Stores all Command Modules
6
"@sern/modules": Singleton<ModuleManager>; //Manages Modules
7
"@sern/errors": Singleton<ErrorHandling>; //A Lifetime / Crash Handler
8
}
+ +

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, +we’ll autofill with a DefaultLogger.

+ +

Use your generated dependency getter useContainer (use whatever name you want), access them +from anywhere.

+ +

The build field follows createContainer function call.

+

New CommandTypes

+

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into +CommandType.StringSelect. The remaining SelectMenus are +CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

+
commands/roleselect.ts
1
export default commandModule({
2
type: CommandType.RoleSelect,
3
execute(ctx) {
4
ctx.reply("role select");
5
},
6
});
+

In addition, commandModules with ContextMenus have been renamed.

+
CommandType.MenuUser, CommandType.MenuMsg
CommandType.CtxUser, CommandType.CtxMsg
+

Typings Simplification

+

Pre 2.0: + +


+Post 2.0: +
+

+

CommandPlugin<T> and EventPlugin<T> typings have also been static’ified, transformed from types to interfaces

+

Breaking Changes

+ +
+All deprecation warnings from previous versions have taken effect, and are removed in 2.0. +
type Module = EventModule | CommandModule
type AnyModule = EventModule | CommandModule
+
export type SpreadParams<T extends (...args: never) => unknown> = (
args: Parameters<T>[number],
) => unknown;
+

Override type has been removed due to redundancy

+
discord.js : 14.5
discord.js : 14.7
+
typescript: 4.7
typescript: 4.9
+
interface Wrapper {
readonly defaultPrefix?: string;
readonly commands: string;
readonly events?: string;
readonly containerConfig : {
get: (...keys: (keyof Dependencies)[]) => unknown[];
}
}
+
interface Wrapper {
readonly client: Client;
readonly sernEmitter?: SernEmitter;
readonly defaultPrefix?: string;
readonly commands: string;
readonly events?:
| string
| { mod: EventModule; absPath: string }[]
| (() => { mod: EventModule; absPath: string }[]);
}
+
DefaultLogger
DefaultModuleManager
SernEmitter
DefaultErrorHandling
type Singleton<T> = () => T
type Transient<T> = () => () => T;
type LogPayload<T = unknown> = { message: T }
export const single = <T>() => T
export const many = <T>() => () => T
+

Including the previous section, some names to symbols and data structures were altered to +be better represented. view changelog

+

Context refactoring

+

The context data structure has been internally altered to represent its dynamics better.

\ No newline at end of file diff --git a/blog/new-logo/index.html b/blog/new-logo/index.html new file mode 100644 index 000000000..0d080c73b --- /dev/null +++ b/blog/new-logo/index.html @@ -0,0 +1,59 @@ + New logo! | sern + + + Skip to content

New logo!

Hey everyone! Today we have very special news for you all: We’re changing our logo!

+

Why?

+

You see, on today’s standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
+We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
+And here we are!

+

Who did our new branding?

+

Ropox!
+Bro’s the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
+ +And there it all clicked:
+ +seren tried by the way! +

+

Anyways, here it is:

+

+

Pretty nice!

+

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

+

Finally, from the entire sern team, thank you for sticking around ❤️

\ No newline at end of file diff --git a/blog/newlogo.html b/blog/newlogo.html deleted file mode 100644 index b101f8e6f..000000000 --- a/blog/newlogo.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - -New logo! | sern - Handlers. Redefined. - - - - - - - - - - - -

New logo!

· One min read

Hey everyone! Today we have very special news for you all: We're changing our logo!

-

You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
-We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
-And here we are!

-

Who did our new branding?

-

Ropox!
-Bro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
- -And there it all clicked:
- -seren tried by the way! -

-

Anyways, here it is:

-

-

Pretty nice!

-

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

-

Finally, from the entire sern team, thank you for sticking around ❤️

- - \ No newline at end of file diff --git a/blog/newlogo/paperlogo.png b/blog/newlogo/paperlogo.png deleted file mode 100644 index c1456c5d3..000000000 Binary files a/blog/newlogo/paperlogo.png and /dev/null differ diff --git a/blog/newlogo/paperprototypes.jpg b/blog/newlogo/paperprototypes.jpg deleted file mode 100644 index 4f94f9847..000000000 Binary files a/blog/newlogo/paperprototypes.jpg and /dev/null differ diff --git a/blog/newlogo/serentried.png b/blog/newlogo/serentried.png deleted file mode 100644 index 5df44d868..000000000 Binary files a/blog/newlogo/serentried.png and /dev/null differ diff --git a/blog/railway-deploy.html b/blog/railway-deploy.html deleted file mode 100644 index 1a5a3a57b..000000000 --- a/blog/railway-deploy.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - -Deploying sern with Railway | sern - Handlers. Redefined. - - - - - - - - - - - -

Deploying sern with Railway

· 2 min read
Duro

In this guide, I'll be showing you how to deploy your sern bot with Railway.

-

This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the Getting Started guide to set up your bot.

-

GitHub Repository

-

The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the GitHub guide.

-

Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway.

-

Railway Setup

-

After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

-

Once you've created your account, navigate to the dashboard and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot's repository.

-

Once you've selected your repository, click the "Add Variables" button to add your bot's environment variables. You'll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

-

Deploy

-

Once you've added your environment variables, click the "Deploy" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs.

-
note

Make sure you add your environment variables, and your node start script is correct in your package.json file.

If you have any issues deploying your bot, you can check the logs for any errors.

-

That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

- - \ No newline at end of file diff --git a/blog/railway-deploy/index.html b/blog/railway-deploy/index.html new file mode 100644 index 000000000..a6482e3d4 --- /dev/null +++ b/blog/railway-deploy/index.html @@ -0,0 +1,54 @@ + Deploying sern with Railway | sern + + + Skip to content

Deploying sern with Railway

In this guide, I’ll be showing you how to deploy your sern bot with Railway.

+

This guide assumes you have a sern bot already set up and ready to deploy. If you don’t, you can follow the Getting Started guide to set up your bot.

+

GitHub Repository

+

The first thing you’ll need to deploy your bot is a GitHub repository for your bot. If you don’t have one, you can create one by following the GitHub guide.

+

Once you have your repository set up, you can push your bot’s code to the repository, and you’re ready to deploy using Railway.

+

Railway Setup

+

After you have your bot’s code in a GitHub repository, you’ll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

+

Once you’ve created your account, navigate to the dashboard and click the “New Project” button. Click the “Deploy from GitHub repo” button, and select your bot’s repository.

+

Once you’ve selected your repository, click the “Add Variables” button to add your bot’s environment variables. You’ll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

+

Deploy

+

Once you’ve added your environment variables, click the “Deploy” button, and Railway will start deploying your bot. Once the deployment is complete, you’ll be able to see your bot’s URL and logs.

+ +

That’s it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

\ No newline at end of file diff --git a/blog/rss.xml b/blog/rss.xml deleted file mode 100644 index c2399f8ba..000000000 --- a/blog/rss.xml +++ /dev/null @@ -1,379 +0,0 @@ - - - - sern - Handlers. Redefined. Blog - https://sern.dev/blog - sern - Handlers. Redefined. Blog - Fri, 23 Feb 2024 00:00:00 GMT - https://validator.w3.org/feed/docs/rss2.html - https://github.com/jpmonette/feed - en - - <![CDATA[Deploying sern with Railway]]> - https://sern.dev/blog/railway-deploy - https://sern.dev/blog/railway-deploy - Fri, 23 Feb 2024 00:00:00 GMT - - In this guide, I'll be showing you how to deploy your sern bot with Railway.

-

This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the Getting Started guide to set up your bot.

-

GitHub Repository

-

The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the GitHub guide.

-

Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway.

-

Railway Setup

-

After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

-

Once you've created your account, navigate to the dashboard and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot's repository.

-

Once you've selected your repository, click the "Add Variables" button to add your bot's environment variables. You'll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

-

Deploy

-

Once you've added your environment variables, click the "Deploy" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs.

-
note

Make sure you add your environment variables, and your node start script is correct in your package.json file.

If you have any issues deploying your bot, you can check the logs for any errors.

-

That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

]]>
- guides -
- - <![CDATA[New logo!]]> - https://sern.dev/blog/newlogo - https://sern.dev/blog/newlogo - Tue, 04 Jul 2023 00:00:00 GMT - - Hey everyone! Today we have very special news for you all: We're changing our logo!

-

You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
-We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
-And here we are!

-

Who did our new branding?

-

Ropox!
-Bro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
- -And there it all clicked:
- -seren tried by the way! -

-

Anyways, here it is:

-

-

Pretty nice!

-

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

-

Finally, from the entire sern team, thank you for sticking around ❤️

]]>
- branding -
- - <![CDATA[Release 3.0.0]]> - https://sern.dev/blog/3.0.0 - https://sern.dev/blog/3.0.0 - Sun, 18 Jun 2023 00:00:00 GMT - - 3.0 Release -

Join our discord

-

Features

-

Dependency Management

-
    -
  • Service API (recommended to use this over useContainer hooks) -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • new methods on ModuleManager -
      -
    • getPublishableCommands()
    • -
    -
  • -
  • Init Hooks -
      -
    • implement starting behavior for dependencies
    • -
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • -
    -
  • -
  • Emitter interface -
      -
    • More generic interface to define any event emitter
    • -
    • You can now swap out the SernEmitter with whatever emitter now.
    • -
    -
  • -
-
class DatabaseService implements Init {
//some hypothetical database
_pgsql : database()

async init() {
await _pgsql.load()
}

}

await makeDependencies({
build: root => root.add({
db: new DatabaseService() //will be init'ed automatically
})
})

-
    -
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • -
-

export default eventModule({
name: 'modulesLoaded',
type: EventType.Sern,
execute: () => {
console.log('All modules loaded')
}
})


-

Quality of Life

-
    -
  • -

    faster module loading

    -
      -
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • -
    -
  • -
  • -

    better error handling

    -
  • -
  • -

    Less boilerplate

    -
      -
    • Services api cleans up v2 boilerplate
    • -
    -
  • -
  • -

    class modules devex got upgraded and work better than before

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • -
    -
  • -
  • -

    Service API (recommended to use this over useContainer hooks)

    -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • -

    Less boilerplate

    -
  • -
  • -

    new methods on ModuleManager

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • -
    -
  • -
  • -

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    -
  • -
  • -

    Init Hooks

    -
      -
    • implement starting behavior for dependencies
    • -
    -
  • -
-

Experimental

-
    -
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • -
  • dev / prod mode -
      -
    • sern will behave differently depending on mode set
    • -
    -
  • -
  • init sern from file option -
      -
    • reads from local sern.config.json
    • -
    -
  • -
-
Sern.init('file'); 
-

Breaking changes

-
    -
  • Sern.makeDependencies -> makeDependencies -
      -
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • -
    -
  • -
  • module store and manager internally changed, so those using them may recieve breaking changes
  • -
  • BaseOptions type removed
  • -
-
- Sern.makeDependencies({ build: () => {} })
+ await makeDependencies({ build: () => {} })
-

Deprecations

-
    -
  • Removed all previous marked deprecations in v3
  • -
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • -
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • -
]]>
- release -
- - <![CDATA[Release 2.5.0]]> - https://sern.dev/blog/2.5.0 - https://sern.dev/blog/2.5.0 - Thu, 12 Jan 2023 00:00:00 GMT - - 2.5 Release -

Join our discord

-
    -
  • Thank you for using sern in your projects. It's only going to get better!
  • -
  • I apologize for the sudden small breaking change. After this update, there won't be any for a while. -Wow! We're increasing our semantic versioning by +0.3.9
    -What does this mean?
  • -
-

Breaking changes

- -

Deprecations

- -

Reason

-
    -
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • -
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • -
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings - -
  • -
]]>
- release -
- - <![CDATA[Release 2.0.0]]> - https://sern.dev/blog/2.0.0 - https://sern.dev/blog/2.0.0 - Tue, 13 Dec 2022 00:00:00 GMT - - 2.0 Release -

Join our discord!
-Wow! We're finally increasing our semantic versioning by +1.7.9.
-What does this mean?

-

Plugin Support for Event Modules

-

You can now use plugins for event modules. Previous version would throw an error if the -plugins field was populated.

-
export function commandPlTest() : SernEmitterPlugin {
return {
type: PluginType.Command,
execute: ({ mod}, controller) => {
if(mod.name === 'module.register') {
console.log('Event Module created correctly')
return controller.next()
}
console.log('event name is wrong')
return controller.stop()
}
}
}
-

Applying this plugin to some eventModule:

-
export default eventModule({
name: 'error',
type: EventType.Sern,
plugins: [commandPlTest()],
execute(m) {
console.log(m)
},
})
-

Dependency Injection and Decoupling

-

The powerful npm package iti decouples sern even more. -Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production -and make sern even more customizable than before.

-

How do I start?

-
src/index.ts
//With typescript, you can customize / augment your typings.
interface MyDependencies extends Dependencies {
'@sern/client' : Singleton<Client>;
'@sern/logger' : Singleton<DefaultLogging>
}

export const useContainer = Sern.makeDependencies<MyDependencies>({
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
build: root => root
.add({ '@sern/client': single(client) })
.add({ '@sern/logger': single(new DefaultLogging()) })
});

Sern.init({
defaultPrefix: '!', // removing defaultPrefix will shut down text commands
commands: 'src/commands',
// events: 'src/events' (optional),
containerConfig : {
get: useContainer //pass in your dependency getter here
}
});

-

Using the Sern#makeDependencies function, inject your dependencies. -We'll use specific dependencies that are created with the @sern/keyword -key. -Using typescript to display all keywords and what they represent:

-
export interface Dependencies {
'@sern/client': Singleton<EventEmitter>; //Discord Client
'@sern/logger'?: Singleton<Logging>; //Logger
'@sern/emitter': Singleton<SernEmitter>; //SernEmitter
'@sern/store' : Singleton<ModuleStore>; //Stores all Command Modules
'@sern/modules' : Singleton<ModuleManager>; //Manages Modules
'@sern/errors': Singleton<ErrorHandling>; //A Lifetime / Crash Handler
}
-
danger

Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies

-

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, -we'll autofill with a DefaultLogger.

-
tip

If you don't want a logger, add it to the -exclude field while composing dependencies.

-

Use your generated dependency getter useContainer (use whatever name you want), access them -from anywhere.

-
note

the function useContainerRaw is provided for direct access to dependencies and the internal -data structure. Use this wisely as no guarantees are made and crashes can happen.

-

The build field follows createContainer function call.

-

New CommandTypes

-

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into -CommandType.StringSelect. The remaining SelectMenus are -CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

-
commands/roleselect.ts
export default commandModule({
type: CommandType.RoleSelect,
execute(ctx) {
ctx.reply('role select')
},
})
-

In addition, commandModules with ContextMenus have been renamed.

-
- CommandType.MenuUser, CommandType.MenuMsg 
+ CommandType.CtxUser, CommandType.CtxMsg
-

Typings Simplification

-

Pre 2.0: - -


-Post 2.0: -
-

-

CommandPlugin<T> and EventPlugin<T> typings have also been static'ified, transformed from types to interfaces

-

Breaking Changes

- -
-All deprecation warnings from previous versions have taken effect, and are removed in 2.0. -
- type Module = EventModule | CommandModule
+ type AnyModule = EventModule | CommandModule

-export type SpreadParams<T extends (...args: never) => unknown> = (
- args: Parameters<T>[number],
- ) => unknown;
-

Override type has been removed due to redundancy

-
- discord.js : 14.5
+ discord.js : 14.7

-typescript: 4.7
+ typescript: 4.9
-
+ interface Wrapper {
+ readonly defaultPrefix?: string;
+ readonly commands: string;
+ readonly events?: string;
+ readonly containerConfig : {
+ get: (...keys: (keyof Dependencies)[]) => unknown[];
+ }
+}

- interface Wrapper {
- readonly client: Client;
- readonly sernEmitter?: SernEmitter;
- readonly defaultPrefix?: string;
- readonly commands: string;
- readonly events?:
- | string
- | { mod: EventModule; absPath: string }[]
- | (() => { mod: EventModule; absPath: string }[]);
-}
-
+ DefaultLogger
+ DefaultModuleManager
+ SernEmitter
+ DefaultErrorHandling
+ type Singleton<T> = () => T
+ type Transient<T> = () => () => T;
+ type LogPayload<T = unknown> = { message: T }
+ export const single = <T>() => T
+ export const many = <T>() => () => T
-

Including the previous section, some names to symbols and data structures were altered to -be better represented. view changelog

-

Context refactoring

-

The context data structure has been internally altered to represent its dynamics better.

]]>
- release -
- - <![CDATA[How to get started with sern!]]> - https://sern.dev/blog/getting-started - https://sern.dev/blog/getting-started - Fri, 30 Sep 2022 00:00:00 GMT - - Hello everyone! -

I'm Sr Izan, your fellow user and contributor.

-

Today I'm going to show you how to get started with sern and all its cool features.

-

Step 1: Install the CLI.

-

Install the CLI:

-
npm i -g @sern/cli
-

and then run

-
sern init
-
tip

You can also run sern init -y if you want to use the default options.

-

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

-

Step 2: Have some way to store secrets.

-

Normally you'd need a way to store secrets, and the best way to do that is by installing another package: dotenv

-

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

-
caution

If you're using ESM, configure dotenv with import 'dotenv/config' instead of require('dotenv').config().

-

And... that's it?

-

Yes, that's it. Here's a little FAQ to get you started. You can also join the Discord for any problems.

-

Extra: Video tutorial!

- -

FAQ

-

Q: How do I publish a slash command?
-A: Install the publish extension. Little video:
-

-

Q: Any snippet VSCode extension?
-A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

-

Q: HEEEELLLPPPP!!!!
-A: Hey, don't panic! We're here to help so, join the Discord. We're trying to get to 100 members!

]]>
- guides -
- - <![CDATA[Release 1.2.0]]> - https://sern.dev/blog/1.2.0 - https://sern.dev/blog/1.2.0 - Wed, 28 Sep 2022 00:00:00 GMT - - Class-based modules -

Today we're announcing the ability to create class based modules! -To get started, install

-
npm install @sern/handler@latest
-

Quick List of changes!

- -

Class based modules

-

Incorporate class based modules into your project instead of the traditional commandModule or eventModule -Extend the new CommandExecutable or EventExecutable

-
commands/meaning-of-life.ts
import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';
import { publish } from '../plugins/publish.js';
import { serendipityOnly } from '../plugins/serendipityOnly.js';

export default class extends CommandExecutable<CommandType.Both> {
type = CommandType.Both as const;
description = 'What is the meaning of life?'
override onEvent = [
serendipityOnly()
];
override plugins = [
publish(),
];
execute = async (ctx: Context, args: Args) => {
await ctx.reply('42')
};
}
-
caution

execute must not be a method of the class. It should be as above, a property on the class!

-
events/guildMemberAdd.ts
import { CommandType, EventExecutable, type EventType } from '@sern/handler';
import type { GuildMember } from 'discord.js'

export default class extends EventExecutable<EventType.Discord> {
type = EventType.Discord as const;
execute = (member: GuildMember) => {
console.log(member)
};
}
-

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. -I believe that you should build your own structures however you might like and customize to your liking. -In addition, decorators now unofficially work with modules! -Feel free to use TypeScript experimental decorators to augment and customize your classes.

-

Deprecation Warnings

-

The next update will bring sern v2 with some important features. Here are some things to watch out for.

-
    -
  • Wrapper#client will be deprecated
  • -
  • Wrapper#sernEmitter will be deprecated -
      -
    • a SernEmitter will be automatically created once Sern#init is called
    • -
    -
  • -
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • -
  • Sern#addExternal will be deprecated in favor of a better way.
  • -
-

Dependencies Update

-
    -
  • TypeScript has been updated to 4.8.3
  • -
  • Discord.js has been upgraded to 14.5
  • -
]]>
- release -
-
-
\ No newline at end of file diff --git a/blog/tags.html b/blog/tags.html deleted file mode 100644 index 9e95a480c..000000000 --- a/blog/tags.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - -Tags | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/blog/tags/branding.html b/blog/tags/branding.html deleted file mode 100644 index 84795e06f..000000000 --- a/blog/tags/branding.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - - -One post tagged with "branding" | sern - Handlers. Redefined. - - - - - - - - - - - -

One post tagged with "branding"

View All Tags

· One min read

Hey everyone! Today we have very special news for you all: We're changing our logo!

-

You see, on today's standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
-We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
-And here we are!

-

Who did our new branding?

-

Ropox!
-Bro's the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
- -And there it all clicked:
- -seren tried by the way! -

-

Anyways, here it is:

-

-

Pretty nice!

-

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

-

Finally, from the entire sern team, thank you for sticking around ❤️

- - \ No newline at end of file diff --git a/blog/tags/branding/index.html b/blog/tags/branding/index.html new file mode 100644 index 000000000..723ee977e --- /dev/null +++ b/blog/tags/branding/index.html @@ -0,0 +1,62 @@ + branding | sern + + + + Skip to content

branding

1 post with the tag “branding”

New logo!

Hey everyone! Today we have very special news for you all: We’re changing our logo!

+

Why?

+

You see, on today’s standards, having a simple logo is essential. Our logo aligns perfectly with these design principles but it can always be improved.
+We were chilling, you know, cooking sern handler v3, sern gui, npm create @sern/bot and serncord when we thought about changing the logo to a sleek design with less colors.
+And here we are!

+

Who did our new branding?

+

Ropox!
+Bro’s the GOAT. This website is maintained by him, the domain costs are funded by him and also he started brainstorming how the logo would be on paper:
+ +And there it all clicked:
+ +seren tried by the way! +

+

Anyways, here it is:

+

+

Pretty nice!

+

By the way, we have animations and variations on the way, so make sure to stay updated in the discord server!

+

Finally, from the entire sern team, thank you for sticking around ❤️

\ No newline at end of file diff --git a/blog/tags/guides.html b/blog/tags/guides.html deleted file mode 100644 index 0aa892f90..000000000 --- a/blog/tags/guides.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - -2 posts tagged with "guides" | sern - Handlers. Redefined. - - - - - - - - - - - -

2 posts tagged with "guides"

View All Tags

· 2 min read
Duro

In this guide, I'll be showing you how to deploy your sern bot with Railway.

-

This guide assumes you have a sern bot already set up and ready to deploy. If you don't, you can follow the Getting Started guide to set up your bot.

-

GitHub Repository

-

The first thing you'll need to deploy your bot is a GitHub repository for your bot. If you don't have one, you can create one by following the GitHub guide.

-

Once you have your repository set up, you can push your bot's code to the repository, and you're ready to deploy using Railway.

-

Railway Setup

-

After you have your bot's code in a GitHub repository, you'll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

-

Once you've created your account, navigate to the dashboard and click the "New Project" button. Click the "Deploy from GitHub repo" button, and select your bot's repository.

-

Once you've selected your repository, click the "Add Variables" button to add your bot's environment variables. You'll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

-

Deploy

-

Once you've added your environment variables, click the "Deploy" button, and Railway will start deploying your bot. Once the deployment is complete, you'll be able to see your bot's URL and logs.

-
note

Make sure you add your environment variables, and your node start script is correct in your package.json file.

If you have any issues deploying your bot, you can check the logs for any errors.

-

That's it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

· 2 min read
Sr Izan

Hello everyone!

-

I'm Sr Izan, your fellow user and contributor.

-

Today I'm going to show you how to get started with sern and all its cool features.

-

Step 1: Install the CLI.

-

Install the CLI:

-
npm i -g @sern/cli
-

and then run

-
sern init
-
tip

You can also run sern init -y if you want to use the default options.

-

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

-

Step 2: Have some way to store secrets.

-

Normally you'd need a way to store secrets, and the best way to do that is by installing another package: dotenv

-

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

-
caution

If you're using ESM, configure dotenv with import 'dotenv/config' instead of require('dotenv').config().

-

And... that's it?

-

Yes, that's it. Here's a little FAQ to get you started. You can also join the Discord for any problems.

-

Extra: Video tutorial!

- -

FAQ

-

Q: How do I publish a slash command?
-A: Install the publish extension. Little video:
-

-

Q: Any snippet VSCode extension?
-A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

-

Q: HEEEELLLPPPP!!!!
-A: Hey, don't panic! We're here to help so, join the Discord. We're trying to get to 100 members!

- - \ No newline at end of file diff --git a/blog/tags/guides/index.html b/blog/tags/guides/index.html new file mode 100644 index 000000000..773235958 --- /dev/null +++ b/blog/tags/guides/index.html @@ -0,0 +1,86 @@ + guides | sern + + + + Skip to content

guides

2 posts with the tag “guides”

Deploying sern with Railway

In this guide, I’ll be showing you how to deploy your sern bot with Railway.

+

This guide assumes you have a sern bot already set up and ready to deploy. If you don’t, you can follow the Getting Started guide to set up your bot.

+

GitHub Repository

+

The first thing you’ll need to deploy your bot is a GitHub repository for your bot. If you don’t have one, you can create one by following the GitHub guide.

+

Once you have your repository set up, you can push your bot’s code to the repository, and you’re ready to deploy using Railway.

+

Railway Setup

+

After you have your bot’s code in a GitHub repository, you’ll need to create an account on Railway. You can sign up using your GitHub account at railway.app.

+

Once you’ve created your account, navigate to the dashboard and click the “New Project” button. Click the “Deploy from GitHub repo” button, and select your bot’s repository.

+

Once you’ve selected your repository, click the “Add Variables” button to add your bot’s environment variables. You’ll need your environment variables from your .env file to add to Railway. (You can also add these later if you want.)

+

Deploy

+

Once you’ve added your environment variables, click the “Deploy” button, and Railway will start deploying your bot. Once the deployment is complete, you’ll be able to see your bot’s URL and logs.

+ +

That’s it! Your bot is now deployed and running on Railway. If you have any issues or questions, feel free to ask in the sern Discord server.

How to get started with sern!

Hello everyone!

+

I’m Sr Izan, your fellow user and contributor.

+

Today I’m going to show you how to get started with sern and all its cool features.

+

Step 1: Install the CLI.

+

Install the CLI:

+
npm i -g @sern/cli
+

and then run

+
sern init
+ +

The CLI is written in Typescript and open-sourced on Github. (thanks evo!)

+

Step 2: Have some way to store secrets.

+

Normally you’d need a way to store secrets, and the best way to do that is by installing another package: dotenv

+

just npm i dotenv in the project folder and add require('dotenv').config() to your import section. Then, when you login, process.env.TOKEN (or however you have it named on your .env file) should do the trick.

+ +

And… that’s it?

+

Yes, that’s it. Here’s a little FAQ to get you started. You can also join the Discord for any problems.

+

Extra: Video tutorial!

+ +

FAQ

+

Q: How do I publish a slash command?
+A: Install the publish extension. Little video:

+ +

Q: Any snippet VSCode extension?
+A: Yeah, just search sern Snippets made by a verified publisher called Sr Izan (haha yeah me funny!)

+

Q: HEEEELLLPPPP!!!!
+A: Hey, don’t panic! We’re here to help so, join the Discord. We’re trying to get to 100 members!

\ No newline at end of file diff --git a/blog/tags/release.html b/blog/tags/release.html deleted file mode 100644 index adac50cb9..000000000 --- a/blog/tags/release.html +++ /dev/null @@ -1,267 +0,0 @@ - - - - - -4 posts tagged with "release" | sern - Handlers. Redefined. - - - - - - - - - - - -

4 posts tagged with "release"

View All Tags

· 3 min read
jacoobes

3.0 Release

-

Join our discord

-

Features

-

Dependency Management

-
    -
  • Service API (recommended to use this over useContainer hooks) -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • new methods on ModuleManager -
      -
    • getPublishableCommands()
    • -
    -
  • -
  • Init Hooks -
      -
    • implement starting behavior for dependencies
    • -
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • -
    -
  • -
  • Emitter interface -
      -
    • More generic interface to define any event emitter
    • -
    • You can now swap out the SernEmitter with whatever emitter now.
    • -
    -
  • -
-
class DatabaseService implements Init {
//some hypothetical database
_pgsql : database()

async init() {
await _pgsql.load()
}

}

await makeDependencies({
build: root => root.add({
db: new DatabaseService() //will be init'ed automatically
})
})

-
    -
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • -
-

export default eventModule({
name: 'modulesLoaded',
type: EventType.Sern,
execute: () => {
console.log('All modules loaded')
}
})


-

Quality of Life

-
    -
  • -

    faster module loading

    -
      -
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • -
    -
  • -
  • -

    better error handling

    -
  • -
  • -

    Less boilerplate

    -
      -
    • Services api cleans up v2 boilerplate
    • -
    -
  • -
  • -

    class modules devex got upgraded and work better than before

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • -
    -
  • -
  • -

    Service API (recommended to use this over useContainer hooks)

    -
      -
    • Dependencies type must be globally augmented in order for Services api to function properly
    • -
    -
  • -
  • -

    Less boilerplate

    -
  • -
  • -

    new methods on ModuleManager

    -
  • -
  • -

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    -
      -
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • -
    -
  • -
  • -

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    -
  • -
  • -

    Init Hooks

    -
      -
    • implement starting behavior for dependencies
    • -
    -
  • -
-

Experimental

-
    -
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • -
  • dev / prod mode -
      -
    • sern will behave differently depending on mode set
    • -
    -
  • -
  • init sern from file option -
      -
    • reads from local sern.config.json
    • -
    -
  • -
-
Sern.init('file'); 
-

Breaking changes

-
    -
  • Sern.makeDependencies -> makeDependencies -
      -
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • -
    -
  • -
  • module store and manager internally changed, so those using them may recieve breaking changes
  • -
  • BaseOptions type removed
  • -
-
- Sern.makeDependencies({ build: () => {} })
+ await makeDependencies({ build: () => {} })
-

Deprecations

-
    -
  • Removed all previous marked deprecations in v3
  • -
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • -
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • -

· One min read
jacoobes

2.5 Release

-

Join our discord

-
    -
  • Thank you for using sern in your projects. It's only going to get better!
  • -
  • I apologize for the sudden small breaking change. After this update, there won't be any for a while. -Wow! We're increasing our semantic versioning by +0.3.9
    -What does this mean?
  • -
-

Breaking changes

- -

Deprecations

- -

Reason

-
    -
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • -
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • -
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings - -
  • -

· 4 min read
jacoobes

2.0 Release

-

Join our discord!
-Wow! We're finally increasing our semantic versioning by +1.7.9.
-What does this mean?

-

Plugin Support for Event Modules

-

You can now use plugins for event modules. Previous version would throw an error if the -plugins field was populated.

-
export function commandPlTest() : SernEmitterPlugin {
return {
type: PluginType.Command,
execute: ({ mod}, controller) => {
if(mod.name === 'module.register') {
console.log('Event Module created correctly')
return controller.next()
}
console.log('event name is wrong')
return controller.stop()
}
}
}
-

Applying this plugin to some eventModule:

-
export default eventModule({
name: 'error',
type: EventType.Sern,
plugins: [commandPlTest()],
execute(m) {
console.log(m)
},
})
-

Dependency Injection and Decoupling

-

The powerful npm package iti decouples sern even more. -Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production -and make sern even more customizable than before.

-

How do I start?

-
src/index.ts
//With typescript, you can customize / augment your typings.
interface MyDependencies extends Dependencies {
'@sern/client' : Singleton<Client>;
'@sern/logger' : Singleton<DefaultLogging>
}

export const useContainer = Sern.makeDependencies<MyDependencies>({
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
build: root => root
.add({ '@sern/client': single(client) })
.add({ '@sern/logger': single(new DefaultLogging()) })
});

Sern.init({
defaultPrefix: '!', // removing defaultPrefix will shut down text commands
commands: 'src/commands',
// events: 'src/events' (optional),
containerConfig : {
get: useContainer //pass in your dependency getter here
}
});

-

Using the Sern#makeDependencies function, inject your dependencies. -We'll use specific dependencies that are created with the @sern/keyword -key. -Using typescript to display all keywords and what they represent:

-
export interface Dependencies {
'@sern/client': Singleton<EventEmitter>; //Discord Client
'@sern/logger'?: Singleton<Logging>; //Logger
'@sern/emitter': Singleton<SernEmitter>; //SernEmitter
'@sern/store' : Singleton<ModuleStore>; //Stores all Command Modules
'@sern/modules' : Singleton<ModuleManager>; //Manages Modules
'@sern/errors': Singleton<ErrorHandling>; //A Lifetime / Crash Handler
}
-
danger

Sern#addExternal has been deprecated and removed in favor of Sern#makeDependencies

-

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, -we'll autofill with a DefaultLogger.

-
tip

If you don't want a logger, add it to the -exclude field while composing dependencies.

-

Use your generated dependency getter useContainer (use whatever name you want), access them -from anywhere.

-
note

the function useContainerRaw is provided for direct access to dependencies and the internal -data structure. Use this wisely as no guarantees are made and crashes can happen.

-

The build field follows createContainer function call.

-

New CommandTypes

-

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into -CommandType.StringSelect. The remaining SelectMenus are -CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

-
commands/roleselect.ts
export default commandModule({
type: CommandType.RoleSelect,
execute(ctx) {
ctx.reply('role select')
},
})
-

In addition, commandModules with ContextMenus have been renamed.

-
- CommandType.MenuUser, CommandType.MenuMsg 
+ CommandType.CtxUser, CommandType.CtxMsg
-

Typings Simplification

-

Pre 2.0: - -


-Post 2.0: -
-

-

CommandPlugin<T> and EventPlugin<T> typings have also been static'ified, transformed from types to interfaces

-

Breaking Changes

- -
-All deprecation warnings from previous versions have taken effect, and are removed in 2.0. -
- type Module = EventModule | CommandModule
+ type AnyModule = EventModule | CommandModule

-export type SpreadParams<T extends (...args: never) => unknown> = (
- args: Parameters<T>[number],
- ) => unknown;
-

Override type has been removed due to redundancy

-
- discord.js : 14.5
+ discord.js : 14.7

-typescript: 4.7
+ typescript: 4.9
-
+ interface Wrapper {
+ readonly defaultPrefix?: string;
+ readonly commands: string;
+ readonly events?: string;
+ readonly containerConfig : {
+ get: (...keys: (keyof Dependencies)[]) => unknown[];
+ }
+}

- interface Wrapper {
- readonly client: Client;
- readonly sernEmitter?: SernEmitter;
- readonly defaultPrefix?: string;
- readonly commands: string;
- readonly events?:
- | string
- | { mod: EventModule; absPath: string }[]
- | (() => { mod: EventModule; absPath: string }[]);
-}
-
+ DefaultLogger
+ DefaultModuleManager
+ SernEmitter
+ DefaultErrorHandling
+ type Singleton<T> = () => T
+ type Transient<T> = () => () => T;
+ type LogPayload<T = unknown> = { message: T }
+ export const single = <T>() => T
+ export const many = <T>() => () => T
-

Including the previous section, some names to symbols and data structures were altered to -be better represented. view changelog

-

Context refactoring

-

The context data structure has been internally altered to represent its dynamics better.

· 2 min read
jacoobes

Class-based modules

-

Today we're announcing the ability to create class based modules! -To get started, install

-
npm install @sern/handler@latest
-

Quick List of changes!

- -

Class based modules

-

Incorporate class based modules into your project instead of the traditional commandModule or eventModule -Extend the new CommandExecutable or EventExecutable

-
commands/meaning-of-life.ts
import { CommandType, CommandExecutable, type Args, type Context } from '@sern/handler';
import { publish } from '../plugins/publish.js';
import { serendipityOnly } from '../plugins/serendipityOnly.js';

export default class extends CommandExecutable<CommandType.Both> {
type = CommandType.Both as const;
description = 'What is the meaning of life?'
override onEvent = [
serendipityOnly()
];
override plugins = [
publish(),
];
execute = async (ctx: Context, args: Args) => {
await ctx.reply('42')
};
}
-
caution

execute must not be a method of the class. It should be as above, a property on the class!

-
events/guildMemberAdd.ts
import { CommandType, EventExecutable, type EventType } from '@sern/handler';
import type { GuildMember } from 'discord.js'

export default class extends EventExecutable<EventType.Discord> {
type = EventType.Discord as const;
execute = (member: GuildMember) => {
console.log(member)
};
}
-

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. -I believe that you should build your own structures however you might like and customize to your liking. -In addition, decorators now unofficially work with modules! -Feel free to use TypeScript experimental decorators to augment and customize your classes.

-

Deprecation Warnings

-

The next update will bring sern v2 with some important features. Here are some things to watch out for.

-
    -
  • Wrapper#client will be deprecated
  • -
  • Wrapper#sernEmitter will be deprecated -
      -
    • a SernEmitter will be automatically created once Sern#init is called
    • -
    -
  • -
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • -
  • Sern#addExternal will be deprecated in favor of a better way.
  • -
-

Dependencies Update

-
    -
  • TypeScript has been updated to 4.8.3
  • -
  • Discord.js has been upgraded to 14.5
  • -
- - \ No newline at end of file diff --git a/blog/tags/release/index.html b/blog/tags/release/index.html new file mode 100644 index 000000000..cb260d68f --- /dev/null +++ b/blog/tags/release/index.html @@ -0,0 +1,305 @@ + release | sern + + + + Skip to content

release

4 posts with the tag “release”

Release 3.0.0

3.0 Release

+

Join our discord

+

Features

+

Dependency Management

+
    +
  • Service API (recommended to use this over useContainer hooks) +
      +
    • Dependencies type must be globally augmented in order for Services api to function properly
    • +
    +
  • +
  • new methods on ModuleManager +
      +
    • getPublishableCommands()
    • +
    +
  • +
  • Init Hooks +
      +
    • implement starting behavior for dependencies
    • +
    • To enforce and type check this, use the Initializable type when making your Dependencies type!
    • +
    +
  • +
  • Emitter interface +
      +
    • More generic interface to define any event emitter
    • +
    • You can now swap out the SernEmitter with whatever emitter now.
    • +
    +
  • +
+
1
class DatabaseService implements Init {
2
//some hypothetical database
3
_pgsql : database()
4
+
5
async init() {
6
await _pgsql.load()
7
}
8
+
9
}
10
+
11
await makeDependencies({
12
build: root => root.add({
13
db: new DatabaseService() //will be init'ed automatically
14
})
15
})
+
    +
  • new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!
  • +
+
1
export default eventModule({
2
name: "modulesLoaded",
3
type: EventType.Sern,
4
execute: () => {
5
console.log("All modules loaded");
6
},
7
});
+

Quality of Life

+
    +
  • +

    faster module loading

    +
      +
    • I utilize async generators for reading files now. A lot faster than the first iteration.
    • +
    +
  • +
  • +

    better error handling

    +
  • +
  • +

    Less boilerplate

    +
      +
    • Services api cleans up v2 boilerplate
    • +
    +
  • +
  • +

    class modules devex got upgraded and work better than before

    +
  • +
  • +

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    +
      +
    • ignore commands and events with ! prefix on filename or directory (ie: !filename.ts or !directory will be ignored by sern)
    • +
    +
  • +
  • +

    Service API (recommended to use this over useContainer hooks)

    +
      +
    • Dependencies type must be globally augmented in order for Services api to function properly
    • +
    +
  • +
  • +

    Less boilerplate

    +
  • +
  • +

    new methods on ModuleManager

    +
  • +
  • +

    automatically ignore any files not ending in (mts, cts, mjs, cjs, ts, js)

    +
      +
    • ignore commands / events with ! prefix on filename or directory (ie: !filename.ts or !directory)
    • +
    +
  • +
  • +

    new SernEmitter event modulesLoaded , which allows users to customize behavior after all modules are loaded!

    +
  • +
  • +

    Init Hooks

    +
      +
    • implement starting behavior for dependencies
    • +
    +
  • +
+

Experimental

+
    +
  • Experimental things may be subject to removal, need feedback and are not guaranteed stable
  • +
  • dev / prod mode +
      +
    • sern will behave differently depending on mode set
    • +
    +
  • +
  • init sern from file option +
      +
    • reads from local sern.config.json
    • +
    +
  • +
+
1
Sern.init("file");
+

Breaking changes

+
    +
  • Sern.makeDependencies -> makeDependencies +
      +
    • it is asynchronous and top level function now. Make sure to await it before initing for proper synchronization.
    • +
    +
  • +
  • module store and manager internally changed, so those using them may recieve breaking changes
  • +
  • BaseOptions type removed
  • +
+
Sern.makeDependencies({ build: () => {} })
await makeDependencies({ build: () => {} })
+

Deprecations

+
    +
  • Removed all previous marked deprecations in v3
  • +
  • ModuleStore will be removed as a dependency in v4. The only way to access modules should be through ModuleManager
  • +
  • Default Dependencies will be made internal in the v4. Users should only have access to its interface / contract
  • +

Release 2.5.0

2.5 Release

+

Join our discord

+
    +
  • Thank you for using sern in your projects. It’s only going to get better!
  • +
  • I apologize for the sudden small breaking change. After this update, there won’t be any for a while. +Wow! We’re increasing our semantic versioning by +0.3.9
    +What does this mean?
  • +
+

Breaking changes

+ +

Deprecations

+ +

Reason

+
    +
  • The naming of plugins was getting too complex. For example, plugin naming evolved into CommandModuleCommandPlugin, CommandModuleEventPlugin and more.
  • +
  • I realize that this affects all plugins. I have updated all plugins to match these changes
  • +
  • The old way of declaring plugins has been deprecated in favor of newer functions that facilitate and ease typings + +
  • +

Release 2.0.0

2.0 Release

+

Join our discord!
+Wow! We’re finally increasing our semantic versioning by +1.7.9.
+What does this mean?

+

Plugin Support for Event Modules

+

You can now use plugins for event modules. Previous version would throw an error if the +plugins field was populated.

+
1
export function commandPlTest(): SernEmitterPlugin {
2
return {
3
type: PluginType.Command,
4
execute: ({ mod }, controller) => {
5
if (mod.name === "module.register") {
6
console.log("Event Module created correctly");
7
return controller.next();
8
}
9
console.log("event name is wrong");
10
return controller.stop();
11
},
12
};
13
}
+

Applying this plugin to some eventModule:

+
1
export default eventModule({
2
name: "error",
3
type: EventType.Sern,
4
plugins: [commandPlTest()],
5
execute(m) {
6
console.log(m);
7
},
8
});
+

Dependency Injection and Decoupling

+

The powerful npm package iti decouples sern even more. +Decoupling data structures with the Inversion of Control pattern separates data from logic, which will help speed production +and make sern even more customizable than before.

+

How do I start?

+
src/index.ts
1
//With typescript, you can customize / augment your typings.
2
interface MyDependencies extends Dependencies {
3
"@sern/client": Singleton<Client>;
4
"@sern/logger": Singleton<DefaultLogging>;
5
}
6
+
7
export const useContainer = Sern.makeDependencies<MyDependencies>({
8
// exclude: new Set(['@sern/logger']), don't autofill optional dependencies
9
build: (root) =>
10
root
11
.add({ "@sern/client": single(client) })
12
.add({ "@sern/logger": single(new DefaultLogging()) }),
13
});
14
+
15
Sern.init({
16
defaultPrefix: "!", // removing defaultPrefix will shut down text commands
17
commands: "src/commands",
18
// events: 'src/events' (optional),
19
containerConfig: {
20
get: useContainer, //pass in your dependency getter here
21
},
22
});
+

Using the Sern#makeDependencies function, inject your dependencies. +We’ll use specific dependencies that are created with the @sern/keyword +key. +Using typescript to display all keywords and what they represent:

+
1
export interface Dependencies {
2
"@sern/client": Singleton<EventEmitter>; //Discord Client
3
"@sern/logger"?: Singleton<Logging>; //Logger
4
"@sern/emitter": Singleton<SernEmitter>; //SernEmitter
5
"@sern/store": Singleton<ModuleStore>; //Stores all Command Modules
6
"@sern/modules": Singleton<ModuleManager>; //Manages Modules
7
"@sern/errors": Singleton<ErrorHandling>; //A Lifetime / Crash Handler
8
}
+ +

At the moment, one optional dependency, @sern/logger, exists. If not added explicitly, +we’ll autofill with a DefaultLogger.

+ +

Use your generated dependency getter useContainer (use whatever name you want), access them +from anywhere.

+ +

The build field follows createContainer function call.

+

New CommandTypes

+

2.0 includes all the new role select menus. CommandType.MenuSelect has been renamed into +CommandType.StringSelect. The remaining SelectMenus are +CommandType.RoleSelect, CommandType.ChannelSelect, CommandType.UserSelect, CommandType.MentionableSelect

+
commands/roleselect.ts
1
export default commandModule({
2
type: CommandType.RoleSelect,
3
execute(ctx) {
4
ctx.reply("role select");
5
},
6
});
+

In addition, commandModules with ContextMenus have been renamed.

+
CommandType.MenuUser, CommandType.MenuMsg
CommandType.CtxUser, CommandType.CtxMsg
+

Typings Simplification

+

Pre 2.0: + +


+Post 2.0: +
+

+

CommandPlugin<T> and EventPlugin<T> typings have also been static’ified, transformed from types to interfaces

+

Breaking Changes

+ +
+All deprecation warnings from previous versions have taken effect, and are removed in 2.0. +
type Module = EventModule | CommandModule
type AnyModule = EventModule | CommandModule
+
export type SpreadParams<T extends (...args: never) => unknown> = (
args: Parameters<T>[number],
) => unknown;
+

Override type has been removed due to redundancy

+
discord.js : 14.5
discord.js : 14.7
+
typescript: 4.7
typescript: 4.9
+
interface Wrapper {
readonly defaultPrefix?: string;
readonly commands: string;
readonly events?: string;
readonly containerConfig : {
get: (...keys: (keyof Dependencies)[]) => unknown[];
}
}
+
interface Wrapper {
readonly client: Client;
readonly sernEmitter?: SernEmitter;
readonly defaultPrefix?: string;
readonly commands: string;
readonly events?:
| string
| { mod: EventModule; absPath: string }[]
| (() => { mod: EventModule; absPath: string }[]);
}
+
DefaultLogger
DefaultModuleManager
SernEmitter
DefaultErrorHandling
type Singleton<T> = () => T
type Transient<T> = () => () => T;
type LogPayload<T = unknown> = { message: T }
export const single = <T>() => T
export const many = <T>() => () => T
+

Including the previous section, some names to symbols and data structures were altered to +be better represented. view changelog

+

Context refactoring

+

The context data structure has been internally altered to represent its dynamics better.

Release 1.2.0

Class-based modules

+

Today we’re announcing the ability to create class based modules! +To get started, install

+
npm install @sern/handler@latest
+

Quick List of changes!

+ +

Class based modules

+

Incorporate class based modules into your project instead of the traditional commandModule or eventModule +Extend the new CommandExecutable or EventExecutable

+
commands/meaning-of-life.ts
1
import {
2
CommandType,
3
CommandExecutable,
4
type Args,
5
type Context,
6
} from "@sern/handler";
7
import { publish } from "../plugins/publish.js";
8
import { serendipityOnly } from "../plugins/serendipityOnly.js";
9
+
10
export default class extends CommandExecutable<CommandType.Both> {
11
type = CommandType.Both as const;
12
description = "What is the meaning of life?";
13
override onEvent = [serendipityOnly()];
14
override plugins = [publish()];
15
execute = async (ctx: Context, args: Args) => {
16
await ctx.reply("42");
17
};
18
}
+ +
events/guildMemberAdd.ts
1
import { CommandType, EventExecutable, type EventType } from "@sern/handler";
2
import type { GuildMember } from "discord.js";
3
+
4
export default class extends EventExecutable<EventType.Discord> {
5
type = EventType.Discord as const;
6
execute = (member: GuildMember) => {
7
console.log(member);
8
};
9
}
+

Now, you might ask why this feature was added.
Simply put, to give flexibility to the developers. +I believe that you should build your own structures however you might like and customize to your liking. +In addition, decorators now unofficially work with modules! +Feel free to use TypeScript experimental decorators to augment and customize your classes.

+

Deprecation Warnings

+

The next update will bring sern v2 with some important features. Here are some things to watch out for.

+
    +
  • Wrapper#client will be deprecated
  • +
  • Wrapper#sernEmitter will be deprecated +
      +
    • a SernEmitter will be automatically created once Sern#init is called
    • +
    +
  • +
  • The option to pass in a function or array for Wrapper#events will be deprecated. Only strings are accepted.
  • +
  • Sern#addExternal will be deprecated in favor of a better way.
  • +
+

Dependencies Update

+
    +
  • TypeScript has been updated to 4.8.3
  • +
  • Discord.js has been upgraded to 14.5
  • +
\ No newline at end of file diff --git a/cli/about/index.html b/cli/about/index.html new file mode 100644 index 000000000..f86584f17 --- /dev/null +++ b/cli/about/index.html @@ -0,0 +1,51 @@ + About the CLI | sern + + + Skip to content

About the CLI

Publish commands to the API, install plugins, and use other tools provided by our cli.

+

The CLI is your pocketknife for discord bot development. It’ll have all features necessary for developing and shipping to production.

+
Terminal window
Usage: sern [options] [command]
+
+
___ ___ _ __ _ __
/ __|/ _ \ '__| '_ \
\__ \ __/ | | | | |
|___/\___|_| |_| |_|
+
Welcome!
+
If you're new to sern, run npm create @sern/bot for an interactive setup to your new bot project!
+
If you have any ideas, suggestions, bug reports, kindly join our support server: https://sern.dev/discord
+
Options:
-v, --version output the version number
-h, --help display help for command
+
Commands:
init [options] Quickest way to scaffold a new project [DEPRECATED]
plugins [options] Install plugins from https://github.com/sern-handler/awesome-plugins
extra Easy way to add extra things in your sern project
commands Defacto way to manage your slash commands
help [command] display help for command
\ No newline at end of file diff --git a/cli/build/index.html b/cli/build/index.html new file mode 100644 index 000000000..1edc311a8 --- /dev/null +++ b/cli/build/index.html @@ -0,0 +1,118 @@ + Build | sern + + + Skip to content

Build

Terminal window
Usage: sern build [options]
+
Build your bot
+
Options:
-f --format [fmt] The module system of your application. `cjs` or `esm` (default: "esm")
-m --mode [mode] the mode for sern to build in. `production` or `development` (default: "development")
-W --suppress-warnings suppress experimental warning
-p --project [filePath] build with this sern.build file
-h, --help display help for command
+

Guiding Principles

+

When designing the sern build command, our aim was to make building bot applications as simple as possible for the majority of developers. The setup process has been streamlined, and most of the configuration details have been handled for you. Here are some key points to keep in mind:

+
    +
  1. +

    Minimal Configuration: In the vast majority (99%) of use cases, developers do not need to configure the bot application building process. We believe that simplicity is key, so only a few decisions need to be made on the developer’s end.

    +
  2. +
  3. +

    Optimal Defaults: We’ve chosen sensible defaults. This means you can get started without getting bogged down by complex, unneeded configurations.

    +
  4. +
  5. +

    Finetuned for production bots: Our CLI leverages an opinionated build solution powered by esbuild. This ensures that bots are built without issues and can be shipped easily.

    +
  6. +
+

Experimental Features

+

Both the sern build and sern publish commands are marked as experimental. While they might not be completely stable, they are designed to work for the majority of users. We appreciate any feedback in helping us make these features even better.

+

Features

+

The sern build command comes equipped with a range of features designed to enhance your development process. Here’s a glimpse of what it offers:

+
    +
  • +

    esbuild Integration: our CLI takes inspiration from the efficiency of SvelteKit, ensuring your bot application is built effectively and with type safety. Leverage the esbuild plugin ecosystem.

    +
  • +
  • +

    Zero Configuration: Building your bot application without additional configuration. The CLI handles most of the setup for you.

    +
  • +
  • +

    Experimental Image Support: We’ve introduced experimental support for top-level imports of PNG and JPG files, making it easier to include images in your bot application.

    +
  • +
  • +

    Compile Time Constants: Customize your build with constants such as __DEV__, __PROD__, allowing you to tailor your application to different production stages.

    +
  • +
  • +

    Development and Production Modes: The CLI supports both development and production modes, enabling you to tailor your bot application for different stages of development.

    +
  • +
  • +

    Type-safe process.env: The CLI generates a type-safe process.env, reducing potential errors.

    +
  • +
+

Implicits

+
    +
  • command line arguments take precendence over sern.build configuration file
  • +
  • default build format is ESM
  • +
  • defineVersion = true
  • +
  • DEV AND PROD constants are configured.
  • +
  • only a few tsconfig options are respected.
  • +
+

sern.build.js

+
    +
  • For any extra configuration you may need
  • +
  • the cli was intentionally made to be installed globally, and we can’t provide typings at a project level. If you need typings, here they are:
  • +
+
1
type BuildOptions = {
2
/**
3
* Define __VERSION__
4
* This option is a quick switch to defining the __VERSION__ constant which will be a string of the version provided in
5
* cwd's package.json
6
*/
7
defineVersion?: boolean;
8
/**
9
* default = esm
10
*/
11
format?: "cjs" | "esm";
12
/**
13
* extra esbuild plugins to build with sern.
14
*/
15
esbuildPlugins?: esbuild.Plugin[];
16
/**
17
* https://esbuild.github.io/api/#drop-labels
18
**/
19
dropLabels?: string[];
20
/**
21
* https://esbuild.github.io/api/#define
22
**/
23
define?: Record<string, string>;
24
/**
25
* Path to tsconfig
26
**/
27
tsconfig?: string;
28
/**
29
* default = 'development'
30
*/
31
mode: "production" | "development";
32
/**
33
* will search for env file. If none exists,
34
* default to .env.
35
*/
36
env?: string;
37
};
+

Usage

+
sern build
+

(that was easy)

+

Adapting older projects

+
    +
  • Change your tsconfig.json to extend our generated one.
  • +
+
{
"extends": "./.sern/tsconfig.json",
"compilerOptions": {
// all of your old fields
}
}
+

In depth

+

We use the define and drop labels api in C style macros to have easy development stage differences. +Here is the esbuild full API documentation

+

drop labels

+
Terminal window
# mode is set to production
sern build
+ +
1
__DEV__: console.log("This is for production only");
2
__PROD__: console.log("This is for either mode");
+

constants

+

sern builds with three default constants. __DEV__, __PROD__, __VERSION__.

+
Terminal window
sern build
+

Full esbuild documentation here +Add more to the define field in build options (only availible with a sern.build file at the moment.

+

process.env

+

We generate your process.env with dotenv and generate typings for process.env. Less hassle!

+
DISCORD_TOKEN=<your token>
1
process.env.DISCORD_TOKEN; // string | undefined (not typesafe :()
\ No newline at end of file diff --git a/cli/clear/index.html b/cli/clear/index.html new file mode 100644 index 000000000..cbf461237 --- /dev/null +++ b/cli/clear/index.html @@ -0,0 +1,65 @@ + Clear | sern + + + Skip to content

Clear

Terminal window
Usage: sern commands clear [options]
+
Clear and reset commands-data-remote.json and the api
+
Options:
-y, --yes Say yes to all prompts
-e, --env [path] Supply a path to a .env
-h, --help display help for command
+

Implicits

+
    +
  • Automatically reads a .env in the working directory. For seamless integration, your .env file should look like this:
  • +
+
.env
DISCORD_TOKEN=<YOUR_TOKEN>
APPLICATION_ID=<YOUR_APPLICATION_ID>
NODE_ENV=<development|production>
+
    +
  • +

    Calls the discord API with the PUT route with an EMPTY array, essentially setting all registered commands to nothing.

    +
  • +
  • +

    Optionally override an .env path as a command line argument as well. CLI arguments take precedence. +If you do not know how to obtain either of these credentials, click here

    +
  • +
  • +

    Automatically confirm with the -y flag.

    +
  • +
+

Features

+
    +
  • Clears all application data and sern-commands-data.json
  • +
\ No newline at end of file diff --git a/cli/extra/index.html b/cli/extra/index.html new file mode 100644 index 000000000..c5d94b762 --- /dev/null +++ b/cli/extra/index.html @@ -0,0 +1,45 @@ + Extra | sern + + + Skip to content

Extra

Terminal window
Usage: sern extra [options]
+
Easy way to add extra things in your sern project
+
Options:
-h, --help display help for command
+

This command is pretty straightfoward. Install utilities into your application. Assumes you have a sern.config.json.

\ No newline at end of file diff --git a/cli/publish/index.html b/cli/publish/index.html new file mode 100644 index 000000000..e294410f5 --- /dev/null +++ b/cli/publish/index.html @@ -0,0 +1,87 @@ + Publish | sern + + + Skip to content

Publish

Terminal window
Usage: sern commands publish [options] [path]
+
New way to manage your slash commands
+
Arguments:
path path with respect to current working directory that will locate all published files
+
Options:
-i, --import [scriptPath...] Prerequire a script to load into publisher
-t, --token [token]
--appId [applicationId]
-h, --help display help for command
+

Implicits

+
    +
  • Automatically reads a .env in the working directory. For seamless integration, your .env file should look like this:
  • +
+
.env
DISCORD_TOKEN=<YOUR_TOKEN>
APPLICATION_ID=<YOUR_APPLICATION_ID>
NODE_ENV=<production|development>
+
    +
  • Calls the discord API with the PUT route. Wherever your commands directory is located, publish will override the existing application commands at Discord. Existing commands do not count towards the command limit creation daily.
  • +
+

You may pass these in as command line arguments as well. CLI arguments take precedence. +If you do not know how to obtain either of these credentials, click here

+

Usage

+

usage

+

Features

+
    +
  • Automatically syncs api with your command base
  • +
  • generates JSON file of output (.sern/command-data-remote.json)
  • +
  • supports publishing direct esm typescript files
  • +
  • commonjs + javascript users need to compile first and then run sern publish on the dist/ output
  • +
  • prerequire scripts.
  • +
  • supports a configuration that is the same as the original publish plugin.
  • +
+

Each command file can have an extra config that follows ValidPublishOptions:

+

Config

+
1
type ValidMemberPermissions =
2
| PermissionFlagBits //discord.js enum
3
| PermissionFlagBits[] //array of discord.js enum
4
| string //must be a stringified number
5
| bigint
6
+
7
interface PublishConfig {
8
guildIds?: string[];
9
dmPermission?: boolean;
10
defaultMemberPermissions: ValidMemberPermissions;
11
}
12
type ValidPublishOptions =
13
| PublishConfig
14
| (absPath: string, module: CommandModule) => PublishConfig
+

In other words, you can export a function or object.

+

Prerequiring

+

Is there a service that is required at the top level of a command?

+
    +
  • Create an ES6 script anywhere:
  • +
+
scripts/prerequire.mjs
1
import { makeDependencies, single, Service } from "@sern/handler";
2
import { Client } from "discord.js";
3
+
4
await makeDependencies({
5
build: (root) =>
6
root.add({ "@sern/client": single(() => new Client(...options)) }),
7
});
8
+
9
await Service("@sern/client").login();
+

This will create a container for publishing. (as of 0.6.0, client is required or this will crash)

+

Example: command published in guild

+

Script ran:

+
sern commands publish -i ./scripts/prerequire.mjs
+
src/commands/ping.ts
1
import { commandModule, Service, CommandType } from '@sern/handler'
2
+
3
const client = Service('@sern/client');
4
+
5
export const config = {
6
guildIds: ["889026545715400705"]
7
}
8
+
9
export default commandModule( {
10
type: CommandType.Slash
11
description: `${client.user.username}'s ping`,
12
execute: (ctx) => {
13
ctx.reply('pong')
14
}
15
})
\ No newline at end of file diff --git a/discord.html b/discord.html deleted file mode 100644 index c072abd8f..000000000 --- a/discord.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - sern - Redirecting to Discord... - - - -

Redirecting you to the Discord server. Click here if the link doesn't work!

- - \ No newline at end of file diff --git a/discord/index.html b/discord/index.html new file mode 100644 index 000000000..c05bde3ba --- /dev/null +++ b/discord/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/api.html b/docs/api.html deleted file mode 100644 index f0e5b761f..000000000 --- a/docs/api.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - -@sern/handler | sern - Handlers. Redefined. - - - - - - - - - - - -

@sern/handler

- -
-

Handlers. Redefined.

-

A complete, customizable, typesafe, & reactive framework for discord bots

-
- - NPM version - NPM downloads - License MIT - docs.rs - Lines of code -
-

Why?

-
    -
  • For you. A framework that's tailored to your exact needs.
  • -
  • Lightweight. Does a lot while being small.
  • -
  • Latest features. Support for discord.js v14 and all of its interactions.
  • -
  • Start quickly. Plug and play or customize to your liking.
  • -
  • works with bun and node out the box!
  • -
  • Use it with TypeScript or JavaScript. CommonJS and ESM supported.
  • -
  • Active and growing community, always here to help. Join us
  • -
  • Unleash its full potential with a powerful CLI and awesome plugins.
  • -
-

📜 Installation

-

Start here!!

-

👶 Basic Usage

-
ping.ts
-
export default commandModule({
type: CommandType.Slash,
//Installed plugin to publish to discord api and allow access to owners only.
plugins: [publish(), ownerOnly()],
description: 'A ping pong command',
execute(ctx) {
ctx.reply('Hello owner of the bot');
}
});
-
-

🤖 Bots Using sern

-
    -
  • Community Bot, the community bot for our discord server.
  • -
  • Vinci, the bot for Mara Turing.
  • -
  • Bask, Listen your favorite artists on Discord.
  • -
  • ava, A discord bot that plays KNGI and Gensokyo Radio.
  • -
  • Murayama, :pepega:
  • -
  • Protector (WIP), Just a simple bot to help enhance a private minecraft server.
  • -
  • SmokinWeed 💨, A fun bot for a small - but growing - server.
  • -
  • Man Nomic, A simple information bot to provide information to the nomic-ai discord community.
  • -
  • Linear-Discord Display and manage a linear dashboard.
  • -
-

💻 CLI

-

It is highly encouraged to use the command line interface for your project. Don't forget to view it.

- - -

👋 Contribute

-
    -
  • Read our contribution guidelines carefully
  • -
  • Pull up on issues and report bugs
  • -
  • All kinds of contributions are welcomed.
  • -
- - \ No newline at end of file diff --git a/docs/api/classes/CommandExecutable.html b/docs/api/classes/CommandExecutable.html deleted file mode 100644 index 7c5f37013..000000000 --- a/docs/api/classes/CommandExecutable.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - -Class: CommandExecutable<Type> | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: CommandExecutable<Type>

Deprecated

-

Will be removed in future

-

Type parameters

- - - - - - - - - - - - - -
NameType
Typeextends CommandType = CommandType
-

Constructors

-

constructor

-

new CommandExecutable<Type>(): CommandExecutable<Type>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Typeextends CommandType = CommandType
-

Returns

-

CommandExecutable<Type>

-

Properties

-

plugins

-

plugins: AnyCommandPlugin[] = []

-

Defined in

-

src/core/modules.ts:80

-
-

type

-

Abstract type: Type

-

Defined in

-

src/core/modules.ts:79

-
-

_instance

-

Static Private _instance: CommandModule

-

Defined in

-

src/core/modules.ts:81

-

Methods

-

execute

-

execute(...args): unknown

-

Parameters

- - - - - - - - - - - - - -
NameType
...argsCommandArgs<Type, Control>
-

Returns

-

unknown

-

Defined in

-

src/core/modules.ts:92

-
-

getInstance

-

getInstance(): CommandModule

-

Returns

-

CommandModule

-

Defined in

-

src/core/modules.ts:83

- - \ No newline at end of file diff --git a/docs/api/classes/Context.html b/docs/api/classes/Context.html deleted file mode 100644 index 91d1bb7e2..000000000 --- a/docs/api/classes/Context.html +++ /dev/null @@ -1,231 +0,0 @@ - - - - - -Class: Context | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: Context

Since

-

1.0.0 -Provides values shared between -Message and ChatInputCommandInteraction

-

Hierarchy

-
    -
  • -

    CoreContext<Message, ChatInputCommandInteraction>

    -

    Context

    -
  • -
-

Constructors

-

constructor

-

new Context(ctx): Context

-

Parameters

- - - - - - - - - - - - - -
NameType
ctxResult<Message<boolean>, ChatInputCommandInteraction<CacheType>>
-

Returns

-

Context

-

Overrides

-

CoreContext&lt;Message, ChatInputCommandInteraction&gt;.constructor

-

Defined in

-

src/core/structures/context.ts:29

-

Properties

-

ctx

-

Protected ctx: Result<Message<boolean>, ChatInputCommandInteraction<CacheType>>

-

Inherited from

-

CoreContext.ctx

-

Defined in

-

src/core/structures/context.ts:29

-

Accessors

-

channel

-

get channel(): null | TextBasedChannel

-

Returns

-

null | TextBasedChannel

-

Defined in

-

src/core/structures/context.ts:39

-
-

channelId

-

get channelId(): string

-

Returns

-

string

-

Defined in

-

src/core/structures/context.ts:45

-
-

client

-

get client(): Client<boolean>

-

Returns

-

Client<boolean>

-

Defined in

-

src/core/structures/context.ts:91

-
-

createdTimestamp

-

get createdTimestamp(): number

-

Returns

-

number

-

Defined in

-

src/core/structures/context.ts:65

-
-

guild

-

get guild(): null | Guild

-

Returns

-

null | Guild

-

Defined in

-

src/core/structures/context.ts:71

-
-

guildId

-

get guildId(): null | string

-

Returns

-

null | string

-

Defined in

-

src/core/structures/context.ts:77

-
-

id

-

get id(): string

-

Returns

-

string

-

Defined in

-

src/core/structures/context.ts:33

-
-

inGuild

-

get inGuild(): boolean

-

Returns

-

boolean

-

Defined in

-

src/core/structures/context.ts:97

-
-

interaction

-

get interaction(): I

-

Returns

-

I

-

Inherited from

-

CoreContext.interaction

-

Defined in

-

src/core/structures/core-context.ts:15

-
-

member

-

get member(): null | GuildMember | APIInteractionGuildMember

-

Returns

-

null | GuildMember | APIInteractionGuildMember

-

Defined in

-

src/core/structures/context.ts:85

-
-

message

-

get message(): M

-

Returns

-

M

-

Inherited from

-

CoreContext.message

-

Defined in

-

src/core/structures/core-context.ts:12

-
-

options

-

get options(): Omit<CommandInteractionOptionResolver<CacheType>, "getMessage" | "getFocused">

-

Returns

-

Omit<CommandInteractionOptionResolver<CacheType>, "getMessage" | "getFocused">

-

Overrides

-

CoreContext.options

-

Defined in

-

src/core/structures/context.ts:26

-
-

user

-

get user(): User

-

If context is holding a message, message.author -else, interaction.user

-

Returns

-

User

-

Defined in

-

src/core/structures/context.ts:55

-
-

userId

-

get userId(): string

-

Returns

-

string

-

Defined in

-

src/core/structures/context.ts:61

-

Methods

-

isMessage

-

isMessage(): this is CoreContext<Message<boolean>, never>

-

Returns

-

this is CoreContext<Message<boolean>, never>

-

Inherited from

-

CoreContext.isMessage

-

Defined in

-

src/core/structures/core-context.ts:19

-
-

isSlash

-

isSlash(): this is CoreContext<never, ChatInputCommandInteraction<CacheType>>

-

Returns

-

this is CoreContext<never, ChatInputCommandInteraction<CacheType>>

-

Inherited from

-

CoreContext.isSlash

-

Defined in

-

src/core/structures/core-context.ts:23

-
-

reply

-

reply(content): Promise<Message<boolean>>

-

Parameters

- - - - - - - - - - - - - -
NameType
contentReplyOptions
-

Returns

-

Promise<Message<boolean>>

-

Defined in

-

src/core/structures/context.ts:103

-
-

wrap

-

wrap(wrappable): Context

-

Parameters

- - - - - - - - - - - - - -
NameType
wrappableMessage<boolean> | BaseInteraction<CacheType>
-

Returns

-

Context

-

Overrides

-

CoreContext.wrap

-

Defined in

-

src/core/structures/context.ts:113

- - \ No newline at end of file diff --git a/docs/api/classes/DefaultErrorHandling.html b/docs/api/classes/DefaultErrorHandling.html deleted file mode 100644 index c5e6685f6..000000000 --- a/docs/api/classes/DefaultErrorHandling.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Class: DefaultErrorHandling | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: DefaultErrorHandling

Since

-

2.0.0 -Version 4.0.0 will internalize this api. Please refrain from using the defaults!

-

Implements

- -

Constructors

-

constructor

-

new DefaultErrorHandling(): DefaultErrorHandling

-

Returns

-

DefaultErrorHandling

-

Properties

-

#keepAlive

-

Private #keepAlive: number = 1

-

Defined in

-

src/core/structures/services/error-handling.ts:13

-

Methods

-

crash

-

crash(err): never

-

Parameters

- - - - - - - - - - - - - -
NameType
errError
-

Returns

-

never

-

Deprecated

-

Version 4 will remove this method

-

Implementation of

-

ErrorHandling.crash

-

Defined in

-

src/core/structures/services/error-handling.ts:9

-
-

updateAlive

-

updateAlive(err): void

-

A function that is called on every throw.

-

Parameters

- - - - - - - - - - - - - -
NameType
errError
-

Returns

-

void

-

Implementation of

-

ErrorHandling.updateAlive

-

Defined in

-

src/core/structures/services/error-handling.ts:15

- - \ No newline at end of file diff --git a/docs/api/classes/DefaultLogging.html b/docs/api/classes/DefaultLogging.html deleted file mode 100644 index fce05d4ee..000000000 --- a/docs/api/classes/DefaultLogging.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - -Class: DefaultLogging | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: DefaultLogging

Since

-

2.0.0 -Version 4.0.0 will internalize this api. Please refrain from using ModuleStore!

-

Implements

- -

Constructors

-

constructor

-

new DefaultLogging(): DefaultLogging

-

Returns

-

DefaultLogging

-

Methods

-

date

-

date(): Date

-

Returns

-

Date

-

Defined in

-

src/core/structures/services/logger.ts:9

-
-

debug

-

debug(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload
-

Returns

-

void

-

Implementation of

-

Logging.debug

-

Defined in

-

src/core/structures/services/logger.ts:10

-
-

error

-

error(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload
-

Returns

-

void

-

Implementation of

-

Logging.error

-

Defined in

-

src/core/structures/services/logger.ts:14

-
-

info

-

info(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload
-

Returns

-

void

-

Implementation of

-

Logging.info

-

Defined in

-

src/core/structures/services/logger.ts:18

-
-

warning

-

warning(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload
-

Returns

-

void

-

Implementation of

-

Logging.warning

-

Defined in

-

src/core/structures/services/logger.ts:22

- - \ No newline at end of file diff --git a/docs/api/classes/DefaultModuleManager.html b/docs/api/classes/DefaultModuleManager.html deleted file mode 100644 index a16cb2670..000000000 --- a/docs/api/classes/DefaultModuleManager.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - -Class: DefaultModuleManager | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: DefaultModuleManager

Since

-

2.0.0 -Version 4.0.0 will internalize this api. Please refrain from using DefaultModuleManager!

-

Implements

- -

Constructors

-

constructor

-

new DefaultModuleManager(moduleStore): DefaultModuleManager

-

Parameters

- - - - - - - - - - - - - -
NameType
moduleStoreCoreModuleStore
-

Returns

-

DefaultModuleManager

-

Defined in

-

src/core/structures/services/module-manager.ts:11

-

Properties

-

moduleStore

-

Private moduleStore: CoreModuleStore

-

Defined in

-

src/core/structures/services/module-manager.ts:11

-

Methods

-

get

-

get(id): undefined | Module

-

Parameters

- - - - - - - - - - - - - -
NameType
idstring
-

Returns

-

undefined | Module

-

Implementation of

-

ModuleManager.get

-

Defined in

-

src/core/structures/services/module-manager.ts:34

-
-

getByNameCommandType

-

getByNameCommandType<T>(name, commandType): undefined | CommandModuleDefs[T]

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends CommandType
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
namestring
commandTypeT
-

Returns

-

undefined | CommandModuleDefs[T]

-

Implementation of

-

ModuleManager.getByNameCommandType

-

Defined in

-

src/core/structures/services/module-manager.ts:14

-
-

getMetadata

-

getMetadata(m): CommandMeta

-

Parameters

- - - - - - - - - - - - - -
NameType
mModule
-

Returns

-

CommandMeta

-

Implementation of

-

ModuleManager.getMetadata

-

Defined in

-

src/core/structures/services/module-manager.ts:26

-
-

getPublishableCommands

-

getPublishableCommands(): CommandModule[]

-

Returns

-

CommandModule[]

-

Deprecated

-

Implementation of

-

ModuleManager.getPublishableCommands

-

Defined in

-

src/core/structures/services/module-manager.ts:41

-
-

set

-

set(id, path): void

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
idstring
pathCommandModule
-

Returns

-

void

-

Implementation of

-

ModuleManager.set

-

Defined in

-

src/core/structures/services/module-manager.ts:37

-
-

setMetadata

-

setMetadata(m, c): void

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
mModule
cCommandMeta
-

Returns

-

void

-

Implementation of

-

ModuleManager.setMetadata

-

Defined in

-

src/core/structures/services/module-manager.ts:22

- - \ No newline at end of file diff --git a/docs/api/classes/EventExecutable.html b/docs/api/classes/EventExecutable.html deleted file mode 100644 index c34012118..000000000 --- a/docs/api/classes/EventExecutable.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - -Class: EventExecutable<Type> | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: EventExecutable<Type>

Deprecated

-

Will be removed in future

-

Type parameters

- - - - - - - - - - - - - -
NameType
Typeextends EventType
-

Constructors

-

constructor

-

new EventExecutable<Type>(): EventExecutable<Type>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Typeextends EventType
-

Returns

-

EventExecutable<Type>

-

Properties

-

plugins

-

plugins: AnyEventPlugin[] = []

-

Defined in

-

src/core/modules.ts:101

-
-

type

-

Abstract type: Type

-

Defined in

-

src/core/modules.ts:100

-
-

_instance

-

Static Private _instance: EventModule

-

Defined in

-

src/core/modules.ts:103

-

Methods

-

execute

-

execute(...args): unknown

-

Parameters

- - - - - - - - - - - - - -
NameType
...argsEventArgs<Type, Control>
-

Returns

-

unknown

-

Defined in

-

src/core/modules.ts:112

-
-

getInstance

-

getInstance(): EventModule

-

Returns

-

EventModule

-

Defined in

-

src/core/modules.ts:104

- - \ No newline at end of file diff --git a/docs/api/classes/ModuleStore.html b/docs/api/classes/ModuleStore.html deleted file mode 100644 index 6f979132a..000000000 --- a/docs/api/classes/ModuleStore.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - -Class: ModuleStore | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/classes/SernEmitter.html b/docs/api/classes/SernEmitter.html deleted file mode 100644 index cec53be69..000000000 --- a/docs/api/classes/SernEmitter.html +++ /dev/null @@ -1,1112 +0,0 @@ - - - - - -Class: SernEmitter | sern - Handlers. Redefined. - - - - - - - - - - - -

Class: SernEmitter

Since

-

1.0.0

-

Hierarchy

-
    -
  • -

    EventEmitter

    -

    SernEmitter

    -
  • -
-

Constructors

-

constructor

-

new SernEmitter(): SernEmitter

-

Returns

-

SernEmitter

-

Overrides

-

EventEmitter.constructor

-

Defined in

-

src/core/structures/sern-emitter.ts:10

-

Properties

-

captureRejectionSymbol

-

Static Readonly captureRejectionSymbol: typeof captureRejectionSymbol

-

Inherited from

-

EventEmitter.captureRejectionSymbol

-

Defined in

-

node_modules/@types/node/events.d.ts:357

-
-

captureRejections

-

Static captureRejections: boolean

-

Sets or gets the default captureRejection value for all emitters.

-

Inherited from

-

EventEmitter.captureRejections

-

Defined in

-

node_modules/@types/node/events.d.ts:362

-
-

defaultMaxListeners

-

Static defaultMaxListeners: number

-

Inherited from

-

EventEmitter.defaultMaxListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:363

-
-

errorMonitor

-

Static Readonly errorMonitor: typeof errorMonitor

-

This symbol shall be used to install a listener for only monitoring 'error' -events. Listeners installed using this symbol are called before the regular -'error' listeners are called.

-

Installing a listener using this symbol does not change the behavior once an -'error' event is emitted, therefore the process will still crash if no -regular 'error' listener is installed.

-

Inherited from

-

EventEmitter.errorMonitor

-

Defined in

-

node_modules/@types/node/events.d.ts:356

-

Methods

-

addListener

-

addListener(eventName, listener): SernEmitter

-

Alias for emitter.on(eventName, listener).

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventNamestring | symbol
listener(...args: any[]) => void
-

Returns

-

SernEmitter

-

Since

-

v0.1.26

-

Inherited from

-

EventEmitter.addListener

-

Defined in

-

node_modules/@types/node/events.d.ts:383

-
-

emit

-

emit<T>(eventName, ...args): boolean

-

Listening to sern events with on. This event stays on until a crash or a normal exit

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof SernEventsMapping
-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
eventNameT
...argsSernEventsMapping[T]the arguments for emitting the eventName
-

Returns

-

boolean

-

Overrides

-

EventEmitter.emit

-

Defined in

-

src/core/structures/sern-emitter.ts:40

-
-

eventNames

-

eventNames(): (string | symbol)[]

-

Returns an array listing the events for which the emitter has registered -listeners. The values in the array are strings or Symbols.

-
const EventEmitter = require('events');
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});

const sym = Symbol('symbol');
myEE.on(sym, () => {});

console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
-

Returns

-

(string | symbol)[]

-

Since

-

v6.0.0

-

Inherited from

-

EventEmitter.eventNames

-

Defined in

-

node_modules/@types/node/events.d.ts:702

-
-

getMaxListeners

-

getMaxListeners(): number

-

Returns the current max listener value for the EventEmitter which is either -set by emitter.setMaxListeners(n) or defaults to defaultMaxListeners.

-

Returns

-

number

-

Since

-

v1.0.0

-

Inherited from

-

EventEmitter.getMaxListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:555

-
-

listenerCount

-

listenerCount(eventName, listener?): number

-

Returns the number of listeners listening to the event named eventName.

-

If listener is provided, it will return how many times the listener -is found in the list of the listeners of the event.

-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
eventNamestring | symbolThe name of the event being listened for
listener?FunctionThe event handler function
-

Returns

-

number

-

Since

-

v3.2.0

-

Inherited from

-

EventEmitter.listenerCount

-

Defined in

-

node_modules/@types/node/events.d.ts:649

-
-

listeners

-

listeners(eventName): Function[]

-

Returns a copy of the array of listeners for the event named eventName.

-
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
-

Parameters

- - - - - - - - - - - - - -
NameType
eventNamestring | symbol
-

Returns

-

Function[]

-

Since

-

v0.1.26

-

Inherited from

-

EventEmitter.listeners

-

Defined in

-

node_modules/@types/node/events.d.ts:568

-
-

off

-

off(eventName, listener): SernEmitter

-

Alias for emitter.removeListener().

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventNamestring | symbol
listener(...args: any[]) => void
-

Returns

-

SernEmitter

-

Since

-

v10.0.0

-

Inherited from

-

EventEmitter.off

-

Defined in

-

node_modules/@types/node/events.d.ts:528

-
-

on

-

on<T>(eventName, listener): SernEmitter

-

Listening to sern events with on. This event stays on until a crash or a normal exit

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof SernEventsMapping
-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
eventNameT
listener(...args: SernEventsMapping[T][]) => voidwhat to do with the data
-

Returns

-

SernEmitter

-

Overrides

-

EventEmitter.on

-

Defined in

-

src/core/structures/sern-emitter.ts:18

-
-

once

-

once<T>(eventName, listener): SernEmitter

-

Listening to sern events with on. This event stays on until a crash or a normal exit

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof SernEventsMapping
-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
eventNameT
listener(...args: SernEventsMapping[T][]) => voidwhat to do with the data
-

Returns

-

SernEmitter

-

Overrides

-

EventEmitter.once

-

Defined in

-

src/core/structures/sern-emitter.ts:29

-
-

prependListener

-

prependListener(eventName, listener): SernEmitter

-

Adds the listener function to the beginning of the listeners array for the -event named eventName. No checks are made to see if the listener has -already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple -times.

-
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
-

Returns a reference to the EventEmitter, so that calls can be chained.

-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
eventNamestring | symbolThe name of the event.
listener(...args: any[]) => voidThe callback function
-

Returns

-

SernEmitter

-

Since

-

v6.0.0

-

Inherited from

-

EventEmitter.prependListener

-

Defined in

-

node_modules/@types/node/events.d.ts:667

-
-

prependOnceListener

-

prependOnceListener(eventName, listener): SernEmitter

-

Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this -listener is removed, and then invoked.

-
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
-

Returns a reference to the EventEmitter, so that calls can be chained.

-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
eventNamestring | symbolThe name of the event.
listener(...args: any[]) => voidThe callback function
-

Returns

-

SernEmitter

-

Since

-

v6.0.0

-

Inherited from

-

EventEmitter.prependOnceListener

-

Defined in

-

node_modules/@types/node/events.d.ts:683

-
-

rawListeners

-

rawListeners(eventName): Function[]

-

Returns a copy of the array of listeners for the event named eventName, -including any wrappers (such as those created by .once()).

-
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));

// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];

// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();

// Logs "log once" to the console and removes the listener
logFnWrapper();

emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');

// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
-

Parameters

- - - - - - - - - - - - - -
NameType
eventNamestring | symbol
-

Returns

-

Function[]

-

Since

-

v9.4.0

-

Inherited from

-

EventEmitter.rawListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:598

-
-

removeAllListeners

-

removeAllListeners(event?): SernEmitter

-

Removes all listeners, or those of the specified eventName.

-

It is bad practice to remove listeners added elsewhere in the code, -particularly when the EventEmitter instance was created by some other -component or module (e.g. sockets or file streams).

-

Returns a reference to the EventEmitter, so that calls can be chained.

-

Parameters

- - - - - - - - - - - - - -
NameType
event?string | symbol
-

Returns

-

SernEmitter

-

Since

-

v0.1.26

-

Inherited from

-

EventEmitter.removeAllListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:539

-
-

removeListener

-

removeListener(eventName, listener): SernEmitter

-

Removes the specified listener from the listener array for the event namedeventName.

-
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
-

removeListener() will remove, at most, one instance of a listener from the -listener array. If any single listener has been added multiple times to the -listener array for the specified eventName, then removeListener() must be -called multiple times to remove each instance.

-

Once an event is emitted, all listeners attached to it at the -time of emitting are called in order. This implies that anyremoveListener() or removeAllListeners() calls after emitting and before the last listener finishes execution -will not remove them fromemit() in progress. Subsequent events behave as expected.

-
const myEmitter = new MyEmitter();

const callbackA = () => {
console.log('A');
myEmitter.removeListener('event', callbackB);
};

const callbackB = () => {
console.log('B');
};

myEmitter.on('event', callbackA);

myEmitter.on('event', callbackB);

// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
// A
// B

// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
// A
-

Because listeners are managed using an internal array, calling this will -change the position indices of any listener registered after the listener -being removed. This will not impact the order in which listeners are called, -but it means that any copies of the listener array as returned by -the emitter.listeners() method will need to be recreated.

-

When a single function has been added as a handler multiple times for a single -event (as in the example below), removeListener() will remove the most -recently added instance. In the example the once('ping')listener is removed:

-
const ee = new EventEmitter();

function pong() {
console.log('pong');
}

ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);

ee.emit('ping');
ee.emit('ping');
-

Returns a reference to the EventEmitter, so that calls can be chained.

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventNamestring | symbol
listener(...args: any[]) => void
-

Returns

-

SernEmitter

-

Since

-

v0.1.26

-

Inherited from

-

EventEmitter.removeListener

-

Defined in

-

node_modules/@types/node/events.d.ts:523

-
-

setMaxListeners

-

setMaxListeners(n): SernEmitter

-

By default EventEmitters will print a warning if more than 10 listeners are -added for a particular event. This is a useful default that helps finding -memory leaks. The emitter.setMaxListeners() method allows the limit to be -modified for this specific EventEmitter instance. The value can be set toInfinity (or 0) to indicate an unlimited number of listeners.

-

Returns a reference to the EventEmitter, so that calls can be chained.

-

Parameters

- - - - - - - - - - - - - -
NameType
nnumber
-

Returns

-

SernEmitter

-

Since

-

v0.3.5

-

Inherited from

-

EventEmitter.setMaxListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:549

-
-

failure

-

failure(module?, reason?): Object

-

Creates a compliant SernEmitter failure payload

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
module?Module
reason?unknown
-

Returns

-

Object

- - - - - - - - - - - - - - - - - - - - - -
NameType
module?AnyModule
reasonstring | Error
typeFailure
-

Defined in

-

src/core/structures/sern-emitter.ts:59

-
-

getEventListeners

-

getEventListeners(emitter, name): Function[]

-

Returns a copy of the array of listeners for the event named eventName.

-

For EventEmitters this behaves exactly the same as calling .listeners on -the emitter.

-

For EventTargets this is the only way to get the event listeners for the -event target. This is useful for debugging and diagnostic purposes.

-
const { getEventListeners, EventEmitter } = require('events');

{
const ee = new EventEmitter();
const listener = () => console.log('Events are fun');
ee.on('foo', listener);
getEventListeners(ee, 'foo'); // [listener]
}
{
const et = new EventTarget();
const listener = () => console.log('Events are fun');
et.addEventListener('foo', listener);
getEventListeners(et, 'foo'); // [listener]
}
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
emitterEventEmitter | _DOMEventTarget
namestring | symbol
-

Returns

-

Function[]

-

Since

-

v15.2.0, v14.17.0

-

Inherited from

-

EventEmitter.getEventListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:299

-
-

getMaxListeners

-

getMaxListeners(emitter): number

-

Returns the currently set max amount of listeners.

-

For EventEmitters this behaves exactly the same as calling .getMaxListeners on -the emitter.

-

For EventTargets this is the only way to get the max event listeners for the -event target. If the number of event handlers on a single EventTarget exceeds -the max set, the EventTarget will print a warning.

-
import { getMaxListeners, setMaxListeners, EventEmitter } from 'node:events';

{
const ee = new EventEmitter();
console.log(getMaxListeners(ee)); // 10
setMaxListeners(11, ee);
console.log(getMaxListeners(ee)); // 11
}
{
const et = new EventTarget();
console.log(getMaxListeners(et)); // 10
setMaxListeners(11, et);
console.log(getMaxListeners(et)); // 11
}
-

Parameters

- - - - - - - - - - - - - -
NameType
emitterEventEmitter | _DOMEventTarget
-

Returns

-

number

-

Since

-

v18.17.0

-

Inherited from

-

EventEmitter.getMaxListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:328

-
-

listenerCount

-

listenerCount(emitter, eventName): number

-

A class method that returns the number of listeners for the given eventNameregistered on the given emitter.

-
const { EventEmitter, listenerCount } = require('events');
const myEmitter = new EventEmitter();
myEmitter.on('event', () => {});
myEmitter.on('event', () => {});
console.log(listenerCount(myEmitter, 'event'));
// Prints: 2
-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
emitterEventEmitterThe emitter to query
eventNamestring | symbolThe event name
-

Returns

-

number

-

Since

-

v0.9.12

-

Deprecated

-

Since v3.2.0 - Use listenerCount instead.

-

Inherited from

-

EventEmitter.listenerCount

-

Defined in

-

node_modules/@types/node/events.d.ts:271

-
-

on

-

on(emitter, eventName, options?): AsyncIterableIterator<any>

-
const { on, EventEmitter } = require('events');

(async () => {
const ee = new EventEmitter();

// Emit later on
process.nextTick(() => {
ee.emit('foo', 'bar');
ee.emit('foo', 42);
});

for await (const event of on(ee, 'foo')) {
// The execution of this inner block is synchronous and it
// processes one event at a time (even with await). Do not use
// if concurrent execution is required.
console.log(event); // prints ['bar'] [42]
}
// Unreachable here
})();
-

Returns an AsyncIterator that iterates eventName events. It will throw -if the EventEmitter emits 'error'. It removes all listeners when -exiting the loop. The value returned by each iteration is an array -composed of the emitted event arguments.

-

An AbortSignal can be used to cancel waiting on events:

-
const { on, EventEmitter } = require('events');
const ac = new AbortController();

(async () => {
const ee = new EventEmitter();

// Emit later on
process.nextTick(() => {
ee.emit('foo', 'bar');
ee.emit('foo', 42);
});

for await (const event of on(ee, 'foo', { signal: ac.signal })) {
// The execution of this inner block is synchronous and it
// processes one event at a time (even with await). Do not use
// if concurrent execution is required.
console.log(event); // prints ['bar'] [42]
}
// Unreachable here
})();

process.nextTick(() => ac.abort());
-

Parameters

- - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
emitterEventEmitter-
eventNamestringThe name of the event being listened for
options?StaticEventEmitterOptions-
-

Returns

-

AsyncIterableIterator<any>

-

that iterates eventName events emitted by the emitter

-

Since

-

v13.6.0, v12.16.0

-

Inherited from

-

EventEmitter.on

-

Defined in

-

node_modules/@types/node/events.d.ts:254

-

on<Emitter, Events>(eventEmitter, eventName): AsyncIterableIterator<Emitter extends Client<boolean> ? ClientEvents[Events] : any>

-

Type parameters

- - - - - - - - - - - - - - - - - -
NameType
Emitterextends __module
Eventsextends keyof ClientEvents
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventEmitterEmitter
eventNameEmitter extends Client<boolean> ? Events : string
-

Returns

-

AsyncIterableIterator<Emitter extends Client<boolean> ? ClientEvents[Events] : any>

-

Inherited from

-

EventEmitter.on

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:243

-
-

once

-

once(emitter, eventName, options?): Promise<any[]>

-

Creates a Promise that is fulfilled when the EventEmitter emits the given -event or that is rejected if the EventEmitter emits 'error' while waiting. -The Promise will resolve with an array of all the arguments emitted to the -given event.

-

This method is intentionally generic and works with the web platform EventTarget interface, which has no special'error' event -semantics and does not listen to the 'error' event.

-
const { once, EventEmitter } = require('events');

async function run() {
const ee = new EventEmitter();

process.nextTick(() => {
ee.emit('myevent', 42);
});

const [value] = await once(ee, 'myevent');
console.log(value);

const err = new Error('kaboom');
process.nextTick(() => {
ee.emit('error', err);
});

try {
await once(ee, 'myevent');
} catch (err) {
console.log('error happened', err);
}
}

run();
-

The special handling of the 'error' event is only used when events.once()is used to wait for another event. If events.once() is used to wait for the -'error' event itself, then it is treated as any other kind of event without -special handling:

-
const { EventEmitter, once } = require('events');

const ee = new EventEmitter();

once(ee, 'error')
.then(([err]) => console.log('ok', err.message))
.catch((err) => console.log('error', err.message));

ee.emit('error', new Error('boom'));

// Prints: ok boom
-

An AbortSignal can be used to cancel waiting for the event:

-
const { EventEmitter, once } = require('events');

const ee = new EventEmitter();
const ac = new AbortController();

async function foo(emitter, event, signal) {
try {
await once(emitter, event, { signal });
console.log('event emitted!');
} catch (error) {
if (error.name === 'AbortError') {
console.error('Waiting for the event was canceled!');
} else {
console.error('There was an error', error.message);
}
}
}

foo(ee, 'foo', ac.signal);
ac.abort(); // Abort waiting for the event
ee.emit('foo'); // Prints: Waiting for the event was canceled!
-

Parameters

- - - - - - - - - - - - - - - - - - - - - -
NameType
emitter_NodeEventTarget
eventNamestring | symbol
options?StaticEventEmitterOptions
-

Returns

-

Promise<any[]>

-

Since

-

v11.13.0, v10.16.0

-

Inherited from

-

EventEmitter.once

-

Defined in

-

node_modules/@types/node/events.d.ts:194

-

once(emitter, eventName, options?): Promise<any[]>

-

Parameters

- - - - - - - - - - - - - - - - - - - - - -
NameType
emitter_DOMEventTarget
eventNamestring
options?StaticEventEmitterOptions
-

Returns

-

Promise<any[]>

-

Inherited from

-

EventEmitter.once

-

Defined in

-

node_modules/@types/node/events.d.ts:195

-

once<Emitter, Event>(eventEmitter, eventName): Promise<Emitter extends Client<boolean> ? ClientEvents[Event] : any[]>

-

Type parameters

- - - - - - - - - - - - - - - - - -
NameType
Emitterextends __module
Eventextends keyof ClientEvents
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventEmitterEmitter
eventNameEmitter extends Client<boolean> ? Event : string
-

Returns

-

Promise<Emitter extends Client<boolean> ? ClientEvents[Event] : any[]>

-

Inherited from

-

EventEmitter.once

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:239

-
-

payload

-

payload<T>(type, module?, reason?): T

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends Payload
-

Parameters

- - - - - - - - - - - - - - - - - - - - - -
NameType
typePayloadType
module?Module
reason?unknown
-

Returns

-

T

-

Defined in

-

src/core/structures/sern-emitter.ts:46

-
-

setMaxListeners

-

setMaxListeners(n?, ...eventTargets): void

-
const {
setMaxListeners,
EventEmitter
} = require('events');

const target = new EventTarget();
const emitter = new EventEmitter();

setMaxListeners(5, target, emitter);
-

Parameters

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
n?numberA non-negative number. The maximum number of listeners per EventTarget event.
...eventTargets(EventEmitter | _DOMEventTarget)[]-
-

Returns

-

void

-

Since

-

v15.4.0

-

Inherited from

-

EventEmitter.setMaxListeners

-

Defined in

-

node_modules/@types/node/events.d.ts:346

-
-

success

-

success(module): Object

-

Creates a compliant SernEmitter module success payload

-

Parameters

- - - - - - - - - - - - - -
NameType
moduleModule
-

Returns

-

Object

- - - - - - - - - - - - - - - - - -
NameType
moduleAnyModule
typeSuccess
-

Defined in

-

src/core/structures/sern-emitter.ts:72

-
-

warning

-

warning(reason): Object

-

Creates a compliant SernEmitter module warning payload

-

Parameters

- - - - - - - - - - - - - -
NameType
reasonunknown
-

Returns

-

Object

- - - - - - - - - - - - - - - - - -
NameType
reasonstring
typeWarning
-

Defined in

-

src/core/structures/sern-emitter.ts:82

- - \ No newline at end of file diff --git a/docs/api/enums/CommandType.html b/docs/api/enums/CommandType.html deleted file mode 100644 index cb68d888a..000000000 --- a/docs/api/enums/CommandType.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - -Enumeration: CommandType | sern - Handlers. Redefined. - - - - - - - - - - - -

Enumeration: CommandType

Since

-

1.0.0 -A bitfield that discriminates command modules

-

Example

-
export default commandModule({
type : CommandType.Text,
name : 'a text command'
execute(message) {
console.log(message.content)
}
})
-

Enumeration Members

-

Both

-

Both = 3

-

Defined in

-

src/core/structures/enums.ts:20

-
-

Button

-

Button = 16

-

Defined in

-

src/core/structures/enums.ts:23

-
-

ChannelSelect

-

ChannelSelect = 1024

-

Defined in

-

src/core/structures/enums.ts:29

-
-

CtxMsg

-

CtxMsg = 8

-

Defined in

-

src/core/structures/enums.ts:22

-
-

CtxUser

-

CtxUser = 4

-

Defined in

-

src/core/structures/enums.ts:21

-
-

MentionableSelect

-

MentionableSelect = 512

-

Defined in

-

src/core/structures/enums.ts:28

-
- -

Modal = 64

-

Defined in

-

src/core/structures/enums.ts:25

-
-

RoleSelect

-

RoleSelect = 256

-

Defined in

-

src/core/structures/enums.ts:27

-
-

Slash

-

Slash = 2

-

Defined in

-

src/core/structures/enums.ts:19

-
-

StringSelect

-

StringSelect = 32

-

Defined in

-

src/core/structures/enums.ts:24

-
-

Text

-

Text = 1

-

Defined in

-

src/core/structures/enums.ts:18

-
-

UserSelect

-

UserSelect = 128

-

Defined in

-

src/core/structures/enums.ts:26

- - \ No newline at end of file diff --git a/docs/api/enums/EventType.html b/docs/api/enums/EventType.html deleted file mode 100644 index 8729f58f9..000000000 --- a/docs/api/enums/EventType.html +++ /dev/null @@ -1,41 +0,0 @@ - - - - - -Enumeration: EventType | sern - Handlers. Redefined. - - - - - - - - - - - -

Enumeration: EventType

A bitfield that discriminates event modules

-

Example

-
export default eventModule({
type : EventType.Discord,
name : 'guildMemberAdd'
execute(member : GuildMember) {
console.log(member)
}
})
-

Enumeration Members

-

Discord

-

Discord = 1

-

The EventType for handling discord events

-

Defined in

-

src/core/structures/enums.ts:51

-
-

External

-

External = 3

-

The EventType for handling external events. -Could be for example, process events, database events

-

Defined in

-

src/core/structures/enums.ts:60

-
-

Sern

-

Sern = 2

-

The EventType for handling sern events

-

Defined in

-

src/core/structures/enums.ts:55

- - \ No newline at end of file diff --git a/docs/api/enums/PayloadType.html b/docs/api/enums/PayloadType.html deleted file mode 100644 index df5662438..000000000 --- a/docs/api/enums/PayloadType.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - -Enumeration: PayloadType | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/enums/PluginType.html b/docs/api/enums/PluginType.html deleted file mode 100644 index 7ca50f5b7..000000000 --- a/docs/api/enums/PluginType.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - -Enumeration: PluginType | sern - Handlers. Redefined. - - - - - - - - - - - -

Enumeration: PluginType

A bitfield that discriminates plugins

-

Example

-
export default function myPlugin() : EventPlugin<CommandType.Text> {
type : PluginType.Event,
execute([ctx, args], controller) {
return controller.next();
}
}
-

Enumeration Members

-

Control

-

Control = 2

-

The PluginType for EventPlugins

-

Defined in

-

src/core/structures/enums.ts:85

-
-

Init

-

Init = 1

-

The PluginType for InitPlugins

-

Defined in

-

src/core/structures/enums.ts:81

- - \ No newline at end of file diff --git a/docs/api/enums/SernError.html b/docs/api/enums/SernError.html deleted file mode 100644 index 0f14dd6f2..000000000 --- a/docs/api/enums/SernError.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - -Enumeration: SernError | sern - Handlers. Redefined. - - - - - - - - - - - -

Enumeration: SernError

Enumeration Members

-

InvalidModuleType

-

InvalidModuleType = "Detected an unknown module type"

-

Throws when registering an invalid module. -This means it is undefined or an invalid command type was provided

-

Defined in

-

src/handler/structures/errors.ts:9

-
-

MismatchEvent

-

MismatchEvent = "You cannot use message when an interaction fired or vice versa"

-

A crash that occurs when accessing an invalid property of Context

-

Defined in

-

src/handler/structures/errors.ts:29

-
-

MismatchModule

-

MismatchModule = "A module type mismatched with event emitted!"

-

Attempted to lookup module in command module store. Nothing was found!

-

Defined in

-

src/handler/structures/errors.ts:17

-
-

MissingRequired

-

MissingRequired = "@sern/client is required but was not found"

-

Required Dependency not found

-

Defined in

-

src/handler/structures/errors.ts:37

-
-

NotSupportedInteraction

-

NotSupportedInteraction = "This interaction is not supported."

-

Unsupported interaction at this moment.

-

Defined in

-

src/handler/structures/errors.ts:21

-
-

NotSupportedYet

-

NotSupportedYet = "This feature is not supported yet"

-

Unsupported feature attempted to access at this time

-

Defined in

-

src/handler/structures/errors.ts:33

-
-

PluginFailure

-

PluginFailure = "A plugin failed to call controller.next()"

-

One plugin called controller.stop() (end command execution / loading)

-

Defined in

-

src/handler/structures/errors.ts:25

-
-

UndefinedModule

-

UndefinedModule = "A module could not be detected"

-

Attempted to lookup module in command module store. Nothing was found!

-

Defined in

-

src/handler/structures/errors.ts:13

- - \ No newline at end of file diff --git a/docs/api/interfaces/AutocompleteCommand.html b/docs/api/interfaces/AutocompleteCommand.html deleted file mode 100644 index f0a546f81..000000000 --- a/docs/api/interfaces/AutocompleteCommand.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - -Interface: AutocompleteCommand | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/AutocompletePlugin.html b/docs/api/interfaces/AutocompletePlugin.html deleted file mode 100644 index 34be52529..000000000 --- a/docs/api/interfaces/AutocompletePlugin.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - -Interface: AutocompletePlugin | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: AutocompletePlugin

Hierarchy

-
    -
  • -

    Plugin

    -

    AutocompletePlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (autocmp: AutocompleteInteraction<CacheType>, controlller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (autocmp, controlller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
autocmpAutocompleteInteraction<CacheType>
controlllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:73

-
-

name

-

Optional name: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:31

-
-

type

-

type: Event

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:72

- - \ No newline at end of file diff --git a/docs/api/interfaces/BothCommand.html b/docs/api/interfaces/BothCommand.html deleted file mode 100644 index 4e1ff634a..000000000 --- a/docs/api/interfaces/BothCommand.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Interface: BothCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: BothCommand

Hierarchy

-
    -
  • -

    Module

    -

    BothCommand

    -
  • -
-

Properties

-

alias

-

Optional alias: string[]

-

Defined in

-

src/types/core-modules.ts:125

-
-

description

-

description: string

-

Overrides

-

Module.description

-

Defined in

-

src/types/core-modules.ts:126

-
-

execute

-

execute: (ctx: Context, args: Args) => unknown

-

Type declaration

-

▸ (ctx, args): unknown

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
ctxContext
argsArgs
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:128

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

options

-

Optional options: SernOptionsData[]

-

Defined in

-

src/types/core-modules.ts:127

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Both

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:124

- - \ No newline at end of file diff --git a/docs/api/interfaces/ButtonCommand.html b/docs/api/interfaces/ButtonCommand.html deleted file mode 100644 index 741b6c1e3..000000000 --- a/docs/api/interfaces/ButtonCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: ButtonCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ButtonCommand

Hierarchy

-
    -
  • -

    Module

    -

    ButtonCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: ButtonInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxButtonInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:65

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Button

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:64

- - \ No newline at end of file diff --git a/docs/api/interfaces/ChannelSelectCommand.html b/docs/api/interfaces/ChannelSelectCommand.html deleted file mode 100644 index f40c069c5..000000000 --- a/docs/api/interfaces/ChannelSelectCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: ChannelSelectCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ChannelSelectCommand

Hierarchy

-
    -
  • -

    Module

    -

    ChannelSelectCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: ChannelSelectMenuInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxChannelSelectMenuInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:75

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: ChannelSelect

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:74

- - \ No newline at end of file diff --git a/docs/api/interfaces/CommandError.Response.html b/docs/api/interfaces/CommandError.Response.html deleted file mode 100644 index 4aa977d7e..000000000 --- a/docs/api/interfaces/CommandError.Response.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - -Interface: Response | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/CommandModuleDefs.html b/docs/api/interfaces/CommandModuleDefs.html deleted file mode 100644 index 641f76c42..000000000 --- a/docs/api/interfaces/CommandModuleDefs.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - -Interface: CommandModuleDefs | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/CommandPlugin.html b/docs/api/interfaces/CommandPlugin.html deleted file mode 100644 index 5f8773839..000000000 --- a/docs/api/interfaces/CommandPlugin.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - -Interface: CommandPlugin<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: CommandPlugin<T>

Deprecated

-

Use the newer helper functions and import { controller } from '@sern/handler'

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends CommandType = CommandType
-

Properties

-

description

-

Optional description: string

-

Defined in

-

src/types/plugin.ts:51

-
-

execute

-

execute: (m: InitArgs<Processed<CommandModule>>, controller?: Deprecated<"Please import controller instead">) => PluginResult

-

Type declaration

-

▸ (m, controller?): PluginResult

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
mInitArgs<Processed<CommandModule>>
controller?Deprecated<"Please import controller instead">
-
Returns
-

PluginResult

-

Defined in

-

src/types/plugin.ts:53

-
-

name

-

Optional name: string

-

Defined in

-

src/types/plugin.ts:50

-
-

type

-

type: Init

-

Defined in

-

src/types/plugin.ts:52

- - \ No newline at end of file diff --git a/docs/api/interfaces/ContextMenuMsg.html b/docs/api/interfaces/ContextMenuMsg.html deleted file mode 100644 index 69ba6b6ed..000000000 --- a/docs/api/interfaces/ContextMenuMsg.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: ContextMenuMsg | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ContextMenuMsg

Hierarchy

-
    -
  • -

    Module

    -

    ContextMenuMsg

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: MessageContextMenuCommandInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxMessageContextMenuCommandInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:60

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: CtxMsg

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:59

- - \ No newline at end of file diff --git a/docs/api/interfaces/ContextMenuUser.html b/docs/api/interfaces/ContextMenuUser.html deleted file mode 100644 index 9658a85bd..000000000 --- a/docs/api/interfaces/ContextMenuUser.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: ContextMenuUser | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ContextMenuUser

Hierarchy

-
    -
  • -

    Module

    -

    ContextMenuUser

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: UserContextMenuCommandInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxUserContextMenuCommandInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:55

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: CtxUser

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:54

- - \ No newline at end of file diff --git a/docs/api/interfaces/ControlPlugin.html b/docs/api/interfaces/ControlPlugin.html deleted file mode 100644 index 7bb6eecd3..000000000 --- a/docs/api/interfaces/ControlPlugin.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - -Interface: ControlPlugin<Args> | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/Controller.html b/docs/api/interfaces/Controller.html deleted file mode 100644 index 111165d6c..000000000 --- a/docs/api/interfaces/Controller.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - -Interface: Controller | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/interfaces/CoreDependencies.html b/docs/api/interfaces/CoreDependencies.html deleted file mode 100644 index 2e3941f77..000000000 --- a/docs/api/interfaces/CoreDependencies.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - -Interface: CoreDependencies | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: CoreDependencies

Properties

-

@sern/client

-

@sern/client: () => Emitter

-

Type declaration

-

▸ (): Emitter

-
Returns
-

Emitter

-

Defined in

-

src/types/ioc.ts:28

-
-

@sern/emitter

-

@sern/emitter: () => Emitter

-

Type declaration

-

▸ (): Emitter

-
Returns
-

Emitter

-

Defined in

-

src/types/ioc.ts:29

-
-

@sern/errors

-

@sern/errors: () => ErrorHandling

-

Type declaration

-

▸ (): ErrorHandling

-
Returns
-

ErrorHandling

-

Defined in

-

src/types/ioc.ts:36

-
-

@sern/logger

-

Optional @sern/logger: () => Logging<unknown>

-

Type declaration

-

▸ (): Logging<unknown>

-
Returns
-

Logging<unknown>

-

Defined in

-

src/types/ioc.ts:37

-
-

@sern/modules

-

@sern/modules: () => ModuleManager

-

Type declaration

-

▸ (): ModuleManager

-
Returns
-

ModuleManager

-

Defined in

-

src/types/ioc.ts:35

-
-

@sern/store

-

@sern/store: () => CoreModuleStore

-

Deprecated

-

Will be removed and turned internal

-

Type declaration

-

▸ (): CoreModuleStore

-
Returns
-

CoreModuleStore

-

Defined in

-

src/types/ioc.ts:34

- - \ No newline at end of file diff --git a/docs/api/interfaces/CoreModuleStore.html b/docs/api/interfaces/CoreModuleStore.html deleted file mode 100644 index c4a3b4d0c..000000000 --- a/docs/api/interfaces/CoreModuleStore.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - -Interface: CoreModuleStore | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/interfaces/Dependencies.html b/docs/api/interfaces/Dependencies.html deleted file mode 100644 index 622bf92b5..000000000 --- a/docs/api/interfaces/Dependencies.html +++ /dev/null @@ -1,49 +0,0 @@ - - - - - -Interface: Dependencies | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: Dependencies

Properties

-

@sern/client

-

@sern/client: Singleton<__module>

-

Defined in

-

src/types/handler.ts:40

-
-

@sern/emitter

-

@sern/emitter: Singleton<SernEmitter>

-

Defined in

-

src/types/handler.ts:42

-
-

@sern/errors

-

@sern/errors: Singleton<ErrorHandling>

-

Defined in

-

src/types/handler.ts:45

-
-

@sern/logger

-

Optional @sern/logger: Singleton<Logging<unknown>>

-

Defined in

-

src/types/handler.ts:41

-
-

@sern/modules

-

@sern/modules: Singleton<ModuleManager>

-

Defined in

-

src/types/handler.ts:44

-
-

@sern/store

-

@sern/store: Singleton<ModuleStore>

-

Defined in

-

src/types/handler.ts:43

- - \ No newline at end of file diff --git a/docs/api/interfaces/DependencyConfiguration.html b/docs/api/interfaces/DependencyConfiguration.html deleted file mode 100644 index e432ba8ef..000000000 --- a/docs/api/interfaces/DependencyConfiguration.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - -Interface: DependencyConfiguration<T> | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/DiscordEmitterPlugin.html b/docs/api/interfaces/DiscordEmitterPlugin.html deleted file mode 100644 index 52561f93b..000000000 --- a/docs/api/interfaces/DiscordEmitterPlugin.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: DiscordEmitterPlugin | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: DiscordEmitterPlugin

Hierarchy

-
    -
  • -

    Plugin

    -

    DiscordEmitterPlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (payload: { absPath: string ; mod: DiscordEventCommand<keyof ClientEvents> & { name: string } }, controller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (payload, controller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - - - - - - - - - -
NameType
payloadObject
payload.absPathstring
payload.modDiscordEventCommand<keyof ClientEvents> & { name: string }
controllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:49

-
-

name

-

Optional name: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:31

-
-

type

-

type: Command

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:48

- - \ No newline at end of file diff --git a/docs/api/interfaces/DiscordEventCommand.html b/docs/api/interfaces/DiscordEventCommand.html deleted file mode 100644 index 34d504dcb..000000000 --- a/docs/api/interfaces/DiscordEventCommand.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - -Interface: DiscordEventCommand<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: DiscordEventCommand<T>

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof ClientEvents = keyof ClientEvents
-

Hierarchy

-
    -
  • -

    Module

    -

    DiscordEventCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

name

-

Optional name: T

-

Overrides

-

Module.name

-

Defined in

-

src/types/core-modules.ts:106

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Discord

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:107

-

Methods

-

execute

-

execute(...args): unknown

-

Parameters

- - - - - - - - - - - - - -
NameType
...argsClientEvents[T]
-

Returns

-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:108

- - \ No newline at end of file diff --git a/docs/api/interfaces/DiscordEventPlugin.html b/docs/api/interfaces/DiscordEventPlugin.html deleted file mode 100644 index 35f3c0e8d..000000000 --- a/docs/api/interfaces/DiscordEventPlugin.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - -Interface: DiscordEventPlugin<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: DiscordEventPlugin<T>

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof ClientEvents = keyof ClientEvents
-

Hierarchy

-
    -
  • -

    Plugin

    -

    DiscordEventPlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (args: ClientEvents[T], controller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (args, controller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
argsClientEvents[T]
controllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:105

-
-

name

-

Optional name: T

-

Deprecated

-

will be removed in the next update

-

Overrides

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:103

-
-

type

-

type: Event

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:104

- - \ No newline at end of file diff --git a/docs/api/interfaces/Disposable.html b/docs/api/interfaces/Disposable.html deleted file mode 100644 index 640e0b5e9..000000000 --- a/docs/api/interfaces/Disposable.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - - -Interface: Disposable | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/interfaces/Emitter.html b/docs/api/interfaces/Emitter.html deleted file mode 100644 index 08abfdfb3..000000000 --- a/docs/api/interfaces/Emitter.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - -Interface: Emitter | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: Emitter

Methods

-

addListener

-

addListener(eventName, listener): this

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventNamestring | symbol
listenerAnyFunction
-

Returns

-

this

-

Defined in

-

src/core/contracts/emitter.ts:6

-
-

emit

-

emit(eventName, ...payload): boolean

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventNamestring | symbol
...payloadany[]
-

Returns

-

boolean

-

Defined in

-

src/core/contracts/emitter.ts:8

-
-

removeListener

-

removeListener(eventName, listener): this

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
eventNamestring | symbol
listenerAnyFunction
-

Returns

-

this

-

Defined in

-

src/core/contracts/emitter.ts:7

- - \ No newline at end of file diff --git a/docs/api/interfaces/ErrorHandling.html b/docs/api/interfaces/ErrorHandling.html deleted file mode 100644 index 2fc1c42f4..000000000 --- a/docs/api/interfaces/ErrorHandling.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - -Interface: ErrorHandling | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/EventModuleDefs.html b/docs/api/interfaces/EventModuleDefs.html deleted file mode 100644 index dd13af43f..000000000 --- a/docs/api/interfaces/EventModuleDefs.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - -Interface: EventModuleDefs | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/interfaces/EventPlugin.html b/docs/api/interfaces/EventPlugin.html deleted file mode 100644 index 728e6909c..000000000 --- a/docs/api/interfaces/EventPlugin.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - -Interface: EventPlugin<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: EventPlugin<T>

Deprecated

-

Use the newer helper functions

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends CommandType
-

Properties

-

description

-

Optional description: string

-

Defined in

-

src/types/plugin.ts:64

-
-

execute

-

execute: (args: CommandArgs<T, Event>, controller?: Controller) => PluginResult

-

Type declaration

-

▸ (args, controller?): PluginResult

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
argsCommandArgs<T, Event>
controller?Controller
-
Returns
-

PluginResult

-

Defined in

-

src/types/plugin.ts:66

-
-

name

-

Optional name: string

-

Defined in

-

src/types/plugin.ts:63

-
-

type

-

type: Event

-

Defined in

-

src/types/plugin.ts:65

- - \ No newline at end of file diff --git a/docs/api/interfaces/ExternalEmitterPlugin.html b/docs/api/interfaces/ExternalEmitterPlugin.html deleted file mode 100644 index ccf583e1f..000000000 --- a/docs/api/interfaces/ExternalEmitterPlugin.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: ExternalEmitterPlugin | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ExternalEmitterPlugin

Hierarchy

-
    -
  • -

    Plugin

    -

    ExternalEmitterPlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (payload: { absPath: string ; mod: ExternalEventCommand & { name: string } }, controller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (payload, controller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - - - - - - - - - -
NameType
payloadObject
payload.absPathstring
payload.modExternalEventCommand & { name: string }
controllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:57

-
-

name

-

Optional name: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:31

-
-

type

-

type: Command

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:56

- - \ No newline at end of file diff --git a/docs/api/interfaces/ExternalEventCommand.html b/docs/api/interfaces/ExternalEventCommand.html deleted file mode 100644 index f3023f7a2..000000000 --- a/docs/api/interfaces/ExternalEventCommand.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - -Interface: ExternalEventCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ExternalEventCommand

Hierarchy

-
    -
  • -

    Module

    -

    ExternalEventCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

emitter

-

emitter: keyof Dependencies

-

Defined in

-

src/types/core-modules.ts:48

-
-

name

-

Optional name: string

-

Overrides

-

Module.name

-

Defined in

-

src/types/core-modules.ts:47

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: External

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:49

-

Methods

-

execute

-

execute(...args): unknown

-

Parameters

- - - - - - - - - - - - - -
NameType
...argsunknown[]
-

Returns

-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:50

- - \ No newline at end of file diff --git a/docs/api/interfaces/ExternalEventPlugin.html b/docs/api/interfaces/ExternalEventPlugin.html deleted file mode 100644 index 205098968..000000000 --- a/docs/api/interfaces/ExternalEventPlugin.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - -Interface: ExternalEventPlugin | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ExternalEventPlugin

Hierarchy

-
    -
  • -

    Plugin

    -

    ExternalEventPlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (args: unknown[], controller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (args, controller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
argsunknown[]
controllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:99

-
-

name

-

Optional name: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:31

-
-

type

-

type: Event

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:98

- - \ No newline at end of file diff --git a/docs/api/interfaces/Init.html b/docs/api/interfaces/Init.html deleted file mode 100644 index e258adb77..000000000 --- a/docs/api/interfaces/Init.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - - -Interface: Init | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/interfaces/InitArgs.html b/docs/api/interfaces/InitArgs.html deleted file mode 100644 index 72ed9b92a..000000000 --- a/docs/api/interfaces/InitArgs.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - -Interface: InitArgs<T> | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/api/interfaces/InitPlugin.html b/docs/api/interfaces/InitPlugin.html deleted file mode 100644 index 8b10317fe..000000000 --- a/docs/api/interfaces/InitPlugin.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - -Interface: InitPlugin<Args> | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/Logging.html b/docs/api/interfaces/Logging.html deleted file mode 100644 index 08de35eec..000000000 --- a/docs/api/interfaces/Logging.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - -Interface: Logging<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: Logging<T>

Since

-

2.0.0

-

Type parameters

- - - - - - - - - - - - - -
NameType
Tunknown
-

Implemented by

- -

Methods

-

debug

-

debug(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload<T>
-

Returns

-

void

-

Defined in

-

src/core/contracts/logging.ts:8

-
-

error

-

error(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload<T>
-

Returns

-

void

-

Defined in

-

src/core/contracts/logging.ts:5

-
-

info

-

info(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload<T>
-

Returns

-

void

-

Defined in

-

src/core/contracts/logging.ts:7

-
-

warning

-

warning(payload): void

-

Parameters

- - - - - - - - - - - - - -
NameType
payloadLogPayload<T>
-

Returns

-

void

-

Defined in

-

src/core/contracts/logging.ts:6

- - \ No newline at end of file diff --git a/docs/api/interfaces/MentionableSelectCommand.html b/docs/api/interfaces/MentionableSelectCommand.html deleted file mode 100644 index 6e3a51e6f..000000000 --- a/docs/api/interfaces/MentionableSelectCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: MentionableSelectCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: MentionableSelectCommand

Hierarchy

-
    -
  • -

    Module

    -

    MentionableSelectCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: MentionableSelectMenuInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxMentionableSelectMenuInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:85

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: MentionableSelect

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:84

- - \ No newline at end of file diff --git a/docs/api/interfaces/ModalSubmitCommand.html b/docs/api/interfaces/ModalSubmitCommand.html deleted file mode 100644 index d29abe3b1..000000000 --- a/docs/api/interfaces/ModalSubmitCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: ModalSubmitCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ModalSubmitCommand

Hierarchy

-
    -
  • -

    Module

    -

    ModalSubmitCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: ModalSubmitInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxModalSubmitInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:95

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Modal

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:94

- - \ No newline at end of file diff --git a/docs/api/interfaces/Module.html b/docs/api/interfaces/Module.html deleted file mode 100644 index eafc5a79a..000000000 --- a/docs/api/interfaces/Module.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - -Interface: Module | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: Module

Hierarchy

- -

Properties

-

description

-

Optional description: string

-

Defined in

-

src/types/module.ts:38

-
-

execute

-

execute: (...args: any[]) => any

-

Type declaration

-

▸ (...args): any

-
Parameters
- - - - - - - - - - - - - -
NameType
...argsany[]
-
Returns
-

any

-

Defined in

-

src/types/module.ts:39

-
-

name

-

Optional name: string

-

Defined in

-

src/types/module.ts:35

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Defined in

-

src/types/module.ts:36

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Defined in

-

src/types/module.ts:37

-
-

type

-

type: CommandType | EventType

-

Defined in

-

src/types/module.ts:34

- - \ No newline at end of file diff --git a/docs/api/interfaces/ModuleManager.html b/docs/api/interfaces/ModuleManager.html deleted file mode 100644 index 93b1665ce..000000000 --- a/docs/api/interfaces/ModuleManager.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - -Interface: ModuleManager | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: ModuleManager

Since

-

2.0.0

-
    -
  • direct access to the module manager will be removed in version 4
  • -
-

Hierarchy

-
    -
  • -

    MetadataAccess

    -

    ModuleManager

    -
  • -
-

Implemented by

- -

Methods

-

get

-

get(id): undefined | Module

-

Parameters

- - - - - - - - - - - - - -
NameType
idstring
-

Returns

-

undefined | Module

-

Defined in

-

src/core/contracts/module-manager.ts:19

-
-

getByNameCommandType

-

getByNameCommandType<T>(name, commandType): undefined | CommandModuleDefs[T]

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends CommandType
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
namestring
commandTypeT
-

Returns

-

undefined | CommandModuleDefs[T]

-

Defined in

-

src/core/contracts/module-manager.ts:30

-
-

getMetadata

-

getMetadata(m): undefined | CommandMeta

-

Parameters

- - - - - - - - - - - - - -
NameType
mModule
-

Returns

-

undefined | CommandMeta

-

Inherited from

-

MetadataAccess.getMetadata

-

Defined in

-

src/core/contracts/module-manager.ts:10

-
-

getPublishableCommands

-

getPublishableCommands(): CommandModule[]

-

Returns

-

CommandModule[]

-

Deprecated

-

Defined in

-

src/core/contracts/module-manager.ts:25

-
-

set

-

set(id, path): void

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
idstring
pathModule
-

Returns

-

void

-

Defined in

-

src/core/contracts/module-manager.ts:21

-
-

setMetadata

-

setMetadata(m, c): void

-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
mModule
cCommandMeta
-

Returns

-

void

-

Inherited from

-

MetadataAccess.setMetadata

-

Defined in

-

src/core/contracts/module-manager.ts:11

- - \ No newline at end of file diff --git a/docs/api/interfaces/Plugin.html b/docs/api/interfaces/Plugin.html deleted file mode 100644 index fbc8fa428..000000000 --- a/docs/api/interfaces/Plugin.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - -Interface: Plugin<Args> | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/Presence.Result.html b/docs/api/interfaces/Presence.Result.html deleted file mode 100644 index b98255639..000000000 --- a/docs/api/interfaces/Presence.Result.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - -Interface: Result | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: Result

Presence.Result

-

Properties

-

activities

-

Optional activities: ActivitiesOptions[]

-

Defined in

-

src/core/presences.ts:11

-
-

afk

-

Optional afk: boolean

-

Defined in

-

src/core/presences.ts:10

-
-

onRepeat

-

Optional onRepeat: (previous: Result) => Result

-

Type declaration

-

▸ (previous): Result

-
Parameters
- - - - - - - - - - - - - -
NameType
previousResult
-
Returns
-

Result

-

Defined in

-

src/core/presences.ts:14

-
-

repeat

-

Optional repeat: number | [Emitter, string]

-

Defined in

-

src/core/presences.ts:13

-
-

shardId

-

Optional shardId: number[]

-

Defined in

-

src/core/presences.ts:12

-
-

status

-

Optional status: Status

-

Defined in

-

src/core/presences.ts:9

- - \ No newline at end of file diff --git a/docs/api/interfaces/RoleSelectCommand.html b/docs/api/interfaces/RoleSelectCommand.html deleted file mode 100644 index 69dfb3e9e..000000000 --- a/docs/api/interfaces/RoleSelectCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: RoleSelectCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: RoleSelectCommand

Hierarchy

-
    -
  • -

    Module

    -

    RoleSelectCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: RoleSelectMenuInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxRoleSelectMenuInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:80

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: RoleSelect

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:79

- - \ No newline at end of file diff --git a/docs/api/interfaces/SernAutocompleteData.html b/docs/api/interfaces/SernAutocompleteData.html deleted file mode 100644 index 9dac3b21b..000000000 --- a/docs/api/interfaces/SernAutocompleteData.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - -Interface: SernAutocompleteData | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SernAutocompleteData

Hierarchy

-
    -
  • -

    Omit<BaseApplicationCommandOptionsData, "autocomplete">

    -

    SernAutocompleteData

    -
  • -
-

Properties

-

autocomplete

-

autocomplete: true

-

Defined in

-

src/types/core-modules.ts:172

-
-

command

-

command: AutocompleteCommand

-

Defined in

-

src/types/core-modules.ts:177

-
-

description

-

description: string

-

Inherited from

-

Omit.description

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4493

-
-

descriptionLocalizations

-

Optional descriptionLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

-

Inherited from

-

Omit.descriptionLocalizations

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4494

-
-

name

-

name: string

-

Inherited from

-

Omit.name

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4491

-
-

nameLocalizations

-

Optional nameLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

-

Inherited from

-

Omit.nameLocalizations

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4492

-
-

required

-

Optional required: boolean

-

Inherited from

-

Omit.required

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4495

-
-

type

-

type: String | Integer | Number

-

Defined in

-

src/types/core-modules.ts:173

- - \ No newline at end of file diff --git a/docs/api/interfaces/SernEmitterPlugin.html b/docs/api/interfaces/SernEmitterPlugin.html deleted file mode 100644 index dc9d5eef0..000000000 --- a/docs/api/interfaces/SernEmitterPlugin.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: SernEmitterPlugin | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SernEmitterPlugin

Hierarchy

-
    -
  • -

    Plugin

    -

    SernEmitterPlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (payload: { absPath: string ; mod: SernEventCommand<keyof SernEventsMapping> & { name: string } }, controller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (payload, controller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - - - - - - - - - -
NameType
payloadObject
payload.absPathstring
payload.modSernEventCommand<keyof SernEventsMapping> & { name: string }
controllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:65

-
-

name

-

Optional name: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:31

-
-

type

-

type: Command

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:64

- - \ No newline at end of file diff --git a/docs/api/interfaces/SernEventCommand.html b/docs/api/interfaces/SernEventCommand.html deleted file mode 100644 index bcfb599b9..000000000 --- a/docs/api/interfaces/SernEventCommand.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - -Interface: SernEventCommand<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SernEventCommand<T>

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof SernEventsMapping = keyof SernEventsMapping
-

Hierarchy

-
    -
  • -

    Module

    -

    SernEventCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

name

-

Optional name: T

-

Overrides

-

Module.name

-

Defined in

-

src/types/core-modules.ts:42

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Sern

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:43

-

Methods

-

execute

-

execute(...args): unknown

-

Parameters

- - - - - - - - - - - - - -
NameType
...argsSernEventsMapping[T]
-

Returns

-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:44

- - \ No newline at end of file diff --git a/docs/api/interfaces/SernEventPlugin.html b/docs/api/interfaces/SernEventPlugin.html deleted file mode 100644 index b73e3b514..000000000 --- a/docs/api/interfaces/SernEventPlugin.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - -Interface: SernEventPlugin<T> | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SernEventPlugin<T>

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof SernEventsMapping = keyof SernEventsMapping
-

Hierarchy

-
    -
  • -

    Plugin

    -

    SernEventPlugin

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Deprecated

-

will be removed in the next update

-

Inherited from

-

Plugin.description

-

Defined in

-

src/handler/plugins/plugin.ts:33

-
-

execute

-

execute: (args: SernEventsMapping[T], controller: Controller) => Awaitable<Result<void, void>>

-

Type declaration

-

▸ (args, controller): Awaitable<Result<void, void>>

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
argsSernEventsMapping[T]
controllerController
-
Returns
-

Awaitable<Result<void, void>>

-

Defined in

-

src/handler/plugins/plugin.ts:91

-
-

name

-

Optional name: T

-

Deprecated

-

will be removed in the next update

-

Overrides

-

Plugin.name

-

Defined in

-

src/handler/plugins/plugin.ts:89

-
-

type

-

type: Event

-

Overrides

-

Plugin.type

-

Defined in

-

src/handler/plugins/plugin.ts:90

- - \ No newline at end of file diff --git a/docs/api/interfaces/SernEventsMapping.html b/docs/api/interfaces/SernEventsMapping.html deleted file mode 100644 index 202f12860..000000000 --- a/docs/api/interfaces/SernEventsMapping.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - -Interface: SernEventsMapping | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/api/interfaces/SernSubCommandData.html b/docs/api/interfaces/SernSubCommandData.html deleted file mode 100644 index e75f12003..000000000 --- a/docs/api/interfaces/SernSubCommandData.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - -Interface: SernSubCommandData | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SernSubCommandData

Hierarchy

-
    -
  • -

    APIApplicationCommandOptionBase<ApplicationCommandOptionType.Subcommand>

    -

    SernSubCommandData

    -
  • -
-

Properties

-

description

-

description: string

-

Inherited from

-

APIApplicationCommandOptionBase.description

-

Defined in

-

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:7

-
-

description_localizations

-

Optional description_localizations: null | Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

-

Inherited from

-

APIApplicationCommandOptionBase.description_localizations

-

Defined in

-

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:8

-
-

name

-

name: string

-

Inherited from

-

APIApplicationCommandOptionBase.name

-

Defined in

-

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:5

-
-

name_localizations

-

Optional name_localizations: null | Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

-

Inherited from

-

APIApplicationCommandOptionBase.name_localizations

-

Defined in

-

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:6

-
-

options

-

Optional options: SernOptionsData[]

-

Defined in

-

src/types/core-modules.ts:209

-
-

required

-

Optional required: boolean

-

Inherited from

-

APIApplicationCommandOptionBase.required

-

Defined in

-

node_modules/discord-api-types/payloads/v10/_interactions/_applicationCommands/_chatInput/base.d.ts:9

-
-

type

-

type: Subcommand

-

Overrides

-

APIApplicationCommandOptionBase.type

-

Defined in

-

src/types/core-modules.ts:208

- - \ No newline at end of file diff --git a/docs/api/interfaces/SernSubCommandGroupData.html b/docs/api/interfaces/SernSubCommandGroupData.html deleted file mode 100644 index 24b02c366..000000000 --- a/docs/api/interfaces/SernSubCommandGroupData.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - -Interface: SernSubCommandGroupData | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SernSubCommandGroupData

Hierarchy

-
    -
  • -

    BaseApplicationCommandOptionsData

    -

    SernSubCommandGroupData

    -
  • -
-

Properties

-

autocomplete

-

Optional autocomplete: undefined

-

Inherited from

-

BaseApplicationCommandOptionsData.autocomplete

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4496

-
-

description

-

description: string

-

Inherited from

-

BaseApplicationCommandOptionsData.description

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4493

-
-

descriptionLocalizations

-

Optional descriptionLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

-

Inherited from

-

BaseApplicationCommandOptionsData.descriptionLocalizations

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4494

-
-

name

-

name: string

-

Inherited from

-

BaseApplicationCommandOptionsData.name

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4491

-
-

nameLocalizations

-

Optional nameLocalizations: Partial<Record<"id" | "en-US" | "en-GB" | "bg" | "zh-CN" | "zh-TW" | "hr" | "cs" | "da" | "nl" | "fi" | "fr" | "de" | "el" | "hi" | "hu" | "it" | "ja" | "ko" | "lt" | "no" | "pl" | "pt-BR" | "ro" | "ru" | "es-ES" | "sv-SE" | "th" | "tr" | "uk" | "vi", null | string>>

-

Inherited from

-

BaseApplicationCommandOptionsData.nameLocalizations

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4492

-
-

options

-

Optional options: SernSubCommandData[]

-

Defined in

-

src/types/core-modules.ts:214

-
-

required

-

Optional required: boolean

-

Inherited from

-

BaseApplicationCommandOptionsData.required

-

Defined in

-

node_modules/discord.js/typings/index.d.ts:4495

-
-

type

-

type: SubcommandGroup

-

Defined in

-

src/types/core-modules.ts:213

- - \ No newline at end of file diff --git a/docs/api/interfaces/SlashCommand.html b/docs/api/interfaces/SlashCommand.html deleted file mode 100644 index 156e5ad99..000000000 --- a/docs/api/interfaces/SlashCommand.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Interface: SlashCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: SlashCommand

Hierarchy

-
    -
  • -

    Module

    -

    SlashCommand

    -
  • -
-

Properties

-

description

-

description: string

-

Overrides

-

Module.description

-

Defined in

-

src/types/core-modules.ts:118

-
-

execute

-

execute: (ctx: Context, args: ["slash", SlashOptions]) => unknown

-

Type declaration

-

▸ (ctx, args): unknown

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
ctxContext
args["slash", SlashOptions]
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:120

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

options

-

Optional options: SernOptionsData[]

-

Defined in

-

src/types/core-modules.ts:119

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Slash

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:117

- - \ No newline at end of file diff --git a/docs/api/interfaces/StringSelectCommand.html b/docs/api/interfaces/StringSelectCommand.html deleted file mode 100644 index e73dce7c3..000000000 --- a/docs/api/interfaces/StringSelectCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: StringSelectCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: StringSelectCommand

Hierarchy

-
    -
  • -

    Module

    -

    StringSelectCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: StringSelectMenuInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxStringSelectMenuInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:70

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: StringSelect

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:69

- - \ No newline at end of file diff --git a/docs/api/interfaces/TextCommand.html b/docs/api/interfaces/TextCommand.html deleted file mode 100644 index c5b64bbb2..000000000 --- a/docs/api/interfaces/TextCommand.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - -Interface: TextCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: TextCommand

Hierarchy

-
    -
  • -

    Module

    -

    TextCommand

    -
  • -
-

Properties

-

alias

-

Optional alias: string[]

-

Defined in

-

src/types/core-modules.ts:112

-
-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: Context, args: ["text", string[]]) => unknown

-

Type declaration

-

▸ (ctx, args): unknown

-
Parameters
- - - - - - - - - - - - - - - - - -
NameType
ctxContext
args["text", string[]]
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:113

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: Text

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:111

- - \ No newline at end of file diff --git a/docs/api/interfaces/UserSelectCommand.html b/docs/api/interfaces/UserSelectCommand.html deleted file mode 100644 index adfbedbee..000000000 --- a/docs/api/interfaces/UserSelectCommand.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - -Interface: UserSelectCommand | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: UserSelectCommand

Hierarchy

-
    -
  • -

    Module

    -

    UserSelectCommand

    -
  • -
-

Properties

-

description

-

Optional description: string

-

Inherited from

-

Module.description

-

Defined in

-

src/types/core-modules.ts:36

-
-

execute

-

execute: (ctx: UserSelectMenuInteraction<CacheType>) => unknown

-

Type declaration

-

▸ (ctx): unknown

-
Parameters
- - - - - - - - - - - - - -
NameType
ctxUserSelectMenuInteraction<CacheType>
-
Returns
-

unknown

-

Overrides

-

Module.execute

-

Defined in

-

src/types/core-modules.ts:90

-
-

name

-

Optional name: string

-

Inherited from

-

Module.name

-

Defined in

-

src/types/core-modules.ts:33

-
-

onEvent

-

onEvent: ControlPlugin<any[]>[]

-

Inherited from

-

Module.onEvent

-

Defined in

-

src/types/core-modules.ts:34

-
-

plugins

-

plugins: InitPlugin<any[]>[]

-

Inherited from

-

Module.plugins

-

Defined in

-

src/types/core-modules.ts:35

-
-

type

-

type: UserSelect

-

Overrides

-

Module.type

-

Defined in

-

src/types/core-modules.ts:89

- - \ No newline at end of file diff --git a/docs/api/interfaces/Wrapper.html b/docs/api/interfaces/Wrapper.html deleted file mode 100644 index 613ca0c00..000000000 --- a/docs/api/interfaces/Wrapper.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - -Interface: Wrapper | sern - Handlers. Redefined. - - - - - - - - - - - -

Interface: Wrapper

Properties

-

commands

-

commands: string

-

Defined in

-

src/types/core.ts:9

-
-

containerConfig

-

Optional containerConfig: Object

-

Type declaration

- - - - - - - - - - - - - -
NameType
get(...keys: keyof Dependencies[]) => unknown[]
-

Defined in

-

src/types/core.ts:20

-
-

defaultPrefix

-

Optional defaultPrefix: string

-

Defined in

-

src/types/core.ts:10

-
-

events

-

Optional events: string

-

Defined in

-

src/types/core.ts:11

-
-

mode

-

Optional mode: string

-

Overload to enable mode in case developer does not use a .env file.

-

Deprecated

- -

Defined in

-

src/types/core.ts:16

- - \ No newline at end of file diff --git a/docs/api/modules.html b/docs/api/modules.html deleted file mode 100644 index 9fd4c958a..000000000 --- a/docs/api/modules.html +++ /dev/null @@ -1,818 +0,0 @@ - - - - - -@sern/handler | sern - Handlers. Redefined. - - - - - - - - - - - -

@sern/handler

Namespaces

- -

Enumerations

- -

Classes

- -

Interfaces

- -

Type Aliases

-

AnyCommandPlugin

-

Ƭ AnyCommandPlugin: ControlPlugin | InitPlugin<[InitArgs<Processed<CommandModule>>]>

-

Defined in

-

src/types/core-plugin.ts:76

-
-

AnyEventPlugin

-

Ƭ AnyEventPlugin: ControlPlugin | InitPlugin<[InitArgs<Processed<EventModule>>]>

-

Defined in

-

src/types/core-plugin.ts:77

-
-

Args

-

Ƭ Args: ParseType<{ slash: SlashOptions ; text: string[] }>

-

Defined in

-

src/types/utility.ts:16

-
-

CommandModule

-

Ƭ CommandModule: TextCommand | SlashCommand | BothCommand | ContextMenuUser | ContextMenuMsg | ButtonCommand | StringSelectCommand | MentionableSelectCommand | UserSelectCommand | ChannelSelectCommand | RoleSelectCommand | ModalSubmitCommand

-

Defined in

-

src/types/core-modules.ts:132

-
-

EventModule

-

Ƭ EventModule: DiscordEventCommand | SernEventCommand | ExternalEventCommand

-

Defined in

-

src/types/core-modules.ts:131

-
-

Initializable

-

Ƭ Initializable<T>: T

-

Type to annotate that something is initializable. -If T has an init method, this will be called.

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends Init
-

Defined in

-

src/types/ioc.ts:17

-
-

LogPayload

-

Ƭ LogPayload<T>: Object

-

Type parameters

- - - - - - - - - - - - - -
NameType
Tunknown
-

Type declaration

- - - - - - - - - - - - - -
NameType
messageT
-

Defined in

-

src/core/contracts/logging.ts:11

-
-

Payload

-

Ƭ Payload: { module: AnyModule ; type: Success } | { module?: AnyModule ; reason: string | Error ; type: Failure } | { module: undefined ; reason: string ; type: Warning }

-

Defined in

-

src/types/utility.ts:26

-
-

PluginResult

-

Ƭ PluginResult: Awaitable<VoidResult>

-

Defined in

-

src/types/core-plugin.ts:51

-
-

SernOptionsData

-

Ƭ SernOptionsData: SernSubCommandData | SernSubCommandGroupData | APIApplicationCommandBasicOption | SernAutocompleteData

-

Type that replaces autocomplete with SernAutocompleteData

-

Defined in

-

src/types/core-modules.ts:200

-
-

Singleton

-

Ƭ Singleton<T>: () => T

-

Type to annotate that something is a singleton. -T is created once and lazily.

-

Type parameters

- - - - - - - - - - - -
Name
T
-

Type declaration

-

▸ (): T

-
Returns
-

T

-

Defined in

-

src/types/ioc.ts:7

-
-

SlashOptions

-

Ƭ SlashOptions: Omit<CommandInteractionOptionResolver, "getMessage" | "getFocused">

-

Defined in

-

src/types/utility.ts:14

-
-

Transient

-

Ƭ Transient<T>: () => () => T

-

Type to annotate that something is transient. -Every time this is called, a new object is created

-

Type parameters

- - - - - - - - - - - -
Name
T
-

Type declaration

-

▸ (): () => T

-
Returns
-

fn

-

▸ (): T

-
Returns
-

T

-

Defined in

-

src/types/ioc.ts:12

-

Variables

-

controller

-

Const controller: Object

-

Since

-

1.0.0 -The object passed into every plugin to control a command's behavior

-

Type declaration

- - - - - - - - - - - - - - - - - -
NameType
next() => OkImpl<void>
stop() => ErrImpl<void>
-

Defined in

-

src/core/create-plugins.ts:69

-

Functions

-

CommandControlPlugin

-

CommandControlPlugin<I>(execute): Plugin<unknown[]>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Iextends CommandType
-

Parameters

- - - - - - - - - - - - - -
NameType
execute(...args: CommandArgs<I, Control>) => PluginResult
-

Returns

-

Plugin<unknown[]>

-

Since

-

2.5.0 -@PURE

-

Defined in

-

src/core/create-plugins.ts:37

-
-

CommandInitPlugin

-

CommandInitPlugin<I>(execute): Plugin<unknown[]>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Iextends CommandType
-

Parameters

- - - - - - - - - - - - - -
NameType
execute(...args: CommandArgs<I, Init>) => PluginResult
-

Returns

-

Plugin<unknown[]>

-

Since

-

2.5.0 -@PURE

-

Defined in

-

src/core/create-plugins.ts:28

-
-

DiscordEventControlPlugin

-

DiscordEventControlPlugin<T>(name, execute): Plugin<unknown[]>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof ClientEvents
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
nameT
execute(...args: ClientEvents[T]) => PluginResult
-

Returns

-

Plugin<unknown[]>

-

Since

-

2.5.0

-

Experimental

-

A specialized function for creating control plugins with discord.js ClientEvents. -Will probably be moved one day!

-

Defined in

-

src/core/create-plugins.ts:58

-
-

EventControlPlugin

-

EventControlPlugin<I>(execute): Plugin<unknown[]>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Iextends EventType
-

Parameters

- - - - - - - - - - - - - -
NameType
execute(...args: EventArgs<I, Control>) => PluginResult
-

Returns

-

Plugin<unknown[]>

-

Since

-

2.5.0 -@PURE

-

Defined in

-

src/core/create-plugins.ts:46

-
-

EventInitPlugin

-

EventInitPlugin<I>(execute): Plugin<unknown[]>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Iextends EventType
-

Parameters

- - - - - - - - - - - - - -
NameType
execute(...args: EventArgs<I, Init>) => PluginResult
-

Returns

-

Plugin<unknown[]>

-

Since

-

2.5.0 -@PURE

-

Defined in

-

src/core/create-plugins.ts:19

-
-

Service

-

Service<T>(key): NonNullable<UnpackFunction<Partial<Dependencies>[T]>>

-

The new Service api, a cleaner alternative to useContainer -To obtain intellisense, ensure a .d.ts file exists in the root of compilation. -Usually our scaffolding tool takes care of this. -Note: this method only works AFTER your container has been initiated

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof Dependencies
-

Parameters

- - - - - - - - - - - - - - - -
NameTypeDescription
keyTa key that corresponds to a dependency registered.
-

Returns

-

NonNullable<UnpackFunction<Partial<Dependencies>[T]>>

-

Since

-

3.0.0

-

Example

-
const client = Service('@sern/client');
-

Defined in

-

src/core/ioc/dependency-injection.ts:37

-
-

Services

-

Services<T>(...keys): IntoDependencies<T>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof Dependencies[]
-

Parameters

- - - - - - - - - - - - - -
NameType
...keys[...T[]]
-

Returns

-

IntoDependencies<T>

-

array of dependencies, in the same order of keys provided

-

Since

-

3.0.0 -The plural version of Service

-

Defined in

-

src/core/ioc/dependency-injection.ts:47

-
-

commandModule

-

commandModule(mod): CommandModule

-

Parameters

- - - - - - - - - - - - - -
NameType
modInputCommand
-

Returns

-

CommandModule

-

Since

-

1.0.0 The wrapper function to define command modules for sern

-

Defined in

-

src/core/modules.ts:19

-
-

discordEvent

-

discordEvent<T>(mod): EventModule

-

Create event modules from discord.js client events, -This is an eventModule for discord events, -where typings can be very bad.

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof ClientEvents
-

Parameters

- - - - - - - - - - - - - - - - - - - - - - - - - -
NameType
modObject
mod.execute(...args: ClientEvents[T]) => unknown
mod.nameT
mod.plugins?AnyEventPlugin[]
-

Returns

-

EventModule

-

Experimental

-

Defined in

-

src/core/modules.ts:47

-
-

eventModule

-

eventModule(mod): EventModule

-

Parameters

- - - - - - - - - - - - - -
NameType
modInputEvent
-

Returns

-

EventModule

-

Since

-

1.0.0 -The wrapper function to define event modules for sern

-

Defined in

-

src/core/modules.ts:32

-
-

makeDependencies

-

makeDependencies<T>(conf): Promise<<V>(...keys: [...V[]]) => IntoDependencies<V>>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends Dependencies
-

Parameters

- - - - - - - - - - - - - -
NameType
confValidDependencyConfig
-

Returns

-

Promise<<V>(...keys: [...V[]]) => IntoDependencies<V>>

-

Defined in

-

src/core/ioc/base.ts:144

-
-

makePlugin

-

makePlugin<V>(type, execute): Plugin<V>

-

Type parameters

- - - - - - - - - - - - - -
NameType
Vextends unknown[]
-

Parameters

- - - - - - - - - - - - - - - - - -
NameType
typePluginType
execute(...args: any[]) => any
-

Returns

-

Plugin<V>

-

Defined in

-

src/core/create-plugins.ts:6

-
-

single

-

single<T>(cb): () => T

-

@PURE

-

Type parameters

- - - - - - - - - - - -
Name
T
-

Parameters

- - - - - - - - - - - - - -
NameType
cb() => T
-

Returns

-

fn

-

▸ (): T

-
Returns
-

T

-

Since

-

2.0.0. -Creates a singleton object.

-

Defined in

-

src/core/ioc/dependency-injection.ts:11

-
-

transient

-

transient<T>(cb): () => () => T

-

@PURE

-

Type parameters

- - - - - - - - - - - -
Name
T
-

Parameters

- - - - - - - - - - - - - -
NameType
cb() => () => T
-

Returns

-

fn

-

▸ (): () => T

-
Returns
-

fn

-

▸ (): T

-
Returns
-

T

-

Since

-

2.0.0 -Creates a transient object

-

Defined in

-

src/core/ioc/dependency-injection.ts:21

- - \ No newline at end of file diff --git a/docs/api/namespaces/CommandError.html b/docs/api/namespaces/CommandError.html deleted file mode 100644 index 2d3a364f6..000000000 --- a/docs/api/namespaces/CommandError.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - -Namespace: CommandError | sern - Handlers. Redefined. - - - - - - - - - - - -

Namespace: CommandError

Interfaces

- -

Functions

-

of

-

of(): Object

-

Returns

-

Object

- - - - - - - - - - - - - - - - - - - - - -
NameType
log<T>(type: keyof Logging<unknown>, message: T) => Record<PropertyKey, unknown>
reply(bodyContent: ReplyOptions) => Record<PropertyKey, unknown>
status(p: "fail" | "continue") => Record<PropertyKey, unknown>
-

Defined in

-

src/core/structures/command-error.ts:10

- - \ No newline at end of file diff --git a/docs/api/namespaces/Presence.html b/docs/api/namespaces/Presence.html deleted file mode 100644 index dc0171572..000000000 --- a/docs/api/namespaces/Presence.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - -Namespace: Presence | sern - Handlers. Redefined. - - - - - - - - - - - -

Namespace: Presence

Interfaces

- -

Type Aliases

-

Config

-

Ƭ Config<T>: Object

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof Dependencies[]
-

Type declaration

- - - - - - - - - - - - - - - - - -
NameType
execute(...v: IntoDependencies<T>) => Result
inject?[...T]
-

Defined in

-

src/core/presences.ts:17

-

Functions

-

module

-

module<T>(conf): Config<T>

-

A small wrapper to provide type inference. -Create a Presence module which MUST be put in a file called presence.(language-extension) -adjacent to the file where Sern.init is CALLED.

-

Type parameters

- - - - - - - - - - - - - -
NameType
Textends keyof Dependencies[]
-

Parameters

- - - - - - - - - - - - - -
NameType
confConfig<T>
-

Returns

-

Config<T>

-

Defined in

-

src/core/presences.ts:28

-
-

of

-

of(root): Object

-

Create a Presence body which can be either:

-
    -
  • once, the presence is activated only once.
  • -
  • repeated, per cycle or event, the presence can be changed.
  • -
-

Parameters

- - - - - - - - - - - - - -
NameType
rootOmit<Result, "repeat" | "onRepeat">
-

Returns

-

Object

- - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
once() => Omit<Result, "repeat" | "onRepeat">-
repeated(onRepeat: PresenceReduce, repeat: number | [Emitter, string]) => { activities?: ActivitiesOptions[] ; afk?: boolean ; onRepeat: PresenceReduce ; repeat: number | [Emitter, string] ; shardId?: number[] ; status?: Status }-
-

Defined in

-

src/core/presences.ts:37

- - \ No newline at end of file diff --git a/docs/api/namespaces/Sern.html b/docs/api/namespaces/Sern.html deleted file mode 100644 index fe9c81f8b..000000000 --- a/docs/api/namespaces/Sern.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - -Namespace: Sern | sern - Handlers. Redefined. - - - - - - - - - - - -

Namespace: Sern

Functions

-

init

-

init(maybeWrapper): void

-

Parameters

- - - - - - - - - - - - - -
NameType
maybeWrapperWrapper | "file"
-

Returns

-

void

-

Since

-

1.0.0

-

Example

-
src/index.ts
Sern.init({
commands: 'dist/commands',
events: 'dist/events',
})
-

Defined in

-

src/sern.ts:26

- - \ No newline at end of file diff --git a/docs/cli.html b/docs/cli.html deleted file mode 100644 index 3d715e9c2..000000000 --- a/docs/cli.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - -CLI | sern - Handlers. Redefined. - - - - - - - - - - - -

CLI

-

Publish commands to the API, install plugins, and use other tools provided by our cli.

-

The CLI is your pocketknife for discord bot development. It'll have all features necessary for developing and shipping to production.

-
Usage: sern [options] [command]


___ ___ _ __ _ __
/ __|/ _ \ '__| '_ \
\__ \ __/ | | | | |
|___/\___|_| |_| |_|

Welcome!
If you're new to sern, run npm create @sern/bot for an interactive setup to your new bot project!

If you have any ideas, suggestions, bug reports, kindly join our support server: https://sern.dev/discord

Options:
-v, --version output the version number
-h, --help display help for command

Commands:
init [options] Quickest way to scaffold a new project [DEPRECATED]
plugins [options] Install plugins from https://github.com/sern-handler/awesome-plugins
extra Easy way to add extra things in your sern project
commands Defacto way to manage your slash commands
help [command] display help for command
- - \ No newline at end of file diff --git a/docs/cli/build.html b/docs/cli/build.html deleted file mode 100644 index 8e8f34e1e..000000000 --- a/docs/cli/build.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -build | sern - Handlers. Redefined. - - - - - - - - - - - -

build

Usage: sern build [options]

Build your bot

Options:
-f --format [fmt] The module system of your application. `cjs` or `esm` (default: "esm")
-m --mode [mode] the mode for sern to build in. `production` or `development` (default: "development")
-W --suppress-warnings suppress experimental warning
-p --project [filePath] build with this sern.build file
-h, --help display help for command
-

Guiding Principles

-

When designing the sern build command, our aim was to make building bot applications as simple as possible for the majority of developers. The setup process has been streamlined, and most of the configuration details have been handled for you. Here are some key points to keep in mind:

-
    -
  1. -

    Minimal Configuration: In the vast majority (99%) of use cases, developers do not need to configure the bot application building process. We believe that simplicity is key, so only a few decisions need to be made on the developer's end.

    -
  2. -
  3. -

    Optimal Defaults: We've chosen sensible defaults. This means you can get started without getting bogged down by complex, unneeded configurations.

    -
  4. -
  5. -

    Finetuned for production bots: Our CLI leverages an opinionated build solution powered by esbuild. This ensures that bots are built without issues and can be shipped easily.

    -
  6. -
-

Experimental Features

-

Both the sern build and sern publish commands are marked as experimental. While they might not be completely stable, they are designed to work for the majority of users. We appreciate any feedback in helping us make these features even better.

-

Features

-

The sern build command comes equipped with a range of features designed to enhance your development process. Here's a glimpse of what it offers:

-
    -
  • -

    esbuild Integration: our CLI takes inspiration from the efficiency of SvelteKit, ensuring your bot application is built effectively and with type safety. Leverage the esbuild plugin ecosystem.

    -
  • -
  • -

    Zero Configuration: Building your bot application without additional configuration. The CLI handles most of the setup for you.

    -
  • -
  • -

    Experimental Image Support: We've introduced experimental support for top-level imports of PNG and JPG files, making it easier to include images in your bot application.

    -
  • -
  • -

    Compile Time Constants: Customize your build with constants such as __DEV__, __PROD__, allowing you to tailor your application to different production stages.

    -
  • -
  • -

    Development and Production Modes: The CLI supports both development and production modes, enabling you to tailor your bot application for different stages of development.

    -
  • -
  • -

    Type-safe process.env: The CLI generates a type-safe process.env, reducing potential errors.

    -
  • -
-

Implicits

-
    -
  • command line arguments take precendence over sern.build configuration file
  • -
  • default build format is ESM
  • -
  • defineVersion = true
  • -
  • DEV AND PROD constants are configured.
  • -
  • only a few tsconfig options are respected.
  • -
-

sern.build.js

-
    -
  • For any extra configuration you may need
  • -
  • the cli was intentionally made to be installed globally, and we can't provide typings at a project level. If you need typings, here they are:
  • -
-
type BuildOptions = {
/**
* Define __VERSION__
* This option is a quick switch to defining the __VERSION__ constant which will be a string of the version provided in
* cwd's package.json
*/
defineVersion?: boolean
/**
* default = esm
*/
format?: 'cjs' | 'esm'
/**
* extra esbuild plugins to build with sern.
*/
esbuildPlugins?: esbuild.Plugin[]
/**
* https://esbuild.github.io/api/#drop-labels
**/
dropLabels?: string[]
/**
* https://esbuild.github.io/api/#define
**/
define?: Record<string, string>
/**
* Path to tsconfig
**/
tsconfig?: string;
/**
* default = 'development'
*/
mode: 'production' | 'development',
/**
* will search for env file. If none exists,
* default to .env.
*/
env?: string
}
-

Usage

-
sern build
-

(that was easy)

-

Adapting older projects

-
    -
  • Change your tsconfig.json to extend our generated one.
  • -
-
{ 
"extends": "./.sern/tsconfig.json",
"compilerOptions" : {
//all of your old fields
}
}
-

In depth

-

We use the define and drop labels api in C style macros to have easy development stage differences. -Here is the esbuild full API documentation

-

drop labels

-
# mode is set to production
sern build
-

import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem';

- - -
__DEV__: console.log('This is for production only')
__PROD__: console.log('This is for either mode')
-
- -
# mode is set to production
sern build
-
- -
__PROD__ console.log('This is for either mode')
-
-
-

constants

-

sern builds with three default constants. __DEV__, __PROD__, __VERSION__.

- - -
sern build
-
- -
if(__PROD__) {
console.log('Bot version: ' + __VERSION__)
}
-
-
-

Full esbuild documentation here -Add more to the define field in build options (only availible with a sern.build file at the moment.

-

process.env

-

We generate your process.env with dotenv and generate typings for process.env. Less hassle!

- - -
DISCORD_TOKEN=<your token>
-
process.env.DISCORD_TOKEN // string | undefined (not typesafe :()
-
- -
sern build
-
process.env.DISCORD_TOKEN // string  (typesafe :))
-
-
- - \ No newline at end of file diff --git a/docs/cli/clear.html b/docs/cli/clear.html deleted file mode 100644 index 1dddc9b61..000000000 --- a/docs/cli/clear.html +++ /dev/null @@ -1,41 +0,0 @@ - - - - - -clear | sern - Handlers. Redefined. - - - - - - - - - - - -

clear

Usage: sern commands clear [options]

Clear and reset commands-data-remote.json and the api

Options:
-y, --yes Say yes to all prompts
-e, --env [path] Supply a path to a .env
-h, --help display help for command
-

Implicits

-
    -
  • Automatically reads a .env in the working directory. For seamless integration, your .env file should look like this:
  • -
-
.env
DISCORD_TOKEN=<YOUR_TOKEN>
APPLICATION_ID=<YOUR_APPLICATION_ID>
NODE_ENV=<development|production>
-
    -
  • -

    Calls the discord API with the PUT route with an EMPTY array, essentially setting all registered commands to nothing.

    -
  • -
  • -

    Optionally override an .env path as a command line argument as well. CLI arguments take precedence. -If you do not know how to obtain either of these credentials, click here

    -
  • -
  • -

    Automatically confirm with the -y flag.

    -
  • -
-

Features

-
    -
  • Clears all application data and sern-commands-data.json
  • -
- - \ No newline at end of file diff --git a/docs/cli/extra.html b/docs/cli/extra.html deleted file mode 100644 index ca435b96f..000000000 --- a/docs/cli/extra.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - -extra | sern - Handlers. Redefined. - - - - - - - - - - - -

extra

Usage: sern extra [options]

Easy way to add extra things in your sern project

Options:
-h, --help display help for command
-

This command is pretty straightfoward. Install utilities into your application. Assumes you have a sern.config.json.

- - \ No newline at end of file diff --git a/docs/cli/publish.html b/docs/cli/publish.html deleted file mode 100644 index ec2fc076a..000000000 --- a/docs/cli/publish.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - -publish | sern - Handlers. Redefined. - - - - - - - - - - - -

publish

Usage: sern commands publish [options] [path]

New way to manage your slash commands

Arguments:
path path with respect to current working directory that will locate all published files

Options:
-i, --import [scriptPath...] Prerequire a script to load into publisher
-t, --token [token]
--appId [applicationId]
-h, --help display help for command
-

Implicits

-
    -
  • Automatically reads a .env in the working directory. For seamless integration, your .env file should look like this:
  • -
-
.env
DISCORD_TOKEN=<YOUR_TOKEN>
APPLICATION_ID=<YOUR_APPLICATION_ID>
NODE_ENV=<production|development>
-
    -
  • Calls the discord API with the PUT route. Wherever your commands directory is located, publish will override the existing application commands at Discord. Existing commands do not count towards the command limit creation daily.
  • -
-

You may pass these in as command line arguments as well. CLI arguments take precedence. -If you do not know how to obtain either of these credentials, click here

-

Usage

-

usage

-

Features

-
    -
  • Automatically syncs api with your command base
  • -
  • generates JSON file of output (.sern/command-data-remote.json)
  • -
  • supports publishing direct esm typescript files
  • -
  • commonjs + javascript users need to compile first and then run sern publish on the dist/ output
  • -
  • prerequire scripts.
  • -
  • supports a configuration that is the same as the original publish plugin.
  • -
-

Each command file can have an extra config that follows ValidPublishOptions:

-

Config

-

type ValidMemberPermissions =
| PermissionFlagBits //discord.js enum
| PermissionFlagBits[] //array of discord.js enum
| string //must be a stringified number
| bigint

interface PublishConfig {
guildIds?: string[];
dmPermission?: boolean;
defaultMemberPermissions: ValidMemberPermissions;
}
type ValidPublishOptions =
| PublishConfig
| (absPath: string, module: CommandModule) => PublishConfig
-

In other words, you can export a function or object.

-

Prerequiring

-

Is there a service that is required at the top level of a command?

-
    -
  • Create an ES6 script anywhere:
  • -
-
scripts/prerequire.mjs
import { makeDependencies, single, Service } from '@sern/handler'
import { Client } from 'discord.js'

await makeDependencies({
build: (root) =>
root.add({ "@sern/client": single(() => new Client(...options)) }),
});

await Service('@sern/client').login()
-

This will create a container for publishing. (as of 0.6.0, client is required or this will crash)

-

Example: command published in guild

-

Script ran:

-
sern commands publish -i ./scripts/prerequire.mjs
-
import { commandModule, Service, CommandType } from '@sern/handler'

const client = Service('@sern/client');

export const config = {
guildIds: ["889026545715400705"]
}

export default commandModule( {
type: CommandType.Slash
description: `${client.user.username}'s ping`,
execute: (ctx) => {
ctx.reply('pong')
}
})

- - \ No newline at end of file diff --git a/docs/guide.html b/docs/guide.html deleted file mode 100644 index f9d44a344..000000000 --- a/docs/guide.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - -Introduction | sern - Handlers. Redefined. - - - - - - - - - - - -

Introduction

-

Welcome to our official guide. This guide will go through all the core features of the framework.

-
    -
  • -

    💖 Thank you for choosing sern to be your framework!

    -
  • -
  • -

    Teaching the discord.js library and / or Javascript / Typescript is out of scope of this project, so the documentation assumes you already know these elements.

    - -
  • -
  • -

    discord.js v14 is the only supported library at the moment

    -
  • -
-

You will learn

- -

Working with plugins

- -

Events

- -

Good to know

-
- - \ No newline at end of file diff --git a/docs/guide/getting-started/choose-ide.html b/docs/guide/getting-started/choose-ide.html deleted file mode 100644 index b6aa12372..000000000 --- a/docs/guide/getting-started/choose-ide.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - -Choosing an IDE | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/guide/getting-started/preparing.html b/docs/guide/getting-started/preparing.html deleted file mode 100644 index bbc732963..000000000 --- a/docs/guide/getting-started/preparing.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - -Preparing to Code | sern - Handlers. Redefined. - - - - - - - - - - - -
- - \ No newline at end of file diff --git a/docs/guide/walkthrough/autocomplete.html b/docs/guide/walkthrough/autocomplete.html deleted file mode 100644 index 77c019345..000000000 --- a/docs/guide/walkthrough/autocomplete.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - -Autocomplete | sern - Handlers. Redefined. - - - - - - - - - - - -

Autocomplete

-

Autocomplete is a special interaction where it can happen on multiple options on a single command. We've handled this with a simple -tree search algorithm in a nested options tree.

-

Example

-
src/commands/cheese.ts
export default commandModule({ 
type: CommandType.Slash,
description: "show me cheese",
options: [
{
name: "list",
type: ApplicationCommandOptionType.String,
description: "pick a cheese to show",
required: true,
autocomplete: true,
command: {
onEvent: [],
execute: (ctx) => {
const focus = ctx.options.getFocused();
ctx.respond(['gouda', 'parmesan', 'harvati']
.map((cheese) => ({ name: cheese, value: cheese })));
}
}
}
],
execute: (ctx, [, args]) => {
const cheese = args.getString('list', true);
ctx.reply('selected cheese');
}
})


-

Sern will handle autocomplete interactions at arbitrary depths and subcommand levels.

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/cli.html b/docs/guide/walkthrough/cli.html deleted file mode 100644 index 300bf939c..000000000 --- a/docs/guide/walkthrough/cli.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - -CLI | sern - Handlers. Redefined. - - - - - - - - - - - -

CLI

-

Setting up the CLI is easy.
-The cli is your plug to the sern ecosystem. This will allow you to install plugins with ease, install extra utilities, and much more. -If you haven't yet:

-
npm install -g @sern/cli
- -
sern plugins
-
info

Make sure to have a correct sern.config.json

-

This will display a menu selection of all installable plugins.

-

Note: You must have a sern.config.json to use this command. -If you want to view plugins, visit the repository linked above.

-
    -
  • To install extra utilities into your project
  • -
-
sern extra
-

We have a more in depth guide of the CLI

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/conclusion.html b/docs/guide/walkthrough/conclusion.html deleted file mode 100644 index c0fa6fc07..000000000 --- a/docs/guide/walkthrough/conclusion.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - -Conclusion | sern - Handlers. Redefined. - - - - - - - - - - - -

Conclusion

-

If you reached this far, thank you for reading! We hope you have learned the necessities you need -to create a bot with the sern framework. If you have any other questions, bugs, feature requests, concerns, please join our -community server, and we'll be glad to answer your questions.

-

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/dependency-injection.html b/docs/guide/walkthrough/dependency-injection.html deleted file mode 100644 index 112db11ea..000000000 --- a/docs/guide/walkthrough/dependency-injection.html +++ /dev/null @@ -1,47 +0,0 @@ - - - - - -Dependency Injection | sern - Handlers. Redefined. - - - - - - - - - - - -

Dependency Injection

-
warning

This contains version 2 code. Please view transitioning to v3

-

Since version 2.0.0, dependency injection, thanks to iti, is a feature to customize your bot's utilities and structures.

-

Minimal setup for any project.

-
const client = new Client({
...options
})
Sern.makeDependencies<MyDependencies>({
build: root =>
root.add({
'@sern/client': single(() => client)
})
})

-

For any typescript project, you'll need to add an interface to get intellisense and typings.

-
interface MyDependencies extends Dependencies {
'@sern/client': Singleton<Client>
}
-

Full Dependency Injection setup

-
const client = new Client({
...options
})

interface MyDependencies extends Dependencies {
'@sern/client': Singleton<Client>
}

export const useContainer = Sern.makeDependencies<MyDependencies>({
build: root =>
root.add({
'@sern/client': single(() => client)
})
})

-

Everything else is handled. However, you may want customize things.

-

Adding dependencies to root

-

Each sern built dependency must implement its contracts.

-
    -
  • @sern/logger: Log data. Logging
  • -
  • @sern/errors: Handling errors and lifetime. ErrorHandling
  • -
  • @sern/modules: Managing all command modules. ModuleManager
  • -
  • @sern/emitter: is the key to emit events and occurences in a project. SernEmitter
  • -
-

You may also add disposers so that when the application crashes, the targeted dependency calls that function.

-
export const useContainer = Sern.makeDependencies<MyDependencies>({
build: root =>
root.add({
'@sern/client': single(() => client)
})
.addDisposer({ '@sern/client': client => client.destroy() })
})

-
tip

Below is v3 api.

-

Init

-

Do you need to perform intializing behavor for a dependency?

-
import { Init } from '@sern/handler'; 
class Database implements Init {
init() {
await this.connect()
console.log('Connected');
}
}

-

Modify you Dependencies interface:

-
src/dependencies.d.ts
import type { Initializable } from '@sern/handler'

interface Dependencies extends CoreDependencies {
database: Initializable<Database>
}

-

Make sure its been added:

-
src/index.ts
await makeDependencies({ 
build: root => root
.add({ database => new Database() })
})
- - \ No newline at end of file diff --git a/docs/guide/walkthrough/first-command.html b/docs/guide/walkthrough/first-command.html deleted file mode 100644 index 32cd465ee..000000000 --- a/docs/guide/walkthrough/first-command.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - -First Command | sern - Handlers. Redefined. - - - - - - - - - - - -

First Command

-

We will dissect a basic command. -If you installed a new project via the cli, This is the ping command located in src/commands folder.

-
tip

TLDR: command modules are discord bot commands. There are many types, and each one will correspond to an event from discord. -For example, CommandType.Slash commands will listen to slash command interactions.

-

import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem';

- - -
const { CommandType, commandModule } = require('@sern/handler');

export default commandModule({
type: CommandType.Both,
plugins: [],
description: 'A ping command',
// alias : [],
execute: async (ctx, args) => {
await ctx.reply('Pong 🏓');
},
})
-
- -
import { commandModule, CommandType } from '@sern/handler';

export default commandModule({
type: CommandType.Both,
plugins: [],
description: 'A ping command',
// alias : [],
execute: async (ctx, args) => {
await ctx.reply({ content: 'Pong 🏓' });
},
});

-
-
-

To view what each of these properties mean in depth, visit the official documentation.

-

Types of command modules

-

Every command module type is part of an enum. This field allows type inference for the rest of a module's fields.
-All the command types can be found in the official documentation!

-

So, lets say you want to make a command module that listens to modals.

-

Note: Keep in mind you'll need to send a modal with a custom id dm-me. This example below is the response to a modal being sent. -

- - -
const { CommandType, commandModule } = require('@sern/handler');
exports.default = commandModule({
name: 'dm-me',
type: CommandType.Modal,
async execute (modal) {
const value = modal.fields.getTextInputValue('message');
modal.client.users.fetch('182326315813306368').then( u =>
u.send(value + ` from ${modal.user}`)
);
modal.reply( { ephemeral:true, content: 'Sent' })
}
});
-
- -
import { commandModule, CommandType } from '@sern/handler';
export default commandModule({
name: 'dm-me',
type: CommandType.Modal,
async execute (modal) {
const value = modal.fields.getTextInputValue('message');
modal.client.users.fetch('182326315813306368').then( u =>
u.send(value + ` from ${modal.user}`)
);
modal.reply( { ephemeral:true, content: 'Sent' })
}
});
-
-
-

Commands are straight forward. Keep in mind, every other property on the commandModule object is -optional except the type and execute function.

-

Context class

-

The provided Context class helps with modules of CommandType.Both (A mixture of slash / legacy commands).

-

The Context class is passed into modules with type:

-
    -
  • CommandType.Both
  • -
  • CommandType.Slash
  • -
  • CommandType.Text
  • -
-

This data structure helps interop between legacy commands and slash commands with ease.

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/first-event.html b/docs/guide/walkthrough/first-event.html deleted file mode 100644 index 858825128..000000000 --- a/docs/guide/walkthrough/first-event.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - -First Event Module | sern - Handlers. Redefined. - - - - - - - - - - - -

First Event Module

-

We will dissect a basic event module.

-
tip

TLDR: event modules are event listeners. there are three types EventType.Discord, EventType.Sern, EventType.External

-

import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem';

- - -
exports.default = eventModule({
type: EventType.Sern,
plugins : [],
name: 'module.activate',
execute(event) {
console.log(event);
}
})
-
- -
export default eventModule({
type: EventType.Sern,
plugins : [],
name: 'module.activate', //name of event.
execute(event) {
console.log(event);
}
})
-
-
-

Like command modules, the type property denotes what kind of event it is, which -can be found here.

-

To view what each of these properties mean in depth, visit the official documentation.

-

External

-

In version 2 & 3, any dependency that you have passed into makeDependencies can be registered here as well.

-
src/index.ts
await makeDependencies({ 
build: root => root.add({
eventlistener: single(() => new EventEmitter())
})
})
-
events/myevent.ts
export default eventModule({ 
type: EventType.External,
emitter: 'eventlistener',
execute: (args) => {
console.log('Got event from eventlistener: ', args);
}

})

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/goal.html b/docs/guide/walkthrough/goal.html deleted file mode 100644 index 572a3e1f2..000000000 --- a/docs/guide/walkthrough/goal.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - -Goal | sern - Handlers. Redefined. - - - - - - - - - - - -

Goal

-

This walkthrough will be written in TypeScript but will have JavaScript snippets throughout.

-

Make robust, modular, bots

-
    -
  • Modularity: sern is built with modularity in mind. You can swap pieces and parts easily.
  • -
  • Familiar: commands and structures are similar to classic v12 handlers and the official discord.js command handler guide, while packing many features
  • -
  • Concise: Too much code is a liability. with sern, write less for more 🤯
  • -
-

Using @sapphire/framework

-
commands/ping.ts
import { Command } from '@sapphire/framework'
import type { CommandInteraction } from 'discord.js'

export class PingCommand extends Command {
public constructor(context: Command.Context) {
super(context, {
description: 'Pong!',
chatInputCommand: {
register: true,
},
})
}
public async chatInputRun(interaction: CommandInteraction) {
await interaction.reply('Pong!')
}
}
-

Using @sern/handler

-
commands/ping.ts
import { commandModule, CommandType } from '@sern/handler'
import { publish } from '../plugins';

export default commandModule({
type: CommandType.Both,
plugins: [publish()],
description: 'Pong!',
execute: (ctx, args) => {
await ctx.reply('Pong!')
}
})
-

Keep in mind the above example acts as both a slash command AND text command

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/good-to-know.html b/docs/guide/walkthrough/good-to-know.html deleted file mode 100644 index bd4ff88c5..000000000 --- a/docs/guide/walkthrough/good-to-know.html +++ /dev/null @@ -1,27 +0,0 @@ - - - - - -Good to know | sern - Handlers. Redefined. - - - - - - - - - - - -

Good to know

-

sern.config.json

-

A sern.config.json, although not necessary, allows your project to communicate with our cli.

-

For example, when installing typescript plugins, the language property is necessary to install from our -open source repository.

-

Using the cli and running sern init --sync on pre-existing projects should install this json file in the root directory given. -Or, if this is a brand-new project, sern init automatically installs it.

-
{
"language": "typescript",
"paths": {
"base": "src",
"commands": "commands"
}
}
- - \ No newline at end of file diff --git a/docs/guide/walkthrough/new-project.html b/docs/guide/walkthrough/new-project.html deleted file mode 100644 index 49fa3849b..000000000 --- a/docs/guide/walkthrough/new-project.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - -Create a new project | sern - Handlers. Redefined. - - - - - - - - - - - - - - \ No newline at end of file diff --git a/docs/guide/walkthrough/plugins.html b/docs/guide/walkthrough/plugins.html deleted file mode 100644 index f35c10140..000000000 --- a/docs/guide/walkthrough/plugins.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - -Plugins | sern - Handlers. Redefined. - - - - - - - - - - - -

Plugins

-
tip

TLDR: Plugins help reduce code repetition and are installable via sern plugins. Put them onto the plugins field of a command/event module.

-

Installing

-

Chances are, you just want your bot to work. Plugins can preprocess and create reusable conditions for modules.

-

run:

-
sern plugins
-
    -
  • Install your favorite(s) (or the ones that look the coolest). In my imaginary mind, I installed the ownerOnly plugin. -
      -
    • This should install in plugins directory in src.
    • -
    -
  • -
  • Some plugins only work with specific types. Most are targeted towards slash / both modules.
  • -
  • Add to your module.
  • -
-
import { commandModule, CommandType } from '@sern/handler'
import { ownerOnly } from '../plugins'

export default commandModule({
type: CommandType.Both,
plugins: [ownerOnly(['182326315813306368')],
description: 'ping command',
execute: (ctx) => {
ctx.reply('hello, owner');
}
})

-

┗|`O′|┛ perfect, your first plugin!

-

Creating your own plugins

-

The controller determines in plugins whether to continue or fail.

-

The controller object

-
export interface Controller {
next: () => Ok<void>;
stop: () => Err<void>;
}
-

Init Plugins

-

Init plugins modify how commands are loaded or do preprocessing. -An instance of the above object is passed into every plugin.
-This controls whether a module is stored into sern.

-
import { CommandInitPlugin } from '@sern/handler'
import path from 'path'
export const inDir = (dir: string) => {
return CommandInitPlugin(({ module, absPath }) => {
if(path.dirname(absPath) !== dir) {
console.log(+new Date(), `${module.name} is not in the correct directory!`);
return controller.stop()
}
console.log(+new Date(), `${module.name} is in the correct directory!`);
return controller.next(); //continue
});
}

-

Above, this simple plugin logs that the module has been loaded along with a timestamp.

-

Event Plugins

-

control-plugins

-
    -
  • An event is emitted by discord.js.
  • -
  • This event is passed to all plugins (in order!!),
  • -
  • If all are successful,
  • -
-

The command is executed. Calling controller.stop() notifies sern that this command should not be run, -and command is ignored.

-

Can you predict the behavior of this command?

-
    -
  • Before loading into sern, this command module will check if this module is in the correct directory other.
  • -
  • Before an event occurs, this command module will check if the user has the id 182326315813306368.
  • -
-
tip

Event Plugins are good for filtering, preconditions, parsing.

-

If all plugins return controller.next(), this command replies Pong 🏓

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/sern-emitter.html b/docs/guide/walkthrough/sern-emitter.html deleted file mode 100644 index f594e1d6f..000000000 --- a/docs/guide/walkthrough/sern-emitter.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - -The SernEmitter class | sern - Handlers. Redefined. - - - - - - - - - - - -

The SernEmitter class

-

You're shipped with the SernEmitter. This EventEmitter listens to

-
    -
  • command modules executing and its status, the module.activate event
  • -
  • command modules registered and its status, the module.register event
  • -
  • On default, sern creates a single SernEmitter for your bot process.
  • -
  • any error that occurs, the error event
  • -
  • warn events, where it is possible to throw errors
  • -
-

You can put these and other event listeners into event modules! -
View all events

- - \ No newline at end of file diff --git a/docs/guide/walkthrough/services.html b/docs/guide/walkthrough/services.html deleted file mode 100644 index dbed7a837..000000000 --- a/docs/guide/walkthrough/services.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -Services | sern - Handlers. Redefined. - - - - - - - - - - - -

Services

-
tip

This is version 3 api only!!

-
tip

TLDR: The direct upgrade to useContainer. if you set up a bot with create-bot, check dependencies.d.ts. -Dependencies are the types that Services uses.

-

You need someway to use dependencies in your command module. Services to the rescue!

-
src/dependencies.d.ts
import { CoreDependencies, Singleton } from '@sern/handler'
import { Client } from 'discord.js'

interface Dependencies extends CoreDependencies {
'@sern/client': Singleton<Client>
}

-

Recall, some keys in Dependencies are special.

-
-

Special key dependency must implement its contracts.

-
    -
  • @sern/client: Your discord client. -> Emitter
  • -
  • @sern/logger: Log data -> Logging
  • -
  • @sern/errors: Handling errors and lifetime -> ErrorHandling
  • -
  • @sern/modules: Managing all command modules -> ModuleManager
  • -
  • @sern/emitter: is the key to emit events and occurences in a project -> Emitter
  • -
-
-

Lets try to access the client you provided.

-
src/commands/ping.ts
import { Service } from '@sern/handler'

export default commandModule({
// ...
execute: (ctx) => {
//Client!
const client = Service('@sern/client');
}
//
})
-

import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem';

-

Safety

-
    -
  • Services cannot be called in other services while makeDependencies is forming.
  • -
- - -

Lets pass a logger into our database.

-
index.ts
await makeDependencies({ 
build: root => root
//Overriding the default logger provided.
.upsert({ '@sern/logger': single(() => new Logger()) })

// Wiring our logger into the database.
.add(ctx => {
return { database: single(() => new Database(ctx['sern/logger']))) }
})
})
-
- -
index.ts
await makeDependencies({ 
build: root => root
//Overriding the default logger provided.
.upsert({ '@sern/logger': single(() => new Logger()) })

// Wiring our logger into the database.
// We wire our database incorrectly. Logger should be passed INTO the constructor
.add({ database: single(() => new Database()) })
})
-
index.ts
import { Service, makeDependencies } from '@sern/handler';

//Calling Service prematurely!
const logger = Service('@sern/logger');

class Database {

constructor() {
this.logger = logger
}
}
-

This is a code smell anyway. It breaks encapsulation and defeats the purpose of wiring dependencies - -

-
    -
  • -

    Services can only be used after sern has made dependencies.

    -
      -
    • Calling a service before will crash your application.
    • -
    -
  • -
  • -

    Services can be safely used outside of commandModules.

    -
      -
    • Be careful to not cause too many side effects.
    • -
    -
  • -
  • -

    You will need to wire dependencies together.

    -
  • -
- - -
index.ts
await makeDependencies(...pass your options here)
-
commands/ping.ts
// This is guaranteed to be defined if configured correctly
import { Service } from '@sern/handler';
const client = Service('@sern/client');
-
- -
index.ts
import { Service, makeDependencies } from '@sern/handler';
/* DON'T USE SERVICES BEFORE CALLING makeDependencies */
const logger = Service('@sern/logger');

await makeDependencies()
-
-
-
    -
  • Services can only be used after sern has made dependencies. -
      -
    • Calling a service before will crash your application.
    • -
    -
  • -
  • Services can be safely used outside of commandModules. -
      -
    • Be careful to not cause too many side effects.
    • -
    -
  • -
- -
    -
  • use Service for single dependency.
  • -
  • use Services for multiple dependencies.
  • -
- - \ No newline at end of file diff --git a/docs/guide/walkthrough/transition.html b/docs/guide/walkthrough/transition.html deleted file mode 100644 index bfd27eea5..000000000 --- a/docs/guide/walkthrough/transition.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - -Transition from v2 to v3 | sern - Handlers. Redefined. - - - - - - - - - - - -

Transition from v2 to v3

-
src/index.ts
- Sern.makeDependencies({ build: () => {} })
+ await makeDependencies({ build: () => {} })
-

v3 comes with the new Service api. To make sure to enable intellisense -include a dependencies.d.ts file into compilation. Click here for all new features

-
/**
* This file serves as intellisense for sern projects.
* Types are declared here for dependencies to function properly
* Service(s) api rely on this file to provide a better developer experience.
*/

import { SernEmitter, Logging, CoreModuleStore, ModuleManager, ErrorHandling, CoreDependencies, Singleton } from '@sern/handler'
import { Client } from 'discord.js'

declare global {
interface Dependencies extends CoreDependencies {
'@sern/client': Singleton<Client>
}
}

export {}

-

A standard project file tree:

-

file tree

- - \ No newline at end of file diff --git a/docs/intro.html b/docs/intro.html deleted file mode 100644 index 3c53d9bf0..000000000 --- a/docs/intro.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - -Welcome! | sern - Handlers. Redefined. - - - - - - - - - - - -

Welcome!

-
warning

Please read the transition page if you are moving from version 2 to version 3.

-

Content

-
    -
  • transition for current users to transition bots to version 3.
  • -
  • /docs/api contains autogenerated documentation of our codebase using typedoc
  • -
  • /docs/guide contains a basic startup guide and details to get started with sern faster!
  • -
-
tip

This site is open source! Please do contribute if you find any bugs, typos, or sections in need of improvements.

-
tip

If you have problems, join the discord server here

- - \ No newline at end of file diff --git a/favicon.svg b/favicon.svg new file mode 100644 index 000000000..df32e6e78 --- /dev/null +++ b/favicon.svg @@ -0,0 +1,9 @@ + + logo-dark + + + + + + \ No newline at end of file diff --git a/guide/getting-started/choose-ide/index.html b/guide/getting-started/choose-ide/index.html new file mode 100644 index 000000000..266fe4454 --- /dev/null +++ b/guide/getting-started/choose-ide/index.html @@ -0,0 +1,53 @@ + Choosing an IDE | sern + + + Skip to content

Choosing an IDE

Choosing an IDE is a matter of personal preference. They make programming easier. The following are some +suggestions for choosing an IDE:

+
\ No newline at end of file diff --git a/guide/getting-started/preparing/index.html b/guide/getting-started/preparing/index.html new file mode 100644 index 000000000..ab04d547f --- /dev/null +++ b/guide/getting-started/preparing/index.html @@ -0,0 +1,46 @@ + Preparing to Code | sern + + + Skip to content

Preparing to Code

After installing an IDE, you need to install node.

+

Click to download the LTS version of node right here.

+

After you downloaded node you will need:

+

Discord token

+

CONTINUE 🤓

\ No newline at end of file diff --git a/guide/walkthrough/autocomplete/index.html b/guide/walkthrough/autocomplete/index.html new file mode 100644 index 000000000..362bc82d2 --- /dev/null +++ b/guide/walkthrough/autocomplete/index.html @@ -0,0 +1,46 @@ + Autocomplete | sern + + + Skip to content

Autocomplete

Autocomplete is a special interaction where it can happen on multiple options on a single command. We’ve handled this with a simple +tree search algorithm in a nested options tree.

+

Example

+
src/commands/cheese.ts
1
export default commandModule({
2
type: CommandType.Slash,
3
description: "show me cheese",
4
options: [
5
{
6
name: "list",
7
type: ApplicationCommandOptionType.String,
8
description: "pick a cheese to show",
9
required: true,
10
autocomplete: true,
11
command: {
12
onEvent: [],
13
execute: (ctx) => {
14
const focus = ctx.options.getFocused();
15
ctx.respond(
16
["gouda", "parmesan", "harvati"].map((cheese) => ({
17
name: cheese,
18
value: cheese,
19
})),
20
);
21
},
22
},
23
},
24
],
25
execute: (ctx, [, args]) => {
26
const cheese = args.getString("list", true);
27
ctx.reply("selected cheese");
28
},
29
});
+

Sern will handle autocomplete interactions at arbitrary depths and subcommand levels.

\ No newline at end of file diff --git a/guide/walkthrough/cli/index.html b/guide/walkthrough/cli/index.html new file mode 100644 index 000000000..eca851f24 --- /dev/null +++ b/guide/walkthrough/cli/index.html @@ -0,0 +1,58 @@ + CLI | sern + + + Skip to content

CLI

Setting up the CLI is easy.

+

The cli is your plug to the sern ecosystem. This will allow you to install plugins with ease, install extra utilities, and much more. +If you haven’t yet:

+
Terminal window
npm install -g @sern/cli
+ +
Terminal window
sern plugins
+ +

This will display a menu selection of all installable plugins.

+

Note: You must have a sern.config.json to use this command. +If you want to view plugins, visit the repository linked above.

+
    +
  • To install extra utilities into your project
  • +
+
Terminal window
sern extra
+

We have a more in depth guide of the CLI

\ No newline at end of file diff --git a/guide/walkthrough/conclusion/index.html b/guide/walkthrough/conclusion/index.html new file mode 100644 index 000000000..63814adb8 --- /dev/null +++ b/guide/walkthrough/conclusion/index.html @@ -0,0 +1,45 @@ + Conclusion | sern + + + Skip to content

Conclusion

If you reached this far, thank you for reading! We hope you have learned the necessities you need +to create a bot with the sern framework. If you have any other questions, bugs, feature requests, concerns, please join our +community server, and we’ll be glad to answer your questions.

+

\ No newline at end of file diff --git a/guide/walkthrough/dependency-injection/index.html b/guide/walkthrough/dependency-injection/index.html new file mode 100644 index 000000000..86c3dd443 --- /dev/null +++ b/guide/walkthrough/dependency-injection/index.html @@ -0,0 +1,71 @@ + Dependency Injection | sern + + + Skip to content

Dependency Injection

+

Since version 2.0.0, dependency injection, thanks to iti, is a feature to customize your bot’s utilities and structures.

+

Minimal setup for any project.

+
1
const client = new Client({
2
...options,
3
});
4
Sern.makeDependencies<MyDependencies>({
5
build: (root) =>
6
root.add({
7
"@sern/client": single(() => client),
8
}),
9
});
+

For any typescript project, you’ll need to add an interface to get intellisense and typings.

+
1
interface MyDependencies extends Dependencies {
2
"@sern/client": Singleton<Client>;
3
}
+

Full Dependency Injection setup

+
1
const client = new Client({
2
...options,
3
});
4
+
5
interface MyDependencies extends Dependencies {
6
"@sern/client": Singleton<Client>;
7
}
8
+
9
export const useContainer = Sern.makeDependencies<MyDependencies>({
10
build: (root) =>
11
root.add({
12
"@sern/client": single(() => client),
13
}),
14
});
+

Everything else is handled. However, you may want customize things.

+

Adding dependencies to root

+

Each sern built dependency must implement its contracts.

+
    +
  • @sern/logger: Log data. Logging
  • +
  • @sern/errors: Handling errors and lifetime. ErrorHandling
  • +
  • @sern/modules: Managing all command modules. ModuleManager
  • +
  • @sern/emitter: is the key to emit events and occurences in a project. SernEmitter
  • +
+

You may also add disposers so that when the application crashes, the targeted dependency calls that function.

+
1
export const useContainer = Sern.makeDependencies<MyDependencies>({
2
build: (root) =>
3
root
4
.add({
5
"@sern/client": single(() => client),
6
})
7
.addDisposer({ "@sern/client": (client) => client.destroy() }),
8
});
+ +

Init

+

Do you need to perform intializing behavor for a dependency?

+
1
import { Init } from "@sern/handler";
2
class Database implements Init {
3
init() {
4
await this.connect();
5
console.log("Connected");
6
}
7
}
+

Modify you Dependencies interface:

+
src/dependencies.d.ts
1
import type { Initializable } from "@sern/handler";
2
+
3
interface Dependencies extends CoreDependencies {
4
database: Initializable<Database>;
5
}
+

Make sure its been added:

+
src/index.ts
1
await makeDependencies({
2
build: root => root
3
.add({ database => new Database() })
4
})
\ No newline at end of file diff --git a/guide/walkthrough/first-command/index.html b/guide/walkthrough/first-command/index.html new file mode 100644 index 000000000..6e0c1a636 --- /dev/null +++ b/guide/walkthrough/first-command/index.html @@ -0,0 +1,68 @@ + First Command | sern + + + Skip to content

First Command

We will dissect a basic command. +If you installed a new project via the cli, This is the ping command located in src/commands folder.

+ + +
1
const { CommandType, commandModule } = require("@sern/handler");
2
+
3
export default commandModule({
4
type: CommandType.Both,
5
plugins: [],
6
description: "A ping command",
7
// alias : [],
8
execute: async (ctx, args) => {
9
await ctx.reply("Pong 🏓");
10
},
11
});
+

To view what each of these properties mean in depth, visit the official documentation.

+

Types of command modules

+

Every command module type is part of an enum. This field allows type inference for the rest of a module’s fields.
+All the command types can be found in the official documentation!

+

So, lets say you want to make a command module that listens to modals.

+

Note: Keep in mind you’ll need to send a modal with a custom id dm-me. This example below is the response to a modal being sent.

+
+
1
const { CommandType, commandModule } = require("@sern/handler");
2
exports.default = commandModule({
3
name: "dm-me",
4
type: CommandType.Modal,
5
async execute(modal) {
6
const value = modal.fields.getTextInputValue("message");
7
modal.client.users
8
.fetch("182326315813306368")
9
.then((u) => u.send(value + ` from ${modal.user}`));
10
modal.reply({ ephemeral: true, content: "Sent" });
11
},
12
});
+

Commands are straight forward. Keep in mind, every other property on the commandModule object is +optional except the type and execute function.

+

Context class

+

The provided Context class helps with modules of CommandType.Both (A mixture of slash / legacy commands).

+

The Context class is passed into modules with type:

+
    +
  • CommandType.Both
  • +
  • CommandType.Slash
  • +
  • CommandType.Text
  • +
+

This data structure helps interop between legacy commands and slash commands with ease.

\ No newline at end of file diff --git a/guide/walkthrough/first-event/index.html b/guide/walkthrough/first-event/index.html new file mode 100644 index 000000000..59122ef1e --- /dev/null +++ b/guide/walkthrough/first-event/index.html @@ -0,0 +1,52 @@ + First Event | sern + + + Skip to content

First Event

We will dissect a basic event module.

+ + +
1
exports.default = eventModule({
2
type: EventType.Sern,
3
plugins : [],
4
name: 'module.activate',
5
execute(event) {
6
console.log(event);
7
}
8
})
+

Like command modules, the type property denotes what kind of event it is, which +can be found here.

+

To view what each of these properties mean in depth, visit the official documentation.

+

External

+

In version 2 & 3, any dependency that you have passed into makeDependencies can be registered here as well.

+
src/index.ts
1
await makeDependencies({
2
build: root => root.add({
3
eventlistener: single(() => new EventEmitter())
4
})
5
})
+
events/myevent.ts
1
export default eventModule({
2
type: EventType.External,
3
emitter: 'eventlistener',
4
execute: (args) => {
5
console.log('Got event from eventlistener: ', args);
6
}
7
})
\ No newline at end of file diff --git a/guide/walkthrough/goal/index.html b/guide/walkthrough/goal/index.html new file mode 100644 index 000000000..d6f6df0c5 --- /dev/null +++ b/guide/walkthrough/goal/index.html @@ -0,0 +1,55 @@ + Goal | sern + + + Skip to content

Goal

This walkthrough will be written in TypeScript but will have JavaScript snippets throughout.

+

Make robust, modular, bots

+
    +
  • Modularity: sern is built with modularity in mind. You can swap pieces and parts easily.
  • +
  • Familiar: commands and structures are similar to classic v12 handlers and the official discord.js command handler guide, while packing many features
  • +
  • Concise: Too much code is a liability. with sern, write less for more 🤯
  • +
+

Using @sapphire/framework

+
commands/ping.ts
1
import { Command } from "@sapphire/framework";
2
import type { CommandInteraction } from "discord.js";
3
+
4
export class PingCommand extends Command {
5
public constructor(context: Command.Context) {
6
super(context, {
7
description: "Pong!",
8
chatInputCommand: {
9
register: true,
10
},
11
});
12
}
13
public async chatInputRun(interaction: CommandInteraction) {
14
await interaction.reply("Pong!");
15
}
16
}
+

Using @sern/handler

+
commands/ping.ts
1
import { commandModule, CommandType } from "@sern/handler";
2
import { publish } from "../plugins";
3
+
4
export default commandModule({
5
type: CommandType.Both,
6
plugins: [publish()],
7
description: "Pong!",
8
execute: (ctx, args) => {
9
await ctx.reply("Pong!");
10
},
11
});
+

Keep in mind the above example acts as both a slash command AND text command

\ No newline at end of file diff --git a/guide/walkthrough/good-to-know/index.html b/guide/walkthrough/good-to-know/index.html new file mode 100644 index 000000000..c2045e9c7 --- /dev/null +++ b/guide/walkthrough/good-to-know/index.html @@ -0,0 +1,48 @@ + Good to Know | sern + + + Skip to content

Good to Know

sern.config.json

+

A sern.config.json, although not necessary, allows your project to communicate with our cli.

+

For example, when installing typescript plugins, the language property is necessary to install from our +open source repository.

+

Using the cli and running sern init --sync on pre-existing projects should install this json file in the root directory given. +Or, if this is a brand-new project, sern init automatically installs it.

+
{
"language": "typescript",
"paths": {
"base": "src",
"commands": "commands"
}
}
\ No newline at end of file diff --git a/guide/walkthrough/new-project/index.html b/guide/walkthrough/new-project/index.html new file mode 100644 index 000000000..c38c059ca --- /dev/null +++ b/guide/walkthrough/new-project/index.html @@ -0,0 +1,44 @@ + New Project | sern + + + Skip to content

New Project

Terminal window
npm create @sern/bot
+

and follow the interactive prompts.

+

if somehow you need help, feel free to ask here

\ No newline at end of file diff --git a/guide/walkthrough/plugins/index.html b/guide/walkthrough/plugins/index.html new file mode 100644 index 000000000..178310f88 --- /dev/null +++ b/guide/walkthrough/plugins/index.html @@ -0,0 +1,84 @@ + Plugins | sern + + + Skip to content

Plugins

+

Installing

+

Chances are, you just want your bot to work. Plugins can preprocess and create reusable conditions for modules.

+

run:

+
Terminal window
sern plugins
+
    +
  • Install your favorite(s) (or the ones that look the coolest). In my imaginary mind, I installed the ownerOnly plugin. +
      +
    • This should install in plugins directory in src.
    • +
    +
  • +
  • Some plugins only work with specific types. Most are targeted towards slash / both modules.
  • +
  • Add to your module.
  • +
+
1
import { commandModule, CommandType } from '@sern/handler'
2
import { ownerOnly } from '../plugins'
3
+
4
export default commandModule({
5
type: CommandType.Both,
6
plugins: [ownerOnly(['182326315813306368')],
7
description: 'ping command',
8
execute: (ctx) => {
9
ctx.reply('hello, owner');
10
}
11
})
+

┗|` O′|┛ perfect, your first plugin!

+

Creating your own plugins

+

The controller determines in plugins whether to continue or fail.

+

The controller object

+
1
export interface Controller {
2
next: () => Ok<void>;
3
stop: () => Err<void>;
4
}
+

Init Plugins

+

Init plugins modify how commands are loaded or do preprocessing. +An instance of the above object is passed into every plugin.
+This controls whether a module is stored into sern.

+
1
import { CommandInitPlugin } from "@sern/handler";
2
import path from "path";
3
export const inDir = (dir: string) => {
4
return CommandInitPlugin(({ module, absPath }) => {
5
if (path.dirname(absPath) !== dir) {
6
console.log(
7
+new Date(),
8
`${module.name} is not in the correct directory!`,
9
);
10
return controller.stop();
11
}
12
console.log(+new Date(), `${module.name} is in the correct directory!`);
13
return controller.next(); //continue
14
});
15
};
+

Above, this simple plugin logs that the module has been loaded along with a timestamp.

+

Event Plugins

+

control-plugins

+
    +
  • An event is emitted by discord.js.
  • +
  • This event is passed to all plugins (in order!!),
  • +
  • If all are successful,
  • +
+

The command is executed. Calling controller.stop() notifies sern that this command should not be run, +and command is ignored.

+

Can you predict the behavior of this command?

+
    +
  • Before loading into sern, this command module will check if this module is in the correct directory other.
  • +
  • Before an event occurs, this command module will check if the user has the id 182326315813306368.
  • +
+ +

If all plugins return controller.next(), this command replies Pong 🏓

\ No newline at end of file diff --git a/guide/walkthrough/sern-emitter/index.html b/guide/walkthrough/sern-emitter/index.html new file mode 100644 index 000000000..4ebfa585a --- /dev/null +++ b/guide/walkthrough/sern-emitter/index.html @@ -0,0 +1,51 @@ + Sern Emitter | sern + + + Skip to content

Sern Emitter

You’re shipped with the SernEmitter. This EventEmitter listens to

+
    +
  • command modules executing and its status, the module.activate event
  • +
  • command modules registered and its status, the module.register event
  • +
  • On default, sern creates a single SernEmitter for your bot process.
  • +
  • any error that occurs, the error event
  • +
  • warn events, where it is possible to throw errors
  • +
+

You can put these and other event listeners into event modules! +
View all events

\ No newline at end of file diff --git a/guide/walkthrough/services/index.html b/guide/walkthrough/services/index.html new file mode 100644 index 000000000..8ab9f265d --- /dev/null +++ b/guide/walkthrough/services/index.html @@ -0,0 +1,107 @@ + Services | sern + + + Skip to content

Services

+ +

You need someway to use dependencies in your command module. Services to the rescue!

+
src/dependencies.d.ts
1
import { CoreDependencies, Singleton } from "@sern/handler";
2
import { Client } from "discord.js";
3
+
4
interface Dependencies extends CoreDependencies {
5
"@sern/client": Singleton<Client>;
6
}
+

Recall, some keys in Dependencies are special.

+
+

Special key dependency must implement its contracts.

+
    +
  • @sern/client: Your discord client. -> Emitter
  • +
  • @sern/logger: Log data -> Logging
  • +
  • @sern/errors: Handling errors and lifetime -> ErrorHandling
  • +
  • @sern/modules: Managing all command modules -> ModuleManager
  • +
  • @sern/emitter: is the key to emit events and occurences in a project -> Emitter
  • +
+
+

Lets try to access the client you provided.

+
src/commands/ping.ts
1
import { Service } from "@sern/handler";
2
+
3
export default commandModule({
4
// ...
5
execute: (ctx) => {
6
//Client!
7
const client = Service("@sern/client");
8
},
9
//
10
});
+ +

Safety

+
    +
  • Services cannot be called in other services while makeDependencies is forming.
  • +
+

Lets pass a logger into our database.

index.ts
1
await makeDependencies({
2
build: root => root
3
//Overriding the default logger provided.
4
.upsert({ '@sern/logger': single(() => new Logger()) })
5
+
6
// Wiring our logger into the database.
7
.add(ctx => {
8
return { database: single(() => new Database(ctx['sern/logger']))) }
9
})
10
})
+
    +
  • +

    Services can only be used after sern has made dependencies.

    +
      +
    • Calling a service before will crash your application.
    • +
    +
  • +
  • +

    Services can be safely used outside of commandModules.

    +
      +
    • Be careful to not cause too many side effects.
    • +
    +
  • +
  • +

    You will need to wire dependencies together.

    +
  • +
+
index.ts
1
await makeDependencies(...pass your options here)
commands/ping.ts
1
// This is guaranteed to be defined if configured correctly
2
import { Service } from "@sern/handler";
3
const client = Service("@sern/client");
+
    +
  • Services can only be used after sern has made dependencies. +
      +
    • Calling a service before will crash your application.
    • +
    +
  • +
  • Services can be safely used outside of commandModules. +
      +
    • Be careful to not cause too many side effects.
    • +
    +
  • +
+ +
    +
  • use Service for single dependency.
  • +
  • use Services for multiple dependencies.
  • +
\ No newline at end of file diff --git a/guide/walkthrough/transition/index.html b/guide/walkthrough/transition/index.html new file mode 100644 index 000000000..8fddca132 --- /dev/null +++ b/guide/walkthrough/transition/index.html @@ -0,0 +1,52 @@ + Transition from v2 to v3 | sern + + + Skip to content

Transition from v2 to v3

src/index.ts
Sern.makeDependencies({ build: () => {} })
await makeDependencies({ build: () => {} })
+

v3 comes with the new Service api. To make sure to enable intellisense +include a dependencies.d.ts file into compilation. Click here for all new features

+
1
/**
2
* This file serves as intellisense for sern projects.
3
* Types are declared here for dependencies to function properly
4
* Service(s) api rely on this file to provide a better developer experience.
5
*/
6
+
7
import {
8
SernEmitter,
9
Logging,
10
CoreModuleStore,
11
ModuleManager,
12
ErrorHandling,
13
CoreDependencies,
14
Singleton,
15
} from "@sern/handler";
16
import { Client } from "discord.js";
17
+
18
declare global {
19
interface Dependencies extends CoreDependencies {
20
"@sern/client": Singleton<Client>;
21
}
22
}
23
+
24
export {};
+

A standard project file tree:

+ +
  • Directorysrc +
    • Directorycommands/
    • Directoryevents/
    • Directoryplugins/
    • dependencies.d.ts
    • index.ts
  • .env
  • .gitignore
  • bun.lockb
  • package.json
  • README.md
  • sern.config.json
  • tsconfig.json
\ No newline at end of file diff --git a/img/Code_-_Insiders_2kTVzm0uIQ.gif b/img/Code_-_Insiders_2kTVzm0uIQ.gif deleted file mode 100644 index 8b131e2fb..000000000 Binary files a/img/Code_-_Insiders_2kTVzm0uIQ.gif and /dev/null differ diff --git a/img/bricks-svgrepo-com.svg b/img/bricks-svgrepo-com.svg deleted file mode 100644 index 6d5026d2a..000000000 --- a/img/bricks-svgrepo-com.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/img/eventplugins.drawio.svg b/img/eventplugins.drawio.svg deleted file mode 100644 index b97d518a3..000000000 --- a/img/eventplugins.drawio.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - -
Event
Event
Plugin 1
Plugin 1
Plugin 2
Plugin 2
Plugin 3
Plugin 3
Is successful
Is successful
Command Executes
Command Executes
Ignore
Ignore
True
True
False
False
Text is not SVG - cannot display
\ No newline at end of file diff --git a/img/favicon.ico b/img/favicon.ico deleted file mode 100644 index dd7512b16..000000000 Binary files a/img/favicon.ico and /dev/null differ diff --git a/img/fire-com.svg b/img/fire-com.svg deleted file mode 100644 index 04c97f96e..000000000 --- a/img/fire-com.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/img/fs.png b/img/fs.png deleted file mode 100644 index 34fb04457..000000000 Binary files a/img/fs.png and /dev/null differ diff --git a/img/logo.png b/img/logo.png deleted file mode 100644 index 5efd366a0..000000000 Binary files a/img/logo.png and /dev/null differ diff --git a/img/old-logo.png b/img/old-logo.png deleted file mode 100644 index 6cc1a5085..000000000 Binary files a/img/old-logo.png and /dev/null differ diff --git a/img/old-sern-logo.png b/img/old-sern-logo.png deleted file mode 100644 index abd439af8..000000000 Binary files a/img/old-sern-logo.png and /dev/null differ diff --git a/img/pencil-svgrepo-com.svg b/img/pencil-svgrepo-com.svg deleted file mode 100644 index f065de53f..000000000 --- a/img/pencil-svgrepo-com.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/img/puzzle-svgrepo-com.svg b/img/puzzle-svgrepo-com.svg deleted file mode 100644 index 4dcddb683..000000000 --- a/img/puzzle-svgrepo-com.svg +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/index.html b/index.html index 143dd6b71..4fe058e95 100644 --- a/index.html +++ b/index.html @@ -1,20 +1,40 @@ - - - - - -sern - Handlers. Redefined. | sern - Handlers. Redefined. - - - - - - - - - - - -

Handlers. Redefined.

With the support of the community made plugins and a powerful CLI, it's more than just a handler.

npm create @sern/bot
logo

Modular

Take apart, build, or customize code with ease to create robust bots.

Concise

Commands are significantly smaller than other competitors. Write impactful, concise code.

Familiar

Code like a traditional command handler. Although not exactly the same, the api is easy to learn and resembles classic v12 command handlers.

- - \ No newline at end of file + Handlers. Redefined. | sern + + + Skip to content

Handlers. Redefined.

With the support of the community made plugins and a powerful CLI, it's more than just a handler.

Modular

Take apart, build, or customize code with ease to create robust bots.

Concise

Commands are significantly smaller than other competitors. Write impactful, concise code.

Familiar

Code like a traditional command handler. Although not exactly the same, the API is easy to learn and resembles classic v12 command handlers.

\ No newline at end of file diff --git a/markdown-page.html b/markdown-page.html deleted file mode 100644 index 2f90c62c0..000000000 --- a/markdown-page.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - -Markdown page example | sern - Handlers. Redefined. - - - - - - - - - - - -

Markdown page example

-

You don't need React to write simple standalone pages.

- - \ No newline at end of file diff --git a/opensearch.xml b/opensearch.xml deleted file mode 100644 index ccbed28bc..000000000 --- a/opensearch.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - sern - Handlers. Redefined. - Search sern - Handlers. Redefined. - UTF-8 - https://sern.dev/img/favicon.ico - - - https://sern.dev/ - \ No newline at end of file diff --git a/plugins.html b/plugins.html deleted file mode 100644 index e433433a2..000000000 --- a/plugins.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - -sern - Handlers. Redefined. - - - - - - - - - - - -

Plugins

- - \ No newline at end of file diff --git a/plugins/index.html b/plugins/index.html new file mode 100644 index 000000000..f254fbfba --- /dev/null +++ b/plugins/index.html @@ -0,0 +1,55 @@ + Plugins | sern + + + Skip to content

Plugins

permCheck

This is perm check, it allows users to parse the permission you want and let the plugin do the rest. (check user for that perm).

filter

Generalized filter plugin. all credit to trueharuu. +Perform declarative conditionals as plugins.

dmOnly

This is dmOnly plugin, it allows commands to be run only in DMs.

assertFields

This plugin checks the fields of a ModalSubmitInteraction +with regex or a custom callback

fromCallback

fromCallback turns a callback into a plugin result. +if the callback returns truthy value, plugin continues. +This control plugin works for every command type. The arguments of the callback +mirror…

channelType

This plugin checks if a channel is the specified type

nsfwOnly

This plugin checks if the channel is nsfw and responds to user with a specified response if not nsfw

buttonConfirmation

This is buttonConfirmation plugin, it runs confirmation prompt in the form of buttons. +Note that you need to use edit/editReply in the command itself because we are already replying in the plugin!…

disable

Disables a command entirely, for whatever reasons you may need.

publish

It allows you to publish your application commands using the discord.js library with ease.

requirePermission

This is perm check, it allows users to parse the permission you want and let the plugin do the rest. (check bot or user for that perm).

cooldown

Allows you to set cooldowns (or “ratelimits”) for commands, limits user/channel/guild actions.

serverOnly

Checks if a command is available in a specific server.

ownerOnly

This is OwnerOnly plugin, it allows only bot owners to run the command, like eval.

confirmation

Asks the user for a confirmation msg before executing the command

\ No newline at end of file diff --git a/reference/example/index.html b/reference/example/index.html new file mode 100644 index 000000000..dbceecaca --- /dev/null +++ b/reference/example/index.html @@ -0,0 +1,47 @@ + Example Reference | sern + + + Skip to content

Example Reference

Reference pages are ideal for outlining how things work in terse and clear terms. +Less concerned with telling a story or addressing a specific use case, they should give a comprehensive outline of what you’re documenting.

+

Further reading

+
\ No newline at end of file diff --git a/search.html b/search.html deleted file mode 100644 index feee0045a..000000000 --- a/search.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - -Search the documentation | sern - Handlers. Redefined. - - - - - - - - - - - -

Search the documentation

- - \ No newline at end of file diff --git a/img/sern-logo.png b/sern-logo.png similarity index 100% rename from img/sern-logo.png rename to sern-logo.png diff --git a/sitemap.xml b/sitemap.xml deleted file mode 100644 index 5f9db2b1c..000000000 --- a/sitemap.xml +++ /dev/null @@ -1 +0,0 @@ -https://sern.dev/blogweekly0.5https://sern.dev/blog/1.2.0weekly0.5https://sern.dev/blog/2.0.0weekly0.5https://sern.dev/blog/2.5.0weekly0.5https://sern.dev/blog/3.0.0weekly0.5https://sern.dev/blog/archiveweekly0.5https://sern.dev/blog/getting-startedweekly0.5https://sern.dev/blog/newlogoweekly0.5https://sern.dev/blog/railway-deployweekly0.5https://sern.dev/blog/tagsweekly0.5https://sern.dev/blog/tags/brandingweekly0.5https://sern.dev/blog/tags/guidesweekly0.5https://sern.dev/blog/tags/releaseweekly0.5https://sern.dev/markdown-pageweekly0.5https://sern.dev/pluginsweekly0.5https://sern.dev/searchweekly0.5https://sern.dev/sponsorsweekly0.5https://sern.dev/docs/apiweekly0.5https://sern.dev/docs/api/classes/CommandExecutableweekly0.5https://sern.dev/docs/api/classes/Contextweekly0.5https://sern.dev/docs/api/classes/DefaultErrorHandlingweekly0.5https://sern.dev/docs/api/classes/DefaultLoggingweekly0.5https://sern.dev/docs/api/classes/DefaultModuleManagerweekly0.5https://sern.dev/docs/api/classes/EventExecutableweekly0.5https://sern.dev/docs/api/classes/ModuleStoreweekly0.5https://sern.dev/docs/api/classes/SernEmitterweekly0.5https://sern.dev/docs/api/enums/CommandTypeweekly0.5https://sern.dev/docs/api/enums/EventTypeweekly0.5https://sern.dev/docs/api/enums/PayloadTypeweekly0.5https://sern.dev/docs/api/enums/PluginTypeweekly0.5https://sern.dev/docs/api/enums/SernErrorweekly0.5https://sern.dev/docs/api/interfaces/AutocompleteCommandweekly0.5https://sern.dev/docs/api/interfaces/AutocompletePluginweekly0.5https://sern.dev/docs/api/interfaces/BothCommandweekly0.5https://sern.dev/docs/api/interfaces/ButtonCommandweekly0.5https://sern.dev/docs/api/interfaces/ChannelSelectCommandweekly0.5https://sern.dev/docs/api/interfaces/CommandError.Responseweekly0.5https://sern.dev/docs/api/interfaces/CommandModuleDefsweekly0.5https://sern.dev/docs/api/interfaces/CommandPluginweekly0.5https://sern.dev/docs/api/interfaces/ContextMenuMsgweekly0.5https://sern.dev/docs/api/interfaces/ContextMenuUserweekly0.5https://sern.dev/docs/api/interfaces/Controllerweekly0.5https://sern.dev/docs/api/interfaces/ControlPluginweekly0.5https://sern.dev/docs/api/interfaces/CoreDependenciesweekly0.5https://sern.dev/docs/api/interfaces/CoreModuleStoreweekly0.5https://sern.dev/docs/api/interfaces/Dependenciesweekly0.5https://sern.dev/docs/api/interfaces/DependencyConfigurationweekly0.5https://sern.dev/docs/api/interfaces/DiscordEmitterPluginweekly0.5https://sern.dev/docs/api/interfaces/DiscordEventCommandweekly0.5https://sern.dev/docs/api/interfaces/DiscordEventPluginweekly0.5https://sern.dev/docs/api/interfaces/Disposableweekly0.5https://sern.dev/docs/api/interfaces/Emitterweekly0.5https://sern.dev/docs/api/interfaces/ErrorHandlingweekly0.5https://sern.dev/docs/api/interfaces/EventModuleDefsweekly0.5https://sern.dev/docs/api/interfaces/EventPluginweekly0.5https://sern.dev/docs/api/interfaces/ExternalEmitterPluginweekly0.5https://sern.dev/docs/api/interfaces/ExternalEventCommandweekly0.5https://sern.dev/docs/api/interfaces/ExternalEventPluginweekly0.5https://sern.dev/docs/api/interfaces/Initweekly0.5https://sern.dev/docs/api/interfaces/InitArgsweekly0.5https://sern.dev/docs/api/interfaces/InitPluginweekly0.5https://sern.dev/docs/api/interfaces/Loggingweekly0.5https://sern.dev/docs/api/interfaces/MentionableSelectCommandweekly0.5https://sern.dev/docs/api/interfaces/ModalSubmitCommandweekly0.5https://sern.dev/docs/api/interfaces/Moduleweekly0.5https://sern.dev/docs/api/interfaces/ModuleManagerweekly0.5https://sern.dev/docs/api/interfaces/Pluginweekly0.5https://sern.dev/docs/api/interfaces/Presence.Resultweekly0.5https://sern.dev/docs/api/interfaces/RoleSelectCommandweekly0.5https://sern.dev/docs/api/interfaces/SernAutocompleteDataweekly0.5https://sern.dev/docs/api/interfaces/SernEmitterPluginweekly0.5https://sern.dev/docs/api/interfaces/SernEventCommandweekly0.5https://sern.dev/docs/api/interfaces/SernEventPluginweekly0.5https://sern.dev/docs/api/interfaces/SernEventsMappingweekly0.5https://sern.dev/docs/api/interfaces/SernSubCommandDataweekly0.5https://sern.dev/docs/api/interfaces/SernSubCommandGroupDataweekly0.5https://sern.dev/docs/api/interfaces/SlashCommandweekly0.5https://sern.dev/docs/api/interfaces/StringSelectCommandweekly0.5https://sern.dev/docs/api/interfaces/TextCommandweekly0.5https://sern.dev/docs/api/interfaces/UserSelectCommandweekly0.5https://sern.dev/docs/api/interfaces/Wrapperweekly0.5https://sern.dev/docs/api/modulesweekly0.5https://sern.dev/docs/api/namespaces/CommandErrorweekly0.5https://sern.dev/docs/api/namespaces/Presenceweekly0.5https://sern.dev/docs/api/namespaces/Sernweekly0.5https://sern.dev/docs/cliweekly0.5https://sern.dev/docs/cli/buildweekly0.5https://sern.dev/docs/cli/clearweekly0.5https://sern.dev/docs/cli/extraweekly0.5https://sern.dev/docs/cli/publishweekly0.5https://sern.dev/docs/guideweekly0.5https://sern.dev/docs/guide/getting-started/choose-ideweekly0.5https://sern.dev/docs/guide/getting-started/preparingweekly0.5https://sern.dev/docs/guide/walkthrough/autocompleteweekly0.5https://sern.dev/docs/guide/walkthrough/cliweekly0.5https://sern.dev/docs/guide/walkthrough/conclusionweekly0.5https://sern.dev/docs/guide/walkthrough/dependency-injectionweekly0.5https://sern.dev/docs/guide/walkthrough/first-commandweekly0.5https://sern.dev/docs/guide/walkthrough/first-eventweekly0.5https://sern.dev/docs/guide/walkthrough/goalweekly0.5https://sern.dev/docs/guide/walkthrough/good-to-knowweekly0.5https://sern.dev/docs/guide/walkthrough/new-projectweekly0.5https://sern.dev/docs/guide/walkthrough/pluginsweekly0.5https://sern.dev/docs/guide/walkthrough/sern-emitterweekly0.5https://sern.dev/docs/guide/walkthrough/servicesweekly0.5https://sern.dev/docs/guide/walkthrough/transitionweekly0.5https://sern.dev/docs/introweekly0.5https://sern.dev/weekly0.5 \ No newline at end of file diff --git a/sponsors.html b/sponsors.html deleted file mode 100644 index 0976ddb1c..000000000 --- a/sponsors.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - -sern - Handlers. Redefined. - - - - - - - - - - - -

Sponsors

These amazing people help us keep the project alive. A big thanks from the team!

- - \ No newline at end of file diff --git a/sponsors/index.html b/sponsors/index.html new file mode 100644 index 000000000..0b6557d56 --- /dev/null +++ b/sponsors/index.html @@ -0,0 +1,50 @@ + Sponsors | sern + + + Skip to content

Sponsors

+These amazing people help us keep the project alive. A big thanks from the + team! +

Not So Marv

Not So Marv

+$180

Neo

Neo

🗣️🔥Never was much of a romantic.

+$60

Gary Needham

Gary Needham

+$20

Robert Ismo

Robert Ismo

+$20

ropox
+Admin +

ropox

Hi

+$14

\ No newline at end of file