You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
GooseMod/goosemod.no.js

1 line
126 KiB

(function(){"use strict";function styleInject(e,t){void 0===t&&(t={});var o=t.insertAt;if(e&&"undefined"!=typeof document){var s=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===o&&s.firstChild?s.insertBefore(n,s.firstChild):s.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}var css_248z='.gm-store-card{background-color:var(--background-secondary);border-radius:8px;box-shadow:var(--elevation-medium);box-sizing:border-box;height:380px;margin:10px;padding:12px;position:relative;width:330px}.gm-store-card>:first-child{-webkit-user-drag:none;background:linear-gradient(225deg,var(--background-tertiary),var(--background-secondary-alt));border-radius:8px 8px 0 0;height:200px;margin-left:-12px;margin-top:-12px;object-fit:contain;user-select:none;width:calc(100% + 24px)}.gm-store-card>:first-child[src="/assets/2366391afb15ed6c2a019a0c0caa0797.svg"]{object-fit:cover}.gm-store-card>:first-child:hover~:nth-child(2),.gm-store-card>:nth-child(2):hover{top:132px}.gm-store-card>:nth-child(2){background-color:rgba(0,0,0,.5);border-radius:16px;cursor:default;opacity:.95;padding-right:10px;position:absolute;right:10px;top:152px;transition:top .2s;width:fit-content}.gm-store-card>:nth-child(2).no-pfp{padding:0 8px}.gm-store-card>:nth-child(3){-webkit-line-clamp:1;margin-top:10px}.gm-store-card>:nth-child(3),.gm-store-card>:nth-child(4){-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;width:calc(100% - 34px)}.gm-store-card>:nth-child(4){-webkit-line-clamp:3;clear:both;margin-top:5px}.gm-store-card>:nth-child(5){align-items:center;display:flex;flex-direction:column;gap:10px;margin-left:auto;order:2;position:absolute;right:12px;top:214px;width:24px}.gm-store-card>:nth-child(5)>*{color:var(--interactive-normal)}.gm-store-card>:nth-child(5)>:hover{color:var(--interactive-hover)}.gm-store-card>:nth-child(6){bottom:12px;display:flex;gap:5px;position:absolute;width:calc(100% - 32px)}.gm-store-card>:nth-child(6)>:first-child{cursor:pointer;display:inline-flex;width:90px}.gm-store-card>:nth-child(6)>:nth-child(2){color:#ddd;cursor:pointer;display:inline-flex;margin-left:14px;min-width:0;padding:2px 5px;width:auto}.gm-store-card>:nth-child(6)>:nth-child(3){margin-top:4px;position:absolute;right:-10px}.gm-store-card>:nth-child(6)>:nth-child(3).hide-toggle{display:none!important}.gm-store-card .inner-2O5YO7{height:100%}.gm-store-card .outer-s4sY2_{height:100%;padding-top:0!important;transition:height .2s}.gm-store-card>:first-child:hover .pagination-20ouY7{bottom:0}.gm-store-card .pagination-20ouY7{bottom:-30px;height:30px;position:absolute;transition:bottom .2s cubic-bezier(0,.8,.5,1);width:100%;z-index:1}.gm-store-card .arrow-vOpU7R,.gm-store-card .dotNormal-9wUKKy{opacity:.6}#gm-settings-inject>div,.gm-store-settings{align-items:center;display:flex;flex-flow:row wrap;justify-content:center}.gm-store-settings>h1{flex-basis:100%}.gm-inline-dropdown{align-items:center;display:flex;margin-left:12px}.gm-inline-dropdown>.select-2TCrqx{margin-left:8px;width:120px}.gm-settings-note-markdown{color:inherit!important;font-size:inherit}.gm-settings-note-markdown .paragraph-3Ejjt0{margin:0}.gm-settings-label-icon{vertical-align:sub}.gm-settings-label-text{margin-left:6px;vertical-align:top}.gm-settings-header-collapser{float:right;height:22px;margin-top:-3px;width:22px}.gm-settings-header-collapser.collapsed{transform:rotate(-90deg)}.gm-store-category{width:100%}.gm-store-category>:nth-child(2){display:grid;grid-auto-flow:column;grid-template-columns:repeat(auto-fill,350px);overflow-x:scroll;width:100%}.gm-store-header{margin-bottom:0;margin-left:10px;margin-top:20px;max-width:100%;width:100%}.gm-store-header>div{font-size:24px;font-weight:700;line-height:26px}.gm-store-search{flex-grow:1;margin-right:12px}.gm-highlight #app-mount:after{box-shadow:0 0 0 99999px rgb(0 0 0/50%);content:"";display:block;z-index:9}.gm-highlight .content-3YMskv [id*=gm]{background:var(--background-modifier-selected);border-radius:0;filter:brightness(2);transition:all .5s;z-index:10}.gm-ootb-modal{width:600px}.gm-modules-preview{align-items:center;display:flex;justify-content:center;margin-bottom:60px;text-align:start}.gm-modules-preview .guildIcon-2Ut8OT{display:none}.gm-modules-preview .cardHeader-r-Jvg2{margin-bottom:12px}.gm-modules-preview .card-B2gQB5{background-color:var(--background-tertiary)}.gm-store-author-pfp{border-radius:50%;display:inline;margin-right:5px;vertical-align:bottom}.gm-store-author-name{line-height:32px}.gm-carousel-modal{background-color:var(--background-primary);border-radius:6px;padding:12px;pointer-events:all}.gm-carousel-modal .outer-s4sY2_{background-color:var(--background-secondary-alt);height:30vw;padding-top:0!important;width:50vw}.gm-carousel-modal .root-3tU4d2{background-color:unset}.gm-carousel-modal .smallCarouselImage-2Qvg9S{cursor:default}.gm-store-loading-container{align-items:center;display:flex;height:100%;justify-content:center}.gm-store-card-mini{cursor:pointer;height:74px;width:100%}.gm-store-card-mini>:first-child{background-color:unset;border-radius:0 8px 8px 0;height:100%;position:absolute;right:0;width:120px}.gm-store-card-mini>:nth-child(3){margin-top:0}.gm-store-card-mini>:nth-child(4){-webkit-line-clamp:1;width:75%}.gm-store-card-mini>:nth-child(2),.gm-store-card-mini>:nth-child(5),.gm-store-card-mini>:nth-child(6){display:none}.gm-modules-container{display:flex;flex-flow:row wrap;grid-template-columns:none;justify-content:center}.gm-store-card-mini .pagination-20ouY7{display:none}.gm-store-card-mini .smallCarouselImage-2Qvg9S{cursor:unset}.gm-repos-modal-icon-Verified{color:var(--status-positive-background)}.gm-repos-modal-icon-Alert{color:var(--status-danger-background)}.gm-repos-modal-icon-Alert .icon-1ihkOt{height:12px;width:12px}.gm-repos-modal-icon-Help{color:var(--status-warning-background)}.gm-error-boundary{display:flex;flex-flow:column;height:100%;width:100%}.gm-error-boundary>:first-child{display:flex;justify-content:center;width:100%}.gm-error-boundary>:first-child>:first-child{background-image:url(https://goosemod.com/img/goose_glitch.jpg);background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:50%;display:block;height:48px;margin-right:22px;object-fit:cover;overflow:hidden;pointer-events:none;width:48px}.gm-error-boundary>:first-child>:nth-child(2){margin-top:-2px}.gm-error-boundary>:first-child>:nth-child(2) .title-3KTIjF{color:var(--interactive-normal);font-family:var(--font-primary);margin-bottom:0;margin-left:1px}.gm-error-boundary>:nth-child(2){display:flex;gap:40px;justify-content:center;margin-top:28px;width:100%}.gm-error-boundary>:nth-child(3){align-items:center;color:var(--header-secondary);display:flex;justify-content:flex-end;margin-top:28px}.gm-error-boundary>:nth-child(3)>:first-child{height:24px;margin-right:4px;width:24px}.gm-error-boundary>:nth-child(4){margin-top:8px;width:100%}.gm-error-boundary>:nth-child(4) pre{margin-bottom:28px}.layer-v9HyYc{z-index:999}.container-ZMc96U.themed-Hp1KC_{--background-primary:unset}.container-2cd8Mz{background:var(--background-primary)!important}#gm-sponsor-modal .headerTitle-kLIB73{background-image:url(https://goosemod.com/img/goose_gold.jpg);background-position:50%;background-repeat:no-repeat;background-size:contain;border-radius:50%;height:60px}#gm-sponsor-modal .headerTitle-kLIB73:after{color:var(--text-normal);content:"GooseMod Sponsor";display:block;font-family:var(--font-display);font-size:24px;margin-left:70px;margin-top:6px;width:140px}#gm-sponsor-modal .guildBackground-3BSNJY>svg:first-child{display:none}#gm-sponsor-modal .content-2eQb8J{padding:16px 8px 16px 16px}#gm-sponsor-modal .content-2eQb8J>div:not(:last-child){margin-bottom:32px}#gm-sponsor-modal .footer-31IekZ{left:-16px;top:16px;width:calc(100% - 8px)}#gm-sponsor-modal .content-2eQb8J>div:first-child{color:var(--text-normal);font-family:var(--font-primary);font-size:16px;line-height:20px}';styleInject(css_248z);var sleep=e=>new Promise((t=>setTimeout(t,e)));const fromStr=e=>e.replace("rgb(","").replace(")","").split(", "),toStr=([e,t,o])=>`rgb(${e}, ${t}, ${o})`,light=(e,t)=>toStr(fromStr(e).map((e=>e*t))),gmColor="88, 101, 242",regionColor="114, 137, 218",makeRegionStyle=e=>`background-color: rgb(${e}); color: white; border-radius: 4px; border: 2px solid ${light(e,.5)}; padding: 3px 6px 3px 6px; font-weight: bold;`,debug=(e,...t)=>{const o=e.split("."),s=o.map((e=>`%c${e}%c`)),n=o.reduce((e=>e.concat(makeRegionStyle(regionColor),"")),[]);console.log(`%cGooseMod%c ${s.join(" ")}`,makeRegionStyle(gmColor),"",...n,...t)};var Logger={__proto__:null,debug:debug};let wpRequire;window.webpackChunkdiscord_app.push([[Math.random()],{},e=>{wpRequire=e}]);const all=()=>Object.keys(wpRequire.c).map((e=>wpRequire.c[e].exports)).filter((e=>e)),wrapFilter=e=>t=>{try{return e(t)}catch{return!1}},find=(e,t=!0)=>{const o=wrapFilter(e);for(const e of all()){if(t&&e.default&&o(e.default))return e.default;if(o(e))return e}},findAll=(e,t=!0)=>{const o=wrapFilter(e),s=[];for(const e of all())t&&e.default&&o(e.default)&&s.push(e.default),o(e)&&s.push(e);return s},findByProps=(...e)=>find((t=>e.every((e=>void 0!==t[e])))),findByPropsAll=(...e)=>findAll((t=>e.every((e=>void 0!==t[e])))),findByPrototypes=(...e)=>find((t=>t.prototype&&e.every((e=>void 0!==t.prototype[e])))),findByDisplayName=e=>{const t=find((t=>t.displayName===e));return t||"Text"!==e?"Header"===e?find((e=>"LegacyHeader"===e.displayName)):t:find((e=>"LegacyText"===e.displayName))},findByDisplayNameAll=e=>findAll((t=>t.displayName===e)),findByModuleId=e=>wpRequire.c[e],common={React:findByProps("createElement"),ReactDOM:findByProps("render","hydrate"),Flux:findByProps("Store","connectStores"),FluxDispatcher:findByProps("register","wait"),i18n:findByProps("Messages","_requestedLocale"),channels:findByProps("getChannelId","getVoiceChannelId"),constants:findByProps("API_HOST")};var WebpackModules={__proto__:null,all:all,find:find,findAll:findAll,findByProps:findByProps,findByPropsAll:findByPropsAll,findByPrototypes:findByPrototypes,findByDisplayName:findByDisplayName,findByDisplayNameAll:findByDisplayNameAll,findByModuleId:findByModuleId,common:common},_GMErrorBoundary=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("FormTitle"),o=goosemod.webpackModules.findByProps("Sizes","Colors","Looks","DropdownSizes"),s=goosemod.webpackModules.find((e=>"Markdown"===e.displayName&&e.rules)),n=goosemod.webpackModules.findByDisplayName("DropdownArrow");return class extends e.PureComponent{constructor(e){super(e),this.state={error:!1}}componentDidCatch(e,t){console.log("honk",{error:e,moreInfo:t});const o=decodeURI(e.stack.split("\n").filter((e=>!e.includes("/assets/"))).join("\n")),s=decodeURI(t.componentStack.split("\n").slice(1,9).join("\n")),n=o.match(/\((.*) \| GM Module:/)?.[1]||s.match(/\((.*) \| GM Module:/)?.[1];let a=n||"Unknown";const r=n?"Plugin":"Cause";"Unknown"===a&&(o.includes("GooseMod")&&(a="GooseMod Internals"),(o.toLowerCase().includes("powercord")||o.toLowerCase().includes("betterdiscord"))&&(a="Other Mods")),this.setState({error:!0,suspectedCause:{name:a,type:r},errorStack:{raw:e.stack,useful:o},componentStack:{raw:t.componentStack,useful:s}})}render(){return this.state.toRetry&&(this.state.error=!1),setTimeout((()=>{this.state.toRetry=!0}),100),this.state.error?e.createElement("div",{className:"gm-error-boundary"},e.createElement("div",{},e.createElement("div",{}),e.createElement(t,{tag:"h1"},"GooseMod has handled an error",e.createElement(s,{},`## Suspected ${this.state.suspectedCause.type}: ${this.state.suspectedCause.name}`))),e.createElement("div",{},e.createElement(o,{color:o.Colors.BRAND,size:o.Sizes.LARGE,onClick:()=>{this.state.toRetry=!0,this.forceUpdate()}},"Retry"),e.createElement(o,{color:o.Colors.RED,size:o.Sizes.LARGE,onClick:()=>{location.reload()}},"Refresh")),e.createElement("div",{onClick:()=>{this.state.toRetry=!1,this.state.showDetails=!this.state.showDetails,this.forceUpdate()}},e.createElement("div",{style:{transform:`rotate(${this.state.showDetails?"0":"-90"}deg)`}},e.createElement(n,{width:24,height:24})),this.state.showDetails?"Hide Details":"Show Details"),this.state.showDetails?e.createElement("div",{},e.createElement(s,{},"# Error Stack"),e.createElement(s,{},`\`\`\`\n${this.state.errorStack.useful}\n\`\`\``),e.createElement(s,{},"# Component Stack"),e.createElement(s,{},`\`\`\`\n${this.state.componentStack.useful}\n\`\`\``),e.createElement(s,{},"# Debug Info"),e.createElement(s,{},`\`\`\`\n${goosemod.genDebugInfo()}\n\`\`\``)):null):this.props.children}}};let GMErrorBoundary;const generateIdSegment=()=>Math.random().toString(16).substring(2),generateId=(e=3)=>new Array(e).fill(0).map((()=>generateIdSegment())).join(""),modIndex={},isReactComponent=e=>!(!e||!e.prototype?.render&&!e.displayName),beforePatches=(e,t,o,s,n)=>{const a=modIndex[o][n].before;if(0===a.length)return t;let r=t;for(const t of a)try{let o=t.call(e,r);if(!1===o)return!1;Array.isArray(o)&&(r=o)}catch(e){console.error(`Before patch (${o} - ${s}) failed, skipping`,e)}return r},insteadPatches=(e,t,o,s,n,a)=>{const r=modIndex[s][a].instead;if(0===r.length)return o.apply(e,t);let i;for(const a of r)try{let s=a.call(e,t,o.bind(e));void 0!==s&&(i=s)}catch(e){console.error(`Instead patch (${s} - ${n}) failed, skipping`,e)}return i},afterPatches=(e,t,o,s,n,a)=>{const r=modIndex[s][a].after;let i=o;for(const o of r)try{let s=o.call(e,t,i);void 0!==s&&(i=s)}catch(e){console.error(`After patch (${s} - ${n}) failed, skipping`,e)}return i},generateNewFunction=(e,t,o,s)=>function(...n){const a=beforePatches(this,n,t,o,s);let r;if(Array.isArray(a)){const i=insteadPatches(this,n,e,t,o,s);r=afterPatches(this,a,i,t,o,s)}if(modIndex[t][s].harden){GMErrorBoundary||(GMErrorBoundary=_GMErrorBoundary());const{React:e}=goosemod.webpackModules.common;return e.createElement(GMErrorBoundary,{},r)}return r},patch$a=(e,t,o,s=!1,n=!1)=>{if("function"!=typeof e[t])return goosemod.logger.debug("patcher","Failed to patch as key isn't func",e,t),()=>{};if(!e._goosemodPatcherId){const t=generateId();e._goosemodPatcherId=t,modIndex[t]={}}const a=e._goosemodPatcherId,r=`gm-${t}`;if(!modIndex[a][r]){const o=e[t];e[t]=Object.assign(generateNewFunction(o,a,t,r),o),e[t].toString=()=>o.toString();let s=!1;isReactComponent(o)&&(s=!0),e.render&&("render"!==t?patch$a(e,"render",(()=>{})):s=!0),o.displayName?.endsWith("Item")&&(s=!1),modIndex[a][r]={before:[],after:[],instead:[],harden:s,original:o}}const i=n?"instead":s?"before":"after",d=modIndex[a][r][i].push(o);return()=>{modIndex[a][r][i].splice(d-1,1);["before","after","instead"].every((e=>0===modIndex[a][r][e].length))&&(e[t]=modIndex[a][r].original,delete e._goosemodPatcherId)}},uninjectors$1={},inject=(e,t,o,s,n=!1)=>{uninjectors$1[e]=patch$a(t,o,s,n)},uninject=e=>!!uninjectors$1[e]&&(uninjectors$1[e](),!0);var simpleTooltip=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByProps("tooltipBottom","tooltipRight");return class extends e.PureComponent{constructor(e){super(e),this.props.position=this.props.position.toLowerCase(),this.state={}}render(){return this.props.children({onMouseEnter:async()=>{document.querySelector(".gm-tooltip")&&document.querySelector(".gm-tooltip").remove();let e=document.createElement("div");document.querySelectorAll(".layerContainer-2v_Sit")[1].appendChild(e);const o=document.querySelector(`.gm-tooltipref-${this.state.refId}`).getBoundingClientRect();e.outerHTML=`<div class="layer-2aCOJ3 disabledPointerEvents-2AmYRc gm-tooltip" style="position: absolute; top: -1000px; left: -1000px;"><div class="${t[`tooltip${this.props.position[0].toUpperCase()+this.props.position.substring(1)}`]} tooltip-14MtrL tooltipPrimary-3qLMbS tooltipDisablePointerEvents-1huO19" style="opacity: 1; transform: none;"><div class="tooltipPointer-3L49xb"></div><div class="tooltipContent-Nejnvh tooltip-1j5_GT text-sm-normal-3Zj3Iv">${this.props.text}</div></div></div>`,e=document.querySelector(".gm-tooltip");const s=e.getBoundingClientRect();switch(this.props.position){case"top":e.style.left=o.left+o.width/2-s.width/2+"px",e.style.top=o.top-s.height-8+"px";break;case"left":e.style.left=o.left-s.width-8+"px",e.style.top=o.top+o.height/2-s.height/2+"px"}},onMouseLeave:()=>{document.querySelector(".gm-tooltip")&&document.querySelector(".gm-tooltip").remove()},text:this.props.text,className:`gm-tooltipref-${this.state.refId=Math.random().toString().split(".")[1]}`})}}};const getReactInstance=e=>e&&e[Object.keys(e).find((e=>e.startsWith("__reactInternalInstance")||e.startsWith("__reactFiber$")))],getNodeInternals=e=>e&&e._reactInternalFiber||e._reactInternals,getOwnerInstance=e=>{let t=getReactInstance(e);for(;t.return;)if(t=t.return,t.stateNode?._reactInternals)return t.stateNode},findInTree=(e,t,o)=>{const{walkable:s=null,ignore:n=[]}=o??{};return e&&"object"==typeof e?"string"==typeof t?e[t]:t(e)?e:Array.isArray(e)?e.map((e=>findInTree(e,t,o))).find((e=>e)):(s||Object.keys(e)).map((s=>!n.includes(s)&&findInTree(e[s],t,o))).find((e=>e)):null},findInReactTree=(e,t)=>findInTree(e,t,{walkable:["props","children","child","sibling"]});var ReactUtils={__proto__:null,getReactInstance:getReactInstance,getNodeInternals:getNodeInternals,getOwnerInstance:getOwnerInstance,findInTree:findInTree,findInReactTree:findInReactTree};let goosemodScope$j={};const setThisScope$m=e=>{goosemodScope$j=e},labelToId=e=>e.toLowerCase().replace(/ /g,"-"),getInjectId=e=>`gm-cm-${e}`,patchTypeToNavId=e=>{switch(e){case"user":return"user-context";case"message":return"message";default:return e}},getExtraInfo=e=>{try{switch(e){case"message":return getNodeInternals(getOwnerInstance(document.getElementById("message"))).return.return.memoizedProps;case"message-actions":return getNodeInternals(getOwnerInstance(document.getElementById("message-actions"))).return.return.memoizedProps;case"user-context":return getNodeInternals(getOwnerInstance(document.getElementById("user-context"))).return.return.return.return.return.return.memoizedProps;default:return}}catch(e){return}},generateElement=(e,t,o,s,n,{Menu:a,React:r})=>{const i=void 0!==e.checked;e.id=e.id||labelToId(e.label);let d=t;"function"==typeof d&&(d=d()),d&&(d=d.map((e=>(e.originalAction||(e.originalAction=e.action),e)))),e.action=function(){return i?(e.checked=!e.checked,c.props.checked=e.checked,getOwnerInstance(document.querySelector(`[id^="${o}-"][id*="${e.id}"]`)).props.onMouseEnter(),e.originalAction(arguments,n,e.checked)):e.originalAction(arguments,n)};const l=i?a.MenuCheckboxItem:a.MenuItem,c=void 0!==d?r.createElement(l,e,...d.map((e=>generateElement(e,e.sub,o,s,n,{Menu:a,React:r})))):r.createElement(l,e);return c},patch$9=(e,t)=>{const{React:o}=goosemodScope$j.webpackModules.common,s=goosemodScope$j.webpackModules.findByProps("MenuItem"),n=patchTypeToNavId(e);return t.originalAction=t.action,patch$a(s,"default",(a=>{if(a.length<1)return;const[{navId:r,children:i}]=a;if(r!==n&&("message"!==n||"message-actions"!==r))return a;if(findInReactTree(i,(e=>e?.props?.id===(t.id||labelToId(t.label)))))return a;const d=Object.assign({},t),l=generateElement(d,d.sub,n,e,Object.assign({},getExtraInfo(r)),{Menu:s,React:o});let c=findInReactTree(i,(e=>e&&e.props&&!0===e.props.goosemod));return c?(Array.isArray(c.props.children)||(c.props.children=[c.props.children]),c.props.children.push(l)):(c=o.createElement(s.MenuGroup,{goosemod:!0},l),i.push([o.createElement(s.MenuSeparator),c])),a}),!0)},uninjectors={},add$1=(e,t)=>{uninjectors[getInjectId(t.id||labelToId(t.label))]=patch$9(e,t)},remove$3=e=>{const t=getInjectId(labelToId(e));return!!uninjectors[t]&&(uninjectors[t](),!0)};var _contextMenu={__proto__:null,setThisScope:setThisScope$m,labelToId:labelToId,getInjectId:getInjectId,patchTypeToNavId:patchTypeToNavId,getExtraInfo:getExtraInfo,patch:patch$9,add:add$1,remove:remove$3};let goosemodScope$i={};const setThisScope$l=e=>{goosemodScope$i=e},patch$8=(e,t,o)=>{const{React:s}=goosemodScope$i.webpackModules.common,n=goosemodScope$i.webpackModules.findByDisplayName("Tooltip"),{icon:a}=goosemodScope$i.webpackModules.findByProps("icon","isHeader"),r=goosemodScope$i.webpackModules.find((e=>e.default&&"MiniPopover"===e.default.displayName));return patch$a(r,"default",((i,d)=>{const l=findInReactTree(d,(e=>e&&e.message));return l?(d.props.children.unshift(s.createElement(n,{position:"top",text:e},(({onMouseLeave:e,onMouseEnter:n})=>s.createElement(r.Button,{onClick:()=>{o(l)},onMouseEnter:n,onMouseLeave:e},"string"!=typeof t?t:s.createElement("img",{src:t,width:"24px",height:"24px",className:a}))))),d):d}))};var _miniPopover={__proto__:null,setThisScope:setThisScope$l,patch:patch$8};let goosemodScope$h={};const setThisScope$k=e=>{goosemodScope$h=e},patch$7=(e,t,o,{inUpload:s=!1,inReadonlyChannels:n=!1}={})=>{const{React:a}=goosemodScope$h.webpackModules.common,r=goosemodScope$h.webpackModules.findByDisplayName("Tooltip"),i=goosemodScope$h.webpackModules.findByProps("Looks","DropdownSizes"),d=goosemodScope$h.webpackModules.findByProps("button"),l=goosemodScope$h.webpackModules.findByProps("buttonWrapper","pulseButton"),c=goosemodScope$h.webpackModules.findByProps("button","textArea"),m=goosemodScope$h.webpackModules.find((e=>e.type&&e.type.render&&"ChannelTextAreaContainer"===e.type.render.displayName));return patch$a(m.type,"render",((m,p)=>{const g=findInReactTree(p,(e=>e&&e.className&&0===e.className.indexOf("buttons-")));return!g||!s&&!0===p.props.children[0].ref.current?.classList?.contains("channelTextAreaUpload-3t7EIx")||!n&&!0===p.props.children[0].ref.current?.classList?.contains("channelTextAreaDisabled-8rmlrp")||g.children.unshift(a.createElement("div",null,a.createElement(r,{position:"top",text:e},(({onMouseLeave:e,onMouseEnter:s})=>a.createElement(i,{look:i.Looks.BLANK,size:i.Sizes.ICON,onClick:()=>{o(g)},onMouseEnter:s,onMouseLeave:e},"string"!=typeof t?t:a.createElement("img",{src:t,width:"24px",height:"24px",className:`${c.button} ${d.contents} ${l.button}`})))))),p}))};var _channelTextAreaButtons={__proto__:null,setThisScope:setThisScope$k,patch:patch$7};let goosemodScope$g={},Commands;const setThisScope$j=e=>{goosemodScope$g=e,Commands=goosemodScope$g.webpackModules.findByProps("BUILT_IN_COMMANDS","BUILT_IN_SECTIONS");const{React:t}=goosemodScope$g.webpackModules.common,o=goosemod.webpackModules.findByProps("getIconComponent"),s=goosemod.webpackModules.find((e=>"ApplicationCommandItem"===e.default?.displayName)),n=goosemod.webpackModules.findByProps("useSearchManager"),a={id:applicationId,type:0,name:"GooseMod"};goosemod.patcher.patch(o,"getIconComponent",(([e])=>{if(e.id===applicationId)return e=>t.createElement("div",{className:"wrapper-1wwiGV selectable-fgiA2c",style:{width:e.width,height:e.height,padding:e.padding??0}},t.createElement("img",{src:"https://goosemod.com/img/logo.jpg",style:{width:e.width,height:e.height,borderRadius:"50%"},className:"icon-1kx1ir"}))})),goosemod.patcher.patch(s,"default",(([{command:e}],o)=>(e.applicationId===applicationId&&(o.props.children[0]=t.createElement("div",{className:"wrapper-3t15Cn image-1a_IXB",style:{width:32,height:32}},t.createElement("img",{src:"https://goosemod.com/img/logo.jpg",style:{width:32,height:32,borderRadius:"50%"},className:"icon-1kx1ir"}))),o))),goosemod.patcher.patch(n,"useSearchManager",((e,t)=>{const o=Object.values(Commands.BUILT_IN_COMMANDS).filter((e=>e.applicationId===applicationId));if(0===o.length)return t;t.activeSections.find((e=>e.id===a.id))||t.activeSections.push(a),t.sectionDescriptors.find((e=>e.id===a.id))||t.sectionDescriptors.push(a);let s=t.commandsByActiveSection.find((e=>e.section.id===a.id));if(s?s.data=o:null!=t.filteredSectionId&&t.filteredSectionId!==applicationId||t.commandsByActiveSection.push({section:a,data:o}),t.commandsByActiveSection.find((e=>"-1"===e.section.id))){const e=t.commandsByActiveSection.find((e=>"-1"===e.section.id));e.data=e.data.filter((e=>e.applicationId!==applicationId))}return t}))},applicationId="-3",add=(e,t,o,s=[])=>{const n=Commands;for(const e of s)e.displayName=e.displayName??e.name;n.BUILT_IN_COMMANDS.push({applicationId:applicationId,type:1,inputType:0,description:t,name:e,displayName:e,displayDescription:t,execute:o,options:s,id:`-${Math.random().toString().split(".")[1].substring(0,5)}`})},remove$2=e=>{const t=Commands;t.BUILT_IN_COMMANDS=t.BUILT_IN_COMMANDS.filter((t=>t.name!==e))};var _commands={__proto__:null,setThisScope:setThisScope$j,add:add,remove:remove$2};let goosemodScope$f={};const setThisScope$i=e=>{goosemodScope$f=e;const{BOT_AVATARS:t}=goosemodScope$f.webpackModules.findByProps("BOT_AVATARS","DEFAULT_AVATARS");t.GooseMod="https://cdn.discordapp.com/avatars/760559484342501406/5125aff2f446ad7c45cf2dfd6abf92ed.webp"},send=(e,t="GooseMod")=>{const{createBotMessage:o}=goosemodScope$f.webpackModules.findByProps("createBotMessage"),{getChannelId:s}=goosemodScope$f.webpackModules.findByProps("getChannelId","getVoiceChannelId"),{receiveMessage:n}=goosemodScope$f.webpackModules.findByProps("receiveMessage","sendBotMessage"),a=o(s(),"");"string"==typeof e?a.content=e:a.embeds.push(e),a.state="SENT",a.author.id="1",a.author.bot=!0,a.author.discriminator="0000",a.author.avatar="GooseMod",a.author.username=t,n(s(),a)};let notices$1=[],goosemodScope$e={},updateCall;const setThisScope$h=async e=>{goosemodScope$e=e;const t=goosemodScope$e.webpackModules.findByProps("base","sidebar");for(;void 0===document.getElementsByClassName(t.base)[0];)await sleep(10);const o=getOwnerInstance(document.getElementsByClassName(t.base)[0]),{React:s}=goosemodScope$e.webpackModules.common;class n extends s.PureComponent{constructor(e){super(e),this._updateCall=()=>this.forceUpdate()}componentDidMount(){updateCall=this._updateCall}componentWillUnmount(){}render(){return notices$1.length>0?notices$1.shift().react:null}}patch$a(o.props.children[0],"type",((e,o)=>(goosemod.reactUtils.findInReactTree(o,(e=>e.className===t.base)).children.unshift(s.createElement(n)),o))),o.forceUpdate()},patch$6=(e,t,o,s="brand")=>{const n=goosemodScope$e.webpackModules.findByProps("colorDanger","notice")[`color${s[0].toUpperCase()+s.substring(1).toLowerCase()}`],a=goosemodScope$e.webpackModules.findByProps("NoticeCloseButton","NoticeButton"),{React:r}=goosemodScope$e.webpackModules.common,i=generateId(),d=r.createElement(a.default,{class:"goosemod-notice",id:i,color:n},r.createElement(a.NoticeCloseButton,{onClick:()=>{notices$1=notices$1.filter((e=>e.id!==i)),updateCall()}}),e,r.createElement(a.NoticeButton,{onClick:()=>{o()}},t));notices$1.push({react:d,id:i}),updateCall()};var _notices={__proto__:null,get notices(){return notices$1},setThisScope:setThisScope$h,patch:patch$6};let goosemodScope$d={};const setThisScope$g=e=>{goosemodScope$d=e},patch$5=(e,t,o,{atEnd:s=!1,showWhere:n=["dm","channel"]}={})=>{const{React:a}=goosemodScope$d.webpackModules.common,r=goosemod.webpackModules.findByProps("title","themed","icon","icon","iconBadge"),i=goosemodScope$d.webpackModules.find((e=>e.default&&"HeaderBar"===e.default.displayName));return patch$a(i,"default",((d,l)=>{const c=l.props.children.props.children[1].props.children.props.children;let m="other";if(null===c[1])m="home";else switch(c[0][1].key){case"mute":m="channel";break;case"calls":m="dm"}return n.includes(m)?(c[s?"push":"unshift"](a.createElement(i.Icon,{"aria-label":e,tooltip:e,disabled:!1,showBadge:!1,selected:!1,icon:()=>"string"!=typeof t?t:a.createElement("img",{src:t,width:"24px",height:"24px",className:`${r}.icon`}),onClick:()=>{o()}})),l):l}))};var _headerBarButtons={__proto__:null,setThisScope:setThisScope$g,patch:patch$5};let goosemodScope$c={};const setThisScope$f=e=>{goosemodScope$c=e},patch$4=(e,t,o,s=(()=>{}),{round:n=!1}={})=>{const{React:a}=goosemodScope$c.webpackModules.common,r=goosemodScope$c.webpackModules.findByDisplayName("Tooltip"),i=goosemodScope$c.webpackModules.findByDisplayName("Clickable"),d=goosemodScope$c.webpackModules.findByProps("profileBadge24","profileBadge22"),l=[];for(const c of goosemodScope$c.webpackModules.findByPropsAll("BadgeSizes"))l.push(patch$a(c,"default",(([{user:l,size:c}],m)=>{if(!o().includes(l.id))return m;let p=d.profileBadge24;switch(c){case 1:p=d.profileBadge22;break;case 2:p=d.profileBadge18}return m.props.children.unshift(a.createElement(r,{position:"top",text:e},(({onMouseLeave:e,onMouseEnter:o})=>a.createElement(i,{onClick:()=>{s()},onMouseEnter:o,onMouseLeave:e},a.createElement("div",{style:{backgroundImage:`url("${t}")`,borderRadius:n?"50%":""},className:`${d.profileBadge} ${p}`}))))),m})));return()=>l.forEach((e=>e()))};var _userBadges={__proto__:null,setThisScope:setThisScope$f,patch:patch$4};const setThisScope$e=e=>{},patch$3=(e,{before:t=!1}={})=>{const o=goosemod.webpackModules.find((e=>e.default&&"function"==typeof e.default&&e.default.toString().includes("e.hideTag"))),{React:s}=goosemod.webpackModules.common;return patch$a(o,"default",(([o],n)=>{const a=e(o);if(!a||""===a.props.children)return;const r=s.createElement("span",{style:{width:"5px",display:"inline-block"}});return delete a.props.style.marginLeft,delete a.props.style.marginRight,t?n.props.children.unshift(a,r):n.props.children.push(r,a),n}))};var _username={__proto__:null,setThisScope:setThisScope$e,patch:patch$3};let goosemodScope$b={};const setThisScope$d=e=>{goosemodScope$b=e},patch$2=(e,t,o,s=(()=>{}),{round:n=!1}={})=>{const{React:a}=goosemodScope$b.webpackModules.common,r=goosemodScope$b.webpackModules.findByDisplayName("Tooltip"),i=goosemodScope$b.webpackModules.findByDisplayName("Clickable"),d=goosemodScope$b.webpackModules.findByProps("guildIconContainer","iconTierNone"),l=goosemod.webpackModules.findByProps("AnimatedBanner");return patch$a(l.default,"type",(function(l,c){if(!o().includes(l[0]?.guild?.id))return c;const m=c.props.children[0].props.children[0];m.__injected||(patch$a(m,"type",(function(o,l){return l.props.children.unshift(a.createElement(r,{position:"top",text:e},(({onMouseLeave:e,onMouseEnter:o})=>a.createElement(i,{onClick:()=>{s()},onMouseEnter:o,onMouseLeave:e},a.createElement("div",{style:{backgroundImage:`url("${t}")`,borderRadius:n?"50%":"",width:"16px",height:"16px",backgroundRepeat:"no-repeat",backgroundSize:"contain",backgroundPosition:"50%",objectFit:"cover"},className:`${d.guildIconContainer}`}))))),l})),m.__injected=!0)}))};var _guildBadges={__proto__:null,setThisScope:setThisScope$d,patch:patch$2};const contextMenu=_contextMenu,miniPopover=_miniPopover,channelTextAreaButtons=_channelTextAreaButtons,commands=_commands,internalMessage=send,notices=_notices,headerBarButtons=_headerBarButtons,userBadges=_userBadges,username=_username,guildBadges=_guildBadges,setThisScope$c=e=>{for(const t of[setThisScope$m,setThisScope$l,setThisScope$k,setThisScope$j,setThisScope$i,setThisScope$h,setThisScope$g,setThisScope$f,setThisScope$e,setThisScope$d])try{t(e)}catch(e){console.error("[GooseMod] Failed to scope patcher module",e,t)}};var Patcher={__proto__:null,contextMenu:contextMenu,miniPopover:miniPopover,channelTextAreaButtons:channelTextAreaButtons,commands:commands,internalMessage:internalMessage,notices:notices,headerBarButtons:headerBarButtons,userBadges:userBadges,username:username,guildBadges:guildBadges,setThisScope:setThisScope$c,patch:patch$a,inject:inject,uninject:uninject,simpleTooltip:simpleTooltip};let goosemodScope$a={};const setThisScope$b=e=>{goosemodScope$a=e},patch$1=()=>{const{React:e}=goosemodScope$a.webpackModules.common,t=goosemodScope$a.webpackModules.findByProps("Sizes","AnimatedAvatar");goosemodScope$a.patcher.patch(t,"default",(([{src:e}],t)=>{if(e.includes("/avatars"))return t.props["data-user-id"]=e.match(/\/avatars\/([0-9]+)\//)[1],t})),goosemodScope$a.patcher.patch(t.AnimatedAvatar,"type",((o,s)=>e.createElement(t.default,{...s.props})))};var _avatar={__proto__:null,setThisScope:setThisScope$b,patch:patch$1};const avatar=_avatar,setThisScope$a=e=>{setThisScope$b(e)},patch=()=>{patch$1()};var Attrs={__proto__:null,avatar:avatar,setThisScope:setThisScope$a,patch:patch};const toastCSS=".gm-toasts {\n position: fixed;\n display: flex;\n top: 0;\n flex-direction: column;\n align-items: center;\n justify-content: flex-end;\n pointer-events: none;\n z-index: 4000;\n\n bottom: 80px;\n right: 40px;\n}\n\n@keyframes gm-toast-up {\n from {\n transform: translateY(0);\n opacity: 0;\n }\n}\n\n.gm-toast {\n animation: gm-toast-up 300ms ease;\n background: rgba(79,84,92,0.5);\n backdrop-filter: blur(2px);\n padding: 22px;\n border-radius: 6px;\n box-shadow: var(--elevation-high);\n font-weight: 500;\n color: #fff;\n user-select: text;\n font-size: 20px;\n opacity: 1;\n margin-top: 40px;\n pointer-events: none;\n user-select: none;\n\n width: 280px;\n text-align: left;\n\n overflow-wrap: break-word;\n}\n\n.gm-toast > :first-child {\n margin-bottom: 12px;\n}\n\n.gm-toast > :last-child {\n color: var(--header-secondary);\n font-size: 18px;\n white-space: pre-line;\n}\n\n@keyframes gm-toast-down {\n to {\n transform: translateY(0px);\n opacity: 0;\n }\n}\n\n.gm-toast.closing {\n animation: gm-toast-down 200ms ease;\n animation-fill-mode: forwards;\n opacity: 1;\n transform: translateY(-10px);\n}\n\n\n.gm-toast.toast-info {\n background-color: hsla(197,calc(var(--saturation-factor, 1)*100%),47.8%, 0.5);\n}\n\n.gm-toast.toast-success {\n background-color: hsla(139,calc(var(--saturation-factor, 1)*66.8%),58.6%, 0.5);\n}\n\n.gm-toast.toast-danger,\n.gm-toast.toast-error {\n background-color: hsla(359,calc(var(--saturation-factor, 1)*82.6%),59.4%, 0.5);\n}\n\n.gm-toast.toast-warning,\n.gm-toast.toast-warn {\n background-color: hsla(38,calc(var(--saturation-factor, 1)*95.7%),54.1%, 0.5);\n}",styleSheet=document.createElement("style");styleSheet.textContent=toastCSS,document.head.appendChild(styleSheet);var showToast=(e,t={})=>{if(t?.type?.startsWith("debug")){if(!goosemod.settings.gmSettings.debugToasts)return;t.type=t.type.replace("debug","")}if(!document.querySelector(".gm-toasts")){const e=document.createElement("div");e.classList.add("gm-toasts"),document.querySelector("#app-mount").appendChild(e)}let{subtext:o="",type:s="",timeout:n=3e3}=t;n*=1.5;const a=document.createElement("div");a.classList.add("gm-toast"),s&&a.classList.add("toast-"+s);const r=document.createElement("div");r.textContent=e,a.appendChild(r);const i=document.createElement("div");i.textContent=o,a.appendChild(i),document.querySelector(".gm-toasts").appendChild(a);const d=()=>{a.classList.add("closing"),setTimeout((()=>{a.remove(),document.querySelectorAll(".gm-toasts .gm-toast").length||document.querySelector(".gm-toasts").remove()}),300)};return setTimeout(d,n),{toastElem:a,closeFn:d}};let goosemodScope$9={};const setThisScope$9=e=>{goosemodScope$9=e},show$1=(e,t,o,s,n)=>new Promise((a=>{const{React:r}=goosemodScope$9.webpackModules.common,{find:i,findByDisplayName:d,findByProps:l}=goosemodScope$9.webpackModules,c=d("Text"),m=i((e=>"Markdown"===e.displayName&&e.rules)),p=l("button","colorRed");(0,l("openModal","updateModal").openModal)((i=>(3===i.transitionState&&a(!1),r.createElement(d("ConfirmModal"),{header:t,confirmText:e,cancelText:s||goosemod.webpackModules.findByPropsAll("Messages")[1].Messages.CANCEL,confirmButtonColor:p[`color${n?n[0].toUpperCase()+n.substring(1).toLowerCase():"Red"}`],onClose:()=>{a(!1)},onCancel:()=>{a(!1),i.onClose()},onConfirm:()=>{a(!0),i.onClose()},transitionState:i.transitionState},...o.split("\n").map((e=>r.createElement(m,{size:c.Sizes.SIZE_16},e)))))))}));let goosemodScope$8={},showHideMod={},originalChangelog={};const setThisScope$8=e=>{goosemodScope$8=e,showHideMod=goosemodScope$8.webpackModules.findByProps("showChangeLog");const t=goosemodScope$8.webpackModules.findByProps("changeLog").changeLog;originalChangelog=Object.assign({},t)},showChangelog=()=>{showHideMod.showChangeLog()},hideChangelog=()=>{showHideMod.hideChangeLog()},resetChangelog=()=>{setChangelog(originalChangelog)},setChangelog=e=>{const t=goosemodScope$8.webpackModules.findByProps("changeLog"),o={template:"standard",revision:1,locale:"en-us",...e};for(const e of Object.keys(t.changeLog))delete t.changeLog[e];for(const e of Object.keys(o))t.changeLog[e]=o[e]};var Changelog={__proto__:null,setThisScope:setThisScope$8,showChangelog:showChangelog,hideChangelog:hideChangelog,resetChangelog:resetChangelog,setChangelog:setChangelog};const image="https://media.discordapp.net/attachments/756146058924392542/771374562184658944/2018-11-14-11-36-30-1200x800.png";let version,generated,goosemodScope$7={};const setThisScope$7=e=>{goosemodScope$7=e},show=async()=>{generated||generate(),goosemodScope$7.changelog.resetChangelog(),goosemodScope$7.changelog.setChangelog(generated),goosemodScope$7.changelog.showChangelog(),await sleep(300);const e=()=>{document.querySelector(".modal-3Hrb0S .size20-9iTTnl").textContent=`GooseMod ${version}`,document.querySelector(".modal-3Hrb0S .footer-31IekZ").remove()};e(),goosemodScope$7.changelog.resetChangelog(),setTimeout(e,300)},generate=()=>{const e=JSON.parse("{\"version\":\"v12.3\",\"date\":\"2021-11-03\",\"body\":\"New Store Badges {added marginTop}\\n======================\\n\\n* **Store UI now uses a badge system to show version, time since last update, and GitHub stars.**\\n\\nGeneral Hotfixes {progress}\\n======================\\n\\n* **Fixed InternalMessage / some commands.**\\n* **Fixed Store using incorrect scrollbars.**\\n* **Fixed Store not working / rendering.**\\n\\nAdditions to APIs {added}\\n======================\\n\\n* **Webpack: Added findByModuleId function.**\\n* **Settings, Header: Added hide prop.**\"}");version=e.version,generated={image:image,date:e.date,body:e.body}};var GoosemodChangelog={__proto__:null,setThisScope:setThisScope$7,show:show,generate:generate};let enabled=!1,todo=["themes","plugins"];const done=e=>{todo.splice(todo.indexOf(e),1)},themes=async()=>{const e=(await Promise.resolve().then((function(){return modulesPreview$1}))).default(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByDisplayName("Header"),s=goosemod.webpackModules.findByDisplayName("Text"),n=goosemod.moduleStoreAPI.modules.filter((e=>e.tags.includes("theme")&&e.images&&e.images[0])).sort(((e,t)=>t.github?.stars-e.github?.stars)),a=Math.floor(Math.random()*(n.length-5));goosemod.webpackModules.find((e=>e.show&&e.show.toString().includes("confirmText"))).show({className:"gm-ootb-modal",title:"Drakter",confirmText:"Utforsk drakter",onConfirm:async()=>{0===goosemod.ootb.todo.length&&(await sleep(2e3),goosemod.ootb.settings())},body:t.createElement("div",{className:"container-1rn8Cv"},t.createElement(e,{modules:n.slice(a,a+3)}),t.createElement(o,{className:"header-2MiVco",size:o.Sizes.SIZE_24},"Ikle din Discord fine drakter"),t.createElement(s,{className:"byline-3REiHf",size:s.Sizes.SIZE_16,color:s.Colors.HEADER_SECONDARY},"Velg blandt over 100 drakter for å tilpasse og forbedre ditt brukergrensesnitt"))})},plugins=async()=>{const e=(await Promise.resolve().then((function(){return modulesPreview$1}))).default(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByDisplayName("Header"),s=goosemod.webpackModules.findByDisplayName("Text"),n=goosemod.moduleStoreAPI.modules.filter((e=>!e.tags.includes("theme")&&e.images&&e.images[0])).sort(((e,t)=>t.github?.stars-e.github?.stars)),a=Math.floor(Math.random()*(n.length-5));goosemod.webpackModules.find((e=>e.show&&e.show.toString().includes("confirmText"))).show({className:"gm-ootb-modal",title:"Programtillegg",confirmText:"Utforsk programtillegg",onConfirm:async()=>{0===goosemod.ootb.todo.length&&(await sleep(2e3),goosemod.ootb.settings())},body:t.createElement("div",{className:"container-1rn8Cv"},t.createElement(e,{modules:n.slice(a,a+3)}),t.createElement(o,{className:"header-2MiVco",size:o.Sizes.SIZE_24},"Finjuster din Discord under panseret"),t.createElement(s,{className:"byline-3REiHf",size:s.Sizes.SIZE_16,color:s.Colors.HEADER_SECONDARY},"Programtillegg endrer opplevelsen, og forbedrer selve programmet"))})},store=async()=>{const e=(await Promise.resolve().then((function(){return modulesPreview$1}))).default(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByProps("transitionTo"),s=goosemod.webpackModules.findByDisplayName("Header"),n=goosemod.webpackModules.findByDisplayName("Text"),a=goosemod.moduleStoreAPI.modules.filter((e=>e.images&&e.images[0])).sort(((e,t)=>t.github?.stars-e.github?.stars)),r=Math.floor(Math.random()*(a.length-5));goosemod.webpackModules.find((e=>e.show&&e.show.toString().includes("confirmText"))).show({className:"gm-ootb-modal",title:"Butikk",confirmText:"Vis butikk på hjemmeskjerm",onConfirm:async()=>{o.transitionTo("/channels/@me"),await sleep(100),document.body.classList.add("gm-highlight"),await sleep(3e3),document.body.classList.remove("gm-highlight")},body:t.createElement("div",{className:"container-1rn8Cv"},t.createElement(e,{modules:a.slice(r,r+3)}),t.createElement(s,{className:"header-2MiVco",size:s.Sizes.SIZE_24},"Utforsk drakter og programtillegg i butikk"),t.createElement(n,{className:"byline-3REiHf",size:n.Sizes.SIZE_16,color:n.Colors.HEADER_SECONDARY},"GooseMod bruker sin egen butikk, der du enkelt kan utforske og installere"))})},settings=async()=>{const e=(await Promise.resolve().then((function(){return modulesPreview$1}))).default(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByDisplayName("Header"),s=goosemod.webpackModules.findByDisplayName("Text");goosemod.webpackModules.find((e=>e.show&&e.show.toString().includes("confirmText"))).show({className:"gm-ootb-modal",title:"Innstillinger",confirmText:"Vis innstillingene i GooseMod",onConfirm:async()=>{goosemod.settings.openSettings(),await sleep(20),document.querySelector('[aria-controls="gm-Innstillinger-tab"]').click();const e=document.querySelector(".sidebarRegionScroller-3MXcoP");for(e.scrollTop=e.offsetHeight-270;document.querySelector(".closeButton-1tv5uR");)await sleep(100);goosemod.ootb.community()},body:t.createElement("div",{className:"container-1rn8Cv"},t.createElement(e,{modules:[{name:"Eksperimentelle funksjoner",description:"Prøv nye eksperimentelle funksjoner"},{name:"Verktøy",description:"Lag sikkerhetskopier, tilbakestill GooseMod, og annet"},{name:"Tilpasninger",description:"Sett opp GooseMod akkurat slik du vil ha det"}]}),t.createElement(o,{className:"header-2MiVco",size:o.Sizes.SIZE_24},"Bruk innstillinger i GooseMod for å tilpasse dets funksjoner"),t.createElement(s,{className:"byline-3REiHf",size:s.Sizes.SIZE_16,color:s.Colors.HEADER_SECONDARY},"Det er forskjellige ting du kan endre på"))})},community=async()=>{const e=(await Promise.resolve().then((function(){return modulesPreview$1}))).default(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByDisplayName("Header"),s=goosemod.webpackModules.findByDisplayName("Text");goosemod.webpackModules.find((e=>e.show&&e.show.toString().includes("confirmText"))).show({className:"gm-ootb-modal",title:"Gemenskap",confirmText:"Ta del I GooseMod-Discord",onConfirm:()=>{window.open("https://goosemod.com/discord")},body:t.createElement("div",{className:"container-1rn8Cv"},t.createElement(e,{modules:[{name:"Still spørsmål",description:"Still de spørsmålene du ønsker og få støtte"},{name:"Nyheter",description:"Få siste nytt og kunngjøringer om GooseMod og relaterte prosjekter"},{name:"Involver deg",description:"Hjelp til med forslag, støtt andre, og mye annet"}]}),t.createElement(o,{className:"header-2MiVco",size:o.Sizes.SIZE_24},"Ta del i GooseMod-gemenskapen"),t.createElement(s,{className:"byline-3REiHf",size:s.Sizes.SIZE_16,color:s.Colors.HEADER_SECONDARY},"Ta del i vår Discord for mer info og andre ting"))})},start=async()=>{const e=(await Promise.resolve().then((function(){return modulesPreview$1}))).default(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByDisplayName("Header"),s=goosemod.webpackModules.findByDisplayName("Text");goosemod.webpackModules.find((e=>e.show&&e.show.toString().includes("confirmText"))).show({className:"gm-ootb-modal",title:"GooseMod",confirmText:"Lær mer",cancelText:"Ikke interessert",onConfirm:()=>{goosemod.ootb.enabled=!0,goosemod.ootb.store()},body:t.createElement("div",{className:"container-1rn8Cv"},t.createElement(e,{modules:[{name:"Butikk",description:"Lær om GooseMod sin butikk og hva som er i den"},{name:"Innstillinger",description:"Finn ut mer om innstillingene i GooseMod og dets programtillegg"},{name:"Gemenskap",description:"Ta del i vår Discord for å stille spørsmål, gi tilbakemeldinger, sjekke hva som er nytt, med mer"}]}),t.createElement(o,{className:"header-2MiVco",size:o.Sizes.SIZE_24},"Lær om GooseMod"),t.createElement(s,{className:"byline-3REiHf",size:s.Sizes.SIZE_16,color:s.Colors.HEADER_SECONDARY},"Gå gjennom en kort veiledning i GooseMod sin kjernefunksjonalitet"))})};var OOTB={__proto__:null,enabled:enabled,todo:todo,done:done,themes:themes,plugins:plugins,store:store,settings:settings,community:community,start:start};const setThisScope$6=e=>{},startLoadingScreen=()=>{},updateLoadingScreen=e=>{},stopLoadingScreen=()=>{},defaultSettings={changelog:!0,separators:!0,gmBadges:!0,attrs:!1,home:!0,devchannel:!1,snippets:!1,autoupdate:!0,newModuleNotifications:!1,placeholderimage:!1,collapsiblehome:!0,allThemeSettings:!1,debugToasts:!1},loadStore=()=>{const e=JSON.parse(goosemod.storage.get("goosemodGMSettings"))||{};return{...defaultSettings,...e,get:()=>target}},target={uninit:!0};var GMSettings=new Proxy({uninit:!0},{get:(e,t)=>(e.uninit&&(e=loadStore()),e[t]??!1),set:(e,t,o)=>(e.uninit&&(e=loadStore()),e[t]=o,goosemod.storage.set("goosemodGMSettings",JSON.stringify(e)),!0)}),addToHome=async e=>{const{React:t,ReactDOM:o}=e.webpackModules.common,s=e.webpackModules.find((e=>e.default&&"ConnectedPrivateChannelsList"===e.default.displayName)),n=e.webpackModules.findByDisplayName("ListSectionItem"),{LinkButton:a}=e.webpackModules.findByProps("LinkButton"),r=e.webpackModules.findByProps("interactive","selected"),i=e.webpackModules.findByProps("channel","linkButtonIcon"),d=e.webpackModules.findByProps("headerText","privateChannelsHeaderContainer"),l=e.webpackModules.findByProps("icon","iconBadge","title"),c=e.webpackModules.findByProps("scrollerBase","auto","thin"),m={themes:t.createElement(e.webpackModules.findByDisplayName("Eye"),{width:24,height:24}),plugins:t.createElement(e.webpackModules.findByDisplayName("InlineCode"),{width:24,height:24}),snippets:t.createElement(e.webpackModules.findByDisplayName("Pictures"),{width:24,height:24}),expandable:t.createElement(goosemod.webpackModules.findByDisplayName("DropdownArrow"),{className:`${l.icon}`,width:24,height:24})},p=(await Promise.resolve().then((function(){return header$3}))).default(),g=e.webpackModules.findByDisplayName("LoadingPopout"),u=(e,o,s)=>t.createElement(p,{icon:e,title:o,id:s}),h=(e,o)=>t.createElement("div",{className:e?"":`${c.auto}`,id:"gm-settings-inject",style:{padding:"22px",backgroundColor:"var(--background-primary)",height:"100%",overflow:e?"":"hidden scroll"}},o),f=e.webpackModules.findByProps("transitionTo"),y=(e,t,o=0)=>{if(o>5)return!1;const s=e.parentElement;return s.classList.contains(t)&&s||y(s,t,o+1)},b=(...e)=>e.map((e=>document.getElementsByClassName(e)[0])).find((e=>e));let S=e.settings.gmSettings.collapsiblehome&&goosemod.storage.get("goosemodHomeExpanded")||!0,w={plugins:e.settings.items.find((e=>"Programtillegg"===e[1])),themes:e.settings.items.find((e=>"Drakter"===e[1])),snippets:e.settings.items.find((e=>"Snutter"===e[1]))},x={plugins:e.settings._createItem(w.plugins[1],w.plugins[2],!1),themes:e.settings._createItem(w.themes[1],w.themes[2],!1),snippets:e.settings._createItem(w.snippets[1],w.snippets[2],!1)};const v=(s,n)=>{const a=[...b("content-98HsJk","content-1SgpWY").children].find(((e,t)=>0!==t&&!e.classList.contains("erd_scroll_detection_container")));for(const e of b("scroller-1JbKMe","scroller-WSmht3").children[0].children)e.children[0]?.classList?.remove?.(r.selected,i.interactiveSelected);setTimeout((()=>{document.getElementById(`gm-home-${n}`).parentElement.classList.add(r.selected,i.interactiveSelected)}),0);const d="snippets"!==n&&Array.isArray(x[n].props.children)?x[n].props.children.filter((e=>"card"===e.props.type)).length:0,l="snippets"!==n?e.moduleStoreAPI.modules.filter((e=>"plugins"===n?!e.tags.includes("theme"):e.tags.includes("theme"))).length:0;if((d!==l||e.settings[`regen${n}`])&&(delete e.settings[`regen${n}`],x[n]=t.createElement("div",{className:"gm-store-loading-container"},t.createElement(g)),(async()=>{"snippets"!==n&&w[n][2].filter((e=>"card"===e.type)).length!==l&&await e.moduleStoreAPI.updateStoreSetting(),x[n]=e.settings._createItem(w[n][1],w[n][2],!1),document.querySelector(`#gm-home-${n}`).click()})()),1===a.children.length&&o.render(((e,o,s,n)=>t.createElement("div",{style:{height:"100%",overflow:"hidden"}},u(e,o,s),h(!1,n)))(m[n],s,n,x[n]),a.children[0]),2===a.children.length||3===a.children.length){let e=a.children.length-2;const t=a.children[e+1].classList.contains("stickyScroller-24zUyY");t&&(e=0),a.children[e+0].className="",o.render(u(m[n],s,n),a.children[e+0]),0!==e&&a.children[e+1].children[1]&&(a.children[e+1].children[1].style.display="none"),t&&(e=1),o.render(h(t,x[n]),0!==e?a.children[e+1].children[0]:a.children[e+1])}e.ootb.enabled&&e.ootb.todo.includes(n)&&(e.ootb[n](),e.ootb.done(n))},k=e.settings.gmSettings.snippets;e.settingsUninjects.push(e.patcher.patch(s,"default",((o,s)=>{if(s.props.children.props.children.some((e=>!0===e?.goosemod)))return;const c=e=>(e.goosemod=!0,e);setTimeout((()=>{b("scroller-1JbKMe","scroller-WSmht3").addEventListener("click",(e=>{const t=y(e.target,i.link);t&&!t.id.startsWith("gm-home-")&&(document.querySelectorAll('[id^="gm-home-"]').forEach((e=>e.parentElement.classList.remove(r.selected,i.interactiveSelected))),setTimeout((()=>{null!==document.getElementById("gm-settings-inject")&&(f.transitionTo("/invalid"),f.back())}),1))}))}),10),s.props.children.props.children.push(c(t.createElement(n,{className:d.privateChannelsHeaderContainer},t.createElement("span",{className:d.headerText},"GooseMod"),e.settings.gmSettings.collapsiblehome?t.createElement("div",{className:`${d.privateChannelRecipientsInviteButtonIcon} ${l.iconWrapper} ${l.clickable} gm-category-collapser`,style:{transform:`rotate(${S?"0":"-90"}deg)`,width:"22px",left:S?"0px":"-2px",top:S?"-6px":"-2px"},onClick:()=>{S=!S,goosemod.storage.set("goosemodHomeExpanded",S);const e=document.querySelector(".gm-category-collapser");e.style.transform=`rotate(${S?"0":"-90"}deg)`,e.style.left=S?"0px":"-2px",e.style.top=S?"-6px":"-2px";document.querySelectorAll('[id^="gm-home-"]').forEach((e=>e.style.display=S?"":"none"))}},m.expandable):null)),c(t.createElement(a,{style:{display:S||"Drakter"===b("title-29uC1r","title-17SveM")?.textContent?"block":"none"},icon:()=>m.themes,onClick:()=>v("Drakter","themes"),id:"gm-home-themes",text:"Drakter",selected:!1})),c(t.createElement(a,{style:{display:S||"Programtillegg"===b("title-29uC1r","title-17SveM")?.textContent?"block":"none"},icon:()=>m.plugins,onClick:()=>v("Programtillegg","plugins"),id:"gm-home-plugins",text:"Programtillegg",selected:!1})),k?c(t.createElement(a,{style:{display:S||"Snutter"===b("title-29uC1r","title-17SveM")?.textContent?"block":"none"},icon:()=>m.snippets,onClick:()=>v("Snutter","snippets"),id:"gm-home-snippets",text:"Snutter",selected:!1})):null)}))),b("privateChannels-1nO12o","privateChannels-oVe7HL")&&(f.transitionTo("/invalid"),f.back()),(async()=>{await e.moduleStoreAPI.updateStoreSetting();for(const t of["themes","plugins"])x[t]=e.settings._createItem(w[t][1],w[t][2],!1);if(!k)return;const t=JSON.parse(goosemod.storage.get("goosemodSnippets"))||{};for(const e in t){const o=t[e];t[e]=document.createElement("style"),t[e].appendChild(document.createTextNode(o)),document.body.appendChild(t[e])}const o=async(o,s)=>{const{fetchMessages:n}=e.webpackModules.findByProps("fetchMessages","sendMessage"),{getRawMessages:a}=e.webpackModules.findByProps("getMessages"),{getChannel:r,hasChannel:i}=e.webpackModules.findByProps("getChannel","getDMFromUserId");if(!i(o))return;await n({channelId:o});const d=r(o),l=Object.values(a(o)).filter((e=>e.content.includes("```css")&&!e.message_reference&&!e.content.includes("quick CSS")&&!e.content.includes("Theme Toggler"))).sort(((e,t)=>t.attachments.length+t.embeds.length-(e.attachments.length+e.embeds.length))),c=e.settings.items.find((e=>"Snutter"===e[1]));c[2].push({type:"store-header",text:s},...l.map((o=>({type:"card",tags:[o.id],lastUpdated:0,discordMessage:{guild:d.guild_id,channel:d.id,message:o.id},images:[o.attachments?.[0]?.proxy_url||o.embeds?.[0]?.thumbnail?.proxy_url].filter((e=>e)),name:"",author:[{name:o.author.username,id:o.author.id,avatar:o.author.avatar}],subtext:o.content.replace(/```css(.*)```/gs,""),buttonText:t[o.id]?"Fjern":"Legg til",buttonType:t[o.id]?"danger":"brand",onclick:()=>{const s=c[2].find((e=>e.tags?.includes(o.id))),n=document.querySelector(`[class*="${o.id}"]`).querySelector("button");e.settings.regensnippets=!0,t[o.id]?(t[o.id].remove(),delete t[o.id],n.className=n.className.replace("lookOutlined-3sRXeN colorRed-1TFJan","lookFilled-1Gx00P colorBrand-3pXr91"),n.textContent="Legg til",s.buttonText="Legg til",s.buttonType="brand"):(t[o.id]=document.createElement("style"),t[o.id].appendChild(document.createTextNode(/```css(.*)```/s.exec(o.content)[1])),document.body.appendChild(t[o.id]),n.className=n.className.replace("lookFilled-1Gx00P colorBrand-3pXr91","lookOutlined-3sRXeN colorRed-1TFJan"),n.textContent="Fjern",s.buttonText="Fjern",s.buttonType="danger");const a=Object.assign({},t);for(const e in a)a[e]=a[e].textContent;goosemod.storage.set("goosemodSnippets",JSON.stringify(a))},showToggle:!1,isToggled:()=>!1}))))};await o("755005803303403570","Powercord CSS Snippets"),await o("836694789898109009","BetterDiscord CSS Snippets"),await o("449569809613717518","Black Box CSS Snippets"),x.snippets=e.settings._createItem(w.snippets[1],w.snippets[2],!1)})()},addToContextMenu=(e,t)=>{const o=t=>({label:t,action:async()=>{e.settings.openSettings(),await sleep(10);let o=t;switch(o){case"Innstillinger":o="settings";break;case"Programtillegg":o="plugins";break;case"Drakter":o="themes";break;case"Snutter":o="snippets";break;case"Endringslogg":o="changelog"}document.querySelector(`[aria-controls="gm-${o.replace(/ /g,"-").toLowerCase()}-tab"]`).click()}});e.settingsUninjects.push(e.patcher.contextMenu.patch("user-settings-cog",{label:"GooseMod",sub:[o("Innstillinger"),t?void 0:o("Programtillegg"),t?void 0:o("Drakter"),o("Endringslogg")].filter((e=>e))})),e.settingsUninjects.push(e.patcher.contextMenu.patch("user-settings-cog",{label:"GooseMod-moduler",sub:()=>e.settings.items.slice(e.settings.items.indexOf(e.settings.items.find((e=>"GooseMod-moduler"===e[1])))+1).map((e=>o(e[1])))}))},addToSettingsSidebar=async(e,t)=>{let o;for(;!(o=e.webpackModules.findByDisplayName("SettingsView"));)await sleep(50);const s=e.webpackModules.findByDisplayName("Text"),{React:n}=e.webpackModules.common;e.settingsUninjects.push(e.patcher.patch(o.prototype,"getPredicateSections",((o,a)=>{const r=a.find((e=>"logout"===e.section));return r?(a.splice(a.indexOf(r),0,...e.settings.items.filter((e=>!(t.home&&("Programtillegg"===e[1]||"Drakter"===e[1]||"Snutter"===e[1])||!t.snippets&&"Snutter"===e[1]))).map((t=>{switch(t[0]){case"item":let o=t[1];switch(o){case"Innstillinger":o="settings";break;case"Programtillegg":o="plugins";break;case"Drakter":o="themes";break;case"Snutter":o="snippets";break;case"Endringslogg":o="changelog"}let s={section:"gm-"+o,label:t[1],predicate:()=>{},element:function(){if("function"==typeof t[3])return document.querySelector(".item-3XjbnG.selected-g-kMVV:not(.item-3mHhwr)").click(),t[3](),n.createElement("div");const o=document.querySelector(".standardSidebarView-E9Pc3j nav > div");return"Programtillegg"!==t[1]&&"Drakter"!==t[1]&&"Snutter"!==t[1]||(setTimeout((()=>{document.querySelector(".sidebarRegion-VFTUkN").style.maxWidth="218px",document.querySelector(".contentColumnDefault-1VQkGM").style.maxWidth="calc(100vw - 218px - 60px - 20px)"}),10),o.addEventListener("click",(e=>{0!==e.clientX&&"Programtillegg"!==e.target.textContent&&"Drakter"!==e.target.textContent&&"Snutter"!==e.target.textContent&&(document.querySelector(".sidebarRegion-VFTUkN").style.maxWidth="50%",document.querySelector(".contentColumnDefault-1VQkGM").style.maxWidth="740px")}))),e.settings._createItem(t[1],t[2])}};return t[4]&&(s.color="#f04747"),s;case"heading":return{section:"HEADER",label:t[1]};case"separator":return{section:"DIVIDER"}}})),{section:"DIVIDER"}),a.push({section:"DIVIDER"},{section:"CUSTOM",element:()=>n.createElement("div",{className:"info-3pQQBb"},n.createElement(s,{className:"line-18uChy",size:s.Sizes.SIZE_12,color:s.Colors.MUTED,tag:"span"},"GooseMod"," ",e.versioning.version," ",n.createElement("span",{className:"versionHash-mssSIL"},"(",e.versioning.hash.substring(0,7),")")),n.createElement(s,{className:"line-18uChy",size:s.Sizes.SIZE_12,color:s.Colors.MUTED,tag:"span"},"GooseMod Ext"," ",window.gmExtension))}),a):a}))),e.settings.isSettingsOpen()&&e.settings.reopenSettings()},addBaseItems=(e,t,o)=>{let s=e.settings.items;e.settings.items=[],e.settings.createHeading("GooseMod");const n=async(o,s)=>{switch(o){case"changelog":if(s){const o=[["item","Endringslogg",[""],async()=>{show()},!1]];t.separators&&o.unshift(["separator"]),e.settings.items.splice(e.settings.items.indexOf(e.settings.items.find((e=>"Themes"===e[1])))+1,0,...o)}else e.settings.items.splice(e.settings.items.indexOf(e.settings.items.find((e=>"Change Log"===e[1]))),t.separators?2:1);await e.settings.reopenSettings(),e.settings.openSettingItem("Settings");break;case"devchannel":s?goosemod.storage.set("goosemodUntetheredBranch","dev"):goosemod.storage.remove("goosemodUntetheredBranch");break;case"separators":if(s)t.home||goosemod.settings.items.splice(2,0,["separator"]),t.changelog&&goosemod.settings.items.splice(4,0,["separator"]);else{let t=!0;e.settings.items=e.settings.items.filter(((o,s)=>(e.settings.items[s+1]&&e.settings.items[s+1][1]&&"GooseMod-moduler"===e.settings.items[s+1][1]&&(t=!1),!("separator"===o[0]&&t))))}await e.settings.reopenSettings(),e.settings.openSettingItem("Settings");break;case"gmBadges":e.gmBadges[s?"addBadges":"removeBadges"]()}t[o]=s},a=async()=>{await e.confirmDialog("Gjenoppfrisk","Gjenoppfrisking kreves","Du må **gjenoppfriske for at dette programtillegget skal kunne brukes** Det **kan** hende ting blir rare i denne økten før du gjenoppfrisker.")&&location.reload()};e.settings.createItem("Innstillinger",["",{type:"header",text:"Innstillinger"},{type:"toggle",text:"GooseMod-endringslogg",subtext:"Vis «Endringslogg»-innstilling",onToggle:e=>n("changelog",e),isToggled:()=>t.changelog},{type:"toggle",text:"Hovedinndelere",subtext:"Vis inndelere mellom hoved-GooseMod-innstillinger",onToggle:e=>n("separators",e),isToggled:()=>t.separators},{type:"toggle",text:"Butikk på hjemmeskjerm",subtext:"Vis GoosMod-butikkvalg på hjemmeskjermen istedenfor i innsntillinger",onToggle:e=>{n("home",e),a()},isToggled:()=>t.home},{type:"header",text:"Butikk"},{type:"toggle",text:"Automatisk oppdatering",subtext:"Oppdater kodelagre og moduler hver time",onToggle:e=>n("autoupdate",e),isToggled:()=>t.autoupdate},{type:"toggle",text:"Ny modulmerknader",subtext:"Viser en oppsprettsmerknad hver gang en ny modul legges til i butikken.",onToggle:e=>n("newModuleNotifications",e),isToggled:()=>t.newModuleNotifications},{type:"header",text:"Utseende"},{type:"toggle",text:"GooseMod-skilt",subtext:"Vis GooseMod-skilt",onToggle:e=>n("gmBadges",e),isToggled:()=>t.gmBadges},{type:"header",text:"Verktøy"},{type:"text-and-button",text:"Tøm hurtiglagre",subtext:"Tøm (fullstendig fjerning) de fleste hurtiglagrene GooseMod bruker",buttonText:"Tøm",onclick:async()=>{goosemod.storage.keys().filter((e=>e.toLowerCase().startsWith("goosemod")&&e.includes("Cache"))).forEach((e=>goosemod.storage.remove(e))),a()}},{type:"text-and-button",text:"Start veiledning",subtext:"Gå gjennom GooseMod sin oppstartsveiledning igjen",buttonText:"Veiledning",onclick:async()=>{e.settings.closeSettings(),e.ootb.start()}},{type:"text-and-button",text:"Kopier avlusingsinfo",subtext:"Kopier info om oppsett og GooseMod for rapportering og avlusing.",buttonText:"Kopier",onclick:async()=>{const{copy:t}=e.webpackModules.findByProps("copy","SUPPORTS_COPY");t(e.genDebugInfo())}},{type:"text-and-danger-button",text:"Tilbakestill GooseMod",subtext:"Tilbakestiller GooseMod fullstendig: Fjerner alle innstillinger og moduler; som for en førstegangsinstallasjon",buttonText:"Tilbakestill",onclick:async()=>{await e.confirmDialog("Tilbakestill","Tilbakestill GooseMod","Bekreftelse vil tilbakestille GooseMod fullstendig. Dette fjerner alle innstillinger og moduler, som om du installerte GooseMod for første gang. Dette kan ikke angres.")&&(await e.remove(),window.location.reload())}},{type:"header",text:"Sikkerhetskopi"},{type:"text-and-button",text:"Opprett sikkerhetskopi",subtext:"Oppretter en fil for sikkerhetskopiering av dine GooseMod-moduler og innstillinger",buttonText:"Sikkerhetskopier",onclick:()=>{const e=goosemod.storage.keys().filter((e=>e.toLowerCase().startsWith("goosemod")&&!e.includes("Cache"))).reduce(((e,t)=>(e[t]=goosemod.storage.get(t),e)),{}),t=JSON.stringify(e),o=document.createElement("a");o.style.display="none";const s=new Blob([t],{type:"application/json"});o.href=URL.createObjectURL(s),o.download="goosemodBackup.json",document.body.appendChild(o),o.click(),o.remove()}},{type:"text-and-button",text:"Gjenopprett sikkerhetskopi",subtext:"Gjenopprett dine GooseMod-moduler og innstillinger via en sikkerhetskopifil, **kun gjenopprett sikkerhetskopier du har tiltro til**",buttonText:"Gjenopprett",onclick:async()=>{const e=document.createElement("input");e.style.display="none",e.type="file",e.click(),await new Promise((t=>{e.onchange=()=>{t()}}));const t=e.files[0];if(!t)return;const o=new FileReader;o.onload=()=>{const e=JSON.parse(o.result);for(const t in e)t.startsWith("goosemod")&&goosemod.storage.set(t,e[t]);location.reload()},o.readAsText(t)}},{type:"header",text:"Justeringer",collapsed:!0,collapseOffset:1},{type:"subtext",text:"Små endringer som f.eks. grensesnittsfikser for å gjøre GooseMod til ditt eget"},{type:"toggle",text:"Plassholderbilde",subtext:"Bruk et plassholderbilde i butikken hvis moduler mangler bilder",onToggle:e=>{n("placeholderimage",e)},isToggled:()=>t.placeholderimage},{type:"toggle",text:"Sammenfoldbar hjemmekategori",subtext:"Tillat sammenfolding av hjemmekategorien via dens ikon",onToggle:e=>{n("collapsiblehome",e)},isToggled:()=>t.collapsiblehome},{type:"header",text:"Eksperimentelt",collapsed:!0,collapseOffset:1},{type:"subtext",text:"Eksperimentelle innstillinger vil antagelig fremstå ufullstendige og ustabile, som kan resultere i feil"},{type:"toggle",experimental:!0,text:"Data-attributter",subtext:"Legg til dataatributter for noen elementer som drakter bruker",onToggle:e=>{n("attrs",e),a()},isToggled:()=>t.attrs},{type:"toggle",experimental:!0,text:"Snutter",subtext:"Skru på «Snutter»-fane i butikk",onToggle:e=>{n("snippets",e),a()},isToggled:()=>t.snippets},{type:"toggle",experimental:!0,text:"Påtving draktendringer",subtext:"Påtving auto-genererte innstillinger for alle drakter",onToggle:e=>{n("allThemeSettings",e),a()},isToggled:()=>t.allThemeSettings},{type:"toggle",experimental:!0,text:"Topaz",subtext:"Load Topaz with GooseMod. Topaz is in alpha and very experimental.",onToggle:e=>{e?goosemod.storage.set("goosemodTopaz",!0):goosemod.storage.remove("goosemodTopaz"),a()},isToggled:()=>goosemod.storage.get("goosemodTopaz")},{type:"gm-footer"}]),t.separators&&!t.home&&e.settings.createSeparator();let r="Stjerner",i="Alle",d="",l=!1;const c=async()=>{if(l)return;l=!0;const t=t=>{const o=t.querySelectorAll(".title-31JmR4, .title-2dsDLn"),a=o[1],d=[...o[0].getElementsByClassName("gm-store-author-name")].map((e=>e.textContent.split("#")[0])),l=a.childNodes[0].wholeText,c=t.querySelector(".description-3_Ncsb, .description-30xx7u").innerText,m=s.test(l)||s.test(c),p=t.querySelector(".container-3auIfb, .container-2nx-BQ").classList.contains("hide-toggle")?"Butikk":"Importert";switch(r){case"A-Å":t.style.order="";break;case"Sist oppdatert":{const o=e.moduleStoreAPI.modules.find((e=>e.name===l.trim()));t.style.order=3e9-o.lastUpdated;break}case"Stjerner":t.style.order=1e4-parseInt(t.children[4].children[0].ariaLabel)}t.style.display=!m||"Butikk"!==n&&n!==p||"Alle"!==i&&!d.includes(i.split(" (").slice(0,-1).join(" ("))?"none":"block"},o=[...document.querySelectorAll(":not(.gm-store-category) > div > .gm-store-card")],s=new RegExp(`.*${d}.*`,"i");let n=document.querySelector(".selected-3s45Ha, .selected-g-kMVV")?.textContent||"Butikk";"Butikk"!==n&&"Importert"!==n&&(n="Butikk"),o.forEach(t);const a=""===d&&"Butikk"===n&&"Alle"===i;[...document.getElementsByClassName("gm-store-category")].forEach((e=>e.style.display=a?"block":"none"));const c=document.querySelector(":not(.gm-store-category) > .gm-store-header");if(c&&(c.style.height=a?"":"0px",c.style.opacity=a?"":"0",c.style.margin=a?"":"0"),document.querySelector(".gm-store-card-loading-placeholder")){let e=[...document.querySelectorAll(".gm-store-card-loading-placeholder")];for(;0!==e.length;)e=e.filter((e=>"gm-store-card-loading-placeholder"===e.className||(t(e),!1))),await sleep(10)}if(c&&!a&&"Resultatløst"!==c.textContent&&o.every((e=>"none"===e.style.display))){if(c.style.height="",c.style.opacity="",c.style.margin="",c.dataset.original=c.textContent,c.children[0].textContent="Resultatløst",""!==d&&"Butikk"===n&&"Alle"===i)if(o[0]&&o[0].classList.contains("theme")){0!==goosemod.moduleStoreAPI.modules.filter((e=>!e.tags.includes("theme")&&(s.test(e.name)||s.test(e.description)))).length&&(c.children[0].textContent="Resultatløst. Mente du programtillegg?",c.style.cursor="pointer",c.onclick=async()=>{const e=d;document.getElementById("gm-home-plugins").click(),await sleep(100);const t=document.querySelector(".input-3Xdcic, .input-2m5SfJ");t.value=e,t.__reactProps$.onChange({currentTarget:{value:e}})})}else{0!==goosemod.moduleStoreAPI.modules.filter((e=>e.tags.includes("theme")&&(s.test(e.name)||s.test(e.description)))).length&&(c.children[0].textContent="Resultatløst. Mente du drakter?",c.style.cursor="pointer",c.onclick=async()=>{const e=d;document.getElementById("gm-home-themes").click(),await sleep(100);const t=document.querySelector(".input-3Xdcic, .input-2m5SfJ");t.value=e,t.__reactProps$.onChange({currentTarget:{value:e}})})}}else c&&"Alle drakter"!==c.textContent&&"Alle programtillegg"!==c.textContent&&(c.children[0].textContent=c.dataset.original,c.style.cursor="",c.onclick=()=>{});l=!1};e.settings.updateModuleStoreUI=c,["Programtillegg","Drakter"].forEach(((t,o)=>e.settings.createItem(t,["",{type:"search",placeholder:0===o?"Søk etter programtillegg":"Søk i drakter",onchange:e=>{d=e,c()},storeSpecific:!0},{type:"dropdown-individual",label:"Sorter etter",options:["Stjerner","A-Å","Sist oppdatert"],onchange:e=>{r=e,c()}},{type:"dropdown-individual",label:"Utvikler",options:()=>{const t=e.moduleStoreAPI.idCache.getCache(),o=[...e.moduleStoreAPI.modules.reduce(((e,o)=>{let s=o.authors;Array.isArray(s)||(s=[s]);for(const o of s){let s=o;if("object"==typeof o)s=o.n;else if(o.match(/^[0-9]{17,18}$/))s=t[o]?.data?.username;else{const e=o.match(/(.*) \(([0-9]{17,18})\)/);null!==e&&(s=e[1])}s&&e.set(s,(e.get(s)||0)+1)}return e}),new Map).entries()].sort(((e,t)=>t[1]-e[1])).map((e=>`${e[0]} (${e[1]})`));return o.unshift("Alle"),o},onchange:e=>{i=e,c()}},{type:"store-category",text:"Flest stjerner",sort:(e,t)=>t.github?.stars-e.github?.stars},{type:"store-category",text:"Nylig oppdatert",sort:(e,t)=>t.lastUpdated-e.lastUpdated},{type:"store-header",text:0===o?"Alle programtillegg":"Alle drakter"},{type:"gm-footer"}]))),e.settings.createItem("Snutter",["",{type:"search",placeholder:"Search Snippets",onchange:e=>{const t=document.getElementsByClassName("gm-store-card"),o=new RegExp(`.*${e}.*`,"i"),s=e=>{for(const t of e){const e=t.getElementsByClassName("markdown-11q6EU")[0].textContent,s=o.test(e);t.style.display=s?"":"none"}};0===t.length?setTimeout((()=>s(document.getElementsByClassName("gm-store-card"))),10):s(t)},storeSpecific:!0}]),t.changelog&&(t.separators&&e.settings.createSeparator(),e.settings.createItem("Endringslogg",[""],(async()=>{show()}))),e.settings.createSeparator(),e.settings.createHeading("GooseMod-moduler"),e.settings.items=e.settings.items.concat(s)},getItems=async()=>({divider:(await Promise.resolve().then((function(){return divider}))).default(),header:(await Promise.resolve().then((function(){return header$1}))).default(),toggle:(await Promise.resolve().then((function(){return toggle$1}))).default(),text:(await Promise.resolve().then((function(){return text$1}))).default(),"text-and-child":(await Promise.resolve().then((function(){return textAndChild$1}))).default(),"text-and-button":(await Promise.resolve().then((function(){return textAndButton$1}))).default(),"text-and-color":(await Promise.resolve().then((function(){return textAndColor$1}))).default(),button:(await Promise.resolve().then((function(){return button$1}))).default(),search:(await Promise.resolve().then((function(){return search$1}))).default(),"dropdown-individual":(await Promise.resolve().then((function(){return dropdownIndividual$1}))).default(),"store-header":(await Promise.resolve().then((function(){return storeHeader}))).default(),card:(await Promise.resolve().then((function(){return card}))).default(),"store-category":(await Promise.resolve().then((function(){return storeCategory$1}))).default(),custom:(await Promise.resolve().then((function(){return custom$1}))).default(),"text-input":(await Promise.resolve().then((function(){return textInput$1}))).default(),subtext:(await Promise.resolve().then((function(){return subtext$1}))).default()});const gmSettings=GMSettings;let Items={},goosemodScope$6={};const setThisScope$5=async e=>{goosemodScope$6=e,Items=await getItems()},removeModuleUI=(e,t)=>{const o=void 0===goosemodScope$6.modules[e];o&&(goosemodScope$6.modules[e]=Object.assign({},goosemodScope$6.disabledModules[e]),delete goosemodScope$6.disabledModules[e]),goosemodScope$6.moduleStoreAPI.moduleRemoved(goosemodScope$6.modules[e]),o||goosemodScope$6.modules[e].goosemodHandlers.onRemove(),delete goosemodScope$6.modules[e],goosemodScope$6.moduleSettingsStore.clearModuleSetting(e),t&&goosemodScope$6.settings.openSettingItem(t)},isSettingsOpen=()=>null!==document.querySelector(".standardSidebarView-E9Pc3j .closeButton-PCZcma"),closeSettings=()=>{let e=document.querySelector(".standardSidebarView-E9Pc3j .closeButton-PCZcma");if(null===e)return!1;e.click()},openSettings=()=>{document.querySelector('.flex-2S1XBF.flex-3BkGQD.horizontal-112GEH.horizontal-1Piu5-.flex-3BkGQD.directionRow-2Iu2A9.justifyStart-2Mwniq.alignStretch-Uwowzr.noWrap-hBpHBz > [type="button"]:last-child').click()},openSettingItem=e=>{try{const t=[...document.querySelector(".standardSidebarView-E9Pc3j nav > div").children];return t[1].click(),setTimeout((()=>t.find((t=>t.textContent===e)).click()),5),!0}catch(e){return!1}},reopenSettings=async()=>{goosemodScope$6.settings.closeSettings(),await sleep(500),goosemodScope$6.settings.openSettings(),await sleep(100)};let items=[];const createItem=(e,t,o,s=!1)=>{goosemodScope$6.settings.items.push(["item",e,t,o,s])},removeItem=e=>{const t=goosemodScope$6.settings.items.indexOf(goosemodScope$6.settings.items.find((t=>t[1]===e)));if(-1===t)return!1;goosemodScope$6.settings.items.splice(t,1)},createHeading=e=>{goosemodScope$6.settings.items.push(["heading",e])},createSeparator=()=>{goosemodScope$6.settings.items.push(["separator"])},_createItem=(e,t,o=!0)=>{const{React:s}=goosemodScope$6.webpackModules.common,n=goosemodScope$6.webpackModules.findByDisplayName("FormSection"),a=goosemodScope$6.webpackModules.findByDisplayName("FormTitle"),r=()=>t.slice(1).map(((t,o)=>{t.type.includes("danger-button")&&(t.type=t.type.replace("danger-",""),t.danger=!0);const n=Items[t.type];return n?s.createElement(n,{i:o,...t,itemName:e}):s.createElement("div")}));return o?s.createElement(n,{className:"Programtillegg"===e||"Drakter"===e?"gm-store-settings":""},t[1].prototype?.render?null:s.createElement(a,{tag:"h1"},e),t[1].prototype?.render?s.createElement(t[1]):r()):s.createElement("div",{},r())},makeGooseModSettings=()=>{goosemodScope$6.settingsUninjects=[],addBaseItems(goosemodScope$6,gmSettings),addToSettingsSidebar(goosemodScope$6,gmSettings),addToContextMenu(goosemodScope$6,gmSettings.home),gmSettings.home&&addToHome(goosemodScope$6);try{loadColorPicker()}catch(e){goosemodScope$6.logger.debug("settings.load","Failed to load color picker")}},loadColorPicker=()=>{const{findInReactTree:e}=goosemodScope$6.reactUtils;if(!goosemodScope$6.webpackModules.findByDisplayName("ColorPicker")){e(goosemodScope$6.webpackModules.findByDisplayName("GuildFolderSettingsModal").prototype.render.call({props:{},state:{}}).props.children,(e=>e.props?.colors)).type().props.children.type._ctor()}};var Settings={__proto__:null,gmSettings:gmSettings,get Items(){return Items},setThisScope:setThisScope$5,removeModuleUI:removeModuleUI,isSettingsOpen:isSettingsOpen,closeSettings:closeSettings,openSettings:openSettings,openSettingItem:openSettingItem,reopenSettings:reopenSettings,items:items,createItem:createItem,removeItem:removeItem,createHeading:createHeading,createSeparator:createSeparator,_createItem:_createItem,makeGooseModSettings:makeGooseModSettings},ab2str=e=>(new TextDecoder).decode(e);const evalGlobal=eval,makeSourceURL=e=>`${e} | GM Module`.replace(/ /g,"%20");let goosemodScope$5={};const setThisScope$4=e=>{goosemodScope$5=e},importModule=async(e,t=!1)=>{let o=e.name;goosemodScope$5.logger.debug("import",`Importing module: "${o}"`),void 0!==goosemodScope$5.modules[o]?.goosemodHandlers?.onImport&&(goosemodScope$5.logger.debug(`import.load.module.${o}`,"Module already imported, removing then installing new version"),await goosemodScope$5.modules[o].goosemodHandlers.onRemove()),"object"==typeof e.data&&(e.data=ab2str(e.data));goosemodScope$5[t?"disabledModules":"modules"][o]=Object.assign(evalGlobal("const goosemodScope=goosemod;"+e.data+` //# sourceURL=${makeSourceURL(e.name)}`),e.metadata),t||await goosemodScope$5.modules[o].goosemodHandlers.onImport()};let goosemodScope$4={};const setThisScope$3=e=>{goosemodScope$4=e},disableModule=e=>{let t=JSON.parse(goosemod.storage.get("goosemodDisabled"))||{};t[e]=!0,goosemod.storage.set("goosemodDisabled",JSON.stringify(t))},enableModule=e=>{let t=JSON.parse(goosemod.storage.get("goosemodDisabled"))||{};delete t[e],goosemod.storage.set("goosemodDisabled",JSON.stringify(t))},checkDisabled=e=>Object.keys(JSON.parse(goosemod.storage.get("goosemodDisabled"))||{}).includes(e),saveModuleSettings=async()=>{let e=JSON.parse(goosemod.storage.get("goosemodModules"))||{};for(let t in goosemodScope$4.modules)if(goosemodScope$4.modules.hasOwnProperty(t))try{e[t]=await(goosemodScope$4.modules[t].goosemodHandlers.getSettings||(async()=>[]))()}catch(e){console.error("Failed to load settings to save module",t,e)}JSON.stringify(JSON.parse(goosemod.storage.get("goosemodModules")))!==JSON.stringify(e)&&goosemod.storage.set("goosemodModules",JSON.stringify(e))},clearModuleSetting=e=>{let t=JSON.parse(goosemod.storage.get("goosemodModules"));t&&t[e]&&(delete t[e],goosemod.storage.set("goosemodModules",JSON.stringify(t)))},clearSettings=()=>{goosemod.storage.remove("goosemodModules")},loadSavedModuleSetting=async e=>{let t=JSON.parse(goosemod.storage.get("goosemodModules"));t&&t[e]&&await(goosemodScope$4.modules[e].goosemodHandlers.loadSettings||(async()=>[]))(t[e])};var ModuleSettingsStore={__proto__:null,setThisScope:setThisScope$3,disableModule:disableModule,enableModule:enableModule,checkDisabled:checkDisabled,saveModuleSettings:saveModuleSettings,clearModuleSetting:clearModuleSetting,clearSettings:clearSettings,loadSavedModuleSetting:loadSavedModuleSetting};let openpgp;const loadLibrary=async()=>{let js=await(await fetch("https://api.goosemod.com/pgp.js",{cache:"force-cache"})).text();js=js.replace("detectNode:function(){","detectNode:function(){return false;"),openpgp=eval(js+";openpgp")},verifySignature=async(e,t,o)=>{openpgp||await loadLibrary();const s=await openpgp.readKey({armoredKey:e}),n=await openpgp.createMessage({text:o}),a=await openpgp.readSignature({armoredSignature:t}),r=await openpgp.verify({message:n,signature:a,verificationKeys:s}),{verified:i,keyID:d}=r.signatures[0];try{return await i,goosemod.logger.debug("pgp","verified, key id:",d.toHex()),!0}catch(e){return goosemod.logger.debug("pgp","failed to verify",e.message),!1}},hash=async(e,t)=>{const o=await crypto.subtle.digest(t,new TextEncoder("utf-8").encode(e));return Array.prototype.map.call(new Uint8Array(o),(e=>("00"+e.toString(16)).slice(-2))).join("")},sha512=e=>hash(e,"SHA-512");let goosemodScope$3={};const setThisScope$2=e=>{goosemodScope$3=e},getCache$1=()=>JSON.parse(goosemod.storage.get("goosemodJSCache")||"{}"),purgeCache$1=()=>goosemod.storage.remove("goosemodJSCache"),updateCache$1=(e,t,o)=>{let s=goosemodScope$3.moduleStoreAPI.jsCache.getCache();s[e]={hash:t,js:o},goosemod.storage.set("goosemodJSCache",JSON.stringify(s))},getJSForModule=async e=>{const t=goosemodScope$3.moduleStoreAPI.modules.find((t=>t.name===e)),o=goosemodScope$3.moduleStoreAPI.jsCache.getCache();if(o[e]&&t.hash===o[e].hash)return o[e].js;{const o=t.repo.split("/").slice(0,-1).join("/"),s=await(await fetch(`${o}/module/${e}.js?_=${Date.now()}`)).text();return goosemodScope$3.moduleStoreAPI.jsCache.updateCache(e,t.hash,s),s}};var JSCache={__proto__:null,setThisScope:setThisScope$2,getCache:getCache$1,purgeCache:purgeCache$1,updateCache:updateCache$1,getJSForModule:getJSForModule};const currentDate=new Date-0;let goosemodScope$2={},getUser,queueProcessInterval;const setThisScope$1=e=>{goosemodScope$2=e,getUser=goosemodScope$2.webpackModules.findByProps("getUser","fetchCurrentUser").getUser},queue=[],queueReturns=[],processQueue=async()=>{if(0===queue.length)return clearInterval(queueProcessInterval),void(queueProcessInterval=void 0);const e=queue.pop();queueReturns.push(await getUser(e))},getCache=()=>JSON.parse(goosemod.storage.get("goosemodIDCache")||"{}"),purgeCache=()=>goosemod.storage.remove("goosemodIDCache"),updateCache=(e,t)=>{let o=getCache();o[e]={data:t,time:currentDate},goosemod.storage.set("goosemodIDCache",JSON.stringify(o))},getDataForID=async e=>{const t=getCache();if(t[e]&&t[e].time>currentDate-864e5)return t[e].data;{let t;for(queue.push(e),queueProcessInterval||(queueProcessInterval=setInterval(processQueue,500),processQueue());;){if(t=queueReturns.find((t=>t.id===e)),t){queueReturns.splice(queueReturns.indexOf(t),1);break}await sleep(500)}return updateCache(e,t),t}};var IDCache={__proto__:null,setThisScope:setThisScope$1,getCache:getCache,purgeCache:purgeCache,updateCache:updateCache,getDataForID:getDataForID};let goosemodScope$1={};var moduleStoreAPI={setThisScope:e=>{goosemodScope$1=e,setThisScope$2(e),setThisScope$1(e)},modules:[],repos:[],apiBaseURL:"https://api.goosemod.com",storeApiBaseURL:"https://store.goosemod.com",jsCache:JSCache,idCache:IDCache,getSettingItemName:e=>e.tags.includes("theme")?"Drakter":"Programtillegg",hotupdate:async(e=!1)=>{e&&goosemodScope$1.updateLoadingScreen("Getting modules from repos..."),await goosemodScope$1.moduleStoreAPI.updateModules(),await goosemodScope$1.moduleStoreAPI.updateStoreSetting(),e&&goosemodScope$1.updateLoadingScreen("Updating modules...");const t={},o=[];for(const s in goosemodScope$1.modules){const n=goosemodScope$1.moduleStoreAPI.modules.find((e=>e.name===s))?.hash,a=goosemodScope$1.moduleStoreAPI.jsCache.getCache()[s]?.hash;if(void 0!==n&&void 0!==a&&n!==a){if(void 0===t[s.repo]){const e=goosemodScope$1.moduleStoreAPI.repos.find((e=>e.url===s.repo));if("untrusted"===goosemodScope$1.moduleStoreAPI.verifyPgp(e).trustState){goosemodScope$1.showToast(`Failed to verify repo ${e.meta.name}, refusing to update it's modules`,{timeout:1e4,type:"error",subtext:"GooseMod-butikken"}),t[s.repo]=!1;continue}t[s.repo]=!0}!1!==t[s.repo]&&(e&&goosemodScope$1.updateLoadingScreen(`Updating modules...\n${s}`),o.push(goosemodScope$1.moduleStoreAPI.importModule(s,goosemodScope$1.moduleSettingsStore.checkDisabled(s)).then((async()=>{}))))}}await Promise.all(o)},initRepos:async()=>{const e=async e=>(await(await fetch(`${e}?_=${Date.now()}`)).json()).meta,t=async t=>({url:t,enabled:!0,meta:await e(t)});goosemodScope$1.moduleStoreAPI.repos=JSON.parse(goosemod.storage.get("goosemodRepos"))||[await t("https://store.goosemod.com/goosemod.json"),await t("https://store.goosemod.com/ms2porter.json"),await t("https://store.goosemod.com/bdthemes.json"),await t("https://store.goosemod.com/pcthemes.json"),await t("https://store.goosemod.com/pcplugins.json")]},updateModules:async()=>{let e=[];if(goosemodScope$1.moduleStoreAPI.repos=(await Promise.all(goosemodScope$1.moduleStoreAPI.repos.map((async t=>{if(!t.enabled)return t;try{const o=await(await fetch(`${t.url}?_=${Date.now()}`)).text(),s=JSON.parse(o);return"untrusted"===await goosemodScope$1.moduleStoreAPI.verifyPgp(t).trustState?(goosemodScope$1.showToast(`Failed to verify repo: ${t.meta.name}, refusing to use new modules`,{timeout:1e4,type:"error",subtext:"GooseMod-butikken"}),e=e.concat(goosemodScope$1.moduleStoreAPI.modules.filter((e=>e.repo===t.url))).sort(((e,t)=>e.name.localeCompare(t.name))),t):(e=e.concat(s.modules.map((e=>(e.repo=t.url,e)))).sort(((e,t)=>e.name.localeCompare(t.name))),{...t,meta:s.meta,resp:o})}catch(o){goosemodScope$1.showToast(`Failed to get repo: ${t.url}`,{timeout:5e3,type:"error",subtext:"GooseMod-butikken"}),console.error(o),e=e.concat(goosemodScope$1.moduleStoreAPI.modules.filter((e=>e.repo===t.url))).sort(((e,t)=>e.name.localeCompare(t.name)))}return t})))).sort(((e,t)=>goosemodScope$1.moduleStoreAPI.repos.indexOf(e.url)-goosemodScope$1.moduleStoreAPI.repos.indexOf(t.url))),goosemodScope$1.settings.gmSettings.newModuleNotifications)for(const t of e){goosemodScope$1.moduleStoreAPI.modules.find((e=>t.name===e.name))||goosemodScope$1.showToast(`${t.name}`,{timeout:5e3,subtext:"New "+(t.tags.includes("theme")?"Theme":"Plugin")})}goosemodScope$1.moduleStoreAPI.modules=e,goosemod.storage.set("goosemodRepos",JSON.stringify(goosemodScope$1.moduleStoreAPI.repos.map((e=>(delete e.resp,e))))),goosemod.storage.set("goosemodCachedModules",JSON.stringify(goosemodScope$1.moduleStoreAPI.modules))},importModule:async(e,t=!1)=>{try{const o=goosemodScope$1.moduleStoreAPI.modules.find((t=>t.name===e)),s=await goosemodScope$1.moduleStoreAPI.jsCache.getJSForModule(e),n=await sha512(s);if(n!==o.hash)return goosemodScope$1.showToast(`Cancelled importing of ${e} due to hash mismatch`,{timeout:2e3,type:"danger",subtext:"GooseMod-butikken"}),void console.warn("Hash mismatch",n,o.hash);await goosemodScope$1.importModule({name:e,data:s,metadata:o},t),t||(void 0!==goosemodScope$1.modules[e].goosemodHandlers.onLoadingFinished&&await goosemodScope$1.modules[e].goosemodHandlers.onLoadingFinished(),await goosemodScope$1.moduleSettingsStore.loadSavedModuleSetting(e));try{const e=goosemodScope$1.settings.items.find((e=>e[1]===goosemodScope$1.moduleStoreAPI.getSettingItemName(o)))[2].find((e=>e.subtext===o.description));e.buttonType="danger",e.buttonText="Fjern",e.showToggle=!0}catch(e){}}catch(e){console.error(e)}},moduleRemoved:e=>{let t=goosemodScope$1.settings.items.find((t=>t[1]===goosemodScope$1.moduleStoreAPI.getSettingItemName(e)))[2].find((t=>t.subtext===e.description));void 0!==t&&(t.buttonType="brand",t.buttonText="Installer",t.showToggle=!1)},parseAuthors:async e=>{const t="string"==typeof e?e.split(", "):e;return await Promise.all(t.map((async e=>{if("object"==typeof e)return{name:e.n,id:e.i,avatar:e.a};if(e.match(/^[0-9]{17,18}$/)){const t=await getDataForID(e);return{name:t.username,id:t.id,avatar:t.avatar}}const t=e.match(/(.*) \(([0-9]{17,18})\)/);return{name:t?.[1]||e,id:t?.[2]}})))},updateStoreSetting:async()=>{let e=goosemodScope$1.settings.items.filter((e=>"Programtillegg"===e[1]||"Drakter"===e[1]));for(const t of e)t[2]=t[2].filter((e=>"card"!==e.type));for(const t of goosemodScope$1.moduleStoreAPI.modules){const o=goosemodScope$1.moduleStoreAPI.getSettingItemName(t),s=e.find((e=>e[1]===o)),n=t.tags.includes("theme")?"themes":"plugins";s[2].push({type:"card",tags:t.tags,github:t.github,notice:t.notice,images:t.images?.map((e=>{if(e.startsWith("/")){e=t.repo.split("/").slice(0,-1).join("/")+e}return e})),lastUpdated:t.lastUpdated,buttonType:goosemodScope$1.modules[t.name]||goosemodScope$1.disabledModules[t.name]?"danger":"brand",showToggle:goosemodScope$1.modules[t.name]||goosemodScope$1.disabledModules[t.name],name:t.name,author:await goosemodScope$1.moduleStoreAPI.parseAuthors(t.authors),subtext:t.description,subtext2:"0"===t.version||t.version.toLowerCase().includes("auto")?"":`v${t.version}`,buttonText:goosemodScope$1.modules[t.name]||goosemodScope$1.disabledModules[t.name]?"Fjern":"Installer",onclick:async()=>{if(goosemodScope$1.settings[`regen${n}`]=!0,goosemodScope$1.modules[t.name]||goosemodScope$1.disabledModules[t.name])goosemodScope$1.settings.removeModuleUI(t.name,o);else{if(t.dependencies&&t.dependencies.length>0)for(const e of t.dependencies)await goosemodScope$1.moduleStoreAPI.importModule(e);await goosemodScope$1.moduleStoreAPI.importModule(t.name)}},isToggled:()=>void 0===goosemodScope$1.disabledModules[t.name],onToggle:async e=>{goosemodScope$1.settings.ignoreVisualToggle?delete goosemodScope$1.settings.ignoreVisualToggle:(goosemodScope$1.settings[`regen${n}`]=!0,e?(goosemodScope$1.modules[t.name]=goosemodScope$1.disabledModules[t.name],delete goosemodScope$1.disabledModules[t.name],await goosemodScope$1.modules[t.name].goosemodHandlers.onImport(),void 0!==goosemodScope$1.modules[t.name].goosemodHandlers.onLoadingFinished&&await goosemodScope$1.modules[t.name].goosemodHandlers.onLoadingFinished(),await goosemodScope$1.moduleSettingsStore.loadSavedModuleSetting(t.name),goosemodScope$1.moduleSettingsStore.enableModule(t.name)):(goosemodScope$1.disabledModules[t.name]=goosemodScope$1.modules[t.name],await goosemodScope$1.modules[t.name].goosemodHandlers.onRemove(),delete goosemodScope$1.modules[t.name],goosemodScope$1.moduleSettingsStore.disableModule(t.name)))}})}},verifyPgp:async e=>{const t=t=>{const o={result:t,trustState:"verified"!==t&&e.oncePgp||"invalid_signature"===t||"no_signature"===t?"untrusted":"verified"===t?"trusted":"unknown",when:Date.now()},s=goosemodScope$1.moduleStoreAPI.repos.find((t=>t.url===e.url));return s?(s.pgp=o,"verified"===t&&(s.oncePgp=!0),goosemod.logger.debug("pgp.save",s),goosemod.storage.set("goosemodRepos",JSON.stringify(goosemodScope$1.moduleStoreAPI.repos)),s.pgp):o};goosemod.logger.debug("pgp","verifying repo:",e.meta.name);const o=async e=>{const t=await fetch(e+"?_="+Date.now());return!!t.ok&&await t.text()},s=await o(`https://goosemod.github.io/Keyserver/repos/${e.meta.name}.gpg`);if(!s)return goosemod.logger.debug("pgp","no public key, aborting"),t("no_public_key");const n=await o(e.url+".sig");if(!n)return goosemod.logger.debug("pgp","no signature, aborting"),t("no_signature");const a=e.resp||await o(e.url);return t(await verifySignature(s,n,a)?"verified":"invalid_signature")}};let css="",toSaveNext=!1;const init$3=()=>{injectHooks(),setInterval((()=>{toSaveNext&&(toSaveNext=!1,save())}),1e4)},save=()=>{[...document.body.classList].forEach((e=>{css=css.replace(new RegExp(`body.${e}`,"g"),"body")})),goosemod.storage.set("goosemodCSSCache",css),goosemod.showToast("Saved",{subtext:"CSS Cache",type:"debuginfo"})},injectHooks=()=>{const e=()=>toSaveNext=!0,t=CSSStyleSheet.prototype.insertRule,o=Node.prototype.appendChild;CSSStyleSheet.prototype.insertRule=function(o){t.apply(this,arguments),o.includes("body.")&&(css+=o,e())};const s=[document.body,document.head],n=t=>{t.appendChild=function(t){if(o.apply(this,arguments),"STYLE"===t.tagName){if(t.id.startsWith("ace"))return;n(t);for(const e of t.childNodes)css+=e.textContent;e()}t.data&&(css+=t.textContent,e())}};for(const e of s)n(e)},load=()=>{const e=document.createElement("style");e.id="gm-css-cache",e.appendChild(document.createTextNode(goosemod.storage.get("goosemodCSSCache")||"")),document.body.appendChild(e),goosemod.showToast("Loaded",{subtext:"CSS Cache",type:"debuginfo"}),init$3()},removeStyle=()=>{const e=document.getElementById("gm-css-cache");e&&e.remove()};var CSSCache={__proto__:null,init:init$3,load:load,removeStyle:removeStyle};let goosemodScope={},unpatchers=[];const setThisScope=e=>{goosemodScope=e},showSponsorModal=()=>{window.open("https://github.com/sponsors/CanadaHonk")},badgeUsers={sponsor:["506482395269169153","597905003717459968","405400327370571786","707309693449535599","302734867425132545","557429876618166283","250353310698176522","301088721984552961","700698485560705084","274209973196816385","274926795285987328","293094733159333889","202740603790819328","541210648982585354","516750892372852754","192760945766957066","206837744658415616","889366461703913573","294468537899024384","688437973330428047","341522422836625408","597072695875600385","987317921774723092","162970149857656832","584363189890711562","158176459037474816","949168996182261820","275808021605777409","499802781235019777"],dev:["506482395269169153"],translator:["290293141666267136","346338830011596800","425140480334888980","650178631129235456","186496078273708033","202740603790819328","717498477457702964"]},addBadges=()=>{unpatchers.push(goosemodScope.patcher.userBadges.patch("GooseMod-sponsor","https://goosemod.com/img/goose_gold.jpg",(()=>goosemodScope.settings.gmSettings.gmBadges?badgeUsers.sponsor:[]),(()=>{showSponsorModal()}),{round:!0}),goosemodScope.patcher.userBadges.patch("GooseMod-oversetter","https://goosemod.com/img/goose_globe.png",(()=>goosemodScope.settings.gmSettings.gmBadges?badgeUsers.translator:[]),(()=>{}),{round:!0}),goosemodScope.patcher.userBadges.patch("GooseMod-utvikler","https://goosemod.com/img/goose_glitch.jpg",(()=>goosemodScope.settings.gmSettings.gmBadges?badgeUsers.dev:[]),(()=>{}),{round:!0}),goosemod.patcher.guildBadges.patch("Offisiell GooseMod-Discord","https://goosemod.com/img/logo.jpg",(()=>goosemodScope.settings.gmSettings.gmBadges?["756146058320674998"]:[]),(()=>{}),{round:!0}))},removeBadges=()=>{for(const e of unpatchers)e()};var GMBadges={__proto__:null,setThisScope:setThisScope,addBadges:addBadges,removeBadges:removeBadges};function getLocalStoragePropertyDescriptor(){const e=document.createElement("frame");e.src="about:blank",document.body.appendChild(e);let t=Object.getOwnPropertyDescriptor(e.contentWindow,"localStorage");return e.remove(),t}var fixLocalStorage=()=>{Object.defineProperty(window,"localStorage",getLocalStoragePropertyDescriptor())};const init$2=()=>{fixLocalStorage()},type$1="LocalStorage",set$1=(e,t)=>localStorage.setItem(e,t),get$1=e=>localStorage.getItem(e),remove$1=e=>localStorage.removeItem(e),keys$1=()=>Object.keys(localStorage);var impl_localstorage={__proto__:null,init:init$2,type:type$1,set:set$1,get:get$1,remove:remove$1,keys:keys$1};const backup$2=async({keys:e,get:t})=>{if(window.localStorage)for(const o of e())localStorage.setItem(o,t(o))},restore$2=async({set:e})=>{window.localStorage&&Object.keys(localStorage).filter((e=>e.toLowerCase().startsWith("goosemod"))).forEach((t=>e(t,localStorage.getItem(t))))},clear$2=async()=>{window.localStorage&&Object.keys(localStorage).filter((e=>e.toLowerCase().startsWith("goosemod"))).forEach((e=>localStorage.removeItem(e)))};var parity_localStorage={__proto__:null,backup:backup$2,restore:restore$2,clear:clear$2};const backup$1=async({keys:e,get:t})=>{if(!window.DiscordNative?.userDataCache)return;const o=await DiscordNative.userDataCache.getCached()||{};for(const s of e())o[s]=t(s);DiscordNative.userDataCache.cacheUserData(JSON.stringify(o))},restore$1=async({set:e})=>{if(!window.DiscordNative?.userDataCache)return;const t=await DiscordNative.userDataCache.getCached();t&&Object.keys(t).filter((e=>e.toLowerCase().startsWith("goosemod"))).forEach((o=>e(o,t[o])))},clear$1=async()=>{if(!window.DiscordNative?.userDataCache)return;const e=await DiscordNative.userDataCache.getCached();e&&Object.keys(e).filter((e=>e.toLowerCase().startsWith("goosemod"))).forEach((t=>{delete e[t],DiscordNative.userDataCache.cacheUserData(JSON.stringify(e))}))};var parity_userDataCache={__proto__:null,backup:backup$1,restore:restore$1,clear:clear$1},paritySystems=[parity_localStorage,parity_userDataCache];let storageCache={};const type="Extension",init$1=async()=>{window.localStorage||fixLocalStorage();const e=new Promise((e=>document.addEventListener("gmes_get_return",(async({detail:t})=>{storageCache=t,Object.keys(storageCache).length<5&&await restore(),e()}),{once:!0})));document.dispatchEvent(new CustomEvent("gmes_get")),await e,await backup()},restore=async()=>{console.log("GooseMod","Restoring storage...");for(const e of paritySystems)await e.restore({set:set})},backup=async()=>{console.log("GooseMod","Backing up storage...");for(const e of paritySystems)await e.backup({keys:keys,get:get})},set=(e,t)=>{storageCache[e]=t,document.dispatchEvent(new CustomEvent("gmes_set",{detail:{key:e,value:t}})),backup()},get=e=>storageCache[e]||null,remove=e=>{delete storageCache[e],document.dispatchEvent(new CustomEvent("gmes_remove",{detail:{key:e}})),backup()},clear=async()=>{keys().filter((e=>e.toLowerCase().startsWith("goosemod"))).forEach((e=>remove(e)));for(const e of paritySystems)await e.clear()},keys=()=>Object.keys(storageCache);var impl_extension={__proto__:null,type:type,init:init$1,restore:restore,backup:backup,set:set,get:get,remove:remove,clear:clear,keys:keys};const impl=window.gmExtension?impl_extension:impl_localstorage;var _Card=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.patcher.simpleTooltip(),o=new Intl.RelativeTimeFormat("en",{localeMatcher:"best fit",numeric:"auto",style:"long"}),s=goosemod.webpackModules.findByProps("Sizes","Colors","Looks","DropdownSizes"),n=goosemod.webpackModules.findByDisplayName("Switch"),a=goosemod.webpackModules.find((e=>"Markdown"===e.displayName&&e.rules)),r=goosemod.webpackModules.findByDisplayName("FormText"),i=goosemod.webpackModules.findByProps("formText","placeholder"),d=goosemod.webpackModules.findByProps("title","dividerDefault"),l=goosemod.webpackModules.findByProps("openModal","updateModal"),c=goosemod.webpackModules.findByDisplayName("SmallMediaCarousel"),m=goosemod.webpackModules.findByDisplayName("Discord"),p=goosemod.webpackModules.findByDisplayName("Clock"),g=goosemod.webpackModules.findByDisplayName("Info"),u=e=>{const t=Math.floor((Date.now()-e)/1e3),s=[{label:"year",seconds:31536e3},{label:"month",seconds:2592e3},{label:"day",seconds:86400},{label:"hour",seconds:3600},{label:"minute",seconds:60},{label:"second",seconds:1}].find((e=>e.seconds<t)),n=Math.floor(t/s.seconds);return o.format(-1*n,s.label)};return class extends e.PureComponent{constructor(e){super(e),this.state={}}render(){this.state.renderLoaded?this.state.renderLoaded=!1:(this.state.loaded=!this.props.i,this.state.loaded||setTimeout((()=>{this.setState({loaded:!0,renderLoaded:!0})}),10)),this.props.checked!==this.props.isToggled()&&(this.props.checked=this.props.isToggled());let o=!1;this.state.forceDisplay&&(o=!0,this.state.forceDisplay=!1,delete this.state.forceDisplay);let{notice:h}=this.props;switch(h){case 1:h="Other users may notice your usage";break;case 2:h="Other users may question or judge your usage, use appropriately"}const f=()=>{const e=[...document.querySelectorAll(".title-2dsDLn + .colorStandard-1Xxp1s")].filter((e=>e.textContent===this.props.subtext)).map((e=>e.parentElement));for(const t of e){const e=t.__reactFiber$.return;e.pendingProps=this.props,e.memoizedState.renderLoaded=!0,e.stateNode.forceUpdate()}};return this.state.loaded?e.createElement("div",{className:["gm-store-card",this.props.mini?"gm-store-card-mini":"",...this.props.tags.map((e=>e.replace(/ /g,"|")))].join(" "),onClick:this.props.onClick,style:{display:this.props.i&&!o?"none":"block"}},e.createElement(c,{autoplayInterval:0,items:(this.props.images?.[0]?this.props.images:[goosemod.settings.gmSettings.placeholderimage?"/assets/2366391afb15ed6c2a019a0c0caa0797.svg":"data:image/gif;base64,R0lGODlhAQABAAAAACwAAAAAAQABAAA="]).map((e=>({type:1,src:e}))),paused:!0,onCurrentItemClick:()=>{this.props.images?.[0]&&l.openModal((()=>e.createElement("div",{className:"gm-carousel-modal"},e.createElement(c,{items:this.props.images.map((e=>({type:1,src:e}))),autoplayInterval:5e3}))))}}),e.createElement("div",{className:[d.title,this.props.author.every((e=>!e.avatar))?"no-pfp":""].join(" ")},...this.props.author.map(((t,o)=>[t.avatar?e.createElement("img",{loading:"lazy",src:`https://cdn.discordapp.com/avatars/${t.id}/${t.avatar}.png?size=32`,className:"gm-store-author-pfp"}):null,e.createElement("span",{className:"gm-store-author-name"},t.name),o!==this.props.author.length-1?e.createElement("span",{className:i.description},", "):null]))),e.createElement("div",{className:d.title},this.props.name),e.createElement(r,{className:this.props.name?i.description:""},e.createElement(a,{className:"gm-settings-note-markdown"},this.props.subtext)),e.createElement("div",{},this.props.github?e.createElement(t,{text:this.props.github.stars,position:"left"},(({onMouseEnter:t,onMouseLeave:o,className:s,text:n})=>e.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"currentColor","aria-label":n,onMouseEnter:t,onMouseLeave:o,className:s},e.createElement("path",{d:"M12 .587l3.668 7.568 8.332 1.151-6.064 5.828 1.48 8.279-7.416-3.967-7.417 3.967 1.481-8.279-6.064-5.828 8.332-1.151z"})))):null,this.props.lastUpdated||this.props.subtext2?e.createElement(t,{text:(this.props.subtext2||"")+(this.props.subtext2&&this.props.lastUpdated?" | ":"")+(this.props.lastUpdated?u(1e3*this.props.lastUpdated):""),position:"left"},(({onMouseEnter:t,onMouseLeave:o,className:s,text:n})=>e.createElement(p,{width:24,height:24,"aria-label":n,className:s,onMouseEnter:t,onMouseLeave:o}))):null,this.props.notice?e.createElement(t,{text:h,position:"left"},(({onMouseEnter:t,onMouseLeave:o,className:s,text:n})=>e.createElement(g,{width:24,height:24,"aria-label":n,className:s,onMouseEnter:t,onMouseLeave:o}))):null),e.createElement("div",{},e.createElement(s,{color:"danger"===this.props.buttonType?s.Colors.RED:s.Colors.BRAND,look:s.Looks.FILLED,size:s.Sizes.SMALL,onClick:()=>{this.props.onclick(),this.props.buttonType="danger"===this.props.buttonType?"":"danger",this.props.buttonText="Fjern"===this.props.buttonText?"Installer":"Fjern",this.props.showToggle=!this.props.showToggle,f()}},this.props.buttonText),this.props.github?e.createElement(s,{color:s.Colors.PRIMARY,size:s.Sizes.SMALL,onClick:()=>{window.open(`https://github.com/${this.props.github.repo}`)}},e.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"currentColor"},e.createElement("path",{d:"M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"}))):null,this.props.discordMessage?e.createElement(s,{color:s.Colors.GREY,size:s.Sizes.SMALL,onClick:()=>{const{transitionTo:e}=goosemod.webpackModules.findByProps("transitionTo"),{jumpToMessage:t}=goosemod.webpackModules.findByProps("jumpToMessage");e(`/channels/${this.props.discordMessage.guild}/${this.props.discordMessage.channel}`),t({channelId:this.props.discordMessage.channel,messageId:this.props.discordMessage.message,flash:!0})}},e.createElement(m,{width:"24",height:"24"})):null,e.createElement(n,{className:this.props.showToggle?"":"hide-toggle",checked:this.props.checked,disabled:!1,onChange:e=>{this.props.checked=!this.props.checked,this.state.renderLoaded=!0,this.state.forceDisplay=!0,this.props.onToggle(this.props.checked),f()}}))):e.createElement("div",{className:"gm-store-card-loading-placeholder"})}}},card={__proto__:null,default:_Card},ProfileStoreInit=()=>{const e=_Card(),{React:t,ReactDOM:o}=goosemod.webpackModules.common,s=goosemod.webpackModules.find((e=>"UserProfileModal"===e.default?.displayName)),n=goosemod.webpackModules.findByProps("auto","scrollerBase");goosemod.patcher.patch(s,"default",((s,a)=>{const r=goosemod.reactUtils.findInReactTree(a.props.children,(e=>e.props?.section));r&&goosemod.patcher.patch(r,"type",(([{user:{id:s}}],a)=>{const r=goosemod.moduleStoreAPI.modules.filter((e=>e.authors.some&&e.authors.some((e=>e.i===s))));if(0===r.length)return;const i=goosemod.settings.items.find((e=>"Drakter"===e[1]))[2],d=goosemod.settings.items.find((e=>"Programtillegg"===e[1]))[2],l=r.filter((e=>e.tags.includes("theme"))),c=r.filter((e=>!e.tags.includes("theme"))),m=a.props.children,p=m.props.children[0],g=o=>t.createElement(e,{...o,mini:!0,onClick:async()=>{document.querySelector(".backdrop-1wrmKB").click();goosemod.webpackModules.findByProps("transitionTo").transitionTo("/store"),await sleep(200),document.getElementById("gm-home-"+(o.tags.includes("theme")?"themes":"plugins")).click(),await sleep(2e3);const e=[...document.querySelectorAll(".title-31JmR4 + .colorStandard-2KCXvj")].filter((e=>e.textContent===o.subtext)).pop().parentElement;document.querySelector("#gm-settings-inject").scrollTo({top:e.offsetTop-12,behavior:"smooth"}),e.style.boxShadow="0 0 12px 6px rgb(88 101 242 / 30%)",setTimeout((()=>{e.style.boxShadow=""}),15e3)}});return goosemod.patcher.patch(m.props,"onItemSelect",(([e])=>{e.startsWith("GM_")&&setTimeout((()=>{const e=document.querySelector(".body-r6_QPy > :first-child");o.render(t.createElement("div",{className:[n.auto,"gm-modules-container"].join(" ")},...l.map((e=>i.find((t=>t.name===e.name)))).map((e=>g(e))),...c.map((e=>d.find((t=>t.name===e.name)))).map((e=>g(e)))),e)}),1)})),m.props.children.push(t.cloneElement(p,{id:"GM_MODULES"},"GooseMod-moduler")),a}))}))},GenDebugInfo=()=>{const e={powercord:"powercord",vizality:"vizality",ED:"enhanceddiscord",BdApi:"betterdiscord"};return`Discord:\nClient: ${window.DiscordNative?"desktop":"web"}\nUser Agent: ${navigator.userAgent}\nRelease Channel: ${GLOBAL_ENV.RELEASE_CHANNEL}\nOther Mods: ${Object.keys(e).filter((e=>Object.keys(window).includes(e))).map((t=>e[t])).join(", ")}\n\nGooseMod:\nGM Version: ${goosemod.versioning.version} (${goosemod.versioning.hash})\nGM Branch: ${goosemod.versioning.branch}\nGM Extension Version: ${window.gmExtension}\nGM Storage Impl: ${goosemod.storage.type}\nModules: ${Object.keys(goosemod.modules).join(", ")}`};const scopeSetterFncs=[setThisScope$6,setThisScope$5,setThisScope$4,moduleStoreAPI.setThisScope,setThisScope$8,setThisScope$7,setThisScope$c,setThisScope$a,setThisScope$3,setThisScope$9,setThisScope],importsToAssign={startLoadingScreen:startLoadingScreen,stopLoadingScreen:stopLoadingScreen,updateLoadingScreen:updateLoadingScreen,settings:Settings,importModule:importModule,moduleSettingsStore:ModuleSettingsStore,webpackModules:WebpackModules,logger:Logger,showToast:showToast,confirmDialog:show$1,moduleStoreAPI:moduleStoreAPI,changelog:Changelog,goosemodChangelog:GoosemodChangelog,patcher:Patcher,attrs:Attrs,reactUtils:ReactUtils,cssCache:CSSCache,gmBadges:GMBadges,ootb:OOTB,storage:impl,genDebugInfo:GenDebugInfo},init=async function(){for(Object.assign(this,importsToAssign),await this.storage.init(),this.cssCache.load();void 0===window.webpackJsonp&&void 0===window.webpackChunkdiscord_app;)await sleep(50);for(;!this.webpackModules.findByProps("LinkButton");)await sleep(50);for(let e of scopeSetterFncs)try{await e(this)}catch(t){console.error("[GooseMod] Failed to scopeset",t,e)}this.versioning={version:"12.3",hash:"af2bcf99053777ff96fc286fd86d91d169c5573a",branch:goosemod.storage.get("goosemodUntetheredBranch"),lastUsedVersion:this.storage.get("goosemodLastVersion")},this.versioning.isDeveloperBuild="<hash>"===this.versioning.hash,this.storage.set("goosemodLastVersion",this.versioning.version),this.logger.debug("import.version.goosemod",`${this.versioning.version} (${this.versioning.hash})`),void 0!==window.DiscordNative&&this.logger.debug("import.version.discord",`${DiscordNative.app.getReleaseChannel()} ${DiscordNative.app.getVersion()}`),window.gmUntethered&&(this.untetheredVersion=window.gmUntethered.slice()),this.versioning.lastUsedVersion&&this.versioning.version!==this.versioning.lastUsedVersion&&this.goosemodChangelog.show(),this.startLoadingScreen(),this.updateLoadingScreen("Initialising internals...");let e=Object.keys(JSON.parse(this.storage.get("goosemodModules"))||{}),t=Object.keys(JSON.parse(this.storage.get("goosemodDisabled"))||{});this.modules=e.filter((e=>-1===t.indexOf(e))).reduce(((e,t)=>(e[t]={goosemodHandlers:{}},e)),{}),this.disabledModules=e.filter((e=>-1!==t.indexOf(e))).reduce(((e,t)=>(e[t]={goosemodHandlers:{}},e)),{}),this.moduleStoreAPI.modules=JSON.parse(this.storage.get("goosemodCachedModules"))||[],this.moduleStoreAPI.modules.cached=!0,this.settings.makeGooseModSettings(),await this.moduleStoreAPI.initRepos(),this.removed=!1,this.storage.get("goosemodCachedModules")||await this.moduleStoreAPI.updateModules(!0);let o=!1;0===e.length&&(o=!0),e=e.filter((e=>void 0!==this.moduleStoreAPI.modules.find((t=>t.name===e))));let s=e.find((e=>e.toLowerCase().includes("theme")));s&&e.unshift(e.splice(e.indexOf(s),1)[0]);let n=e.find((e=>"Hardcoded Color Fixer"===e));n&&e.unshift(e.splice(e.indexOf(n),1)[0]),o&&(e=["Fucklytics","Custom CSS"]),this.updateLoadingScreen("Importing modules from Store...");const a=[];for(let o of e)a.push(this.moduleStoreAPI.importModule(o,t.includes(o)));if(await Promise.all(a),this.cssCache.removeStyle(),this.settings.gmSettings.gmBadges&&this.gmBadges.addBadges(),this.settings.gmSettings.attrs&&this.attrs.patch(),this.saveInterval=setInterval((()=>{this.moduleSettingsStore.saveModuleSettings()}),3e3),this.remove=async()=>{this.settingsUninjects.forEach((e=>e())),clearInterval(this.saveInterval),clearInterval(this.hotupdateInterval),await this.storage.clear(),this.removed=!0;for(let e in this.modules)if(this.modules.hasOwnProperty(e)&&void 0!==this.modules[e].goosemodHandlers.onRemove)try{this.modules[e].goosemodHandlers.onRemove()}catch(e){}},this.moduleStoreAPI.hotupdate(!0),this.hotupdateInterval=setInterval((()=>{this.settings.gmSettings.autoupdate&&this.moduleStoreAPI.hotupdate()}),36e5),this.stopLoadingScreen(),this.settings.isSettingsOpen()&&this.settings.reopenSettings(),!this.storage.get("goosemodOOTB")){for(await sleep(1e3);document.querySelector(".modal-3O0aXp");)await sleep(100);this.ootb.start(),this.storage.set("goosemodOOTB",!0)}this.storage.get("goosemodTopaz")&&setTimeout((async()=>{(0,eval)(await(await fetch("https://goosemod.github.io/topaz/out.js",{cache:"no-store"})).text())}),1e3),ProfileStoreInit(),document.body.classList.add("goosemod")};window.goosemod={},init.bind(window.goosemod)();var modulesPreview=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("DiscoverStaticGuildCard"),o=e=>e.images?.map((t=>{if(t.startsWith("/")){t=e.repo.split("/").slice(0,-1).join("/")+t}return t}));return class extends e.PureComponent{render(){setTimeout((()=>{try{const e=document.querySelectorAll('.gm-modules-preview [class*="splashImage"]');e[e.length-3].src=o(this.props.modules[1])[0],e[e.length-2].src=o(this.props.modules[0])[0],e[e.length-1].src=o(this.props.modules[2])[0]}catch(e){}}),100);const s="placeholderCard-2jZYky";return e.createElement("div",{className:"gm-modules-preview"},e.createElement(t,{className:s,disabled:!0,small:!0,loading:!1,guild:{banner:null,splash:null,discoverySplash:null,icon:null,id:null,memberCount:null,presenceCount:null,...this.props.modules[1]}}),e.createElement(t,{className:s,guild:{banner:null,splash:null,discoverySplash:null,icon:null,id:null,memberCount:null,presenceCount:null,...this.props.modules[0]}}),e.createElement(t,{className:s,disabled:!0,small:!0,loading:!1,guild:{banner:null,splash:null,discoverySplash:null,icon:null,id:null,memberCount:null,presenceCount:null,...this.props.modules[2]}}))}}},modulesPreview$1={__proto__:null,default:modulesPreview},openReposModal=async()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("SwitchItem");class o extends e.Component{constructor(e){const t=e.onChange;e.onChange=e=>{t(e),this.props.value=e,this.forceUpdate()},super(e)}render(){return e.createElement("div",{},e.createElement(r,{style:{width:"100px",position:"absolute",right:"108px",marginTop:"33px"},color:i.colorPrimary,size:i.sizeSmall,onClick:this.props.buttonOpenLink},"Åpne lenke"),e.createElement(r,{style:{width:"92px",position:"absolute",right:"10px",marginTop:"33px"},color:i.colorRed,size:i.sizeSmall,onClick:this.props.buttonOnClick},"Fjern"),e.createElement(t,{...this.props}))}}let s;const n=async()=>{await goosemod.moduleStoreAPI.updateModules(),await goosemod.moduleStoreAPI.updateStoreSetting(),document.querySelector(".selected-aXhQR6").click()},a=async()=>{s(),await n(),S()},{Button:r}=goosemod.webpackModules.findByProps("Button"),i=goosemod.webpackModules.findByProps("button","colorRed"),d=goosemod.webpackModules.findByProps("ModalRoot"),l=goosemod.webpackModules.findByProps("socialLink","date"),c=goosemod.webpackModules.findByDisplayName("LegacyHeader"),m=goosemod.webpackModules.findByDisplayName("Text"),{openModal:p}=goosemod.webpackModules.findByProps("openModal","updateModal"),g=goosemod.webpackModules.findByDisplayName("Flex"),u=goosemod.webpackModules.findByDisplayName("TextInput"),h=goosemod.webpackModules.findByDisplayName("Tooltip"),f=goosemod.webpackModules.findByDisplayName("FlowerStar"),y=goosemod.webpackModules.findByDisplayName("Verified"),b=goosemod.webpackModules.findAll((e=>"Alert"===e.displayName)).pop(),S=()=>{const t=[];let S=0;for(const s of goosemod.moduleStoreAPI.repos){const r=[s.meta.name];if(s.pgp?.trustState){let t="",o=null;switch(s.pgp.trustState){case"trusted":t="PGP bekreftet",o=e.createElement(y,{className:"icon-1ihkOt"});break;case"untrusted":t="PGP ubetrodd",o=e.createElement(b,{className:"icon-1ihkOt"});break;case"unknown":t="Ingen PGP",o=e.createElement(b,{className:"icon-1ihkOt"})}r.unshift(e.createElement("span",{style:{display:"inline-flex",position:"relative",top:"2px",marginRight:"4px"}},e.createElement(h,{position:"top",color:"primary",text:t},(({onMouseLeave:s,onMouseEnter:n})=>e.createElement(f,{className:`gm-repos-modal-icon-${o.type.displayName}`,"aria-label":t,onMouseEnter:n,onMouseLeave:s},o)))))}t.push(e.createElement(o,{style:{marginTop:0===S?"16px":""},note:s.meta.description,value:s.enabled,onChange:e=>{s.enabled=e,n()},buttonOpenLink:()=>{window.open(s.url)},buttonOnClick:async()=>{goosemod.moduleStoreAPI.repos.splice(goosemod.moduleStoreAPI.repos.indexOf(s),1),a()}},...r)),S++}let w="";p((o=>(s=o.onClose,e.createElement(d.ModalRoot,{transitionState:o.transitionState,size:"medium"},e.createElement(d.ModalHeader,{},e.createElement(g.Child,{basis:"auto",grow:1,shrink:1,wrap:!1},e.createElement(c,{tag:"h2",size:c.Sizes.SIZE_20},"Kodelagre"),e.createElement(m,{size:m.Sizes.SIZE_12,className:l.date},goosemod.moduleStoreAPI.modules.filter((e=>e.tags.includes("theme"))).length," Themes",", ",goosemod.moduleStoreAPI.modules.filter((e=>!e.tags.includes("theme"))).length," Plugins",", ",Object.keys(goosemod.moduleStoreAPI.modules.reduce(((e,t)=>{let o=t.authors;return o.forEach||(o=[o]),o.forEach((t=>e[t.n||t.match(/(.*) \(([0-9]{17,18})\)/)?.[1]||t]=!0)),e}),{})).length," Developers")),e.createElement("FlexChild",{basis:"auto",grow:0,shrink:1,wrap:!1},e.createElement(d.ModalCloseButton,{onClick:o.onClose}))),e.createElement(d.ModalContent,{},...t,e.createElement(g,{style:{marginBottom:"16px"},basis:"auto",grow:1,shrink:1},e.createElement(u,{className:"codeRedemptionInput-3JOJea",placeholder:"https://example.com/modules.json",onChange:e=>{w=e}}),e.createElement(r,{style:{width:"112px"},size:i.sizeMedium,onClick:async()=>{let e={};try{e=await(await fetch(w)).json()}catch(e){}if(void 0===e.meta?.name)return void goosemod.showToast("Ugyldig kodelager",{type:"error",timeout:5e3,subtext:"Ugyldig format"});if(!confirm("Eksterne pakkebrønner medfører økt risiko, siden de ikke kontrolleres av GooseMod-utviklerne. Vi er ikke ansvarlige for noen farer som følge av at disse blir lagt til.\n\nHvis du ikke har tillit til eieren av denne pakkebrønn bør du ikke bruke det, siden det kan ta over Discord-installasjonen.\n\nBekreft at du vil legge til denne pakkebrønnen ved å trykke «OK»."))return void goosemod.showToast("Tillegg av kodelager avbrutt",{type:"danger",timeout:5e3,subtext:"Sikkerhetsspørsmål nektet"});const t={url:w,meta:e.meta,enabled:!0},o=await goosemod.moduleStoreAPI.verifyPgp(t,!1);"untrusted"!==o.trustState?"trusted"===o.trustState||confirm("Denne pakkebrønnen er ikke tiltrodd (ingen PGP-bekreftelse). Vær ekstra forsiktig. Forsikre deg om at du stoler på eieren(e).\n\nFor å løse dette problemet kan du be vedlikeholderen av pakkebrønnen om å legge til PGP-støtte.\n\nBekreft at du vil legge til denne pakkebrønnen ved å trykke «OK».")?(goosemod.moduleStoreAPI.repos.push(t),a()):goosemod.showToast("Tillegg av kodelager avbrutt",{type:"danger",timeout:5e3,subtext:"Sikkerhetsspørsmål nektet"}):goosemod.showToast("Tillegg av kodelager avbrutt",{type:"danger",timeout:5e3,subtext:"Feil som følge av ubetrodd PGP"})}},"Legg til")))))))};S()},header$2=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByProps("updateAvailable"),o=goosemod.webpackModules.findByProps("icon","iconBadge","title"),s=e.createElement(goosemod.webpackModules.findByDisplayName("Retry"),{width:24,height:24,className:o.icon}),n=e.createElement(goosemod.webpackModules.findByDisplayName("Cloud"),{width:24,height:24,className:o.icon}),a=goosemod.webpackModules.findByDisplayName("HeaderBarContainer"),r=goosemod.webpackModules.findByDisplayName("TabBar"),i=goosemod.webpackModules.findByProps("topPill"),d=goosemod.webpackModules.findByProps("tabBar","nowPlayingColumn"),l={themes:"STORE",plugins:"STORE"};return class extends e.PureComponent{constructor(e){super(e)}render(){return e.createElement(a,{isAuthenticated:!0,transparent:!1},e.createElement(a.Icon,{icon:()=>this.props.icon,className:o.icon}),e.createElement(a.Title,{},this.props.title),l[this.props.id]?e.createElement(a.Divider):null,l[this.props.id]?e.createElement(r,{selectedItem:l[this.props.id],type:i.topPill,className:d.tabBar,onItemSelect:e=>{l[this.props.id]=e,this.forceUpdate(),setTimeout(goosemod.settings.updateModuleStoreUI,10)}},e.createElement(r.Item,{id:"STORE",look:0,className:d.item},"Butikk"),e.createElement(r.Item,{id:"IMPORTED",look:0,className:d.item},"Importert")):null,"snippets"!==this.props.id?e.createElement("div",{className:o.toolbar,style:{position:"absolute",right:"0px"}},e.createElement(a.Icon,{icon:()=>s,tooltip:"Gjenoppfrisk",onClick:async()=>{document.querySelector(`.${o.toolbar} > [role="button"] > svg`).classList.add(t.updateAvailable),await goosemod.moduleStoreAPI.hotupdate(!0),document.querySelector(".selected-aXhQR6").click()}}),e.createElement(a.Icon,{icon:()=>n,tooltip:"Kodelagre",onClick:openReposModal})):"")}}},header$3={__proto__:null,default:header$2},_Divider=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("FormDivider"),o=goosemod.webpackModules.findByProps("dividerDefault","titleDefault");return class extends e.PureComponent{render(){return e.createElement(t,{className:o.dividerDefault})}}},divider={__proto__:null,default:_Divider},header=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("FormTitle"),o=goosemod.webpackModules.findByProps("marginTop20","marginBottom8"),s=goosemod.webpackModules.findByDisplayName("Tooltip"),n=goosemod.webpackModules.findByDisplayName("Science");return class extends e.PureComponent{constructor(t){t.experimental&&(t.text=[e.createElement(s,{position:"top",color:"primary",text:"Experimental"},(({onMouseLeave:t,onMouseEnter:o})=>e.createElement(n,{width:18,height:18,className:"gm-settings-label-icon",onMouseLeave:t,onMouseEnter:o}))),e.createElement("span",{style:{verticalAlign:"unset"},className:"gm-settings-label-text"},t.text)]),t.id=`gm-settings-header-${Math.random().toString().substring(2)}`,t.collapsible=void 0!==t.collapsed,t.collapsed=t.collapsed||!1,t.hide&&(t.collapseOffset=0),super(t),this.props.handleCollapse=()=>{const e=[...document.querySelectorAll(`#${this.props.id} ~ *`)],t=e.slice(0,e.indexOf(e.find((e=>"H5"===e.tagName))));for(const e of t.slice(this.props.collapseOffset||0))e.style.display=this.props.collapsed?"none":""},this.props.collapsed&&this.props.handleCollapse()}render(){return setTimeout(this.props.handleCollapse,100),this.props.hide?null:e.createElement(t,{tag:"h5",className:(0!==this.props.i?o.marginTop20+" ":"")+o.marginBottom8,onClick:this.props.collapsible?()=>{this.props.collapsed=!this.props.collapsed,this.props.handleCollapse(),this.forceUpdate()}:void 0,id:this.props.id},this.props.text,this.props.collapsible?e.createElement(goosemod.webpackModules.findByDisplayName("DropdownArrow"),{className:["gm-settings-header-collapser",this.props.collapsed?"collapsed":""].join(" "),width:22,height:22}):null)}}},header$1={__proto__:null,default:header},toggle=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("SwitchItem"),o=goosemod.webpackModules.find((e=>"Markdown"===e.displayName&&e.rules)),s=goosemod.webpackModules.findByDisplayName("Tooltip"),n=goosemod.webpackModules.findByDisplayName("Science"),a=goosemod.webpackModules.findByDisplayName("InfoFilled");return class extends e.Component{constructor(t){const o=t.onToggle;t.onChange=e=>{this.props.value=e,this.forceUpdate(),o(e)},t.experimental&&(t.text=[e.createElement(s,{position:"top",color:"primary",text:"Experimental"},(({onMouseLeave:t,onMouseEnter:o})=>e.createElement(n,{width:22,height:22,className:"gm-settings-label-icon",onMouseLeave:t,onMouseEnter:o}))),e.createElement("span",{className:"gm-settings-label-text"},t.text)],t.subtext="**Experimental:** "+t.subtext),t.debug&&(t.text=[e.createElement(s,{position:"top",color:"primary",text:"Debug"},(({onMouseLeave:t,onMouseEnter:o})=>e.createElement(a,{width:22,height:22,className:"gm-settings-label-icon",onMouseLeave:t,onMouseEnter:o}))),e.createElement("span",{className:"gm-settings-label-text"},t.text)],t.subtext="**Debug:** "+t.subtext),super(t)}render(){return e.createElement(t,{value:this.props.isToggled(),note:e.createElement(o,{className:"gm-settings-note-markdown"},this.props.subtext||""),disabled:!!this.props.disabled&&this.props.disabled(),onChange:this.props.onChange},this.props.text)}}},toggle$1={__proto__:null,default:toggle},text=()=>{const e=_Divider(),{React:t}=goosemod.webpackModules.common,o=goosemod.webpackModules.findByDisplayName("FormItem"),s=goosemod.webpackModules.findByDisplayName("FormText"),n=goosemod.webpackModules.findByDisplayName("Flex"),a=goosemod.webpackModules.findByProps("marginTop20","marginBottom20"),r=goosemod.webpackModules.findByProps("title","dividerDefault"),i=goosemod.webpackModules.findByProps("formText","placeholder");return class extends t.PureComponent{render(){return t.createElement(o,{className:[n.Direction.VERTICAL,n.Justify.START,n.Align.STRETCH,n.Wrap.NO_WRAP,a.marginBottom20].join(" ")},t.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},t.createElement("div",{},t.createElement("div",{className:r.labelRow,style:{marginBottom:"4px"}},t.createElement("label",{class:r.title},this.props.text)),t.createElement(s,{className:i.description},this.props.subtext))),t.createElement(e))}}},text$1={__proto__:null,default:text},textAndChild=()=>{const{React:e}=goosemod.webpackModules.common,t=_Divider();goosemod.webpackModules.findByProps("Sizes","Colors","Looks","DropdownSizes");const o=goosemod.webpackModules.find((e=>"Markdown"===e.displayName&&e.rules)),s=goosemod.webpackModules.findByDisplayName("FormItem"),n=goosemod.webpackModules.findByDisplayName("FormText"),a=goosemod.webpackModules.findByDisplayName("Flex"),r=goosemod.webpackModules.findByProps("marginTop20","marginBottom20"),i=goosemod.webpackModules.findByProps("title","dividerDefault"),d=goosemod.webpackModules.findByProps("formText","placeholder");return class extends e.PureComponent{render(){return e.createElement(s,{className:[a.Direction.VERTICAL,a.Justify.START,a.Align.STRETCH,a.Wrap.NO_WRAP,r.marginBottom20].join(" ")},e.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},e.createElement("div",{},e.createElement("div",{className:i.labelRow,style:{marginBottom:"4px"}},e.createElement("label",{class:i.title},this.props.text)),e.createElement(n,{className:d.description},e.createElement(o,{className:"gm-settings-note-markdown"},this.props.subtext||""))),this.props.children),e.createElement(t))}}},textAndChild$1={__proto__:null,default:textAndChild},textAndButton=()=>{const{React:e}=goosemod.webpackModules.common,t=_Divider(),o=goosemod.webpackModules.findByProps("Sizes","Colors","Looks","DropdownSizes"),s=goosemod.webpackModules.find((e=>"Markdown"===e.displayName&&e.rules)),n=goosemod.webpackModules.findByDisplayName("FormItem"),a=goosemod.webpackModules.findByDisplayName("FormText"),r=goosemod.webpackModules.findByDisplayName("Flex"),i=goosemod.webpackModules.findByProps("marginTop20","marginBottom20"),d=goosemod.webpackModules.findByProps("title","dividerDefault"),l=goosemod.webpackModules.findByProps("formText","placeholder");return class extends e.PureComponent{render(){return e.createElement(n,{className:[r.Direction.VERTICAL,r.Justify.START,r.Align.STRETCH,r.Wrap.NO_WRAP,i.marginBottom20].join(" ")},e.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},e.createElement("div",{},e.createElement("div",{className:d.labelRow,style:{marginBottom:"4px"}},e.createElement("label",{class:d.title},this.props.text)),e.createElement(a,{className:l.description},e.createElement(s,{className:"gm-settings-note-markdown"},this.props.subtext||""))),e.createElement(o,{color:this.props.danger?o.Colors.RED:o.Colors.BRAND,disabled:this.props.disabled,onClick:()=>this.props.onclick()},this.props.buttonText)),e.createElement(t))}}},textAndButton$1={__proto__:null,default:textAndButton},textAndColor=()=>{const{React:e,constants:{DEFAULT_ROLE_COLOR:t,ROLE_COLORS:o}}=goosemod.webpackModules.common,s=_Divider(),n=goosemod.webpackModules.findByDisplayName("FormItem"),a=goosemod.webpackModules.findByDisplayName("FormTitle"),r=goosemod.webpackModules.findByProps("marginTop20","marginBottom20"),i=goosemod.webpackModules.findByProps("defaultMarginh5");return class extends e.PureComponent{constructor(e){e.default=(e=>{if(e&&7===e.length)return parseInt(e.slice(1),16)})((e.initialValue||(()=>{}))())||0,e.value=e.default,super(e)}render(){const d=goosemod.webpackModules.find((e=>"ColorPicker"===e.default?.displayName));return e.createElement(n,{className:[r.marginBottom20].join(" ")},e.createElement(a,{tag:"h5",className:(0!==this.props.i?r.marginTop20+" ":"")+i.defaultMarginh5},this.props.text),e.createElement(d.default,{colors:o,defaultColor:this.props.default||t,disabled:!1,value:this.props.value,customColor:null,renderDefaultButton:t=>e.createElement(d.DefaultColorButton,t),renderCustomButton:t=>e.createElement(d.CustomColorButton,t),customPickerPosition:"bottom",onChange:e=>{var t;this.props.value=e,this.forceUpdate(),this.props.oninput("#"+((16711680&(t=e))>>>16).toString(16).padStart(2,"0")+((65280&t)>>>8).toString(16).padStart(2,"0")+(255&t).toString(16).padStart(2,"0"))}}),e.createElement(s))}}},textAndColor$1={__proto__:null,default:textAndColor},button=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByProps("Sizes","Colors","Looks","DropdownSizes");return class extends e.PureComponent{render(){return e.createElement(t,{color:t.Colors.BRAND,size:t.Sizes.SMALL,disabled:this.props.disabled,onClick:()=>this.props.onclick()},this.props.text)}}},button$1={__proto__:null,default:button},search=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.find((e=>"SearchBar"===e.displayName&&e.prototype.focus));return class extends e.PureComponent{render(){return this.props.text||(this.props.text=""),setTimeout((()=>{this.props.onchange(this.props.text)}),10),e.createElement(t,{...t.defaultProps,className:this.props.storeSpecific?"gm-store-search":"",size:t.Sizes.MEDIUM,query:this.props.text,placeholder:this.props.placeholder||"Search",onClear:()=>{this.props.text="",this.forceUpdate()},onChange:e=>{this.props.text=e,this.forceUpdate()}})}}},search$1={__proto__:null,default:search},dropdownIndividual=()=>{const{React:e}=goosemod.webpackModules.common,{SingleSelect:t}=goosemod.webpackModules.findByProps("SingleSelect"),o=goosemod.webpackModules.findByDisplayName("FormText"),s=goosemod.webpackModules.findByProps("formText","placeholder");return class extends e.PureComponent{render(){return"function"==typeof this.props.options&&(this.props.options=this.props.options()),this.props.value||(this.props.value=(this.props.selected||(()=>{}))()||this.props.options[0]),setTimeout((()=>{this.props.onchange(this.props.value)}),10),e.createElement("div",{className:"gm-inline-dropdown"},e.createElement(o,{className:s.description},this.props.label),e.createElement(t,{searchable:!1,onChange:e=>{this.props.value=e.value,this.forceUpdate()},value:this.props.value,options:this.props.options.map((e=>({label:e,value:e})))}))}}},dropdownIndividual$1={__proto__:null,default:dropdownIndividual},_StoreHeader=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("Text");return class extends e.PureComponent{render(){return e.createElement("div",{className:"gm-store-header"},e.createElement(t,{color:t.Colors.HEADER_PRIMARY,size:t.Sizes.SIZE_20},this.props.text))}}},storeHeader={__proto__:null,default:_StoreHeader},storeCategory=()=>{const{React:e}=goosemod.webpackModules.common,t=_StoreHeader(),o=_Card(),s=goosemod.webpackModules.findByProps("scrollerBase","auto","thin");return class extends e.PureComponent{render(){return this.props.cards||(this.props.cards=goosemod.settings.items.find((e=>e[1]===this.props.itemName))[2].filter((e=>"card"===e.type)).sort(this.props.sort).slice(0,10).map((t=>e.createElement(o,t)))),e.createElement("div",{className:"gm-store-category"},e.createElement(t,{text:this.props.text}),e.createElement("div",{className:s.auto},...this.props.cards))}}},storeCategory$1={__proto__:null,default:storeCategory},custom=()=>{const{React:e}=goosemod.webpackModules.common;return class extends e.PureComponent{render(){return e.createElement("div",{ref:e=>{e&&e.appendChild("function"==typeof this.props.element?this.props.element():this.props.element)}})}}},custom$1={__proto__:null,default:custom},textInput=()=>{const{React:e}=goosemod.webpackModules.common,t=_Divider(),o=goosemod.webpackModules.findByDisplayName("FormItem"),s=goosemod.webpackModules.findByDisplayName("FormText"),n=goosemod.webpackModules.findByDisplayName("TextInput"),a=goosemod.webpackModules.findByDisplayName("Flex"),r=goosemod.webpackModules.findByProps("marginTop20","marginBottom20"),i=goosemod.webpackModules.findByProps("formText","description");return class extends e.PureComponent{render(){return e.createElement(o,{title:this.props.text,className:[a.Direction.VERTICAL,a.Justify.START,a.Align.STRETCH,a.Wrap.NO_WRAP,r.marginBottom20].join(" ")},e.createElement(n,{onChange:e=>{this.props.oninput(e)},defaultValue:this.props.initialValue?this.props.initialValue():""}),this.props.subtext&&e.createElement(s,{className:[i.description,r.marginTop8].join(" ")},this.props.subtext),e.createElement(t))}}},textInput$1={__proto__:null,default:textInput},subtext=()=>{const{React:e}=goosemod.webpackModules.common,t=goosemod.webpackModules.findByDisplayName("FormText"),o=goosemod.webpackModules.find((e=>"Markdown"===e.displayName&&e.rules)),s=goosemod.webpackModules.findByProps("marginTop20","marginBottom20");return class extends e.PureComponent{render(){return e.createElement(t,{type:"description",className:s.marginBottom20},e.createElement(o,{className:"gm-settings-note-markdown"},this.props.text||""))}}},subtext$1={__proto__:null,default:subtext}})();//# sourceURL=GooseMod