1var requirejs,require,define,__extends,__assign,__rest,__decorate,__param,__esDecorate,__runInitializers,__propKey,__setFunctionName,__metadata,__awaiter,__generator,__exportStar,__values,__read,__spread,__spreadArrays,__spreadArray,__await,__asyncGenerator,__asyncDelegator,__asyncValues,__makeTemplateObject,__importStar,__importDefault,__classPrivateFieldGet,__classPrivateFieldSet,__classPrivateFieldIn,__createBinding,__addDisposableResource,__disposeResources,_self,Prism;(function(global,Promise,undef){function commentReplace(e,t){return t||""}function hasProp(e,t){return hasOwn.call(e,t)}function getOwn(e,t){return e&&hasProp(e,t)&&e[t]}function obj(){return Object.create(null)}function eachProp(e,t){var n;for(n in e)if(hasProp(e,n)&&t(e[n],n))break}function mixin(e,t,n,i){return t&&eachProp(t,(function(t,o){!n&&hasProp(e,o)||(!i||"object"!=typeof t||!t||Array.isArray(t)||"function"==typeof t||t instanceof RegExp?e[o]=t:(e[o]||(e[o]={}),mixin(e[o],t,n,i)))})),e}function getGlobal(e){if(!e)return e;var t=global;return e.split(".").forEach((function(e){t=t[e]})),t}function newContext(e){function t(e,t,n){var i,o,r,a,s,l,c,d,u,p,h=t&&t.split("/"),f=k.map,m=f&&f["*"];if(e&&(l=(e=e.split("/")).length-1,k.nodeIdCompat&&jsSuffixRegExp.test(e[l])&&(e[l]=e[l].replace(jsSuffixRegExp,"")),"."===e[0].charAt(0)&&h&&(e=h.slice(0,h.length-1).concat(e)),function(e){var t,n,i=e.length;for(t=0;t<i;t++)if("."===(n=e[t]))e.splice(t,1),t-=1;else if(".."===n){if(0===t||1===t&&".."===e[2]||".."===e[t-1])continue;t>0&&(e.splice(t-1,2),t-=2)}}(e),e=e.join("/")),n&&f&&(h||m)){e:for(r=(o=e.split("/")).length;r>0;r-=1){if(s=o.slice(0,r).join("/"),h)for(a=h.length;a>0;a-=1)if((i=getOwn(f,h.slice(0,a).join("/")))&&(i=getOwn(i,s))){c=i,d=r;break e}!u&&m&&getOwn(m,s)&&(u=getOwn(m,s),p=r)}!c&&u&&(c=u,d=p),c&&(o.splice(0,d,c),e=o.join("/"))}return getOwn(k.pkgs,e)||e}function n(e){var t,n,i,o;for(t=0;t<queue.length;t+=1){if("string"!=typeof queue[t][0]){if(!e)break;queue[t].unshift(e),e=undef}t-=1,(n=(i=queue.shift())[0])in L||n in x||(n in I?v.apply(undef,i):x[n]=i)}e&&(o=getOwn(k.shim,e)||{},v(e,o.deps||[],o.exportsFn))}function i(e,i){var o=function(t,r,a,s){var l,c;if(i&&n(),"string"==typeof t){if(_[t])return _[t](e);if(!((l=w(t,e,!0).id)in L))throw new Error("Not loaded: "+l);return L[l]}return t&&!Array.isArray(t)&&(c=t,t=undef,Array.isArray(r)&&(t=r,r=
1a,a=s),i)?o.config(c)(t,r,a):(r=r||function(){return slice.call(arguments,0)},U.then((function(){return n(),v(undef,t||[],r,a,e)})))};return o.isBrowser="undefined"!=typeof document&&"undefined"!=typeof navigator,o.nameToUrl=function(e,t,n){var i,r,a,s,l,c,d=getOwn(k.pkgs,e);if(d&&(e=d),c=getOwn(q,e))return o.nameToUrl(c,t,n);if(urlRegExp.test(e))s=e+(t||"");else{for(i=k.paths,a=(r=e.split("/")).length;a>0;a-=1)if(l=getOwn(i,r.slice(0,a).join("/"))){Array.isArray(l)&&(l=l[0]),r.splice(0,a,l);break}s=r.join("/"),s=("/"===(s+=t||(/^data\:|^blob\:|\?/.test(s)||n?"":".js")).charAt(0)||s.match(/^[\w\+\.\-]+:/)?"":k.baseUrl)+s}return k.urlArgs&&!/^blob\:/.test(s)?s+k.urlArgs(e,s):s},o.toUrl=function(n){var i,r=n.lastIndexOf("."),a=n.split("/")[0];return-1!==r&&(!("."===a||".."===a)||r>1)&&(i=n.substring(r,n.length),n=n.substring(0,r)),o.nameToUrl(t(n,e),i,!0)},o.defined=function(t){return w(t,e,!0).id in L},o.specified=function(t){return(t=w(t,e,!0).id)in L||t in I},o}function o(e,t,n){e&&(L[e]=n,requirejs.onResourceLoad&&requirejs.onResourceLoad(C,t.map,t.deps)),t.finished=!0,t.resolve(n)}function r(e,t){e.finished=!0,e.rejected=!0,e.reject(t)}function a(e){e.factoryCalled=!0;var t,n=e.map.id;try{t=C.execCb(n,e.factory,e.values,L[n])}catch(t){return r(e,t)}n?t===undef&&(e.cjsModule?t=e.cjsModule.exports:e.usingExports&&(t=L[n])):M.splice(M.indexOf(e),1),o(n,e,t)}function s(e,t){this.rejected||this.depDefined[t]||(this.depDefined[t]=!0,this.depCount+=1,this.values[t]=e,this.depending||this.depCount!==this.depMax||a(this))}function l(e,t){var n={};return n.promise=new Promise((function(t,i){n.resolve=t,n.reject=function(t){e||M.splice(M.indexOf(n),1),i(t)}})),n.map=e?t||w(e):{},n.depCount=0,n.depMax=0,n.values=[],n.depDefined=[],n.depFinished=s,n.map.pr&&(n.deps=[w(n.map.pr)]),n}function c(e,t){var n;return e?(n=e in I&&I[e])||(n=I[e]=l(e,t)):(n=l(),M.push(n)),n}function d(e,t){return function(n){e.rejected||(n.dynaId||(n.dynaId="id"+(O+=1),n.requireModules=[t]),r(e,n))}}function u(e,t,n,i){n.depMax+=1,y(e,t).then((function(e){n.depFinished(e,i)}
1),d(n,e.id)).catch(d(n,n.map.id))}function p(e,t,a){e.load(t.n,i(a),function(e){function t(t){i||o(e,c(e),t)}var i;return t.error=function(t){c(e).reject(t)},t.fromText=function(t,o){var a=c(e),s=w(w(e).n),l=s.id;i=!0,a.factory=function(e,t){return t},o&&(t=o),hasProp(k.config,e)&&(k.config[l]=k.config[e]);try{b.exec(t)}catch(e){r(a,new Error("fromText eval for "+l+" failed: "+e))}n(l),a.deps=[s],u(s,null,a,a.deps.length)},t}(t.id),k)}function h(e){var t,n=e?e.indexOf("!"):-1;return n>-1&&(t=e.substring(0,n),e=e.substring(n+1,e.length)),[t,e]}function f(e,t,n){var i=e.map.id;t[i]=!0,!e.finished&&e.deps&&e.deps.forEach((function(i){var o=i.id,r=!hasProp(_,o)&&c(o,i);!r||r.finished||n[o]||(hasProp(t,o)?e.deps.forEach((function(t,n){t.id===o&&e.depFinished(L[o],n)})):f(r,t,n))})),n[i]=!0}function m(e){var t,n,i,o=[],r=1e3*k.waitSeconds,a=r&&P+r<(new Date).getTime();if(0===j&&(e?e.finished||f(e,{},{}):M.length&&M.forEach((function(e){f(e,{},{})}))),a){for(n in I)(i=I[n]).finished||o.push(i.map.id);(t=new Error("Timeout for modules: "+o)).requireModules=o,b.onError(t)}else(j||M.length)&&(E||(E=!0,setTimeout((function(){E=!1,m()}),70)))}function g(e){return setTimeout((function(){e.dynaId&&N[e.dynaId]||(N[e.dynaId]=!0,b.onError(e))})),e}var b,v,w,y,_,E,S,C,L=obj(),x=obj(),k={waitSeconds:7,baseUrl:"./",paths:{},bundles:{},pkgs:{},shim:{},config:{}},T=obj(),M=[],I=obj(),D=obj(),A=obj(),j=0,P=(new Date).getTime(),O=0,N=obj(),B=obj(),q=obj(),U=Promise.resolve();return S="function"==typeof importScripts?function(e){var t=e.url;B[t]||(B[t]=!0,c(e.id),importScripts(t),n(e.id))}:function(e){var t,i=e.id,o=e.url;B[o]||(B[o]=!0,(t=document.createElement("script")).setAttribute("data-requiremodule",i),t.type=k.scriptType||"text/javascript",t.charset="utf-8",t.async=!0,j+=1,t.addEventListener("load",(function(){j-=1,n(i)}),!1),t.addEventListener("error",(function(){var e,n,o;j-=1,(n=getOwn(k.paths,i))&&Array.isArray(n)&&n.length>1?(t.parentNode.removeChild(t),n.shift(),(o=c(i)).map=w(i),o.map.url=b.nameToUrl(i),S(o.map)):((e=new Error("Load failed: "+i+": "+t.src)).requireModules=[i],c(i).reject(e))}),!1),t.src=o,10===document.documentMode?asap.then((function(){document.head.appendChild(t)})):document.head.appendChild(t))},y=function(e,t){var n,i,o=e.id,r=k.shim[o];if(o in x)n=x[o],delete x[o],v.apply(undef,n);else if(!(o in I))if(e.pr){if(!(i=getOwn(q,o)))return y(w(e.pr)).then((function(n){var i=e.prn?e:w(o,t,!0),r=i.id,a=getOwn(k.shim,r);return r in A||(A[r]=!0,a&&a.deps?b(a.deps,(function(){p(n,i,t)})):p(n,i,t)),c(r).promise}));e.url=b.nameToUrl(i),S(e)}else r&&r.deps?b(r.deps,(function(){S(e)})):S(e);return c(o).promise},w=function(e,n,i){if("string"!=typeof e)return e;var o,r,a,s,l,c,d=e+" & "+(n||"")+" & "+!!i;return s=(a=h(e))[0],e=a[1],!s&&d in T?T[d]:(s&&(o=(s=t(s,n,i))in L&&L[s]),s?o&&o.normalize?(e=o.normalize(e,function(e){return function(n){return t(n,e,!0)}}(n)),c=!0):e=-1===e.indexOf("!")?t(e,n,i):e:(s=(a=h(e=t(e,n,i)))[0],e=a[1],r=b.nameToUrl(e)),l={id:s?s+"!"+e:e,n:e,pr:s,url:r,prn:s&&c},s||(T[d]=l),l)},_={require:function(e){return i(e)},exports:function(e){var t=L[e];return void 0!==t?t:L[e]={}},module:function(e){return{id:e,uri:"",exports:_.exports(e),config:function(){return getOwn(k.config,e)||{}}}}},v=function(e,t,n,i,r){if(e){if(e in D)return;D[e]=!0}var s=c(e);return t&&!Array.isArray(t)&&(n=t,t=[]),t=t?slice.call(t,0):null,i||(hasProp(k,"defaultErrback")?k.defaultErrback&&(i=k.defaultErrback):i=g),i&&s.promise.catch(i),r=r||e,"function"==typeof n?(!t.length&&n.length&&(n.toString().replace(commentRegExp,commentReplace).replace(cjsRequireRegExp,(function(e,n){t.push(n)})),t=(1===n.length?["require"]:["require","exports","module"]).concat(t)),s.factory=n,s.deps=t,s.depending=!0,t.forEach((function(n,i){var o;t[i]=o=w(n,r,!0),"require"===(n=o.id)?s.values[i]=_.require(e):"exports"===n?(s.values[i]=_.exports(e),s.usingExports=!0):"module"===n?s.values[i]=s.cjsModule=_.module(e):void 0===n?s.values[i]=void 0:u(o,r,s,i)})),s.depending=!1,s.depCount===s.depMax&&a(s)):e&&o(e,s,n),P=(new Date).getTime(),e||m(s),s.promise},(b=i(null,!0)).config=function(t){var n,i,o,r;return t.context&&t.context!==e?(n=getOwn(contexts,t.context))?n.req.config(t):newContext(t.context).config(t):(T=obj(),t.baseUrl&&"/"!==t.baseUrl.charAt(t.baseUrl.length-1)&&(t.baseUrl+="/"),"string"==typeof t.urlArgs&&(i=t.urlArgs,t.urlArgs=function(e,t){return(-1===t.indexOf("?")?"?":"&")+i}),o=k.shim,r={paths:!0,bundles:!0,config:!0,map:!0},eachProp(t,(function(e,t){r[t]?(k[t]||(k[t]={}),mixin(k[t],e,!0,!0)):k[t]=e})),t.bundles&&eachProp(t.bundles,(function(e,t){e.forEach((function(e){e!==t&&(q[e]=t)}))})),t.shim&&(eachProp(t.shim,(function(e,t){Array.isArray(e)&&(e={deps:e}),!e.exports&&!e.init||e.exportsFn||(e.exportsFn=function(e){return function(){var t;
1return e.init&&(t=e.init.apply(global,arguments)),t||e.exports&&getGlobal(e.exports)}}(e)),o[t]=e})),k.shim=o),t.packages&&t.packages.forEach((function(e){var t;t=(e="string"==typeof e?{name:e}:e).name,e.location&&(k.paths[t]=e.location),k.pkgs[t]=e.name+"/"+(e.main||"main").replace(currDirRegExp,"").replace(jsSuffixRegExp,"")})),(t.deps||t.callback)&&b(t.deps,t.callback),b)},b.onError=function(e){throw e},C={id:e,defined:L,waiting:x,config:k,deferreds:I,req:b,execCb:function(e,t,n,i){return t.apply(i,n)}},contexts[e]=C,b}var topReq,dataMain,src,subPath,bootstrapConfig,hasOwn,contexts,queue,currDirRegExp,urlRegExp,commentRegExp,cjsRequireRegExp,jsSuffixRegExp,slice,asap;if(!Promise)throw new Error("No Promise implementation available");bootstrapConfig=requirejs||require,hasOwn=Object.prototype.hasOwnProperty,contexts={},queue=[],currDirRegExp=/^\.\//,urlRegExp=/^\/|\:|\?|\.js$/,commentRegExp=/\/\*[\s\S]*?\*\/|([^:"'=]|^)\/\/.*$/gm,cjsRequireRegExp=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,jsSuffixRegExp=/\.js$/,slice=Array.prototype.slice,"function"!=typeof requirejs&&(asap=Promise.resolve(void 0),requirejs=topReq=newContext("_"),"function"!=typeof require&&(require=topReq),topReq.exec=function(text){return eval(text)},topReq.contexts=contexts,define=function(){queue.push(slice.call(arguments,0))},define.amd={jQuery:!0},bootstrapConfig&&topReq.config(bootstrapConfig),topReq.isBrowser&&!contexts._.config.skipDataMain&&(dataMain=document.querySelectorAll("script[data-main]")[0],dataMain=dataMain&&dataMain.getAttribute("data-main"),dataMain&&(dataMain=dataMain.replace(jsSuffixRegExp,""),bootstrapConfig&&bootstrapConfig.baseUrl||-1!==dataMain.indexOf("!")||(src=dataMain.split("/"),dataMain=src.pop(),subPath=src.length?src.join("/")+"/":"./",topReq.config({baseUrl:subPath})),topReq([dataMain]))))})(this,"undefined"!=typeof Promise?Promise:void 0),define("requireLib",(function(){})),requirejs.config({paths:{"focus-trap":"3rdParty/focus-trap/focus-trap.umd.min","perfect-scrollbar":"3rdParty/perfect-scrollbar",Pica:"3rdParty/pica",pica:"3rdParty/pica",prism:"3rdParty/prism",prismjs:"3rdParty/prism/prism","qr-creator":"3rdParty/qr-creator.min",tabbable:"3rdParty/focus-trap/index.umd.min",tslib:"3rdParty/tslib",zxcvbn:"3rdParty/zxcvbn"},packages:[{name:"codemirror",location:"3rdParty/codemirror",main:"lib/codemirror"}],shim:{"perfect-scrollbar":{exports:"PerfectScrollbar"},"qr-creator":{exports:"QrCreator"}},map:{"*":{Ajax:"WoltLabSuite/Core/Ajax",AjaxJsonp:"WoltLabSuite/Core/Ajax/Jsonp",AjaxRequest:"WoltLabSuite/Core/Ajax/Request",CallbackList:"WoltLabSuite/Core/CallbackList",ColorUtil:"WoltLabSuite/Core/ColorUtil",Core:"WoltLabSuite/Core/Core",DateUtil:"WoltLabSuite/Core/Date/Util",Devtools:"WoltLabSuite/Core/Devtools",Dictionary:"WoltLabSuite/Core/Dictionary","Dom/ChangeListener":"WoltLabSuite/Core/Dom/Change/Listener","Dom/Traverse":"WoltLabSuite/Core/Dom/Traverse","Dom/Util":"WoltLabSuite/Core/Dom/Util",Environment:"WoltLabSuite/Core/Environment",EventHandler:"WoltLabSuite/Core/Event/Handler",EventKey:"WoltLabSuite/Core/Event/Key",Language:"WoltLabSuite/Core/Language",List:"WoltLabSuite/Core/List",ObjectMap:"WoltLabSuite/Core/ObjectMap",Permission:"WoltLabSuite/Core/Permission",StringUtil:"WoltLabSuite/Core/StringUtil","Ui/Alignment":"WoltLabSuite/Core/Ui/Alignment","Ui/CloseOverlay":"WoltLabSuite/Core/Ui/CloseOverlay","Ui/Confirmation":"WoltLabSuite/Core/Ui/Confirmation","Ui/Dialog":"WoltLabSuite/Core/Ui/Dialog","Ui/Notification":"WoltLabSuite/Core/Ui/Notification","Ui/ReusableDropdown":"WoltLabSuite/Core/Ui/Dropdown/Reusable","Ui/Screen":"WoltLabSuite/Core/Ui/Screen","Ui/Scroll":"WoltLabSuite/Core/Ui/Scroll","Ui/SimpleDropdown":"WoltLabSuite/Core/Ui/Dropdown/Simple","Ui/TabMenu":"WoltLabSuite/Core/Ui/TabMenu",Upload:"WoltLabSuite/Core/Upload",User:"WoltLabSuite/Core/User"}},waitSeconds:0}),define("jquery",[],(function(){return window.jQuery})),define("require.config",(function(){})),function(e,t){var n;e.elAttr=function(e,t,n){if(void 0===n)return e.getAttribute(t)||"";e.setAttribute(t,n)},e.elAttrBool=function(e,t){var n=elAttr(e,t);return"1"===n||"true"===n},e.elByClass=function(e,n){return(n||t).getElementsByClassName(e)},e.elById=function(e){return t.getElementById(e)},e.elBySel=function(e,n){return(n||t).querySelector(e)},e.elBySelAll=function(e,n,i){var o=(n||t).querySelectorAll(e);return"function"==typeof i&&Array.prototype.forEach.call(o,i),o},e.elByTag=function(e,n){return(n||t).getElementsByTagName(e)},e.elCreate=function(e){return t.createElement(e)},e.elClosest=function(e,t){if(!(e instanceof Node))throw new TypeError("Provided element is not a Node.");
1return e.nodeType===Node.TEXT_NODE&&null===(e=e.parentNode)?null:("string"!=typeof t&&(t=""),0===t.length?e:e.closest(t))},e.elData=function(e,t,n){if(t="data-"+t,void 0===n)return e.getAttribute(t)||"";e.setAttribute(t,n)},e.elDataBool=function(e,t){var n=elData(e,t);return"1"===n||"true"===n},e.elHide=function(e){e.style.setProperty("display","none","")},e.elIsHidden=function(e){return"none"===e.style.getPropertyValue("display")},e.elInnerError=function(e,t,n){var i,o,r,a=e.parentNode;if(null===a)throw new Error("Only elements that have a parent element or document are valid.");if("string"!=typeof t){if(null!=t&&!1!==t)throw new TypeError("The error message must be a string; `false`, `null` or `undefined` can be used as a substitute for an empty string.");t=""}return o=e,(i=a).classList.contains("inputAddon")&&(i=a.parentElement,o=a),null!==(r=o.nextElementSibling)&&"SMALL"===r.nodeName&&r.classList.contains("innerError")||(""===t?r=null:((r=elCreate("small")).className="innerError",i.insertBefore(r,o.nextSibling))),""===t?null!==r&&(a.removeChild(r),r=null):r[n?"innerHTML":"textContent"]=t,r},e.elRemove=function(e){e.parentNode.removeChild(e)},e.elShow=function(e){e.style.removeProperty("display")},e.elToggle=function(e){"none"===e.style.getPropertyValue("display")?elShow(e):elHide(e)},e.forEach=function(e,t){for(var n=0,i=e.length;n<i;n++)t(e[n],n)},e.objOwns=function(e,t){return e.hasOwnProperty(t)},e.debounce=function(e,t,n){var i;return function(){var o=this,r=arguments;clearTimeout(i),i=setTimeout((function(){i=null,n||e.apply(o,r)}),t),n&&!i&&e.apply(o,r)}},Object.defineProperty(e,"WCF_CLICK_EVENT",{value:"click"}),n=0,function t(){e.history.state&&e.history.state.name&&"initial"!==e.history.state.name?(e.history.replaceState({name:"skip",depth:++n},""),e.history.back(),setTimeout(t,1)):e.history.replaceState({name:"initial"},"")}(),e.addEventListener("popstate",(function(t){t.state&&t.state.name&&"skip"===t.state.name&&e.history.go(t.state.depth)})),e.String.prototype.hashCode=function(){var e,t,n=0;if(this.length)for(e=0,t=this.length;e<t;e++)n=(n<<5)-n+this.charCodeAt(e),n&=n;return n},Object.defineProperty(e,"SECURITY_TOKEN",{configurable:!1,get(){const e=t.cookie.split(";").map((e=>e.trim())).find((e=>e.startsWith("XSRF-TOKEN=")));if(void 0===e)return"COOKIE_NOT_FOUND";const[n,i]=e.split(/=/,2);return decodeURIComponent(i.trim())}})}(window,document),define("wcf.globalHelper",(function(){})),function(e){function t(e,t){return e!==n&&("function"==typeof Object.create?Object.defineProperty(e,"__esModule",{value:!0}):e.__esModule=!0),function(n,i){return e[n]=t?t(n,i):i}}var n="object"==typeof global?global:"object"==typeof self?self:"object"==typeof this?this:{};"function"==typeof define&&define.amd?define("tslib",["exports"],(function(i){e(t(n,t(i)))})):"object"==typeof module&&"object"==typeof module.exports?e(t(n,t(module.exports))):e(t(n))}((function(e){var t,n,i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])};__extends=function(e,t){function n(){this.constructor=e}if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");i(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)},__assign=Object.assign||function(e){var t,n,i,o;for(n=1,i=arguments.length;n<i;n++)for(o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},__rest=function(e,t){var n,i,o={};for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(i=0,n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(o[n[i]]=e[n[i]]);return o},__decorate=function(e,t,n,i){var o,r,a=arguments.length,s=a<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,n,i);else for(r=e.length-1;r>=0;r--)(o=e[r])&&(s=(a<3?o(s):a>3?o(t,n,s):o(t,n))||s);return a>3&&s&&Object.defineProperty(t,n,s),s},__param=function(e,t){return function(n,i){t(n,i,e)}},__esDecorate=function(e,t,n,i,o,r){function a(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}var s,l,c,d,u,p=i.kind,h="getter"===p?"get":"setter"===p?"set":"value",f=!t&&e?i.static?e:e.prototype:null,m=t||(f?Object.getOwnPropertyDescriptor(f,i.name):{}),g=!1;for(l=n.length-1;l>=0;l--){for(d in c={},i)c[d]="access"===d?{}:i[d];for(d in i.access)c.access[d]=i.access[d];if(c.addInitializer=function(e){if(g)throw new TypeError("Cannot add initializer
1s after decoration has completed");r.push(a(e||null))},u=(0,n[l])("accessor"===p?{get:m.get,set:m.set}:m[h],c),"accessor"===p){if(void 0===u)continue;if(null===u||"object"!=typeof u)throw new TypeError("Object expected");(s=a(u.get))&&(m.get=s),(s=a(u.set))&&(m.set=s),(s=a(u.init))&&o.unshift(s)}else(s=a(u))&&("field"===p?o.unshift(s):m[h]=s)}f&&Object.defineProperty(f,i.name,m),g=!0},__runInitializers=function(e,t,n){var i,o=arguments.length>2;for(i=0;i<t.length;i++)n=o?t[i].call(e,n):t[i].call(e);return o?n:void 0},__propKey=function(e){return"symbol"==typeof e?e:"".concat(e)},__setFunctionName=function(e,t,n){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:n?"".concat(n," ",t):t})},__metadata=function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},__awaiter=function(e,t,n,i){return new(n||(n=Promise))((function(o,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((i=i.apply(e,t||[])).next())}))},__generator=function(e,t){function n(n){return function(l){return function(n){if(i)throw new TypeError("Generator is already executing.");for(;a&&(a=0,n[0]&&(s=0)),s;)try{if(i=1,o&&(r=2&n[0]?o.return:n[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,n[1])).done)return r;switch(o=0,r&&(n=[2&n[0],r.value]),n[0]){case 0:case 1:r=n;break;case 4:return s.label++,{value:n[1],done:!1};case 5:s.label++,o=n[1],n=[0];continue;case 7:n=s.ops.pop(),s.trys.pop();continue;default:if(!(r=s.trys,(r=r.length>0&&r[r.length-1])||6!==n[0]&&2!==n[0])){s=0;continue}if(3===n[0]&&(!r||n[1]>r[0]&&n[1]<r[3])){s.label=n[1];break}if(6===n[0]&&s.label<r[1]){s.label=r[1],r=n;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(n);break}r[2]&&s.ops.pop(),s.trys.pop();continue}n=t.call(e,s)}catch(e){n=[6,e],o=0}finally{i=r=0}if(5&n[0])throw n[1];return{value:n[0]?n[1]:void 0,done:!0}}([n,l])}}var i,o,r,a,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return a={next:n(0),throw:n(1),return:n(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a},__exportStar=function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||__createBinding(t,e,n)},__createBinding=Object.create?function(e,t,n,i){void 0===i&&(i=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,i,o)}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]},__values=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],i=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},__read=function(e,t){var n,i,o,r,a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;n=a.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(a=n.return)&&a.call(n)}finally{if(r)throw r.error}}return o},__spread=function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(__read(arguments[t]));return e},__spreadArrays=function(){var e,t,n,i,o,r,a,s;for(e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(i=Array(e),o=0,t=0;t<n;t++)for(a=0,s=(r=arguments[t]).length;a<s;a++,o++)i[o]=r[a];return i},__spreadArray=function(e,t,n){if(n||2===arguments.length)for(var i,o=0,r=t.length;o<r;o++)!i&&o in t||(i||(i=Array.prototype.slice.call(t,0,o)),i[o]=t[o]);return e.concat(i||Array.prototype.slice.call(t))},__await=function(e){return this instanceof __await?(this.v=e,this):new __await(e)},__asyncGenerator=function(e,t,n){function i(e){c[e]&&(l[e]=function(t){return new Promise((function(n,i){d.push([e,t,n,i])>1||o(e,t)}))})}function o(e,t){try{(n=c[e](t)).value instanceof __await?Promise.resolve(n.value.v).then(r,a):s(d[0][2],n)}catch(e){s(d[0][3],e)}var n}function r(e){o("next",e)}function a(e){o("throw",e)}function s(e,t){e(t),d.shift(),d.length&&o(d[0][0],d[0][1])}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var l,c=n.apply(e,t||[]),d=[];return l={},i("next"),i("throw"),i("return"),l[Symbol.asyncIterator]=function(){return this},l},__asyncDelegator=function(e){function t(t,o){n[t]=e[t]?function(n){return(i=!i)?{value:__await(e[t](n)),done:!1}:o?o(n):n}:o}var n,i;return n={},t("next"),t("throw",(function(e){throw e})),t("return"),n[Symbol.iterator]=function(){return this},n},__asyncValues=function(e){function t(t){n[t]=e[t]&&function(n){return new Promise((function(i,o){(function(e,t,n,i){Promise.resolve(i).then((function(t){e({value:t,done:n})}),t)})(i,o,(n=e[t](n)).done,n.value)}))}}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,i=e[Symbol.asyncIterator];return i?i.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),n={},t("next"),t("throw"),t("return"),n[Symbol.asyncIterator]=function(){return this},n)}
1,__makeTemplateObject=function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},t=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},__importStar=function(e){var n,i;if(e&&e.__esModule)return e;if(n={},null!=e)for(i in e)"default"!==i&&Object.prototype.hasOwnProperty.call(e,i)&&__createBinding(n,e,i);return t(n,e),n},__importDefault=function(e){return e&&e.__esModule?e:{default:e}},__classPrivateFieldGet=function(e,t,n,i){if("a"===n&&!i)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?i:"a"===n?i.call(e):i?i.value:t.get(e)},__classPrivateFieldSet=function(e,t,n,i,o){if("m"===i)throw new TypeError("Private method is not writable");if("a"===i&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===i?o.call(e,n):o?o.value=n:t.set(e,n),n},__classPrivateFieldIn=function(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)},__addDisposableResource=function(e,t,n){if(null!=t){if("object"!=typeof t&&"function"!=typeof t)throw new TypeError("Object expected.");var i;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");i=t[Symbol.asyncDispose]}if(void 0===i){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");i=t[Symbol.dispose]}if("function"!=typeof i)throw new TypeError("Object not disposable.");e.stack.push({value:t,dispose:i,async:n})}else n&&e.stack.push({async:!0});return t},n="function"==typeof SuppressedError?SuppressedError:function(e,t,n){var i=new Error(n);return i.name="SuppressedError",i.error=e,i.suppressed=t,i},__disposeResources=function(e){function t(t){e.error=e.hasError?new n(t,e.error,"An error was suppressed during disposal."):t,e.hasError=!0}return function n(){for(var i,o;e.stack.length;){i=e.stack.pop();try{if(o=i.dispose&&i.dispose.call(i.value),i.async)return Promise.resolve(o).then(n,(function(e){return t(e),n()}))}catch(e){t(e)}}if(e.hasError)throw e.error}()},e("__extends",__extends),e("__assign",__assign),e("__rest",__rest),e("__decorate",__decorate),e("__param",__param),e("__esDecorate",__esDecorate),e("__runInitializers",__runInitializers),e("__propKey",__propKey),e("__setFunctionName",__setFunctionName),e("__metadata",__metadata),e("__awaiter",__awaiter),e("__generator",__generator),e("__exportStar",__exportStar),e("__createBinding",__createBinding),e("__values",__values),e("__read",__read),e("__spread",__spread),e("__spreadArrays",__spreadArrays),e("__spreadArray",__spreadArray),e("__await",__await),e("__asyncGenerator",__asyncGenerator),e("__asyncDelegator",__asyncDelegator),e("__asyncValues",__asyncValues),e("__makeTemplateOb
1ject",__makeTemplateObject),e("__importStar",__importStar),e("__importDefault",__importDefault),e("__classPrivateFieldGet",__classPrivateFieldGet),e("__classPrivateFieldSet",__classPrivateFieldSet),e("__classPrivateFieldIn",__classPrivateFieldIn),e("__addDisposableResource",__addDisposableResource),e("__disposeResources",__disposeResources)})),define("WoltLabSuite/Core/Core",["require","exports"],(function(e,t){"use strict";function n(e){return r(e)}function i(e,...t){const r=n(e=e||{});for(let n=0,a=t.length;n<a;n++){const a=t[n];a&&Object.keys(a).forEach((t=>{Array.isArray(a[t])||"object"!=typeof a[t]?r[t]=a[t]:o(a[t])?r[t]=i(e[t],a[t]):r[t]=a[t]}))}return r}function o(e){return"object"==typeof e&&null!==e&&Object.getPrototypeOf(e)===Object.prototype}Object.defineProperty(t,"__esModule",{value:!0}),t.interactWithRedactor=t.getXsrfToken=t.enableLegacyInheritance=t.debounce=t.stringToBool=t.getStoragePrefix=t.triggerEvent=t.serialize=t.getUuid=t.getType=t.isPlainObject=t.inherit=t.extend=t.convertLegacyUrl=t.clone=void 0;const r=function(e){return"object"==typeof e&&(Array.isArray(e)||o(e))?a(e):e},a=function(e){if(!e)return null;if(Array.isArray(e))return e.slice();const t={};return Object.keys(e).forEach((n=>t[n]=r(e[n]))),t},s="wsc"+window.WCF_PATH.hashCode()+"-";let l=!1;document.addEventListener("focusin",(e=>{l&&e.stopImmediatePropagation()}),!0),t.clone=n,t.convertLegacyUrl=function(e){return e.replace(/^index\.php\/(.*?)\/\?/,((e,t)=>{const n=t.split(/([A-Z][a-z0-9]+)/);t="";for(let e=0,i=n.length;e<i;e++){const i=n[e].trim();i.length&&(t.length&&(t+="-"),t+=i.toLowerCase())}return`index.php?${t}/&`}))},t.extend=i,t.inherit=function(e,t,n){if(null==e)throw new TypeError("The constructor must not be undefined or null.");if(null==t)throw new TypeError("The super constructor must not be undefined or null.");if(void 0===t.prototype)throw new TypeError("The super constructor must have a prototype.");e._super=t,e.prototype=i(Object.create(t.prototype,{constructor:{configurable:!0,enumerable:!1,value:e,writable:!0}}),n||{})},t.isPlainObject=o,t.getType=function(e){return Object.prototype.toString.call(e).replace(/^\[object (.+)]$/,"$1")},t.getUuid=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)}))},t.serialize=function e(t,n){if(null===t)return"";const i=[];return Object.keys(t).forEach((o=>{const r=n?n+"["+o+"]":o,a=t[o];"object"==typeof a?i.push(e(a,r)):i.push(encodeURIComponent(r)+"="+encodeURIComponent(a))})),i.join("&")},t.triggerEvent=function(e,t){if("click"===t&&e instanceof HTMLElement)return void e.click();const n=new Event(t,{bubbles:!0,cancelable:!0});e.dispatchEvent(n)},t.getStoragePrefix=function(){return s},t.stringToBool=function(e){return"1"===e||"true"===e},t.debounce=function(e,t=50,n={isImmediate:!1}){let i;return function(...o){const r=n.isImmediate&&void 0===i;void 0!==i&&clearTimeout(i),i=setTimeout((()=>{i=void 0,n.isImmediate||e.apply(this,o)}),t),r&&e.apply(this,o)}},t.enableLegacyInheritance=function(e){e.call=function(t,...n){window.ENABLE_DEVELOPER_TOOLS&&console.log("Relying on legacy inheritance for ",e,t);const i=Reflect.construct(e,n,t.constructor);Object.entries(i).forEach((([e,n])=>{"function"==typeof n&&(n=n.bind(t)),t[e]=n}));for(const e in t)"function"==typeof t[e]&&(i[e]=t[e].bind(t))}},t.getXsrfToken=function(){const e=document.cookie.split(";").map((e=>e.trim())).find((e=>e.startsWith("XSRF-TOKEN=")));if(void 0===e)return"COOKIE_NOT_FOUND";const[t,n]=e.split(/=/,2);return decodeURIComponent(n.trim())},t.interactWithRedactor=function(e){l=!0;const t=document.activeElement;e(),t instanceof HTMLElement&&t.focus(),l=!1}})),define("WoltLabSuite/Core/NumberUtil",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.round=void 0,t.round=function(e,t){if(void 0===t||0==+t)return Math.round(e);if(e=+e,t=+t,isNaN(e)||"number"!=typeof t||t%1!=0)return NaN;let n=e.toString().split("e"),i=n[1]?+n[1]-t:-t;return n=(e=Math.round(+`${n[0]}e${i}`)).toString().split("e"),i=n[1]?+n[1]+t:t,+`${n[0]}e${i}`}})),define("WoltLabSuite/Core/StringUtil",["require","exports","tslib","./NumberUtil"],(function(e,t,n,i){"use strict";function o(e){return String(e).replace(/(^-?\d{1,3}|\d{3})(?=(?:\d{3})+(?:$|\.))/g,"$1"+l)}function r(e,t){let n=i.round(e,t||-2).toString();const r=n.split(".");return n=o(+r[0]),r.length>1&&(n+=s+r[1]),n=n.replace("-","â"),n}function a(e){return String(e).substring(0,1).toUpperCase()+e.substring(1)}
1Object.defineProperty(t,"__esModule",{value:!0}),t.setupI18n=t.toCamelCase=t.shortUnit=t.unescapeHTML=t.ucfirst=t.lcfirst=t.formatNumeric=t.escapeRegExp=t.escapeHTML=t.addThousandsSeparator=void 0,i=n.__importStar(i);let s=".",l=",";t.addThousandsSeparator=o,t.escapeHTML=function(e){return String(e).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">")},t.escapeRegExp=function(e){return String(e).replace(/([.*+?^=!:${}()|[\]/\\])/g,"\\$1")},t.formatNumeric=r,t.lcfirst=function(e){return String(e).substring(0,1).toLowerCase()+e.substring(1)},t.ucfirst=a,t.unescapeHTML=function(e){return String(e).replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")},t.shortUnit=function(e){let t="";return e>=1e6?(e=(e/=1e6)>10?Math.floor(e):i.round(e,-1),t="M"):e>=1e3&&(e=(e/=1e3)>10?Math.floor(e):i.round(e,-1),t="k"),r(e)+t},t.toCamelCase=function(e){return e.includes("-")?e.split("-").map(((e,t)=>(t>0&&(e=a(e)),e))).join(""):e},t.setupI18n=function(e){s=e.decimalPoint,l=e.thousandsSeparator}})),define("WoltLabSuite/Core/I18n/Plural",["require","exports","tslib","../StringUtil"],(function(e,t,n,i){"use strict";i=n.__importStar(i);const o={af(e){if(1==e)return"one"},am(e){const t=Math.floor(Math.abs(e));if(1==e||0===t)return"one"},ar(e){if(0==e)return"zero";if(1==e)return"one";if(2==e)return"two";const t=e%100;return t>=3&&t<=10?"few":t>=11&&t<=99?"many":void 0},as(e){const t=Math.floor(Math.abs(e));if(1==e||0===t)return"one"},az(e){if(1==e)return"one"},be(e){const t=e%10,n=e%100;return 1==t&&11!=n?"one":t>=2&&t<=4&&!(n>=12&&n<=14)?"few":0==t||t>=5&&t<=9||n>=11&&n<=14?"many":void 0},bg(e){if(1==e)return"one"},bn(e){const t=Math.floor(Math.abs(e));if(1==e||0===t)return"one"},bo(e){},bs(e){const t=r.getV(e),n=r.getF(e),i=e%10,o=e%100,a=n%10,s=n%100;return 0==t&&1==i&&11!=o||1==a&&11!=s?"one":0==t&&i>=2&&i<=4&&o>=12&&o<=14||a>=2&&a<=4&&s>=12&&s<=14?"few":void 0},cs(e){const t=r.getV(e);return 1==e&&0===t?"one":e>=2&&e<=4&&0===t?"few":0===t?"many":void 0},cy:e=>0==e?"zero":1==e?"one":2==e?"two":3==e?"few":6==e?"many":void 0,da(e){if(e>0&&e<2)return"one"},el(e){if(1==e)return"one"},en(e){if(1==e&&0===r.getV(e))return"one"},es(e){if(1==e)return"one"},eu(e){if(1==e)return"one"},fa(e){if(e>=0&&e<=1)return"one"},fr(e){if(e>=0&&e<2)return"one"},ga:e=>1==e?"one":2==e?"two":3==e||4==e||5==e||6==e?"few":7==e||8==e||9==e||10==e?"many":void 0,gu(e){if(e>=0&&e<=1)return"one"},he(e){const t=r.getV(e);return 1==e&&0===t?"one":2==e&&0===t?"two":e>10&&0===t&&e%10==0?"many":void 0},hi(e){if(e>=0&&e<=1)return"one"},hr:e=>r.bs(e),hu(e){if(1==e)return"one"},hy(e){if(e>=0&&e<2)return"one"},id(e){},is(e){const t=r.getF(e);if(0===t&&e%10==1&&e%100!=11||0!==t)return"one"},ja(e){},jv(e){},ka(e){if(1==e)return"one"},kk(e){if(1==e)return"one"},km(e){},kn(e){if(e>=0&&e<=1)return"one"},ko(e){},ku(e){if(1==e)return"one"},ky(e){if(1==e)return"one"},lb(e){if(1==e)return"one"},lo(e){},lt(e){const t=e%10,n=e%100;return 1!=t||n>=11&&n<=19?t>=2&&t<=9&&!(n>=11&&n<=19)?"few":0!=r.getF(e)?"many":void 0:"one"},lv(e){const t=e%10,n=e%100,i=r.getV(e),o=r.getF(e),a=o%10,s=o%100;return 0==t||n>=11&&n<=19||2==i&&s>=11&&s<=19?"zero":1==t&&11!=n||2==i&&1==a&&11!=s||2!=i&&1==a?"one":void 0},mk:e=>r.bs(e),ml(e){if(1==e)return"one"},mn(e){if(1==e)return"one"},mr(e){if(1==e)return"one"},ms(e){},mt(e){const t=e%100;return 1==e?"one":0==e||t>=2&&t<=10?"few":t>=11&&t<=19?"many":void 0},my(e){},no(e){if(1==e)return"one"},ne(e){if(1==e)return"one"},or(e){if(1==e)return"one"},pa(e){if(1==e||0==e)return"one"},pl(e){const t=r.getV(e),n=e%10,i=e%100;return 1==e&&0==t?"one":0==t&&n>=2&&n<=4&&!(i>=12&&i<=14)?"few":0==t&&(1!=e&&n>=0&&n<=1||n>=5&&n<=9||i>=12&&i<=14)?"many":void 0},ps(e){if(1==e)return"one"},pt(e){if(e>=0&&e<2)return"one"},ro(e){const t=r.getV(e),n=e%100;return 1==e&&0===t?"one":0!=t||0==e||n>=2&&n<=19?"few":void 0},ru(e){const t=e%10,n=e%100;if(0==r.getV(e)){if(1==t&&11!=n)return"one";if(t>=2&&t<=4&&!(n>=12&&n<=14))return"few";if(0==t||t>=5&&t<=9||n>=11&&n<=14)return"many"}},sd(e){if(1==e)return"one"},si(e){if(0==e||1==e||0==Math.floor(e)&&1==r.getF(e))return"one"},sk:e=>r.cs(e),sl(e){const t=r.getV(e),n=e%100;return 0==t&&1==n?"one":0==t&&2==n?"two":0==t&&(3==n||4==n)||0!=t?"few":void 0},sq(e){if(1==e)return"one"},sr:e=>r.bs(e),ta(e){if(1==e)return"one"},te(e){if(1==e)return"one"},tg(e){},th(e){},tk(e){if(1==e)return"one"},tr(e){if(1==e)return"one"},ug(e){if(1==e)return"one"},uk:e=>r.ru(e),uz(e){if(1==e)return"one"},vi(e){},zh(e){}},r=Object.assign({getCategory(e,t){t||(t=document.documentElement.lang),"function"!=typeof r[t]&&(t="en");const n=r[t](e);return n||"other"},getCategoryFromTemplateParameters(e){if(!e.value)throw new Error("Missing parameter value");if(!e.other)throw new Error("Missing parameter other");let t=e.value;Array.isArray(t)&&(t=t.length);const n=Object.keys(e).find((e=>e.toString()===(~~e).toString()&&e.toString()===t.toString()));if(n)return n;let o=r.getCategory(t);e[o]||(o="other");const a=e[o];return-1!==a.indexOf("#")?a.replace("#",i.formatNumeric(t)):a},getF(e){const t=e.toString(),n=t.indexOf(".");return-1===n?0:parseInt(t.substr(n+1),10)},getV:e=>e.toString().replace(/^[^.]*\.?/,"").length},o);return r})),define("WoltLabSuite/Core/Language/Store",["require","exports"],(function(e,t){"use strict";
1Object.defineProperty(t,"__esModule",{value:!0}),t.add=t.get=void 0;const n=new Map;t.get=function(e,t={}){const i=n.get(e);return void 0===i?e:i(t)},t.add=function(e,t){n.set(e,t)}})),define("WoltLabSuite/Core/Template.grammar",["require"],(function(e){var t=function(e,t,n,i){for(n=n||{},i=e.length;i--;n[e[i]]=t);return n},n=[2,44],i=[5,9,11,12,13,18,19,21,22,23,25,26,28,29,30,32,33,34,35,37,39,41],o=[1,25],r=[1,27],a=[1,33],s=[1,31],l=[1,32],c=[1,28],d=[1,29],u=[1,26],p=[1,35],h=[1,41],f=[1,40],m=[11,12,15,42,43,47,49,51,52,54,55],g=[9,11,12,13,18,19,21,23,26,28,30,32,33,34,35,37,39],b=[11,12,15,42,43,46,47,48,49,51,52,54,55],v=[1,64],w=[1,65],y=[18,37,39],_=[12,15],E={trace:function(){},yy:{},symbols_:{error:2,TEMPLATE:3,CHUNK_STAR:4,EOF:5,CHUNK_STAR_repetition0:6,CHUNK:7,PLAIN_ANY:8,T_LITERAL:9,COMMAND:10,T_ANY:11,T_WS:12,"{if":13,COMMAND_PARAMETERS:14,"}":15,COMMAND_repetition0:16,COMMAND_option0:17,"{/if}":18,"{include":19,COMMAND_PARAMETER_LIST:20,"{implode":21,"{/implode}":22,"{foreach":23,COMMAND_option1:24,"{/foreach}":25,"{plural":26,PLURAL_PARAMETER_LIST:27,"{lang}":28,"{/lang}":29,"{":30,VARIABLE:31,"{#":32,"{@":33,"{ldelim}":34,"{rdelim}":35,ELSE:36,"{else}":37,ELSE_IF:38,"{elseif":39,FOREACH_ELSE:40,"{foreachelse}":41,T_VARIABLE:42,T_VARIABLE_NAME:43,VARIABLE_repetition0:44,VARIABLE_SUFFIX:45,"[":46,"]":47,".":48,"(":49,VARIABLE_SUFFIX_option0:50,")":51,"=":52,COMMAND_PARAMETER_VALUE:53,T_QUOTED_STRING:54,T_DIGITS:55,COMMAND_PARAMETERS_repetition_plus0:56,COMMAND_PARAMETER:57,T_PLURAL_PARAMETER_NAME:58,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",9:"T_LITERAL",11:"T_ANY",12:"T_WS",13:"{if",15:"}",18:"{/if}",19:"{include",21:"{implode",22:"{/implode}",23:"{foreach",25:"{/foreach}",26:"{plural",28:"{lang}",29:"{/lang}",30:"{",32:"{#",33:"{@",34:"{ldelim}",35:"{rdelim}",37:"{else}",39:"{elseif",41:"{foreachelse}",42:"T_VARIABLE",43:"T_VARIABLE_NAME",46:"[",47:"]",48:".",49:"(",51:")",52:"=",54:"T_QUOTED_STRING",55:"T_DIGITS"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[8,1],[8,1],[10,7],[10,3],[10,5],[10,6],[10,3],[10,3],[10,3],[10,3],[10,3],[10,1],[10,1],[36,2],[38,4],[40,2],[31,3],[45,3],[45,2],[45,3],[20,5],[20,3],[53,1],[53,1],[53,1],[14,1],[57,1],[57,1],[57,1],[57,1],[57,1],[57,1],[57,1],[57,3],[27,5],[27,3],[58,1],[58,1],[6,0],[6,2],[16,0],[16,2],[17,0],[17,1],[24,0],[24,1],[44,0],[44,2],[50,0],[50,1],[56,1],[56,2]],performAction:function(e,t,n,i,o,r,a){var s,l,c,d=r.length-1;switch(o){case 1:return r[d-1]+";";case 2:(s=r[d].reduce((function(e,t){return t.encode&&!e[1]?e[0]+=" + '"+t.value:t.encode&&e[1]?e[0]+=t.value:!t.encode&&e[1]?e[0]+="' + "+t.value:t.encode||e[1]||(e[0]+=" + "+t.value),e[1]=t.encode,e}),["''",!1]))[1]&&(s[0]+="'"),this.$=s[0];break;case 3:case 4:this.$={encode:!0,value:r[d].replace(/\\/g,"\\\\").replace(/'/g,"\\'").replace(/(\r\n|\n|\r)/g,"\\n")};break;case 5:this.$={encode:!1,value:r[d]};break;case 8:this.$="(function() { if ("+r[d-5]+") { return "+r[d-3]+"; } "+r[d-2].join(" ")+" "+(r[d-1]||"")+" return ''; })()";break;case 9:if(!r[d-1].file)throw new Error("Missing parameter file");this.$=r[d-1].file+".fetch(v)";break;case 10:if(!r[d-3].from)throw new Error("Missing parameter from");if(!r[d-3].item)throw new Error("Missing parameter item");r[d-3].glue||(r[d-3].glue="', '"),this.$="(function() { return "+r[d-3].from+".map(function(item) { v["+r[d-3].item+"] = item; return "+r[d-1]+"; }).join("+r[d-3].glue+"); })()";break;case 11:if(!r[d-4].from)throw new Error("Missing parameter from");if(!r[d-4].item)throw new Error("Missing parameter item");this.$="(function() {var looped = false, result = '';if ("+r[d-4].from+" instanceof Array) {for (var i = 0; i < "+r[d-4].from+".length; i++) { looped = true;v["+r[d-4].key+"] = i;v["+r[d-4].item+"] = "+r[d-4].from+"[i];result += "+r[d-2]+";}} else {for (var key in "+r[d-4].from+") {if (!"+r[d-4].from+".hasOwnProperty(key)) continue;looped = true;v["+r[d-4].key+"] = key;v["+r[d-4].item+"] = "+r[d-4].from+"[key];result += "+r[d-2]+";}}return (looped ? result : "+(r[d-1]||"''")+"); })()";break;case 12:for(c in this.$="I18nPlural.getCategoryFromTemplateParameters({",l=!1,r[d-1])objOwns(r[d-1],c)&&(this.$+=(l?",":"")+c+": "+r[d-1][c],l=!0);this.$+="})";break;case 13:this.$="Language.get("+r[d-1]+", v)";break;case 14:this.$="StringUtil.escapeHTML("+r[d-1]+")";break;case 15:this.$="StringUtil.formatNumeric("+r[d-1]+")";break;case 16:this.$=r[d-1];break;case 17:this.$="'{'";break;case 18:this.$="'}'";break;case 19:this.$="else { return "+r[d]+"; }";break;case 20:this.$="else if ("+r[d-2]+") { return "+r[d]+"; }";break;case 21:this.$=r[d];break;case 22:this.$="v['"+r[d-1]+"']"+r[d].join("");break;case 23:this.$=r[d-2]+r[d-1]+r[d];break;case 24:this.$="['"+r[d]+"']";break;case 25:case 39:this.$=r[d-2]+(r[d-1]||"")+r[d];break;case 26:case 40:this.$=r[d],this.$[r[d-4]]=r[d-2];break;case 27:case 41:this.$={}
1,this.$[r[d-2]]=r[d];break;case 31:this.$=r[d].join("");break;case 44:case 46:case 52:this.$=[];break;case 45:case 47:case 53:case 57:r[d-1].push(r[d]);break;case 56:this.$=[r[d]]}},table:[t([5,9,11,12,13,19,21,23,26,28,30,32,33,34,35],n,{3:1,4:2,6:3}),{1:[3]},{5:[1,4]},t([5,18,22,25,29,37,39,41],[2,2],{7:5,8:6,10:8,9:[1,7],11:[1,9],12:[1,10],13:[1,11],19:[1,12],21:[1,13],23:[1,14],26:[1,15],28:[1,16],30:[1,17],32:[1,18],33:[1,19],34:[1,20],35:[1,21]}),{1:[2,1]},t(i,[2,45]),t(i,[2,3]),t(i,[2,4]),t(i,[2,5]),t(i,[2,6]),t(i,[2,7]),{11:o,12:r,14:22,31:30,42:a,43:s,49:l,52:c,54:d,55:u,56:23,57:24},{20:34,43:p},{20:36,43:p},{20:37,43:p},{27:38,43:h,55:f,58:39},t([9,11,12,13,19,21,23,26,28,29,30,32,33,34,35],n,{6:3,4:42}),{31:43,42:a},{31:44,42:a},{31:45,42:a},t(i,[2,17]),t(i,[2,18]),{15:[1,46]},t([15,47,51],[2,31],{31:30,57:47,11:o,12:r,42:a,43:s,49:l,52:c,54:d,55:u}),t(m,[2,56]),t(m,[2,32]),t(m,[2,33]),t(m,[2,34]),t(m,[2,35]),t(m,[2,36]),t(m,[2,37]),t(m,[2,38]),{11:o,12:r,14:48,31:30,42:a,43:s,49:l,52:c,54:d,55:u,56:23,57:24},{43:[1,49]},{15:[1,50]},{52:[1,51]},{15:[1,52]},{15:[1,53]},{15:[1,54]},{52:[1,55]},{52:[2,42]},{52:[2,43]},{29:[1,56]},{15:[1,57]},{15:[1,58]},{15:[1,59]},t(g,n,{6:3,4:60}),t(m,[2,57]),{51:[1,61]},t(b,[2,52],{44:62}),t(i,[2,9]),{31:66,42:a,53:63,54:v,55:w},t([9,11,12,13,19,21,22,23,26,28,30,32,33,34,35],n,{6:3,4:67}),t([9,11,12,13,19,21,23,25,26,28,30,32,33,34,35,41],n,{6:3,4:68}),t(i,[2,12]),{31:66,42:a,53:69,54:v,55:w},t(i,[2,13]),t(i,[2,14]),t(i,[2,15]),t(i,[2,16]),t(y,[2,46],{16:70}),t(m,[2,39]),t([11,12,15,42,43,47,51,52,54,55],[2,22],{45:71,46:[1,72],48:[1,73],49:[1,74]}),{12:[1,75],15:[2,27]},t(_,[2,28]),t(_,[2,29]),t(_,[2,30]),{22:[1,76]},{24:77,25:[2,50],40:78,41:[1,79]},{12:[1,80],15:[2,41]},{17:81,18:[2,48],36:83,37:[1,85],38:82,39:[1,84]},t(b,[2,53]),{11:o,12:r,14:86,31:30,42:a,43:s,49:l,52:c,54:d,55:u,56:23,57:24},{43:[1,87]},{11:o,12:r,14:89,31:30,42:a,43:s,49:l,50:88,51:[2,54],52:c,54:d,55:u,56:23,57:24},{20:90,43:p},t(i,[2,10]),{25:[1,91]},{25:[2,51]},t([9,11,12,13,19,21,23,25,26,28,30,32,33,34,35],n,{6:3,4:92}),{27:93,43:h,55:f,58:39},{18:[1,94]},t(y,[2,47]),{18:[2,49]},{11:o,12:r,14:95,31:30,42:a,43:s,49:l,52:c,54:d,55:u,56:23,57:24},t([9,11,12,13,18,19,21,23,26,28,30,32,33,34,35],n,{6:3,4:96}),{47:[1,97]},t(b,[2,24]),{51:[1,98]},{51:[2,55]},{15:[2,26]},t(i,[2,11]),{25:[2,21]},{15:[2,40]},t(i,[2,8]),{15:[1,99]},{18:[2,19]},t(b,[2,23]),t(b,[2,25]),t(g,n,{6:3,4:100}),t(y,[2,20])],defaultActions:{4:[2,1],40:[2,42],41:[2,43],78:[2,51],83:[2,49],89:[2,55],90:[2,26],92:[2,21],93:[2,40],96:[2,19]},parseError:function(e,t){if(!t.recoverable){var n=new Error(e);throw n.hash=t,n}this.trace(e)},parse:function(e){var t,n,i,o,r,a,s,l,c,d,u,p,h,f,m,g=this,b=[0],v=[null],w=[],y=this.table,_="",E=0,S=0,C=0,L=2,x=1,k=w.slice.call(arguments,1),T=Object.create(this.lexer),M={yy:{}};for(t in this.yy)Object.prototype.hasOwnProperty.call(this.yy,t)&&(M.yy[t]=this.yy[t]);for(T.setInput(e,M.yy),M.yy.lexer=T,M.yy.parser=this,void 0===T.yylloc&&(T.yylloc={}),n=T.yylloc,w.push(n),i=T.options&&T.options.ranges,"function"==typeof M.yy.parseError?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,o=function(){var e;return"number"!=typeof(e=T.lex()||x)&&(e=g.symbols_[e]||e),e},d={};;){if(s=b[b.length-1],this.defaultActions[s]?l=this.defaultActions[s]:(null==r&&(r=o()),l=y[s]&&y[s][r]),void 0===l||!l.length||!l[0]){for(u in m="",f=[],y[s])this.terminals_[u]&&u>L&&f.push("'"+this.terminals_[u]+"'");m=T.showPosition?"Parse error on line "+(E+1)+":\n"+T.showPosition()+"\nExpecting "+f.join(", ")+", got '"+(this.terminals_[r]||r)+"'":"Parse error on line "+(E+1)+": Unexpected "+(r==x?"end of input":"'"+(this.terminals_[r]||r)+"'"),this.parseError(m,{text:T.match,token:this.terminals_[r]||r,line:T.yylineno,loc:n,expected:f})}if(l[0]instanceof Array&&l.length>1)throw new Error("Parse Error: multiple actions possible at state: "+s+", token: "+r);switch(l[0]){case 1:b.push(r),v.push(T.yytext),w.push(T.yylloc),b.push(l[1]),r=null,a?(r=a,a=null):(S=T.yyleng,_=T.yytext,E=T.yylineno,n=T.yylloc,C>0&&C--);break;case 2:if(p=this.productions_[l[1]][1],d.$=v[v.length-p],d._$={first_line:w[w.length-(p||1)].first_line,last_line:w[w.length-1].last_line,first_column:w[w.length-(p||1)].first_column,last_column:w[w.length-1].last_column},i&&(d._$.range=[w[w.length-(p||1)].range[0],w[w.length-1].range[1]]),void 0!==(c=this.performAction.apply(d,[_,S,E,M.yy,l[1],v,w].concat(k))))return c;p&&(b=b.slice(0,-1*p*2),v=v.slice(0,-1*p),w=w.slice(0,-1*p)),b.pu
vendor: 5,052 bytes, line 1
1sh(this.productions_[l[1]][0]),v.push(d.$),w.push(d._$),h=y[b[b.length-2]][b[b.length-1]],b.push(h);break;case 3:return!0}}return!0}},S={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t,n,i=e.length,o=e.split(/(?:\r\n?|\n)/g);return this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i,t=this.match.split(/(?:\r\n?|\n)/g),this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),o.length-1&&(this.yylineno-=o.length-1),n=this.yylloc.range,this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:o?(o.length===t.length?this.yylloc.first_column:0)+t[t.length-o.length].length-o[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var n,i,o,r;if(this.options.backtrack_lexer&&(o={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(o.yylloc.range=this.yylloc.range.slice(0))),(i=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(r in o)this[r]=o[r];return!1}return!1},next:function(){var e,t,n,i,o,r;if(this.done)return this.EOF;for(this._input||(this.done=!0),this._more||(this.yytext="",this.match=""),o=this._currentRules(),r=0;r<o.length;r++)if((n=this._input.match(this.rules[o[r]]))&&(!t||n[0].length>t[0].length)){if(t=n,i=r,this.options.backtrack_lexer){if(!1!==(e=this.test_match(n,o[r])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,o[i]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var e=this.next();return e||this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(e,t,n,i){switch(n){case 0:break;
1case 1:return t.yytext=t.yytext.substring(9,t.yytext.length-10),9;case 2:case 3:return 54;case 4:return 42;case 5:return 55;case 6:return 43;case 7:return 48;case 8:return 46;case 9:return 47;case 10:return 49;case 11:return 51;case 12:return 52;case 13:return 34;case 14:return 35;case 15:return this.begin("command"),32;case 16:return this.begin("command"),33;case 17:return this.begin("command"),13;case 18:case 19:return this.begin("command"),39;case 20:return 37;case 21:return 18;case 22:return 28;case 23:return 29;case 24:return this.begin("command"),19;case 25:return this.begin("command"),21;case 26:return this.begin("command"),26;case 27:return 22;case 28:return this.begin("command"),23;case 29:return 41;case 30:return 25;case 31:return this.begin("command"),30;case 32:return this.popState(),15;case 33:return 12;case 34:return 5;case 35:return 11}},rules:[/^(?:\{\*[\s\S]*?\*\})/,/^(?:\{literal\}[\s\S]*?\{\/literal\})/,/^(?:"([^"]|\\\.)*")/,/^(?:'([^']|\\\.)*')/,/^(?:\$)/,/^(?:[0-9]+)/,/^(?:[_a-zA-Z][_a-zA-Z0-9]*)/,/^(?:\.)/,/^(?:\[)/,/^(?:\])/,/^(?:\()/,/^(?:\))/,/^(?:=)/,/^(?:\{ldelim\})/,/^(?:\{rdelim\})/,/^(?:\{#)/,/^(?:\{@)/,/^(?:\{if )/,/^(?:\{else if )/,/^(?:\{elseif )/,/^(?:\{else\})/,/^(?:\{\/if\})/,/^(?:\{lang\})/,/^(?:\{\/lang\})/,/^(?:\{include )/,/^(?:\{implode )/,/^(?:\{plural )/,/^(?:\{\/implode\})/,/^(?:\{foreach )/,/^(?:\{foreachelse\})/,/^(?:\{\/foreach\})/,/^(?:\{(?!\s))/,/^(?:\})/,/^(?:\s+)/,/^(?:$)/,/^(?:[^{])/],conditions:{command:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],inclusive:!0},INITIAL:{rules:[0,1,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,33,34,35],inclusive:!0}}};return E.lexer=S,E})),define("WoltLabSuite/Core/Template/Compiler",["require","exports","tslib","../Template.grammar"],(function(e,t,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compile=void 0,i=n.__importStar(i),t.compile=function(e){return e="var tmp = {};\nfor (var key in v) tmp[key] = v[key];\nv = tmp;\nv.__wcf = window.WCF; v.__window = window;\nreturn "+(e=i.parse(e)),new Function("StringUtil","Language","I18nPlural","v",e)}})),define("WoltLabSuite/Core/Template",["require","exports","tslib","./Core","./I18n/Plural","./Language/Store","./StringUtil","./Template/Compiler"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a);class l{constructor(e){try{this.compiled=(0,s.compile)(e)}catch(e){throw console.debug(e.message),e}}fetch(e){return this.compiled(a,r,o,e)}}return Object.defineProperty(l,"callbacks",{enumerable:!1,configurable:!1,get:function(){throw new Error("WCF.Template.callbacks is no longer supported")},set:function(e){throw new Error("WCF.Template.callbacks is no longer supported")}}),i.enableLegacyInheritance(l),l})),define("WoltLabSuite/Core/Language",["require","exports","tslib","./Template","./Language/Store","./Language/Store"],(function(e,t,n,i,o,r){"use strict";
1function a(e,t){"string"==typeof t?(0,o.add)(e,function(e){if(!e.includes("{"))return function(){return e};try{const t=new i.default(e);return t.fetch.bind(t)}catch(t){return function(){return e}}}(t)):(0,o.add)(e,(function(){return t}))}Object.defineProperty(t,"__esModule",{value:!0}),t.add=t.addObject=t.get=void 0,i=n.__importDefault(i),Object.defineProperty(t,"get",{enumerable:!0,get:function(){return r.get}}),t.addObject=function(e){Object.entries(e).forEach((([e,t])=>{a(e,t)}))},t.add=a})),define("WoltLabSuite/Core/Ajax/Status",["require","exports","tslib","../Language"],(function(e,t,n,i){"use strict";function o(){return void 0===a&&(a=new r),a}Object.defineProperty(t,"__esModule",{value:!0}),t.hide=t.show=void 0,i=n.__importStar(i);class r{constructor(){this._activeRequests=0,this._timer=null,this._overlay=document.createElement("div"),this._overlay.classList.add("spinner"),this._overlay.setAttribute("role","status");const e=document.createElement("span");e.className="icon icon48 fa-spinner",this._overlay.appendChild(e);const t=document.createElement("span");t.textContent=i.get("wcf.global.loading"),this._overlay.appendChild(t),document.body.appendChild(this._overlay)}show(){this._activeRequests++,null===this._timer&&(this._timer=window.setTimeout((()=>{this._activeRequests&&this._overlay.classList.add("active"),this._timer=null}),250))}hide(){0==--this._activeRequests&&(null!==this._timer&&(window.clearTimeout(this._timer),this._timer=null),this._overlay.classList.remove("active"))}}let a;t.show=function(){o().show()},t.hide=function(){o().hide()}})),define("WoltLabSuite/Core/CallbackList",["require","exports","tslib","./Core"],(function(e,t,n,i){"use strict";i=n.__importStar(i);class o{constructor(){this._callbacks=new Map}add(e,t){if("function"!=typeof t)throw new TypeError("Expected a valid callback as second argument for identifier '"+e+"'.");this._callbacks.has(e)||this._callbacks.set(e,[]),this._callbacks.get(e).push(t)}remove(e){this._callbacks.delete(e)}forEach(e,t){var n;null===e?this._callbacks.forEach(((e,n)=>{e.forEach(t)})):null===(n=this._callbacks.get(e))||void 0===n||n.forEach(t)}}return i.enableLegacyInheritance(o),o})),define("WoltLabSuite/Core/Dom/Change/Listener",["require","exports","tslib","../../CallbackList"],(function(e,t,n,i){"use strict";const o=new((i=n.__importDefault(i)).default);let r=!1;return{add:o.add.bind(o),remove:o.remove.bind(o),trigger(){if(!r)try{r=!0,o.forEach(null,(e=>e()))}finally{r=!1}}}})),define("WoltLabSuite/Core/Dom/Util",["require","exports","tslib","../StringUtil"],(function(e,t,n,i){"use strict";function o(e,t,n){if(!t.contains(e))throw new Error("Ancestor element does not contain target element.");let i,o=e;const r=n+"Sibling";for(;null!==o&&o!==t;){if(null!==o[n+"ElementSibling"])return!1;if(o[r])for(i=o[r];i;){if(""!==i.textContent.trim())return!1;i=i[r]}o=o.parentNode}return!0}i=n.__importStar(i);let r=0;const a={createFragmentFromHtml(e){const t=document.createElement("div");a.setInnerHtml(t,e);const n=document.createDocumentFragment();for(;t.childNodes.length;)n.appendChild(t.childNodes[0]);return n},getUniqueId(){let e;do{e="wcf"+r++}while(null!==document.getElementById(e));return e},identify(e){if(!(e instanceof Element))throw new TypeError("Expected a valid DOM element as argument.");let t=e.id;return t||(t=a.getUniqueId(),e.id=t),t},outerHeight(e,t){t=t||window.getComputedStyle(e);let n=e.offsetHeight;return n+=~~t.marginTop+~~t.marginBottom,n},outerWidth(e,t){t=t||window.getComputedStyle(e);let n=e.offsetWidth;return n+=~~t.marginLeft+~~t.marginRight,n},outerDimensions(e){const t=window.getComputedStyle(e);return{height:a.outerHeight(e,t),width:a.outerWidth(e,t)}},offset(e){const t=e.getBoundingClientRect();return{top:Math.round(t.top+(window.scrollY||window.pageYOffset)),left:Math.round(t.left+(window.scrollX||window.pageXOffset))}},prepend(e,t){t.insertAdjacentElement("afterbegin",e)},insertAfter(e,t){t.insertAdjacentElement("afterend",e)},setStyles(e,t){let n=!1;Object.keys(t).forEach((i=>{/ !important$/.test(t[i])?(n=!0,t[i]=t[i].replace(/ !important$/,"")):n=!1,"important"!==e.style.getPropertyPriority(i)||n||e.style.removeProperty(i),e.style.setProperty(i,t[i],n?"important":"")}))},styleAsInt(e,t){const n=e.getPropertyValue(t);return null===n?0:parseInt(n,10)},setInnerHtml(e,t){let n;e.innerHTML=t,n=e instanceof HTMLTemplateElement?e.content:e;const i=n.querySelectorAll("script");for(let e=0,t=i.length;e<t;e++){const t=i[e],o=document.createElement("script");t.src?o.src=t.src:o.textContent=t.textContent,n.appendChild(o),t.remove()}},insertHtml(e,t,n){const i=document.createElement("template");a.setInnerHtml(i,e);const o=document.importNode(i.content,!0);switch(n){case"append":t.appendChild(o);break;case"after":if(null===t.parentNode)throw new Error("The reference element has no parent, but the insert position was set to 'after'.");t.parentNode.insertBefore(o,t.nextSibling);break;
1case"prepend":t.insertBefore(o,t.firstChild);break;case"before":if(null===t.parentNode)throw new Error("The reference element has no parent, but the insert position was set to 'before'.");t.parentNode.insertBefore(o,t);break;default:throw new Error("Unknown insert method '"+n+"'.")}},contains:(e,t)=>e.contains(t),getDataAttributes(e,t,n,o){0!==(t=t||"").indexOf("data-")&&(t="data-"+t),n=!0===n,o=!0===o;const r={};for(let a=0,s=e.attributes.length;a<s;a++){const s=e.attributes[a];if(0===s.name.indexOf(t)){let e=s.name.replace(new RegExp("^"+t),"");if(n){const t=e.split("-");e="";for(let n=0,r=t.length;n<r;n++)e.length&&(o&&"id"===t[n]?t[n]="ID":t[n]=i.ucfirst(t[n])),e+=t[n]}r[e]=s.value}}return r},unwrapChildNodes(e){if(null===e.parentNode)throw new Error("The element has no parent.");const t=e.parentNode;for(;e.childNodes.length;)t.insertBefore(e.childNodes[0],e);e.remove()},replaceElement(e,t){if(null===e.parentNode)throw new Error("The old element has no parent.");for(;e.childNodes.length;)t.appendChild(e.childNodes[0]);e.parentNode.insertBefore(t,e),e.remove()},isAtNodeStart:(e,t)=>o(e,t,"previous"),isAtNodeEnd:(e,t)=>o(e,t,"next"),getFixedParent(e){for(;e&&e!==document.body;){if("fixed"===window.getComputedStyle(e).getPropertyValue("position"))return e;e=e.offsetParent}return null},hide(e){e.style.setProperty("display","none","")},show(e){e.style.removeProperty("display")},isHidden:e=>"none"===e.style.getPropertyValue("display"),toggle(e){a.isHidden(e)?a.show(e):a.hide(e)},innerError(e,t,n){const i=e.parentNode;if(null===i)throw new Error("Only elements that have a parent element or document are valid.");if("string"!=typeof t){if(t)throw new TypeError("The error message must be a string; `false`, `null` or `undefined` can be used as a substitute for an empty string.");t=""}let o=i,r=e;o.classList.contains("inputAddon")&&(o=i.parentElement,r=i);let a=r.nextElementSibling;return null!==a&&"SMALL"===a.nodeName&&a.classList.contains("innerError")||(""===t?a=null:(a=document.createElement("small"),a.className="innerError",o.insertBefore(a,r.nextSibling))),""===t?null!==a&&(a.remove(),a=null):n?a.innerHTML=t:a.textContent=t,a},innerSuccess(e,t,n){const i=e.parentNode;if(null===i)throw new Error("Only elements that have a parent element or document are valid.");if("string"!=typeof t){if(t)throw new TypeError("The message must be a string; `false`, `null` or `undefined` can be used as a substitute for an empty string.");t=""}let o=e.nextElementSibling;return null!==o&&"SMALL"===o.nodeName&&o.classList.contains("innerSuccess")||(""===t?o=null:(o=document.createElement("small"),o.className="innerSuccess",i.insertBefore(o,e.nextSibling))),""===t?null!==o&&(o.remove(),o=null):n?o.innerHTML=t:o.textContent=t,o},closest:(e,t)=>(e instanceof HTMLElement?e:e.parentElement).closest(t),getClosestElement:e=>e instanceof HTMLElement?e:e.parentElement};return window.bc_wcfDomUtil=a,a})),define("WoltLabSuite/Core/Ajax/Request",["require","exports","tslib","./Status","../Core","../Dom/Change/Listener","../Dom/Util","../Language"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s);let l=!1,c=!1;class d{constructor(e){this._options=o.extend({data:{},contentType:"application/x-www-form-urlencoded; charset=UTF-8",responseType:"application/json",type:"POST",url:"",withCredentials:!1,autoAbort:!1,ignoreError:!1,pinData:!1,silent:!1,includeRequestedWith:!0,failure:null,finalize:null,success:null,progress:null,uploadProgress:null,callbackObject:null},e),"object"==typeof e.callbackObject&&(this._options.callbackObject=e.callbackObject),this._options.url=o.convertLegacyUrl(this._options.url),0===this._options.url.indexOf("index.php")&&(this._options.url=window.WSC_API_URL+this._options.url),0===this._options.url.indexOf(window.WSC_API_URL)&&(this._options.includeRequestedWith=!0,this._options.withCredentials=!0),this._options.pinData&&(this._data=this._options.data),this._options.callbackObject&&("function"==typeof this._options.callbackObject._ajaxFailure&&(this._options.failure=this._options.callbackObject._ajaxFailure.bind(this._options.callbackObject)),"function"==typeof this._options.callbackObject._ajaxFinalize&&(this._options.finalize=this._options.callbackObject._ajaxFinalize.bind(this._options.callbackObject)),"function"==typeof this._options.callbackObject._ajaxSuccess&&(this._options.success=this._options.callbackObject._ajaxSuccess.bind(this._options.callbackObject)),"function"==typeof this._options.callbackObject._ajaxProgress&&(this._options.progress=this._options.callbackObject._ajaxProgress.bind(this._options.callbackObject)),"function"==typeof this._options.callbackObject._ajaxUploadProgress&&(this._options.uploadProgress=this._options.callbackObject._ajaxUploadProgress.bind(this._options.callbackObject))),l||(l=!0,window.addEventListener("beforeunload",(()=>c=!0)))}sendRequest(e){(e||this._options.autoAbort)&&this.abortPrevious(),this._options.silent||i.show(),this._xhr=new XMLHttpRequest,this._xhr.open(this._options.type,this._options.url,!0),this._options.contentType&&this._xhr.setRequestHeader("Content-Type",this._options.contentType),(this._options.withCredentials||this._options.includeRequestedWith)&&this._xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"),this._options.withCredentials&&(this._xhr.withCredentials=!0);const t=o.clone(this._options),n=this._xhr;if(n.onload=()=>{n.readyState===XMLHttpRequest.DONE&&(n.status>=200&&n.status<300||304===n.status?204===n.status?this._success(n,t):t.responseType&&this.getContentType(n)!==t.responseType?this._failure(n,t):this._success(n,t):this._failure(n,t))},n.onerror=()=>{this._failure(n,t)},this._options.progress&&(n.onprogress=this._options.progress),this._options.uploadProgress&&(n.upload.onprogress=this._options.uploadProgress),"POST"===this._options.type){let e=this._options.data;"object"==typeof e&&"FormData"!==o.getType(e)&&(e=o.serialize(e)),n.send(e)}else n.send()}abortPrevious(){void 0!==this._xhr&&(this._xhr.abort(),this._xhr=void 0,this._options.silent||i.hide())}setOption(e,t){this._options[e]=t}getOption(e){return Object.prototype.hasOwnProperty.call(this._options,e)?this._options[e]:null}setData(e){null!==this._data&&"FormData"!==o.getType(e)&&(e=o.extend(this._data,e)),this._options.data=e}_success(t,o){if(o.silent||i.hide(),"function"==typeof o.success){let i=null;if("application/json"===this.getContentType(t)){try{i=JSON.parse(t.responseText)}catch(e){return void this._failure(t,o)}i&&i.returnValues&&void 0!==i.returnValues.template&&(i.returnValues.template=i.returnValues.template.trim()),i&&i.forceBackgroun
1dQueuePerform&&new Promise(((t,n)=>{e(["../BackgroundQueue"],t,n)})).then(n.__importStar).then((e=>e.invoke()))}o.success(i||{},t.responseText,t,o.data)}this._finalize(t,o)}_failure(t,o){if(c)return;o.silent||i.hide();let r=null;try{r=JSON.parse(t.responseText)}catch(e){}let l=!0;if("function"==typeof o.failure){l=!1!==o.failure(r||{},t.responseText||"",t,o.data)}if(!0!==o.ignoreError&&l){const i=this.getErrorHtml(r,t);i&&new Promise(((t,n)=>{e(["../Ui/Dialog"],t,n)})).then(n.__importStar).then((e=>{e.openStatic(a.default.getUniqueId(),i,{title:s.get("wcf.global.error.title")})}))}this._finalize(t,o)}getErrorHtml(e,t){let n,i="";if(null!==e&&Object.keys(e).length>0?(e.returnValues&&e.returnValues.description&&(i+=`<br><p>Description:</p><p>${e.returnValues.description}</p>`),e.file&&e.line&&(i+=`<br><p>File:</p><p>${e.file} in line ${e.line}</p>`),e.stacktrace?i+=`<br><p>Stacktrace:</p><p>${e.stacktrace}</p>`:e.exceptionID&&(i+=`<br><p>Exception ID: <code>${e.exceptionID}</code></p>`),n=e.message,e.previous.forEach((e=>{i+=`<hr><p>${e.message}</p>`,i+=`<br><p>Stacktrace</p><p>${e.stacktrace}</p>`}))):n=t.responseText,!n||"undefined"===n){if(!window.ENABLE_DEBUG_MODE)return null;n="XMLHttpRequest failed without a responseText. Check your browser console."}return`<div class="ajaxDebugMessage"><p>${n}</p>${i}</div>`}_finalize(e,t){"function"==typeof t.finalize&&t.finalize(e),this._xhr===e&&(this._xhr=void 0),r.default.trigger(),document.querySelectorAll('a[href*="#"]').forEach((e=>{let t=e.href;-1===t.indexOf("AJAXProxy")&&-1===t.indexOf("ajax-proxy")||(t=t.substr(t.indexOf("#")),e.href=document.location.toString().replace(/#.*/,"")+t)}))}getContentType(e){const t=e.getResponseHeader("content-type");return null===t?null:t.split(";",1)[0].trim()}}return o.enableLegacyInheritance(d),d})),define("WoltLabSuite/Core/Ajax/Error",["require","exports","tslib","../Core","../Language"],(function(e,t,n,i,o){"use strict";async function r(t){const r=await async function(e){let t="",n="";if(e instanceof s)n=e.originalError instanceof TypeError?o.get("wcf.global.error.ajax.network",{message:e.message}):e.message;else if(e instanceof d)n=await e.response.clone().text();else if(e instanceof c||e instanceof l){let o;try{o=await e.response.clone().json()}catch(t){n=await e.response.clone().text()}o&&i.isPlainObject(o)&&Object.keys(o).length>0&&(o.returnValues&&o.returnValues.description&&(t+=`<br><p>Description:</p><p>${o.returnValues.description}</p>`),o.file&&o.line&&(t+=`<br><p>File:</p><p>${o.file} in line ${o.line}</p>`),o.stacktrace?t+=`<br><p>Stacktrace:</p><p>${o.stacktrace}</p>`:o.exceptionID&&(t+=`<br><p>Exception ID: <code>${o.exceptionID}</code></p>`),n=o.message,o.previous.forEach((e=>{t+=`<hr><p>${e.message}</p>`,t+=`<br><p>Stacktrace</p><p>${e.stacktrace}</p>`})))}if(!n||"undefined"===n){if(!window.ENABLE_DEBUG_MODE)return"";n="fetch() failed without a response body. Check your browser console."}return`<div class="ajaxDebugMessage"><p>${n}</p>${t}</div>`}(t);if(""!==r){const[t,i,o]=await Promise.all([new Promise(((t,n)=>{e(["../Ui/Dialog"],t,n)})).then(n.__importStar),new Promise(((t,n)=>{e(["../Dom/Util"],t,n)})).then(n.__importStar),new Promise(((t,n)=>{e(["../Language"],t,n)})).then(n.__importStar)]);t.openStatic(i.getUniqueId(),r,{title:o.get("wcf.global.error.title")})}}Object.defineProperty(t,"__esModule",{value:!0}),t.registerGlobalRejectionHandler=t.InvalidJson=t.ExpectedJson=t.StatusNotOk=t.ConnectionError=t.ApiError=void 0,i=n.__importStar(i),o=n.__importStar(o);class a extends Error{constructor(){super(...arguments),this.name="ApiError"}}t.ApiError=a;class s extends a{constructor(e){let t="Unknown error";e instanceof Error&&(t=e.message),super(t),this.name="ConnectionError",this.originalError=e}}t.ConnectionError=s;class l extends a{constructor(e){super("The API request returned a status code outside of the 200-299 range."),this.name="StatusNotOk",this.response=e}}t.StatusNotOk=l;class c extends a{constructor(e){super("The API did not return a JSON response."),this.name="ExpectedJson",this.response=e}}t.ExpectedJson=c;class d extends a{constructor(e){super("Failed to decode the JSON response from the API."),this.name="InvalidJson",this.response=e}}t.InvalidJson=d;let u=!1;t.registerGlobalRejectionHandler=function(){u||(window.addEventListener("unhandledrejection",(e=>{e.reason instanceof a&&(e.preventDefault(),r(e.reason))})),u=!0)}})),define("WoltLabSuite/Core/Ajax/DboAction",["require","exports","tslib","./Error","./Status","../Core"],(function(e,t,n,i,o,r){"use strict";let a;
1Object.defineProperty(t,"__esModule",{value:!0}),t.DboAction=void 0,o=n.__importStar(o),r=n.__importStar(r);class s{constructor(e,t){this._objectIDs=[],this._payload={},this._showLoadingIndicator=!0,this._signal=void 0,this.actionName=e,this.className=t}static prepare(e,t){return void 0===a&&(a=!1,window.addEventListener("beforeunload",(()=>{a=!0}))),new s(e,t)}getAbortController(){return void 0===this._signal&&(this._signal=new AbortController),this._signal}objectIds(e){return this._objectIDs=e,this}payload(e){return this._payload=e,this}disableLoadingIndicator(){return this._showLoadingIndicator=!1,this}async dispatch(){(0,i.registerGlobalRejectionHandler)();const t=window.WSC_API_URL+"index.php?ajax-proxy/&t="+r.getXsrfToken(),s={actionName:this.actionName,className:this.className};this._objectIDs&&(s.objectIDs=this._objectIDs),this._payload&&(s.parameters=this._payload);const l={method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","X-XSRF-TOKEN":r.getXsrfToken()},body:r.serialize(s),mode:"same-origin",credentials:"same-origin",cache:"no-store",redirect:"error"};this._signal&&(l.signal=this._signal.signal);const c=this._showLoadingIndicator;c&&o.show();try{const o=await fetch(t,l);if(!o.ok)throw new i.StatusNotOk(o);const r=o.headers.get("content-type");if(!r||!r.includes("application/json"))throw new i.ExpectedJson(o);let a;try{a=await o.json()}catch(e){throw new i.InvalidJson(o)}return a.forceBackgroundQueuePerform&&new Promise(((t,n)=>{e(["../BackgroundQueue"],t,n)})).then(n.__importStar).then((e=>e.invoke())),a.returnValues}catch(e){if(e instanceof i.ApiError)throw e;if(e instanceof DOMException&&"AbortError"===e.name)return;if(!a)throw new i.ConnectionError(e)}finally{c&&o.hide()}}}t.DboAction=s,t.default=s})),define("WoltLabSuite/Core/Ajax",["require","exports","tslib","./Ajax/Request","./Core","./Ajax/DboAction"],(function(e,t,n,i,o,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.dboAction=t.getRequestObject=t.apiOnce=t.api=void 0,i=n.__importDefault(i),o=n.__importStar(o),r=n.__importDefault(r);const a=new WeakMap;t.api=function(e,t,n,r){"object"!=typeof t&&(t={});let s=a.get(e);if(void 0===s){if("function"!=typeof e._ajaxSetup)throw new TypeError("Callback object must implement at least _ajaxSetup().");const t=e._ajaxSetup();t.pinData=!0,t.callbackObject=e,t.url||(t.url="index.php?ajax-proxy/&t="+o.getXsrfToken(),t.withCredentials=!0),s=new i.default(t),a.set(e,s)}let l=null,c=null;return"function"==typeof n&&(l=s.getOption("success"),s.setOption("success",n)),"function"==typeof r&&(c=s.getOption("failure"),s.setOption("failure",r)),s.setData(t),s.sendRequest(),null!==l&&s.setOption("success",l),null!==c&&s.setOption("failure",c),s},t.apiOnce=function(e){e.pinData=!1,e.callbackObject=null,e.url||(e.url="index.php?ajax-proxy/&t="+o.getXsrfToken(),e.withCredentials=!0),new i.default(e).sendRequest(!1)},t.getRequestObject=function(e){if(!a.has(e))throw new Error("Expected a previously used callback object, provided object is unknown.");return a.get(e)},t.dboAction=function(e,t){return r.default.prepare(e,t)}})),define("WoltLabSuite/Core/BackgroundQueue",["require","exports","tslib","./Ajax"],(function(e,t,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.invoke=t.setUrl=void 0,i=n.__importStar(i);class o{constructor(e){this._invocations=0,this._isBusy=!1,this._url=e}invoke(){this._isBusy||(this._isBusy=!0,i.api(this))}_ajaxSuccess(e){this._invocations++,e>0&&this._invocations<5?window.setTimeout((()=>{this._isBusy=!1,this.invoke()}),1e3):(this._isBusy=!1,this._invocations=0)}_ajaxSetup(){return{url:this._url,ignoreError:!0,silent:!0}}}let r;t.setUrl=function(e){r||(r=new o(e))},t.invoke=function(){r?r.invoke():console.error("The background queue has not been initialized yet.")}})),define("WoltLabSuite/Core/Date/Util",["require","exports","tslib","../Language"],(function(e,t,n,i){"use strict";function o(e){return a(e,i.get("wcf.date.dateFormat"))}function r(e){return a(e,i.get("wcf.date.timeFormat"))}function a(e,t){"c"===t&&(t="Y-m-dTH:i:sP");let n="";for(let o=0,r=t.length;o<r;o++){let a;switch(t[o]){case"s":a=e.getSeconds().toString().padStart(2,"0");break;case"i":a=e.getMinutes().toString().padStart(2,"0");break;case"a":a=e.getHours()>11?"pm":"am";break;case"g":{const t=e.getHours();a=0===t?"12":t>12?(t-12).toString():t.toString();break}case"h":{const t=e.getHours();a=0===t?"12":t>12?(t-12).toString():t.toString(),a=a.padStart(2,"0");break}case"A":a=e.getHours()>11?"PM":"AM";break;case"G":a=e.getHours().toString();break;case"H":a=e.getHours().toString().padStart(2,"0");break;case"d":a=e.getDate().toString().padStart(2,"0");break;case"j":a=e.getDate().toString();break;case"l":a=i.get("__days")[e.getDay()];break;case"D":a=i.get("__daysShort")[e.getDay()];break;case"S":a="";break;case"m":a=(e.getMonth()+1).toString().padStart(2,"0");break;case"n":a=(e.getMonth()+1).toString();break;case"F":a=i.get("__months")[e.getMonth()];break;case"M":a=i.get("__monthsShort")[e.getMonth()];break;case"y":a=e.getFullYear().toString().slice(-2);break;case"Y":a=e.getFullYear().toString();break;case"P":{let t=e.getTimezoneOffset();a=t>0?"-":"+",t=Math.abs(t),a+=(~~(t/60)).toString().padStart(2,"0"),a+=":",a+=(t%60).toString().padStart(2,"0");break}case"r":a=e.toString();break;case"U":a=Math.round(e.getTime()/1e3).toString();break;case"\\":a="",o+1<r&&(a=t[++o]);break;default:a=t[o]}n+=a}return n}
1Object.defineProperty(t,"__esModule",{value:!0}),t.getTimezoneDate=t.getTimeElement=t.gmdate=t.format=t.formatDateTime=t.formatTime=t.formatDate=void 0,i=n.__importStar(i),t.formatDate=o,t.formatTime=r,t.formatDateTime=function(e){const t=i.get("wcf.date.dateTimeFormat"),n=i.get("wcf.date.dateFormat"),o=i.get("wcf.date.timeFormat");return a(e,t.replace(/%date%/,n).replace(/%time%/,o))},t.format=a,t.gmdate=function(e){return e instanceof Date||(e=new Date),Math.round(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDay(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds())/1e3)},t.getTimeElement=function(e){const t=document.createElement("time");t.className="datetime";const n=o(e),s=r(e);return t.setAttribute("datetime",a(e,"c")),t.dataset.timestamp=((e.getTime()-e.getMilliseconds())/1e3).toString(),t.dataset.date=n,t.dataset.time=s,t.dataset.offset=(60*e.getTimezoneOffset()).toString(),e.getTime()>Date.now()&&(t.dataset.isFutureDate="true",t.textContent=i.get("wcf.date.dateTimeFormat").replace("%time%",s).replace("%date%",n)),t},t.getTimezoneDate=function(e,t){const n=6e4*new Date(e).getTimezoneOffset();return new Date(e+n+t)}})),define("WoltLabSuite/Core/Devtools",["require","exports"],(function(e,t){"use strict";function n(){window.sessionStorage&&window.sessionStorage.setItem("__wsc_devtools_config",JSON.stringify(i))}let i={editorAutosave:!0,eventLogging:!1};const o={help(){window.console.log(""),window.console.log("%cAvailable commands:","text-decoration: underline"),Object.keys(o).filter((e=>"_internal_"!==e)).sort().forEach((e=>{window.console.log(`\tDevtools.${e}()`)})),window.console.log("")},toggleEditorAutosave(e){i.editorAutosave=!e&&!i.editorAutosave,n(),window.console.log("%c\tEditor autosave "+(i.editorAutosave?"enabled":"disabled"),"font-style: italic")},toggleEventLogging(e){i.eventLogging=!!e||!i.eventLogging,n(),window.console.log("%c\tEvent logging "+(i.eventLogging?"enabled":"disabled"),"font-style: italic")},_internal_:{enable(){if(window.Devtools=o,window.console.log("%cDevtools for WoltLab Suite loaded","font-weight: bold"),window.sessionStorage){const e=window.sessionStorage.getItem("__wsc_devtools_config");try{null!==e&&(i=JSON.parse(e))}catch(e){}i.editorAutosave||o.toggleEditorAutosave(!0),i.eventLogging&&o.toggleEventLogging(!0)}window.console.log("Settings are saved per browser session, enter `Devtools.help()` to learn more."),window.console.log("")},editorAutosave:()=>i.editorAutosave,eventLog(e,t){i.eventLogging&&window.console.log("[Devtools.EventLogging] Firing event: "+t+" @ "+e)}}};return o}
1)),define("WoltLabSuite/Core/Event/Handler",["require","exports","tslib","../Core","../Devtools"],(function(e,t,n,i,o){"use strict";function r(e,t){"string"!=typeof t&&(t=void 0);const n=a.get(e);void 0!==n&&(void 0===t?a.delete(e):n.delete(t))}Object.defineProperty(t,"__esModule",{value:!0}),t.removeAllBySuffix=t.removeAll=t.remove=t.fire=t.add=void 0,i=n.__importStar(i),o=n.__importDefault(o);const a=new Map;t.add=function(e,t,n){if("function"!=typeof n)throw new TypeError(`Expected a valid callback for '${t}'@'${e}'.`);let o=a.get(e);void 0===o&&(o=new Map,a.set(e,o));let r=o.get(t);void 0===r&&(r=new Map,o.set(t,r));const s=i.getUuid();return r.set(s,n),s},t.fire=function(e,t,n){var i,r;o.default._internal_.eventLog(e,t),n=n||{},null===(r=null===(i=a.get(e))||void 0===i?void 0:i.get(t))||void 0===r||r.forEach((e=>e(n)))},t.remove=function(e,t,n){var i,o;null===(o=null===(i=a.get(e))||void 0===i?void 0:i.get(t))||void 0===o||o.delete(n)},t.removeAll=r,t.removeAllBySuffix=function(e,t){const n=a.get(e);if(void 0===n)return;const i=-1*(t="_"+t).length;n.forEach(((n,o)=>{o.substr(i)===t&&r(e,o)}))}})),define("WoltLabSuite/Core/Dom/Traverse",["require","exports"],(function(e,t){"use strict";function n(e,t,n){if(!(e instanceof Element))throw new TypeError("Expected a valid element as first argument.");const i=[];for(let o=0;o<e.childElementCount;o++)r.get(t)(e.children[o],n)&&i.push(e.children[o]);return i}function i(e,t,n,i){if(!(e instanceof Element))throw new TypeError("Expected a valid element as first argument.");let o=e.parentNode;for(;o instanceof Element;){if(o===i)return null;if(r.get(t)(o,n))return o;o=o.parentNode}return null}function o(e,t,n,i){if(!(e instanceof Element))throw new TypeError("Expected a valid element as first argument.");return e instanceof Element&&null!==e[t]&&r.get(n)(e[t],i)?e[t]:null}Object.defineProperty(t,"__esModule",{value:!0}),t.prevByTag=t.prevByClass=t.prevBySel=t.prev=t.nextByTag=t.nextByClass=t.nextBySel=t.next=t.parentByTag=t.parentByClass=t.parentBySel=t.childrenByTag=t.childrenByClass=t.childrenBySel=t.childByTag=t.childByClass=t.childBySel=void 0;const r=new Map([[0,()=>!0],[1,(e,t)=>e.matches(t)],[2,(e,t)=>e.classList.contains(t)],[3,(e,t)=>e.nodeName===t]]);t.childBySel=function(e,t){return n(e,1,t)[0]||null},t.childByClass=function(e,t){return n(e,2,t)[0]||null},t.childByTag=function(e,t){return n(e,3,t)[0]||null},t.childrenBySel=function(e,t){return n(e,1,t)},t.childrenByClass=function(e,t){return n(e,2,t)},t.childrenByTag=function(e,t){return n(e,3,t)},t.parentBySel=function(e,t,n){return i(e,1,t,n)},t.parentByClass=function(e,t,n){return i(e,2,t,n)},t.parentByTag=function(e,t,n){return i(e,3,t,n)},t.next=function(e){return o(e,"nextElementSibling",0,"")},t.nextBySel=function(e,t){return o(e,"nextElementSibling",1,t)},t.nextByClass=function(e,t){return o(e,"nextElementSibling",2,t)},t.nextByTag=function(e,t){return o(e,"nextElementSibling",3,t)},t.prev=function(e){return o(e,"previousElementSibling",0,"")},t.prevBySel=function(e,t){return o(e,"previousElementSibling",1,t)},t.prevByClass=function(e,t){return o(e,"previousElementSibling",2,t)},t.prevByTag=function(e,t){return o(e,"previousElementSibling",3,t)}})),define("WoltLabSuite/Core/Ui/Alignment",["require","exports","tslib","../Core","../Dom/Traverse","../Dom/Util","../Language"],(function(e,t,n,i,o,r,a){"use strict";function s(e,t,n,i,o,r){let a="auto",s="auto",l=!0,c=50;const d=document.getElementById("pageHeaderPanel");if(null!==d){const e=window.getComputedStyle(d).position;c="fixed"===e||"static"===e?d.offsetHeight:0}if("top"===e){const e=document.body.clientHeight;a=e-i.top+r,e-(a+t.height)<(window.scrollY||window.pageYOffset)+c&&(l=!1)}else s=i.top+n.height+r,s+t.height-(window.scrollY||window.pageYOffset)>o&&(l=!1);return{align:e,bottom:a,top:s,result:l}}function l(e,t,n,i,o){let r="auto",a="auto",s=!0;return"left"===e?(r=i.left,r+t.width>o&&(s=!1)):"right"===e?i.left+n.width<t.width?s=!1:(a=o-(i.left+n.width),a<0&&(s=!1)):(r=i.left+n.width/2-t.width/2,r=~~r,(r<0||r+t.width>o)&&(s=!1)),{align:e,left:r,right:a,result:s}}
1Object.defineProperty(t,"__esModule",{value:!0}),t.set=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a),t.set=function(e,t,n){let c;n=i.extend({verticalOffset:0,pointer:!1,pointerClassNames:[],refDimensionsElement:null,horizontal:"left",vertical:"bottom",allowFlip:"both"},n||{}),Array.isArray(n.pointerClassNames)&&n.pointerClassNames.length===(n.pointer?1:2)||(n.pointerClassNames=[]),-1===["left","right","center"].indexOf(n.horizontal)&&(n.horizontal="left"),"bottom"!==n.vertical&&(n.vertical="top"),-1===["both","horizontal","vertical","none"].indexOf(n.allowFlip)&&(n.allowFlip="both"),"none"===window.getComputedStyle(e).display&&(c=e.style.getPropertyValue("display"),e.style.setProperty("display","block")),r.default.setStyles(e,{bottom:"auto !important",left:"0 !important",right:"auto !important",top:"0 !important",visibility:"hidden !important"});const d=r.default.outerDimensions(e),u=r.default.outerDimensions(n.refDimensionsElement instanceof HTMLElement?n.refDimensionsElement:t),p=r.default.offset(t),h=window.innerHeight,f=document.body.clientWidth;let m=null,g=!1;if("center"===n.horizontal&&(g=!0,m=l(n.horizontal,d,u,p,f),m.result||("both"===n.allowFlip||"horizontal"===n.allowFlip?n.horizontal="left":m.result=!0)),"rtl"===a.get("wcf.global.pageDirection")&&(n.horizontal="left"===n.horizontal?"right":"left"),null===m||!m.result){const e=m;if(m=l(n.horizontal,d,u,p,f),!m.result&&("both"===n.allowFlip||"horizontal"===n.allowFlip)){const t=l("left"===n.horizontal?"right":"left",d,u,p,f);if(t.result)m=t;else if(g)m=e;else if(d.width===f)m={align:"left",left:0,result:!0,right:0};else if(d.width<f){const e=f-(p.left+u.width),t=p.left<=e;m={align:t?"left":"right",left:t?0:"auto",result:!0,right:t?"auto":0}}}}const b=m.left,v=m.right;let w=s(n.vertical,d,u,p,h,n.verticalOffset);if(!w.result&&("both"===n.allowFlip||"vertical"===n.allowFlip)){const e=s("top"===n.vertical?"bottom":"top",d,u,p,h,n.verticalOffset);if(e.result)w=e;else if(d.height===h)w={align:"top",bottom:0,result:!0,top:0};else if(d.height<h){const e=h-(p.top+u.height),t=p.top<=e;w={align:t?"top":"bottom",bottom:t?0:"auto",result:!0,top:t?"auto":0}}}const y=w.bottom,_=w.top;if(n.pointer){const t=o.childrenByClass(e,"elementPointer")[0]||null;if(null===t)throw new Error("Expected the .elementPointer element to be a direct children.");"center"===m.align?(t.classList.add("center"),t.classList.remove("left","right")):(t.classList.add(m.align),t.classList.remove("center"),t.classList.remove("left"===m.align?"right":"left")),"top"===w.align?t.classList.add("flipVertical"):t.classList.remove("flipVertical")}else 2===n.pointerClassNames.length&&(e.classList["auto"===_?"add":"remove"](n.pointerClassNames[0]),e.classList["auto"===b?"add":"remove"](n.pointerClassNames[1]));r.default.setStyles(e,{bottom:"auto"===y?y:Math.round(y).toString()+"px",left:"auto"===b?b:Math.ceil(b).toString()+"px",right:"auto"===v?v:Math.floor(v).toString()+"px",top:"auto"===_?_:Math.round(_).toString()+"px"}),r.default.show(e),e.style.removeProperty("visibility"),void 0!==c&&(""===c?e.style.removeProperty("display"):e.style.setProperty("display",c))}})),define("WoltLabSuite/Core/Ui/CloseOverlay",["require","exports","tslib","../CallbackList"],(function(e,t,n,i){"use strict";function o(e,t){s.add(e,t),c||(document.body.addEventListener("click",(()=>{a(l.Document)})),c=!0)}function r(e){s.remove(e)}function a(e,t){s.forEach(null,(n=>n(e,t)))}Object.defineProperty(t,"__esModule",{value:!0}),t.execute=t.remove=t.add=t.Origin=void 0;const s=new((i=n.__importDefault(i)).default);var l;!function(e){e.Document="document",e.DropDown="dropdown",e.Search="search"}(l||(t.Origin=l={}));let c=!1;t.add=o,t.remove=r,t.execute=a;const d={add:o,remove:r,execute:a};t.default=d}
1)),function(e,t){var n,i;"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define("tabbable",["exports"],t):(e="undefined"!=typeof globalThis?globalThis:e||self,n=e.tabbable,i=e.tabbable={},t(i),i.noConflict=function(){return e.tabbable=n,i})}(this,(function(e){"use strict";var t=["input","select","textarea","a[href]","button","[tabindex]:not(slot)","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])',"details>summary:first-of-type","details"],n=t.join(","),i="undefined"==typeof Element,o=i?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,r=!i&&Element.prototype.getRootNode?function(e){return e.getRootNode()}:function(e){return e.ownerDocument},a=function(e,t,i){var r=Array.prototype.slice.apply(e.querySelectorAll(n));return t&&o.call(e,n)&&r.unshift(e),r.filter(i)},s=function e(t,i,r){var a,s,l,c,d,u,p,h;for(a=[],s=Array.from(t);s.length;)"SLOT"===(l=s.shift()).tagName?(d=e((c=l.assignedElements()).length?c:l.children,!0,r),r.flatten?a.push.apply(a,d):a.push({scope:l,candidates:d})):(o.call(l,n)&&r.filter(l)&&(i||!t.includes(l))&&a.push(l),u=l.shadowRoot||"function"==typeof r.getShadowRoot&&r.getShadowRoot(l),p=!r.shadowRootFilter||r.shadowRootFilter(l),u&&p?(h=e(!0===u?l.children:u.children,!0,r),r.flatten?a.push.apply(a,h):a.push({scope:l,candidates:h})):s.unshift.apply(s,l.children));return a},l=function(e,t){return e.tabIndex<0&&(t||/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||e.isContentEditable)&&isNaN(parseInt(e.getAttribute("tabindex"),10))?0:e.tabIndex},c=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},d=function(e){return"INPUT"===e.tagName},u=function(e){var t=e.getBoundingClientRect(),n=t.width,i=t.height;return 0===n&&0===i},p=function(e,t){return!(t.disabled||function(e){return d(e)&&"hidden"===e.type}(t)||function(e,t){var n,i,a,s,l,c,d=t.displayCheck,p=t.getShadowRoot;if("hidden"===getComputedStyle(e).visibility)return!0;if(n=o.call(e,"details>summary:first-of-type")?e.parentElement:e,o.call(n,"details:not([open]) *"))return!0;if(a=(null==(i=r(e).host)?void 0:i.ownerDocument.contains(i))||e.ownerDocument.contains(e),d&&"full"!==d){if("non-zero-area"===d)return u(e)}else{if("function"==typeof p){for(s=e;e;){if(l=e.parentElement,c=r(e),l&&!l.shadowRoot&&!0===p(l))return u(e);e=e.assignedSlot?e.assignedSlot:l||c===e.ownerDocument?l:c.host}e=s}if(a)return!e.getClientRects().length}return!1}(t,e)||function(e){return"DETAILS"===e.tagName&&Array.prototype.slice.apply(e.children).some((function(e){return"SUMMARY"===e.tagName}))}(t)||function(e){var t,n,i;if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(t=e.parentElement;t;){if("FIELDSET"===t.tagName&&t.disabled){for(n=0;n<t.children.length;n++)if("LEGEND"===(i=t.children.item(n)).tagName)return!!o.call(t,"fieldset[disabled] *")||!i.contains(e);return!0}t=t.parentElement}return!1}(t))},h=function(e,t){return!(function(e){return function(e){return d(e)&&"radio"===e.type}(e)&&!function(e){var t,n,i,o;if(!e.name)return!0;if(n=e.form||r(e),i=function(e){return n.querySelectorAll('input[type="radio"][name="'+e+'"]')},"undefined"!=typeof window&&void 0!==window.CSS&&"function"==typeof window.CSS.escape)t=i(window.CSS.escape(e.name));else try{t=i(e.name)}catch(e){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",e.message),!1}return o=function(e,t){for(var n=0;n<e.length;n++)if(e[n].checked&&e[n].form===t)return e[n]}(t,e.form),!o||o===e}(e)}(t)||l(t)<0||!p(e,t))},f=function(e){var t=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},m=t.concat("iframe").join(",");e.focusable=function(e,t){return(t=t||{}).getShadowRoot?s([e],t.includeContainer,{filter:p.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):a(e,t.includeContainer,p.bind(null,t))},e.isFocusable=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==o.call(e,m)&&p(t,e)},e.isTabbable=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==o.call(e,n)&&h(t,e)},e.tabbable=function(e,t){return function e(t){var n=[],i=[];return t.forEach((function(t,o){var r=!!t.scope,a=r?t.scope:t,s=l(a,r),c=r?e(t.candidates):a;0===s?r?n.push.apply(n,c):n.push(a):i.push({documentOrder:o,tabIndex:s,item:t,isScope:r,content:c})})),i.sort(c).reduce((function(e,t){return t.isScope?e.push.apply(e,t.content):e.push(t.content),e}),[]).concat(n)}((t=t||{}).getShadowRoot?s([e],t.includeContainer,{filter:h.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:f}):a(e,t.includeContainer,h.bind(null,t)))}
1,Object.defineProperty(e,"__esModule",{value:!0})})),function(e,t){var n,i;"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("tabbable")):"function"==typeof define&&define.amd?define("focus-trap",["exports","tabbable"],t):(e="undefined"!=typeof globalThis?globalThis:e||self,n=e.focusTrap,i=e.focusTrap={},t(i,e.tabbable),i.noConflict=function(){return e.focusTrap=n,i})}(this,(function(e,t){"use strict";function n(e,t){var n,i=Object.keys(e);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(e),t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,n)),i}function i(e){var t,i;for(t=1;t<arguments.length;t++)i=null!=arguments[t]?arguments[t]:{},t%2?n(Object(i),!0).forEach((function(t){o(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):n(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}));return e}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var r,a=(r=[],{activateTrap:function(e){var t,n;r.length>0&&(t=r[r.length-1])!==e&&t.pause(),-1===(n=r.indexOf(e))||r.splice(n,1),r.push(e)},deactivateTrap:function(e){var t=r.indexOf(e);-1!==t&&r.splice(t,1),r.length>0&&r[r.length-1].unpause()}}),s=function(e){return setTimeout(e,0)},l=function(e,t){var n=-1;return e.every((function(e,i){return!t(e)||(n=i,!1)})),n},c=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return"function"==typeof e?e.apply(void 0,n):e},d=function(e){return e.target.shadowRoot&&"function"==typeof e.composedPath?e.composedPath()[0]:e.target};e.createFocusTrap=function(e,n){var o,r=(null==n?void 0:n.document)||document,u=i({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0},n),p={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,delayInitialFocusTimer:void 0},h=function(e,t,n){return e&&void 0!==e[t]?e[t]:u[n||t]},f=function(e){return p.containerGroups.findIndex((function(t){var n=t.container,i=t.tabbableNodes;return n.contains(e)||i.find((function(t){return t===e}))}))},m=function(e){var t,n,i,o,a=u[e];if("function"==typeof a){for(t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];a=a.apply(void 0,n)}if(!0===a&&(a=void 0),!a){if(void 0===a||!1===a)return a;throw new Error("`".concat(e,"` was specified but was not a node, or did not return a node"))}if(o=a,"string"==typeof a&&!(o=r.querySelector(a)))throw new Error("`".concat(e,"` as selector refers to no known node"));return o},g=function(){var e,t=m("initialFocus");if(!1===t)return!1;if(void 0===t&&(t=f(r.activeElement)>=0?r.activeElement:(e=p.tabbableGroups[0])&&e.firstTabbableNode||m("fallbackFocus")),!t)throw new Error("Your focus-trap needs to have at least one focusable element");return t},b=function(){if(p.containerGroups=p.containers.map((function(e){var n=t.tabbable(e,u.tabbableOptions),i=t.focusable(e,u.tabbableOptions);return{container:e,tabbableNodes:n,focusableNodes:i,firstTabbableNode:n.length>0?n[0]:null,lastTabbableNode:n.length>0?n[n.length-1]:null,nextTabbableNode:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=i.findIndex((function(t){return t===e}));if(!(o<0))return n?i.slice(o+1).find((function(e){return t.isTabbable(e,u.tabbableOptions)})):i.slice(0,o).reverse().find((function(e){return t.isTabbable(e,u.tabbableOptions)}))}}})),p.tabbableGroups=p.containerGroups.filter((function(e){return e.tabbableNodes.length>0})),p.tabbableGroups.length<=0&&!m("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times")},v=function e(t){!1!==t&&t!==r.activeElement&&(t&&t.focus?(t.focus({preventScroll:!!u.preventScroll}),p.mostRecentlyFocusedNode=t,function(e){return e.tagName&&"input"===e.tagName.toLowerCase()&&"function"==typeof e.select}(t)&&t.select()):e(g()))},w=function(e){var t=m("setReturnFocus",e);return t||!1!==t&&e},y=function(e){var n=d(e);f(n)>=0||(c(u.clickOutsideDeactivates,e)?o.deactivate({returnFocus:u.returnFocusOnDeactivate&&!t.isFocusable(n,u.tabbableOptions)}):c(u.allowOutsideClick,e)||e.preventDefault())},_=function(e){var t=d(e),n=f(t)>=0;n||t instanceof Document?n&&(p.mostRecentlyFocusedNode=t):(e.stopImmediatePropagation(),v(p.mostRecentlyFocusedNode||g()))},E=function(e){if(function(e){return"Escape"===e.key||"Esc"===e.key||27===e.ke
1yCode}(e)&&!1!==c(u.escapeDeactivates,e))return e.preventDefault(),void o.deactivate();(function(e){return"Tab"===e.key||9===e.keyCode})(e)&&function(e){var n,i,o,r,a,s,c,h=d(e);b(),n=null,p.tabbableGroups.length>0?(o=(i=f(h))>=0?p.containerGroups[i]:void 0,i<0?n=e.shiftKey?p.tabbableGroups[p.tabbableGroups.length-1].lastTabbableNode:p.tabbableGroups[0].firstTabbableNode:e.shiftKey?(r=l(p.tabbableGroups,(function(e){var t=e.firstTabbableNode;return h===t})),r<0&&(o.container===h||t.isFocusable(h,u.tabbableOptions)&&!t.isTabbable(h,u.tabbableOptions)&&!o.nextTabbableNode(h,!1))&&(r=i),r>=0&&(a=0===r?p.tabbableGroups.length-1:r-1,n=p.tabbableGroups[a].lastTabbableNode)):(s=l(p.tabbableGroups,(function(e){var t=e.lastTabbableNode;return h===t})),s<0&&(o.container===h||t.isFocusable(h,u.tabbableOptions)&&!t.isTabbable(h,u.tabbableOptions)&&!o.nextTabbableNode(h))&&(s=i),s>=0&&(c=s===p.tabbableGroups.length-1?0:s+1,n=p.tabbableGroups[c].firstTabbableNode))):n=m("fallbackFocus"),n&&(e.preventDefault(),v(n))}(e)},S=function(e){var t=d(e);f(t)>=0||c(u.clickOutsideDeactivates,e)||c(u.allowOutsideClick,e)||(e.preventDefault(),e.stopImmediatePropagation())},C=function(){if(p.active)return a.activateTrap(o),p.delayInitialFocusTimer=u.delayInitialFocus?s((function(){v(g())})):v(g()),r.addEventListener("focusin",_,!0),r.addEventListener("mousedown",y,{capture:!0,passive:!1}),r.addEventListener("touchstart",y,{capture:!0,passive:!1}),r.addEventListener("click",S,{capture:!0,passive:!1}),r.addEventListener("keydown",E,{capture:!0,passive:!1}),o},L=function(){if(p.active)return r.removeEventListener("focusin",_,!0),r.removeEventListener("mousedown",y,!0),r.removeEventListener("touchstart",y,!0),r.removeEventListener("click",S,!0),r.removeEventListener("keydown",E,!0),o};return(o={get active(){return p.active},get paused(){return p.paused},activate:function(e){var t,n,i,o;return p.active?this:(t=h(e,"onActivate"),n=h(e,"onPostActivate"),(i=h(e,"checkCanFocusTrap"))||b(),p.active=!0,p.paused=!1,p.nodeFocusedBeforeActivation=r.activeElement,t&&t(),o=function(){i&&b(),C(),n&&n()},i?(i(p.containers.concat()).then(o,o),this):(o(),this))},deactivate:function(e){var t,n,r,l,c,d;return p.active?(t=i({onDeactivate:u.onDeactivate,onPostDeactivate:u.onPostDeactivate,checkCanReturnFocus:u.checkCanReturnFocus},e),clearTimeout(p.delayInitialFocusTimer),p.delayInitialFocusTimer=void 0,L(),p.active=!1,p.paused=!1,a.deactivateTrap(o),n=h(t,"onDeactivate"),r=h(t,"onPostDeactivate"),l=h(t,"checkCanReturnFocus"),c=h(t,"returnFocus","returnFocusOnDeactivate"),n&&n(),d=function(){s((function(){c&&v(w(p.nodeFocusedBeforeActivation)),r&&r()}))},c&&l?(l(w(p.nodeFocusedBeforeActivation)).then(d,d),this):(d(),this)):this},pause:function(){return p.paused||!p.active||(p.paused=!0,L()),this},unpause:function(){return p.paused&&p.active?(p.paused=!1,b(),C(),this):this}
1,updateContainerElements:function(e){var t=[].concat(e).filter(Boolean);return p.containers=t.map((function(e){return"string"==typeof e?r.querySelector(e):e})),p.active&&b(),this}}).updateContainerElements(e),o},Object.defineProperty(e,"__esModule",{value:!0})})),define("WoltLabSuite/Core/Date/Picker",["require","exports","tslib","../Core","./Util","../Dom/Change/Listener","../Event/Handler","../Language","../Ui/Alignment","../Ui/CloseOverlay","../Dom/Util","focus-trap"],(function(e,t,n,i,o,r,a,s,l,c,d,u){"use strict";function p(e,t,n){const i=n?"minDate":"maxDate";let o=(e.dataset[i]||"").trim();if(/^(\d{4})-(\d{2})-(\d{2})$/.exec(o))o=new Date(o).getTime().toString();else if("now"===o)o=t.getTime().toString();else if(/^\d{1,3}$/.exec(o)){const e=new Date(t.getTime());e.setFullYear(e.getFullYear()+~~o*(n?-1:1)),o=e.getTime().toString()}else if(/^datePicker-(.+)$/.exec(o)){if(o=RegExp.$1,null===document.getElementById(o))throw new Error("Reference date picker identified by '"+o+"' does not exists (element id: '"+e.id+"').")}else o=/^\d{4}-\d{2}-\d{2}T/.test(o)?new Date(o).getTime().toString():new Date(n?1902:2038,0,1).getTime().toString();e.dataset[i]=o}function h(e){let t=M.dataset[e]||"";if(/^datePicker-(.+)$/.exec(t)){const e=document.getElementById(RegExp.$1);if(null===e)throw new Error(`Unable to find an element with the id '${RegExp.$1}'.`);t=e.dataset.value||""}return new Date(parseInt(t,10))}function f(e){e.preventDefault(),e.stopPropagation(),function(){if(null!==U)return;U=document.createElement("div"),U.className="datePicker",U.addEventListener("click",(e=>{e.stopPropagation()}));const e=document.createElement("header");U.appendChild(e),N=document.createElement("a"),N.className="previous jsTooltip",N.href="#",N.setAttribute("role","button"),N.tabIndex=0,N.title=s.get("wcf.date.datePicker.previousMonth"),N.setAttribute("aria-label",s.get("wcf.date.datePicker.previousMonth")),N.innerHTML='<span class="icon icon16 fa-arrow-left"></span>',N.addEventListener("click",(e=>F.previousMonth(e))),e.appendChild(N);const t=document.createElement("span");e.appendChild(t),P=document.createElement("select"),P.className="month jsTooltip",P.title=s.get("wcf.date.datePicker.month"),P.setAttribute("aria-label",s.get("wcf.date.datePicker.month")),P.addEventListener("change",w),t.appendChild(P);let n="";const i=s.get("__monthsShort");for(let e=0;e<12;e++)n+=`<option value="${e}">${i[e]}</option>`;P.innerHTML=n,q=document.createElement("select"),q.className="year jsTooltip",q.title=s.get("wcf.date.datePicker.year"),q.setAttribute("aria-label",s.get("wcf.date.datePicker.year")),q.addEventListener("change",y),t.appendChild(q),O=document.createElement("a"),O.className="next jsTooltip",O.href="#",O.setAttribute("role","button"),O.tabIndex=0,O.title=s.get("wcf.date.datePicker.nextMonth"),O.setAttribute("aria-label",s.get("wcf.date.datePicker.nextMonth")),O.innerHTML='<span class="icon icon16 fa-arrow-right"></span>',O.addEventListener("click",(e=>F.nextMonth(e))),e.appendChild(O),D=document.createElement("ul"),U.appendChild(D);const r=document.createElement("li");r.className="weekdays",D.appendChild(r);const a=s.get("__daysShort");for(let e=0;e<7;e++){let t=e+L;t>6&&(t-=7);const n=document.createElement("span");n.textContent=a[t],r.appendChild(n)}for(let e=0;e<6;e++){const e=document.createElement("li");D.appendChild(e);for(let t=0;t<7;t++){const t=document.createElement("a");t.addEventListener("click",_),I.push(t),e.appendChild(t)}}B=document.createElement("footer"),U.appendChild(B),A=document.createElement("select"),A.className="hour",A.title=s.get("wcf.date.datePicker.hour"),A.setAttribute("aria-label",s.get("wcf.date.datePicker.hour")),A.addEventListener("change",v);const l=new Date(2e3,0,1),c=s.get("wcf.date.timeFormat").replace(/:/,"").replace(/[isu]/g,"");let d="";for(let e=0;e<24;e++)l.setHours(e),d+=`<option value="${e}">${o.format(l,c)}</option>`;A.innerHTML=d,B.appendChild(A),B.appendChild(document.createTextNode("Â :Â ")),j=document.createElement("select"),j.className="minute",j.title=s.get("wcf.date.datePicker.minute"),j.setAttribute("aria-label",s.get("wcf.date.datePicker.minute")),j.addEventListener("change",v),d="";for(let e=0;e<60;e++){const t=e<10?"0"+e.toString():e;d+=`<option value="${e}">${t}</option>`}j.innerHTML=d,B.appendChild(j),document.body.appendChild(U),S=(0,u.createFocusTrap)(U,{allowOutsideClick:!0,escapeDeactivates:()=>(m(),!1)})}();const t=e.currentTarget,n="INPUT"===t.nodeName?t:t.previousElementSibling;if(n===M)return void m();const r=n.closest(".dialogContent");null!==r&&(i.stringToBool(r.dataset.hasDatepickerScrollListener||"")||(r.addEventListener("scroll",g),r.dataset.hasDatepickerScrollListener="1")),M=n;const a=x.get(M),c=M.dataset.value;let d;c?(d=new Date(parseInt(c,10)),"Invalid Date"===d.toString()&&(d=new Date)):d=new Date,T=h("minDate"),T.getTime()>d.getTime()&&(d=T),k=h("maxDate"),M.dataset.maxDate&&k.getTime()<d.getTime()&&(d=k),a.isDateTime?(A.value=d.getHours().toString(),j.value=d.getMinutes().toString(),U.classList.add("datePickerTime")):U.classList.remove("datePickerTime"),U.classList[a.isTimeOnly?"add":"remove"]("datePickerTimeOnly"),function(e,t,n){b(e,t,n);let i="";for(let e=T.getFullYear(),t=k.getFullYear();e<=t;e++)i+=`<option value="${e}">${e}</option>`;q.innerHTML=i,q.value=n.toString(),P.value=t.toString(),U.classList.add("active")}(d.getDate(),d.getMonth(),d.getFullYear()),l.set(U,M),M.nextElementSibling.setAttribute("aria-expanded","true"),S.activate()}function m(){if(null===U||!U.classList.contains("active"))return;U.classList.remove("active");const e=x.get(M);"function"==typeof e.onClose&&e.onClose(),a.fire("WoltLabSuite/Core/Date/Picker","close",{element:M});
1M.nextElementSibling.setAttribute("aria-expanded","false"),M=null,S.deactivate()}function g(e){if(null===M)return;const t=e.currentTarget,n=d.default.offset(M),i=d.default.offset(t);n.top+M.clientHeight<=i.top||n.top>=i.top+t.offsetHeight||n.left<=i.left||n.left>=i.left+t.offsetWidth?m():l.set(U,M)}function b(e,t,n){const i=void 0!==e,r=void 0!==t;if("number"!=typeof e&&(e=parseInt(e||D.dataset.day||"0",10)),"number"!=typeof t&&(t=parseInt(t||"0",10)),"number"!=typeof n&&(n=parseInt(n||"0",10)),r||n){let a=0!==n;const s=document.createDocumentFragment();s.appendChild(D),r||(t=parseInt(D.dataset.month,10)),n||(n=parseInt(D.dataset.year,10));let l,c=new Date(n.toString()+"-"+("0"+(t+1).toString()).slice(-2)+"-"+("0"+e.toString()).slice(-2));for(c<T?(n=T.getFullYear(),t=T.getMonth(),e=T.getDate(),P.value=t.toString(),q.value=n.toString(),a=!0):c>k&&(n=k.getFullYear(),t=k.getMonth(),e=k.getDate(),P.value=t.toString(),q.value=n.toString(),a=!0),c=new Date(n.toString()+"-"+("0"+(t+1).toString()).slice(-2)+"-01");c.getDay()!==L;)c.setDate(c.getDate()-1);d.default.show(I[35].parentNode);const u=new Date(T.getFullYear(),T.getMonth(),T.getDate());for(let e=0;e<42;e++){if(35===e&&c.getMonth()!==t){d.default.hide(I[35].parentNode);break}const n=I[e];n.textContent=c.getDate().toString(),l=c.getMonth()===t,l&&(c<u||c>k)&&(l=!1),n.classList[l?"remove":"add"]("otherMonth"),l&&(n.href="#",n.setAttribute("role","button"),n.tabIndex=0,n.title=o.formatDate(c),n.setAttribute("aria-label",o.formatDate(c))),c.setDate(c.getDate()+1)}if(D.dataset.month=t.toString(),D.dataset.year=n.toString(),U.insertBefore(s,B),!i&&(c=new Date(n,t,e),c.getDate()!==e)){for(;c.getMonth()!==t;)c.setDate(c.getDate()-1);e=c.getDate()}if(a){for(let e=0;e<12;e++){const t=P.children[e];t.disabled=n===T.getFullYear()&&+t.value<T.getMonth()||n===k.getFullYear()&&+t.value>k.getMonth()}const e=new Date(n.toString()+"-"+("0"+(t+1).toString()).slice(-2)+"-01");e.setMonth(e.getMonth()+1),O.classList[e<k?"add":"remove"]("active");const i=new Date(n.toString()+"-"+("0"+(t+1).toString()).slice(-2)+"-01");i.setDate(i.getDate()-1),N.classList[i>T?"add":"remove"]("active")}}if(e){for(let t=0;t<37;t++){const n=I[t];n.classList[n.classList.contains("otherMonth")||+n.textContent!==e?"remove":"add"]("active")}D.dataset.day=e.toString()}v()}function v(){const e=x.get(M);let t;i.stringToBool(M.dataset.empty||"")||(t=e.isDateTime?new Date(+D.dataset.year,+D.dataset.month,+D.dataset.day,+A.value,+j.value):new Date(+D.dataset.year,+D.dataset.month,+D.dataset.day),F.setDate(M,t))}function w(e){b(void 0,+e.currentTarget.value)}function y(e){b(void 0,void 0,+e.currentTarget.value)}function _(e){e.preventDefault();const t=e.currentTarget;if(t.classList.contains("otherMonth"))return;M.dataset.empty="false",b(+t.textContent);x.get(M).isDateTime||m()}function E(e){if("string"==typeof e&&(e=document.getElementById(e)),!(e instanceof HTMLInputElement&&e.classList.contains("inputDatePicker")&&x.has(e)))throw new Error("Expected a valid date picker input element or id.");return e}i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importDefault(c),d=n.__importDefault(d);let S,C=!1,L=0;const x=new Map;let k,T,M=null;const I=[];let D,A,j,P,O,N,B,q,U=null;const F={init(){C||(C=!0,L=parseInt(s.get("wcf.date.firstDayOfTheWeek"),10),r.default.add("WoltLabSuite/Core/Date/Picker",(()=>F.init())),c.default.add("WoltLabSuite/Core/Date/Picker",(()=>m())));const e=new Date;document.querySelectorAll('input[type="date"]:not(.inputDatePicker), input[type="datetime"]:not(.inputDatePicker)').forEach((t=>{t.classList.add("inputDatePicker"),t.readOnly=!0;const n="datetime"===t.getAttribute("type"),r=n&&i.stringToBool(t.dataset.timeOnly||""),a=i.stringToBool(t.dataset.disableClear||""),l=n&&i.stringToBool(t.dataset.ignoreTimezone||""),c=t.classList.contains("birthday");t.dataset.isDateTime=n?"true":"false",t.dataset.isTimeOnly=r?"true":"false";let d=null,u=t.value;u||(u=t.getAttribute("value")||"");const h=/^\d+-\d+-\d+$/.test(u);if(u){if(r){d=new Date;const e=u.split(":");d.setHours(+e[0],+e[1])}else{if(l||c||h){let e=new Date(u).getTimezoneOffset(),t=e>0?"-":"+";e=Math.abs(e);const n=Math.floor(e/60).toString(),i=(e%60).toString();t+=2===n.length?n:"0"+n,t+=":",t+=2===i.length?i:"0"+i,c||h?u+="T00:00:00"+t:u=u.replace(/[+-][0-9]{2}:[0-9]{2}$/,t)}d=new Date(u)}const e=d.getTime();
1isNaN(e)?u="":(t.dataset.value=e.toString(),u=r?o.formatTime(d):n?o.formatDateTime(d):o.formatDate(d))}const m=0===u.length;if(c?(t.dataset.minDate="120",t.dataset.maxDate=(new Date).getFullYear().toString()+"-12-31"):(t.min&&(t.dataset.minDate=t.min),t.max&&(t.dataset.maxDate=t.max)),p(t,e,!0),p(t,e,!1),(t.dataset.minDate||"")===(t.dataset.maxDate||""))throw new Error("Minimum and maximum date cannot be the same (element id '"+t.id+"').");t.type="text",t.value=u,t.dataset.empty=m?"true":"false";const g=t.dataset.placeholder||"";g&&(t.placeholder=g);const b=document.createElement("input");b.id=t.id+"DatePicker",b.name=t.name,b.type="hidden",null!==d&&(b.value=r?o.format(d,"H:i"):l?o.format(d,"Y-m-dTH:i:s"):o.format(d,n?"c":"Y-m-d")),t.parentNode.insertBefore(b,t),t.removeAttribute("name"),t.addEventListener("click",f);const v=document.createElement("div");v.className="inputAddon";const w=document.createElement("a");w.className="inputSuffix button jsTooltip",w.href="#",w.setAttribute("role","button"),w.tabIndex=0,w.title=s.get("wcf.date.datePicker"),w.setAttribute("aria-label",s.get("wcf.date.datePicker")),w.setAttribute("aria-haspopup","true"),w.setAttribute("aria-expanded","false"),w.addEventListener("click",(e=>{t.disabled||f(e)})),v.appendChild(w);let y=document.createElement("span");y.className="icon icon16 fa-calendar",w.appendChild(y),t.parentNode.insertBefore(v,t),v.insertBefore(t,w);let _=null;a||(_=document.createElement("a"),_.className="inputSuffix button",_.addEventListener("click",(()=>{t.disabled||this.clear(t)})),m&&_.style.setProperty("visibility","hidden",""),v.appendChild(_),y=document.createElement("span"),y.className="icon icon16 fa-times",_.appendChild(y));const E=["tiny","short","medium","long"];let S=!1;for(let e=0;e<4;e++)t.classList.contains(E[e])&&(S=!0);S||t.classList.add("short");new MutationObserver((()=>{t.disabled?(w.classList.add("disabled"),null==_||_.classList.add("disabled")):(w.classList.remove("disabled"),null==_||_.classList.remove("disabled"))})).observe(t,{attributeFilter:["disabled"]}),t.disabled&&(w.classList.add("disabled"),null==_||_.classList.add("disabled")),x.set(t,{clearButton:_,shadow:b,disableClear:a,isDateTime:n,isEmpty:m,isTimeOnly:r,ignoreTimezone:l,onClose:null})}))},previousMonth(e){e.preventDefault(),"0"===P.value?(P.value="11",q.value=(+q.value-1).toString()):P.value=(+P.value-1).toString(),b(void 0,+P.value,+q.value)},nextMonth(e){e.preventDefault(),"11"===P.value?(P.value="0",q.value=(+q.value+1).toString()):P.value=(+P.value+1).toString(),b(void 0,+P.value,+q.value)},getDate(e){const t=(e=E(e)).dataset.value||"";return t?new Date(+t):null},setDate(e,t){e=E(e);const n=x.get(e);e.dataset.value=t.getTime().toString(),e.dataset.empty="false";let i,r="";n.isDateTime?n.isTimeOnly?(i=o.formatTime(t),r="H:i"):n.ignoreTimezone?(i=o.formatDateTime(t),r="Y-m-dTH:i:s"):(i=o.formatDateTime(t),r="c"):(i=o.formatDate(t),r="Y-m-d"),e.value=i,n.shadow.value=o.format(t,r),n.disableClear||n.clearButton.style.removeProperty("visibility")},getValue(e){e=E(e);const t=x.get(e);return t?t.shadow.value:""},clear(e){e=E(e);const t=x.get(e);e.removeAttribute("data-value"),e.value="",t.disableClear||t.clearButton.style.setProperty("visibility","hidden",""),t.isEmpty=!0,t.shadow.value=""},destroy(e){e=E(e);const t=x.get(e),n=e.parentNode;n.parentNode.insertBefore(e,n),n.remove(),e.setAttribute("type","date"+(t.isDateTime?"time":"")),e.name=t.shadow.name,e.value=t.shadow.value,e.removeAttribute("data-value"),e.removeEventListener("click",f),t.shadow.remove(),e.classList.remove("inputDatePicker"),e.readOnly=!1,x.delete(e)},setCloseCallback(e,t){e=E(e),x.get(e).onClose=t}};return window.__wcf_bc_datePicker=F,F})),define("WoltLabSuite/Core/Timer/Repeating",["require","exports","tslib","../Core"],(function(e,t,n,i){"use strict";i=n.__importStar(i);class o{constructor(e,t){if("function"!=typeof e)throw new TypeError("Expected a valid callback as first argument.");if(t<0||t>864e5)throw new RangeError(`Invalid delta ${t}. Delta must be in the interval [0, 86400000].`);this._callback=e.bind(void 0,this),this._delta=t,this.restart()}restart(){this.stop(),this._timer=setInterval(this._callback,this._delta)}stop(){void 0!==this._timer&&(clearInterval(this._timer),this._timer=void 0)}setDelta(e){this._delta=e,this.restart()}}return i.enableLegacyInheritance(o),o})),define("WoltLabSuite/Core/Date/Time/Relative",["require","exports","tslib","../../Core","../Util","../../Dom/Change/Listener","../../Language","../../Timer/Repeating"],(function(e,t,n,i,o,r,a,s){"use strict";function l(){document.hidden?(u=!1,p=!1):(u=!0,p&&(c(),p=!1))}function c(){if(!u)return void(p||(p=!0));const e=new Date,t=(e.getTime()-e.getMilliseconds())/1e3;document.querySelectorAll("time").forEach((n=>{!function(e,t,n){if(!e.classList.contains("datetime")||i.stringToBool(e.dataset.isFutureDate||""))return;const r=parseInt(e.dataset.timestamp,10)+d,s=e.dataset.date,l=e.dataset.time,c=e.dataset.offset;e.title||(e.title=a.get("wcf.date.dateTimeFormat").replace(/%date%/,s).replace(/%time%/,l));if(r>=n||n<r+60)e.textContent=a.get("wcf.date.relative.now");else if(n<r+3540){const t=Math.max(Math.round((n-r)/60),1);e.textContent=a.get("wcf.date.relative.minutes",{minutes:t})}else if(n<r+86400){const t=Math.round((n-r)/3600);e.textContent=a.get("wcf.date.relative.hours",{hours:t})}else if(n<r+518400){const n=new Date(t.getFullYear(),t.getMonth(),t.getDate()),i=Math.ceil((n.getTime()/1e3-r)/86400),s=o.getTimezoneDate(1e3*r,1e3*parseInt(c,10)).getDay(),d=a.get("__days")[s];e.textContent=a.get("wcf.date.relative.pastDays",{days:i,day:d,time:l})}else e.textContent=a.get("wcf.date.shortDateTimeFormat").replace(/%date%/,s).replace(/%time%/,l)}(n,e,t)}))}
1Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importDefault(s);let d,u=!0,p=!1;t.setup=function(){d=Math.trunc(Date.now()/1e3-window.TIME_NOW),new s.default(c,6e4),r.default.add("WoltLabSuite/Core/Date/Time/Relative",c),document.addEventListener("visibilitychange",l)}})),define("WoltLabSuite/Core/Environment",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.touch=t.platform=t.editor=t.browser=t.setup=void 0;let n="other",i="none",o="desktop",r=!1;t.setup=function(){if("object"==typeof window.chrome)n="chrome";else{const e=window.getComputedStyle(document.documentElement);for(let t=0,i=e.length;t<i;t++){const i=e[t];0===i.indexOf("-ms-")?n="microsoft":0===i.indexOf("-moz-")?n="firefox":"firefox"!==n&&0===i.indexOf("-webkit-")&&(n="safari")}}const e=window.navigator.userAgent.toLowerCase();-1!==e.indexOf("crios")?(n="chrome",o="ios"):/(?:iphone|ipad|ipod)/.test(e)?(n="safari",o="ios"):-1!==e.indexOf("android")?o="android":-1!==e.indexOf("iemobile")&&(n="microsoft",o="windows"),"desktop"!==o||-1===e.indexOf("mobile")&&-1===e.indexOf("tablet")||(o="mobile"),i="redactor",r="ontouchstart"in window||"msMaxTouchPoints"in window.navigator&&window.navigator.msMaxTouchPoints>0||window.DocumentTouch&&document instanceof window.DocumentTouch,"MacIntel"===window.navigator.platform&&window.navigator.maxTouchPoints>1&&(n="safari",o="ios")},t.browser=function(){return n},t.editor=function(){return i},t.platform=function(){return o},t.touch=function(){return r}})),define("WoltLabSuite/Core/Form/XsrfToken",["require","exports","../Core"],(function(e,t,n){"use strict";function i(e){return"INPUT"===e.nodeName}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,t.setup=function(){new MutationObserver((e=>{const t=(0,n.getXsrfToken)();e.forEach((e=>{e.addedNodes.forEach((e=>{i(e)&&e.classList.contains("xsrfTokenInput")&&(e.value=t,e.classList.add("xsrfTokenInputHandled"))}))}))})).observe(document,{subtree:!0,childList:!0});const e=(0,n.getXsrfToken)();document.querySelectorAll(".xsrfTokenInput").forEach((t=>{i(t)&&(t.value=e,t.classList.add("xsrfTokenInputHandled"))}))}})),define("WoltLabSuite/Core/Ui/Screen",["require","exports","tslib","../Core","../Environment"],(function(e,t,n,i,o){"use strict";function r(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Expected a non-empty string for parameter 'query'.");h.has(e)&&(e=h.get(e)),p.has(e)&&(e=p.get(e));let t=s.get(e);return t||(t={callbacksMatch:new Map,callbacksUnmatch:new Map,callbacksSetup:new Map,mql:window.matchMedia(e)},t.mql.addListener(a),s.set(e,t),e!==t.mql.media&&h.set(t.mql.media,e)),t}function a(e){const t=r(e.media);if(e.matches)t.callbacksSetup.size?(t.callbacksSetup.forEach((e=>{e()})),t.callbacksSetup=new Map):t.callbacksMatch.forEach((e=>{e()}));else{if(t.callbacksSetup.size)return;t.callbacksUnmatch.forEach((e=>{e()}))}}Object.defineProperty(t,"__esModule",{value:!0}),t.setDialogContainer=t.pageOverlayIsActive=t.pageOverlayClose=t.pageOverlayOpen=t.scrollEnable=t.scrollDisable=t.is=t.remove=t.on=void 0,i=n.__importStar(i),o=n.__importStar(o);const s=new Map;let l,c=0,d=0,u=0;const p=new Map(Object.entries({"screen-xs":"(max-width: 544px)","screen-sm":"(min-width: 545px) and (max-width: 768px)","screen-sm-down":"(max-width: 768px)","screen-sm-up":"(min-width: 545px)","screen-sm-md":"(min-width: 545px) and (max-width: 1024px)","screen-md":"(min-width: 769px) and (max-width: 1024px)","screen-md-down":"(max-width: 1024px)","screen-md-up":"(min-width: 769px)","screen-lg":"(min-width: 1025px)","screen-lg-only":"(min-width: 1025px) and (max-width: 1280px)","screen-lg-down":"(max-width: 1280px)","screen-xl":"(min-width: 1281px)"})),h=new Map;t.on=function(e,t){const n=i.getUuid(),o=r(e);return"function"==typeof t.match&&o.callbacksMatch.set(n,t.match),"function"==typeof t.unmatch&&o.callbacksUnmatch.set(n,t.unmatch),"function"==typeof t.setup&&(o.mql.matches?t.setup():o.callbacksSetup.set(n,t.setup)),n},t.remove=function(e,t){const n=r(e);n.callbacksMatch.delete(t),n.callbacksUnmatch.delete(t),n.callbacksSetup.delete(t)},t.is=function(e){return r(e).mql.matches},t.scrollDisable=function(){if(0===c){d=document.body.scrollTop,l="body",d||(d=document.documentElement.scrollTop,l="documentElement");const e=document.getElementById("pageContainer");"ios"===o.platform()?(e.style.setProperty("position","relative",""),e.style.setProperty("top",`-${d}px`,"")):e.style.setProperty("margin-top",`-${d}px`,""),document.documentElement.classList.add("disableScrolling")}c++},t.scrollEnable=function(){if(c&&(c--,0===c)){document.documentElement.classList.remove("disableScrolling");const e=document.getElementById("pageContainer");"ios"===o.platform()?(e.style.removeProperty("position"),e.style.removeProperty("top")):e.style.removeProperty("margin-top"),d&&window.setTimeout((()=>{document[l].scrollTop=~~d}),0)}},t.pageOverlayOpen=function(){0===u&&document.documentElement.classList.add("pageOverlayActive"),u++},t.pageOverlayClose=function(){u&&(u--,0===u&&document.documentElement.classList.remove("pageOverlayActive"))},t.pageOverlayIsActive=function(){return u>0},t.setDialogContainer=function(e){}})),define("WoltLabSuite/Core/Ui/Dialog",["require","exports","tslib","../Core","../Dom/Change/Listener","./Screen","../Dom/Util","../Language","../Environment","../Event/Handler","./CloseOverlay","focus-trap"],(function(e,t,n,i,o,r,a,s,l,c,d,u){"use strict";i=n.__importStar(i),o=n.__importDefault(o),r=n.__importStar(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importStar(c),d=n.__importDefault(d);let p,h=null;const f=new Map;let m=!1;const g=new WeakMap,b=new Map;let v;const w=["onBeforeClose","onClose","onShow"],y=["number","password","search","tel","text","url"],_={setup(){p=document.createElement("div"),p.classList.add("dialogOverlay"),p.setAttribute("aria-hidden","true"),p.addEventListener("mousedown",(e=>this._closeOnBackdrop(e))),p.addEventListener("wheel",(e=>{e.target===p&&e.preventDefault()}),{passive:!1}),document.getElementById("content").appendChild(p),v=e=>{if("Escape"===e.key){const t=e.target;if("INPUT"!==t.nodeName&&"TEXTAREA"!==t.nodeName){const e=f.get(h);return!e.closable||("function"==typeof e.onBeforeClose?(e.onBeforeClose(h),!1):(this.close(h),!1))}}return!0},r.on("screen-xs",{match(){m=!0},unmatch(){m=!1},setup(){m=!0}}),this._initStaticDialogs(),o.default.add("Ui/Dialog",(()=>{this._initStaticDialogs()})),window.addEventListener("resize",(()=>{f.forEach((e=>
1{i.stringToBool(e.dialog.getAttribute("aria-hidden"))||this.rebuild(e.dialog.dataset.id||"")}))}))},_initStaticDialogs(){document.querySelectorAll(".jsStaticDialog").forEach((e=>{e.classList.remove("jsStaticDialog");const t=e.dataset.dialogId||"";if(t){const n=document.getElementById(t);null!==n&&(n.classList.remove("jsStaticDialogContent"),n.dataset.isStaticDialog="true",a.default.hide(n),e.addEventListener("click",(e=>{e.preventDefault(),this.openStatic(n.id,null,{title:n.dataset.title||""})})))}}))},open(t,o){let r=g.get(t);if(r&&i.isPlainObject(r))return this.openStatic(r.id,void 0===o?null:o);if("function"!=typeof t._dialogSetup)throw new Error("Callback object does not implement the method '_dialogSetup()'.");const s=t._dialogSetup();if(!i.isPlainObject(s))throw new Error("Expected an object literal as return value of '_dialogSetup()'.");const l=s.id;let c;if(r={id:l},void 0===s.source){if(c=document.getElementById(l),null===c)throw new Error("Element id '"+l+"' is invalid and no source attribute was given. If you want to use the `html` argument instead, please add `source: null` to your dialog configuration.");s.source=document.createDocumentFragment(),s.source.appendChild(c),c.removeAttribute("id"),a.default.show(c)}else if(null===s.source)s.source=o;else if("function"==typeof s.source)s.source();else if(i.isPlainObject(s.source)){if("string"!=typeof o||""===o.trim())return new Promise(((t,n)=>{e(["../Ajax"],t,n)})).then(n.__importStar).then((e=>{const n=s.source;e.api(this,n.data,(e=>{e.returnValues&&"string"==typeof e.returnValues.template&&(this.open(t,e.returnValues.template),"function"==typeof n.after&&n.after(f.get(l).content,e))}))})),{};s.source=o}else if("string"==typeof s.source&&(c=document.createElement("div"),c.id=l,a.default.setInnerHtml(c,s.source),s.source=document.createDocumentFragment(),s.source.appendChild(c)),!s.source.nodeType||s.source.nodeType!==Node.DOCUMENT_FRAGMENT_NODE)throw new Error("Expected at least a document fragment as 'source' attribute.");return g.set(t,r),b.set(l,t),this.openStatic(l,s.source,s.options)},openStatic(t,o,a){this.isOpen(t)||r.pageOverlayOpen(),"desktop"!==l.platform()&&(this.isOpen(t)||r.scrollDisable()),f.has(t)?this._updateDialog(t,o):((a=i.extend({backdropCloseOnClick:!0,closable:!0,closeButtonLabel:s.get("wcf.global.button.close"),closeConfirmMessage:"",disableContentPadding:!1,title:"",onBeforeClose:null,onClose:null,onShow:null},a||{})).closable||(a.backdropCloseOnClick=!1),a.closeConfirmMessage&&(a.onBeforeClose=t=>{new Promise(((t,n)=>{e(["./Confirmation"],t,n)})).then(n.__importStar).then((e=>{e.show({confirm:this.close.bind(this,t),message:a.closeConfirmMessage||""})}))}),this._createDialog(t,o,a));const c=f.get(t);return"ios"===l.platform()&&window.setTimeout((()=>{var e;null===(e=c.content.querySelector("input, textarea"))||void 0===e||e.focus()}),200),c},setTitle(e,t){e=this._getDialogId(e);const n=f.get(e);if(void 0===n)throw new Error("Expected a valid dialog id, '"+e+"' does not match any active dialog.");const i=n.dialog.querySelector(".dialogTitle");i&&(i.textContent=t)},setCallback(e,t,n){if("object"==typeof e){const t=g.get(e);void 0!==t&&(e=t.id)}const i=f.get(e);if(void 0===i)throw new Error(`Expected a valid dialog id, '${e}' does not match any active dialog.`);if(-1===w.indexOf(t))throw new Error("Invalid callback identifier, '"+t+"' is not recognized.");if("function"!=typeof n&&null!==n)throw new Error("Only functions or the 'null' value are acceptable callback values ('"+typeof n+"' given).");i[t]=n},removeCallback(e,t){if("object"==typeof e){const t=g.get(e);void 0!==t&&(e=t.id)}const n=f.get(e);if(void 0===n)throw new Error(`Expected a valid dialog id, '${e}' does not match any active dialog.`);if(-1===w.indexOf(t))throw new Error("Invalid callback identifier, '"+t+"' is not recognized.");n[t]=void 0},_createDialog(e,t,n){let i=null;if(null===t&&(i=document.getElementById(e),null===i))throw new Error("Expected either a HTML string or an existing element id.");const o=document.createElement("div");o.classList.add("dialogContainer"),o.setAttribute("aria-hidden","true"),o.setAttribute("role","dialog"),o.dataset.id=e;const r=document.createElement("header");o.appendChild(r);const s=a.default.getUniqueId();o.setAttribute("aria-labelledby",s);const l=document.createElement("span");
1if(l.classList.add("dialogTitle"),l.textContent=n.title,l.id=s,r.appendChild(l),n.closable){const e=document.createElement("a");e.className="dialogCloseButton jsTooltip",e.href="#",e.setAttribute("role","button"),e.tabIndex=0,e.title=n.closeButtonLabel,e.setAttribute("aria-label",n.closeButtonLabel),e.addEventListener("click",(e=>this._close(e))),r.appendChild(e);const t=document.createElement("span");t.className="icon icon24 fa-times",e.appendChild(t)}new ResizeObserver((e=>{if("false"===o.getAttribute("aria-hidden"))for(const t of e){let e;if(t.contentBoxSize){e=(Array.isArray(t.contentBoxSize)?t.contentBoxSize[0]:t.contentBoxSize).inlineSize}else e=t.contentRect.width;const n=Math.floor(e/2);o.style.setProperty("--translate-x",`-${n}px`)}})).observe(o);const c=document.createElement("div");let d;if(c.classList.add("dialogContent"),n.disableContentPadding&&c.classList.add("dialogContentNoPadding"),o.appendChild(c),c.addEventListener("wheel",(e=>{let t,n,i,o=!1,r=e.target;for(;;){if(t=r.clientHeight,n=r.scrollHeight,t<n){if(i=r.scrollTop,e.deltaY<0&&i>0){o=!0;break}if(e.deltaY>0&&i+t<n){o=!0;break}}if(!r||r===c)break;r=r.parentNode}o||e.preventDefault()}),{passive:!1}),null===i)if("string"==typeof t)d=document.createElement("div"),d.id=e,a.default.setInnerHtml(d,t);else{if(!(t instanceof DocumentFragment))throw new TypeError("'html' must either be a string or a DocumentFragment");{const n=[];let i;for(let e=0,o=t.childNodes.length;e<o;e++)i=t.childNodes[e],i.nodeType===Node.ELEMENT_NODE&&n.push(i);"DIV"!==n[0].nodeName||n.length>1?(d=document.createElement("div"),d.id=e,d.appendChild(t)):d=n[0]}}else d=i;c.appendChild(d),"none"===d.style.getPropertyValue("display")&&a.default.show(d);const h=(0,u.createFocusTrap)(o,{allowOutsideClick:!0,escapeDeactivates:()=>(f.get(e).closable&&_.close(e),!1),fallbackFocus:o});f.set(e,{backdropCloseOnClick:n.backdropCloseOnClick,closable:n.closable,content:d,dialog:o,focusTrap:h,header:r,onBeforeClose:n.onBeforeClose,onClose:n.onClose,onShow:n.onShow,submitButton:null,inputFields:new Set}),p.insertBefore(o,p.firstChild),"function"==typeof n.onSetup&&n.onSetup(d),this._updateDialog(e,null)},_updateDialog(e,t){const n=f.get(e);if(void 0===n)throw new Error("Expected a valid dialog id, '"+e+"' does not match any active dialog.");if("string"==typeof t&&a.default.setInnerHtml(n.content,t),i.stringToBool(n.dialog.getAttribute("aria-hidden"))){d.default.execute(),n.closable&&i.stringToBool(p.getAttribute("aria-hidden"))&&window.addEventListener("keyup",v),n.dialog.parentNode.insertBefore(n.dialog,n.dialog.parentNode.firstChild),n.dialog.setAttribute("aria-hidden","false"),p.setAttribute("aria-hidden","false"),p.setAttribute("close-on-click",n.backdropCloseOnClick?"true":"false"),h=e;const t=n.header.querySelector(".dialogCloseButton");t&&t.setAttribute("inert","true"),t&&t.removeAttribute("inert"),"function"==typeof n.onShow&&n.onShow(n.content),i.stringToBool(n.content.dataset.isStaticDialog||"")&&c.fire("com.woltlab.wcf.dialog","openStatic",{content:n.content,id:e})}this.rebuild(e),o.default.trigger(),n.focusTrap.activate()},rebuild(e){const t=this._getDialogId(e),n=f.get(t);if(void 0===n)throw new Error("Expected a valid dialog id, '"+t+"' does not match any active dialog.");if(i.stringToBool(n.dialog.getAttribute("aria-hidden")))return;const o=n.content.parentNode,r=n.content.querySelector(".formSubmit");let s=0;null!==r?(o.classList.add("dialogForm"),r.classList.add("dialogFormSubmit"),s+=a.default.outerHeight(r),s-=1,o.style.setProperty("margin-bottom",`${s}px`,"")):(o.classList.remove("dialogForm"),o.style.removeProperty("margin-bottom")),s+=a.default.outerHeight(n.header);const l=window.innerHeight*(m?1:.8)-s;o.style.setProperty("max-height",~~l+"px","");const c=b.get(t);if(void 0!==c&&"function"==typeof c._dialogSubmit){const e=n.content.querySelectorAll('input[data-dialog-submit-on-enter="true"]'),i=n.content.querySelector('.formSubmit > input[type="submit"], .formSubmit > button[data-type="submit"]');if(null===i)return void(0===e.length&&console.warn("Broken dialog, expected a submit button.",n.content));if(n.submitButton!==i){n.submitButton=i,i.addEventListener("click",(e=>{e.preventDefault(),this._submit(t)}));const o=e=>{"Enter"===e.key&&(e.preventDefault(),this._submit(t))};let r;for(let t=0,i=e.length;t<i;t++)r=e[t],n.inputFields.has(r)||(-1!==y.indexOf(r.type)?(n.inputFields.add(r),r.addEventListener("keydown",o)):console.warn("Unsupported input type.",r))}}},_submit(e){const t=f.get(e);let n=!0;if(t.inputFields.forEach((e=>{var t,i;e.required&&(""===e.value.trim()?(a.default.innerError(e,s.get("wcf.global.form.error.empty")),null===(t=e.closest("dl"))||void 0===t||t.classList.add("formError"),n=!1):(a.default.innerError(e,!1),null===(i=e.closest("dl"))||void 0===i||i.classList.remove("formError")))})),n){const t=b.get(e);"function"==typeof t._dialogSubmit&&t._dialogSubmit()}},submit(e){this._submit(e)},_close(e){e.preventDefault();const t=f.get(h);return void 0===t||(!t.closable||("function"==typeof t.onBeforeClose?(t.onBeforeClose(h),!1):(this.close(h),!0)))},_closeOnBackdrop(e){e.target===p&&(i.stringToBool(p.getAttribute("close-on-click"))?this._close(e):e.preventDefault())},close(e){e=this._getDialogId(e);let t=f.get(e);if(void 0===t)throw new Error("Expected a valid dialog id, '"+e+"' does not match any active dialog.");try{t.focusTrap.deactivate()}catch(e){const t="Your focus-trap must have at least one container with at least one tabbable node in it at all times";if(e.message!==t)throw e}t.dialog.setAttribute("aria-hidden","true");const n=document.activeElement;n.closest(".dialogContainer")===t.dialog&&n.blur(),"function"==typeof t.onClose&&t.onClose(e),h=null;for(let e=0;e<p.childElementCount;e++){const t=p.children[e];if(!i.stringToBool(t.getAttribute("aria-hidden"))){h=t.dataset.id||"";break}}r.pageOverlayClose(),null===h?(p.setAttribute("aria-hidden","true"),p.dataset.closeOnClick="false",t.closable&&window.removeEventListener("keyup",v)):(t=f.get(h),p.dataset.closeOnClick=t.backdropCloseOnClick?"true":"false"),"desktop"!==l.platform()&&r.scrollEnable()},getDialog(e){return f.get(this._getDialogId(e))},isOpen(e){const t=this.getDialog(e);return void 0!==t&&"false"===t.dialog.getAttribute("aria-hidden")},destroy(e){if("object"!=typeof e)throw new TypeError("Expected the callback object as parameter.");if(g.has(e)){const t=g.get(e).id;this.isOpen(t)&&this.close(t),f.has(t)&&(f.get(t).dialog.remove(),f.delete(t)),g.delete(e)}},_getDialogId(e){if("object"==typeof e){const t=g.get(e);if(void 0!==t)return t.id}return e.toString()},_ajaxSetup:()=>({})};return _})),define("WoltLabSuite/Core/Ui/Dropdown/Simple",["require","exports","tslib","../../CallbackList","../../Core","../../Dom/Change/Listener","../../Dom/Traverse","../../Dom/Util","../Alignment","../CloseOverlay"],(function(e,t,n,i,o,r,a,s,l,c){"use strict";function d(e){const t=e.currentTarget,n=t.querySelectorAll(".dropdown.dropdownOpen");for(let e=0,i=n.length;e<i;e++){const i=n[e],o=s.default.identify(i),r=s.default.offset(i),a=s.default.offset(t);r.top+i.clientHeight<=a.top||r.top>=a.top+t.offsetHeight||r.left<=a.left||r.left>=a.left+t.offsetWidth?C.toggleDropdown(o):C.setAlignment(w.get(o),y.get(o))}}
1function u(){w.forEach(((e,t)=>{if(e.classList.contains("dropdownOpen"))if(o.stringToBool(e.dataset.isOverlayDropdownButton||""))C.setAlignment(e,y.get(t));else{const n=y.get(e.id);o.stringToBool(n.dataset.dropdownIgnorePageScroll||"")||C.close(t)}}))}function p(e,t){b.forEach(e,(n=>{n(e,t)}))}function h(e,t,n,i){let r=!1;if(null!==e){e.preventDefault(),e.stopPropagation();const n=e.currentTarget;t=n.dataset.target,void 0===i&&e instanceof MouseEvent&&(o.stringToBool(n.dataset.isKeyboardClick||"")?(r=!0,delete n.dataset.isKeyboardClick):i=!0)}S=!0;try{c.default.execute(c.Origin.DropDown,t)}finally{S=!1}let s=w.get(t),l=!1;if(void 0!==s){let n,r;if(e&&(n=e.currentTarget,r=n.parentNode,r!==s&&(r.classList.add("dropdown"),r.id=s.id,s.classList.remove("dropdown"),s.id="",s=r,w.set(t,r))),void 0===i&&(n=s.closest(".dropdownToggle"),n||(n=s.querySelector(".dropdownToggle"),!n&&s.id&&(n=document.querySelector('[data-target="'+s.id+'"]'))),n&&o.stringToBool(n.dataset.dropdownLazyInit||"")&&(i=!0)),o.stringToBool(s.dataset.dropdownPreventToggle||"")&&s.classList.contains("dropdownOpen")&&(l=!0),""===s.dataset.isOverlayDropdownButton){const e=a.parentByClass(s,"dialogContent");s.dataset.isOverlayDropdownButton=null!==e?"true":"false",null!==e&&e.addEventListener("scroll",d)}}return E="",w.forEach(((e,a)=>{const s=y.get(a);if(e.classList.contains("dropdownOpen"))if(l)E=t;else{e.classList.remove("dropdownOpen"),s.classList.remove("dropdownOpen");const t=e.querySelector(".dropdownToggle");t&&t.setAttribute("aria-expanded","false"),p(a,"close")}else if(a===t&&s.childElementCount>0){E=t,e.classList.add("dropdownOpen"),s.classList.add("dropdownOpen");const l=e.querySelector(".dropdownToggle");l&&l.setAttribute("aria-expanded","true");const c=s.childElementCount>0?s.children[0]:null;if(c&&o.stringToBool(c.dataset.scrollToActive||"")){delete c.dataset.scrollToActive;let e=null;for(let t=0,n=c.childElementCount;t<n;t++)if(c.children[t].classList.contains("active")){e=c.children[t];break}e&&(c.scrollTop=Math.max(e.offsetTop+e.clientHeight-s.clientHeight,0))}const d=s.querySelector(".scrollableDropdownMenu");null!==d&&d.classList[d.scrollHeight>d.clientHeight?"add":"remove"]("forceScrollbar"),p(a,"open");let u=null;if(!i){s.setAttribute("role","menu"),s.tabIndex=-1,s.removeEventListener("keydown",m),s.addEventListener("keydown",m);const e=Array.from(s.querySelectorAll("li")).filter((e=>e.clientHeight>0));u=e.find((e=>e.classList.contains("active")))||e[0]||null,e.forEach((e=>{e.setAttribute("role","menuitem"),e.tabIndex=-1}))}C.setAlignment(e,s,n),null!==u&&(u.focus(),r&&u.classList.add("focus-visible"))}})),null===e}function f(e){const t=e.currentTarget;"INPUT"!==t.nodeName&&("Enter"!==e.key&&"Space"!==e.key||(e.preventDefault(),t.dataset.requiresSynthethicClick?(t.dataset.isKeyboardClick="true",t.click()):h(e)))}function m(e){const t=document.activeElement;if("LI"===t.nodeName)if("ArrowDown"===e.key||"ArrowUp"===e.key||"End"===e.key||"Home"===e.key){e.preventDefault();const n=Array.from(t.closest(".dropdownMenu").querySelectorAll("li"));"ArrowUp"!==e.key&&"End"!==e.key||n.reverse();let i=null;const o=e=>!e.classList.contains("dropdownDivider")&&e.clientHeight>0;let r=n.indexOf(t);"End"!==e.key&&"Home"!==e.key||(r=-1);for(let e=r+1;e<n.length;e++)if(o(n[e])){i=n[e];break}null===i&&(i=n.find(o)||null),null!==i&&i.focus()}else if("Enter"===e.key||"Space"===e.key){e.preventDefault();let n=t;1!==n.childElementCount||"SPAN"!==n.children[0].nodeName&&"A"!==n.children[0].nodeName||(n=n.children[0]);const i=w.get(E),r=i.querySelector(".dropdownToggle"),a=i.dataset.a11yMouseEvent||"click";o.triggerEvent(n,a),r&&r.focus()}else if("Escape"===e.key||"Tab"===e.key){e.preventDefault();const t=w.get(E);let n=t.querySelector(".dropdownToggle");null!==n||t.classList.contains("dropdown")||(n=t),h(null,E),n&&n.focus()}}let g;i=n.__importDefault(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importDefault(s),l=n.__importStar(l),c=n.__importStar(c);const b=new i.default;let v=!1;const w=new Map,y=new Map;let _,E="",S=!1;const C={setup(){v||(v=!0,_=document.createElement("div"),_.className="dropdownMenuContainer",document.body.appendChild(_),g=document.getElementsByClassName("dropdownToggle"),C.initAll(),c.default.add("WoltLabSuite/Core/Ui/Dropdown/Simple",(()=>C.closeAll())),r.default.add("WoltLabSuite/Core/Ui/Dropdown/Simple",(()=>C.initAll())),document.addEventListener("scroll",u),window.addEventListener("resize",(()=>
1{w.forEach(((e,t)=>{e.classList.contains("dropdownOpen")&&C.setAlignment(e,y.get(t))}))}),{passive:!0}),window.bc_wcfSimpleDropdown=this)},initAll(){for(let e=0,t=g.length;e<t;e++)C.init(g[e],!1)},init(e,t){if(C.setup(),e.setAttribute("role","button"),e.tabIndex=0,e.setAttribute("aria-haspopup","true"),e.setAttribute("aria-expanded","false"),e.classList.contains("jsDropdownEnabled")||e.dataset.target)return!1;const n=a.parentByClass(e,"dropdown");if(null===n)throw new Error("Invalid dropdown passed, button '"+s.default.identify(e)+"' does not have a parent with .dropdown.");const i=a.nextByClass(e,"dropdownMenu");if(null===i)throw new Error("Invalid dropdown passed, button '"+s.default.identify(e)+"' does not have a menu as next sibling.");_.appendChild(i);const r=s.default.identify(n);if(!w.has(r)&&(e.classList.add("jsDropdownEnabled"),e.addEventListener("click",h),e.addEventListener("keydown",f),w.set(r,n),y.set(r,i),/^wcf\d+$/.test(r)||(i.dataset.source=r),i.childElementCount&&i.children[0].classList.contains("scrollableDropdownMenu"))){const e=i.children[0];e.dataset.scrollToActive="true";let t=null,n=null;e.addEventListener("wheel",(i=>{null===t&&(t=e.clientHeight),null===n&&(n=e.scrollHeight),(i.deltaY<0&&0===e.scrollTop||i.deltaY>0&&e.scrollTop+t===n)&&i.preventDefault()}),{passive:!1})}return e.dataset.target=r,t&&setTimeout((()=>{e.dataset.dropdownLazyInit=t instanceof MouseEvent?"true":"false",o.triggerEvent(e,"click"),setTimeout((()=>{delete e.dataset.dropdownLazyInit}),10)}),10),!0},initFragment(e,t){C.setup();const n=s.default.identify(e);w.has(n)||(w.set(n,e),_.appendChild(t),y.set(n,t))},registerCallback(e,t){b.add(e,t)},getDropdown:e=>w.get(e),getDropdownMenu:e=>y.get(e),toggleDropdown(e,t,n){h(null,e,t,n)},setAlignment(e,t,n){const i=e.querySelector(".dropdownToggle"),o=null!==i?i.parentNode:null;let r;o&&o.classList.contains("inputAddonTextarea")&&(r=i),l.set(t,n||e,{pointerClassNames:["dropdownArrowBottom","dropdownArrowRight"],refDimensionsElement:r||null,horizontal:"right"===t.dataset.dropdownAlignmentHorizontal?"right":"left",vertical:"top"===t.dataset.dropdownAlignmentVertical?"top":"bottom",allowFlip:t.dataset.dropdownAllowFlip||"both"})},setAlignmentById(e){const t=w.get(e);if(void 0===t)throw new Error("Unknown dropdown identifier '"+e+"'.");const n=y.get(e);C.setAlignment(t,n)},isOpen(e){const t=y.get(e);return void 0!==t&&t.classList.contains("dropdownOpen")},open(e,t,n){const i=y.get(e);void 0===i||i.classList.contains("dropdownOpen")||C.toggleDropdown(e,n,t)},close(e){const t=w.get(e);void 0!==t&&(t.classList.remove("dropdownOpen"),y.get(e).classList.remove("dropdownOpen"))},closeAll(){S||w.forEach(((e,t)=>{if(e.classList.contains("dropdownOpen")){e.classList.remove("dropdownOpen"),y.get(t).classList.remove("dropdownOpen");const n=e.querySelector(".dropdownToggle");n&&n.setAttribute("aria-expanded","false"),p(t,"close")}}))},destroy(e){var t;if(!w.has(e))return!1;try{C.close(e),null===(t=y.get(e))||void 0===t||t.remove()}catch(e){}return y.delete(e),w.delete(e),!0},_toggle:(e,t,n,i)=>h(e,t,n,i)};return C})),define("WoltLabSuite/Core/Ui/Dropdown/Reusable",["require","exports","tslib","./Simple"],(function(e,t,n,i){"use strict";function o(e){if(!r.has(e))throw new Error("Unknown dropdown identifier '"+e+"'");return r.get(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.toggleDropdown=t.registerCallback=t.getDropdownMenu=t.init=void 0,i=n.__importDefault(i);const r=new Map;let a=0;t.init=function(e,t){if(r.has(e))return;const n=document.createElement("div");n.id="reusableDropdownGhost"+a++,i.default.initFragment(n,t),r.set(e,n.id)},t.getDropdownMenu=function(e){return i.default.getDropdownMenu(o(e))},t.registerCallback=function(e,t){i.default.registerCallback(o(e),t)},t.toggleDropdown=function(e,t){i.default.toggleDropdown(o(e),t)}})),define("WoltLabSuite/Core/Ui/Page/Menu/Container",["require","exports","tslib","focus-trap","../../Screen","../../CloseOverlay","../../../Dom/Util"],(function(e,t,n,i,o,r,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PageMenuContainer=void 0,r=n.__importDefault(r),a=n.__importDefault(a);class s{constructor(e){this.container=document.createElement("div"),this.content=document.createElement("div"),this.focusTrap=void 0,this.provider=e,this.container.hidden=!0;const t=a.default.identify(this.provider.getMenuButton());r.default.add(`WoltLabSuite/Core/Ui/PageMenu/Container-${t}`,(()=>{this.container.hidden||this.close()}))}open(){r.default.execute(),this.buildElements(),0===this.content.childElementCount&&this.content.append(this.provider.getContent()),this.provider.getMenuButton().setAttribute("aria-expanded","true"),(0,o.pageOverlayOpen)(),(0,o.scrollDisable)(),this.container.hidden=!1,this.provider.wakeup(),this.getFocusTrap().activate()}close(){this.provider.getMenuButton().setAttribute("aria-expanded","fal
1se"),(0,o.pageOverlayClose)(),(0,o.scrollEnable)(),this.container.hidden=!0,this.getFocusTrap().deactivate(),this.provider.sleep()}toggle(){this.container.hidden?this.open():this.close()}getContent(){return this.content}buildElements(){this.container.classList.contains("pageMenuContainer")||(this.container.classList.add("pageMenuContainer"),this.container.hidden=!0,this.container.addEventListener("click",(e=>{e.target===this.container&&this.close()})),this.content.classList.add("pageMenuContent"),this.content.addEventListener("click",(e=>{e.stopPropagation()})),this.container.append(this.content),document.body.append(this.container))}getFocusTrap(){return void 0===this.focusTrap&&(this.focusTrap=(0,i.createFocusTrap)(this.content,{allowOutsideClick:!0})),this.focusTrap}}t.PageMenuContainer=s,t.default=s})),define("WoltLabSuite/Core/Ui/Page/Menu/Main",["require","exports","tslib","./Container","../../../Language","../../../Dom/Util","../../Dropdown/Simple"],(function(e,t,n,i,o,r,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PageMenuMain=void 0,i=n.__importDefault(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a);class s{constructor(e){this.menuItemBadges=new Map,this.mainMenu=document.querySelector(".mainMenu"),this.menuItemProvider=e,this.container=new i.default(this),this.callbackOpen=e=>{e.preventDefault(),e.stopPropagation(),this.container.toggle()},this.observer=new MutationObserver((e=>{let t=!1;e.forEach((e=>{(e.addedNodes.length>0||e.removedNodes.length>0||"characterData"===e.type)&&(t=!0)})),t&&this.refreshUnreadIndicator()})),this.watchForChanges()}enable(){this.mainMenu.setAttribute("aria-expanded","false"),this.mainMenu.setAttribute("aria-label",o.get("wcf.menu.page")),this.mainMenu.setAttribute("role","button"),this.mainMenu.tabIndex=0,this.mainMenu.addEventListener("click",this.callbackOpen),this.refreshUnreadIndicator()}disable(){this.container.close(),this.mainMenu.removeAttribute("aria-expanded"),this.mainMenu.removeAttribute("aria-label"),this.mainMenu.removeAttribute("role"),this.mainMenu.removeAttribute("tabindex"),this.mainMenu.removeEventListener("click",this.callbackOpen)}getContent(){const e=document.createElement("div");e.classList.add("pageMenuMainContainer"),e.addEventListener("scroll",(()=>this.updateOverflowIndicator(e)),{passive:!0}),e.append(this.buildMainMenu());const t=this.buildLanguageMenu();t&&e.append(t);const n=this.buildFooterMenu();n&&e.append(n);const i=new ResizeObserver((()=>this.updateOverflowIndicator(e)));Array.from(e.children).forEach((e=>{i.observe(e)}));const o=document.createDocumentFragment();return o.append(e),o}getMenuButton(){return this.mainMenu}sleep(){this.watchForChanges()}wakeup(){this.observer.disconnect(),this.refreshUnreadIndicator()}watchForChanges(){this.observer.observe(this.mainMenu,{childList:!0,subtree:!0})}buildMainMenu(){const e=this.mainMenu.querySelector(".boxMenu"),t=this.buildMenu(e);return t.setAttribute("aria-label",window.PAGE_TITLE),t.setAttribute("role","navigation"),this.showActiveMenuItem(t),t}showActiveMenuItem(e){const t=e.querySelector('.pageMenuMainItemLink[aria-current="page"]');if(t){let e=t;for(;e&&e.parentElement;)if(e=e.parentElement.closest(".pageMenuMainItemList"),e){e.hidden=!1;const t=e.previousElementSibling;null==t||t.setAttribute("aria-expanded","true")}const n=t.nextElementSibling;if(n){n.setAttribute("aria-expanded","true");n.nextElementSibling.hidden=!1}}}buildLanguageMenu(){const e=a.getDropdownMenu("pageLanguageContainer");if(void 0===e)return null;const t=[],n=new Map;Array.from(e.children).forEach((e=>{const i=e.dataset.languageCode,o=e.querySelector("span").textContent.trim();n.set(i,e.querySelector("a")),t.push({active:!1,children:[],counter:0,depth:1,identifier:i,title:o})}));const i=[{active:!1,children:t,counter:0,depth:0,identifier:"language",title:o.get("wcf.user.language")}],r=document.createElement("nav");return r.classList.add("pageMenuMainNavigation","pageMenuMainNavigationLanguage"),r.append(this.buildMenuItemList(i,!0)),r.querySelectorAll(".pageMenuMainItemList .pageMenuMainItemLabel[data-identifier]").forEach((e=>{e.addEventListener("click",(t=>{t.preventDefault();const i=e.dataset.identifier;n.get(i).click()}))})),r}buildFooterMenu(){const e=document.querySelector('.box[data-box-identifier="com.woltlab.wcf.FooterMenu"]');if(null===e)return null;const t=e.querySelector(".boxMenu"),n=this.buildMenu(t);n.classList.add("pageMenuMainNavigationFooter");const i=e.querySelector("nav").getAttribute("aria-label");return n.setAttribute("aria-label",i),n}buildMenu(e){const t=this.menuItemProvider.getMenuItems(e),n=document.createElement("nav");return n.classList.add("pageMenuMainNavigation"),n.append(this.buildMenuItemList(t,!1)),n}buildMenuItemList(e,t){const n=document.createElement("ul");return n.classList.add("pageMenuMainItemList"),e.filter((e=>
1!(!t&&!e.link&&0===e.children.length))).forEach((e=>{n.append(this.buildMenuItem(e,t))})),n}buildMenuItem(e,t){const n=document.createElement("li");if(n.dataset.depth=e.depth.toString(),n.classList.add("pageMenuMainItem"),e.link){const t=document.createElement("a");if(t.classList.add("pageMenuMainItemLink"),t.href=e.link,t.textContent=e.title,e.active&&t.setAttribute("aria-current","page"),e.identifier&&(t.dataset.identifier=e.identifier),e.openInNewWindow&&(t.target="_blank"),e.counter>0){const n=document.createElement("span");n.classList.add("pageMenuMainItemCounter","badge","badgeUpdate"),n.setAttribute("aria-hidden","true"),n.textContent=e.counter.toString(),null!==e.identifier&&this.menuItemBadges.set(e.identifier,n),t.append(n)}n.append(t)}else{const i=document.createElement("a");i.classList.add("pageMenuMainItemLabel"),i.href="#",i.textContent=e.title,e.identifier&&(i.dataset.identifier=e.identifier),t&&"language"!==e.identifier||(i.addEventListener("click",(e=>{e.preventDefault();i.nextElementSibling.click()})),i.setAttribute("aria-hidden","true")),n.append(i)}if(e.children.length){n.classList.add("pageMenuMainItemExpandable");const i=r.default.getUniqueId(),a=document.createElement("a");a.classList.add("pageMenuMainItemToggle"),a.tabIndex=0,a.setAttribute("role","button"),a.setAttribute("aria-expanded","false"),a.setAttribute("aria-controls",i),a.innerHTML='<span class="icon icon24 fa-angle-down" aria-hidden="true"></span>';let s=e.title;e.link&&(s=o.get("wcf.menu.page.button.toggle",{title:e.title})),a.setAttribute("aria-label",s);const l=this.buildMenuItemList(e.children,t);l.id=i,l.hidden=!0,a.addEventListener("click",(e=>{e.preventDefault(),this.toggleList(a,l)})),a.addEventListener("keydown",(e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),a.click())})),l.addEventListener("keydown",(e=>{"Escape"===e.key&&(e.preventDefault(),e.stopPropagation(),this.toggleList(a,l))})),n.append(a,l)}return n}toggleList(e,t){t.hidden?(e.setAttribute("aria-expanded","true"),t.hidden=!1):(e.setAttribute("aria-expanded","false"),t.hidden=!0,document.activeElement!==e&&e.focus())}refreshUnreadIndicator(){null!==this.mainMenu.querySelector(".boxMenuLinkOutstandingItems")?this.mainMenu.classList.add("pageMenuMobileButtonHasContent"):this.mainMenu.classList.remove("pageMenuMobileButtonHasContent");this.menuItemProvider.getMenuItems(this.mainMenu).forEach((e=>this.refreshUnreadBage(e)))}refreshUnreadBage(e){if(null!==e.identifier){const t=this.menuItemBadges.get(e.identifier);if(t)if(0===e.counter)t.remove(),this.menuItemBadges.delete(e.identifier);else{parseInt(t.textContent,10)!==e.counter&&(t.textContent=e.counter.toString())}}e.children.forEach((e=>this.refreshUnreadBage(e)))}updateOverflowIndicator(e){e.clientHeight<e.scrollHeight?(e.scrollTop>0?e.classList.add("pageMenuMainContainerOverflowTop"):e.classList.remove("pageMenuMainContainerOverflowTop"),e.clientHeight+e.scrollTop<e.scrollHeight?e.classList.add("pageMenuMainContainerOverflowBottom"):e.classList.remove("pageMenuMainContainerOverflowBottom")):e.classList.remove("pageMenuMainContainerOverflowTop","pageMenuMainContainerOverflowBottom")}}t.PageMenuMain=s,t.default=s})),define("WoltLabSuite/Core/Ui/User/Menu/Manager",["require","exports","tslib","../../Alignment","../../CloseOverlay","../../../Event/Handler","../../../Dom/Util","../../Screen"],(function(e,t,n,i,o,r,a,s){"use strict";function l(e){o.default.execute();const t=u(e);t.open();const n=e.getPanelButton();n.querySelector("a").setAttribute("aria-expanded","true"),n.classList.add("open");c(t.getElement(),n)}function c(e,t){if(i.set(e,t,{horizontal:"right"}),"fixed"===window.getComputedStyle(e).position&&null!==a.default.getFixedParent(t)){const{top:n,height:i}=t.getBoundingClientRect();e.style.setProperty("top",`${n+i}px`)}}function d(e){if(!m.has(e))return;const t=e.getPanelButton();if(!t.classList.contains("open"))return;u(e).close(),t.classList.remove("open"),t.querySelector("a").setAttribute("aria-expanded","false")}function u(e){if(!m.has(e)){const t=e.getView(),n=t.getElement();p().append(n),n.addEventListener("shouldClose",(()=>d(e))),m.set(e,t)}return m.get(e)}function p(){return void 0===h&&(h=document.createElement("div"),h.classList.add("dropdownMenuContainer"),document.body.append(h)),h}let h;
1Object.defineProperty(t,"__esModule",{value:!0}),t.registerProvider=t.getContainer=t.getUserMenuProviders=void 0,i=n.__importStar(i),o=n.__importDefault(o),r=n.__importStar(r),a=n.__importDefault(a),s=n.__importStar(s);const f=new Set,m=new Map;t.getUserMenuProviders=function(){return f},t.getContainer=p,t.registerProvider=function(e){0===f.size&&(o.default.add("WoltLabSuite/Ui/User/Menu",(()=>{f.forEach((e=>d(e)))})),r.add("com.woltlab.wcf.UserMenuMobile","more",(e=>{f.forEach((t=>{e.identifier===t.getIdentifier()&&l(t)}))})),window.addEventListener("resize",(()=>{f.forEach((e=>{const t=e.getPanelButton();if(t.classList.contains("open")){c(u(e).getElement(),t)}}))}),{passive:!0}),s.on("screen-md-down",{match(){f.forEach((e=>{e.getPanelButton().classList.contains("open")&&d(e)}))},setup(){f.forEach((e=>{e.getPanelButton().classList.contains("open")&&d(e)}))}})),function(e){f.add(e);const t=e.getPanelButton();t.addEventListener("click",(n=>{n.preventDefault(),n.stopPropagation(),t.classList.contains("open")?d(e):l(e)}))}(e)}})),define("WoltLabSuite/Core/Ui/User/Menu/ControlPanel",["require","exports","tslib","../../CloseOverlay","./Manager","focus-trap","../../Alignment","../../../Dom/Util"],(function(e,t,n,i,o,r,a,s){"use strict";function l(e,t){if(a.set(e,t,{horizontal:"right"}),"fixed"===window.getComputedStyle(e).position&&null!==s.default.getFixedParent(t)){const{top:n,height:i}=t.getBoundingClientRect();e.style.setProperty("top",`${n+i}px`)}}function c(){p.deactivate(),u.hidden=!0,d.classList.remove("open"),h.setAttribute("aria-expanded","false")}let d,u,p,h;Object.defineProperty(t,"__esModule",{value:!0}),t.setup=t.getElement=void 0,i=n.__importDefault(i),a=n.__importStar(a),s=n.__importDefault(s),t.getElement=function(){return u};let f=!1;t.setup=function(){if(!f){d=document.getElementById("userMenu"),u=d.querySelector(".userMenu"),h=d.querySelector("a"),i.default.add("WoltLabSuite/Core/Ui/User/Menu/ControlPanel",(()=>c())),(0,o.getContainer)().append(u),u.addEventListener("click",(e=>e.stopPropagation())),window.addEventListener("resize",(()=>{u.hidden||l(u,d)}),{passive:!0}),d.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),u.hidden?u.hidden&&(i.default.execute(),u.hidden=!1,d.classList.add("open"),h.setAttribute("aria-expanded","true"),p.activate(),l(u,d)):c()})),p=(0,r.createFocusTrap)(u,{allowOutsideClick:!0,escapeDeactivates:()=>(c(),!1),fallbackFocus:u});const e=u.querySelector(".userMenuFooterLink");e.addEventListener("click",(t=>{t.preventDefault(),e.closest("form").submit()})),f=!0}}})),define("WoltLabSuite/Core/Ui/Page/Menu/User",["require","exports","tslib","./Container","../../../Language","../../User/Menu/Manager","../../../Dom/Util","../../User/Menu/ControlPanel","../../../Event/Handler","../../Screen"],(function(e,t,n,i,o,r,a,s,l,c){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasValidUserMenu=t.PageMenuUser=void 0,i=n.__importDefault(i),o=n.__importStar(o),a=n.__importDefault(a),l=n.__importStar(l);class d{constructor(){this.activeTab=void 0,this.legacyUserPanels=new Map,this.userMenuProviders=new Map,this.tabOrigins=new Map,this.tabPanels=new Map,this.tabs=[],this.userMenu=document.querySelector(".userPanel"),this.container=new i.default(this);const e=new Promise((e=>{"complete"===document.readyState?e():document.addEventListener("readystatechange",(()=>{"complete"===document.readyState&&e()}))}));this.callbackOpen=t=>{t.preventDefault(),t.stopPropagation(),e.then((()=>this.container.toggle()))},(0,c.on)("screen-lg",{match:()=>this.detachViewsFromPanel(),unmatch:()=>this.detachViewsFromPanel()}),this.observer=new MutationObserver((()=>{this.refreshTabUnreadIndicators()}))}enable(){this.userMenu.setAttribute("aria-expanded","false"),this.userMenu.setAttribute("aria-label",o.get("wcf.menu.user")),this.userMenu.setAttribute("role","button"),this.userMenu.tabIndex=0,this.userMenu.addEventListener("click",this.callbackOpen),this.refreshUnreadIndicator()}disable(){this.container.close(),this.userMenu.removeAttribute("aria-expanded"),this.userMenu.removeAttribute("aria-label"),this.userMenu.removeAttribute("role"),this.userMenu.removeAttribute("tabindex"),this.userMenu.removeEventListener("click",this.callbackOpen)}getContent(){const e=document.createDocumentFragment();return e.append(this.buildTabMenu()),e}getMenuButton(){return this.userMenu}sleep(){this.activeTab&&this.closeTab(this.activeTab),this.detachViewsFromPanel(),this.refreshUnreadIndicator()}wakeup(){this.activeTab?this.openTab(this.activeTab):this.isInMaintenanceMode()?this.openTab(this.tabs[0]):this.openNotifications(),this.refreshTabUnreadIndicators(),this.refreshUnreadIndicator()}isInMaintenanceMode(){return"wcf"===document.body.dataset.application&&"offline"===document.body.dataset.template}openNotifications(){const e=this.tabs.find((e=>"userNotifications"===e.dataset.origin));if(!e)throw new Error("Unable to find the notifications tab.");this.openTab(e)}openTab(e){this.closeActiveTab(),e.setAttribute("aria-selected","true"),e.tabIndex=0;const t=this.tabPanels.get(e);t.hidden=!1,document.activeElement!==e&&e.focus(),this.attachViewToPanel(e),this.activeTab=e,this.observer.observe(t,{attributeFilter:["data-is-unread"],childList:!0,subtree:!0})}closeActiveTab(){this.activeTab&&(this.closeTab(this.activeTab),this.activeTab=void 0)}closeTab(e){e.setAttribute("aria-selected","false"),e.tabIndex=-1;this.tabPanels.get(e).hidden=!0;const t=this.legacyUserPanels.get(e);t&&t.close(),this.observer.disconnect(),this.refreshTabUnreadIndicators()}attachViewToPanel(e){const t=e.dataset.origin,n=this.tabPanels.get(e);if("userMenu"===t){const e=(0,s.getElement)();e.hidden=!1,0===n.childElementCount&&(this.tabOrigins.set(n,e.parentElement),n.append(e))}else if(0===n.childElementCount){const t=this.userMenuProviders.get(e);if(t){const e=t.getView(),i=e.getElement();this.tabOrigins.set(n,i.parentElement),n.append(i),e.open()}else{const t=this.legacyUserPanels.get(e);t.open();const{top:i}=n.getBoundingClientRect();t.getDropdown().getContainer()[0].style.setProperty("--offset-top",`${i}px`)}}}
1detachViewsFromPanel(){this.tabPanels.forEach(((e,t)=>{if(e.childElementCount){const n=this.tabOrigins.get(e);if(n){if("userMenu"===t.dataset.origin){const t=e.children[0];t.hidden=!0,n.append(t)}else{const e=this.userMenuProviders.get(t);if(e){const t=e.getView().getElement();t.hidden=!0,n.append(t)}}}}}))}keydown(e){const t=e.currentTarget;if("Enter"===e.key||" "===e.key)return e.preventDefault(),void this.openTab(t);if(!["ArrowLeft","ArrowRight","End","Home"].includes(e.key))return;e.preventDefault();const n=this.tabs.indexOf(t),i=this.tabs.length-1;let o;o="ArrowLeft"===e.key?0===n?i:n-1:"ArrowRight"===e.key?n===i?0:n+1:"End"===e.key?i:0,this.tabs[o].focus()}buildTabMenu(){const e=document.createElement("div");e.classList.add("pageMenuUserTabContainer");const t=document.createElement("div");return t.classList.add("pageMenuUserTabList"),t.setAttribute("role","tablist"),t.setAttribute("aria-label",o.get("wcf.menu.user")),e.append(t),this.buildControlPanelTab(t,e),(0,r.getUserMenuProviders)().forEach((n=>{const[i,o]=this.buildTab(n);t.append(i),e.append(o),this.tabs.push(i),this.tabPanels.set(i,o),this.userMenuProviders.set(i,n)})),this.buildLegacyTabs(t,e),e}buildTab(e){const t=e.getPanelButton(),n=t.querySelector("a"),i={icon:n.querySelector(".icon").outerHTML,label:n.dataset.title||n.title,origin:t.id};return this.buildTabComponents(i)}buildControlPanelTab(e,t){const n=document.getElementById("topMenu"),i=document.getElementById("userMenu"),o=i.querySelector("a"),r={icon:n.querySelector(".userPanelAvatar .userAvatarImage").outerHTML,label:o.dataset.title||o.title,origin:i.id},[a,s]=this.buildTabComponents(r);e.append(a),t.append(s),this.tabs.push(a),this.tabPanels.set(a,s)}buildLegacyTabs(e,t){const n=document.querySelector(".userPanelItems"),i={panels:[]};l.fire("com.woltlab.wcf.pageMenu","legacyMenu",i),Array.from(n.children).filter((e=>void 0!==i.panels.find((t=>t.element===e)))).map((e=>{const t=e.querySelector("a");return{icon:t.querySelector(".icon").outerHTML,label:t.dataset.title||t.title,origin:e.id}})).forEach((n=>{const[o,r]=this.buildTabComponents(n);e.append(o),t.append(r),this.tabs.push(o),this.tabPanels.set(o,r);const a=i.panels.find((e=>e.element.id===n.origin));this.legacyUserPanels.set(o,a.api)}))}buildTabComponents(e){const t=a.default.getUniqueId(),n=a.default.getUniqueId(),i=document.createElement("a");i.classList.add("pageMenuUserTab"),i.dataset.hasUnreadContent="false",i.dataset.origin=e.origin,i.id=t,i.setAttribute("aria-controls",n),i.setAttribute("aria-selected","false"),i.setAttribute("role","tab"),i.tabIndex=-1,i.setAttribute("aria-label",e.label),i.innerHTML=e.icon,i.addEventListener("click",(e=>{e.preventDefault(),this.openTab(i)})),i.addEventListener("keydown",(e=>this.keydown(e)));const o=document.createElement("div");return o.classList.add("pageMenuUserTabPanel"),o.id=n,o.hidden=!0,o.setAttribute("aria-labelledby",t),o.setAttribute("role","tabpanel"),o.tabIndex=0,[i,o]}refreshUnreadIndicator(){null!==this.userMenu.querySelector(".badge.badgeUpdate")?this.userMenu.classList.add("pageMenuMobileButtonHasContent"):this.userMenu.classList.remove("pageMenuMobileButtonHasContent")}refreshTabUnreadIndicators(){this.userMenuProviders.forEach(((e,t)=>{e.hasUnreadContent()?t.dataset.hasUnreadContent="true":t.dataset.hasUnreadContent="false"}))}}t.PageMenuUser=d,t.hasValidUserMenu=function(){return document.getElementById("topMenu").classList.contains("userPanelLoggedIn")},t.default=d}
1)),define("WoltLabSuite/Core/Ui/Mobile",["require","exports","tslib","focus-trap","../Core","../Dom/Change/Listener","../Dom/Util","../Environment","./Alignment","./CloseOverlay","./Dropdown/Reusable","./Page/Menu/Main","./Page/Menu/User","./Screen","../Language"],(function(e,t,n,i,o,r,a,s,l,c,d,u,p,h,f){"use strict";function m(){q=!0,g(),b(),h.on("screen-sm-down",{match(){document.querySelectorAll(".message").forEach((e=>{const t=e.querySelector(".jsMobileNavigation");if(t){const n=e.querySelector(".messageQuickOptions");n&&t.childElementCount&&v(n)}}))},unmatch(){document.querySelectorAll(".message").forEach((e=>{if(!R.has(e))return;const t=e.querySelector(".jsMobileNavigation");if(t){const n=e.querySelector(".messageQuickOptions");n&&t.childElementCount&&function(e){e.removeAttribute("tabindex"),e.removeAttribute("role"),e.removeAttribute("aria-label")}(n)}}))}}),F&&(H=new u.PageMenuMain(V),H.enable(),(0,p.hasValidUserMenu)()&&(W=new p.PageMenuUser,W.enable())),c.default.add("WoltLabSuite/Core/Ui/Mobile",w),r.default.add("WoltLabSuite/Core/Ui/Mobile",(()=>{g(),b()})),document.addEventListener("scroll",(()=>S()),{passive:!0})}function g(){document.querySelectorAll(".buttonGroupNavigation").forEach((e=>{if(e.classList.contains("jsMobileButtonGroupNavigation"))return;e.classList.add("jsMobileButtonGroupNavigation");const t=e.querySelector(".buttonList");if(0===t.childElementCount)return;e.parentElement.classList.add("hasMobileNavigation");const n=document.createElement("a");n.className="dropdownLabel";const i=document.createElement("span");i.className="icon icon24 fa-ellipsis-v",n.appendChild(i),n.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),e.classList.toggle("open")})),t.addEventListener("click",(function(t){t.stopPropagation(),e.classList.remove("open")})),e.insertBefore(n,e.firstChild)}))}function b(){const e=h.is("screen-sm-down");document.querySelectorAll(".message").forEach((t=>{if(R.has(t))return;const n=t.querySelector(".jsMobileNavigation");if(n){n.addEventListener("click",(e=>{e.stopPropagation(),window.setTimeout((()=>{n.classList.remove("open")}),10)}));const i=t.querySelector(".messageQuickOptions");i&&n.childElementCount&&(i.classList.add("active"),i.addEventListener("click",(e=>{const o=e.target;q&&h.is("screen-sm-down")&&"LABEL"!==o.nodeName&&"INPUT"!==o.nodeName&&(e.preventDefault(),e.stopPropagation(),C(t,i,n))})),i.addEventListener("keydown",(e=>{"Enter"===e.key&&(e.preventDefault(),i.click())})),e&&v(i))}R.add(t)}))}function v(e){e.tabIndex=0,e.setAttribute("role","button"),e.setAttribute("aria-label",f.get("wcf.global.button.more"))}function w(){document.querySelectorAll(".jsMobileButtonGroupNavigation.open, .jsMobileNavigation.open").forEach((e=>{e.classList.remove("open")})),q&&N&&S()}function y(){$=!0}function _(){$=!1,X.forEach((function(e){e.classList.remove("open")}))}function E(){X.forEach((function(e){e.addEventListener("mousedown",(function(t){$&&t.target===e&&(t.preventDefault(),e.classList.toggle("open"))}))})),$=!0}function S(){null==N||N.classList.remove("dropdownOpen")}function C(e,t,n){if(null===N)N=document.createElement("ul"),N.className="dropdownMenu",d.init("com.woltlab.wcf.jsMobileNavigation",N);else if(N.classList.contains("dropdownOpen")&&(S(),O.deactivate(),O=void 0,B===e))return;N.innerHTML="",c.default.execute(),T(n);const o=n.previousElementSibling;if(o&&o.classList.contains("messageFooterButtonsExtra")){const e=document.createElement("li");e.className="dropdownDivider",N.appendChild(e),T(o)}l.set(N,t,{horizontal:"right",allowFlip:"vertical"}),N.classList.add("dropdownOpen"),B=e,O=(0,i.createFocusTrap)(N,{allowOutsideClick:!0,escapeDeactivates:()=>(C(e,t,n),!1),setReturnFocus:t}),O.activate()}function L(){U=!0,document.querySelectorAll(".boxMenuHasChildren > a").forEach((e=>{e.addEventListener("touchstart",(t=>{U&&"false"===e.getAttribute("aria-expanded")&&(t.preventDefault(),e.setAttribute("aria-expanded","true"),e.addEventListener("touchend",(()=>{document.body.addEventListener("touchstart",(()=>{document.body.addEventListener("touchend",(t=>{const n=e.parentElement,i=t.target;
1n.contains(i)||i===n||e.setAttribute("aria-expanded","false")}),{once:!0})}),{once:!0})}),{once:!0}))}),{passive:!1})}))}function x(){U=!0}function k(){U=!1}function T(e){e.querySelectorAll(".button").forEach((e=>{if(e.classList.contains("ignoreMobileNavigation")||e.classList.contains("reactButton"))return;const t=document.createElement("li");e.classList.contains("active")&&(t.className="active");const n=e.querySelector("span:not(.icon)");t.innerHTML=`<a href="#">${n.textContent}</a>`,t.children[0].addEventListener("click",(function(t){t.preventDefault(),t.stopPropagation(),"A"===e.nodeName?e.click():o.triggerEvent(e,"click"),S()})),N.appendChild(t)}))}function M(){c.default.execute(),q=!0,F&&(H.enable(),null==W||W.enable())}function I(){Y&&j(Y,".messageGroupLink")}function D(){c.default.execute(),q=!1,F&&(H.disable(),null==W||W.disable())}function A(){Y&&P(Y),N&&S()}function j(e,t){Array.from(e).forEach((e=>{const n=e.parentElement;let i=n.querySelector(".mobileLinkShadow");if(null===i){const o=e.querySelector(t);o.href&&(i=document.createElement("a"),i.className="mobileLinkShadow",i.href=o.href,i.setAttribute("aria-labelledby",a.default.identify(o)),n.appendChild(i),n.classList.add("mobileLinkShadowContainer"))}}))}function P(e){Array.from(e).forEach((e=>{const t=e.parentElement;if(t.classList.contains("mobileLinkShadowContainer")){const e=t.querySelector(".mobileLinkShadow");null!==e&&e.remove(),t.classList.remove("mobileLinkShadowContainer")}}))}Object.defineProperty(t,"__esModule",{value:!0}),t.removeShadow=t.rebuildShadow=t.disableShadow=t.disable=t.enableShadow=t.enable=t.setup=void 0,o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importDefault(c),d=n.__importStar(d),h=n.__importStar(h),f=n.__importStar(f);let O,N=null,B=null,q=!1,U=!1,F=!1;const R=new WeakSet;let H,W,V,$=!1,Y=null;const X=[];t.setup=function(e,t){F=e,V=t,document.querySelectorAll(".boxesSidebarLeft").forEach((e=>{X.push(e)})),s.touch()&&document.documentElement.classList.add("touch"),"desktop"!==s.platform()&&document.documentElement.classList.add("mobile");const n=document.querySelector(".messageGroupList");n&&(Y=n.getElementsByClassName("messageGroup")),h.on("screen-md-down",{match:M,unmatch:D,setup:m}),h.on("screen-sm-down",{match:I,unmatch:A,setup:I}),h.on("screen-md-down",{match:y,unmatch:_,setup:E}),!s.touch()||"ios"!==s.platform()&&"android"!==s.platform()||h.on("screen-lg",{match:x,unmatch:k,setup:L})},t.enable=M,t.enableShadow=I,t.disable=D,t.disableShadow=A,t.rebuildShadow=j,t.removeShadow=P})),define("WoltLabSuite/Core/Ui/Page/Action",["require","exports","tslib","../../Core","../../Language","../../Ui/Screen"],(function(e,t,n,i,o,r){"use strict";function a(){if(document.documentElement.classList.contains("disableScrolling"))return;const e=window.pageYOffset;e!==g?(e>=b?(h.classList.contains("initiallyHidden")&&h.classList.remove("initiallyHidden"),h.setAttribute("aria-hidden","false")):h.setAttribute("aria-hidden","true"),l(),-1!==g&&f.classList[e<g?"remove":"add"]("scrolledDown"),g=-1):v()}function s(e){e.preventDefault();document.getElementById("top").scrollIntoView({behavior:"smooth"})}function l(){const e=Array.from(p.children).find((e=>"false"===e.getAttribute("aria-hidden")));p.classList[e?"add":"remove"]("active"),e?f.classList.add("pageActionHasContextButtons"):f.classList.remove("pageActionHasContextButtons")}function c(){if(m)return;m=!0,f=document.createElement("div"),f.className="pageAction",p=document.createElement("div"),p.className="pageActionButtons",f.appendChild(p),h=function(){const e=document.createElement("a");return e.className="button buttonPrimary pageActionButtonToTop initiallyHidden jsTooltip",e.href="",e.title=o.get("wcf.global.scrollUp"),e.setAttribute("aria-hidden","true"),e.innerHTML='<span class="icon icon32 fa-angle-up"></span>',e.addEventListener("click",s),e}(),f.appendChild(h),document.body.appendChild(f);const e=i.debounce(a,100);window.addEventListener("scroll",(()=>{-1===g&&(g=window.pageYOffset,window.setTimeout((()=>{a(),g=window.pageYOffset}),60)),e()}),{passive:!0}),window.addEventListener("touchstart",(()=>{-1!==g&&(g=-1)}),{passive:!0}),r.on("screen-sm-down",{match(){b=50},unmatch(){b=300},setup(){b=50}}),a()}function d(e){const t=u.get(e);if(t){t.parentElement.setAttribute("aria-hidden","true"),l()}}
1Object.defineProperty(t,"__esModule",{value:!0}),t.show=t.hide=t.remove=t.get=t.has=t.add=t.setup=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r);const u=new Map;let p,h,f,m=!1,g=-1,b=300;const v=i.debounce((()=>{g=-1}),50);t.setup=c,t.add=function(e,t,n){c();const i=document.createElement("div");i.className="pageActionButton",i.dataset.name=e,i.setAttribute("aria-hidden","true"),t.classList.add("button"),t.classList.add("buttonPrimary"),i.appendChild(t);let o=null;n&&(o=u.get(n)||null,o&&(o=o.parentElement)),!o&&p.childElementCount&&(o=p.children[0]),o||(o=p.firstChild),p.insertBefore(i,o),f.classList.remove("scrolledDown"),u.set(e,t),i.offsetParent,i.setAttribute("aria-hidden","false"),l()},t.has=function(e){return u.has(e)},t.get=function(e){return u.get(e)},t.remove=function(e){const t=u.get(e);if(void 0!==t){const n=t.parentElement,o=()=>{try{i.stringToBool(n.getAttribute("aria-hidden"))&&(p.removeChild(n),u.delete(e)),n.removeEventListener("transitionend",o)}catch(e){}};n.addEventListener("transitionend",o),d(e)}},t.hide=d,t.show=function(e){const t=u.get(e);if(t){const e=t.parentElement;e.classList.contains("initiallyHidden")&&e.classList.remove("initiallyHidden"),e.setAttribute("aria-hidden","false"),f.classList.remove("scrolledDown"),l()}}})),define("WoltLabSuite/Core/Ui/TabMenu/Simple",["require","exports","tslib","../../Core","../../Dom/Traverse","../../Dom/Util","../../Environment","../../Event/Handler"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importStar(s);class l{constructor(e){this.containers=new Map,this.isLegacy=!1,this.store=null,this.tabs=new Map,this.container=e}validate(){if(!this.container.classList.contains("tabMenuContainer"))return!1;const e=o.childByTag(this.container,"NAV");if(null===e)return!1;const t=e.querySelectorAll("li");if(0===t.length)return!1;o.childrenByTag(this.container,"DIV").forEach((e=>{let t=e.dataset.name;t||(t=r.default.identify(e),e.dataset.name=t),this.containers.set(t,e)}));const n=this.container.id;if(t.forEach((e=>{const t=this._getTabName(e);if(!t)return;if(this.tabs.has(t))throw new Error("Tab names must be unique, li[data-name='"+t+"'] (tab menu id: '"+n+"') exists more than once.");const i=this.containers.get(t);if(void 0===i)throw new Error("Expected content element for li[data-name='"+t+"'] (tab menu id: '"+n+"').");if(i.parentNode!==this.container)throw new Error("Expected content element '"+t+"' (tab menu id: '"+n+"') to be a direct children.");if(1!==e.childElementCount||"A"!==e.children[0].nodeName)throw new Error("Expected exactly one <a> as children for li[data-name='"+t+"'] (tab menu id: '"+n+"').");this.tabs.set(t,e)})),!this.tabs.size)throw new Error("Expected at least one tab (tab menu id: '"+n+"').");return this.isLegacy&&(this.container.dataset.isLegacy="true",this.tabs.forEac
1h((function(e,t){e.setAttribute("aria-controls",t)}))),!0}init(e){this.tabs.forEach((t=>{if(!e||e.get(t.dataset.name||"")!==t){const e=t.children[0];if(e.addEventListener("click",(e=>this._onClick(e))),"ios"===a.platform()){let t=!1;e.addEventListener("touchstart",(()=>{t=!0})),e.addEventListener("touchmove",(()=>{t=!1})),e.addEventListener("touchend",(e=>{t&&(t=!1,e.preventDefault(),this._onClick(e))}))}}}));let t=null;if(!e){const e=l.getIdentifierFromHash();let n;if(""!==e&&(n=this.tabs.get(e),n)){const e=this.container.parentElement;(null==e?void 0:e.classList.contains("tabMenuContainer"))&&(t=this.container)}if(!n){let e=this.container.dataset.preselect||this.container.dataset.active;"true"!==e&&e||(e=!0),!0===e?this.tabs.forEach((function(e){n||r.default.isHidden(e)||e.previousElementSibling&&!r.default.isHidden(e.previousElementSibling)||(n=e)})):"string"==typeof e&&"false"!==e&&(n=this.tabs.get(e))}n&&(this.containers.forEach((e=>{e.classList.add("hidden")})),this.select(null,n,!0));const i=this.container.dataset.store;if(i){const e=document.createElement("input");e.type="hidden",e.name=i,e.value=this.getActiveTab().dataset.name||"",this.container.appendChild(e),this.store=e}}return t}select(t,i,o){if(t=t?t.toString():"",!(i=i||this.tabs.get(t))){if(~~t==+t){t=~~t;let e=0;
1this.tabs.forEach((n=>{e===t&&(i=n),e++}))}if(!i)throw new Error(`Expected a valid tab name, '${t}' given (tab menu id: '${this.container.id}').`)}t=t||i.dataset.name||"";const r=this.getActiveTab();let a=null;if(r){const e=r.dataset.name;if(e===t)return;o||s.fire("com.woltlab.wcf.simpleTabMenu_"+this.container.id,"beforeSelect",{tab:r,tabName:e}),r.classList.remove("active"),a=this.containers.get(r.dataset.name||""),a.classList.remove("active"),a.classList.add("hidden"),this.isLegacy&&(r.classList.remove("ui-state-active"),a.classList.remove("ui-state-active"))}i.classList.add("active");const c=this.containers.get(t);if(c.classList.add("active"),c.classList.remove("hidden"),this.isLegacy&&(i.classList.add("ui-state-active"),c.classList.add("ui-state-active")),this.store&&(this.store.value=t),!o){s.fire("com.woltlab.wcf.simpleTabMenu_"+this.container.id,"select",{active:i,activeName:t,previous:r,previousName:r?r.dataset.name:null});const e=this.isLegacy&&"function"==typeof window.jQuery?window.jQuery:null;e&&e(this.container).trigger("wcftabsbeforeactivate",{newTab:e(i),oldTab:e(r),newPanel:e(c),oldPanel:e(a)});let n=window.location.href.replace(/#+[^#]*$/,"");l.getIdentifierFromHash()===t?n+=window.location.hash:n+="#"+t,window.history.replaceState(void 0,"",n)}new Promise(((t,n)=>{e(["../TabMenu"],t,n)})).then(n.__importStar).then((e=>{e.scrollToTab(i)}))}selectFirstVisible(){let e=null;
1return this.tabs.forEach((t=>{e||r.default.isHidden(t)||(e=t)})),e&&this.select(null,e,!1),null!==e}rebuild(){const e=new Map(this.tabs);this.validate(),this.init(e)}hasTab(e){return this.tabs.has(e)}_onClick(e){e.preventDefault();const t=e.currentTarget;this.select(null,t.parentNode)}_getTabName(e){let t=e.dataset.name||null;if(!t&&1===e.childElementCount&&"A"===e.children[0].nodeName){const n=e.children[0];/#([^#]+)$/.exec(n.href)&&(t=RegExp.$1,null===document.getElementById(t)?t=null:(this.isLegacy=!0,e.dataset.name=t))}return t}getActiveTab(){return document.querySelector("#"+this.container.id+" > nav > ul > li.active")}getContainers(){return this.containers}getTabs(){return this.tabs}static getIdentifierFromHash(){return/^#+([^/]+)+(?:\/.+)?/.exec(window.location.hash)?RegExp.$1:""}}return i.enableLegacyInheritance(l),l})),define("WoltLabSuite/Core/Ui/Scroll",["require","exports","tslib","../Dom/Util"],(function(e,t,n,i){"use strict";function o(){null!==s&&window.clearTimeout(s),s=window.setTimeout((()=>{null!==r&&r(),window.removeEventListener("scroll",o),r=null,s=null}),100)}Object.defineProperty(t,"__esModule",{value:!0}),t.element=void 0,i=n.__importDefault(i);let r=null,a=null,s=null;t.element=function(e,t,n="smooth"){if(!(e instanceof HTMLElement))throw new TypeError("Expected a valid DOM element.");if(void 0!==t&&"function"!=typeof t)throw new TypeError("Expected a valid callback function.");if(!document.body.contains(e))throw new Error("Element must be part of the visible DOM.");if(null!==r)throw new Error("Cannot scroll to element, a concurrent request is running.");t&&(r=t,window.addEventListener("scroll",o));let s=i.default.offset(e).top;if(null===a){a=50;const e=document.getElementById("pageHeaderPanel");if(null!==e){const t=window.getComputedStyle(e).position;a="fixed"===t||"static"===t?e.offsetHeight:0}}a>0&&(s<=a?s=0:s-=a);const l=window.pageYOffset;window.scrollTo({left:0,top:s,behavior:n}),window.setTimeout((()=>{l===window.pageYOffset&&o()}),100)}})),define("WoltLabSuite/Core/Ui/TabMenu",["require","exports","tslib","../Dom/Change/Listener","../Dom/Util","./TabMenu/Simple","./CloseOverlay","./Screen","./Scroll"],(function(e,t,n,i,o,r,a,s,l){"use strict";function c(){document.querySelectorAll(".tabMenuContainer:not(.staticTabMenuContainer)").forEach((e=>{const t=o.default.identify(e);if(w.has(t))return;let n=new r.default(e);if(!n.validate())return;const i=n.init();if(w.set(t,n),i instanceof HTMLElement){const e=m(i.parentNode.id);e&&(n=e,n.select(i.id,void 0,!0))}const a=document.querySelector("#"+t+" > nav > ul");a.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),e.target===a?(a.classList.add("active"),b=a):(a.classList.remove("active"),b=null)})),e.querySelectorAll(".tabMenu, .menu").forEach((e=>{function t(){n=null,f(e)}let n=null;e.querySelector("ul").addEventListener("scroll",(()=>{null!==n&&window.clearTimeout(n),n=window.setTimeout(t,10)}),{passive:!0})}));const s=e.closest("form");if(null!==s){const t=s.querySelector('input[type="submit"]');null!==t&&t.addEventListener("click",(t=>{if(!t.defaultPrevented)for(const n of e.querySelectorAll("input, select, textarea"))if(!n.checkValidity()){t.preventDefault();
1const e=m(n.closest(".tabMenuContainer").id),i=n.closest(".tabMenuContent");return e.select(i.dataset.name||""),void l.element(n,(()=>{n.reportValidity()}))}}))}}))}function d(){w.forEach((e=>{let t=!1;e.getContainers().forEach((n=>{t||null===n.querySelector(".formError")||(t=!0,e.select(n.id))}))}))}function u(e){v=!0,w.forEach((t=>{const n=t.getActiveTab();e?f(n.closest(".menu, .tabMenu")):g(n)}))}function p(){v=!1}function h(e,t,n,i,o,r){(r||t>0)&&(t-=15),n!==(t=t<0?0:Math.min(t,i-o))&&(e.classList.add("enableAnimation"),n<t?e.firstElementChild.style.setProperty("margin-left",n-t+"px",""):e.style.setProperty("padding-left",n-t+"px",""),setTimeout((()=>{e.classList.remove("enableAnimation"),e.firstElementChild.style.removeProperty("margin-left"),e.style.removeProperty("padding-left"),e.scrollLeft=t}),300))}function f(e){if(!v)return;const t=e.clientWidth,n=e.querySelector("ul"),i=n.scrollLeft,o=n.scrollWidth,r=i>0;let a=e.querySelector(".tabMenuOverlayLeft");r?(null===a&&(a=document.createElement("span"),a.className="tabMenuOverlayLeft icon icon24 fa-angle-left",a.addEventListener("click",(()=>{const e=n.clientWidth;h(n,n.scrollLeft-~~(e/2),n.scrollLeft,n.scrollWidth,e,!1)})),e.insertBefore(a,e.firstChild)),a.classList.add("active")):null!==a&&a.classList.remove("active");const s=t+i<o;let l=e.querySelector(".tabMenuOverlayRight");s?(null===l&&(l=document.createElement("span"),l.className="tabMenuOverlayRight icon icon24 fa-angle-right",l.addEventListener("click",(()=>{const e=n.clientWidth;h(n,n.scrollLeft+~~(e/2),n.scrollLeft,n.scrollWidth,e,!1)})),e.appendChild(l)),l.classList.add("active")):null!==l&&l.classList.remove("active")}function m(e){return w.get(e)}function g(e){if(!v)return;const t=e.closest("ul"),n=t.clientWidth,i=t.scrollLeft,o=t.scrollWidth;if(n===o)return;const r=e.offsetLeft;let a=!1;r<i&&(a=!0);let s=!1;if(!a){const t=n-(r-i);let o=e.clientWidth;null!==e.nextElementSibling&&(s=!0,o+=20),t<o&&(a=!0)}a&&h(t,r,i,o,n,s)}Object.defineProperty(t,"__esModule",{value:!0}),t.scrollToTab=t.getTabMenu=t.setup=t.selectErroneousTabs=void 0,i=n.__importDefault(i),o=n.__importDefault(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l);let b=null,v=!1;const w=new Map;t.selectErroneousTabs=d,t.setup=function(){c(),d(),i.default.add("WoltLabSuite/Core/Ui/TabMenu",c),a.default.add("WoltLabSuite/Core/Ui/TabMenu",(()=>{b&&(b.classList.remove("active"),b=null)})),s.on("screen-sm-down",{match(){u(!1)},unmatch:p,setup(){u(!0)}}),window.addEventListener("hashchange",(()=>{const e=r.default.getIdentifierFromHash(),t=e?document.getElementById(e):null;null!==t&&t.classList.contains("tabMenuContent")&&w.forEach((t=>{t.hasTab(e)&&t.select(e)}))}));const e=r.default.getIdentifierFromHash();e&&window.setTimeout((()=>{const t=document.getElementById(e);if(t&&t.classList.contains("tabMenuContent")){const e=window.scrollY||window.pageYOffset;if(e>0){const n=t.parentNode;let i=n.offsetTop-50;if(i<0&&(i=0),e>i){let e=o.default.offset(n).top;e<=50?e=0:e-=50,window.scrollTo(0,e)}}}}),100)},t.getTabMenu=m,t.scrollToTab=g})),define("WoltLabSuite/Core/Ui/Tooltip",["require","exports","tslib","../Dom/Change/Listener","../Environment","./Alignment"],(function(e,t,n,i,o,r){"use strict";function a(e){const t=e.currentTarget;let n=t.title.trim();""!==n&&(t.dataset.tooltip=n,t.setAttribute("aria-label",n),t.removeAttribute("title")),n=t.dataset.tooltip||"",u.style.removeProperty("top"),u.style.removeProperty("left"),n.length?(u.classList.add("active"),d.textContent=n,r.set(u,t,{horizontal:"center",verticalOffset:4,pointer:!0,pointerClassNames:["inverse"],vertical:"top"})):u.classList.remove("active")}function s(){u.classList.remove("active")}function l(){document.querySelectorAll(".jsTooltip").forEach((e=>{e.classList.remove("jsTooltip");const t=e.title.trim();t.length&&(e.dataset.tooltip=t,e.removeAttribute("title"),e.setAttribute("aria-label",t),e.addEventListener("mouseenter",a),e.addEventListener("mouseleave",s),e.addEventListener("click",s))}))}let c,d,u;Object.defineProperty(t,"__esModule",{value:!0}),t.init=t.setup=void 0,i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r),t.setup=function(){"desktop"===o.platform()&&(u=document.createElement("div"),u.id="balloonTooltip",u.classList.add("balloonTooltip"),u.addEventListener("transitionend",(()=>{u.classList.contains("active")||["bottom","left","right","top"].forEach((e=>{u.style.removeProperty(e)}))})),d=document.createElement("span"),d.id="balloonTooltipText",u.appendChild(d),c=document.createElement("span"),c.classList.add("elementPointer"),c.appendChild(document.createElement("span")),u.appendChild(c),document.body.appendChild(u),l(),i.default.add("WoltLabSuite/Core/Ui/Tooltip",l),window.addEventListener("scroll",s))},t.init=l})),define("WoltLabSuite/Core/Ui/Page/JumpTo",["require","exports","tslib","../../Language","../Dialog"],(function(e,t,n,i,o){"use strict";
1Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),o=n.__importDefault(o);class r{constructor(){this.elements=new Map}init(e,t){if(t){if("function"!=typeof t)throw new TypeError("Expected a valid function for parameter 'callback'.")}else{const n=e.dataset.link;t=n?e=>{window.location.href=n.replace(/pageNo=%d/,`pageNo=${e}`)}:()=>{}}this.elements.has(e)||e.querySelectorAll(".jumpTo").forEach((n=>{n.addEventListener("click",(t=>this.click(e,t))),this.elements.set(e,t)}))}click(e,t){t.preventDefault(),this.activeElement=e,o.default.open(this);const n=e.dataset.pages||"0";this.input.value=n,this.input.max=n,this.input.select(),this.description.textContent=i.get("wcf.page.jumpTo.description").replace(/#pages#/,n)}_keyUp(e){if("Enter"===e.key&&!this.submitButton.disabled)return void this.submit();const t=+this.input.value;this.submitButton.disabled=t<1||t>+this.input.max}submit(){this.elements.get(this.activeElement)(+this.input.value),o.default.close(this)}_dialogSetup(){const e=`<dl>\n <dt><label for="jsPaginationPageNo">${i.get("wcf.page.jumpTo")}</label></dt>\n <dd>\n <input type="number" id="jsPaginationPageNo" value="1" min="1" max="1" class="tiny">\n <small></small>\n </dd>\n </dl>\n <div class="formSubmit">\n <button class="buttonPrimary">${i.get("wcf.global.button.submit")}</button>\n </div>`;return{id:"paginationOverlay",options:{onSetup:e=>{this.input=e.querySelector("input"),this.input.addEventListener("keyup",(e=>this._keyUp(e))),this.description=e.querySelector("small"),this.submitButton=e.querySelector("button"),this.submitButton.addEventListener("click",(()=>this.submit()))},title:i.get("wcf.global.page.pagination")},source:e}}}let a=null;t.init=function(e,t){(null===a&&(a=new r),a).init(e,t)}})),define("WoltLabSuite/Core/Ui/Password",["require","exports","tslib","../Dom/Change/Listener","../Language"],(function(e,t,n,i,o){"use strict";function r(){document.querySelectorAll("input[type=password]").forEach((e=>{s.has(e)||function(e){var t;s.add(e);const n=document.activeElement,i=document.createElement("div");i.classList.add("inputAddon"),e.insertAdjacentElement("beforebegin",i),i.appendChild(e);const r=document.createElement("span");r.title=o.get("wcf.global.form.password.button.show"),r.classList.add("button","inputSuffix","jsTooltip"),r.setAttribute("role","button"),r.tabIndex=0,r.setAttribute("aria-hidden","true"),i.appendChild(r);const l=document.createElement("span");l.classList.add("icon","icon16","fa-eye"),r.appendChild(l),r.addEventListener("click",(()=>{a(e,r,l)})),r.addEventListener("keydown",(t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),a(e,r,l))})),null===(t=e.form)||void 0===t||t.addEventListener("submit",(()=>{"password"!==e.type&&a(e,r,l)})),n===e&&e.focus()}(e)}))}function a(e,t,n){"password"===e.type?(n.classList.remove("fa-eye"),n.classList.add("fa-eye-slash"),t.dataset.tooltip=o.get("wcf.global.form.password.button.hide"),e.type="text"):(n.classList.add("fa-eye"),n.classList.remove("fa-eye-slash"),t.dataset.tooltip=o.get("wcf.global.form.password.button.show"),e.type="password")}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importDefault(i),o=n.__importStar(o);const s=new WeakSet;t.setup=function(){r(),i.default.add("WoltLabSuite/Core/Ui/Password",(()=>r()))}})),define("WoltLabSuite/Core/Ui/Empty",["require","exports","tslib","../Dom/Change/Listener"],(function(e,t,n,i){"use strict";function o(){document.querySelectorAll(".jsReloadPageWhenEmpty").forEach((e=>{e.classList.remove("jsReloadPageWhenEmpty"),r.observe(e,{childList:!0})}))}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importDefault(i);const r=new MutationObserver((e=>{e.forEach((e=>{const t=e.target;if(0===t.childElementCount)window.location.reload();else{Array.from(t.children).every((e=>"ignore"===e.dataset.reloadPageWhenEmpty))&&window.location.reload()}}))}));t.setup=function(){o(),i.default.add("WoltLabSuite/Core/Ui/Empty",(()=>o()))}})),define("WoltLabSuite/Core/Ui/Confirmation",["require","exports","tslib","../Core","../Language","./Dialog"],(function(e,t,n,i,o,r){"use strict";function a(){return l||(l=new s),l}
1Object.defineProperty(t,"__esModule",{value:!0}),t.getContentElement=t.show=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r);class s{constructor(){this._active=!1,this.dialog=document.createElement("div"),this.dialog.id="wcfSystemConfirmation",this.dialog.classList.add("systemConfirmation"),this.text=document.createElement("p"),this.dialog.appendChild(this.text),this._content=document.createElement("div"),this._content.id="wcfSystemConfirmationContent",this.dialog.appendChild(this._content);const e=document.createElement("div");e.classList.add("formSubmit"),this.dialog.appendChild(e),this.confirmButton=document.createElement("button"),this.confirmButton.dataset.type="submit",this.confirmButton.classList.add("buttonPrimary"),this.confirmButton.textContent=o.get("wcf.global.confirmation.confirm"),e.appendChild(this.confirmButton);const t=document.createElement("button");t.textContent=o.get("wcf.global.confirmation.cancel"),t.addEventListener("click",(()=>{r.default.close(this)})),e.appendChild(t),document.body.appendChild(this.dialog)}open(e){this.parameters=e.parameters||{},this._content.innerHTML="string"==typeof e.template?e.template.trim():"",this.text[e.messageIsHtml?"innerHTML":"textContent"]=e.message,"function"==typeof e.legacyCallback?(this.callbackCancel=t=>{e.legacyCallback("cancel",t,this.content)},this.callbackConfirm=t=>{e.legacyCallback("confirm",t,this.content)}):("function"!=typeof e.cancel&&(e.cancel=()=>{}),this.callbackCancel=e.cancel,this.callbackConfirm=e.confirm),this._active=!0,r.default.open(this)}get active(){return this._active}get content(){return this._content}_confirm(){this.callbackConfirm(this.parameters,this.content),this._active=!1,r.default.close("wcfSystemConfirmation")}_onClose(){this.active&&(this.confirmButton.blur(),this._active=!1,this.callbackCancel(this.parameters))}_onShow(){window.setTimeout((()=>{this.confirmButton.blur(),this.confirmButton.focus()}),1)}_dialogSetup(){return{id:"wcfSystemConfirmation",options:{onClose:this._onClose.bind(this),onShow:this._onShow.bind(this),title:o.get("wcf.global.confirmation.title")}}}_dialogSubmit(){this._confirm()}}let l;t.show=function(e){if(!a().active){if((e=i.extend({cancel:null,confirm:null,legacyCallback:null,message:"",messageIsHtml:!1,parameters:{},template:""},e)).message="string"==typeof e.message?e.message.trim():"",!e.message)throw new Error("Expected a non-empty string for option 'message'.");if("function"!=typeof e.confirm&&"function"!=typeof e.legacyCallback)throw new TypeError("Expected a valid callback for option 'confirm'.");a().open(e)}},t.getContentElement=function(){return a().content}})),define("WoltLabSuite/Core/Ui/Object/Action",["require","exports","tslib","../../Ajax","../../Event/Handler","../Confirmation","../../Language","../../StringUtil","../../Dom/Change/Listener"],(function(e,t,n,i,o,r,a,s,l){"use strict";function c(e){function t(){i.apiOnce({data:{actionName:l,className:c,objectIDs:[d],parameters:h},success:e=>function(e,t){"reload"===e.dataset.objectActionSuccess?window.location.reload():o.fire("WoltLabSuite/Core/Ui/Object/Action",e.dataset.objectAction,{containerElement:e.closest(u),data:t,objectElement:e.closest(p)})}(n,e)})}e.preventDefault();const n=e.currentTarget,l=n.dataset.objectAction;let c=n.closest(u).dataset.objectActionClassName;n.dataset.objectActionClassName&&(c=n.dataset.objectActionClassName);let d=n.closest(p).dataset.objectId;n.dataset.objectId&&(d=n.dataset.objectId);const h={};Object.entries(n.dataset).forEach((([e,t])=>{let n=/^objectActionParameterData(.+)/.exec(e);if(n)Object.prototype.hasOwnProperty.call(h,"data")||(h.data={}),h.data[s.lcfirst(n[1])]=t;else if(n=/^objectActionParameter(.+)/.exec(e),n){const e=s.lcfirst(n[1]);if("data"===e)throw new Error("Additional object action parameters may not use 'data' as key.");h[e]=t}})),n.dataset.confirmMessage?r.show({confirm:t,message:a.get(n.dataset.confirmMessage),messageIsHtml:!0}):t()}function d(){document.querySelectorAll(`${u} ${p} ${h}`).forEach((e=>{f.has(e)||(e.addEventListener("click",(e=>c(e))),f.add(e))}))}
1Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importStar(s),l=n.__importDefault(l);const u=".jsObjectActionContainer[data-object-action-class-name]",p=".jsObjectActionObject[data-object-id]",h=".jsObjectAction[data-object-action]",f=new Set;t.setup=function(){d(),l.default.add("WoltLabSuite/Core/Ui/Action",(()=>d()))}})),define("WoltLabSuite/Core/Controller/Clipboard",["require","exports","tslib","../Ajax","../Core","../Dom/Change/Listener","../Dom/Util","../Event/Handler","../Language","../Ui/Confirmation","../Ui/Dropdown/Simple","../Ui/Page/Action","../Ui/Screen"],(function(e,t,n,i,o,r,a,s,l,c,d,u,p){"use strict";function h(){return g||(g=new m),g}Object.defineProperty(t,"__esModule",{value:!0}),t.unmark=t.showEditor=t.hideEditor=t.reload=t.setup=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importStar(c),d=n.__importDefault(d),u=n.__importStar(u),p=n.__importStar(p);const f='.messageCheckboxLabel > input[type="checkbox"], .message .messageClipboardCheckbox > input[type="checkbox"], .messageGroupList .columnMark > label > input[type="checkbox"]';class m{constructor(){this.containers=new Map,this.editors=new Map,this.editorDropdowns=new Map,this.itemData=new WeakMap,this.knownCheckboxes=new WeakSet,this.pageClassNames=[],this.pageObjectId=0,this.reloadPageOnSuccess=new Map}setup(e){if(!e.pageClassName)throw new Error("Expected a non-empty string for parameter 'pageClassName'.");let t=!1;0===this.pageClassNames.length&&(t=e.hasMarkedItems,this.pageObjectId=e.pageObjectId),this.pageClassNames.push(e.pageClassName),this.initContainers(),t&&this.containers.size&&this.loadMarkedItems(),r.default.add("WoltLabSuite/Core/Controller/Clipboard",(()=>this.initContainers()))}reload(){this.containers.size&&this.loadMarkedItems()}initContainers(){document.querySelectorAll(".jsClipboardContainer").forEach((e=>{const t=a.default.identify(e);let n=this.containers.get(t);if(void 0===n){const i=e.querySelector(".jsClipboardMarkAll");if(null!==i){if(i.matches(f)){const e=i.closest("label");e.setAttribute("role","checkbox"),e.tabIndex=0,e.setAttribute("aria-checked","false"),e.setAttribute("aria-label",l.get("wcf.clipboard.item.markAll")),e.addEventListener("keyup",(e=>{"Enter"!==e.key&&"Space"!==e.key||i.click()}))}i.dataset.containerId=t,i.addEventListener("click",(e=>this.markAll(e)))}n={checkboxes:e.getElementsByClassName("jsClipboardItem"),element:e,markAll:i,markedObjectIds:new Set},this.containers.set(t,n)}Array.from(n.checkboxes).forEach((e=>{if(this.knownCheckboxes.has(e))return;if(e.dataset.containerId=t,e.matches(f)){const t=e.closest("label");t.setAttribute("role","checkbox"),t.tabIndex=0,t.setAttribute("aria-checked","false"),t.setAttribute("aria-label",l.get("wcf.clipboard.item.mark")),t.addEventListener("keyup",(t=>{"Enter"!==t.key&&"Space"!==t.key||e.click()}))}null===e.closest("a")?e.addEventListener("click",(e=>this.mark(e))):e.addEventListener("click",(t=>{t.preventDefault(),window.setTimeout((()=>{e.checked=!e.checked,this.mark(e)}),10)})),this.knownCheckboxes.add(e)}))}))}loadMarkedItems(){i.api(this,{actionName:"getMarkedItems",parameters:{pageClassNames:this.pageClassNames,pageObjectID:this.pageObjectId}})}markAll(e){const t=e.currentTarget,n="INPUT"!==t.nodeName||t.checked;this.setParentAsMarked(t,n);const i=[],o=t.dataset.containerId,r=this.containers.get(o),a=r.element.dataset.type;Array.from(r.checkboxes).forEach((e=>{const o=~~e.dataset.objectId;n?e.checked||(e.checked=!0,r.markedObjectIds.add(o),i.push(o)):e.checked&&(e.checked=!1,r.markedObjectIds.delete(o),i.push(o)),this.setParentAsMarked(e,n);const a=t.closest(".jsClipboardObject");null!==a&&(n?a.classList.add("jsMarked"):a.classList.remove("jsMarked"))})),this.saveState(a,i,n)}mark(e){const t=e instanceof Event?e.currentTarget:e,n=~~t.dataset.objectId,i=t.checked,o=t.dataset.containerId,r=this.containers.get(o),a=r.element.dataset.type,s=t.closest(".jsClipboardObject");i?(r.markedObjectIds.add(n),s.classList.add("jsMarked")):(r.markedObjectIds.delete(n),s.classList.remove("jsMarked")),null!==r.markAll&&(r.markAll.checked=!Array.from(r.checkboxes).some((e=>!e.checked)),this.setParentAsMarked(r.markAll,i)),this.setParentAsMarked(t,t.checked),this.saveState(a,[n],i)}saveState(e,t,n){i.api(this,{actionName:n?"mark":"unmark",parameters:{pageClassNames:this.pageClassNames,pageObjectID:this.pageObjectId,objectIDs:t,objectType:e}})}executeAction(e){function t(){const e=n.dataset.type;s.fire("com.woltlab.wcf.clipboard",e,{data:i,listItem:n,responseData:null})}const n=e.currentTarget,i=this.itemData.get(n);if(i.url)return void(window.location.href=i.url);const r="string"==typeof i.internalData.confirmMessage?i.internalData.confirmMessage:"";let a=!0;if(o.isPlainObject(i.parameters)&&i.parameters.actionName&&i.parameters.className){if("unmarkAll"===i.parameters.actionName||Array.isArray(i.parameters.objectIDs))if(r.length){const e="string"==typeof i.internalData.template?i.internalData.template:"";c.show({confirm:()=>{const t={};e.length&&c.getContentElement().querySelectorAll("input, select, textarea").forEach((e=>{const n=e.name;switch(e.nodeName){case"INPUT":("checkbox"!==e.type&&"radio"!==e.type||e.checked)&&(t[n]=e.value);break;case"SELECT":t[n]=e.value;break;case"TEXTAREA":t[n]=e.value.trim()}})),this.executeProxyAction(n,i,t)},message:r,template:e})}else this.executeProxyAction(n,i)}else r.length&&(a=!1,c.show({confirm:t,message:r}));a&&t()}executeProxyAction(e,t,n={}){const r="unmarkAll"!==t.parameters.actionName?t.parameters.objectIDs:[],a={data:n};o.isPlainObject(t.internalData.parameters)&&Object.entries(t.internalData.parameters).forEac
1h((([e,t])=>{a[e]=t})),i.api(this,{actionName:t.parameters.actionName,className:t.parameters.className,objectIDs:r,parameters:a},(n=>{if("unmarkAll"!==t.actionName){const i=e.dataset.type;s.fire("com.woltlab.wcf.clipboard",i,{data:t,listItem:e,responseData:n});const o=this.reloadPageOnSuccess.get(i);if(o&&o.includes(n.actionName))return void window.location.reload()}this.loadMarkedItems()}))}unmarkAll(e){const t=e.currentTarget;i.api(this,{actionName:"unmarkAll",parameters:{objectType:t.dataset.type}})}_ajaxSetup(){return{data:{className:"wcf\\data\\clipboard\\item\\ClipboardItemAction"}}}_ajaxSuccess(e){if("unmarkAll"===e.actionName){const t=e.returnValues.objectType;return void this.containers.forEach((e=>{e.element.dataset.type===t&&(e.element.querySelectorAll(".jsMarked").forEach((e=>e.classList.remove("jsMarked"))),null!==e.markAll&&(e.markAll.checked=!1,this.setParentAsMarked(e.markAll,!1)),Array.from(e.checkboxes).forEach((e=>{e.checked=!1,this.setParentAsMarked(e,!1)})),u.remove(`wcfClipboard-${t}`))}))}this.itemData=new WeakMap,this.reloadPageOnSuccess.clear();const t=o.isPlainObject(e.returnValues.markedItems)?e.returnValues.markedItems:{};this.containers.forEach((e=>{const n=e.element.dataset.type,i=Array.isArray(t[n])?t[n]:[];this.rebuildMarkings(e,i)}));const n=Object.keys(e.returnValues.items||{});this.editors.forEach(((e,t)=>{n.includes(t)||(u.remove(`wcfClipboard-${t}`),this.editorDropdowns.get(t).innerHTML="")})),e.returnValues.items&&Object.entries(e.returnValues.items).forEach((([e,t])=>{this.reloadPageOnSuccess.set(e,t.reloadPageOnSuccess);let i=!1,o=this.editors.get(e),r=this.editorDropdowns.get(e);void 0===o?(i=!0,o=document.createElement("a"),o.className="dropdownToggle",o.textContent=t.label,this.editors.set(e,o),r=document.createElement("ol"),r.className="dropdownMenu",this.editorDropdowns.set(e,r)):(o.textContent=t.label,r.innerHTML=""),Object.values(t.items).forEach((t=>{const n=document.createElement("li"),i=document.createElement("span");i.textContent=t.label,n.appendChild(i),r.appendChild(n),n.dataset.type=e,n.addEventListener("click",(e=>this.executeAction(e))),this.itemData.set(n,t)}));const a=document.createElement("li");a.classList.add("dropdownDivider"),r.appendChild(a);const s=document.createElement("li");s.dataset.type=e;const c=document.createElement("span");if(c.textContent=l.get("wcf.clipboard.item.unmarkAll"),s.appendChild(c),s.addEventListener("click",(e=>this.unmarkAll(e))),r.appendChild(s),-1!==n.indexOf(e)){const t=`wcfClipboard-${e}`;u.has(t)?u.show(t):u.add(t,o)}if(i){const e=o.parentElement;e.classList.add("dropdown"),e.appendChild(r),d.default.init(o)}}))}rebuildMarkings(e,t){var n;let i=!0;if(Array.from(e.checkboxes).forEach((e=>{const n=e.closest(".jsClipboardObject"),o=t.includes(~~e.dataset.objectId);o||(i=!1),e.checked=o,o?n.classList.add("jsMarked"):n.classList.remove("jsMarked"),this.setParentAsMarked(e,o)})),null!==e.markAll){e.markAll.checked=i,this.setParentAsMarked(e.markAll,i);const t=null===(n=e.markAll.closest(".columnMark"))||void 0===n?void 0:n.parentNode;t&&(i?t.classList.add("jsMarked"):t.classList.remove("jsMarked"))}}setParentAsMarked(e,t){const n=e.parentElement;"checkbox"===n.getAttribute("role")&&n.setAttribute("aria-checked",t?"true":"false")}hideEditor(e){u.remove("wcfClipboard-"+e),p.pageOverlayOpen()}showEditor(){this.loadMarkedItems(),p.pageOverlayClose()}unmark(e,t){this.saveState(e,t,!1)}}let g;t.setup=function(e){h().setup(e)},t.reload=function(){h().reload()},t.hideEditor=function(e){h().hideEditor(e)},t.showEditor=function(){h().showEditor()},t.unmark=function(e,t){h().unmark(e,t)}})),define("WoltLabSuite/Core/Ui/Object/Action/Handler",["require","exports","tslib","../../../Event/Handler","../../../Controller/Clipboard"],(function(e,t,n,i,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),i=n.__importStar(i),o=n.__importStar(o);t.default=class{constructor(e,t,n){this.objectAction=n,i.add("WoltLabSuite/Core/Ui/Object/Action",e,(e=>this.handleObjectAction(e))),document.querySelectorAll(".jsClipboardContainer[data-type]").forEach((e=>{i.add("com.woltlab.wcf.clipboard",e.dataset.type,(e=>{null!==e.responseData&&-1!==t.indexOf(e.responseData.actionName)&&this.handleClipboardAction(e)}))}))}handleClipboardAction(e){const t=e.listItem.dataset.type;document.querySelectorAll(`.jsClipboardContainer[data-type="${t}"] .jsClipboardObject`).forEach((t=>{const n=t.dataset.objectId;e.responseData.objectIDs.forEach((i=>
1{~~i==~~n&&this.objectAction({containerElement:t.closest(".jsObjectActionContainer"),data:e.responseData,objectElement:t})}))}))}handleObjectAction(e){this.objectAction(e),o.reload()}}})),define("WoltLabSuite/Core/Ui/Object/Action/Delete",["require","exports","tslib","./Handler"],(function(e,t,n,i){"use strict";function o(e){const t=e.objectElement.querySelector('.jsObjectAction[data-object-action="delete"]');if(!t||t.dataset.objectActionHandler)return;const n=e.objectElement.querySelector(".jsObjectActionObjectChildren");n&&Array.from(n.children).forEach((t=>{e.objectElement.insertAdjacentElement("beforebegin",t)})),e.objectElement.remove()}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importDefault(i),t.setup=function(){new i.default("delete",["delete"],o)}})),define("WoltLabSuite/Core/Ui/Object/Action/Toggle",["require","exports","tslib","../../../Language","./Handler"],(function(e,t,n,i,o){"use strict";function r(e){const t=e.objectElement.querySelector('.jsObjectAction[data-object-action="toggle"]');if(t&&!t.dataset.objectActionHandler)if(t.classList.contains("fa-square-o")){t.classList.replace("fa-square-o","fa-check-square-o");const e=t.dataset.disableTitle||i.get("wcf.global.button.disable");t.title=e}else{t.classList.replace("fa-check-square-o","fa-square-o");const e=t.dataset.enableTitle||i.get("wcf.global.button.enable");t.title=e}}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importStar(i),o=n.__importDefault(o),t.setup=function(){new o.default("toggle",["enable","disable"],r)}})),define("WoltLabSuite/Core/Ui/Search",["require","exports","tslib","../Event/Handler","./Alignment","./CloseOverlay","./Dropdown/Simple","./Screen","../Environment","../Dom/Util"],(function(e,t,n,i,o,r,a,s,l,c){"use strict";function d(){r.default.execute(r.Origin.Search),m.classList.add("searchBarOpen"),null==_||_.parentElement.classList.add("open"),h||o.set(b,y,{horizontal:"right"}),b.style.setProperty("top",`${g.clientHeight}px`,""),w.focus(),window.setTimeout((()=>{const e=w.value.length;w.selectionStart=e,w.selectionEnd=e}),1)}function u(){if(!(m.classList.contains("searchBarOpen")||b.classList.contains("open")))return;m.classList.remove("searchBarOpen"),b.classList.remove("open"),null==_||_.parentElement.classList.remove("open");["bottom","left","right","top"].forEach((e=>{b.style.removeProperty(e)})),"ios"===l.platform()&&(s.scrollEnable(),void 0!==p&&(document.body.scrollTop=p,p=void 0)),h&&w.blur();const e=b.querySelector(".pageHeaderSearchType");a.default.close(e.id)}Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l);let p,h=!1;const f=document.body.classList.contains("wcfAcp"),m=document.getElementById("pageHeader"),g=document.getElementById("pageHeaderPanel"),b=document.getElementById("pageHeaderSearch");let v;const w=document.getElementById("pageHeaderSearchInput"),y=document.getElementById("topMenu"),_=document.getElementById("userPanelSearchButton");t.init=function(){f&&null===b||(!function(){b.addEventListener("click",(e=>e.stopPropagation()));const e=document.querySelector(".pageHeaderSearchType"),t=(0,c.identify)(e);a.default.getDropdownMenu(t).addEventListener("click",(e=>{e.stopPropagation(),a.default.close(t)})),null==_||_.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),m.classList.contains("searchBarOpen")?u():d()})),r.default.add("WoltLabSuite/Core/Ui/Search",((e,t)=>{if(e!==r.Origin.Search){if(e===r.Origin.DropDown){if(document.getElementById("pageHeaderSearchTypeSelect").dataset.target===t)return;if(w.parentElement.id===t)return}u(),null==v||v.setAttribute("aria-expanded","false")}})),window.addEventListener("resize",(()=>{!h&&m.classList.contains("searchBarOpen")&&o.set(b,y,{horizontal:"right"})}),{passive:!0})}(),s.on("screen-md-down",{match(){h=!0},unmatch(){h=!1,p=void 0},setup(){h=!0,function(){const e=document.getElementById("pageHeaderSearchMobile");v=e,e.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),"true"===e.getAttribute("aria-expanded")?(u(),e.setAttribute("aria-expanded","fal
1se")):("ios"===l.platform()&&(p=document.body.scrollTop,s.scrollDisable()),d(),b.style.setProperty("top",`${m.offsetHeight}px`,""),b.classList.add("open"),w.focus(),"ios"===l.platform()&&(document.body.scrollTop=0),e.setAttribute("aria-expanded","true"))})),b.addEventListener("click",(t=>{t.stopPropagation(),t.target===b&&(t.preventDefault(),u(),e.setAttribute("aria-expanded","false"))}))}()}}),i.add("com.woltlab.wcf.Search","close",(()=>u())))}})),function e(t,n,i){function o(r,s){var l,c,d;if(!n[r]){if(!t[r]){if(l="function"==typeof require&&require,!s&&l)return l(r,!0);if(a)return a(r,!0);throw(c=new Error("Cannot find module '"+r+"'")).code="MODULE_NOT_FOUND",c}d=n[r]={exports:{}},t[r][0].call(d.exports,(function(e){var n=t[r][1][e];return o(n||e)}),d,d.exports,e,t,n,i)}return n[r].exports}var r,a="function"==typeof require&&require;for(r=0;r<i.length;r++)o(i[r]);return o}({1:[function(e,t,n){"use strict";var i=e("../main");"function"==typeof define&&define.amd?define("perfect-scrollbar",i):(window.PerfectScrollbar=i,void 0===window.Ps&&(window.Ps=i))},{"../main":7}],2:[function(e,t,n){"use strict";n.add=function(e,t){e.classList?e.classList.add(t):function(e,t){var n=e.className.split(" ");n.indexOf(t)<0&&n.push(t),e.className=n.join(" ")}(e,t)},n.remove=function(e,t){e.classList?e.classList.remove(t):function(e,t){var n=e.className.split(" "),i=n.indexOf(t);i>=0&&n.splice(i,1),e.className=n.join(" ")}(e,t)},n.list=function(e){return e.classList?Array.prototype.slice.apply(e.classList):e.className.split(" ")}},{}],3:[function(e,t,n){"use strict";var i={e:function(e,t){var n=document.createElement(e);return n.className=t,n},appendTo:function(e,t){return t.appendChild(e),e}};i.css=function(e,t,n){return"object"==typeof t?function(e,t){var n,i;for(n in t)"number"==typeof(i=t[n])&&(i=i.toString()+"px"),e.style[n]=i;return e}(e,t):void 0===n?function(e,t){return window.getComputedStyle(e)[t]}(e,t):function(e,t,n){return"number"==typeof n&&(n=n.toString()+"px"),e.style[t]=n,e}(e,t,n)},i.matches=function(e,t){return void 0!==e.matches?e.matches(t):void 0!==e.matchesSelector?e.matchesSelector(t):void 0!==e.webkitMatchesSelector?e.webkitMatchesSelector(t):void 0!==e.mozMatchesSelector?e.mozMatchesSelector(t):void 0!==e.msMatchesSelector?e.msMatchesSelector(t):void 0},i.remove=function(e){void 0!==e.remove?e.remove():e.parentNode&&e.parentNode.removeChild(e)},i.queryChildren=function(e,t){return Array.prototype.filter.call(e.childNodes,(function(e){return i.matches(e,t)}))},t.exports=i},{}],4:[function(e,t,n){"use strict";var i,o=function(e){this.element=e,this.events={}};o.prototype.bind=function(e,t){void 0===this.events[e]&&(this.events[e]=[]),this.events[e].push(t),this.element.addEventListener(e,t,!1)},o.prototype.unbind=function(e,t){var n=void 0!==t;this.events[e]=this.events[e].filter((function(i){return!(!n||i===t)||(this.element.removeEventListener(e,i,!1),!1)}),this)},o.prototype.unbindAll=function(){for(var e in this.events)this.unbind(e)},(i=function(){this.eventElements=[]}).prototype.eventElement=function(e){var t=this.eventElements.filter((function(t){return t.element===e}))[0];return void 0===t&&(t=new o(e),this.eventElements.push(t)),t},i.prototype.bind=function(e,t,n){this.eventElement(e).bind(t,n)},i.prototype.unbind=function(e,t,n){this.eventElement(e).unbind(t,n)},i.prototype.unbindAll=function(){for(var e=0;e<this.eventElements.length;e++)this.eventElements[e].unbindAll()},i.prototype.once=function(e,t,n){var i=this.eventElement(e),o=function(e){i.unbind(t,o),n(e)};i.bind(t,o)},t.exports=i},{}],5:[function(e,t,n){"use strict";t.exports=function(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return function(){return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()}}()},{}],6:[function(e,t,n){"use strict";var i=e("./class"),o=e("./dom"),r=n.toInt=function(e){return parseInt(e,10)||0},a=n.clone=function(e){var t,n;if(e){if(e.constructor===Array)return e.map(a);if("object"==typeof e){for(n in t={},e)t[n]=a(e[n]);return t}return e}return null};n.extend=function(e,t){var n,i=a(e);for(n in t)i[n]=a(t[n]);return i},n.isEditable=function(e){return o.matches(e,"input,[contenteditable]")||o.matches(e,"select,[contenteditable]")||o.matches(e,"textarea,[contenteditable]")||o.matches(e,"button,[contenteditable]")},n.removePsClasses=function(e){var t,n,o=i.list(e);for(t=0;t<o.length;t++)0===(n=o[t]).indexOf("ps-")&&i.remove(e,n)},n.outerWidth=function(e){return r(o.css(e,"width"))+r(o.css(e,"paddingLeft"))+r(o.css(e,"paddingRight"))+r(o.css(e,"borderLeftWidth"))+r(o.css(e,"borderRightWidth"))},n.startScrolling=function(e,t){i.add(e,"ps-in-scrolling"),void 0!==t?i.add(e,"ps-"+t):(i.add(e,"ps-x"),i.add(e,"ps-y"))},n.stopScrolling=function(e,t){i.remove(e,"ps-in-scrolling"),void 0!==t?i.remove(e,"ps-"+t):(i.remove(e,"ps-x"),i.remove(e,"ps-y"))},n.env={isWebKit:"WebkitAppearance"in document.documentElement.style,supportsTouch:"ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch,supportsIePointer:null!==window.navigator.msMaxTouchPoints}},{"./class":2,"./dom":3}],7:[function(e,t,n){"use strict";var i=e("./plugin/destroy"),o=e("./plugin/initialize"),r=e("./plugin/update");t.exports={initialize:o,update:r,destroy:i}},{"./plugin/destroy":9,"./plugin/initialize":17,"./plugin/update":2
11}],8:[function(e,t,n){"use strict";t.exports={handlers:["click-rail","drag-scrollbar","keyboard","wheel","touch"],maxScrollbarLength:null,minScrollbarLength:null,scrollXMarginOffset:0,scrollYMarginOffset:0,suppressScrollX:!1,suppressScrollY:!1,swipePropagation:!0,useBothWheelAxes:!1,wheelPropagation:!1,wheelSpeed:1,theme:"default"}},{}],9:[function(e,t,n){"use strict";var i=e("../lib/helper"),o=e("../lib/dom"),r=e("./instances");t.exports=function(e){var t=r.get(e);t&&(t.event.unbindAll(),o.remove(t.scrollbarX),o.remove(t.scrollbarY),o.remove(t.scrollbarXRail),o.remove(t.scrollbarYRail),i.removePsClasses(e),r.remove(e))}},{"../lib/dom":3,"../lib/helper":6,"./instances":18}],10:[function(e,t,n){"use strict";var i=e("../instances"),o=e("../update-geometry"),r=e("../update-scroll");t.exports=function(e){!function(e,t){function n(e){return e.getBoundingClientRect()}var i=function(e){e.stopPropagation()};t.event.bind(t.scrollbarY,"click",i),t.event.bind(t.scrollbarYRail,"click",(function(i){var a=i.pageY-window.pageYOffset-n(t.scrollbarYRail).top>t.scrollbarYTop?1:-1;r(e,"top",e.scrollTop+a*t.containerHeight),o(e),i.stopPropagation()})),t.event.bind(t.scrollbarX,"click",i),t.event.bind(t.scrollbarXRail,"click",(function(i){var a=i.pageX-window.pageXOffset-n(t.scrollbarXRail).left>t.scrollbarXLeft?1:-1;r(e,"left",e.scrollLeft+a*t.containerWidth),o(e),i.stopPropagation()}))}(e,i.get(e))}},{"../instances":18,"../update-geometry":19,"../update-scroll":20}],11:[function(e,t,n){"use strict";function i(e,t){var n=null,i=null,o=function(o){var a,s,d,u;a=o.pageX-i,d=n+a*t.railXRatio,u=Math.max(0,t.scrollbarXRail.getBoundingClientRect().left)+t.railXRatio*(t.railXWidth-t.scrollbarXWidth),t.scrollbarXLeft=d<0?0:d>u?u:d,s=r.toInt(t.scrollbarXLeft*(t.contentWidth-t.containerWidth)/(t.containerWidth-t.railXRatio*t.scrollbarXWidth))-t.negativeScrollAdjustment,c(e,"left",s
1),l(e),o.stopPropagation(),o.preventDefault()},s=function(){r.stopScrolling(e,"x"),t.event.unbind(t.ownerDocument,"mousemove",o)};t.event.bind(t.scrollbarX,"mousedown",(function(l){i=l.pageX,n=r.toInt(a.css(t.scrollbarX,"left"))*t.railXRatio,r.startScrolling(e,"x"),t.event.bind(t.ownerDocument,"mousemove",o),t.event.once(t.ownerDocument,"mouseup",s),l.stopPropagation(),l.preventDefault()}))}function o(e,t){var n=null,i=null,o=function(o){var a,s,d,u;a=o.pageY-i,d=n+a*t.railYRatio,u=Math.max(0,t.scrollbarYRail.getBoundingClientRect().top)+t.railYRatio*(t.railYHeight-t.scrollbarYHeight),t.scrollbarYTop=d<0?0:d>u?u:d,s=r.toInt(t.scrollbarYTop*(t.contentHeight-t.containerHeight)/(t.containerHeight-t.railYRatio*t.scrollbarYHeight)),c(e,"top",s),l(e),o.stopPropagation(),o.preventDefault()},s=function(){r.stopScrolling(e,"y"),t.event.unbind(t.ownerDocument,"mousemove",o)};t.event.bind(t.scrollbarY,"mousedown",(function(l){i=l.pageY,n=r.toInt(a.css(t.scrollbarY,"top"))*t.railYRatio,r.startScrolling(e,"y"),t.event.bind(t.ownerDocument,"mousemove",o),t.event.once(t.ownerDocument,"mouseup",s),l.stopPropagation(),l.preventDefault()}))}var r=e("../../lib/helper"),a=e("../../lib/dom"),s=e("../instances"),l=e("../update-geometry"),c=e("../update-scroll");t.exports=function(e){var t=s.get(e);i(e,t),o(e,t)}},{"../../lib/dom":3,"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],12:[function(e,t,n){"use strict";function i(e,t){var n,i=!1;t.event.bind(e,"mouseenter",(function(){i=!0})),t.event.bind(e,"mouseleave",(function(){i=!1})),n=!1,t.event.bind(t.ownerDocument,"keydown",(function(a){var c,d,u,p;if(!(a.isDefaultPrevented&&a.isDefaultPrevented()||a.defaultPrevented)&&(c=r.matches(t.scrollbarX,":focus")||r.matches(t.scrollbarY,":focus"),i||c)){if(d=document.activeElement?document.activeElement:t.ownerDocument.activeElement){if("IFRAME"===d.tagName)d=d.contentDocument.activeElement;else for(;d.shadowRoot;)d=d.shadowRoot.activeElement;if(o.isEditable(d))return}switch(u=0,p=0,a.which){case 37:u=a.metaKey?-t.contentWidth:a.altKey?-t.containerWidth:-30;break;case 38:p=a.metaKey?t.contentHeight:a.altKey?t.containerHeight:30;break;case 39:u=a.metaKey?t.contentWidth:a.altKey?t.containerWidth:30;break;case 40:p=a.metaKey?-t.contentHeight:a.altKey?-t.containerHeight:-30;break;case 33:p=90;break;case 32:p=a.shiftKey?90:-90;break;case 34:p=-90;break;case 35:p=a.ctrlKey?-t.contentHeight:-t.containerHeight;break;case 36:p=a.ctrlKey?e.scrollTop:t.containerHeight;break;default:return}l(e,"top",e.scrollTop-p),l(e,"left",e.scrollLeft+u),s(e),n=function(n,i){var o,r=e.scrollTop;if(0===n){if(!t.scrollbarYActive)return!1;if(0===r&&i>0||r>=t.contentHeight-t.containerHeight&&i<0)return!t.settings.wheelPropagation}if(o=e.scrollLeft,0===i){if(!t.scrollbarXActive)return!1;if(0===o&&n<0||o>=t.contentWidth-t.containerWidth&&n>0)return!t.settings.wheelPropagation}return!0}(u,p),n&&a.preventDefault()}}))}var o=e("../../lib/helper"),r=e("../../lib/dom"),a=e("../instances"),s=e("../update-geometry"),l=e("../update-scroll");t.exports=function(e){i(e,a.get(e))}},{"../../lib/dom":3,"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],13:[function(e,t,n){"use strict";function i(e,t){function n(n){var o=function(e){var t=e.deltaX,n=-1*e.deltaY;return void 0!==t&&void 0!==n||(t=-1*e.wheelDeltaX/6,n=e.wheelDeltaY/6),e.deltaMode&&1===e.deltaMode&&(t*=10,n*=10),t!=t&&n!=n&&(t=0,n=e.wheelDelta),e.shiftKey?[-n,-t]:[t,n]}(n),s=o[0],l=o[1];(function(t,n){var i,o,r=e.querySelector("textarea:hover, select[multiple]:hover, .ps-child:hover");if(r){if(!window.getComputedStyle(r).overflow.match(/(scroll|auto)/))return!1;if((i=r.scrollHeight-r.clientHeight)>0&&!(0===r.scrollTop&&n>0||r.scrollTop===i&&n<0))return!0;if((o=r.scrollLeft-r.clientWidth)>0&&!(0===r.scrollLeft&&t<0||r.scrollLeft===o&&t>0))return!0}return!1})(s,l)||(i=!1,t.settings.useBothWheelAxes?t.scrollbarYActive&&!t.scrollbarXActive?(a(e,"top",l?e.scrollTop-l*t.settings.wheelSpeed:e.scrollTop+s*t.settings.wheelSpeed),i=!0):t.scrollbarXActive&&!t.scrollbarYActive&&(a(e,"left",s?e.scrollLeft+s*t.settings.wheelSpeed:e.scrollLeft-l*t.settings.wheelSpeed),i=!0):(a(e,"top",e.scrollTop-l*t.settings.wheelSpeed),a(e,"left",e.scrollLeft+s*t.settings.wheelSpeed)),r(e),i=i||function(n,i){var o,r=e.scrollTop;if(0===n){if(!t.scrollbarYActive)return!1;if(0===r&&i>0||r>=t.contentHeight-t.containerHeight&&i<0)return!t.settings.wheelPropagation}if(o=e.scrollLeft,0===i){if(!t.scrollbarXActive)return!1;if(0===o&&n<0||o>=t.contentWidth-t.containerWidth&&n>0)return!t.settings.wheelPropagation}return!0}(s,l),i&&(n.stopPropagation(),n.preventDefault()))}var i=!1;void 0!==window.onwheel?t.event.bind(e,"wheel",n):void 0!==window.onmousewheel&&t.event.bind(e,"mousewheel",n)}var o=e("../instances"),r=e("../update-geometry"),a=e("../update-scroll");t.exports=function(e){i(e,o.get(e))}},{"../instances":18,"../update-geometry":19,"../update-scroll":20}],14:[function(e,t,n){"use strict";var i=e("../instances"),o=e("../update-geometry");t.exports=function(e){!function(e,t){t.event.bind(e,"scroll",(function(){o(e)}))}(e,i.get(e))}},{"../instances":18,"../update-geometry":19}],15:[function(e,t,n){"use strict";function i(e,t){function n(){i&&(clearInterval(i),i=null),o.stopScrolling(e)}var i=null,l={top:0,left:0},c=!1;t.event.bind(t.ownerDocument,"selectionchange",(function(){var t;e.contains(0===(t=window.getSelection?window.getSelection():document.getSelection?document.getSelection():"").toString().length?null:t.getRangeAt(0).commonAncestorContainer)?c=!0:(c=!1,n())})),t.event.bind(window,"mouseup",(function(){c&&(c=!1,n())})),t.event.bind(window,"keyup",(function(){c&&(c=!1,n())})),t.event.bind(window,"mousemove",(function(t){var d,u;c&&(d={x:t.pageX,y:t.pageY},u={left:e.offsetLeft,right:e.offsetLeft+e.offsetWidth,top:e.offsetTop,bottom:e.offsetTop+e.offsetHeight},d.x<u.left+3?(l.left=-5,o.startScrolling(e,"x")):d.x>u.right-3?(l.left=5,o.startScrolling(e,"x")):l.left=0,d.y<u.top+3?(u.top+3-d.y<5?l.top=-5:l.top=-20,o.startScrolling(e,"y")):d.y>u.bottom-3?(d.y-u.bottom+3<5?l.top=5:l.top=20,o.startScrolling(e,"y")):l.top=0,0===l.top&&0===l.left?n():i||(i=setInterval((function(){r.get(e)?(s(e,"top",e.scrollTop+l.top),s(e,"left",e.scrollLeft+l.left),a(e)):clearInterval(i)}),50)))}))}var o=e("../../lib/helper"),r=e("../instances"),a=e("../update-geometry"),s=e("../update-scroll");t.exports=function(e){i(e,r.get(e))}},{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],16:[function(e,t,n){"use strict";function i(e,t,n,i){function o(t,n){s(e,"top",e.scrollTop-n),s(e,"left",e.scrollLeft-t),a(e)}function l(){w=!0}function c(){w=!1}function d(e){return e.targetTouches?e.targetTouches[0]:e}function u(e){return!(!e.targetTouches||1!==e.targetTouches.length)||!(!e.pointerType||"mouse"===e.pointerType||e.pointerType===e.MSPOINTER_TYPE_MOUSE)}function p(e){if(u(e)){y=!0;var t=d(e);m.pageX=t.pageX,m.pageY=t.pageY,g=(new Date).getTime(),null!==v&&clearInterval(v),e.stopPropagation()}}function h(n){var i,r,a,s,l,c;!y&&t.settings.swipePropagation&&p(n),!w&&y&&u(n)&&(o(a=(r={pageX:(i=d(n)).pageX,pageY:i.pageY}).pageX-m.pageX,s=r.pageY-m.pageY),m=r,(c=(l=(new Date).getTime())-g)>
10&&(b.x=a/c,b.y=s/c,g=l),function(n,i){var o=e.scrollTop,r=e.scrollLeft,a=Math.abs(n),s=Math.abs(i);if(s>a){if(i<0&&o===t.contentHeight-t.containerHeight||i>0&&0===o)return!t.settings.swipePropagation}else if(a>s&&(n<0&&r===t.contentWidth-t.containerWidth||n>0&&0===r))return!t.settings.swipePropagation;return!0}(a,s)&&(n.stopPropagation(),n.preventDefault()))}function f(){!w&&y&&(y=!1,clearInterval(v),v=setInterval((function(){r.get(e)&&(b.x||b.y)?Math.abs(b.x)<.01&&Math.abs(b.y)<.01?clearInterval(v):(o(30*b.x,30*b.y),b.x*=.8,b.y*=.8):clearInterval(v)}),10))}var m={},g=0,b={},v=null,w=!1,y=!1;n?(t.event.bind(window,"touchstart",l),t.event.bind(window,"touchend",c),t.event.bind(e,"touchstart",p),t.event.bind(e,"touchmove",h),t.event.bind(e,"touchend",f)):i&&(window.PointerEvent?(t.event.bind(window,"pointerdown",l),t.event.bind(window,"pointerup",c),t.event.bind(e,"pointerdown",p),t.event.bind(e,"pointermove",h),t.event.bind(e,"pointerup",f)):window.MSPointerEvent&&(t.event.bind(window,"MSPointerDown",l),t.event.bind(window,"MSPointerUp",c),t.event.bind(e,"MSPointerDown",p),t.event.bind(e,"MSPointerMove",h),t.event.bind(e,"MSPointerUp",f)))}var o=e("../../lib/helper"),r=e("../instances"),a=e("../update-geometry"),s=e("../update-scroll");t.exports=function(e){(o.env.supportsTouch||o.env.supportsIePointer)&&i(e,r.get(e),o.env.supportsTouch,o.env.supportsIePointer)}},{"../../lib/helper":6,"../instances":18,"../update-geometry":19,"../update-scroll":20}],17:[function(e,t,n){"use strict";var i=e("../lib/helper"),o=e("../lib/class"),r=e("./instances"),a=e("./update-geometry"),s={"click-rail":e("./handler/click-rail"),"drag-scrollbar":e("./handler/drag-scrollbar"),keyboard:e("./handler/keyboard"),wheel:e("./handler/mouse-wheel"),touch:e("./handler/touch"),selection:e("./handler/selection")},l=e("./handler/native-scroll");t.exports=function(e,t){t="object"==typeof t?t:{},o.add(e,"ps-container");var n=r.add(e);n.settings=i.extend(n.settings,t),o.add(e,"ps-theme-"+n.settings.theme),n.settings.handlers.forEach((function(t){s[t](e)})),l(e),a(e)}},{"../lib/class":2,"../lib/helper":6,"./handler/click-rail":10,"./handler/drag-scrollbar":11,"./handler/keyboard":12,"./handler/mouse-wheel":13,"./handler/native-scroll":14,"./handler/selection":15,"./handler/touch":16,"./instances":18,"./update-geometry":19}],18:[function(e,t,n){"use strict";function i(e){function t(){a.add(e,"ps-focus")}function n(){a.remove(e,"ps-focus")}var i,o,d=this;d.settings=r.clone(s),d.containerWidth=null,d.containerHeight=null,d.contentWidth=null,d.contentHeight=null,d.isRtl="rtl"===l.css(e,"direction"),d.isNegativeScroll=(i=e.scrollLeft,o=null,e.scrollLeft=-1,o=e.scrollLeft<0,e.scrollLeft=i,o),d.negativeScrollAdjustment=d.isNegativeScroll?e.scrollWidth-e.clientWidth:0,d.event=new c,d.ownerDocument=e.ownerDocument||document,d.scrollbarXRail=l.appendTo(l.e("div","ps-scrollbar-x-rail"),e),d.scrollbarX=l.appendTo(l.e("div","ps-scrollbar-x"),d.scrollbarXRail),d.scrollbarX.setAttribute("tabindex",0),d.event.bind(d.scrollbarX,"focus",t),d.event.bind(d.scrollbarX,"blur",n),d.scrollbarXActive=null,d.scrollbarXWidth=null,d.scrollbarXLeft=null,d.scrollbarXBottom=r.toInt(l.css(d.scrollbarXRail,"bottom")),d.isScrollbarXUsingBottom=d.scrollbarXBottom==d.scrollbarXBottom,d.scrollbarXTop=d.isScrollbarXUsingBottom?null:r.toInt(l.css(d.scrollbarXRail,"top")),d.railBorderXWidth=r.toInt(l.css(d.scrollbarXRail,"borderLeftWidth"))+r.toInt(l.css(d.scrollbarXRail,"borderRightWidth")),l.css(d.scrollbarXRail,"display","block"),d.railXMarginWidth=r.toInt(l.css(d.scrollbarXRail,"marginLeft"))+r.toInt(l.css(d.scrollbarXRail,"marginRight")),l.css(d.scrollbarXRail,"display",""),d.railXWidth=null,d.railXRatio=null,d.scrollbarYRail=l.appendTo(l.e("div","ps-scrollbar-y-rail"),e),d.scrollbarY=l.appendTo(l.e("div","ps-scrollbar-y"),d.scrollbarYRail),d.scrollbarY.setAttribute("tabindex",0),d.event.bind(d.scrollbarY,"focus",t),d.event.bind(d.scrollbarY,"blur",n),d.scrollbarYActive=null,d.scrollbarYHeight=null,d.scrollbarYTop=null,d.scrollbarYRight=r.toInt(l.css(d.scrollbarYRail,"right")),d.isScrollbarYUsingRight=d.scrollbarYRight==d.scrollbarYRight,d.scrollbarYLeft=d.isScrollbarYUsingRight?null:r.toInt(l.css(d.scrollbarYRail,"left")),d.scrollbarYOuterWidth=d.isRtl?r.outerWidth(d.scrollbarY):null,d.railBorderYWidth=r.toInt(l.css(d.scrollbarYRail,"borderTopWidth"))+r.toInt(l.css(d.scrollbarYRail,"borderBottomWidth")),l.css(d.scrollbarYRail,"display","block"),d.railYMarginHeight=r.toInt(l.css(d.scrollbarYRail,"marginTop"))+r.toInt(l.css(d.scrollbarYRail,"marginBottom")),l.css(d.scrollbarYRail,"display",""),d.railYHeight=null,d.railYRatio=null}function o(e){return e.getAttribute("data-ps-id")}var r=e("../lib/helper"),a=e("../lib/class"),s=e("./default-setting"),l=e("../lib/dom"),c=e("../lib/event-manager"),d=e("../lib/guid"),u={};n.add=function(e){var t=d();return function(e,t){e.setAttribute("data-ps-id",t)}(e,t),u[t]=new i(e),u[t]},n.remove=function(e){delete u[o(e)],function(e){e.removeAttribute("data-ps-id")}(e)},n.get=function(e){return u[o(e)]}}
1,{"../lib/class":2,"../lib/dom":3,"../lib/event-manager":4,"../lib/guid":5,"../lib/helper":6,"./default-setting":8}],19:[function(e,t,n){"use strict";function i(e,t){return e.settings.minScrollbarLength&&(t=Math.max(t,e.settings.minScrollbarLength)),e.settings.maxScrollbarLength&&(t=Math.min(t,e.settings.maxScrollbarLength)),t}var o=e("../lib/helper"),r=e("../lib/class"),a=e("../lib/dom"),s=e("./instances"),l=e("./update-scroll");t.exports=function(e){var t,n=s.get(e);n.containerWidth=e.clientWidth,n.containerHeight=e.clientHeight,n.contentWidth=e.scrollWidth,n.contentHeight=e.scrollHeight,e.contains(n.scrollbarXRail)||((t=a.queryChildren(e,".ps-scrollbar-x-rail")).length>0&&t.forEach((function(e){a.remove(e)})),a.appendTo(n.scrollbarXRail,e)),e.contains(n.scrollbarYRail)||((t=a.queryChildren(e,".ps-scrollbar-y-rail")).length>0&&t.forEach((function(e){a.remove(e)})),a.appendTo(n.scrollbarYRail,e)),!n.settings.suppressScrollX&&n.containerWidth+n.settings.scrollXMarginOffset<n.contentWidth?(n.scrollbarXActive=!0,n.railXWidth=n.containerWidth-n.railXMarginWidth,n.railXRatio=n.containerWidth/n.railXWidth,n.scrollbarXWidth=i(n,o.toInt(n.railXWidth*n.containerWidth/n.contentWidth)),n.scrollbarXLeft=o.toInt((n.negativeScrollAdjustment+e.scrollLeft)*(n.railXWidth-n.scrollbarXWidth)/(n.contentWidth-n.containerWidth))):n.scrollbarXActive=!1,!n.settings.suppressScrollY&&n.containerHeight+n.settings.scrollYMarginOffset<n.contentHeight?(n.scrollbarYActive=!0,n.railYHeight=n.containerHeight-n.railYMarginHeight,n.railYRatio=n.containerHeight/n.railYHeight,n.scrollbarYHeight=i(n,o.toInt(n.railYHeight*n.containerHeight/n.contentHeight)),n.scrollbarYTop=o.toInt(e.scrollTop*(n.railYHeight-n.scrollbarYHeight)/(n.contentHeight-n.containerHeight))):n.scrollbarYActive=!1,n.scrollbarXLeft>=n.railXWidth-n.scrollbarXWidth&&(n.scrollbarXLeft=n.railXWidth-n.scrollbarXWidth),n.scrollbarYTop>=n.railYHeight-n.scrollbarYHeight&&(n.scrollbarYTop=n.railYHeight-n.scrollbarYHeight),function(e,t){var n,i={width:t.railXWidth};t.isRtl?i.left=t.negativeScrollAdjustment+e.scrollLeft+t.containerWidth-t.contentWidth:i.left=e.scrollLeft,t.isScrollbarXUsingBottom?i.bottom=t.scrollbarXBottom-e.scrollTop:i.top=t.scrollbarXTop+e.scrollTop,a.css(t.scrollbarXRail,i),n={top:e.scrollTop,height:t.railYHeight},t.isScrollbarYUsingRight?t.isRtl?n.right=t.contentWidth-(t.negativeScrollAdjustment+e.scrollLeft)-t.scrollbarYRight-t.scrollbarYOuterWidth:n.right=t.scrollbarYRight-e.scrollLeft:t.isRtl?n.left=t.negativeScrollAdjustment+e.scrollLeft+2*t.containerWidth-t.contentWidth-t.scrollbarYLeft-t.scrollbarYOuterWidth:n.left=t.scrollbarYLeft+e.scrollLeft,a.css(t.scrollbarYRail,n),a.css(t.scrollbarX,{left:t.scrollbarXLeft,width:t.scrollbarXWidth-t.railBorderXWidth}),a.css(t.scrollbarY,{top:t.scrollbarYTop,height:t.scrollbarYHeight-t.railBorderYWidth})}(e,n),n.scrollbarXActive?r.add(e,"ps-active-x"):(r.remove(e,"ps-active-x"),n.scrollbarXWidth=0,n.scrollbarXLeft=0,l(e,"left",0)),n.scrollbarYActive?r.add(e,"ps-active-y"):(r.remove(e,"ps-active-y"),n.scrollbarYHeight=0,n.scrollbarYTop=0,l(e,"top",0))}},{"../lib/class":2,"../lib/dom":3,"../lib/helper":6,"./instances":18,"./update-scroll":20}],20:[function(e,t,n){"use strict";var i,o,r=e("./instances"),a=function(e){var t=document.createEvent("Event");return t.initEvent(e,!0,!0),t};t.exports=function(e,t,n){if(void 0===e)throw"You must provide an element to the update-scroll function";if(void 0===t)throw"You must provide an axis to the update-scroll function";if(void 0===n)throw"You must provide a value to the update-scroll function";"top"===t&&n<=0&&(e.scrollTop=n=0,e.dispatchEvent(a("ps-y-reach-start"))),"left"===t&&n<=0&&(e.scrollLeft=n=0,e.dispatchEvent(a("ps-x-reach-start")));var s=r.get(e);"top"===t&&n>=s.contentHeight-s.containerHeight&&((n=s.contentHeight-s.containerHeight)-e.scrollTop<=1?n=e.scrollTop:e.scrollTop=n,e.dispatchEvent(a("ps-y-reach-end"))),"left"===t&&n>=s.contentWidth-s.containerWidth&&((n=s.contentWidth-s.containerWidth)-e.scrollLeft<=1?n=e.scrollLeft:e.scrollLeft=n,e.dispatchEvent(a("ps-x-reach-end"))),i||(i=e.scrollTop),o||(o=e.scrollLeft),"top"===t&&n<i&&e.dispatchEvent(a("ps-scroll-up")),"top"===t&&n>i&&e.dispatchEvent(a("ps-scroll-down")),"left"===t&&n<o&&e.dispatchEvent(a("ps-scroll-left")),"left"===t&&n>o&&e.dispatchEvent(a("ps-scroll-right")),"top"===t&&(e.scrollTop=i=n,e.dispatchEvent(a("ps-scroll-y"))),"left"===t&&(e.scrollLeft=o=n,e.dispatchEvent(a("ps-scroll-x")))}},{"./instances":18}],21:[function(e,t,n){"use strict";var i=e("../lib/helper"),o=e("../lib/dom"),r=e("./instances"),a=e("./update-geometry"),s=e("./update-scroll");t.exports=function(e){var t=r.get(e);t&&(t.negativeScrollAdjustment=t.isNegativeScroll?e.scrollWidth-e.clientWidth:0,o.css(t.scrollbarXRail,"display","block"),o.css(t.scrollbarYRail,"display","block"),t.railXMarginWidth=i.toInt(o.css(t.scrollbarXRail,"marginLeft"))+i.toInt(o.css(t.scrollbarXRail,"marginRight")),t.railYMarginHeight=i.toInt(o.css(t.scrollbarYRail,"marginTop"))+i.toInt(o.css(t.scrollbarYRail,"marginBottom")),o.css(t.scrollbarXRail,"display","none"),o.css(t.scrollbarYRail,"display","none"),a(e),s(e,"top",e.scrollTop),s(e,"left",e.scrollLeft),o.css(t.scrollbarXRail,"display",""),o.css(t.scrollbarYRail,"display",""))}},{"../lib/dom":3,"../lib/helper":6,"./instances":18,"./update-geometry":19,"./update-scroll":20}]},{},[1]),define("WoltLabSuite/Core/Bootstrap",["require","exports","tslib","./Core","./Date/Picker","./Date/Time/Relative","./Devtools","./Dom/Change/Listener","./Environment","./Event/Handler","./Form/XsrfToken","./Language","./StringUtil","./Ui/Dialog","./Ui/Dropdown/Simple","./Ui/Mobile","./Ui/Page/Action","./Ui/TabMenu","./Ui/Tooltip","./Ui/Page/JumpTo","./Ui/Password","./Ui/Empty","./Ui/Object/Action","./Ui/Object/Action/Delete","./Ui/Object/Action/Toggle","./Ui/Search","perfect-scrollbar"],(function(e,t,n,i,o,r,a,s,l,c,d,u,p,h,f,m,g,b,v,w,y,_,E,S,C,L){"use strict";function x(){document.querySelectorAll("nav:not([aria-label]):not([aria-labelledby]):not([role])").forEach((e=>{e.setAttribute("role","presentation")})),document.querySelectorAll("article:not([aria-label]):not([aria-labelledby]):not([role])").forEach((e=>{e.setAttribute("role","presentation")}))}
1Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importStar(i),o=n.__importDefault(o),r=n.__importStar(r),a=n.__importDefault(a),s=n.__importDefault(s),l=n.__importStar(l),c=n.__importStar(c),d=n.__importStar(d),u=n.__importStar(u),p=n.__importStar(p),h=n.__importDefault(h),f=n.__importDefault(f),m=n.__importStar(m),g=n.__importStar(g),b=n.__importStar(b),v=n.__importStar(v),w=n.__importStar(w),y=n.__importStar(y),_=n.__importStar(_),E=n.__importStar(E),S=n.__importStar(S),C=n.__importStar(C),null==window.WCF&&(window.WCF={}),null==window.WCF.Language&&(window.WCF.Language={}),window.WCF.Language.get=u.get,window.WCF.Language.add=u.add,window.WCF.Language.addObject=u.addObject,window.__wcf_bc_eventHandler=c,t.setup=function(e){e=i.extend({enableMobileMenu:!0,pageMenuMainProvider:void 0},e),d.setup(),p.setupI18n({decimalPoint:u.get("wcf.global.decimalPoint"),thousandsSeparator:u.get("wcf.global.thousandsSeparator")}),window.ENABLE_DEVELOPER_TOOLS&&a.default._internal_.enable(),l.setup(),r.setup(),o.default.init(),f.default.setup(),m.setup(e.enableMobileMenu,e.pageMenuMainProvider),b.setup(),h.default.setup(),v.setup(),y.setup(),_.setup(),E.setup(),S.setup(),C.setup(),(0,L.init)(),document.querySelectorAll("form[method=get]").forEach((e=>{e.method="post"})),"microsoft"===l.browser()&&(window.onbeforeunload=()=>{});let t=0;t=window.setInterval((()=>{if("function"==typeof window.jQuery){window.clearInterval(t),window.jQuery((()=>{g.setup()}));const e=window.jQuery;e.browser=e.browser||{},e.browser.mobile="desktop"!==l.platform(),window.jQuery.holdReady(!1)}}),20),document.querySelectorAll(".pagination").forEach((e=>w.init(e))),x(),s.default.add("WoltLabSuite/Core/Bootstrap",(()=>x))}})),define("WoltLabSuite/Core/Controller/Popover",["require","exports","tslib","../Ajax","../Dom/Change/Listener","../Dom/Util","../Environment","../Ui/Alignment"],(function(e,t,n,i,o,r,a,s){"use strict";function l(){return d||(d=new c),d}Object.defineProperty(t,"__esModule",{value:!0}),t.ajaxApi=t.setContent=t.init=void 0,i=n.__importStar(i),o=n.__importDefault(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importStar(s);class c{constructor(){this.activeId="",this.cache=new Map,this.elements=new Map,this.handlers=new Map,this.hoverId="",this.suspended=!1,this.timerEnter=void 0,this.timerLeave=void 0,this.popover=document.createElement("div"),this.popover.className="popover forceHide",this.popoverContent=document.createElement("div"),this.popoverContent.className="popoverContent",this.popover.appendChild(this.popoverContent);const e=document.createElement("span");e.className="elementPointer",e.appendChild(document.createElement("span")),this.popover.appendChild(e),document.body.appendChild(this.popover),this.popover.addEventListener("mouseenter",(()=>this.popoverMouseEnter())),this.popover.addEventListener("mouseleave",(()=>this.mouseLeave())),this.popover.addEventListener("animationend",(()=>this.clearContent())),window.addEventListener("beforeunload",(()=>{this.suspended=!0,this.timerEnter&&(window.clearTimeout(this.timerEnter),this.timerEnter=void 0),this.hidePopover()})),o.default.add("WoltLabSuite/Core/Controller/Popover",(e=>this.initHandler(e)))}init(e){if("desktop"!==a.platform())return;if(e.attributeName=e.attributeName||"data-object-id",e.legacy=!0===e.legacy,this.handlers.has(e.identifier))return;const t=e.legacy?e.className:`.${e.className}`;this.handlers.set(e.identifier,{attributeName:e.attributeName,dboAction:e.dboAction,legacy:e.legacy,loadCallback:e.loadCallback,selector:t}),this.initHandler(e.identifier)}initHandler(e){"string"==typeof e&&e.length?this.initElements(this.handlers.get(e),e):this.handlers.forEach(((e,t)=>{this.initElements(e,t)}))}initElements(e,t){document.querySelectorAll(e.selector).forEach((n=>{const i=r.default.identify(n);if(this.cache.has(i))return;if(null!==n.closest(".popover"))return void this.cache.set(i,{content:null,state:0});const o=e.legacy?i:~~n.getAttribute(e.attributeName);if(0===o)return;n.addEventListener("mouseenter",(e=>this.mouseEnter(e))),n.addEventListener("mouseleave",(()=>this.mouseLeave())),n instanceof HTMLAnchorElement&&n.href&&n.addEventListener("click",(()=>this.hidePopover()));const a=`${t}-${o}`;n.dataset.cacheId=a,this.elements.set(i,{element:n,identifier:t,objectId:o.toString()}),this.cache.has(a)||this.cache.set(a,{content:null,state:0})}))}setContent(e,t,n){const i=`${e}-${t}`,o=this.cache.get(i);if(void 0===o)throw new Error(`Unable to find element for object id '${t}' (identifier: '${e}').`);let a=r.default.createFragmentFromHtml(n);if(a.childElementCount||(a=r.default.createFragmentFromHtml("<p>"+n+"</p>")),o.content=a,o.state=2,this.activeId){this.elements.get(this.activeId).element.dataset.cacheId===i&&this.show()}}mouseEnter(e){if(this.suspended)return;this.timerEnter&&(window.clearTimeout(this.timerEnter),this.timerEnter=void 0);const t=r.default.identify(e.currentTarget);this.activeId===t&&this.timerLeave&&(window.clearTimeout(this.timerLeave),this.timerLeave=void 0),this.hoverId=t,this.timerEnter=window.setTimeout((()=>{this.timerEnter=void 0,this.hoverId===t&&this.show()}),800)}mouseLeave(){this.hoverId="",this.timerLeave||(this.timerLeave=window.setTimeout((()=>this.hidePopover()),500))}popoverMouseEnter(){this.timerLeave&&(window.clearTimeout(this.timerLeave),this.timerLeave=void 0)}show(){this.timerLeave&&(window.clearTimeout(this.timerLeave),this.timerLeave=void 0);let e=!1;this.popover.classList.contains("active")?this.activeId!==this.hoverId&&(this.hidePopover(),e=!0):this.popoverContent.childElementCount&&(e=!0),e&&(this.popover.classList.add("forceHide"),this.popover.offsetTop,this.clearContent(),this.popover.classList.remove("forceHide")),this.activeId=this.hoverId;const t=this.elements.get(this.activeId);if(void 0===t)return;const n=t.element.dataset.cacheId,i=this.cache.get(n);switch(i.state){case 2:this.popoverContent.appendChild(i.content),this.rebuild();break;case 0:{i.state=1;const e=this.handlers.get(t.identifier);if(e.loadCallback)e.loadCallback(t.objectId,this,t.element);else if(e.dboAction){const n=e=>(this.setContent(t.identifier,t.objectId,e.returnValues.template),!0);this.ajaxApi({actionName:"getPopover",className:e.dboAction,interfaceName:"wcf\\data\\IPopoverAction",objectIDs:[t.objectId]},n,n)}break}}}hidePopover(){this.timerLeave&&(window.clearTimeout(this.timerLeave),this.timerLeave=void 0),this.popover.classList.remove("active")}clearContent(){if(this.activeId&&this.popoverContent.childElementCount&&!this.popover.classList.contains("active")){const e=this.elements.get(this.activeId).element.dataset.cacheId,t=this.cache.get(e);for(;this.popoverContent.childNodes.length;)t.content.appendChild(this.popoverContent.childNodes[0])}}rebuild(){this.popover.classList.contains("active")||(this.popover.classList.remove("forceHide"),this.popover.classList.add("active"),s.set(this.popover,this.elements.get(this.activeId).element,{pointer:!0,vertical:"top"}))}_ajaxSuccess(){}_ajaxSetup(){return{silent:!0}}ajaxApi(e,t,n){if("function"!=typeof t)throw new TypeError("Expected a valid callback for parameter 'success'.");i.api(this,e,t,n)}}let d;t.init=function(e){l().init(e)},t.setContent=function(e,t,n){l().setContent(e,t,n)},t.ajaxApi=function(e,t,n){l().ajaxApi(e,t,n)}})),define("WoltLabSuite/Core/Ui/User/Ignore",["require","exports","tslib","../../Dom/Change/Listener"],(function(e,t,n,i){"use strict";function o(){for(let e=0,t=a.length;e<t;e++){const t=a[e];s.has(t)||(t.addEventListener("click",r,{once:!0}),s.add(t))}}function r(e){e.preventDefault();const t=e.currentTarget;t.classList.remove("ignoredUserMessage"),s.delete(t),window.getSelection().removeAllRanges()}
1Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importDefault(i);const a=document.getElementsByClassName("ignoredUserMessage"),s=new Set;t.init=function(){o(),i.default.add("WoltLabSuite/Core/Ui/User/Ignore",o)}})),define("WoltLabSuite/Core/Ui/Page/Header/Menu",["require","exports","tslib","../../../Environment","../../../Language","../../Screen"],(function(e,t,n,i,o,r){"use strict";function a(){m=!0,"safari"===i.browser()?window.setTimeout(c,1e3):window.requestAnimationFrame((()=>c()))}function s(){m=!1}function l(e){g=Math.min(g+e,0),h.style.setProperty("margin-left",`${g}px`,"")}function c(){if(!m)return;b=[],v=[];const e=f.clientWidth,t=f.scrollWidth;!p&&t>e&&(u=document.createElement("a"),u.className="mainMenuShowNext",u.href="#",u.innerHTML='<span class="icon icon32 fa-angle-right"></span>',u.setAttribute("aria-hidden","true"),u.addEventListener("click",(e=>{e.preventDefault(),function(){if(v.length){const e=v.slice(0,3).pop();l(f.clientWidth-(e.offsetLeft+e.clientWidth)),f.lastElementChild===e&&u.classList.remove("active"),p.classList.add("active")}}()})),f.insertAdjacentElement("beforebegin",u),p=document.createElement("a"),p.className="mainMenuShowPrevious",p.href="#",p.innerHTML='<span class="icon icon32 fa-angle-left"></span>',p.setAttribute("aria-hidden","true"),p.addEventListener("click",(e=>{e.preventDefault(),function(){if(b.length){const e=b.slice(-3)[0];l(-1*e.offsetLeft),f.firstElementChild===e&&p.classList.remove("active"),u.classList.add("active")}}()})),f.insertAdjacentElement("afterend",p)),(t>e||g<0)&&Array.from(f.children).forEach((t=>{const n=t.offsetLeft;n<0?b.push(t):n+t.clientWidth>e&&v.push(t)})),null==p||p.classList[b.length?"add":"remove"]("active"),null==u||u.classList[v.length?"add":"remove"]("active")}function d(){h.addEventListener("transitionend",c),window.addEventListener("resize",(()=>{h.style.setProperty("margin-left","0px",""),g=0,c()})),a(),f.querySelectorAll(".boxMenuHasChildren").forEach((e=>{const t=e.querySelector(".boxMenuLink");t.setAttribute("aria-haspopup","true"),t.setAttribute("aria-expanded","false");const n=document.createElement("button");n.className="visuallyHidden",n.tabIndex=0,n.setAttribute("role","button"),n.setAttribute("aria-label",o.get("wcf.global.button.showMenu")),e.insertBefore(n,t.nextSibling);let i=!1;n.addEventListener("click",(()=>{i=!i,t.setAttribute("aria-expanded",i?"true":"false"),n.setAttribute("aria-label",o.get(i?"wcf.global.button.hideMenu":"wcf.global.button.showMenu"))}))}))}Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r);let u,p,h,f,m=!1,g=0,b=[],v=[];t.init=function(){const e=document.querySelector(".mainMenu .boxMenu"),t=e&&e.childElementCount?e.children[0]:null;if(null===t)throw new Error("Unable to find the main menu.");f=e,h=t,r.on("screen-lg",{match:a,unmatch:s,setup:d})}})),define("WoltLabSuite/Core/User",["require","exports"],(function(e,t){"use strict";class n{constructor(e,t,n){this.userId=e,this.username=t,this.link=n}}let i;return{getLink:()=>i.link,init(e,t,o){if(i)throw new Error("User has already been initialized.");i=new n(e,t,o)},get userId(){return i.userId},get username(){return i.username}}})),define("WoltLabSuite/Core/Ui/Message/UserConsent",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Change/Listener","../../Dom/Util","../../User"],(function(e,t,n,i,o,r,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importDefault(s);class l{constructor(){this.enableAll=!1,this.knownButtons=new WeakSet,"all"===window.sessionStorage.getItem(`${o.getStoragePrefix()}user-consent`)&&(this.enableAll=!0),this.registerEventListeners(),r.default.add("WoltLabSuite/Core/Ui/Message/UserConsent",(()=>this.registerEventListeners()))}registerEventListeners(){this.enableAll?this.enableAllExternalMedia():document.querySelectorAll(".jsButtonMessageUserConsentEnable").forEach((e=>{this.knownButtons.has(e)||(this.knownButtons.add(e),e.addEventListener("click",(e=>this.click(e))))}))}click(e){e.preventDefault(),this.enableAll=!0,this.enableAllExternalMedia(),s.default.userId?i.apiOnce({data:{actionName:"saveUserConsent",className:"wcf\\data\\user\\UserAction"},silent:!0}):window.sessionStorage.setItem(`${o.getStoragePrefix()}user-consent`,"all")}enableExternalMedia(e){const t=atob(e.dataset.payload);a.default.insertHtml(t,e,"before"),e.remove()}enableAllExternalMedia(){document.querySelectorAll(".messageUserConsent").forEach((e=>this.enableExternalMedia(e)))}}let c;t.init=function(){c||(c=new l)}}
1)),define("WoltLabSuite/Core/Clipboard",["require","exports"],(function(e,t){"use strict";async function n(e){if(navigator.clipboard)return navigator.clipboard.writeText(e);throw new Error("navigator.clipboard is not supported.")}Object.defineProperty(t,"__esModule",{value:!0}),t.copyElementTextToClipboard=t.copyTextToClipboard=void 0,t.copyTextToClipboard=n,t.copyElementTextToClipboard=async function(e){return n(e.textContent.replace(/\u200B/g,"").replace(/\u00A0/g," "))}})),define("WoltLabSuite/Core/Ui/Notification",["require","exports","tslib","../Language"],(function(e,t,n,i){"use strict";function o(){clearTimeout(s),a.classList.remove("active"),null!==c&&c(),l=!1}Object.defineProperty(t,"__esModule",{value:!0}),t.show=void 0,i=n.__importStar(i);let r,a,s,l=!1,c=null,d=!1;t.show=function(e,t,n){l||(l=!0,d||(d=!0,a=document.createElement("div"),a.id="systemNotification",r=document.createElement("p"),r.addEventListener("click",o),a.appendChild(r),document.body.appendChild(a)),c="function"==typeof t?t:null,r.className=n||"success",r.textContent=i.get(e||"wcf.global.success"),a.classList.add("active"),s=setTimeout(o,2e3))}})),define("WoltLabSuite/Core/Ui/Message/Share",["require","exports","tslib","../../Event/Handler","../../StringUtil"],(function(e,t,n,i,o){"use strict";function r(e,t,n,i){i||(i=s),window.open(t.replace("{pageURL}",i).replace("{text}",a+(n?`%20${i}`:"")),e,"height=600,width=600")}Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),o=n.__importStar(o);let a="",s="";t.init=function(){const e=document.querySelector('meta[property="og:title"]');null!==e&&(a=encodeURIComponent(e.content));const t=document.querySelector('meta[property="og:url"]');null!==t&&(s=encodeURIComponent(t.content)),document.querySelectorAll(".jsMessageShareButtons").forEach((e=>{e.classList.remove("jsMessageShareButtons");let t=encodeURIComponent(o.unescapeHTML(e.dataset.url||""));t||(t=s);const n={facebook:{link:e.querySelector(".jsShareFacebook"),share(e){e.preventDefault(),r("facebook","https://www.facebook.com/sharer.php?u={pageURL}&t={text}",!0,t)}},reddit:{link:e.querySelector(".jsShareReddit"),share(e){e.preventDefault(),r("reddit","https://ssl.reddit.com/submit?url={pageURL}",!1,t)}},twitter:{link:e.querySelector(".jsShareTwitter"),share(e){e.preventDefault(),r("twitter","https://twitter.com/share?url={pageURL}&text={text}",!1,t)}},linkedIn:{link:e.querySelector(".jsShareLinkedIn"),share(e){e.preventDefault(),r("linkedIn","https://www.linkedin.com/cws/share?url={pageURL}",!1,t)}},pinterest:{link:e.querySelector(".jsSharePinterest"),share(e){e.preventDefault(),r("pinterest","https://www.pinterest.com/pin/create/link/?url={pageURL}&description={text}",!1,t)}},xing:{link:e.querySelector(".jsShareXing"),share(e){e.preventDefault(),r("xing","https://www.xing.com/social_plugins/share?url={pageURL}",!1,t)}},whatsApp:{link:e.querySelector(".jsShareWhatsApp"),share(e){e.preventDefault(),window.location.href="https://api.whatsapp.com/send?text="+a+"%20"+s}}};i.fire("com.woltlab.wcf.message.share","shareProvider",{container:e,providers:n,pageDescription:a,pageUrl:s}),Object.values(n).forEach((e=>{if(null!==e.link){e.link.addEventListener("click",(t=>e.share(t)))}}))}))}})),define("WoltLabSuite/Core/Ui/Message/Share/Providers",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getEnabledProviders=t.getProviders=t.enableShareProviders=t.addShareProvider=void 0;const n=new Set,i=new Map([["Facebook",{cssClass:"jsShareFacebook",iconClassName:"fa-facebook-official",label:"wcf.message.share.facebook"}],["Twitter",{cssClass:"jsShareTwitter",iconClassName:"fa-twitter",label:"wcf.message.share.twitter"}],["Reddit",{cssClass:"jsShareReddit",iconClassName:"fa-reddit",label:"wcf.message.share.reddit"}],["WhatsApp",{cssClass:"jsShareWhatsApp",iconClassName:"fa-whatsapp",label:"wcf.message.share.whatsApp"}],["LinkedIn",{cssClass:"jsShareLinkedIn",iconClassName:"fa-linkedin",label:"wcf.message.share.linkedIn"}],["Pinterest",{cssClass:"jsSharePinterest",iconClassName:"fa-pinterest-p",label:"wcf.message.share.pinterest"}],["XING",{cssClass:"jsShareXing",iconClassName:"fa-xing",label:"wcf.message.share.xing"}]]);t.addShareProvider=function(e,t){if(i.has(e))throw new Error(`A share provider with name "${e}" already exists.`);i.set(e,t)},t.enableShareProviders=function(e){e.forEach((e=>{i.has(e)&&n.add(i.get(e))}))},t.getProviders=function(){return i},t.getEnabledProviders=function(){return n}})),define("WoltLabSuite/Core/Ui/Message/Share/Dialog",["require","exports","tslib","../../Dialog","../../../Dom/Util","../../../Dom/Traverse","../../../Language","../../../Clipboard","../../Notification","../../../StringUtil","../../../Dom/Change/Listener","../Share","./Providers"],(function(e,t,n,i,o,r,a,s,l,c,d,u,p){"use strict";function h(e,t){return`\n <dl>\n <dt>${a.get(e)}</dt>\n <dd>\n <div class="inputAddon">\n <input type="text" class="long" readonly value="${c.escapeHTML(t)}">\n <a href="#" class="inputSuffix button jsTooltip shareDialogCopyButton" title="${a.get("wcf.message.share.copy")}"><span class="icon icon16 fa-files-o pointer"></span></a>\n </div>\n </dd>\n </dl>\n `}function f(e){e.preventDefault();const t=e.currentTarget,n=`shareContentDialog_${o.default.identify(t)}`;if(i.default.getDialog(n))i.default.openStatic(n,null);else{const e=function(){const e=Array.from(p.getEnabledProviders()).map((e=>{const t=a.get(e.label);return`\n <li>\n <a href="#" role="button" class="button small ${e.cssClass}" title="${t}" aria-label="${t}">
1\n <span class="icon icon24 ${e.iconClassName}"></span>\n <span>${t}</span>\n </a>\n </li>\n `})).join("\n");return e?`<ul class="inlineList">${e}</ul>`:""}();let o="";e&&(o=`\n <dl class="messageShareButtons jsMessageShareButtons" data-url="${c.escapeHTML(t.href)}">\n <dt>${a.get("wcf.message.share.socialMedia")}</dt>\n <dd>${e}</dd>\n </dl>\n `);let d="";b&&(d=`\n <dl>\n <dt></dt>\n <dd>\n <button class="shareDialogNativeButton" data-url="${c.escapeHTML(t.href)}" data-title="${c.escapeHTML(t.dataset.linkTitle||"")}">${a.get("wcf.message.share.nativeShare")}</button>\n </dd>\n </dl>\n `);const f=`\n <div class="shareContentDialog">\n ${function(e){const t=e.href;let n=h("wcf.message.share.permalink",t);return e.dataset.bbcode&&(n+=h("wcf.message.share.permalink.bbcode",e.dataset.bbcode)),t&&e.dataset.linkTitle&&(e.dataset.bbcode||(n+=h("wcf.message.share.permalink.bbcode",`[url='${t}']${e.dataset.linkTitle}[/url]`)),n+=h("wcf.message.share.permalink.html",`<a href="${c.escapeHTML(t)}">${c.escapeHTML(e.dataset.linkTitle)}</a>`)),n}(t)}\n ${o}\n ${d}\n </div>\n `,m=i.default.openStatic(n,f,{title:a.get("wcf.message.share")});m.content.style.maxWidth="600px",m.content.querySelectorAll(".shareDialogCopyButton").forEach((e=>e.addEventListener("click",(e=>async function(e){e.preventDefault();const t=e.currentTarget,n=r.prevBySel(t,'input[type="text"]');await s.copyTextToClipboard(n.value),l.show(a.get("wcf.message.share.copy.success"))}(e))))),b&&m.content.querySelector(".shareDialogNativeButton").addEventListener("click",(e=>async function(e){e.preventDefault();const t=e.currentTarget,n={url:t.dataset.url};t.dataset.title&&(n.title=t.dataset.title),await window.navigator.share(n)}(e))),e&&u.init()}}function m(){document.querySelectorAll("a.shareButton,a.wsShareButton").forEach((e=>{g.has(e)||(e.addEventListener("click",(e=>f(e))),g.add(e))}))}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importDefault(i),o=n.__importDefault(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importStar(c),d=n.__importDefault(d),u=n.__importStar(u),p=n.__importStar(p);const g=new WeakSet,b=void 0!==window.navigator.share;t.setup=function(){m(),d.default.add("WoltLabSuite/Core/Ui/Message/Share/Dialog",(()=>m()))}})),define("WoltLabSuite/Core/Ui/Feed/Dialog",["require","exports","tslib","../Dialog","../../StringUtil","../../Language","../../Clipboard","../Notification"],(function(e,t,n,i,o,r,a,s){"use strict";function l(e){e.preventDefault();const t=e.currentTarget,n=t.href,l=n.replace(/(\\?|&)at=[^&]*&?/,"$1").replace(/(\?|&)$/,"");i.default.openStatic("feedLinkDialog",`\n<p class="info">${r.get("wcf.global.rss.accessToken.info")}</p>\n<dl>\n <dt>${r.get("wcf.global.rss.withoutAccessToken")}</dt>\n <dd>\n <div class="inputAddon">\n <input type="text" class="long" readonly value="${o.escapeHTML(l)}">\n <a href="#" class="inputSuffix button jsTooltip feedLinkDialogCopyButton" title="${r.get("wcf.global.rss.copy")}"><span class="icon icon16 fa-files-o pointer"></span></a>\n </div>\n </dd>\n</dl>\n<dl>\n <dt>${r.get("wcf.global.rss.withAccessToken")}</dt>\n <dd>\n <div class="inputAddon">\n <input type="text" class="long" readonly value="${o.escapeHTML(n)}">\n <a href="#" class="inputSuffix button jsTooltip feedLinkDialogCopyButton" title="${r.get("wcf.global.rss.copy")}"><span class="icon icon16 fa-files-o pointer"></span></a>\n </div>\n </dd>\n</dl>\n`,{onShow(e){e.querySelectorAll(".feedLinkDialogCopyButton").forEach((e=>e.addEventListener("click",(e=>async function(e){e.preventDefault();const t=e.currentTarget.parentNode.querySelector('input[type="text"]');await a.copyTextToClipboard(t.value),s.show(r.get("wcf.global.rss.copy.success"))}(e)))))},title:t.title||r.get("wcf.global.button.rss")})}Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importStar(s),t.setup=function(){document.querySelectorAll("a.rssFeed").forEach((e=>{e.addEventListener("click",(e=>l(e)))}))}})),define("WoltLabSuite/Core/Ui/Page/Menu/Main/Frontend",["require","exports"],(function(e,t){"use strict";function n(e,t){const i=e.querySelector(".boxMenuLink"),o=i.querySelector(".boxMenuLinkTitle").textContent;let r=0;const a=i.querySelector(".boxMenuLinkOutstandingItems");a&&(r=parseInt(a.textContent.replace(/[^0-9]/,""),10));const s=e.querySelector("ol");let l=[];
1if(s instanceof HTMLOListElement){let e=t;e<3&&(e=t+1),l=Array.from(s.children).map((t=>n(t,e)))}const c=i.getAttribute("href");let d,u;c&&"#"!==c&&(d=i.href,"_blank"===i.target&&(u=!0));return{active:e.classList.contains("active"),children:l,counter:r,depth:t,identifier:i.parentElement.dataset.identifier,link:d,openInNewWindow:u,title:o}}Object.defineProperty(t,"__esModule",{value:!0}),t.UiPageMenuMainFrontend=void 0;class i{getMenuItems(e){return Array.from(e.children).map((e=>n(e,0)))}}t.UiPageMenuMainFrontend=i,t.default=i})),define("WoltLabSuite/Core/BootstrapFrontend",["require","exports","tslib","./BackgroundQueue","./Bootstrap","./Controller/Popover","./Ui/User/Ignore","./Ui/Page/Header/Menu","./Ui/Message/UserConsent","./Ajax","./Ui/Message/Share/Dialog","./Ui/Message/Share/Providers","./Ui/Feed/Dialog","./User","./Ui/Page/Menu/Main/Frontend"],(function(e,t,n,i,o,r,a,s,l,c,d,u,p,h,f){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importStar(c),d=n.__importStar(d),u=n.__importStar(u),p=n.__importStar(p),h=n.__importDefault(h),f=n.__importDefault(f),t.setup=function(t){t.backgroundQueue.url=window.WSC_API_URL+t.backgroundQueue.url.substr(window.WCF_PATH.length),o.setup({enableMobileMenu:!0,pageMenuMainProvider:new f.default}),s.init(),t.styleChanger&&new Promise(((t,n)=>{e(["./Controller/Style/Changer"],t,n)})).then(n.__importStar).then((e=>{e.setup()})),t.enableUserPopover&&(r.init({className:"userLink",dboAction:"wcf\\data\\user\\UserProfileAction",identifier:"com.woltlab.wcf.user"}),r.init({attributeName:"data-user-id",className:"userLink",dboAction:"wcf\\data\\user\\UserProfileAction",identifier:"com.woltlab.wcf.user.deprecated"})),t.executeCronjobs&&c.apiOnce({data:{className:"wcf\\data\\cronjob\\CronjobAction",actionName:"executeCronjobs"},failure:()=>!1,silent:!0}),i.setUrl(t.backgroundQueue.url),(Math.random()<.1||t.backgroundQueue.force)&&i.invoke(),l.init(),u.enableShareProviders(t.shareButtonProviders||[]),d.setup(),h.default.userId&&p.setup()}})),define("WoltLabSuite/Core/ColorUtil",["require","exports"],(function(e,t){"use strict";function n(e,t,n){if(e>359)throw new TypeError("Hue cannot be larger than 359°");t/=100,n/=100;const i=(1-Math.abs(2*n-1))*t,o=i*(1-Math.abs(e/60%2-1)),r=n-i/2,[a,s,l]=0<=e&&e<60&&[i,o,0]||60<=e&&e<120&&[o,i,0]||120<=e&&e<180&&[0,i,o]||180<=e&&e<240&&[0,o,i]||240<=e&&e<300&&[o,0,i]||300<=e&&e<360&&[i,0,o];return{r:Math.round(255*(a+r)),g:Math.round(255*(s+r)),b:Math.round(255*(l+r))}}function i(e,t,n){const i={r:0,g:0,b:0},o=Math.floor(e/60),r=e/60-o,a=(n/=100)*(1-(t/=100)),s=n*(1-t*r),l=n*(1-t*(1-r));if(0==t)i.r=i.g=i.b=n;else switch(o){case 1:i.r=s,i.g=n,i.b=a;break;case 2:i.r=a,i.g=n,i.b=l;break;case 3:i.r=a,i.g=s,i.b=n;break;case 4:i.r=l,i.g=a,i.b=n;break;case 5:i.r=n,i.g=a,i.b=s;break;case 0:case 6:i.r=n,i.g=l,i.b=a}return{r:Math.round(255*i.r),g:Math.round(255*i.g),b:Math.round(255*i.b)}}function o(e,t,n){let i,o;e/=255,t/=255,n/=255;const r=Math.max(e,t,n),a=Math.min(e,t,n),s=r-a;if(i=0,r!==a){switch(r){case e:i=(t-n)/s*60;break;case t:i=60*(2+(n-e)/s);break;case n:i=60*(4+(e-t)/s)}i<0&&(i+=360)}const l=(r+a)/2;return o=0===r?0:s/(1-Math.abs(2*l-1)),{h:Math.round(i),s:Math.round(100*o),l:Math.round(100*l)}}function r(e,t,n){let i,o;e/=255,t/=255,n/=255;const r=Math.max(Math.max(e,t),n),a=Math.min(Math.min(e,t),n),s=r-a;if(i=0,r!==a){switch(r){case e:i=(t-n)/s*60;break;case t:i=60*(2+(n-e)/s);break;case n:i=60*(4+(e-t)/s)}i<0&&(i+=360)}return o=0===r?0:s/r,{h:Math.round(i),s:Math.round(100*o),v:Math.round(100*r)}}function a(e){if(/^#?([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/.test(e)){const t=e.split("");return"#"===t[0]&&t.shift(),3===t.length?{r:parseInt(t[0]+""+t[0],16),g:parseInt(t[1]+""+t[1],16),b:parseInt(t[2]+""+t[2],16)}:{r:parseInt(t[0]+""+t[1],16),g:parseInt(t[2]+""+t[3],16),b:parseInt(t[4]+""+t[5],16)}}return Number.NaN}function s(e){if(e<0||e>255)throw new Error(`Invalid RGB component value '${e}' given.`);return e.toString(16).padStart(2,"0").toUpperCase()}function l(e,t,n){if(void 0===t){const i=/^rgba?\((\d+), ?(\d+), ?(\d+)(?:, ?[0-9.]+)?\)$/.exec(e.toString());if(!i)throw new Error("Invalid RGB data given.");e=+i[1],t=+i[2],n=+i[3]}return s(e)+s(t)+s(n)}function c(e){if(e<0||e>1)throw new Error(`Invalid alpha value '${e}' given.`);return Math.round(255*e).toString(16).padStart(2,"0").toUpperCase()}function d(e,t,n,i){if(void 0===t){const t=e;return l(t.r,t.g,t.b)+c(t.a)}return l(e,t,n)+c(i)}function u(e){return`rgba(${e.r}, ${e.g}, ${e.b}, ${e.a})`}function p(){let e=document.getElementById("jsColorUtilColorChecker");return null===e&&(e=document.createElement("span"),e.id="jsColorUtilColorChecker",document.body.appendChild(e)),e}function h(e){const t=p();return t.style.color="",t.style.color=e,""!==t.style.color}function f(e){if(!h(e))throw new Error(`Given string '${e}' is no valid color.`);const t=p();t.style.color=e;const n=window.getComputedStyle(t).color,i=/^rgb\((\d+), ?(\d+), ?(\d+)\)$/.exec(n);if(i)return{r:+i[1],g:+i[2],b:+i[3],a:1};{const e=/^rgba\((\d+), ?(\d+), ?(\d+), ?([0-9.]+)\)$/.exec(n);if(e)return{r:+e[1],g:+e[2],b:+e[3],a:+e[4]}}throw new Error(`Cannot process color '${e}'.`)}
1Object.defineProperty(t,"__esModule",{value:!0}),t.stringToRgba=t.isValidColor=t.rgbaToString=t.rgbaToHex=t.rgbToHex=t.hexToRgb=t.rgbToHsv=t.rgbToHsl=t.hsvToRgb=t.hslToRgb=void 0,t.hslToRgb=n,t.hsvToRgb=i,t.rgbToHsl=o,t.rgbToHsv=r,t.hexToRgb=a,t.rgbToHex=l,t.rgbaToHex=d,t.rgbaToString=u,t.isValidColor=h,t.stringToRgba=f,window.__wcf_bc_colorUtil={hexToRgb:a,hslToRgb:n,hsvToRgb:i,isValidColor:h,rgbaToHex:d,rgbaToString:u,rgbToHex:l,rgbToHsv:r,rgbToHsl:o,stringToRgba:f}})),define("WoltLabSuite/Core/Dictionary",["require","exports","tslib","./Core"],(function(e,t,n,i){"use strict";i=n.__importStar(i);class o{constructor(){this._dictionary=new Map}set(e,t){this._dictionary.set(e.toString(),t)}delete(e){return this._dictionary.delete(e.toString())}has(e){return this._dictionary.has(e.toString())}get(e){return this._dictionary.get(e.toString())}forEach(e){if("function"!=typeof e)throw new TypeError("forEach() expects a callback as first parameter.");this._dictionary.forEach(e)}merge(...e){for(let t=0,n=e.length;t<n;t++){e[t].forEach(((e,t)=>this.set(t,e)))}}toObject(){const e={};return this._dictionary.forEach(((t,n)=>e[n]=t)),e}static fromObject(e){const t=new o;return Object.keys(e).forEach((n=>{t.set(n,e[n])})),t}get size(){return this._dictionary.size}}return i.enableLegacyInheritance(o),o})),define("WoltLabSuite/Core/FileUtil",["require","exports","tslib","./StringUtil"],(function(e,t,n,i){"use strict";function o(e){return a.has(e)?"."+a.get(e):""}Object.defineProperty(t,"__esModule",{value:!0}),t.blobToFile=t.getExtensionByMimeType=t.getIconNameByFilename=t.formatFilesize=void 0,i=n.__importStar(i);const r=new Map(Object.entries({zip:"archive",rar:"archive",tar:"archive",gz:"archive",mp3:"audio",ogg:"audio",wav:"audio",php:"code",html:"code",htm:"code",tpl:"code",js:"code",xls:"excel",ods:"excel",xlsx:"excel",gif:"image",jpg:"image",jpeg:"image",png:"image",bmp:"image",webp:"image",avi:"video",wmv:"video",mov:"video",mp4:"video",mpg:"video",mpeg:"video",flv:"video",pdf:"pdf",ppt:"powerpoint",pptx:"powerpoint",txt:"text",doc:"word",docx:"word",odt:"word"})),a=new Map(Object.entries({"application/zip":"zip","application/x-zip-compressed":"zip","application/rar":"rar","application/vnd.rar":"rar","application/x-rar-compressed":"rar","application/x-tar":"tar","application/x-gzip":"gz","application/gzip":"gz","audio/mpeg":"mp3","audio/mp3":"mp3","audio/ogg":"ogg","audio/x-wav":"wav","application/x-php":"php","text/html":"html","application/javascript":"js","application/vnd.ms-excel":"xls","application/vnd.oasis.opendocument.spreadsheet":"ods","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"xlsx","image/gif":"gif","image/jpeg":"jpg","image/png":"png","image/x-ms-bmp":"bmp","image/bmp":"bmp","image/webp":"webp","video/x-msvideo":"avi","video/x-ms-wmv":"wmv","video/quicktime":"mov","video/mp4":"mp4","video/mpeg":"mpg","video/x-flv":"flv","application/pdf":"pdf","application/vnd.ms-powerpoint":"ppt","application/vnd.openxmlformats-officedocument.presentationml.presentation":"pptx","text/plain":"txt","application/msword":"doc","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"docx","application/vnd.oasis.opendocument.text":"odt","public.jpeg":"jpeg","public.png":"png","com.compuserve.gif":"gif","org.webmproject.webp":"webp"}));t.formatFilesize=function(e,t=2){let n="Byte";return e>=1e3&&(e/=1e3,n="kB"),e>=1e3&&(e/=1e3,n="MB"),e>=1e3&&(e/=1e3,n="GB"),e>=1e3&&(e/=1e3,n="TB"),i.formatNumeric(e,-t)+" "+n},t.getIconNameByFilename=function(e){const t=e.lastIndexOf(".");if(-1!==t){const n=e.substr(t+1);if(r.has(n))return r.get(n)}return""},t.getExtensionByMimeType=o,t.blobToFile=function(e,t){const n=o(e.type);return new File([e],t+n,{type:e.type})}})),define("WoltLabSuite/Core/List",["require","exports","tslib","./Core"],(function(e,t,n,i){"use strict";i=n.__importStar(i);class o{constructor(){this._set=new Set}add(e){this._set.add(e)}clear(){this._set.clear()}delete(e){return this._set.delete(e)}forEach(e){this._set.forEach(e)}has(e){return this._set.has(e)}get size(){return this._set.size}}return i.enableLegacyInheritance(o),o})),define("WoltLabSuite/Core/ObjectMap",["require","exports","tslib","./Core"],(function(e,t,n,i){"use strict";i=n.__importStar(i);class o{constructor(){this._map=new WeakMap}set(e,t){if("object"!=typeof e||null===e)throw new TypeError("Only objects can be used as key");if("object"!=typeof t||null===t)throw new TypeError("Only objects can be used as value");this._map.set(e,t)}delete(e){this._map.delete(e)}has(e){return this._map.has(e)}get(e){return this._map.get(e)}}return i.enableLegacyInheritance(o),o})),define("WoltLabSuite/Core/Permission",["require","exports"],(function(e,t){"use strict";function n(e,t){if("boolean"!=typeof t)throw new TypeError("The permission value has to be boolean.");i.set(e,t)}
1Object.defineProperty(t,"__esModule",{value:!0}),t.get=t.addObject=t.add=void 0;const i=new Map;t.add=n,t.addObject=function(e){Object.keys(e).forEach((t=>n(t,e[t])))},t.get=function(e){return!!i.has(e)&&i.get(e)}})),_self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(e){function t(e,t,n,i){this.type=e,this.content=t,this.alias=n,this.length=0|(i||"").length}function n(e,i,a,s,l,c){var d,p,h,f,m,g,b,v,w,y,_,E,S,C,L,x,k,T,M,I,D,A,j,P,O;for(d in a)if(a.hasOwnProperty(d)&&a[d])for(p=a[d],p=Array.isArray(p)?p:[p],h=0;h<p.length;++h){if(c&&c.cause==d+","+h)return;for(m=(f=p[h]).inside,g=!!f.lookbehind,b=!!f.greedy,v=0,w=f.alias,b&&!f.pattern.global&&(y=f.pattern.toString().match(/[imsuy]*$/)[0],f.pattern=RegExp(f.pattern.source,y+"g")),_=f.pattern||f,E=s.next,S=l;E!==i.tail&&!(c&&S>=c.reach);S+=E.value.length,E=E.next){if(C=E.value,i.length>e.length)return;if(!(C instanceof t)){if(L=1,b&&E!=i.tail.prev){if(_.lastIndex=S,!(x=_.exec(e)))break;for(k=x.index+(g&&x[1]?x[1].length:0),T=x.index+x[0].length,M=S,M+=E.value.length;k>=M;)M+=(E=E.next).value.length;if(S=M-=E.value.length,E.value instanceof t)continue;for(I=E;I!==i.tail&&(M<T||"string"==typeof I.value);I=I.next)L++,M+=I.value.length;L--,C=e.slice(S,M),x.index-=S}else _.lastIndex=0,x=_.exec(C);x&&(g&&(v=x[1]?x[1].length:0),T=(k=x.index+v)+(D=x[0].slice(v)).length,A=C.slice(0,k),j=C.slice(T),P=S+C.length,c&&P>c.reach&&(c.reach=P),O=E.prev,A&&(O=o(i,O,A),S+=A.length),r(i,O,L),E=o(i,O,new t(d,m?u.tokenize(D,m):D,w,D)),j&&o(i,E,j),L>1&&n(e,i,a,E.prev,S,{cause:d+","+h,reach:P}))}}}}function i(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function o(e,t,n){var i=t.next,o={value:n,prev:t,next:i};return t.next=o,i.prev=o,e.length++,o}function r(e,t,n){var i,o=t.next;for(i=0;i<n&&o!==e.tail;i++)o=o.next;t.next=o,o.prev=t,e.length-=i}function a(){u.manual||u.highlightAll()}var s,l,c=/\blang(?:uage)?-([\w-]+)\b/i,d=0,u={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(n){return n instanceof t?new t(n.type,e(n.content),n.alias):Array.isArray(n)?n.map(e):n.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++d}),e.__id},clone:function e(t,n){var i,o,r;switch(n=n||{},u.util.type(t)){case"Object":if(o=u.util.objId(t),n[o])return n[o];for(r in i={},n[o]=i,t)t.hasOwnProperty(r)&&(i[r]=e(t[r],n));return i;case"Array":return o=u.util.objId(t),n[o]?n[o]:(i=[],n[o]=i,t.forEach((function(t,o){i[o]=e(t,n)})),i);default:return t}},getLanguage:function(e){for(;e&&!c.test(e.className);)e=e.parentElement;return e?(e.className.match(c)||[,"none"])[1].toLowerCase():"none"},currentScript:function(){var e,t,n;if("undefined"==typeof document)return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(i){if(e=(/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(i.stack)||[])[1])for(n in t=document.getElementsByTagName("script"))if(t[n].src==e)return t[n];return null}},isActive:function(e,t,n){for(var i,o="no-"+t;e;){if((i=e.classList).contains(t))return!0;if(i.contains(o))return!1;e=e.parentElement}return!!n}},languages:{extend:function(e,t){var n,i=u.util.clone(u.languages[e]);for(n in t)i[n]=t[n];return i},insertBefore:function(e,t,n,i){var o,r,a,s,l;for(a in o=(i=i||u.languages)[e],r={},o)if(o.hasOwnProperty(a)){if(a==t)for(s in n)n.hasOwnProperty(s)&&(r[s]=n[s]);n.hasOwnProperty(a)||(r[a]=o[a])}return l=i[e],i[e]=r,u.languages.DFS(u.languages,(function(t,n){n===l&&t!=e&&(this[t]=r)})),r},DFS:function e(t,n,i,o){var r,a,s,l;for(a in o=o||{},r=u.util.objId,t)t.hasOwnProperty(a)&&(n.call(t,a,t[a],i||a),s=t[a],"Object"!==(l=u.util.type(s))||o[r(s)]?"Array"!==l||o[r(s)]||(o[r(s)]=!0,e(s,n,a,o)):(o[r(s)]=!0,e(s,n,null,o)))}},plugins:{},highlightAll:function(e,t){u.highlightAllUnder(document,e,t)},highlightAllUnder:function(e,t,n){var i,o,r={callback:n,container:e,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};for(u.hooks.run("before-highlightall",r),r.elements=Array.prototype.slice.apply(r.container.querySelectorAll(r.selector)),u.hooks.run("before-all-elements-highlight",r),i=0;o=r.elements[i++];)u.highlightElement(o,!0===t,r.callback)},highlightElement:function(t,n,i){function o(e){s.highlightedCode=e,u.hooks.run("before-insert",s),s.element.innerHTML=s.highlightedCode,u.hooks.run("after-highlight",s),u.hooks.run("complete",s),i&&i.call(s.element)}var r,a,s,l,d=u.util.getLanguage(t),p=u.languages[d];if(t.className=t.className.replace(c,"").replace(/\s+/g," ")+" language-"+d,(r=t.parentElement)&&"pre"===r.nodeName.toLowerCase()&&(r.className=r.className.replace(c,"").replace(/\s+/g," ")+" language-"+d),a=t.textContent,s={element:t,language:d,grammar:p,code:a},u.hooks.run("before-sanity-check",s),!s.code)return u.hooks.run("complete",s),void(i&&i.call(s.element));u.hooks.run("before-highlight",s),s.grammar?n&&e.Worker?((l=new Worker(u.filename)).onmessage=function(e){o(e.data)},l.postMessage(JSON.stringify({language:s.language,code:s.code,immediateClose:!0}))):o(u.highlight(s.code,s.grammar,s.language)):o(u.util.encode(s.code))},highlight:function(e,n,i){var o={code:e,grammar:n,language:i};return u.hooks.run("before-tokenize",o),o.tokens=u.tokenize(o.code,o.grammar),u.hooks.run("after-tokenize",o),t.stringify(u.util.encode(o.tokens),o.language)},tokenize:function(e,t){var r,a,s=t.rest;if(s){for(r in s)t[r]=s[r];delete t.rest}return o(a=new i,a.head,e),n(e,a,t,a.head,0),function(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}(a)},hooks:{all:{},add:function(e,t){var n=u.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n,i,o=u.hooks.all[e];if(o&&o.length)for(n=0;i=o[n++];)i(t)}},Token:t};return e.Prism=u,t.stringify=function e(t,n){var i,o,r,a,s;if("string"==typeof t)return t;if(Array.isArray(t))return i="",t.forEach((function(t){i+=e(t,n)}
1)),i;for(s in o={type:t.type,content:e(t.content,n),tag:"span",classes:["token",t.type],attributes:{},language:n},(r=t.alias)&&(Array.isArray(r)?Array.prototype.push.apply(o.classes,r):o.classes.push(r)),u.hooks.run("wrap",o),a="",o.attributes)a+=" "+s+'="'+(o.attributes[s]||"").replace(/"/g,""")+'"';return"<"+o.tag+' class="'+o.classes.join(" ")+'"'+a+">"+o.content+"</"+o.tag+">"},e.document?((s=u.util.currentScript())&&(u.filename=s.src,s.hasAttribute("data-manual")&&(u.manual=!0)),u.manual||("loading"===(l=document.readyState)||"interactive"===l&&s&&s.defer?document.addEventListener("DOMContentLoaded",a):window.requestAnimationFrame?window.requestAnimationFrame(a):window.setTimeout(a,16)),u):e.addEventListener?(u.disableWorkerMessageHandler||e.addEventListener("message",(function(t){var n=JSON.parse(t.data),i=n.language,o=n.code,r=n.immediateClose;e.postMessage(u.highlight(o,u.languages[i],i)),r&&e.close()}),!1),u):u}(_self),"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism),define("prism/prism",(function(){})),window.Prism=window.Prism||{},window.Prism.manual=!0,define("WoltLabSuite/Core/Prism",["prism/prism"],(function(){return Prism.wscSplitIntoLines=function(e){function t(){var e=elCreate("span");return elData(e,"number",o++),i.appendChild(e),e}for(var n,i=document.createDocumentFragment(),o=1,r=document.createNodeIterator(e,NodeFilter.SHOW_TEXT,(function(){return NodeFilter.FILTER_ACCEPT}),!1),a=t();n=r.nextNode();)n.data.split(/\r?\n/).forEach((function(i,o){var r,s,l;for(o>=1&&(a.appendChild(document.createTextNode("\n")),a=t()),r=document.createTextNode(i),s=n.parentNode;s!==e;)(l=s.cloneNode(!1)).appendChild(r),r=l,s=s.parentNode;a.appendChild(r)}));return i},Prism})),define("WoltLabSuite/Core/Prism/Helper",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.splitIntoLines=void 0,t.splitIntoLines=function*(e){const t=document.createNodeIterator(e,NodeFilter.SHOW_TEXT,{acceptNode:()=>NodeFilter.FILTER_ACCEPT});let n,i=document.createElement("span");for(;n=t.nextNode();){const t=n,o=t.data.split(/\r?\n/);for(let n=0,r=o.length;n<r;n++){const r=o[n];n>=1&&(i.appendChild(document.createTextNode("\n")),yield i,i=document.createElement("span"));let a=document.createTextNode(r),s=t.parentNode;for(;s&&s!==e;){const e=s.cloneNode(!1);e.appendChild(a),a=e,s=s.parentNode}i.appendChild(a)}}yield i}})),define("WoltLabSuite/Core/Bbcode/Code",["require","exports","tslib","../Language","../Clipboard","../Ui/Notification","../Prism","../Prism/Helper"],(function(e,t,n,i,o,r,a,s){"use strict";async function l(){return new Promise(((e,t)=>{window.requestIdleCallback?window.requestIdleCallback(e,{timeout:5e3}):setTimeout(e,0)}))}i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importDefault(a),s=n.__importStar(s);class c{constructor(e){var t;this.container=e,this.codeContainer=this.container.querySelector(".codeBoxCode > code"),this.language=null===(t=Array.from(this.codeContainer.classList).find((e=>/^language-([a-z0-9_-]+)$/.test(e))))||void 0===t?void 0:t.replace(/^language-/,"")}static processAll(){document.querySelectorAll(".codeBox:not([data-processed])").forEach((e=>{e.dataset.processed="1";const t=new c(e);t.language&&t.highlight(),t.createCopyButton()}))}createCopyButton(){const e=this.container.querySelector(".codeBoxHeader");if(!e)return;const t=document.createElement("span");t.tabIndex=0,t.setAttribute("role","button"),t.className="icon icon24 fa-files-o pointer jsTooltip",t.setAttribute("title",i.get("wcf.message.bbcode.code.copy"));const n=async()=>{await o.copyElementTextToClipboard(this.codeContainer),r.show(i.get("wcf.message.bbcode.code.copy.success"))};t.addEventListener("click",n),t.addEventListener("keydown",(e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),n())})),e.appendChild(t)}async highlight(){if(!this.language)throw new Error("No language detected");const t=(await new Promise(((t,n)=>{e(["../prism-meta"],t,n)})).then(n.__importStar)).default;if(!t[this.language])throw new Error(`Unknown language '${this.language}'`);this.container.classList.add("highlighting"),await new Promise(((n,i)=>{e(["prism/components/prism-"+t[this.language].file],n,i)})).then(n.__importStar),await l();const i=a.default.languages[this.language];if(!i)throw new Error(`Invalid language '${this.language}' given.`);const o=document.createElement("div");o.innerHTML=a.default.highlight(this.codeContainer.textContent,i,this.language),await l();const r=this.codeContainer.querySelectorAll(".codeBoxLine > span"),d=s.splitIntoLines(o);for(let e=0,t=r.length;e<t;e+=c.chunkSize){await l();const n=Math.min(e+c.chunkSize,t);for(let t=e;t<n;t++){const e=r[t],n=d.next().value;e.parentNode.replaceChild(n,e)}}this.container.classList.remove("highlighting"),this.container.classList.add("highlighted")}}return c.chunkSize=50,c})),define("WoltLabSuite/Core/Bbcode/Collapsible",["require","exports"],(function(e,t){"use strict";function n(e,t,n){if(e.classList.toggle("collapsed")){if(t.forEach((e=>{const t=e.dataset.titleExpand;e.classList.contains("icon")?(e.classList.remove("fa-compress"),e.classList.add("fa-expand"),e.title=t):e.textContent=t})),n instanceof Event){const t=e.getBoundingClientRect().top;if(t<0){let e=window.pageYOffset+(t-100);e<0&&(e=0),window.scrollTo(window.pageXOffset,e)}}}else t.forEach((e=>{const t=e.dataset.titleCollapse;e.classList.contains("icon")?(e.classList.add("fa-compress"),e.classList.remove("fa-expand"),e.title=t):e.textContent=t}))}
1Object.defineProperty(t,"__esModule",{value:!0}),t.observe=void 0,t.observe=function(){document.querySelectorAll(".jsCollapsibleBbcode").forEach((e=>{const t=Array.from(e.querySelectorAll(".toggleButton:not(.jsToggleButtonEnabled)")).filter((t=>t.closest(".jsCollapsibleBbcode")===e)),i=e.querySelector(".collapsibleBbcodeOverflow")||e;t.length>0&&function(e,t,i){t.forEach((i=>{i.classList.add("jsToggleButtonEnabled"),i.addEventListener("click",(i=>n(e,t,i))),i.addEventListener("keydown",(i=>{"Enter"!==i.key&&" "!==i.key||(i.preventDefault(),n(e,t))}))})),0!==i.scrollTop&&(i.scrollTop=0,n(e,t)),i.addEventListener("scroll",(()=>{i.scrollTop=0,e.classList.contains("collapsed")&&n(e,t)}))}(e,t,i),e.classList.remove("jsCollapsibleBbcode")}))}})),define("WoltLabSuite/Core/Bbcode/Spoiler",["require","exports","tslib","../Core","../Language","../Dom/Util"],(function(e,t,n,i,o,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.observe=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),t.observe=function(){const e="jsSpoilerBox";document.querySelectorAll(`.${e}`).forEach((t=>{t.classList.remove(e);const n=t.querySelector(".jsSpoilerToggle"),a=t.querySelector(".spoilerBoxContent");n.addEventListener("click",(e=>function(e,t,n){e.preventDefault(),n.classList.toggle("active");const a=n.classList.contains("active");a?r.default.show(t):r.default.hide(t),n.setAttribute("aria-expanded",a?"true":"false"),t.setAttribute("aria-hidden",a?"false":"true"),i.stringToBool(n.dataset.hasCustomLabel||"")||(n.textContent=o.get(n.classList.contains("active")?"wcf.bbcode.spoiler.hide":"wcf.bbcode.spoiler.show"))}(e,a,n)))}))}})),define("WoltLabSuite/Core/Controller/Captcha",["require","exports"],(function(e,t){"use strict";const n=new Map;return{add(e,t){if(n.has(e))throw new Error(`Captcha with id '${e}' is already registered.`);if("function"!=typeof t)throw new TypeError("Expected a valid callback for parameter 'callback'.");n.set(e,t)},delete(e){if(!n.has(e))throw new Error(`Unknown captcha with id '${e}'.`);n.delete(e)},has:e=>n.has(e),getData(e){if(!n.has(e))throw new Error(`Unknown captcha with id '${e}'.`);return n.get(e)()}}})),define("WoltLabSuite/Core/Event/Key",["require","exports"],(function(e,t){"use strict";function n(e,t,n){if(!(e instanceof Event))throw new TypeError("Expected a valid event when testing for key '"+t+"'.");return e.key===t||e.which===n}Object.defineProperty(t,"__esModule",{value:!0}),t.Tab=t.Space=t.Home=t.Escape=t.Enter=t.End=t.Comma=t.ArrowUp=t.ArrowRight=t.ArrowLeft=t.ArrowDown=void 0,t.ArrowDown=function(e){return n(e,"ArrowDown",40)},t.ArrowLeft=function(e){return n(e,"ArrowLeft",37)},t.ArrowRight=function(e){return n(e,"ArrowRight",39)},t.ArrowUp=function(e){return n(e,"ArrowUp",38)},t.Comma=function(e){return n(e,",",44)},t.End=function(e){return n(e,"End",35)},t.Enter=function(e){return n(e,"Enter",13)},t.Escape=function(e){return n(e,"Escape",27)},t.Home=function(e){return n(e,"Home",36)},t.Space=function(e){return n(e,"Space",32)},t.Tab=function(e){return n(e,"Tab",9)}})),define("WoltLabSuite/Core/Language/Chooser",["require","exports","tslib","../Core","../Language","../Dom/Util","../Ui/Dropdown/Simple"],(function(e,t,n,i,o,r,a){"use strict";function s(e,t,n){const o=u.get(e);if(void 0===n&&void 0===(n=Array.from(o.dropdownMenu.children).find((e=>~~e.dataset.languageId===t))))throw new Error(`The language id '${t}' is unknown`);o.element.value=t.toString(),i.triggerEvent(o.element,"change"),o.dropdownToggle.innerHTML=n.children[0].innerHTML,u.set(e,o),"function"==typeof o.callback&&o.callback(n)}function l(e){const t=e.currentTarget;p.get(t).forEach((e=>{const n=document.createElement("input");n.type="hidden",n.name=e,n.value=d(e).toString(),t.appendChild(n)}))}function c(e){const t=u.get(e);if(void 0===t)throw new Error(`Expected a valid language chooser input element, '${e}' is not i18n input field.`);return t}function d(e){return~~c(e).element.value}Object.defineProperty(t,"__esModule",{value:!0}),t.setLanguageId=t.removeChooser=t.getLanguageId=t.getChooser=t.init=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a);const u=new Map,p=new WeakMap;t.init=function(e,t,n,i,c,d){if(u.has(t))return;const h=document.getElementById(e);if(null===h)throw new Error(`Expected a valid container id, cannot find '${t}'.`);let f=document.getElementById(t);null===f&&(f=document.createElement("input"),f.type="hidden",f.id=t,f.name=t,f.value=n.toString(),h.appendChild(f)),function(e,t,n,i,c,d){function h(t){const n=t.currentTarget,i=~~n.dataset.languageId,o=b.querySelector(".active");null!==o&&o.classList.remove("active"),i&&n.classList.add("active"),s(e,i,n)}let f;const m=t.parentElement;"DD"===m.nodeName?(f=document.createElement("div"),f.className="dropdown",m.insertAdjacentElement("afterbegin",f)):(f=m,f.classList.add("dropdown")),r.default.hide(t);const g=document.createElement("a");g.className="dropdownToggle dropdownIndicator boxFlag box24 inputPrefix","DD"===m.nodeName&&g.classList.add("button"),f.appendChild(g);const b=document.createElement("ul");if(b.className="dropdownMenu",f.appendChild(b),Object.entries(i).forEac
1h((([e,t])=>{const i=document.createElement("li");i.className="boxFlag",i.addEventListener("click",h),i.dataset.languageId=e,void 0!==t.languageCode&&(i.dataset.languageCode=t.languageCode),b.appendChild(i);const o=document.createElement("a");o.className="box24",o.href="#",o.addEventListener("click",(e=>e.preventDefault())),i.appendChild(o);const r=document.createElement("img");r.src=t.iconPath,r.alt="",r.className="iconFlag",r.height=15,r.width=24,r.loading="eager",o.appendChild(r);const a=document.createElement("span");a.textContent=t.languageName,o.appendChild(a),+e===n&&(g.innerHTML=o.innerHTML)})),d){const e=document.createElement("li");e.className="dropdownDivider",b.appendChild(e);const t=document.createElement("li");t.dataset.languageId="0",t.addEventListener("click",h),b.appendChild(t);const i=document.createElement("a");i.textContent=o.get("wcf.global.language.noSelection"),t.appendChild(i),0===n&&(g.innerHTML=i.innerHTML),t.addEventListener("click",h)}else if(0===n){g.innerHTML="";const e=document.createElement("div");g.appendChild(e);const t=document.createElement("span");t.className="icon icon24 fa-question pointer",e.appendChild(t);const n=document.createElement("span");n.textContent=o.get("wcf.global.language.noSelection"),e.appendChild(n)}a.default.init(g),u.set(e,{callback:c,dropdownMenu:b,dropdownToggle:g,element:t});const v=t.closest("form");if(null!==v){v.addEventListener("submit",l);let t=p.get(v);void 0===t&&(t=[],p.set(v,t)),t.push(e)}}(t,f,n,i,c,d)},t.getChooser=c,t.getLanguageId=d,t.removeChooser=function(e){u.delete(e)},t.setLanguageId=function(e,t){if(void 0===u.get(e))throw new Error(`Expected a valid input element, '${e}' is not i18n input field.`);s(e,t)}})),define("WoltLabSuite/Core/Language/Input",["require","exports","tslib","../Dom/Util","../Language","../Ui/Dropdown/Simple","../StringUtil"],(function(e,t,n,i,o,r,a){"use strict";function s(e,t,n){const i=d.get(e),o=r.default.getDropdownMenu(i.element.closest(".inputAddon").id).querySelector(`[data-language-id="${t}"]`),a=o?o.textContent:"";if(i.languageId!==t){const o=p.get(e);i.languageId&&o.set(i.languageId,i.element.value),0===t?p.set(e,new Map):(i.buttonLabel.classList.contains("active")||n)&&(i.element.value=o.get(t)||""),i.buttonLabel.textContent=a,i.buttonLabel.classList[t?"add":"remove"]("active"),i.languageId=t}n||(i.element.blur(),i.element.focus()),i.callbacks.has("select")&&i.callbacks.get("select")(i.element)}function l(e,t){if("open"!==t)return;const n=r.default.getDropdownMenu(e),i=document.getElementById(e).dataset.inputId,o=d.get(i),a=p.get(i);Array.from(n.children).forEach((e=>{const t=~~(e.dataset.languageId||"");if(t){let n=!1;o.languageId&&(n=t===o.languageId?""===o.element.value.trim():!a.get(t)),n?e.classList.add("missingValue"):e.classList.remove("missingValue")}}))}function c(e){const t=e.currentTarget;u.get(t).forEach((e=>{const n=d.get(e);if(!n.isEnabled)return;const i=p.get(e);n.callbacks.has("submit")&&n.callbacks.get("submit")(n.element),n.languageId&&i.set(n.languageId,n.element.value),i.size&&(i.forEach((function(n,i){const o=document.createElement("input");o.type="hidden",o.name=`${e}_i18n[${i}]`,o.value=n,t.appendChild(o)})),n.element.removeAttribute("name"))}))}Object.defineProperty(t,"__esModule",{value:!0}),t.validate=t.isEnabled=t.enable=t.disable=t.setValues=t.getValues=t.unregister=t.registerCallback=t.init=void 0,i=n.__importDefault(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a);const d=new Map,u=new WeakMap,p=new Map;t.init=function(e,t,n,i){if(p.has(e))return;const h=document.getElementById(e);if(null===h)throw new Error(`Expected a valid element id, cannot find '${e}'.`);const f=new Map;Object.entries(t).forEach((([e,t])=>{f.set(+e,a.unescapeHTML(t))})),p.set(e,f),function(e,t,n,i,a){let p=t.parentElement;if(!p.classList.contains("inputAddon")){p=document.createElement("div"),p.className="inputAddon","TEXTAREA"===t.nodeName&&p.classList.add("inputAddonTextarea"),p.dataset.inputId=e;const n=document.activeElement===t;t.insertAdjacentElement("beforebegin",p),p.appendChild(t),n&&t.focu
1s()}p.classList.add("dropdown");const h=document.createElement("span");h.className="button dropdownToggle inputPrefix";const f=document.createElement("span");f.textContent=o.get("wcf.global.button.disabledI18n"),h.appendChild(f),p.insertBefore(h,t);const m=document.createElement("ul");m.className="dropdownMenu",h.insertAdjacentElement("afterend",m);const g=t=>{let n;n=t instanceof HTMLElement?t:t.currentTarget;const i=~~n.dataset.languageId,o=m.querySelector(".active");null!==o&&o.classList.remove("active"),i&&n.classList.add("active");const r=t instanceof HTMLElement;s(e,i,r)};if(Object.entries(i).forEach((([e,t])=>{const n=document.createElement("li");n.dataset.languageId=e;const i=document.createElement("span");i.textContent=t,n.appendChild(i),n.addEventListener("click",g),m.appendChild(n)})),!a){const e=document.createElement("li");e.className="dropdownDivider",m.appendChild(e);const t=document.createElement("li");t.dataset.languageId="0",t.addEventListener("click",g);const n=document.createElement("span");n.textContent=o.get("wcf.global.button.disabledI18n"),t.appendChild(n),m.appendChild(t)}let b;(a||n.size)&&(b=Array.from(m.children).find((e=>+e.dataset.languageId===window.LANGUAGE_ID))),r.default.init(h),r.default.registerCallback(p.id,l),d.set(e,{buttonLabel:f,callbacks:new Map,element:t,languageId:0,isEnabled:!0,forceSelection:a});const v=t.closest("form");if(null!==v){v.addEventListener("submit",c);let t=u.get(v);void 0===t&&(t=[],u.set(v,t)),t.push(e)}b&&g(b)}(e,h,f,n,i)},t.registerCallback=function(e,t,n){if(!p.has(e))throw new Error(`Unknown element id '${e}'.`);
1d.get(e).callbacks.set(t,n)},t.unregister=function(e){if(!p.has(e))throw new Error(`Unknown element id '${e}'.`);p.delete(e),d.delete(e)},t.getValues=function(e){const t=d.get(e);if(void 0===t)throw new Error(`Expected a valid i18n input element, '${e}' is not i18n input field.`);const n=p.get(e);return n.set(t.languageId,t.element.value),n},t.setValues=function(e,t){const n=d.get(e);if(void 0===n)throw new Error(`Expected a valid i18n input element, '${e}' is not i18n input field.`);n.element.value="";const i=new Map(Object.entries(t).map((([e,t])=>[+e,t])));if(i.has(0))return n.element.value=i.get(0),i.delete(0),p.set(e,i),void s(e,0,!0);p.set(e,i),n.languageId=0,s(e,window.LANGUAGE_ID,!0)},t.disable=function(e){const t=d.get(e);if(void 0===t)throw new Error(`Expected a valid element, '${e}' is not an i18n input field.`);if(!t.isEnabled)return;t.isEnabled=!1;const n=t.buttonLabel.parentElement;i.default.hide(n),n.parentElement.classList.remove("inputAddon","dropdown")},t.enable=function(e){const t=d.get(e);if(void 0===t)throw new Error(`Expected a valid i18n input element, '${e}' is not i18n input field.`);if(t.isEnabled)return;t.isEnabled=!0;const n=t.buttonLabel.parentElement;i.default.show(n),n.parentElement.classList.add("inputAddon","dropdown")},t.isEnabled=function(e){const t=d.get(e);if(void 0===t)throw new Error(`Expected a valid i18n input element, '${e}' is not i18n input field.`);return t.isEnabled},t.validate=function(e,t){const n=d.get(e);if(void 0===n)throw new Error(`Expected a valid i18n input element, '${e}' is not i18n input field.`);if(!n.isEnabled)return!0;const i=p.get(e),o=r.default.getDropdownMenu(n.element.parentElement.id);n.languageId&&i.set(n.languageId,n.element.value);let a=!1,s=!1;return Array.from(o.children).forEach((e=>{const t=~~e.dataset.languageId;if(t)if(i.has(t)&&0!==i.get(t).length){if(a)return!1;s=!0}else{if(s)return!1;a=!0}})),!a||t}})),define("WoltLabSuite/Core/Language/Text",["require","exports","tslib","./Input"],(function(e,t,n,i){"use strict";function o(e){void 0!==window.jQuery&&window.jQuery(e).redactor("code.set",e.value)}function r(e){void 0!==window.jQuery&&(e.value=window.jQuery(e).redactor("code.get"))}Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),t.init=function(e,t,n,a){const s=document.getElementById(e);if(!s||"TEXTAREA"!==s.nodeName||!s.classList.contains("wysiwygTextarea"))throw new Error(`Expected <textarea class="wysiwygTextarea" /> for id '${e}'.`);i.init(e,t,n,a),i.registerCallback(e,"select",o),i.registerCallback(e,"submit",r)}})),define("WoltLabSuite/Core/Ui/Suggestion",["require","exports","tslib","../Ajax","../Core","./Dropdown/Simple"],(function(e,t,n,i,o,r){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r);class a{constructor(e,t){this.dropdownMenu=null,this.value="";const n=document.getElementById(e);if(null===n)throw new Error("Expected a valid element id.");if(this.element=n,this.ajaxPayload=o.extend({actionName:"getSearchResultList",className:"",interfaceName:"wcf\\data\\ISearchAction",parameters:{data:{}}},t.ajax),"function"!=typeof t.callbackSelect)throw new Error("Expected a valid callback for option 'callbackSelect'.");this.callbackSelect=t.callbackSelect,this.excludedSearchValues=new Set(Array.isArray(t.excludedSearchValues)?t.excludedSearchValues:[]),this.threshold=void 0===t.threshold?3:t.threshold,this.element.addEventListener("click",(e=>e.preventDefault())),this.element.addEventListener("keydown",(e=>this.keyDown(e))),this.element.addEventListener("keyup",(e=>this.keyUp(e)))}addExcludedValue(e){this.excludedSearchValues.add(e)}removeExcludedValue(e){this.excludedSearchValues.delete(e)}isActive(){return null!==this.dropdownMenu&&r.default.isOpen(this.element.id)}keyDown(e){if(!this.isActive())return!0;if(-1===["ArrowDown","ArrowUp","Enter","Escape"].indexOf(e.key))return!0;let t,n=0;const i=this.dropdownMenu.childElementCount;for(;n<i&&(t=this.dropdownMenu.children[n],!t.classList.contains("active"));)n++;if("Enter"===e.key)r.default.close(this.element.id),this.select(void 0,t);
1else if("Escape"===e.key){if(!r.default.isOpen(this.element.id))return!0;r.default.close(this.element.id)}else{let o=0;"ArrowUp"===e.key?o=(0===n?i:n)-1:"ArrowDown"===e.key&&(o=n+1,o===i&&(o=0)),o!==n&&(t.classList.remove("active"),this.dropdownMenu.children[o].classList.add("active"))}return e.preventDefault(),!1}select(e,t){if(e instanceof MouseEvent){t=e.currentTarget.parentNode}const n=t.children[0];this.callbackSelect(this.element.id,{objectId:+(n.dataset.objectId||0),value:t.textContent||"",type:n.dataset.type||""}),e instanceof MouseEvent&&this.element.focus()}keyUp(e){const t=e.currentTarget.value.trim();if(this.value!==t){if(t.length<this.threshold)return null!==this.dropdownMenu&&r.default.close(this.element.id),void(this.value=t);this.value=t,i.api(this,{parameters:{data:{excludedSearchValues:Array.from(this.excludedSearchValues),searchString:t}}})}}_ajaxSetup(){return{data:this.ajaxPayload}}_ajaxSuccess(e){null===this.dropdownMenu?(this.dropdownMenu=document.createElement("div"),this.dropdownMenu.className="dropdownMenu",r.default.initFragment(this.element,this.dropdownMenu)):this.dropdownMenu.innerHTML="",Array.isArray(e.returnValues)&&e.returnValues.length>0?(e.returnValues.forEach(((e,t)=>{const n=document.createElement("a");e.icon?(n.className="box16",n.innerHTML=`${e.icon} <span></span>`,n.children[1].textContent=e.label):n.textContent=e.label,n.dataset.objectId=e.objectID.toString(),e.type&&(n.dataset.type=e.type),n.addEventListener("click",(e=>this.select(e)));const i=document.createElement("li");0===t&&(i.className="active"),i.appendChild(n),this.dropdownMenu.appendChild(i)})),r.default.open(this.element.id,!0)):r.default.close(this.element.id)}}return o.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Ui/ItemList",["require","exports","tslib","../Core","../Dom/Traverse","../Language","./Suggestion","./Dropdown/Simple","../Dom/Util"],(function(e,t,n,i,o,r,a,s,l){"use strict";function c(e){const t=_.get(e);return-1===t.options.maxItems||t.list.childElementCount-1<t.options.maxItems}function d(e){const t=_.get(e);c(e)?(l.default.show(t.element),l.default.hide(t.limitReached),t.list.dataset.acceptsNewItems="true"):(l.default.hide(t.element),l.default.show(t.limitReached),t.list.dataset.acceptsNewItems="false")}function u(e){const t=e.currentTarget,n=t.parentElement.previousElementSibling;"Backspace"===e.key?0===t.value.length&&null!==n&&(n.classList.contains("active")?b(n):n.classList.add("active")):"Escape"===e.key&&null!==n&&n.classList.contains("active")&&n.classList.remove("active")}function p(e){if("Enter"===e.key){e.preventDefault();const t=e.currentTarget;if(_.get(t.id).options.restricted)return;const n=t.value.trim();n.length&&g(t.id,{objectId:0,value:n})}}function h(e){const t=e.currentTarget;if(_.get(t.id).options.restricted)return;let n=t.value;
1n.includes(",")&&(n=n.replace(/,/g,""),n.length?g(t.id,{objectId:0,value:n}):t.value=n)}function f(e){e.preventDefault();const t=e.clipboardData.getData("text/plain"),n=e.currentTarget,i=n.id,o=+n.maxLength;t.split(/,/).forEach((e=>{e=e.trim(),-1!==o&&e.length>o&&(e=e.substr(0,o)),e.length>0&&c(i)&&g(i,{objectId:0,value:e})}))}function m(e){const t=e.currentTarget;if(t.value.length>0){const e=t.parentElement.previousElementSibling;null!==e&&e.classList.remove("active")}}function g(e,t){const n=_.get(e),i=document.createElement("li");i.className="item";const o=document.createElement("span");if(o.className="content",o.dataset.objectId=t.objectId.toString(),t.type&&(o.dataset.type=t.type),o.textContent=t.value,i.appendChild(o),!n.element.disabled){const e=document.createElement("a");e.className="icon icon16 fa-times",e.addEventListener("click",b),i.appendChild(e)}n.list.insertBefore(i,n.listItem),n.suggestion.addExcludedValue(t.value),n.element.value="",n.element.disabled||d(e);let r=v(n);"function"==typeof n.options.callbackChange&&(null===r&&(r=y(e)),n.options.callbackChange(e,r))}function b(e,t){if(e instanceof Event){e=e.currentTarget.parentElement}const n=e.parentElement.dataset.elementId||"",i=_.get(n);e.children[0].textContent&&i.suggestion.removeExcludedValue(e.children[0].textContent),e.remove(),t||i.element.focus(),d(n);let o=v(i);"function"==typeof i.options.callbackChange&&(null===o&&(o=y(n)),i.options.callbackChange(n,o))}function v(e){if(!e.options.isCSV)return null;if("function"==typeof e.options.callbackSyncShadow)return e.options.callbackSyncShadow(e);const t=y(e.element.id);return e.shadow.value=y(e.element.id).map((e=>e.value)).join(","),t}function w(e){const t=e.currentTarget,n=_.get(t.id);if(n.options.restricted)return;const i=t.value.trim();i.length&&(n.suggestion&&n.suggestion.isActive()||g(t.id,{objectId:0,value:i}))}function y(e){const t=_.get(e);if(!t)throw new Error("Element id '"+e+"' is unknown.");const n=[];return t.list.querySelectorAll(".item > span").forEach((e=>{n.push({objectId:+(e.dataset.objectId||""),value:e.textContent.trim(),type:e.dataset.type})})),n}Object.defineProperty(t,"__esModule",{value:!0}),t.setValues=t.getValues=t.init=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importDefault(a),s=n.__importDefault(s),l=n.__importDefault(l);const _=new Map;t.init=function(e,t,n){const d=document.getElementById(e);if(null===d)throw new Error("Expected a valid element id, '"+e+"' is invalid.");if(_.has(e)){const t=_.get(e);Object.keys(t).forEach((e=>{const n=t[e];n instanceof Element&&n.parentNode&&n.remove()})),s.default.destroy(e),_.delete(e)}const b=i.extend({ajax:{actionName:"getSearchResultList",className:"",data:{}},excludedSearchValues:[],maxItems:-1,maxLength:-1,restricted:!1,isCSV:!1,callbackChange:null,callbackSubmit:null,callbackSyncShadow:null,callbackSetupValues:null,submitFieldName:""},n),v=o.parentByTag(d,"FORM");if(null!==v)if(b.isCSV)v.addEventListener("submit",(()=>{if(c(e)){const t=_.get(e).element.value.trim();t.length&&g(e,{objectId:0,value:t})}}));else{if(!b.submitFieldName.length&&"function"!=typeof b.callbackSubmit)throw new Error("Expected a valid function for option 'callbackSubmit', a non-empty value for option 'submitFieldName' or enabling the option 'submitFieldCSV'.");v.addEventListener("submit",(()=>{if(c(e)){const t=_.get(e).element.value.trim();t.length&&g(e,{objectId:0,value:t})}const t=y(e);b.submitFieldName.length?t.forEach((e=>{const t=document.createElement("input");t.type="hidden",t.name=b.submitFieldName.replace("{$objectId}",e.objectId.toString()),t.value=e.value,v.appendChild(t)})):b.callbackSubmit(v,t)}))}const E=function(e,t){const n=e.parentElement,i=document.createElement("ol");i.className="inputItemList"+(e.disabled?" disabled":""),i.dataset.acceptsNewItems="true",i.dataset.elementId=e.id,i.addEventListener("click",(t=>{t.target===i&&e.focus()}));const o=document.createElement("li");o.className="input",i.appendChild(o),e.addEventListener("input",h),e.addEventListener("keydown",u),e.addEventListener("keypress",p),e.addEventListener("keyup",m),e.addEventListener("paste",f);const a=e===document.activeElement;a&&e.blur(),e.addEventListener("blur",w),n.insertBefore(i,e),o.appendChild(e),a&&window.setTimeout((()=>{e.focus()}),1),-1!==t.maxLength&&(e.maxLength=t.maxLength);const s=document.createElement("span");s.className="inputItemListLimitReached",s.textContent=r.get("wcf.global.form.input.maxItems"),l.default.hide(s),o.appendChild(s);let c=null;const d=[];if(t.isCSV&&(c=document.createElement("input"),c.className="itemListInputShadow",c.type="hidden",c.name=e.name,e.removeAttribute("name"),i.parentNode.insertBefore(c,i),e.value.split(",").forEach((e=>{(e=e.trim())&&d.push(e)})),"TEXTAREA"===e.nodeName)){const t=document.createElement("input");t.type="text",e.parentNode.insertBefore(t,e),t.id=e.id,e.remove(),e=t}return{element:e,limitReached:s,list:i,shadow:c,values:d}}(d,b),S=new a.default(e,{ajax:b.ajax,callbackSelect:g,excludedSearchValues:b.excludedSearchValues});_.set(e,{dropdownMenu:null,element:E.element,limitReached:E.limitReached,list:E.list,listItem:E.element.parentElement,options:b,shadow:E.shadow,suggestion:S}),t=b.callbackSetupValues?b.callbackSetupValues():E.values.length?E.values:t,Array.isArray(t)&&t.forEach((t=>{"string"==typeof t&&(t={objectId:0,value:t}),g(e,t)}))},t.getValues=y,t.setValues=function(e,t){const n=_.get(e);if(!n)throw new Error("Element id '"+e+"' is unknown.");o.childrenByClass(n.list,"item").forEach((e=>{b(e,!0)})),t.forEach((t=>{g(e,t)}))}})),define("WoltLabSuite/Core/Ui/Pagination",["require","exports","tslib","../Core","../Language","../StringUtil","./Page/JumpTo"],(function(e,t,n,i,o,r,a){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a);class s{constructor(e,t){this.callbackSwitch=null,this.callbackShouldSwitch=null,this.element=e,this.activePage=t.activePage,this.maxPage=t.maxPage,"function"==typeof t.callbackSwitch&&(this.callbackSwitch=t.callbackSwitch),"function"==typeof t.callbackShouldSwitch&&(this.callbackShouldSwitch=t.callbackShouldSwitch),this.element.classList.add("pagination"),this.rebuild()}rebuild(){let e=!1;this.element.innerHTML="";const t=document.createElement("ul");let n=document.createElement("li");n.className="skip",t.appendChild(n);let i="icon icon24 fa-chevron-left";if(this.activePage>1){const e=document.createElement("a");e.className=i+" jsTooltip",e.href="#",e.title=o.get("wcf.global.page.previous"),e.rel="prev",n.appendChild(e),e.addEventListener("click",(e=>this.switchPage(this.activePage-1,e)))}else n.innerHTML='<span class="'+i+'"></span>',n.classList.add("disabled");t.appendChild(this.createLink(1));let r=s.showLinks-4,l=this.activePage-2;l<0&&(l=0);let c=this.maxPage-(this.activePage+1);c<0&&(c=0),this.activePage>1&&this.activePage<this.maxPage&&r--;const d=r/2;let u=this.activePage,p=this.activePage;u<1&&(u=1),p<1&&(p=1),p>this.maxPage-1&&(p=this.maxPage-1),l>=d?u-=d:(u-=l,p+=d-l),c>=d?p+=d:(p+=c,u-=d-c),p=Math.ceil(p),u=Math.ceil(u),u<1&&(u=1),p>
1this.maxPage&&(p=this.maxPage);const h='<a class="jsTooltip" title="'+o.get("wcf.page.jumpTo")+'">…</a>';u>1&&(u-1<2?t.appendChild(this.createLink(2)):(n=document.createElement("li"),n.className="jumpTo",n.innerHTML=h,t.appendChild(n),e=!0));for(let e=u+1;e<p;e++)t.appendChild(this.createLink(e));if(p<this.maxPage&&(this.maxPage-p<2?t.appendChild(this.createLink(this.maxPage-1)):(n=document.createElement("li"),n.className="jumpTo",n.innerHTML=h,t.appendChild(n),e=!0)),t.appendChild(this.createLink(this.maxPage)),n=document.createElement("li"),n.className="skip",t.appendChild(n),i="icon icon24 fa-chevron-right",this.activePage<this.maxPage){const e=document.createElement("a");e.className=i+" jsTooltip",e.href="#",e.title=o.get("wcf.global.page.next"),e.rel="next",n.appendChild(e),e.addEventListener("click",(e=>this.switchPage(this.activePage+1,e)))}else n.innerHTML='<span class="'+i+'"></span>',n.classList.add("disabled");e&&(t.dataset.pages=this.maxPage.toString(),a.init(t,this.switchPage.bind(this))),this.element.appendChild(t)}createLink(e){const t=document.createElement("li");if(e!==this.activePage){const n=document.createElement("a");n.textContent=r.addThousandsSeparator(e),n.addEventListener("click",(t=>this.switchPage(e,t))),t.appendChild(n)}else t.classList.add("active"),t.innerHTML="<span>"+r.addThousandsSeparator(e)+'</span><span class="invisible">'+o.get("wcf.page.pagePosition",{pageNo:e,pages:this.maxPage})+"</span>";return t}getActivePage(){return this.activePage}getElement(){return this.element}getMaxPage(){return this.maxPage}switchPage(e,t){if(t instanceof MouseEvent){t.preventDefault();const e=t.currentTarget;if(e&&e.dataset.tooltip){const t=document.getElementById("balloonTooltip");t&&(i.triggerEvent(e,"mouseleave"),t.style.removeProperty("top"),t.style.removeProperty("bottom"))}}if((e=~~e)>0&&this.activePage!==e&&e<=this.maxPage){if(null!==this.callbackShouldSwitch&&!this.callbackShouldSwitch(e))return;this.activePage=e,this.rebuild(),null!==this.callbackSwitch&&this.callbackSwitch(e)}}}return s.showLinks=11,i.enableLegacyInheritance(s),s})),define("WoltLabSuite/Core/Wrapper/FacebookSdk",["require","exports","https://connect.facebook.net/en_US/sdk.js"],(function(e,t){"use strict";return FB.init({version:"v7.0"}),FB})),define("WoltLabSuite/Core/Form/Builder/Field/Field",["require","exports","tslib","../../../Core"],(function(e,t,n,i){"use strict";i=n.__importStar(i);class o{constructor(e){this.init(e)}init(e){this._fieldId=e,this._readField()}_getData(){throw new Error("Missing implementation of WoltLabSuite/Core/Form/Builder/Field/Field._getData!")}_readField(){if(this._field=document.getElementById(this._fieldId),null===this._field)throw new Error("Unknown field with id '"+this._fieldId+"'.")}destroy(){}getData(){return Promise.resolve(this._getData())}getId(){return this._fieldId}}return i.enableLegacyInheritance(o),o})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Manager",["require","exports","tslib","../../../../Dom/Util","../../../../Event/Handler"],(function(e,t,n,i,o){"use strict";function r(){!0!==p?(p=!0,h=!1,o.fire("com.woltlab.wcf.form.builder.dependency","checkContainers"),p=!1,h&&r()):h=!0}function a(){const e=[];d.forEach(((t,n)=>{const o=document.getElementById(n);if(null===o)return void e.push(n);let r=!0;var a;t.forEach((e=>{var t;e.checkDependency()||(t=o,i.default.hide(t),s.add(t),t.classList.contains("tabMenuContent")&&t.parentNode.querySelector(".tabMenu").querySelectorAll("li").forEach((e=>{e.dataset.name===t.dataset.name&&i.default.hide(e)})),t.querySelectorAll("[max], [maxlength], [min], [required]").forEach((e=>{const t=new Map,n=e.getAttribute("max");n&&(t.set("max",n),e.removeAttribute("max"));const i=e.getAttribute("maxlength");i&&(t.set("maxlength",i),e.removeAttribute("maxlength"));const o=e.getAttribute("min");o&&(t.set("min",o),e.removeAttribute("min")),e.required&&(t.set("required","true"),e.removeAttribute("required")),u.set(e,t)})),r=!1)})),r&&(a=o,i.default.show(a),s.delete(a),a.classList.contains("tabMenuContent")&&a.parentNode.querySelector(".tabMenu").querySelectorAll("li").forEach((e=>{e.dataset.name===a.dataset.name&&i.default.show(e)})),a.querySelectorAll("input, select").forEach((e=>{let t=e.parentNode;for(;t!==a&&!i.default.isHidden(t);)t=t.parentNode;if(t===a&&u.has(e)){const t=u.get(e);t.has("max")&&e.setAttribute("max",t.get("max")),t.has("maxlength")&&e.setAttribute("maxlength",t.get("maxlength")),t.has("min")&&e.setAttribute("min",t.get("min")),t.has("required")&&e.setAttribute("required",""),u.delete(e)}})))})),e.forEach((e=>d.delete(e))),r()}
1Object.defineProperty(t,"__esModule",{value:!0}),t.unregister=t.register=t.isHiddenByDependencies=t.checkDependencies=t.checkContainers=t.addDependency=t.addContainerCheckCallback=void 0,i=n.__importDefault(i),o=n.__importStar(o);const s=new Set,l=new Map,c=new WeakSet,d=new Map,u=new WeakMap;let p=!1,h=!0;t.addContainerCheckCallback=function(e){if("function"!=typeof e)throw new TypeError("Expected a valid callback for parameter 'callback'.");o.add("com.woltlab.wcf.form.builder.dependency","checkContainers",e)},t.addDependency=function(e){const t=e.getDependentNode();d.has(t.id)?d.get(t.id).push(e):d.set(t.id,[e]),e.getFields().forEach((e=>{const t=i.default.identify(e);l.has(t)||(l.set(t,e),"INPUT"!==e.tagName||"checkbox"!==e.type&&"radio"!==e.type&&"hidden"!==e.type?e.addEventListener("input",(()=>a())):e.addEventListener("change",(()=>a())))}))},t.checkContainers=r,t.checkDependencies=a,t.isHiddenByDependencies=function(e){if(s.has(e))return!0;let t=!1;return s.forEach((n=>{n.contains(e)&&(t=!0)})),t},t.register=function(e){const t=document.getElementById(e);if(null===t)throw new Error("Unknown element with id '"+e+"'");if(c.has(t))throw new Error("Form with id '"+e+"' has already been registered.");c.add(t)},t.unregister=function(e){const t=document.getElementById(e);if(null===t)throw new Error("Unknown element with id '"+e+"'");if(!c.has(t))throw new Error("Form with id '"+e+"' has not been registered.");c.delete(t),s.forEach((e=>{t.contains(e)&&s.delete(e)})),d.forEach(((e,n)=>{t.contains(document.getElementById(n))&&d.delete(n),e.forEach((e=>{e.getFields().forEach((e=>{l.delete(e.id),u.delete(e)}))}))}))}})),define("WoltLabSuite/Core/Form/Builder/Manager",["require","exports","tslib","../../Core","../../Event/Handler","./Field/Field","./Field/Dependency/Manager"],(function(e,t,n,i,o,r,a){"use strict";function s(e,t){if(!l(e))throw new Error("Unknown form with id '"+e+"'.");return c.get(e).has(t)}function l(e){return d.has(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.unregisterForm=t.registerForm=t.registerField=t.hasForm=t.hasField=t.getForm=t.getField=t.getData=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a);const c=new Map,d=new Map;t.getData=function(e){if(!l(e))throw new Error("Unknown form with id '"+e+"'.");const t=[];return c.get(e).forEach((e=>{const n=e.getData();if(!(n instanceof Promise))throw new TypeError("Data for field with id '"+e.getId()+"' is no promise.");t.push(n)})),Promise.all(t).then((e=>e.reduce(((e,t)=>i.extend(e,t)),{})))},t.getField=function(e,t){if(!s(e,t))throw new Error("Unknown field with id '"+e+"' for form with id '"+t+"'.");return c.get(e).get(t)},t.getForm=function(e){if(!l(e))throw new Error("Unknown form with id '"+e+"'.");return d.get(e)},t.hasField=s,t.hasForm=l,t.registerField=function(e,t){if(!l(e))throw new Error("Unknown form with id '"+e+"'.");if(!(t instanceof r.default))throw new Error("Add field is no instance of 'WoltLabSuite/Core/Form/Builder/Field/Field'.");const n=t.getId();if(s(e,n))throw new Error("Form field with id '"+n+"' has already been registered for form with id '"+e+"'.");c.get(e).set(n,t),o.fire("WoltLabSuite/Core/Form/Builder/Manager","registerField",{field:t,formId:e})},t.registerForm=function(e){if(l(e))throw new Error("Form with id '"+e+"' has already been registered.");const t=document.getElementById(e);if(null===t)throw new Error("Unknown form with id '"+e+"'.");d.set(e,t),c.set(e,new Map),o.fire("WoltLabSuite/Core/Form/Builder/Manager","registerForm",{formId:e})},t.unregisterForm=function(e){if(!l(e))throw new Error("Unknown form with id '"+e+"'.");o.fire("WoltLabSuite/Core/Form/Builder/Manager","beforeUnregisterForm",{formId:e}),d.delete(e),c.get(e).forEach((function(e){e.destroy()})),c.delete(e),a.unregister(e),o.fire("WoltLabSuite/Core/Form/Builder/Manager","afterUnregisterForm",{formId:e})}})),define("WoltLabSuite/Core/Form/Builder/Dialog",["require","exports","tslib","../../Core","../../Ui/Dialog","../../Ajax","./Manager"],(function(e,t,n,i,o,r,a){"use strict";i=n.__importStar(i),o=n.__importDefault(o),r=n.__importStar(r),a=n.__importStar(a);class s{constructor(e,t,n,i){this.init(e,t,n,i)}init(e,t,n,r){if(this._dialogId=e,this._className=t,this._actionName=n,this._options=i.extend({actionParameters:{},destroyOnClose:!1,usesDboAction:/\w+\\data\\/.test(this._className)},r),this._options.dialog=i.extend(this._options.dialog||{},{onClose:()=>this._dialogOnClose()}),o.default.getDialog(this._dialogId))throw new Error(`The dialogId ${this._dialogId} is already in use.`);this._formId="",this._dialogContent=""}_ajaxSetup(){const e={data:{actionName:this._actionName,className:this._className,parameters:this._options.actionParameters}};return this._options.usesDboAction||(e.url="index.php?ajax-invoke/&t="+i.getXsrfToken(),e.withCredentials=!0),e}_ajaxSuccess(e){switch(e.actionName){case this._actionName:if(void 0===e.returnValues)throw new Error("Missing return data.");!function(e){if(void 0===e.dialog)throw new Error("Missing dialog template in return data.");
1if(void 0===e.formId)throw new Error("Missing form id in return data.")}(e.returnValues),this._openDialogContent(e.returnValues.formId,e.returnValues.dialog);break;case this._options.submitActionName:if(e.returnValues&&(void 0!==(t=e.returnValues).dialog&&void 0!==t.formId)){if(e.returnValues.formId!==this._formId)throw new Error("Mismatch between form ids: expected '"+this._formId+"' but got '"+e.returnValues.formId+"'.");this._openDialogContent(e.returnValues.formId,e.returnValues.dialog)}else this.destroy(),"function"==typeof this._options.successCallback&&this._options.successCallback(e.returnValues||{});break;default:throw new Error("Cannot handle action '"+e.actionName+"'.")}var t}_closeDialog(){o.default.close(this),"function"==typeof this._options.closeCallback&&this._options.closeCallback()}_dialogOnClose(){this._options.destroyOnClose&&this.destroy()}_dialogSetup(){return{id:this._dialogId,options:this._options.dialog,source:this._dialogContent}}_dialogSubmit(){this.getData().then((e=>this._submitForm(e)))}_openDialogContent(e,t){this.destroy(!0),this._formId=e,this._dialogContent=t;const n=o.default.open(this,this._dialogContent),r=n.content.querySelector("button[data-type=cancel]");null===r||i.stringToBool(r.dataset.hasEventListener||"")||(r.addEventListener("click",(()=>this._closeDialog())),r.dataset.hasEventListener="1"),this._additionalSubmitButtons=Array.from(n.content.querySelectorAll(':not(.formSubmit) button[type="submit"]')),this._additionalSubmitButtons.forEach((e=>{e.addEventListener("click",(()=>{this._additionalSubmitButtons.forEach((t=>{t.dataset.isClicked=t===e?"1":"0"})),setTimeout((()=>o.default.submit(this._dialogId)),0)}))}))}_submitForm(e){const t=o.default.getDialog(this).content.querySelector("button[data-type=submit]");"function"==typeof this._options.onSubmit?this._options.onSubmit(e,t):"string"==typeof this._options.submitActionName&&(t.disabled=!0,this._additionalSubmitButtons.forEach((e=>e.disabled=!0)),r.api(this,{actionName:this._options.submitActionName,parameters:{data:e,formId:this._formId}}))}destroy(e=!1){""!==this._formId&&(a.hasForm(this._formId)&&a.unregisterForm(this._formId),!0!==e&&o.default.destroy(this))}getData(){if(""===this._formId)throw new Error("Form has not been requested yet.");return a.getData(this._formId)}open(){o.default.getDialog(this._dialogId)?o.default.open(this):r.api(this)}}return i.enableLegacyInheritance(s),s})),define("WoltLabSuite/Core/Ui/Dropdown/Builder",["require","exports","tslib","../../Core","./Simple"],(function(e,t,n,i,o){"use strict";function r(e){if(!(e instanceof HTMLUListElement))throw new TypeError("Expected a reference to an <ul> element.");if(!e.classList.contains("dropdownMenu"))throw new Error("List does not appear to be a dropdown menu.")}function a(e){const t=document.createElement("li");if("divider"===e)return t.className="dropdownDivider",t;"string"==typeof e.identifier&&(t.dataset.identifier=e.identifier);const n=document.createElement("a");if(n.href="string"==typeof e.href?e.href:"#","function"==typeof e.callback)n.addEventListener("click",(t=>{t.preventDefault(),e.callback(n)}));else if("#"===n.href)throw new Error("Expected either a `href` value or a `callback`.");if(e.attributes&&i.isPlainObject(e.attributes)&&Object.keys(e.attributes).forEach((t=>{const i=e.attributes[t];if("string"!=typeof i)throw new Error("Expected only string values.");-1!==t.indexOf("-")?n.setAttribute(`data-${t}`,i):n.dataset[t]=i})),t.appendChild(n),void 0!==e.icon&&i.isPlainObject(e.icon)){if("string"!=typeof e.icon.name)throw new TypeError("Expected a valid icon name.");let t=16;"number"==typeof e.icon.size&&-1!==c.indexOf(~~e.icon.size)&&(t=~~e.icon.size);const i=document.createElement("span");i.className=`icon icon${t} fa-${e.icon.name}`,n.appendChild(i)}const o="string"==typeof e.label?e.label.trim():"",r="string"==typeof e.labelHtml?e.labelHtml.trim():"";if(""===o&&""===r)throw new TypeError("Expected either a label or a `labelHtml`.");const a=document.createElement("span");return a[o?"textContent":"innerHTML"]=o||r,n.appendChild(document.createTextNode(" ")),n.appendChild(a),t}function s(e,t){r(e),e.appendChild(a(t))}function l(e,t){if(r(e),!Array.isArray(t))throw new TypeError("Expected an array of items.");const n=t.length;if(0===n)throw new Error("Expected a non-empty list of items.");if(1===n)s(e,t[0]);else{const n=document.createDocumentFragment();t.forEach((e=>{n.appendChild(a(e))})),e.appendChild(n)}}
1Object.defineProperty(t,"__esModule",{value:!0}),t.divider=t.attach=t.setItems=t.appendItems=t.appendItem=t.buildItem=t.create=void 0,i=n.__importStar(i),o=n.__importDefault(o);const c=[16,24,32,48,64,96,144];t.create=function(e,t){const n=document.createElement("ul");return n.className="dropdownMenu","string"==typeof t&&(n.dataset.identifier=t),Array.isArray(e)&&e.length>0&&l(n,e),n},t.buildItem=function(e){return a(e)},t.appendItem=s,t.appendItems=l,t.setItems=function(e,t){r(e),e.innerHTML="",l(e,t)},t.attach=function(e,t){r(e),o.default.initFragment(t,e),t.addEventListener("click",(e=>{e.preventDefault(),e.stopPropagation(),o.default.toggleDropdown(t.id)}))},t.divider=function(){return"divider"}})),define("WoltLabSuite/Core/Ui/ItemList/Static",["require","exports","tslib","../../Core","../../Dom/Traverse","../../Language","../Dropdown/Simple"],(function(e,t,n,i,o,r,a){"use strict";function s(e,t){const n=document.createElement("ol");n.className="inputItemList"+(e.disabled?" disabled":""),n.dataset.elementId=e.id,n.addEventListener("click",(t=>{t.target===n&&e.focus()}));const i=document.createElement("li");let o;i.className="input",n.appendChild(i),e.addEventListener("keydown",(e=>function(e){const t=e.currentTarget,n=t.parentElement.previousElementSibling;"Backspace"===e.key?0===t.value.length&&null!==n&&(n.classList.contains("active")?d(n):n.classList.add("active")):"Escape"===e.key&&null!==n&&n.classList.contains("active")&&n.classList.remove("active")}(e))),e.addEventListener("keypress",(e=>function(e){if("Enter"===e.key||","===e.key){e.preventDefault();const t=e.currentTarget,n=t.value.trim();n.length&&c(t.id,{objectId:0,value:n})}}(e))),e.addEventListener("keyup",(e=>function(e){const t=e.currentTarget;if(t.value.length>0){const e=t.parentElement.previousElementSibling;null!==e&&e.classList.remove("active")}}(e))),e.addEventListener("paste",(e=>function(e){const t=e.currentTarget;e.clipboardData.getData("text/plain").split(",").map((e=>e.trim())).filter((e=>e.length>0)).forEach((e=>{c(t.id,{objectId:0,value:e})})),e.preventDefault()}(e))),e.addEventListener("blur",(e=>function(e){const t=e.currentTarget;window.setTimeout((()=>{const e=t.value.trim();e.length&&c(t.id,{objectId:0,value:e})}),100)}(e))),e.insertAdjacentElement("beforebegin",n),i.appendChild(e),-1!==t.maxLength&&(e.maxLength=t.maxLength);let r=[];if(t.isCSV&&(o=document.createElement("input"),o.className="itemListInputShadow",o.type="hidden",o.name=e.name,e.removeAttribute("name"),n.insertAdjacentElement("beforebegin",o),r=e.value.split(",").map((e=>e.trim())).filter((e=>e.length>0)),"TEXTAREA"===e.nodeName)){const t=document.createElement("input");t.type="text",e.parentElement.insertBefore(t,e),t.id=e.id,e.remove(),e=t}return{element:e,list:n,shadow:o,values:r}}function l(e){const t=h.get(e);-1!==t.options.maxItems&&(t.list.childElementCount-1<t.options.maxItems?t.element.disabled&&(t.element.disabled=!1,t.element.removeAttribute("placeholder")):t.element.disabled||(t.element.disabled=!0,t.element.placeholder=r.get("wcf.global.form.input.maxItems")))}function c(e,t,n){const i=h.get(e),o=document.createElement("li");o.className="item";const r=document.createElement("span");if(r.className="content",r.dataset.objectId=t.objectId.toString(),r.textContent=t.value,o.appendChild(r),n||!i.element.disabled){const e=document.createElement("a");e.className="icon icon16 fa-times",e.addEventListener("click",(e=>d(e))),o.appendChild(e)}i.list.insertBefore(o,i.listItem),i.element.value="",i.element.disabled||l(e);let a=u(i);"function"==typeof i.options.callbackChange&&(null===a&&(a=p(e)),i.options.callbackChange(e,a))}function d(e,t){e instanceof Event&&(e=e.currentTarget.parentElement);const n=e.parentElement.dataset.elementId,i=h.get(n);e.remove(),t||i.element.focus(),l(n);let o=u(i);"function"==typeof i.options.callbackChange&&(null===o&&(o=p(n)),i.options.callbackChange(n,o))}function u(e){if(!e.options.isCSV)return null;const t=p(e.element.id);return e.shadow.value=t.map((e=>e.value)).join(","),t}function p(e){if(!h.has(e))throw new Error(`Element id '${e}' is unknown.`);const t=h.get(e),n=[];return t.list.querySelectorAll(".item > span").forEach((e=>{n.push({objectId:~~e.dataset.objectId,value:e.textContent})})),n}
1Object.defineProperty(t,"__esModule",{value:!0}),t.setValues=t.getValues=t.init=void 0,i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importDefault(a);const h=new Map;t.init=function(e,t,n){const r=document.getElementById(e);if(null===r)throw new Error("Expected a valid element id, '"+e+"' is invalid.");if(h.has(e)){const t=h.get(e);Object.values(t).forEach((e=>{e instanceof HTMLElement&&e.parentElement&&e.remove()})),a.default.destroy(e),h.delete(e)}const l=i.extend({maxItems:-1,maxLength:-1,isCSV:!1,callbackChange:null,callbackSubmit:null,submitFieldName:""},n),d=o.parentByTag(r,"FORM");if(null!==d&&!l.isCSV){if(!l.submitFieldName.length&&"function"!=typeof l.callbackSubmit)throw new Error("Expected a valid function for option 'callbackSubmit', a non-empty value for option 'submitFieldName' or enabling the option 'submitFieldCSV'.");d.addEventListener("submit",(()=>{const t=p(e);l.submitFieldName.length?t.forEach((e=>{const t=document.createElement("input");t.type="hidden",t.name=l.submitFieldName.replace("{$objectId}",e.objectId.toString()),t.value=e.value,d.appendChild(t)})):l.callbackSubmit(d,t)}))}const u=s(r,l);if(h.set(e,{dropdownMenu:null,element:u.element,list:u.list,listItem:u.element.parentElement,options:l,shadow:u.shadow}),t=u.values.length?u.values:t,Array.isArray(t)){const n=!u.element.disabled;t.forEach((t=>{"string"==typeof t&&(t={objectId:0,value:t}),c(e,t,n)}))}},t.getValues=p,t.setValues=function(e,t){if(!h.has(e))throw new Error(`Element id '${e}' is unknown.`);const n=h.get(e);o.childrenByClass(n.list,"item").forEach((e=>d(e,!0))),t.forEach((t=>c(e,t)))}})),define("WoltLabSuite/Core/Ui/ItemList/User",["require","exports","tslib","../ItemList"],(function(e,t,n,i){"use strict";function o(e){const t=r(e.element.id),n=[],i=[];t.forEach((e=>{e.type&&"group"===e.type?i.push(e.objectId):n.push(e.value)}));const o=e.shadow;return o.value=n.join(","),e._shadowGroups||(e._shadowGroups=document.createElement("input"),e._shadowGroups.type="hidden",e._shadowGroups.name=`${o.name}GroupIDs`,o.insertAdjacentElement("beforebegin",e._shadowGroups)),e._shadowGroups.value=i.join(","),t}function r(e){return i.getValues(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.getValues=t.init=void 0,i=n.__importStar(i),t.init=function(e,t){i.init(e,[],{ajax:{className:"wcf\\data\\user\\UserAction",parameters:{data:{includeUserGroups:t.includeUserGroups?~~t.includeUserGroups:0,restrictUserGroupIDs:Array.isArray(t.restrictUserGroupIDs)?t.restrictUserGroupIDs:[]}}},callbackChange:"function"==typeof t.callbackChange?t.callbackChange:null,callbackSyncShadow:t.csvPerType?o:null,callbackSetupValues:"function"==typeof t.callbackSetupValues?t.callbackSetupValues:null,excludedSearchValues:Array.isArray(t.excludedSearchValues)?t.excludedSearchValues:[],isCSV:!0,maxItems:t.maxItems?~~t.maxItems:-1,restricted:!0})},t.getValues=r})),define("WoltLabSuite/Core/Ui/Reaction/CountButtons",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Change/Listener","../../Dom/Util","../../Event/Handler","../../StringUtil","../Dialog"],(function(e,t,n,i,o,r,a,s,l,c){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importDefault(c);const d=new Map(Object.entries(window.REACTION_TYPES));class u{constructor(e,t){if(this._containers=new Map,this._currentObjectId=0,this._objects=new Map,!t.containerSelector)throw new Error("[WoltLabSuite/Core/Ui/Reaction/CountButtons] Expected a non-empty string for option 'containerSelector'.");this._objectType=e,this._options=o.extend({summaryListSelector:".reactionSummaryList",containerSelector:"",isSingleItem:!1,parameters:{data:{}}},t),this.initContainers(),r.default.add(`WoltLabSuite/Core/Ui/Reaction/CountButtons-${e}`,(()=>this.initContainers()))}initContainers(){let e=!1;document.querySelectorAll(this._options.containerSelector).forEach((t=>{const n=a.default.identify(t);if(this._containers.has(n))return;const i=~~t.dataset.objectId,o={reactButton:null,summary:null,objectId:i,element:t};this._containers.set(n,o),this._initReactionCountButtons(t,o);const r=this._objects.get(i)||[];r.push(o),this._objects.set(i,r),e=!0})),e&&r.default.trigger()}updateCountButtons(e,t){let n=!1;this._objects.get(e).forEach((e=>{let i;if(i=this._options.isSingleItem?document.querySelector(this._options.summaryListSelector):e.element.querySelector(this._options.summaryListSelector),null===i)return;const o=new Map(Object.entries(t)),r=new Map;i.querySelectorAll(".reactCountButton").forEach((e=>{const t=e.dataset.reactionTypeId;o.has(t)?r.set(t,e):e.remove()})),o.forEach(((e,t)=>{if(r.has(t)){r.get(t).querySelector(".reactionCount").innerHTML=l.shortUnit(e)}else if(d.has(t)){const o=document.createElement("span");o.className="reactCountButton",o.innerHTML=d.get(t).renderedIcon,o.dataset.reactionTypeId=t;const r=document.createElement("span");r.className="reactionCount",r.innerHTML=l.shortUnit(e),o.appendChild(r),i.appendChild(o),n=!0}})),i.childElementCount>0?a.default.show(i):a.default.hide(i)})),n&&r.default.trigger()}_initReactionCountButtons(e,t){let n;n=this._options.isSingleItem?document.querySelector(this._options.summaryListSelector):e.querySelector(this._options.summaryListSelector),null!==n&&n.addEventListener("click",(e=>this._showReactionOverlay(t.objectId,e)))}_showReactionOverlay(e,t){t.preventDefault(),this._currentObjectId=e,this._showOverlay()}_showOverlay(){this._options.parameters.data.containerID=`${this._objectType}-${this._currentObjectId}`,this._options.parameters.data.objectID=this._currentObjectId,this._options.parameters.data.objectType=this._objectType,i.api(this,{parameters:this._options.parameters})}_ajaxSuccess(e){s.fire("com.woltlab.wcf.ReactionCountButtons","openDialog",e),c.default.open(this,e.returnValues.template),c.default.setTitle("userReactionOverlay-"+this._objectType,e.returnValues.title)}
1_ajaxSetup(){return{data:{actionName:"getReactionDetails",className:"\\wcf\\data\\reaction\\ReactionAction"}}}_dialogSetup(){return{id:`userReactionOverlay-${this._objectType}`,options:{title:""},source:null}}}return o.enableLegacyInheritance(u),u})),define("WoltLabSuite/Core/Ui/Reaction/Handler",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Change/Listener","../../Dom/Util","../Alignment","../CloseOverlay","../Screen","./CountButtons","focus-trap"],(function(e,t,n,i,o,r,a,s,l,c,d,u){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importDefault(l),c=n.__importStar(c),d=n.__importDefault(d);const p=Object.values(window.REACTION_TYPES);class h{constructor(e,t){if(this.activeButton=void 0,this._cache=new Map,this.focusTrap=void 0,this._containers=new Map,this._objects=new Map,this._popoverCurrentObjectId=0,!t.containerSelector)throw new Error("[WoltLabSuite/Core/Ui/Reaction/Handler] Expected a non-empty string for option 'containerSelector'.");this._objectType=e,this._popover=null,this._popoverContent=null,this._options=o.extend({buttonSelector:".reactButton",containerSelector:"",isButtonGroupNavigation:!1,isSingleItem:!1,parameters:{data:{}}},t),this.initReactButtons(),this.countButtons=new d.default(this._objectType,this._options),r.default.add(`WoltLabSuite/Core/Ui/Reaction/Handler-${e}`,(()=>this.initReactButtons())),l.default.add("WoltLabSuite/Core/Ui/Reaction/Handler",(()=>this._closePopover()))}initReactButtons(){let e=!1;document.querySelectorAll(this._options.containerSelector).forEach((t=>{const n=a.default.identify(t);if(this._containers.has(n))return;const i=~~t.dataset.objectId,o={reactButton:null,objectId:i,element:t};this._containers.set(n,o),this._initReactButton(t,o);const r=this._objects.get(i)||[];r.push(o),this._objects.set(i,r),e=!0})),e&&r.default.trigger()}_initReactButton(e,t){if(this._options.isSingleItem?t.reactButton=document.querySelector(this._options.buttonSelector):t.reactButton=e.querySelector(this._options.buttonSelector),null!==t.reactButton){if(1===p.length){const e=p[0];t.reactButton.title=e.title;t.reactButton.querySelector(".invisible").textContent=e.title}t.reactButton.setAttribute("role","button"),p.length>1&&(t.reactButton.setAttribute("aria-haspopup","true"),t.reactButton.setAttribute("aria-expanded","false")),t.reactButton.addEventListener("click",(e=>{this._toggleReactPopover(t.objectId,t.reactButton,e)})),t.reactButton.addEventListener("keydown",(e=>{"Enter"===e.key&&(e.preventDefault(),this._toggleReactPopover(t.objectId,t.reactButton,null))}))}}_updateReactButton(e,t){this._objects.get(e).forEach((e=>{null!==e.reactButton&&(t?(e.reactButton.classList.add("active"),e.reactButton.dataset.reactionTypeId=t.toString()):(e.reactButton.dataset.reactionTypeId="0",e.reactButton.classList.remove("active")))}))}_markReactionAsActive(){let e=null;for(const t of this._objects.get(this._popoverCurrentObjectId))null!==t.reactButton&&(e=~~t.reactButton.dataset.reactionTypeId);if(null===e)throw new Error("Unable to find react button for current popover.");const t=this._getPopover();t.querySelectorAll(".reactionTypeButton.active").forEach((e=>{e.classList.remove("active"),e.removeAttribute("aria-selected")}));const n=t.querySelector(".reactionPopoverContent");if(e){const i=t.querySelector(`.reactionTypeButton[data-reaction-type-id="${e}"]`);i.classList.add("active"),i.setAttribute("aria-selected","true"),0==~~i.dataset.isAssignable&&a.default.show(i),this._scrollReactionIntoView(n,i)}else c.is("screen-xs")&&(t.classList.contains("inverseOrder")?n.scrollTop=0:n.scrollTop=n.scrollHeight-n.clientHeight)}_scrollReactionIntoView(e,t){t.offsetTop<.75*e.clientHeight?e.scrollTop=0:e.scrollTop=t.offsetTop+t.clientHeight/2-e.clientHeight/2}_toggleReactPopover(e,t,n){if(null!==n&&(n.preventDefault(),n.stopPropagation()),1===p.length){const t=p[0];this._popoverCurrentObjectId=e,this._react(t.reactionTypeID)}else 0===this._popoverCurrentObjectId||this._popoverCurrentObjectId!==e?this._openReactPopover(e,t):this._closePopover()}_openReactPopover(e,t){0!==this._popoverCurrentObjectId&&this._closePopover(),this._popoverCurrentObjectId=e,s.set(this._getPopover(),t,{pointer:!0,horizontal:this._options.isButtonGroupNavigation?"left":"center",vertical:c.is("screen-xs")?"bottom":"top"}),this._options.isButtonGroupNavigation&&t.closest("nav").style.setProperty("opacity","1","");const n=this._getPopover();
1"auto"===n.style.getPropertyValue("bottom")?n.classList.add("inverseOrder"):n.classList.remove("inverseOrder"),this._markReactionAsActive(),this._rebuildOverflowIndicator(),n.classList.remove("forceHide"),n.classList.add("active"),this.activeButton=t,p.length>1&&this.activeButton.setAttribute("aria-expanded","true"),this.getFocusTrap().activate()}_getPopover(){if(null==this._popover){this._popover=document.createElement("div"),this._popover.className="reactionPopover forceHide",this._popoverContent=document.createElement("div"),this._popoverContent.className="reactionPopoverContent";const e=document.createElement("ul");e.className="reactionTypeButtonList",this._getSortedReactionTypes().forEach((t=>{const n=document.createElement("li");n.tabIndex=0,n.setAttribute("role","button"),n.className="reactionTypeButton jsTooltip",n.dataset.reactionTypeId=t.reactionTypeID.toString(),n.dataset.title=t.title,n.dataset.isAssignable=t.isAssignable.toString(),n.title=t.title;const i=document.createElement("span");i.className="reactionTypeButtonTitle",i.innerHTML=t.title,n.innerHTML=t.renderedIcon,n.appendChild(i),n.addEventListener("click",(()=>this._react(t.reactionTypeID))),n.addEventListener("keydown",(e=>this.keydown(e))),t.isAssignable||a.default.hide(n),e.appendChild(n)})),this._popoverContent.appendChild(e),this._popoverContent.addEventListener("scroll",(()=>this._rebuildOverflowIndicator()),{passive:!0}),this._popover.appendChild(this._popoverContent);const t=document.createElement("span");t.className="elementPointer",t.appendChild(document.createElement("span")),this._popover.appendChild(t),document.body.appendChild(this._popover),r.default.trigger()}return this._popover}keydown(e){if("Enter"===e.key||" "===e.key){e.preventDefault();const t=this.activeButton,n=~~e.currentTarget.dataset.reactionTypeId;this._react(n),t.focus()}}_rebuildOverflowIndicator(){const e=this._popoverContent;e.scrollTop>0?e.classList.add("overflowTop"):e.classList.remove("overflowTop");e.scrollTop+e.clientHeight<e.scrollHeight?e.classList.add("overflowBottom"):e.classList.remove("overflowBottom")}_getSortedReactionTypes(){return p.sort(((e,t)=>e.showOrder-t.showOrder))}_closePopover(){if(0!==this._popoverCurrentObjectId){const e=this._getPopover();e.classList.remove("active"),e.querySelectorAll('.reactionTypeButton[data-is-assignable="0"]').forEach((e=>a.default.hide(e))),this._options.isButtonGroupNavigation&&this._objects.get(this._popoverCurrentObjectId).forEach((e=>{e.reactButton.closest("nav").style.cssText=""})),p.length>1&&this.activeButton.setAttribute("aria-expanded","false"),this.activeButton=void 0,this._popoverCurrentObjectId=0,this.getFocusTrap().deactivate()}}_react(e){0!=~~this._popoverCurrentObjectId&&(this._options.parameters.reactionTypeID=e,this._options.parameters.data.objectID=this._popoverCurrentObjectId,this._options.parameters.data.objectType=this._objectType,i.api(this,{parameters:this._options.parameters}),this._closePopover())}_ajaxSuccess(e){const t=~~e.returnValues.objectID;this.countButtons.updateCountButtons(t,e.returnValues.reactions),this._updateReactButton(t,e.returnValues.reactionTypeID)}_ajaxSetup(){return{data:{actionName:"react",className:"\\wcf\\data\\reaction\\ReactionAction"}}}getFocusTrap(){return void 0===this.focusTrap&&(this.focusTrap=(0,u.createFocusTrap)(this._popover,{allowOutsideClick:!0,escapeDeactivates:()=>(this._closePopover(),!1)})),this.focusTrap}}return o.enableLegacyInheritance(h),h})),define("WoltLabSuite/Core/Ui/Like/Handler",["require","exports","tslib","../../Core","../../Dom/Change/Listener","../../Language","../../StringUtil","../Reaction/Handler","../../User"],(function(e,t,n,i,o,r,a,s,l){"use strict";i=n.__importStar(i),o=n.__importDefault(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importDefault(s),l=n.__importDefault(l);const c=new Map(Object.entries(window.REACTION_TYPES));class d{constructor(e,t){if(this._containers=new WeakMap,!t.containerSelector)throw new Error("[WoltLabSuite/Core/Ui/Like/Handler] Expected a non-empty string for option 'containerSelector'.");this._objectType=e,this._options=i.extend({badgeClassNames:"",isSingleItem:!1,markListItemAsActive:!1,renderAsButton:!0,summaryPrepend:!0,summaryUseIcon:!0,canDislike:!1,canLike:!1,canLikeOwnContent:!1,canViewSummary:!1,badgeContainerSelector:".messageHeader .messageStatus",buttonAppendToSelector:".messageFooter .messageFooterButtons",buttonBeforeSelector:"",containerSelector:"",summarySelector:".messageFooterGroup"},t),this.initContainers(),o.default.add(`WoltLabSuite/Core/Ui/Like/Handler-${e}`,(()=>this.initContainers())),new s.default(this._objectType,{containerSelector:this._options.containerSelector})}initContainers(){let e=!1;document.querySelectorAll(this._options.containerSelector).forEach((t=>{if(this._containers.has(t))return;const n={badge:null,dislikeButton:null,likeButton:null,summary:null,dislikes:~~t.dataset.likeDislikes,liked:~~t.dataset.likeLiked,likes:~~t.dataset.likeLikes,objectId:~~t.dataset.objectId,users:JSON.parse(t.dataset.likeUsers)};this._containers.set(t,n),this._buildWidget(t,n),e=!0})),e&&o.default.trigger()}_buildWidget(e,t){let n,i=!0;if(n=this._options.isSingleItem?document.querySelector(this._options.summarySelector):e.querySelector(this._options.summarySelector),null===n&&(n=this._options.isSingleItem?document.querySelector(this._options.badgeContainerSelector):e.querySelector(this._options.badgeContainerSelector),i=!1),null!==n){const e=document.createElement("ul");if(e.classList.add("reactionSummaryList"),i?e.classList.add("like
1sSummary"):e.classList.add("reactionSummaryListTiny"),Object.entries(t.users).forEach((([t,n])=>{const i=c.get(t);if("reactionTypeID"===t||!i)return;const o=document.createElement("li");o.className="reactCountButton",o.setAttribute("reaction-type-id",t);const r=document.createElement("span");r.className="reactionCount",r.innerHTML=a.shortUnit(~~n),o.appendChild(r),o.innerHTML=i.renderedIcon+o.innerHTML,e.appendChild(o)})),i)this._options.summaryPrepend?n.insertAdjacentElement("afterbegin",e):n.insertAdjacentElement("beforeend",e);else if("OL"===n.nodeName||"UL"===n.nodeName){const t=document.createElement("li");t.appendChild(e),n.appendChild(t)}else n.appendChild(e);t.badge=e}if(this._options.canLike&&(l.default.userId!=~~e.dataset.userId||this._options.canLikeOwnContent)){let n=null;this._options.buttonAppendToSelector&&(n=this._options.isSingleItem?document.querySelector(this._options.buttonAppendToSelector):e.querySelector(this._options.buttonAppendToSelector));let i=null;if(this._options.buttonBeforeSelector&&(i=this._options.isSingleItem?document.querySelector(this._options.buttonBeforeSelector):e.querySelector(this._options.buttonBeforeSelector)),null===i&&null===n)throw new Error("Unable to find insert location for like/dislike buttons.");t.likeButton=this._createButton(e,t.users.reactionTypeID,i,n)}}_createButton(e,t,n,i){const o=r.get("wcf.reactions.react"),a=document.createElement("li");a.className="wcfReactButton";const s=document.createElement("a");s.className="jsTooltip reactButton",this._options.renderAsButton&&s.classList.add("button"),s.href="#",s.title=o;const l=document.createElement("span");l.className="icon icon16 fa-smile-o",void 0===t||0==t?l.dataset.reactionTypeId="0":(s.dataset.reactionTypeId=t.toString(),s.classList.add("active")),s.appendChild(l);const c=document.createElement("span");return c.className="invisible",c.innerHTML=o,s.appendChild(document.createTextNode(" ")),s.appendChild(c),a.appendChild(s),n?n.insertAdjacentElement("beforebegin",a):i.insertAdjacentElement("beforeend",a),s}}return i.enableLegacyInheritance(d),d})),define("WoltLabSuite/Core/Ui/Message/InlineEditor",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Change/Listener","../../Dom/Util","../../Environment","../../Event/Handler","../../Language","../Dropdown/Reusable","../Notification","../Screen","../Scroll"],(function(e,t,n,i,o,r,a,s,l,c,d,u,p,h){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importStar(s),l=n.__importStar(l),c=n.__importStar(c),d=n.__importStar(d),u=n.__importStar(u),p=n.__importStar(p),h=n.__importStar(h);class f{constructor(e){this.init(e)}init(e){this._activeDropdownElement=null,this._activeElement=null,this._dropdownMenu=null,this._elements=new WeakMap,this._options=o.extend({canEditInline:!1,className:"",containerId:0,dropdownIdentifier:"",editorPrefix:"messageEditor",messageSelector:".jsMessage",quoteManager:null},e),this.rebuild(),r.default.add(`Ui/Message/InlineEdit_${this._options.className}`,(()=>this.rebuild()))}rebuild(){document.querySelectorAll(this._options.messageSelector).forEach((e=>{if(this._elements.has(e))return;const t=e.querySelector(".jsMessageEditButton");if(null!==t){const n=o.stringToBool(e.dataset.canEdit||""),i=o.stringToBool(e.dataset.canEditInline||"");this._options.canEditInline||i?(t.addEventListener("click",(t=>this._clickDropdown(e,t))),t.classList.add("jsDropdownEnabled"),n&&t.addEventListener("dblclick",(t=>this._click(e,t)))):n&&t.addEventListener("click",(t=>this._click(e,t)))}const n=e.querySelector(".messageBody"),i=e.querySelector(".messageFooter"),r=i.querySelector(".messageFooterButtons"),a=e.querySelector(".messageHeader"),s=n.querySelector(".messageText");this._elements.set(e,{button:t,messageBody:n,messageBodyEditor:null,messageFooter:i,messageFooterButtons:r,messageHeader:a,messageText:s})}))}_click(e,t){null===e&&(e=this._activeDropdownElement),t&&t.preventDefault(),null===this._activeElement?(this._activeElement=e,this._prepare(),i.api(this,{actionName:"beginEdit",parameters:{containerID:this._options.containerId,objectID:this._getObjectId(e)}})):u.show("wcf.message.error.editorAlreadyInUse",void 0,"warning")}_clickDropdown(e,t){t.preventDefault();const n=t.currentTarget;if(!n.classList.contains("dropdownToggle")){if(n.classList.add("dropdownToggle"),n.parentElement.classList.add("dropdown"),n.addEventListener("click",(t=>{t.preventDefault(),t.stopPropagation(),this._activeDropdownElement=e;let i=n;if(p.is("screen-sm-down")&&0===n.clientWidth){const e=n.closest(this._options.messageSelector);i=this._elements.get(e).messageHeader.querySelector(".messageQuickOptions")}d.toggleDropdown(this._options.dropdownIdentifier,i)})),null===this._dropdownMenu){this._dropdownMenu=document.createElement("ul"),this._dropdownMenu.className="dropdownMenu";const e=this._dropdownGetItems();
1l.fire("com.woltlab.wcf.inlineEditor",`dropdownInit_${this._options.dropdownIdentifier}`,{items:e}),this._dropdownBuild(e),d.init(this._options.dropdownIdentifier,this._dropdownMenu),d.registerCallback(this._options.dropdownIdentifier,((e,t)=>this._dropdownToggle(e,t)))}setTimeout((()=>n.click()),10)}}_dropdownBuild(e){e.forEach((e=>{const t=document.createElement("li");if(t.dataset.item=e.item,"divider"===e.item)t.className="dropdownDivider";else{const n=document.createElement("span");n.textContent=c.get(e.label),t.appendChild(n),"editItem"===e.item?t.addEventListener("click",(e=>this._click(null,e))):t.addEventListener("click",(e=>this._clickDropdownItem(e)))}this._dropdownMenu.appendChild(t)}))}_dropdownToggle(e,t){const n=this._elements.get(this._activeDropdownElement),i=n.button.parentElement;if("close"===t)return i.classList.remove("dropdownOpen"),void n.messageFooterButtons.classList.remove("forceVisible");i.classList.add("dropdownOpen"),n.messageFooterButtons.classList.add("forceVisible");const o=new Map(Object.entries(this._dropdownOpen()));l.fire("com.woltlab.wcf.inlineEditor",`dropdownOpen_${this._options.dropdownIdentifier}`,{element:this._activeDropdownElement,visibility:o});const r=this._dropdownMenu;let s=!1;const c=Array.from(r.children);c.forEach(((e,t)=>{const n=e.dataset.item;if("divider"===n)s?(a.default.show(e),s=!1):a.default.hide(e);else if(!1===o.get(n)){if(a.default.hide(e),t>0&&t+1===c.length){const t=e.previousElementSibling;"divider"===t.dataset.item&&a.default.hide(t)}}else a.default.show(e),s=!0}))}_dropdownGetItems(){return[]}_dropdownOpen(){return{}}_dropdownSelect(e){}_clickDropdownItem(e){e.preventDefault();const t=e.currentTarget.dataset.item,n={cancel:!1,element:this._activeDropdownElement,item:t};l.fire("com.woltlab.wcf.inlineEditor",`dropdownItemClick_${this._options.dropdownIdentifier}`,n),n.cancel?e.preventDefault():this._dropdownSelect(t)}_prepare(){const e=this._elements.get(this._activeElement),t=document.createElement("div");t.className="messageBody editor",e.messageBodyEditor=t;const n=document.createElement("span");n.className="icon icon48 fa-spinner",t.appendChild(n),e.messageBody.insertAdjacentElement("afterend",t),a.default.hide(e.messageBody)}_showEditor(e){const t=this._getEditorId(),n=this._activeElement,i=this._elements.get(n);n.classList.add("jsInvalidQuoteTarget");i.messageBodyEditor.querySelector(".icon").remove();const o=i.messageBodyEditor,r=document.createElement("div");r.className="editorContainer",a.default.setInnerHtml(r,e.returnValues.template),o.appendChild(r);const c=r.querySelector(".formSubmit");c.querySelector('button[data-type="save"]').addEventListener("click",(()=>this._save()));if(c.querySelector('button[data-type="cancel"]').addEventListener("click",(()=>this._restoreMessage())),l.add("com.woltlab.wcf.redactor",`submitEditor_${t}`,(e=>{e.cancel=!0,this._save()})),a.default.hide(i.messageHeader),a.default.hide(i.messageFooter),"redactor"===s.editor())window.setTimeout((()=>{this._options.quoteManager&&this._options.quoteManager.setAlternativeEditor(t),h.element(n)}),250);else{document.getElementById(t).focus()}}_restoreMessage(){const e=this._activeElement,t=this._elements.get(e);this._destroyEditor(),t.messageBodyEditor.remove(),t.messageBodyEditor=null,a.default.show(t.messageBody),a.default.show(t.messageFooter),a.default.show(t.messageHeader),e.classList.remove("jsInvalidQuoteTarget"),this._activeElement=null,this._options.quoteManager&&this._options.quoteManager.clearAlternativeEditor()}_save(){const e={containerID:this._options.containerId,data:{message:""},objectID:this._getObjectId(this._activeElement),removeQuoteIDs:this._options.quoteManager?this._options.quoteManager.getQuotesMarkedForRemoval():[]},t=this._getEditorId(),n=document.getElementById(`settings_${t}`);n&&n.querySelectorAll("input, select, textarea").forEach((t=>{if("INPUT"===t.nodeName&&("checkbox"===t.type||"radio"===t.type)&&!t.checked)return;const n=t.name;if(Object.prototype.hasOwnProperty.call(e,n))throw new Error(`Variable overshadowing, key '${n}' is already present.`);e[n]=t.value.trim()})),l.fire("com.woltlab.wcf.redactor2",`getText_${t}`,e.data);
1let o=this._validate(e);o instanceof Promise||(o=!1===o?Promise.reject():Promise.resolve()),o.then((()=>{l.fire("com.woltlab.wcf.redactor2",`submit_${t}`,e),i.api(this,{actionName:"save",parameters:e}),this._hideEditor()}),(e=>{const t=e.message;console.log(`Validation of post edit failed: ${t}`)}))}_validate(e){this._activeElement.querySelectorAll(".innerError").forEach((e=>e.remove()));const t={api:this,parameters:e,valid:!0,promises:[]};return l.fire("com.woltlab.wcf.redactor2",`validate_${this._getEditorId()}`,t),t.valid?t.promises.push(Promise.resolve()):t.promises.push(Promise.reject()),Promise.all(t.promises)}throwError(e,t){a.default.innerError(e,t)}_showMessage(e){const t=this._activeElement,n=this._getEditorId(),i=this._elements.get(t);if(a.default.setInnerHtml(i.messageBody.querySelector(".messageText"),e.returnValues.message),"string"==typeof e.returnValues.attachmentList){i.messageFooter.querySelectorAll(".attachmentThumbnailList, .attachmentFileList").forEach((e=>e.remove()));const t=document.createElement("div");let n;for(a.default.setInnerHtml(t,e.returnValues.attachmentList);t.childNodes.length;)n=t.childNodes[t.childNodes.length-1],i.messageFooter.insertBefore(n,i.messageFooter.firstChild)}if("string"==typeof e.returnValues.poll){const t=i.messageBody.querySelector(".pollContainer");if(null!==t&&t.parentElement.remove(),""!==e.returnValues.poll){const t=document.createElement("div");t.className="jsInlineEditorHideContent",a.default.setInnerHtml(t,e.returnValues.poll),i.messageBody.insertAdjacentElement("afterbegin",t)}}this._restoreMessage(),this._updateHistory(this._getHash(this._getObjectId(t))),l.fire("com.woltlab.wcf.redactor",`autosaveDestroy_${n}`),u.show(),this._options.quoteManager&&(this._options.quoteManager.clearAlternativeEditor(),this._options.quoteManager.countQuotes())}_hideEditor(){const e=this._elements.get(this._activeElement),t=e.messageBodyEditor.querySelector(".editorContainer");a.default.hide(t);const n=document.createElement("span");n.className="icon icon48 fa-spinner",e.messageBodyEditor.appendChild(n)}_restoreEditor(){const e=this._elements.get(this._activeElement).messageBodyEditor;e.querySelector(".fa-spinner").remove();const t=e.querySelector(".editorContainer");null!==t&&a.default.show(t)}_destroyEditor(){l.fire("com.woltlab.wcf.redactor2",`autosaveDestroy_${this._getEditorId()}`),l.fire("com.woltlab.wcf.redactor2",`destroy_${this._getEditorId()}`)}_getHash(e){return`#message${e}`}_updateHistory(e){window.location.hash=e}_getEditorId(){return this._options.editorPrefix+this._getObjectId(this._activeElement).toString()}_getObjectId(e){return e.dataset.objectId||""}_ajaxFailure(e){const t=this._elements.get(this._activeElement).messageBodyEditor.querySelector(".redactor-layer");return null===t?(this._restoreMessage(),!0):(this._restoreEditor(),!e||void 0===e.returnValues||void 0===e.returnValues.realErrorMessage||(a.default.innerError(t,e.returnValues.realErrorMessage),!1))}_ajaxSuccess(e){switch(e.actionName){case"beginEdit":this._showEditor(e);break;case"save":this._showMessage(e)}}_ajaxSetup(){return{data:{className:this._options.className,interfaceName:"wcf\\data\\IMessageInlineEditorAction"},silent:!0}}legacyEdit(e){this._click(document.getElementById(e),null)}}return o.enableLegacyInheritance(f),f})),define("WoltLabSuite/Core/Ui/Message/Manager",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Change/Listener","../../Language","../../StringUtil"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importStar(s);class l{constructor(e){this._elements=new Map,this._options=o.extend({className:"",selector:""},e),this.rebuild(),r.default.add(`Ui/Message/Manager${this._options.className}`,this.rebuild.bind(this))}rebuild(){this._elements.clear(),document.querySelectorAll(this._options.selector).forEach((e=>{this._elements.set(e.dataset.objectId,e)}))}getPermission(e,t){t="can"+s.ucfirst(t);const n=this._elements.get(e);if(void 0===n)throw new Error(`Unknown object id '${e}' for selector '${this._options.selector}'`);return o.stringToBool(n.dataset[s.toCamelCase(t)]||"")}getPropertyValue(e,t,n){const i=this._elements.get(e);if(void 0===i)throw new Error(`Unknown object id '${e}' for selector '${this._options.selector}'`);const r=i.dataset[s.toCamelCase(t)]||"";return n?o.stringToBool(r):r}update(e,t,n){i.api(this,{actionName:t,parameters:n||{},objectIDs:[e]})}updateItems(e,t){Array.isArray(e)||(e=[e]),e.forEach((e=>{const n=this._elements.get(e);void 0!==n&&Object.entries(t).forEach((([e,t])=>{this._update(n,e,t)}))}))}updateAllItems(e){const t=Array.from(this._elements.keys());this.updateItems(t,e)}setNote(e,t,n){const i=this._elements.get(e);if(void 0===i)throw new Error(`Unknown object id '${e}' for selector '${this._options.selector}'`);const o=i.querySelector(".messageFooterNotes");let r=o.querySelector(`.${t}`);n?(null===r&&(r=document.createElement("p"),r.className="messageFooterNote "+t,o.appendChild(r)),r.innerHTML=n):null!==r&&r.remove()}_update(e,t,n){e.dataset[t]=n.toString();const i=1==n||!0===n||"true"===n;this._updateState(e,t,n,i)}_updateState(e,t,n,i){switch(t){case"isDeleted":i?e.classList.add("messageDeleted"):e.classList.remove("messageDeleted"),this._toggleMessageStatus(e,"jsIconDeleted","wcf.message.status.deleted","red",i);break;case"isDisabled":i?e.classList.add("messageDisabled"):e.classList.remove("messageDisabled"),this._toggleMessageStatus(e,"jsIconDisabled","wcf.message.status.disabled","green",i)}}_toggleMessageStatus(e,t,n,i,o){let r=e.querySelector(".messageStatus");if(null===r){const t=e.querySelector(".messageHeaderMetaData");if(null===t)return;r=document.createElement("ul"),r.className="messageStatus",t.insertAdjacentElement("afterend",r)}let s=r.querySelector(`.${t}`);if(o){if(null!==s)return;s=document.createElement("span"),s.className=`badge label ${i} ${t}`,s.textContent=a.get(n);const e=document.createElement("li");e.appendChild(s),r.appendChild(e)}else{if(null===s)return;s.parentElement.remove()}}_getAttributeName(e){return-1!==e.indexOf("-")?e:e.split(/([A-Z][a-z]+)/).map((e=>e.trim().toLowerCase())).filter((e=>e.length>0)).join("-")}_ajaxSuccess(e){throw new Error("Method _ajaxSuccess() must be implemented by deriving functions.")}_ajaxSetup(){return{data:{className:this._options.className}}}}return o.enableLegacyInheritance(l),l})),define("WoltLabSuite/Core/Ui/Message/TwitterEmbed",["require","exports","https://platform.twitter.com/widgets.js"],(function(e,t){"use strict";async function n(e,t,n=!1){const o=await i,r=await o.widgets.createTweet(t,e,{dnt:!0,lang:document.documentElement.lang});if(r&&n){for(;e.lastChild;)e.removeChild(e.lastChild);e.appendChild(r)}return r}
1Object.defineProperty(t,"__esModule",{value:!0}),t.embedAll=t.embedTweet=void 0;const i=new Promise((e=>{twttr.ready(e)}));t.embedTweet=n,t.embedAll=function(){document.querySelectorAll("[data-wsc-twitter-tweet]").forEach((e=>{const t=e.dataset.wscTwitterTweet;t&&(delete e.dataset.wscTwitterTweet,n(e,t,!0))}))}})),define("WoltLabSuite/Core/Ui/User/List",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Util","../Dialog","../Pagination"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a),s=n.__importDefault(s);class l{constructor(e){this.cache=new Map,this.pageCount=0,this.pageNo=1,this.options=o.extend({className:"",dialogTitle:"",parameters:{}},e)}open(){this.pageNo=1,this.showPage()}showPage(e){if("number"==typeof e&&(this.pageNo=+e),0!==this.pageCount&&(this.pageNo<1||this.pageNo>this.pageCount))throw new RangeError(`pageNo must be between 1 and ${this.pageCount} (${this.pageNo} given).`);if(this.cache.has(this.pageNo)){const e=a.default.open(this,this.cache.get(this.pageNo));if(this.pageCount>1){const t=e.content.querySelector(".jsPagination");null!==t&&new s.default(t,{activePage:this.pageNo,maxPage:this.pageCount,callbackSwitch:this.showPage.bind(this)});const n=e.content.parentElement;n.scrollTop>0&&(n.scrollTop=0)}}else this.options.parameters.pageNo=this.pageNo,i.api(this,{parameters:this.options.parameters})}_ajaxSuccess(e){void 0!==e.returnValues.pageCount&&(this.pageCount=~~e.returnValues.pageCount),this.cache.set(this.pageNo,e.returnValues.template),this.showPage()}_ajaxSetup(){return{data:{actionName:"getGroupedUserList",className:this.options.className,interfaceName:"wcf\\data\\IGroupedUserListAction"}}}_dialogSetup(){return{id:r.default.getUniqueId(),options:{title:this.options.dialogTitle},source:null}}}return o.enableLegacyInheritance(l),l})),define("WoltLabSuite/Core/Ui/Poll/View/Participants",["require","exports","tslib","../../User/List"],(function(e,t,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Participants=void 0,i=n.__importDefault(i);class o{constructor(e){this.userList=void 0,this.pollManager=e;const t=this.pollManager.getElement().querySelector(".showPollParticipantsButton");if(!t)throw new Error(`Could not find button with selector "showPollParticipantsButton" for poll "${this.pollManager.pollId}"`);this.button=t,this.button.addEventListener("click",(e=>{e&&e.preventDefault(),this.open()}))}open(){this.userList||(this.userList=new i.default({className:"wcf\\data\\poll\\PollAction",dialogTitle:this.pollManager.question,parameters:{pollID:this.pollManager.pollId}})),this.userList.open()}showButton(){this.button.hidden=!1}hideButton(){this.button.hidden=!0}}t.Participants=o,t.default=o})),define("WoltLabSuite/Core/Ui/Poll/View/Results",["require","exports","tslib","../../../Ajax","../Poll"],(function(e,t,n,i,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Results=void 0,i=n.__importStar(i);class r{constructor(e,t){this.pollManager=e,this.button=t,this.button.addEventListener("click",(async e=>{e&&e.preventDefault(),this.button.disabled=!0,this.pollManager.hasView(o.PollViews.results)?this.pollManager.displayView(o.PollViews.results):await this.loadView(),this.button.disabled=!1}))}async loadView(){const e=i.dboAction("getResultTemplate","wcf\\data\\poll\\PollAction");e.objectIds([this.pollManager.pollId]);const t=await e.dispatch();this.pollManager.addView(o.PollViews.results,t.template),this.pollManager.displayView(o.PollViews.results)}checkVisibility(e){e===o.PollViews.results?this.button.hidden=!0:this.button.hidden=!1}}t.Results=r,t.default=r})),define("WoltLabSuite/Core/Ui/Poll/View/Vote",["require","exports","tslib","../../../Ajax","../Poll"],(function(e,t,n,i,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Vote=void 0,i=n.__importStar(i);class r{constructor(e){this.pollManager=e;const t=this.pollManager.getElement().querySelector(".showVoteFormButton");if(!t)throw new Error(`Could not find button with selector ".showVoteFormButton" for poll "${this.pollManager.pollId}"`);this.button=t,this.button.addEventListener("click",(async e=>{e&&e.preventDefault(),this.button.disabled=!0,this.pollManager.hasView(o.PollViews.vote)?this.pollManager.displayView(o.PollViews.vote):await this.loadView(),this.button.disabled=!1}))}async loadView(){const e=i.dboAction("getVoteTemplate","wcf\\data\\poll\\PollAction");e.objectIds([this.pollManager.pollId]);const t=await e.dispatch();this.pollManager.addView(o.PollViews.vote,t.template),this.pollManager.displayView(o.PollViews.vote)}checkVisibility(e){e!==o.PollViews.vote&&this.pollManager.canVote?this.button.hidden=!1:this.button.hidden=!0}}t.Vote=r,t.default=r})),define("WoltLabSuite/Core/Ui/Poll/Vote",["require","exports","tslib","./Poll","../../Ajax"],(function(e,t,n,i,o){"use strict";
1Object.defineProperty(t,"__esModule",{value:!0}),t.Vote=void 0,o=n.__importStar(o);class r{constructor(e){this.pollManager=e;const t=this.pollManager.getElement().querySelector(".votePollButton");if(!t)throw new Error(`Could not find vote button for poll "${this.pollManager.pollId}".`);this.button=t,this.button.addEventListener("click",(()=>this.submit())),this.initSelects()}initSelects(){if(this.pollManager.hasView(i.PollViews.vote)){const e=this.pollManager.getView(i.PollViews.vote);this.inputs=Array.from(e.querySelectorAll("input")),this.inputs.forEach((e=>{e.addEventListener("change",(()=>this.checkInputs()))})),this.checkInputs()}}checkInputs(){let e=0;this.inputs.forEach((t=>{t.checked&&e++,this.pollManager.maxVotes>1&&(t.disabled=!1)})),0===e?this.button.disabled=!0:(e>=this.pollManager.maxVotes&&this.pollManager.maxVotes>1&&this.inputs.forEach((e=>{e.checked||(e.disabled=!0)})),this.button.disabled=!1)}getSelectedOptions(){return this.inputs.filter((e=>e.checked)).map((e=>parseInt(e.value,10)))}async submit(){this.button.disabled=!0;const e=this.getSelectedOptions(),t=o.dboAction("vote","wcf\\data\\poll\\PollAction");t.objectIds([this.pollManager.pollId]),t.payload({optionIDs:e});const n=await t.dispatch();this.pollManager.canVote=!!n.changeableVote,this.pollManager.canViewResults=!0,this.pollManager.addView(i.PollViews.results,n.template),this.pollManager.displayView(i.PollViews.results),this.pollManager.changeTotalVotes(n.totalVotes,n.totalVotesTooltip),this.button.disabled=!1}checkVisibility(e){this.button.hidden=e!==i.PollViews.vote}}t.Vote=r,t.default=r})),define("WoltLabSuite/Core/Ui/Poll/Poll",["require","exports","tslib","../../Dom/Change/Listener","../../Dom/Util","../../StringUtil","./View/Participants","./View/Results","./View/Vote","./Vote"],(function(e,t,n,i,o,r,a,s,l,c){"use strict";function d(){document.querySelectorAll(".pollContainer").forEach((e=>{if(!e.dataset.pollId)throw new Error("Invalid poll element given. Missing pollID.");const t=parseInt(e.dataset.pollId,10);f.has(t)||f.set(t,new h(t))}))}function u(){i.default.add("WoltLabSuite/Core/Ui/Poll/Manager/Poll",(()=>{d()})),d()}var p;Object.defineProperty(t,"__esModule",{value:!0}),t.setupAll=t.Poll=t.PollViews=void 0,i=n.__importDefault(i),o=n.__importDefault(o),a=n.__importDefault(a),s=n.__importDefault(s),l=n.__importDefault(l),c=n.__importDefault(c),function(e){e.vote="vote",e.results="results"}(p||(t.PollViews=p={}));class h{constructor(e){this.voteView=void 0,this.resultsView=void 0,this.participants=void 0,this.voteHandler=void 0,this.views=new Map;const t=document.getElementById(`poll${e}`);if(null===t)throw new Error(`Could not find poll with id "${e}".`);this.element=t,this.pollId=e,this.getInnerContainer().querySelectorAll("div").forEach((e=>{e.dataset.key&&this.views.set(e.dataset.key,e)}));const n=this.element.querySelector(".showResultsButton");this.canViewResults&&null!==n&&(this.resultsView=new s.default(this,n)),this.canVote&&(this.voteView=new l.default(this),this.voteHandler=new c.default(this)),this.canViewParticipants()&&(this.participants=new a.default(this))}getElement(){return this.element}hasView(e){return this.views.has(e)}getView(e){if(!this.hasView(e))throw new Error(`The view "${e}" is unknown for poll "${this.pollId}".`);return this.views.get(e)}displayView(e){var t,n,i,o;if(!this.hasView(e))throw new Error(`The view "${e}" is unknown for poll "${this.pollId}".`);this.views.forEach((e=>{e.hidden=!0})),this.views.get(e).hidden=!1,null===(t=this.voteView)||void 0===t||t.checkVisibility(e),null===(n=this.resultsView)||void 0===n||n.checkVisibility(e),null===(i=this.voteHandler)||void 0===i||i.checkVisibility(e),this.canViewParticipants()&&(e===p.results?(this.participants||(this.participants=new a.default(this)),this.participants.showButton()):null===(o=this.participants)||void 0===o||o.hideButton())}addView(e,t){const n=document.createElement("div");n.dataset.key=e,n.hidden=!0,o.default.setInnerHtml(n,t),this.getInnerContainer().append(n),this.views.has(e)&&this.views.get(e).remove(),this.views.set(e,n),e===p.vote&&this.voteHandler.initSelects()}canViewParticipants(){return this.canViewResults&&this.isPublic}getInnerContainer(){const e=this.element.querySelector(".pollInnerContainer");if(!e)throw new Error(`Could not find inner container for poll "${this.pollId}"`);return e}changeTotalVotes(e,t){const n=this.getElement().querySelector(".pollTotalVotesBadge");if(!n)throw new Error("Could not find total votes badge.");n.textContent=(0,r.formatNumeric)(e),n.dataset.tooltip=t}get isPublic(){return"true"===this.element.dataset.isPublic}get maxVotes(){return parseInt(this.element.dataset.maxVotes,10)}get question(){return this.element.dataset.question}get canVote(){return"true"===this.element.dataset.canVote}set canVote(e){this.element.dataset.canVote=e?"true":"false"}get canViewResults(){return"true"===this.element.dataset.canViewResult}set canViewResults(e){this.element.dataset.canViewResult=e?"true":"false"}}t.Poll=h;const f=new Map;t.setupAll=u,t.default=u})),define("WoltLabSuite/Core/Ui/Redactor/Editor",["require","exports"],(function(e,t){"use strict";
1Object.defineProperty(t,"__esModule",{value:!0})})),define("WoltLabSuite/Core/Ui/Search/Input",["require","exports","tslib","../../Ajax","../../Core","../../Dom/Util","../Dropdown/Simple"],(function(e,t,n,i,o,r,a){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importDefault(r),a=n.__importDefault(a);class s{constructor(e,t){if(this.activeItem=void 0,this.callbackDropdownInit=void 0,this.callbackSelect=void 0,this.dropdownContainerId="",this.excludedSearchValues=new Set,this.list=void 0,this.lastValue="",this.request=void 0,this.timerDelay=void 0,this.element=e,!(this.element instanceof HTMLElement))throw new TypeError("Expected a valid DOM element.");if("INPUT"!==this.element.nodeName||"search"!==this.element.type&&"text"!==this.element.type)throw new Error('Expected an input[type="text"].');t=o.extend({ajax:{actionName:"getSearchResultList",className:"",interfaceName:"wcf\\data\\ISearchAction"},autoFocus:!0,callbackDropdownInit:void 0,callbackSelect:void 0,delay:500,excludedSearchValues:[],minLength:3,noResultPlaceholder:"",preventSubmit:!1},t),this.ajaxPayload=t.ajax,this.autoFocus=t.autoFocus,this.callbackDropdownInit=t.callbackDropdownInit,this.callbackSelect=t.callbackSelect,this.delay=t.delay,t.excludedSearchValues.forEach((e=>{this.addExcludedSearchValues(e)})),this.minLength=t.minLength,this.noResultPlaceholder=t.noResultPlaceholder,this.preventSubmit=t.preventSubmit,this.element.autocomplete="off",this.element.addEventListener("keydown",(e=>this.keydown(e))),this.element.addEventListener("keyup",(e=>this.keyup(e)))}addExcludedSearchValues(e){this.excludedSearchValues.add(e)}removeExcludedSearchValues(e){this.excludedSearchValues.delete(e)}keydown(e){(this.activeItem&&a.default.isOpen(this.dropdownContainerId)||this.preventSubmit)&&"Enter"===e.key&&e.preventDefault(),["ArrowUp","ArrowDown","Escape"].includes(e.key)&&e.preventDefault()}keyup(e){if(this.activeItem||!this.autoFocus)if(a.default.isOpen(this.dropdownContainerId)){if("ArrowUp"===e.key)return e.preventDefault(),this.keyboardPreviousItem();if("ArrowDown"===e.key)return e.preventDefault(),this.keyboardNextItem();if("Enter"===e.key)return e.preventDefault(),this.keyboardSelectItem()}else this.activeItem=void 0;if("Escape"===e.key)return void a.default.close(this.dropdownContainerId);const t=this.element.value.trim();this.lastValue!==t&&(this.lastValue=t,t.length<this.minLength?this.dropdownContainerId&&(a.default.close(this.dropdownContainerId),this.activeItem=void 0):this.delay?(this.timerDelay&&window.clearTimeout(this.timerDelay),this.timerDelay=window.setTimeout((()=>{this.search(t)}),this.delay)):this.search(t))}search(e){this.request&&this.request.abortPrevious(),this.request=i.api(this,this.getParameters(e))}getParameters(e){return{parameters:{data:{excludedSearchValues:Array.from(this.excludedSearchValues),searchString:e}}}}keyboardNextItem(){let e;this.activeItem&&(this.activeItem.classList.remove("active"),this.activeItem.nextElementSibling&&(e=this.activeItem.nextElementSibling)),this.activeItem=e||this.list.children[0],this.activeItem.classList.add("active")}keyboardPreviousItem(){let e;this.activeItem&&(this.activeItem.classList.remove("active"),this.activeItem.previousElementSibling&&(e=this.activeItem.previousElementSibling)),this.activeItem=e||this.list.children[this.list.childElementCount-1],this.activeItem.classList.add("active")}keyboardSelectItem(){this.selectItem(this.activeItem)}clickSelectItem(e){this.selectItem(e.currentTarget)}selectItem(e){this.callbackSelect&&!this.callbackSelect(e)?this.element.value="":this.element.value=e.dataset.label||"",this.activeItem=void 0,a.default.close(this.dropdownContainerId)}_ajaxSuccess(e){let t=!1;if(this.list?this.list.innerHTML="":(this.list=document.createElement("ul"),this.list.className="dropdownMenu",t=!0,"function"==typeof this.callbackDropdownInit&&this.callbackDropdownInit(this.list)),"object"==typeof e.returnValues){const t=this.clickSelectItem.bind(this);Object.keys(e.returnValues).forEach((n=>{const i=this.createListItem(e.returnValues[n]);i.addEventListener("click",t),this.list.appendChild(i)}))}if(t){this.element.insertAdjacentElement("afterend",this.list);const e=this.element.parentElement;a.default.initFragment(e,this.list),this.dropdownContainerId=r.default.identify(e)}if(this.dropdownContainerId)if(this.activeItem=void 0,this.list.childElementCount||this.handleEmptyResult()){a.default.open(this.dropdownContainerId,!0,this.element);const e=this.list.childElementCount?this.list.children[0]:void 0;this.autoFocus&&e&&~~(e.dataset.objectId||"")&&(this.activeItem=e,this.activeItem.classList.add("active"))}else a.default.close(this.dropdownContainerId)}
1handleEmptyResult(){if(!this.noResultPlaceholder)return!1;const e=document.createElement("li");e.className="dropdownText";const t=document.createElement("span");return t.textContent=this.noResultPlaceholder,e.appendChild(t),this.list.appendChild(e),!0}createListItem(e){const t=document.createElement("li");t.dataset.objectId=e.objectID.toString(),t.dataset.label=e.label;const n=document.createElement("span");return n.textContent=e.label,t.appendChild(n),t}_ajaxSetup(){return{data:this.ajaxPayload}}}return o.enableLegacyInheritance(s),s})),define("WoltLabSuite/Core/Ui/Search/Page",["require","exports","tslib","../../Core","../../Dom/Util","../Dropdown/Simple","../Screen","./Input"],(function(e,t,n,i,o,r,a,s){"use strict";function l(e){e.preventDefault();const t=e.currentTarget,n=t.dataset.objectType,o=t.dataset.extendedLink;if(o){document.querySelector(".pageHeaderSearchExtendedLink").href=o}d.clear();try{const e=JSON.parse(t.dataset.parameters||"");i.isPlainObject(e)&&Object.keys(e).forEach((t=>{d.set(t,e[t])}))}catch(e){}n&&"everywhere"!==n&&d.set("type",n);document.getElementById("pageHeaderSearchInputContainer").querySelector(".pageHeaderSearchType > .button > .pageHeaderSearchTypeLabel").textContent=t.textContent}function c(e,t){const n=new URL(e.action);n.search+=""!==n.search?"&":"?",n.search+=new URLSearchParams([["q",t.value.trim()],...Array.from(d)]).toString(),window.location.href=n.toString()}Object.defineProperty(t,"__esModule",{value:!0}),t.init=void 0,i=n.__importStar(i),o=n.__importDefault(o),r=n.__importDefault(r),a=n.__importStar(a),s=n.__importDefault(s);const d=new Map;t.init=function(e){const t=document.getElementById("pageHeaderSearchInput"),n=t.form;new s.default(t,{ajax:{className:"wcf\\data\\search\\keyword\\SearchKeywordAction"},autoFocus:!1,callbackDropdownInit(e){if(e.classList.add("dropdownMenuPageSearch"),a.is("screen-lg")){e.dataset.dropdownAlignmentHorizontal="right";const n=t.clientWidth;e.style.setProperty("min-width",`${n}px`,"");const i=t.parentElement,r=o.default.offset(i).left+i.clientWidth-(o.default.offset(t).left+n),a=o.default.styleAsInt(window.getComputedStyle(i),"padding-bottom");e.style.setProperty("transform",`translateX(-${Math.ceil(r)}px) translateY(-${a}px)`,"")}},callbackSelect:()=>(setTimeout((()=>{c(n,t)}),1),!0)});const i=document.querySelector(".pageHeaderSearchType"),d=r.default.getDropdownMenu(o.default.identify(i));d.querySelectorAll("a[data-object-type]").forEach((e=>{e.addEventListener("click",l)})),d.querySelector('a[data-object-type="'+e+'"]').click(),n.addEventListener("submit",(e=>{e.preventDefault(),c(n,t)}))}})),define("WoltLabSuite/Core/Ui/Toggle/Input",["require","exports","tslib","../../Core","../../Dom/Util"],(function(e,t,n,i,o){"use strict";i=n.__importStar(i),o=n.__importDefault(o);class r{constructor(e,t){const n=document.querySelector(e);if(null===n)throw new Error("Unable to find element by selector '"+e+"'.");const i="INPUT"===n.nodeName?n.type:"";if("checkbox"!==i&&"radio"!==i)throw new Error("Illegal element, expected input[type='checkbox'] or input[type='radio'].");this.element=n,this.hide=this.getElements("hide",Array.isArray(t.hide)?t.hide:[]),this.show=this.getElements("show",Array.isArray(t.show)?t.show:[]),this.element.addEventListener("change",(e=>this.change(e))),this.updateVisibility(this.show,this.element.checked),this.updateVisibility(this.hide,!this.element.checked)}getElements(e,t){const n=[];return t.forEach((t=>{let i=null;if("string"==typeof t){if(i=document.querySelector(t),null===i)throw new Error(`Unable to find an element with the selector '${t}'.`)}else{if(!(t instanceof HTMLElement))throw new TypeError(`The array '${e}' may only contain string selectors or DOM elements.`);i=t}n.push(i)})),n}change(e){const t=e.currentTarget.checked;this.updateVisibility(this.show,t),this.updateVisibility(this.hide,!t)}updateVisibility(e,t){e.forEach((e=>{o.default[t?"show":"hide"](e)}))}}return i.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Container/SuffixFormField",["require","exports","tslib","../../../Ui/Dropdown/Simple","../../../Event/Handler","../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a{constructor(e,t){this._formId=e,this._suffixField=document.getElementById(t),this._suffixDropdownMenu=i.default.getDropdownMenu(t+"_dropdown"),this._suffixDropdownToggle=i.default.getDropdown(t+"_dropdown").getElementsByClassName("dropdownToggle")[0],Array.from(this._suffixDropdownMenu.children).forEac
1h((e=>{e.addEventListener("click",(e=>this._changeSuffixSelection(e)))})),o.add("WoltLabSuite/Core/Form/Builder/Manager","afterUnregisterForm",(e=>this._destroyDropdown(e)))}_changeSuffixSelection(e){const t=e.currentTarget;t.classList.contains("disabled")||(Array.from(this._suffixDropdownMenu.children).forEach((e=>{e===t?e.classList.add("active"):e.classList.remove("active")})),this._suffixField.value=t.dataset.value,this._suffixDropdownToggle.innerHTML=t.dataset.label+' <span class="icon icon16 fa-caret-down pointer"></span>')}_destroyDropdown(e){e.formId===this._formId&&i.default.destroy(this._suffixDropdownMenu.id)}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/Acl",["require","exports","tslib","./Field","../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){return{[this._fieldId]:this._aclList.getData()}}_readField(){}setAclList(e){return this._aclList=e,this}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Button",["require","exports","tslib","./Field"],(function(e,t,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Button=void 0,i=n.__importDefault(i);class o extends i.default{_getData(){const e={};return"1"===this._field.dataset.isClicked&&(e[this._fieldId]=this._field.value),e}}t.Button=o,t.default=o})),define("WoltLabSuite/Core/Form/Builder/Field/Captcha",["require","exports","tslib","./Field","../../../Controller/Captcha","../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importDefault(o),r=n.__importStar(r);class a extends i.default{_getData(){return o.default.has(this._fieldId)?o.default.getData(this._fieldId):{}}_readField(){}destroy(){o.default.has(this._fieldId)&&o.default.delete(this._fieldId)}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/Checkboxes",["require","exports","tslib","./Field","../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){const e=this._fields.map((e=>e.checked?e.value:null)).filter((e=>null!==e));return{[this._fieldId]:e}}_readField(){this._fields=Array.from(document.querySelectorAll(`input[name="${this._fieldId}[]"]`))}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Checked",["require","exports","tslib","./Field","../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){return{[this._fieldId]:this._field.checked?1:0}}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/CheckedVoid",["require","exports","tslib","./Field"],(function(e,t,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CheckedVoid=void 0,i=n.__importDefault(i);class o extends i.default{_getData(){return this._field.checked?{[this._fieldId]:1}:{}}}t.CheckedVoid=o,t.default=o})),define("WoltLabSuite/Core/Form/Builder/Field/Date",["require","exports","tslib","./Field","../../../Date/Picker","../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importDefault(o),r=n.__importStar(r);class a extends i.default{_getData(){return{[this._fieldId]:o.default.getValue(this._field)}}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/ItemList",["require","exports","tslib","./Field","../../../Ui/ItemList/Static","../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a extends i.default{_getData(){const e=[];return o.getValues(this._fieldId).forEach((t=>{t.objectId?e[t.objectId]=t.value:e.push(t.value)})),{[this._fieldId]:e}}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/RadioButton",["require","exports","tslib","./Field","../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){const e={};return this._fields.some((t=>!!t.checked&&(e[this._fieldId]=t.value,!0))),e}_readField(){this._fields=Array.from(document.querySelectorAll("input[name="+this._fieldId+"]"))}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/SimpleAcl",["require","exports","tslib","./Field","../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){const e=Array.from(document.querySelectorAll('input[name="'+this._fieldId+'[group][]"]')).map((e=>e.value)),t=Array.from(document.querySelectorAll('input[name="'+this._fieldId+'[user][]"]')).map((e=>e.value));return{[this._fieldId]:{group:e,user:t}}}_readField(){}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Tag",["require","exports","tslib","./Field","../../../Ui/ItemList","../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a extends i.default{_getData(){const e=o.getValues(this._fieldId).map((e=>e.value));return{[this._fieldId]:e}}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/User",["require","exports","tslib","./Field","../../../Core","../../../Ui/ItemList"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a extends i.default{_getData(){const e=r.getValues(this._fieldId).map((e=>e.value));return{[this._fieldId]:e.join(",")}}}return o.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/Value",["require","exports","tslib","./Field","../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){return{[this._fieldId]:this._field.value}}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/ValueI18n",["require","exports","tslib","./Field","../../../Language/Input","../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a extends i.default{_getData(){const e={}
1,t=o.getValues(this._fieldId);return t.size>1?(Object.prototype.hasOwnProperty.call(e,this._fieldId+"_i18n")||(e[this._fieldId+"_i18n"]={}),t.forEach(((t,n)=>{e[this._fieldId+"_i18n"][n]=t}))):e[this._fieldId]=t.get(0),e}destroy(){o.unregister(this._fieldId)}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Ui/Object/Action/Toogle",["require","exports","./Toggle"],(function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setup=void 0,Object.defineProperty(t,"setup",{enumerable:!0,get:function(){return n.setup}})})),define("WoltLabSuite/Core/Ui/User/Search/Input",["require","exports","tslib","../../../Core","../../Search/Input"],(function(e,t,n,i,o){"use strict";i=n.__importStar(i),o=n.__importDefault(o);class r extends o.default{constructor(e,t){const n=i.isPlainObject(t)&&!0===t.includeUserGroups;super(e,t=i.extend({ajax:{className:"wcf\\data\\user\\UserAction",parameters:{data:{includeUserGroups:n?1:0}}}},t))}createListItem(e){const t=super.createListItem(e);t.dataset.type=e.type;const n=document.createElement("div");return n.className="box16",n.innerHTML="group"===e.type?'<span class="icon icon16 fa-users"></span>':e.icon,n.appendChild(t.children[0]),t.appendChild(n),t}}return i.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Controller/Label",["require","exports","tslib","../../../../Core","../../../../Dom/Util","../../../../Language","../../../../Ui/Dropdown/Simple"],(function(e,t,n,i,o,r,a){"use strict";i=n.__importStar(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importDefault(a);class s{constructor(e,t,n){this._formFieldContainer=document.getElementById(e+"Container"),this._labelChooser=this._formFieldContainer.getElementsByClassName("labelChooser")[0],this._options=i.extend({forceSelection:!1,showWithoutSelection:!1},n),this._input=document.createElement("input"),this._input.type="hidden",this._input.id=e,this._input.name=e,this._input.value=t,this._formFieldContainer.appendChild(this._input);const s=o.identify(this._labelChooser);let l=a.default.getDropdownMenu(s);null===l&&(a.default.init(this._labelChooser.getElementsByClassName("dropdownToggle")[0]),l=a.default.getDropdownMenu(s));let c=null;if(this._options.showWithoutSelection||!this._options.forceSelection){c=document.createElement("ul"),l.appendChild(c);const e=document.createElement("li");e.classList.add("dropdownDivider"),c.appendChild(e)}if(this._options.showWithoutSelection){const e=document.createElement("li");e.dataset.labelId="-1",this._blockScroll(e),c.appendChild(e);const t=document.createElement("span");e.appendChild(t);const n=document.createElement("span");n.classList.add("badge","label"),n.innerHTML=r.get("wcf.label.withoutSelection"),t.appendChild(n)}if(!this._options.forceSelection){const e=document.createElement("li");e.dataset.labelId="0",this._blockScroll(e),c.appendChild(e);const t=document.createElement("span");e.appendChild(t);const n=document.createElement("span");n.classList.add("badge","label"),n.innerHTML=r.get("wcf.label.none"),t.appendChild(n)}l.querySelectorAll("li:not(.dropdownDivider)").forEach((e=>{e.addEventListener("click",(e=>this._click(e))),t&&e.dataset.labelId===t&&this._selectLabel(e)}))}_blockScroll(e){e.addEventListener("wheel",(e=>e.preventDefault()),{passive:!1})}_click(e){e.preventDefault(),this._selectLabel(e.currentTarget)}_selectLabel(e){let t=e.dataset.labelId;t||(t="0");const n=e.querySelector("span > span"),i=this._labelChooser.querySelector(".dropdownToggle > span");i.className=n.className,i.textContent=n.textContent,this._input.value=t}}return i.enableLegacyInheritance(s),s})),define("WoltLabSuite/Core/Form/Builder/Field/Controller/Rating",["require","exports","tslib","../../../../Core","../../../../Environment"],(function(e,t,n,i,o){"use strict";i=n.__importStar(i),o=n.__importStar(o);class r{constructor(e,t,n,i){if(this._field=document.getElementById(e+"Container"),null===this._field)throw new Error("Unknown field with id '"+e+"'");this._input=document.createElement("input"),this._input.id=e,this._input.name=e,this._input.type="hidden",this._input.value=t,this._field.appendChild(this._input),this._activeCssClasse
1s=n,this._defaultCssClasses=i,this._ratingElements=new Map;const o=this._field.querySelector(".ratingList");o.addEventListener("mouseleave",(()=>this._restoreRating())),o.querySelectorAll("li").forEach((e=>{e.classList.contains("ratingMetaButton")?(e.addEventListener("click",(e=>this._metaButtonClick(e))),e.addEventListener("mouseenter",(()=>this._restoreRating()))):(this._ratingElements.set(e.dataset.rating,e),e.addEventListener("click",(e=>this._listItemClick(e))),e.addEventListener("mouseenter",(e=>this._listItemMouseEnter(e))),e.addEventListener("mouseleave",(()=>this._listItemMouseLeave())))}))}_listItemClick(e){const t=e.currentTarget;this._input.value=t.dataset.rating,"desktop"!==o.platform()&&this._restoreRating()}_listItemMouseEnter(e){const t=e.currentTarget.dataset.rating;this._ratingElements.forEach(((e,n)=>{const i=e.getElementsByClassName("icon")[0];this._toggleIcon(i,~~n<=~~t)}))}_listItemMouseLeave(){this._ratingElements.forEach((e=>{const t=e.getElementsByClassName("icon")[0];this._toggleIcon(t,!1)}))}_metaButtonClick(e){"removeRating"===e.currentTarget.dataset.action&&(this._input.value="",this._listItemMouseLeave())}_restoreRating(){this._ratingElements.forEach(((e,t)=>{const n=e.getElementsByClassName("icon")[0];this._toggleIcon(n,~~t<=~~this._input.value)}))}_toggleIcon(e,t=!1){t?(e.classList.remove(...this._defaultCssClasses),e.classList.add(...this._activeCssClasses)):(e.classList.remove(...this._activeCssClasses),e.classList.add(...this._defaultCssClasses))}}return i.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Abstract",["require","exports","tslib","./Manager","../../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importStar(i),o=n.__importStar(o);class r{constructor(e,t){this.init(e,t)}checkDependency(){throw new Error("Missing implementation of WoltLabSuite/Core/Form/Builder/Field/Dependency/Abstract.checkDependency!")}getDependentNode(){return this._dependentElement}getField(){return this._field}getFields(){return this._fields}init(e,t){if(this._dependentElement=document.getElementById(e),null===this._dependentElement)throw new Error("Unknown dependent element with container id '"+e+"Container'.");if(this._field=document.getElementById(t),null===this._field){if(this._fields=[],document.querySelectorAll("input[type=radio][name="+t+"]").forEach((e=>{this._fields.push(e)})),!this._fields.length&&(document.querySelectorAll('input[type=checkbox][name="'+t+'[]"]').forEach((e=>{this._fields.push(e)})),!this._fields.length))throw new Error("Unknown field with id '"+t+"'.")}else if(this._fields=[this._field],"INPUT"===this._field.tagName&&"radio"===this._field.type&&""!==this._field.dataset.noInputId){if(this._noField=document.getElementById(this._field.dataset.noInputId),null===this._noField)throw new Error("Cannot find 'no' input field for input field '"+t+"'");this._fields.push(this._noField)}i.addDependency(this)}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Empty",["require","exports","tslib","./Abstract","../../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{checkDependency(){if(null!==this._field)switch(this._field.tagName){case"INPUT":{const e=this._field;switch(e.type){case"checkbox":return!e.checked;case"radio":return!(!this._noField||!this._noField.checked)||!e.checked;default:return 0===e.value.trim().length}}case"SELECT":{const e=this._field;return e.multiple?0===this._field.querySelectorAll("option:checked").length:"0"==e.value||0===e.value.length}case"TEXTAREA":return 0===this._field.value.trim().length}return this._fields.every((e=>!e.checked))}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/IsNotClicked",["require","exports","tslib","./Abstract","./Manager"],(function(e,t,n,i,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IsNotClicked=void 0,i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{constructor(e,t){super(e,t),this._field.addEventListener("click",(()=>{this._field.dataset.isClicked="1",o.checkDependencies()}))}checkDependency(){return"1"!==this._field.dataset.isClicked}}t.IsNotClicked=r,t.default=r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/NonEmpty",["require","exports","tslib","./Abstract","../../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{checkDependency(){if(null!==this._field)switch(this._field.tagName){case"INPUT":{const e=this._field;switch(e.type){case"checkbox":return e.checked;case"radio":return(!this._noField||!this._noField.checked)&&e.checked;default:return 0!==e.value.trim().length}}case"SELECT":{const e=this._field;return e.multiple?0!==e.querySelectorAll("option:checked").length:"0"
1!=e.value&&0!==e.value.length}case"TEXTAREA":return 0!==this._field.value.trim().length}return this._fields.some((e=>e.checked))}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Value",["require","exports","tslib","./Abstract","./Manager","../../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a extends i.default{constructor(){super(...arguments),this._isNegated=!1}checkDependency(){if(!this._values)throw new Error("Values have not been set.");const e=[];if(this._field){if(o.isHiddenByDependencies(this._field))return!1;e.push(this._field.value)}else{let t=!0;if(this._fields.forEach((n=>{if(n.checked){if(o.isHiddenByDependencies(n))return t=!1,!1;e.push(n.value)}})),!t)return!1}let t=!1;return this._values.forEach((n=>{e.forEach((e=>{n==e&&(t=!0)}))})),t?!this._isNegated:this._isNegated}negate(e){return this._isNegated=e,this}values(e){return this._values=e,this}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/ValueInterval",["require","exports","tslib","./Abstract","./Manager"],(function(e,t,n,i,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ValueInterval=void 0,i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{constructor(){super(...arguments),this._maximum=null,this._minimum=null}checkDependency(){if(this._field){if(o.isHiddenByDependencies(this._field))return!1;const e=parseFloat(this._field.value);return!isNaN(e)&&(!(null!==this._minimum&&this._minimum>e)&&!(null!==this._maximum&&this._maximum<e))}throw new Error("'ValueInterval' is only supported for individual fields.")}maximum(e){return this._maximum=e,this}minimum(e){return this._minimum=e,this}}t.ValueInterval=r,t.default=r})),define("WoltLabSuite/Core/Form/Builder/Field/Language/ContentLanguage",["require","exports","tslib","../Value","../../../../Language/Chooser","../../../../Core"],(function(e,t,n,i,o,r){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r);class a extends i.default{destroy(){o.removeChooser(this._fieldId)}}return r.enableLegacyInheritance(a),a})),define("WoltLabSuite/Core/Form/Builder/Field/Wysiwyg/Attachment",["require","exports","tslib","../Value","../../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{constructor(e){super(e+"_tmpHash")}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Wysiwyg/Poll",["require","exports","tslib","../Field","../../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importDefault(i),o=n.__importStar(o);class r extends i.default{_getData(){return this._pollEditor.getData()}_readField(){}setPollEditor(e){this._pollEditor=e}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Container/Abstract",["require","exports","tslib","../Manager","../../../../../Core"],(function(e,t,n,i,o){"use strict";i=n.__importStar(i),o=n.__importStar(o);class r{constructor(e){this.init(e)}checkContainer(){throw new Error("Missing implementation of WoltLabSuite/Core/Form/Builder/Field/Dependency/Container.checkContainer!")}init(e){if("string"!=typeof e)throw new TypeError("Container id has to be a string.");if(this._container=document.getElementById(e),null===this._container)throw new Error("Unknown container with id '"+e+"'.");i.addContainerCheckCallback((()=>this.checkContainer()))}}return o.enableLegacyInheritance(r),r})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Container/Default",["require","exports","tslib","./Abstract","../../../../../Core","../Manager","../../../../../Dom/Util"],(function(e,t,n,i,o,r,a){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importDefault(a);class s extends i.default{checkContainer(){if(o.stringToBool(this._container.dataset.ignoreDependencies||""))return;if(r.isHiddenByDependencies(this._container))return;const e=!a.default.isHidden(this._container),t=Array.from(this._container.children).some(((e,t)=>(0!==t||"H2"!==e.tagName&&"HEADER"!==e.tagName)&&!a.default.isHidden(e)));e!==t&&(t?a.default.show(this._container):a.default.hide(this._container),r.checkContainers())}}return o.enableLegacyInheritance(s),s})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Container/Tab",["require","exports","tslib","./Abstract","../Manager","../../../../../Dom/Util","../../../../../Ui/TabMenu","../../../../../Core"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importStar(s);class l extends i.default{checkContainer(){if(o.isHiddenByDependencies(this._container))return;const e=!r.isHidden(this._container),t=Array.from(this._container.children).some((e=>!r.isHidden(e)));if(e!==t){const e=this._container.parentNode.parentNode.querySelector("#"+r.identify(this._container.parentNode)+" > nav > ul > li[data-name="+this._container.id+"]");if(null===e)throw new Error("Cannot find tab menu entry for tab '"+this._container.id+"'.");if(t)r.show(this._container),r.show(e);else{r.hide(this._container),r.hide(e);const t=a.getTabMenu(r.identify(e.closest(".tabMenuContainer")));t.getActiveTab()===e&&t.selectFirstVisible()}o.checkContainers()}}}return s.enableLegacyInheritance(l),l})),define("WoltLabSuite/Core/Form/Builder/Field/Dependency/Container/TabMenu",["require","exports","tslib","./Abstract","../Manager","../../../../../Dom/Util","../../../../../Ui/TabMenu","../../../../../Core"],(function(e,t,n,i,o,r,a,s){"use strict";i=n.__importDefault(i),o=n.__importStar(o),r=n.__importStar(r),a=n.__importStar(a),s=n.__importStar(s);class l extends i.default{checkContainer(){if(o.isHiddenByDependencies(this._container))return;const e=!r.isHidden(this._container),t=this._container.parentNode.querySelectorAll("#"+r.identify(this._container)+" > nav > ul > li"),n=Array.from(t).some((e=>!r.isHidden(e)));e!==n&&(n?(r.show(this._container),a.getTabMenu(r.identify(this._container)).selectFirstVisible()):r.hide(this._container),o.checkContainers())}}return s.enableLegacyInheritance(l),l})),function(e){function t(){for(;i.length&&"function"==typeof i[0];)i.shift()()}var n=e.require,i=[],o=0;e.orgRequire=n,e.require=function(r,a,s){if(!Array.isArray(r))return n.apply(e,arguments);var l=new Promise((function(e,a){var s=o++;i.push(s),n(r,(function(){var n=arguments;i[i.indexOf(s)]=function(){e(n)},t()}),(function(e){i[i.indexOf(s)]=function(){a(e)},t()}))}));return a&&(l=l.then((function(t){return a.apply(e,t)}))),s&&l.catch(s),l},e.require.config=n.config}(window),define("require.linearExecution",(function(){})); 2//# sourceMappingURL=../proxy_sourcemap.php?mX7pNe-Kp1BaykSqTjrxKTqVkcvkh5QxlR2cVCbOM9JqmwtWZ4W1Dp6R4c0u3R-B_YGBQr7qwO1kWqIqSefFh5t7Sc-aqjsvIbEXGiwNGMu1bEfmbF9vxhmmJm6xcEVXrNEwYgAa39JPvF2lVknUuOd_X9mLBKZ44dPzeYo8xZ68k8MYSyX5wj3fJuo3qxMzv4-H6Igg7C190YyMgTFtaC51ClMbLD9-dzfbHB7CxH3wF5DXbcSs4KRGixJyijzUu4ocxSFegGfCGmLdgKLDCxSTLtse96U2r_iSyN4_0aoYps-iguyE4uUoJ23uk7wZI-F3CFPWrxengDonCLNBkA/WCF/5075a025a124a554cab502f6c618d23d8cdb3ad00830189b9aa90d64cc0e756a
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.