mirror of
https://github.com/tdurieux/anonymous_github.git
synced 2026-09-12 13:48:58 +02:00
72 lines
504 KiB
JavaScript
72 lines
504 KiB
JavaScript
"use strict";(()=>{var zl=Object.defineProperty;var Hl=(e,t)=>{for(var o in t)zl(e,o,{get:t[o],enumerable:!0})};var ye={notebook:"/script/notebook.8844e2735f.min.js",pdf:"/script/pdf.eaa7573247.min.js",markdown:"/script/markdown.ad7b1d71c3.min.js",editor:"/script/editor.e243722d87.min.js",org:"/script/org.f4e2a3f59f.min.js"};var rn=new Map,Gl=ye;function Wt(e){if(!rn.has(e)){let t=document.createElement("script");t.src=Gl[e];let o=new Promise((r,n)=>{t.onload=r,t.onerror=()=>{rn.delete(e),t.remove(),n(new Error(`Unable to load ${e}. Please retry.`))}});rn.set(e,o),document.head.appendChild(t)}return rn.get(e)}async function tr(){await Wt("editor"),ace.config.set("basePath","/script/external/ace/")}function ds(e){let t=Object.create(null);for(let o of e.split(","))t[o]=1;return o=>o in t}var Me={},Kt=[],rt=()=>{},Xn=()=>!1,us=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),cs=e=>e.startsWith("onUpdate:"),Ge=Object.assign,Ss=(e,t)=>{let o=e.indexOf(t);o>-1&&e.splice(o,1)},jl=Object.prototype.hasOwnProperty,Ae=(e,t)=>jl.call(e,t),Ee=Array.isArray,Pt=e=>Ds(e)==="[object Map]",ls=e=>Ds(e)==="[object Set]",sr=e=>Ds(e)==="[object Date]";var _e=e=>typeof e=="function",Fe=e=>typeof e=="string",ct=e=>typeof e=="symbol",Ve=e=>e!==null&&typeof e=="object",Zn=e=>(Ve(e)||_e(e))&&_e(e.then)&&_e(e.catch),rr=Object.prototype.toString,Ds=e=>rr.call(e),xn=e=>Ds(e).slice(8,-1),an=e=>Ds(e)==="[object Object]",ln=e=>Fe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ps=ds(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted");var dn=e=>{let t=Object.create(null);return(o=>t[o]||(t[o]=e(o)))},Wl=/-\w/g,Ke=dn(e=>e.replace(Wl,t=>t.slice(1).toUpperCase())),Kl=/\B([A-Z])/g,qt=dn(e=>e.replace(Kl,"-$1").toLowerCase()),Yt=dn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Rs=dn(e=>e?`on${Yt(e)}`:""),ht=(e,t)=>!Object.is(e,t),Ts=(e,...t)=>{for(let o=0;o<e.length;o++)e[o](...t)},un=(e,t,o,r=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:o})},eo=e=>{let t=parseFloat(e);return isNaN(t)?e:t};var nr,Os=()=>nr||(nr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Pe(e){if(Ee(e)){let t={};for(let o=0;o<e.length;o++){let r=e[o],n=Fe(r)?Xl(r):Pe(r);if(n)for(let i in n)t[i]=n[i]}return t}else if(Fe(e)||Ve(e))return e}var Yl=/;(?![^(]*\))/g,Jl=/:([^]+)/,Ql=/\/\*[^]*?\*\//g;function Xl(e){let t={};return e.replace(Ql,"").split(Yl).forEach(o=>{if(o){let r=o.split(Jl);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function O(e){let t="";if(Fe(e))t=e;else if(Ee(e))for(let o=0;o<e.length;o++){let r=O(e[o]);r&&(t+=r+" ")}else if(Ve(e))for(let o in e)e[o]&&(t+=o+" ");return t.trim()}var ir="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",ar=ds(ir),Zl=ds(ir+",async,autofocus,autoplay,controls,default,defer,disabled,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");function cn(e){return!!e||e===""}function xl(e,t){if(e.length!==t.length)return!1;let o=!0;for(let r=0;o&&r<e.length;r++)o=fs(e[r],t[r]);return o}function or(e,t){if(e.size!==t.size)return!1;let o=Array.from(t),r=new Uint8Array(o.length);for(let n of e){let i=-1;for(let a=0;a<o.length;a++)if(!r[a]&&fs(n,o[a])){i=a;break}if(i<0)return!1;r[i]=1}return!0}function fs(e,t){if(e===t)return!0;let o=sr(e),r=sr(t);if(o||r)return o&&r?e.getTime()===t.getTime():!1;if(o=ct(e),r=ct(t),o||r)return e===t;if(o=Ee(e),r=Ee(t),o||r)return o&&r?xl(e,t):!1;if(o=Ve(e),r=Ve(t),o||r){if(!o||!r)return!1;if(o=Pt(e),r=Pt(t),o||r||(o=ls(e),r=ls(t),o||r))return o&&r?or(e,t):!1;let n=Object.keys(e).length,i=Object.keys(t).length;if(n!==i)return!1;for(let a in e){let u=e.hasOwnProperty(a),f=t.hasOwnProperty(a);if(u&&!f||!u&&f||!fs(e[a],t[a]))return!1}}return String(e)===String(t)}var lr=e=>!!(e&&e.__v_isRef===!0),c=e=>Fe(e)?e:e==null?"":Ee(e)||Ve(e)&&(e.toString===rr||!_e(e.toString))?lr(e)?c(e.value):JSON.stringify(e,dr,2):String(e),dr=(e,t)=>lr(t)?dr(e,t.value):Pt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[r,n],i)=>(o[Qn(r,i)+" =>"]=n,o),{})}:ls(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Qn(o))}:ct(t)?Qn(t):Ve(t)&&!Ee(t)&&!an(t)?String(t):t,Qn=(e,t="")=>{var o;return ct(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};function ed(e,...t){console.warn(`[Vue warn] ${e}`,...t)}var Ye,Ps=class{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Ye&&(Ye.active?(this.parent=Ye,this.index=(Ye.scopes||(Ye.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){let r=this.scopes.slice();for(t=0,o=r.length;t<o;t++)r[t].pause()}for(t=0,o=this.effects.length;t<o;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,o;if(this.scopes){let n=this.scopes.slice();for(t=0,o=n.length;t<o;t++)n[t].resume()}let r=this.effects.slice();for(t=0,o=r.length;t<o;t++)r[t].resume()}}run(t){if(this._active){let o=Ye;try{return Ye=this,t()}finally{Ye=o}}}on(){++this._on===1&&(this.prevScope=Ye,Ye=this)}off(){if(this._on>0&&--this._on===0){if(Ye===this)Ye=this.prevScope;else{let t=Ye;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,r;for(o=0,r=this.effects.length;o<r;o++)this.effects[o].stop();for(this.effects.length=0,o=0,r=this.cleanups.length;o<r;o++)this.cleanups[o]();if(this.cleanups.length=0,this.scopes){let n=this.scopes.slice();for(o=0,r=n.length;o<r;o++)n[o].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){let n=this.parent.scopes.pop();n&&n!==this&&(this.parent.scopes[this.index]=n,n.index=this.index)}this.parent=void 0}}};function pr(){return Ye}function Ls(e,t=!1){Ye&&Ye.cleanups.push(e)}var Ue;var to=new WeakSet,hs=class{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Ye&&(Ye.active?Ye.effects.push(this):this.flags&=-2)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,to.has(this)&&(to.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||mr(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,ur(this),hr(this);let t=Ue,o=wt;Ue=this,wt=!0;try{return this.fn()}finally{vr(this),Ue=t,wt=o,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)ho(t);this.deps=this.depsTail=void 0,ur(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?to.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){oo(this)&&this.run()}get dirty(){return oo(this)}},fr=0,Is,Vs;function mr(e,t=!1){if(e.flags|=8,t){e.next=Vs,Vs=e;return}e.next=Is,Is=e}function fo(){fr++}function mo(){if(--fr>0)return;if(Vs){let t=Vs;for(Vs=void 0;t;){let o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;Is;){let t=Is;for(Is=void 0;t;){let o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(r){e||(e=r)}t=o}}if(e)throw e}function hr(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function vr(e){let t,o=e.depsTail,r=o;for(;r;){let n=r.prevDep;r.version===-1?(r===o&&(o=n),ho(r),td(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=n}e.deps=t,e.depsTail=o}function oo(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(yr(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function yr(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===qs)||(e.globalVersion=qs,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!oo(e))))return;e.flags|=2;let t=e.dep,o=Ue,r=wt;Ue=e,wt=!0;try{hr(e);let n=e.fn(e._value);(t.version===0||ht(n,e._value))&&(e.flags|=128,e._value=n,t.version++)}catch(n){throw t.version++,n}finally{Ue=o,wt=r,vr(e),e.flags&=-3}}function ho(e,t=!1){let{dep:o,prevSub:r,nextSub:n}=e;if(r&&(r.nextSub=n,e.prevSub=void 0),n&&(n.prevSub=r,e.nextSub=void 0),o.subs===e&&(o.subs=r,!r&&o.computed)){o.computed.flags&=-5;for(let i=o.computed.deps;i;i=i.nextDep)ho(i,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function td(e){let{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}var wt=!0,gr=[];function Dt(){gr.push(wt),wt=!1}function Rt(){let e=gr.pop();wt=e===void 0?!0:e}function ur(e){let{cleanup:t}=e;if(e.cleanup=void 0,t){let o=Ue;Ue=void 0;try{t()}finally{Ue=o}}}var qs=0,ro=class{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}},Ms=class{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Ue||!wt||Ue===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==Ue)o=this.activeLink=new ro(Ue,this),Ue.deps?(o.prevDep=Ue.depsTail,Ue.depsTail.nextDep=o,Ue.depsTail=o):Ue.deps=Ue.depsTail=o,br(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){let r=o.nextDep;r.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=r),o.prevDep=Ue.depsTail,o.nextDep=void 0,Ue.depsTail.nextDep=o,Ue.depsTail=o,Ue.deps===o&&(Ue.deps=r)}return o}trigger(t){this.version++,qs++,this.notify(t)}notify(t){fo();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{mo()}}};function br(e){if(e.dep.sc++,e.sub.flags&4){let t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let r=t.deps;r;r=r.nextDep)br(r)}let o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}var io=new WeakMap,Qt=Symbol(""),ao=Symbol(""),$s=Symbol("");function Xe(e,t,o){if(wt&&Ue){let r=io.get(e);r||io.set(e,r=new Map);let n=r.get(o);n||(r.set(o,n=new Ms),n.map=r,n.key=o),n.track()}}function Nt(e,t,o,r,n,i){let a=io.get(e);if(!a){qs++;return}let u=f=>{f&&f.trigger()};if(fo(),t==="clear")a.forEach(u);else{let f=Ee(e),h=f&&ln(o);if(f&&o==="length"){let v=Number(r);a.forEach((k,p)=>{(p==="length"||p===$s||!ct(p)&&p>=v)&&u(k)})}else switch((o!==void 0||a.has(void 0))&&u(a.get(o)),h&&u(a.get($s)),t){case"add":f?h&&u(a.get("length")):(u(a.get(Qt)),Pt(e)&&u(a.get(ao)));break;case"delete":f||(u(a.get(Qt)),Pt(e)&&u(a.get(ao)));break;case"set":Pt(e)&&u(a.get(Qt));break}}mo()}function ms(e){let t=Ie(e);return t===e?t:(Xe(t,"iterate",$s),it(e)?t:t.map(vt))}function Us(e){return Xe(e=Ie(e),"iterate",$s),e}function Ct(e,t){return kt(e)?Xt($t(e)?vt(t):t):vt(t)}var sd={__proto__:null,[Symbol.iterator](){return so(this,Symbol.iterator,e=>Ct(this,e))},concat(...e){return ms(this).concat(...e.map(t=>Ee(t)?ms(t):t))},entries(){return so(this,"entries",e=>(e[1]=Ct(this,e[1]),e))},every(e,t){return Mt(this,"every",e,t,void 0,arguments)},filter(e,t){return Mt(this,"filter",e,t,o=>o.map(r=>Ct(this,r)),arguments)},find(e,t){return Mt(this,"find",e,t,o=>Ct(this,o),arguments)},findIndex(e,t){return Mt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Mt(this,"findLast",e,t,o=>Ct(this,o),arguments)},findLastIndex(e,t){return Mt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Mt(this,"forEach",e,t,void 0,arguments)},includes(...e){return no(this,"includes",e)},indexOf(...e){return no(this,"indexOf",e)},join(e){return ms(this).join(e)},lastIndexOf(...e){return no(this,"lastIndexOf",e)},map(e,t){return Mt(this,"map",e,t,void 0,arguments)},pop(){return As(this,"pop")},push(...e){return As(this,"push",e)},reduce(e,...t){return cr(this,"reduce",e,t)},reduceRight(e,...t){return cr(this,"reduceRight",e,t)},shift(){return As(this,"shift")},some(e,t){return Mt(this,"some",e,t,void 0,arguments)},splice(...e){return As(this,"splice",e)},toReversed(){return ms(this).toReversed()},toSorted(e){return ms(this).toSorted(e)},toSpliced(...e){return ms(this).toSpliced(...e)},unshift(...e){return As(this,"unshift",e)},values(){return so(this,"values",e=>Ct(this,e))}};function so(e,t,o){let r=Us(e),n=r[t]();return r!==e&&!it(e)&&(n._next=n.next,n.next=()=>{let i=n._next();return i.done||(i.value=o(i.value)),i}),n}var nd=Array.prototype;function Mt(e,t,o,r,n,i){let a=Us(e),u=a!==e&&!it(e),f=a[t];if(f!==nd[t]){let k=f.apply(e,i);return u?vt(k):k}let h=o;a!==e&&(u?h=function(k,p){return o.call(this,Ct(e,k),p,e)}:o.length>2&&(h=function(k,p){return o.call(this,k,p,e)}));let v=f.call(a,h,r);return u&&n?n(v):v}function cr(e,t,o,r){let n=Us(e),i=n!==e&&!it(e),a=o,u=!1;n!==e&&(i?(u=r.length===0,a=function(h,v,k){return u&&(u=!1,h=Ct(e,h)),o.call(this,h,Ct(e,v),k,e)}):o.length>3&&(a=function(h,v,k){return o.call(this,h,v,k,e)}));let f=n[t](a,...r);return u?Ct(e,f):f}function no(e,t,o){let r=Ie(e);Xe(r,"iterate",$s);let n=r[t](...o);return(n===-1||n===!1)&&zs(o[0])?(o[0]=Ie(o[0]),r[t](...o)):n}function As(e,t,o=[]){Dt(),fo();let r=Ie(e)[t].apply(e,o);return mo(),Rt(),r}var od=ds("__proto__,__v_isRef,__isVue"),wr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ct));function rd(e){ct(e)||(e=String(e));let t=Ie(this);return Xe(t,"has",e),t.hasOwnProperty(e)}var hn=class{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,r){if(o==="__v_skip")return t.__v_skip;let n=this._isReadonly,i=this._isShallow;if(o==="__v_isReactive")return!n;if(o==="__v_isReadonly")return n;if(o==="__v_isShallow")return i;if(o==="__v_raw")return r===(n?i?md:Er:i?_r:kr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;let a=Ee(t);if(!n){let f;if(a&&(f=sd[o]))return f;if(o==="hasOwnProperty")return rd}let u=Reflect.get(t,o,Qe(t)?t:r);if((ct(o)?wr.has(o):od(o))||(n||Xe(t,"get",o),i))return u;if(Qe(u)){let f=a&&ln(o)?u:u.value;return n&&Ve(f)?yn(f):f}return Ve(u)?n?yn(u):ze(u):u}},vn=class extends hn{constructor(t=!1){super(!1,t)}set(t,o,r,n){let i=t[o],a=Ee(t)&&ln(o);if(!this._isShallow){let h=kt(i);if(!it(r)&&!kt(r)&&(i=Ie(i),r=Ie(r)),!a&&Qe(i)&&!Qe(r))return h||(i.value=r),!0}let u=a?Number(o)<t.length:Ae(t,o),f=Reflect.set(t,o,r,Qe(t)?t:n);return t===Ie(n)&&f&&(u?ht(r,i)&&Nt(t,"set",o,r,i):Nt(t,"add",o,r)),f}deleteProperty(t,o){let r=Ae(t,o),n=t[o],i=Reflect.deleteProperty(t,o);return i&&r&&Nt(t,"delete",o,void 0,n),i}has(t,o){let r=Reflect.has(t,o);return(!ct(o)||!wr.has(o))&&Xe(t,"has",o),r}ownKeys(t){return Xe(t,"iterate",Ee(t)?"length":Qt),Reflect.ownKeys(t)}},lo=class extends hn{constructor(t=!1){super(!0,t)}set(t,o){return!0}deleteProperty(t,o){return!0}},id=new vn,ad=new lo,ld=new vn(!0);var uo=e=>e,pn=e=>Reflect.getPrototypeOf(e);function dd(e,t,o){return function(...r){let n=this.__v_raw,i=Ie(n),a=Pt(i),u=e==="entries"||e===Symbol.iterator&&a,f=e==="keys"&&a,h=n[e](...r),v=o?uo:t?Xt:vt;return!t&&Xe(i,"iterate",f?ao:Qt),Ge(Object.create(h),{next(){let{value:k,done:p}=h.next();return p?{value:k,done:p}:{value:u?[v(k[0]),v(k[1])]:v(k),done:p}}})}}function fn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function ud(e,t){let o={get(n){let i=this.__v_raw,a=Ie(i),u=Ie(n);e||(ht(n,u)&&Xe(a,"get",n),Xe(a,"get",u));let{has:f}=pn(a),h=t?uo:e?Xt:vt;if(f.call(a,n))return h(i.get(n));if(f.call(a,u))return h(i.get(u));i!==a&&i.get(n)},get size(){let n=this.__v_raw;return!e&&Xe(Ie(n),"iterate",Qt),n.size},has(n){let i=this.__v_raw,a=Ie(i),u=Ie(n);return e||(ht(n,u)&&Xe(a,"has",n),Xe(a,"has",u)),n===u?i.has(n):i.has(n)||i.has(u)},forEach(n,i){let a=this,u=a.__v_raw,f=Ie(u),h=t?uo:e?Xt:vt;return!e&&Xe(f,"iterate",Qt),u.forEach((v,k)=>n.call(i,h(v),h(k),a))}};return Ge(o,e?{add:fn("add"),set:fn("set"),delete:fn("delete"),clear:fn("clear")}:{add(n){let i=Ie(this),a=pn(i),u=Ie(n),f=!t&&!it(n)&&!kt(n)?u:n;return a.has.call(i,f)||ht(n,f)&&a.has.call(i,n)||ht(u,f)&&a.has.call(i,u)||(i.add(f),Nt(i,"add",f,f)),this},set(n,i){!t&&!it(i)&&!kt(i)&&(i=Ie(i));let a=Ie(this),{has:u,get:f}=pn(a),h=u.call(a,n);h||(n=Ie(n),h=u.call(a,n));let v=f.call(a,n);return a.set(n,i),h?ht(i,v)&&Nt(a,"set",n,i,v):Nt(a,"add",n,i),this},delete(n){let i=Ie(this),{has:a,get:u}=pn(i),f=a.call(i,n);f||(n=Ie(n),f=a.call(i,n));let h=u?u.call(i,n):void 0,v=i.delete(n);return f&&Nt(i,"delete",n,void 0,h),v},clear(){let n=Ie(this),i=n.size!==0,a=void 0,u=n.clear();return i&&Nt(n,"clear",void 0,void 0,a),u}}),["keys","values","entries",Symbol.iterator].forEach(n=>{o[n]=dd(n,e,t)}),o}function vo(e,t){let o=ud(e,t);return(r,n,i)=>n==="__v_isReactive"?!e:n==="__v_isReadonly"?e:n==="__v_raw"?r:Reflect.get(Ae(o,n)&&n in r?o:r,n,i)}var cd={get:vo(!1,!1)},pd={get:vo(!1,!0)},fd={get:vo(!0,!1)};var kr=new WeakMap,_r=new WeakMap,Er=new WeakMap,md=new WeakMap;function hd(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ze(e){return kt(e)?e:yo(e,!1,id,cd,kr)}function Fs(e){return yo(e,!1,ld,pd,_r)}function yn(e){return yo(e,!0,ad,fd,Er)}function yo(e,t,o,r,n){if(!Ve(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;let i=n.get(e);if(i)return i;let a=hd(xn(e));if(a===0)return e;let u=new Proxy(e,a===2?r:o);return n.set(e,u),u}function $t(e){return kt(e)?$t(e.__v_raw):!!(e&&e.__v_isReactive)}function kt(e){return!!(e&&e.__v_isReadonly)}function it(e){return!!(e&&e.__v_isShallow)}function zs(e){return e?!!e.__v_raw:!1}function Ie(e){let t=e&&e.__v_raw;return t?Ie(t):e}function go(e){return!Ae(e,"__v_skip")&&Object.isExtensible(e)&&un(e,"__v_skip",!0),e}var vt=e=>Ve(e)?ze(e):e,Xt=e=>Ve(e)?yn(e):e;function Qe(e){return e?e.__v_isRef===!0:!1}function Ze(e){return Cr(e,!1)}function bn(e){return Cr(e,!0)}function Cr(e,t){return Qe(e)?e:new co(e,t)}var co=class{constructor(t,o){this.dep=new Ms,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:Ie(t),this._value=o?t:vt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){let o=this._rawValue,r=this.__v_isShallow||it(t)||kt(t);t=r?t:Ie(t),ht(t,o)&&(this._rawValue=t,this._value=r?t:vt(t),this.dep.trigger())}};function Lt(e){return Qe(e)?e.value:e}var vd={get:(e,t,o)=>t==="__v_raw"?e:Lt(Reflect.get(e,t,o)),set:(e,t,o,r)=>{let n=e[t];return Qe(n)&&!Qe(o)?(n.value=o,!0):Reflect.set(e,t,o,r)}};function wn(e){return $t(e)?e:new Proxy(e,vd)}var po=class{constructor(t,o,r){this.fn=t,this.setter=o,this._value=void 0,this.dep=new Ms(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=qs-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=r}notify(){if(this.flags|=16,!(this.flags&8)&&Ue!==this)return mr(this,!0),!0}get value(){let t=this.dep.track();return yr(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}};function Nr(e,t,o=!1){let r,n;return _e(e)?r=e:(r=e.get,n=e.set),new po(r,n,o)}var mn={},gn=new WeakMap,Jt;function Sr(e,t=!1,o=Jt){if(o){let r=gn.get(o);r||gn.set(o,r=[]),r.push(e)}}function Dr(e,t,o=Me){let{immediate:r,deep:n,once:i,scheduler:a,augmentJob:u,call:f}=o,h=A=>{(o.onWarn||ed)("Invalid watch source: ",A,"A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.")},v=A=>n?A:it(A)||n===!1||n===0?St(A,1):St(A),k,p,g,w,b=!1,T=!1;if(Qe(e)?(p=()=>e.value,b=it(e)):$t(e)?(p=()=>v(e),b=!0):Ee(e)?(T=!0,b=e.some(A=>$t(A)||it(A)),p=()=>e.map(A=>{if(Qe(A))return A.value;if($t(A))return v(A);if(_e(A))return f?f(A,2):A()})):_e(e)?t?p=f?()=>f(e,2):e:p=()=>{if(g){Dt();try{g()}finally{Rt()}}let A=Jt;Jt=k;try{return f?f(e,3,[w]):e(w)}finally{Jt=A}}:p=rt,t&&n){let A=p,P=n===!0?1/0:n;p=()=>St(A(),P)}let N=pr(),R=()=>{k.stop(),N&&N.active&&Ss(N.effects,k)};if(i&&t){let A=t;t=(...P)=>{let x=A(...P);return R(),x}}let I=T?new Array(e.length).fill(mn):mn,C=A=>{if(!(!(k.flags&1)||!k.dirty&&!A))if(t){let P=k.run();if(A||n||b||(T?P.some((x,Q)=>ht(x,I[Q])):ht(P,I))){g&&g();let x=Jt;Jt=k;try{let Q=[P,I===mn?void 0:T&&I[0]===mn?[]:I,w];I=P,f?f(t,3,Q):t(...Q)}finally{Jt=x}}}else k.run()};return u&&u(C),k=new hs(p),k.scheduler=a?()=>a(C,!1):C,w=A=>Sr(A,!1,k),g=k.onStop=()=>{let A=gn.get(k);if(A){if(f)f(A,4);else for(let P of A)P();gn.delete(k)}},t?r?C(!0):I=k.run():a?a(C.bind(null,!0),!0):k.run(),R.pause=k.pause.bind(k),R.resume=k.resume.bind(k),R.stop=R,R}function St(e,t=1/0,o){if(t<=0||!Ve(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,Qe(e))St(e.value,t,o);else if(Ee(e))for(let r=0;r<e.length;r++)St(e[r],t,o);else if(ls(e)||Pt(e))e.forEach(r=>{St(r,t,o)});else if(an(e)){for(let r in e)St(e[r],t,o);for(let r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&St(e[r],t,o)}return e}function Xs(e,t,o,r){try{return r?e(...r):e()}catch(n){Zs(n,t,o)}}function yt(e,t,o,r){if(_e(e)){let n=Xs(e,t,o,r);return n&&Zn(n)&&n.catch(i=>{Zs(i,t,o)}),n}if(Ee(e)){let n=[];for(let i=0;i<e.length;i++)n.push(yt(e[i],t,o,r));return n}}function Zs(e,t,o,r=!0){let n=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:a}=t&&t.appContext.config||Me;if(t){let u=t.parent,f=t.proxy,h=`https://vuejs.org/error-reference/#runtime-${o}`;for(;u;){let v=u.ec;if(v){for(let k=0;k<v.length;k++)if(v[k](e,f,h)===!1)return}u=u.parent}if(i){Dt(),Xs(i,null,10,[e,f,h]),Rt();return}}wd(e,o,n,r,a)}function wd(e,t,o,r=!0,n=!1){if(n)throw e;console.error(e)}var nt=[],Ot=-1,ys=[],jt=null,vs=0,Gr=Promise.resolve(),En=null;function _t(e){let t=En||Gr;return e?t.then(this?e.bind(this):e):t}function kd(e){let t=Ot+1,o=nt.length;for(;t<o;){let r=t+o>>>1,n=nt[r],i=Ys(n);i<e||i===e&&n.flags&2?t=r+1:o=r}return t}function Do(e){if(!(e.flags&1)){let t=Ys(e),o=nt[nt.length-1];!o||!(e.flags&2)&&t>=Ys(o)?nt.push(e):nt.splice(kd(t),0,e),e.flags|=1,jr()}}function jr(){En||(En=Gr.then(Yr))}function Wr(e){if(!Ee(e))jt&&e.id===-1?jt.splice(vs+1,0,e):e.flags&1||(ys.push(e),e.flags|=1);else for(let t=0;t<e.length;t++)ys.push(e[t]);jr()}function Rr(e,t,o=Ot+1){for(;o<nt.length;o++){let r=nt[o];if(r&&r.flags&2){if(e&&r.id!==e.uid)continue;nt.splice(o,1),o--,r.flags&4&&(r.flags&=-2),r(),r.flags&4||(r.flags&=-2)}}}function Kr(e){if(ys.length){let t=[...new Set(ys)].sort((o,r)=>Ys(o)-Ys(r));if(ys.length=0,jt){for(let o=0;o<t.length;o++)jt.push(t[o]);return}for(jt=t,vs=0;vs<jt.length;vs++){let o=jt[vs];o.flags&4&&(o.flags&=-2),o.flags&8||o(),o.flags&=-2}jt=null,vs=0}}var Ys=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Yr(e){let t=rt;try{for(Ot=0;Ot<nt.length;Ot++){let o=nt[Ot];o&&!(o.flags&8)&&(o.flags&4&&(o.flags&=-2),Xs(o,o.i,o.i?15:14),o.flags&4||(o.flags&=-2))}}finally{for(;Ot<nt.length;Ot++){let o=nt[Ot];o&&(o.flags&=-2)}Ot=-1,nt.length=0,Kr(e),En=null,(nt.length||ys.length)&&Yr(e)}}var pt=null,Jr=null;function Cn(e){let t=pt;return pt=e,Jr=e&&e.type.__scopeId||null,t}function _d(e,t=pt,o){if(!t||e._n)return e;let r=(...n)=>{r._d&&Dn(-1);let i=Cn(t),a=es.length,u;try{u=e(...n)}finally{for(let f=es.length;f>a;f--)Ci();Cn(i),r._d&&Dn(1)}return u};return r._n=!0,r._c=!0,r._d=!0,r}function E(e,t){if(pt===null)return e;let o=$n(pt),r=e.dirs||(e.dirs=[]);for(let n=0;n<t.length;n++){let[i,a,u,f=Me]=t[n];i&&(_e(i)&&(i={mounted:i,updated:i}),i.deep&&St(a),r.push({dir:i,instance:o,value:a,oldValue:void 0,arg:u,modifiers:f}))}return e}function Zt(e,t,o,r){let n=e.dirs,i=t&&t.dirs;for(let a=0;a<n.length;a++){let u=n[a];i&&(u.oldValue=i[a].value);let f=u.dir[r];f&&(Dt(),yt(f,o,8,[e.el,u,e,t]),Rt())}}function ts(e,t){if(xe){let o=xe.provides,r=xe.parent&&xe.parent.provides;r===o&&(o=xe.provides=Object.create(r)),o[e]=t}}function lt(e,t,o=!1){let r=Io();if(r||gs){let n=gs?gs._context.provides:r?r.parent==null||r.ce?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(n&&e in n)return n[e];if(arguments.length>1)return o&&_e(t)?t.call(r&&r.proxy):t}}var Ed=Symbol.for("v-scx"),Cd=()=>{{let e=lt(Ed);return e}};function He(e,t,o){return Qr(e,t,o)}function Qr(e,t,o=Me){let{immediate:r,deep:n,flush:i,once:a}=o,u=Ge({},o),f=t&&r||!t&&i!=="post",h;if(ws){if(i==="sync"){let g=Cd();h=g.__watcherHandles||(g.__watcherHandles=[])}else if(!f){let g=()=>{};return g.stop=rt,g.resume=rt,g.pause=rt,g}}let v=xe;u.call=(g,w,b)=>yt(g,v,w,b);let k=!1;i==="post"?u.scheduler=g=>{at(g,v&&v.suspense)}:i!=="sync"&&(k=!0,u.scheduler=(g,w)=>{w?g():Do(g)}),u.augmentJob=g=>{t&&(g.flags|=4),k&&(g.flags|=2,v&&(g.id=v.uid,g.i=v))};let p=Dr(e,t,u);return ws&&(h?h.push(p):f&&p()),p}function Nd(e,t,o){let r=this.proxy,n=Fe(e)?e.includes(".")?Xr(r,e):()=>r[e]:e.bind(r,r),i;_e(t)?i=t:(i=t.handler,o=t);let a=tn(this),u=Qr(n,i.bind(r),o);return a(),u}function Xr(e,t){let o=t.split(".");return()=>{let r=e;for(let n=0;n<o.length&&r;n++)r=r[o[n]];return r}}var Sd=Symbol("_vte"),An=e=>e.__isTeleport;var bo=Symbol("_leaveCb");function Dd(e){let t=e[0];if(e.length>1){let o=!1;for(let r of e)if(r.type!==Ft){t=r,o=!0;break}}return t}function Zr(e){if(!Vn(e))return An(e.type)&&e.children?Dd(e.children):e;if(e.component)return e.component.subTree;let{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&_e(o.default))return o.default()}}function In(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;let o=e.component.subTree;In(An(o.type)&&Zr(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function xs(e,t){return _e(e)?Ge({name:e.name},t,{setup:e}):e}function Ro(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Tr(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}var Nn=new WeakMap;function Gs(e,t,o,r,n=!1){if(Ee(e)){e.forEach((b,T)=>Gs(b,t&&(Ee(t)?t[T]:t),o,r,n));return}if(js(r)&&!n){r.shapeFlag&512&&r.type.__asyncResolved&&r.component.subTree.component&&Gs(e,t,o,r.component.subTree);return}let i=r.shapeFlag&4?$n(r.component):r.el,a=n?null:i,{i:u,r:f}=e,h=t&&t.r,v=u.refs===Me?u.refs={}:u.refs,k=u.setupState,p=Ie(k),g=k===Me?Xn:b=>Tr(v,b)?!1:Ae(p,b),w=(b,T)=>!(T&&Tr(v,T));if(h!=null&&h!==f){if(Or(t),Fe(h))v[h]=null,g(h)&&(k[h]=null);else if(Qe(h)){let b=t;w(h,b.k)&&(h.value=null),b.k&&(v[b.k]=null)}}if(_e(f))Xs(f,u,12,[a,v]);else{let b=Fe(f),T=Qe(f);if(b||T){let N=()=>{if(e.f){let R=b?g(f)?k[f]:v[f]:w(f)||!e.k?f.value:v[e.k];if(n)Ee(R)&&Ss(R,i);else if(Ee(R))R.includes(i)||R.push(i);else if(b)v[f]=[i],g(f)&&(k[f]=v[f]);else{let I=[i];w(f,e.k)&&(f.value=I),e.k&&(v[e.k]=I)}}else b?(v[f]=a,g(f)&&(k[f]=a)):T&&(w(f,e.k)&&(f.value=a),e.k&&(v[e.k]=a))};if(a){let R=()=>{N(),Nn.delete(e)};R.id=-1,Nn.set(e,R),at(R,o)}else Or(e),N()}}}function Or(e){let t=Nn.get(e);t&&(t.flags|=8,Nn.delete(e))}var Ar=e=>e.nodeType===8;var O4=Os().requestIdleCallback||(e=>setTimeout(e,1)),A4=Os().cancelIdleCallback||(e=>clearTimeout(e));function Rd(e,t){if(Ar(e)&&e.data==="["){let o=1,r=e.nextSibling;for(;r;){if(r.nodeType===1){if(t(r)===!1)break}else if(Ar(r))if(r.data==="]"){if(--o===0)break}else r.data==="["&&o++;r=r.nextSibling}}else t(e)}var js=e=>!!e.type.__asyncLoader;function xr(e){_e(e)&&(e={loader:e});let{loader:t,loadingComponent:o,errorComponent:r,delay:n=200,hydrate:i,timeout:a,suspensible:u=!0,onError:f}=e,h=null,v,k=0,p=()=>(k++,h=null,g()),g=()=>{let w;return h||(w=h=t().catch(b=>{if(b=b instanceof Error?b:new Error(String(b)),f)return new Promise((T,N)=>{f(b,()=>T(p()),()=>N(b),k+1)});throw b}).then(b=>w!==h&&h?h:(b&&(b.__esModule||b[Symbol.toStringTag]==="Module")&&(b=b.default),v=b,b)))};return xs({name:"AsyncComponentWrapper",__asyncLoader:g,__asyncHydrate(w,b,T){let N=w.isConnected,R=!1;(b.bu||(b.bu=[])).push(()=>R=!0);let I=()=>{R||!w.parentNode||N&&!w.isConnected||T()},C=i?()=>{let A=i(I,P=>Rd(w,P));A&&(b.bum||(b.bum=[])).push(A)}:I;v?C():g().then(()=>!b.isUnmounted&&C())},get __asyncResolved(){return v},setup(){let w=xe;if(Ro(w),v)return()=>kn(v,w);let b=A=>{h=null,Zs(A,w,13,!r)};if(u&&w.suspense||ws)return g().then(A=>()=>kn(A,w)).catch(A=>(b(A),()=>r?De(r,{error:A}):null));let T=Ze(!1),N=Ze(),R=Ze(!!n),I,C;return en(()=>{I!=null&&clearTimeout(I),C!=null&&clearTimeout(C)}),n&&(C=setTimeout(()=>{w.isUnmounted||(R.value=!1)},n)),a!=null&&(I=setTimeout(()=>{if(!w.isUnmounted&&!T.value&&!N.value){let A=new Error(`Async component timed out after ${a}ms.`);b(A),N.value=A}},a)),g().then(()=>{w.isUnmounted||(T.value=!0,w.parent&&Vn(w.parent.vnode)&&w.parent.update())}).catch(A=>{if(w.isUnmounted){h=null;return}b(A),N.value=A}),()=>{if(T.value&&v)return kn(v,w);if(N.value&&r)return De(r,{error:N.value});if(o&&!R.value)return kn(o,w)}}})}function kn(e,t){let{ref:o,props:r,children:n,ce:i}=t.vnode,a=De(e,r,n);return a.ref=o,a.ce=i,delete t.vnode.ce,a}var Vn=e=>e.type.__isKeepAlive;function ei(e,t){si(e,"a",t)}function ti(e,t){si(e,"da",t)}function si(e,t,o=xe){let r=e.__wdc||(e.__wdc=()=>{let n=o;for(;n;){if(n.isDeactivated)return;n=n.parent}return e()});if(Pn(t,r,o),o){let n=o.parent;for(;n&&n.parent;)Vn(n.parent.vnode)&&Td(r,t,o,n),n=n.parent}}function Td(e,t,o,r){let n=Pn(t,e,r,!0);en(()=>{Ss(r[t],n)},o)}function Pn(e,t,o=xe,r=!1){if(o){let n=o[e]||(o[e]=[]),i=t.__weh||(t.__weh=(...a)=>{Dt();let u=tn(o),f=yt(t,o,e,a);return u(),Rt(),f});return r?n.unshift(i):n.push(i),i}}var zt=e=>(t,o=xe)=>{(!ws||e==="sp")&&Pn(e,(...r)=>t(...r),o)},Od=zt("bm"),It=zt("m"),ni=zt("bu"),oi=zt("u"),ss=zt("bum"),en=zt("um"),Ad=zt("sp"),Id=zt("rtg"),Vd=zt("rtc");function Pd(e,t=xe){Pn("ec",e,t)}var ri="components",qd="directives";function et(e,t){return ii(ri,e,!0,t)||e}var Md=Symbol.for("v-ndc");function be(e){return ii(qd,e)}function ii(e,t,o=!0,r=!1){let n=pt||xe;if(n){let i=n.type;if(e===ri){let u=bu(i,!1);if(u&&(u===t||u===Ke(t)||u===Yt(Ke(t))))return i}let a=Ir(n[e]||i[e],t)||Ir(n.appContext[e],t);return!a&&r?i:a}}function Ir(e,t){return e&&(e[t]||e[Ke(t)]||e[Yt(Ke(t))])}function ne(e,t,o,r){let n,i=o&&o[r],a=Ee(e);if(a||Fe(e)){let u=a&&$t(e),f=!1,h=!1;u&&(f=!it(e),h=kt(e),e=Us(e)),n=new Array(e.length);for(let v=0,k=e.length;v<k;v++)n[v]=t(f?h?Xt(vt(e[v])):vt(e[v]):e[v],v,void 0,i&&i[v])}else if(typeof e=="number"){n=new Array(e);for(let u=0;u<e;u++)n[u]=t(u+1,u,void 0,i&&i[u])}else if(Ve(e))if(e[Symbol.iterator])n=Array.from(e,(u,f)=>t(u,f,void 0,i&&i[f]));else{let u=Object.keys(e);n=new Array(u.length);for(let f=0,h=u.length;f<h;f++){let v=u[f];n[f]=t(e[v],v,f,i&&i[f])}}else n=[];return o&&(o[r]=n),n}var Eo=e=>e?Di(e)?$n(e):Eo(e.parent):null;var Ws=Ge(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Eo(e.parent),$root:e=>Eo(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>To(e),$forceUpdate:e=>e.f||(e.f=()=>{Do(e.update)}),$nextTick:e=>e.n||(e.n=_t.bind(e.proxy)),$watch:e=>Nd.bind(e)});var wo=(e,t)=>e!==Me&&!e.__isScriptSetup&&Ae(e,t),$d={get({_:e},t){if(t==="__v_skip")return!0;let{ctx:o,setupState:r,data:n,props:i,accessCache:a,type:u,appContext:f}=e;if(t[0]!=="$"){let p=a[t];if(p!==void 0)switch(p){case 1:return r[t];case 2:return n[t];case 4:return o[t];case 3:return i[t]}else{if(wo(r,t))return a[t]=1,r[t];if(n!==Me&&Ae(n,t))return a[t]=2,n[t];if(Ae(i,t))return a[t]=3,i[t];if(o!==Me&&Ae(o,t))return a[t]=4,o[t];Co&&(a[t]=0)}}let h=Ws[t],v,k;if(h)return t==="$attrs"&&Xe(e.attrs,"get",""),h(e);if((v=u.__cssModules)&&(v=v[t]))return v;if(o!==Me&&Ae(o,t))return a[t]=4,o[t];if(k=f.config.globalProperties,Ae(k,t))return k[t]},set({_:e},t,o){let{data:r,setupState:n,ctx:i}=e;return wo(n,t)?(n[t]=o,!0):r!==Me&&Ae(r,t)?(r[t]=o,!0):Ae(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:r,appContext:n,props:i,type:a}},u){let f;return!!(o[u]||e!==Me&&u[0]!=="$"&&Ae(e,u)||wo(t,u)||Ae(i,u)||Ae(r,u)||Ae(Ws,u)||Ae(n.config.globalProperties,u)||(f=a.__cssModules)&&f[u])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:Ae(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Vr(e){return Ee(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}var Co=!0;function Ld(e){let t=To(e),o=e.proxy,r=e.ctx;Co=!1,t.beforeCreate&&Pr(t.beforeCreate,e,"bc");let{data:n,computed:i,methods:a,watch:u,provide:f,inject:h,created:v,beforeMount:k,mounted:p,beforeUpdate:g,updated:w,activated:b,deactivated:T,beforeDestroy:N,beforeUnmount:R,destroyed:I,unmounted:C,render:A,renderTracked:P,renderTriggered:x,errorCaptured:Q,serverPrefetch:K,expose:z,inheritAttrs:ae,components:se,directives:re,filters:ue}=t;if(h&&Ud(h,r,null),a)for(let me in a){let pe=a[me];_e(pe)&&(r[me]=pe.bind(o))}if(n){let me=n.call(o,o);Ve(me)&&(e.data=ze(me))}if(Co=!0,i)for(let me in i){let pe=i[me],Te=_e(pe)?pe.bind(o,o):_e(pe.get)?pe.get.bind(o,o):rt,Re=!_e(pe)&&_e(pe.set)?pe.set.bind(o):rt,Se=tt({get:Te,set:Re});Object.defineProperty(r,me,{enumerable:!0,configurable:!0,get:()=>Se.value,set:D=>Se.value=D})}if(u)for(let me in u)ai(u[me],r,o,me);if(f){let me=_e(f)?f.call(o):f;Reflect.ownKeys(me).forEach(pe=>{ts(pe,me[pe])})}v&&Pr(v,e,"c");function he(me,pe){Ee(pe)?pe.forEach(Te=>me(Te.bind(o))):pe&&me(pe.bind(o))}if(he(Od,k),he(It,p),he(ni,g),he(oi,w),he(ei,b),he(ti,T),he(Pd,Q),he(Vd,P),he(Id,x),he(ss,R),he(en,C),he(Ad,K),Ee(z))if(z.length){let me=e.exposed||(e.exposed={});z.forEach(pe=>{Object.defineProperty(me,pe,{get:()=>o[pe],set:Te=>o[pe]=Te,enumerable:!0})})}else e.exposed||(e.exposed={});A&&e.render===rt&&(e.render=A),ae!=null&&(e.inheritAttrs=ae),se&&(e.components=se),re&&(e.directives=re),K&&Ro(e)}function Ud(e,t,o=rt){Ee(e)&&(e=No(e));for(let r in e){let n=e[r],i;Ve(n)?"default"in n?i=lt(n.from||r,n.default,!0):i=lt(n.from||r):i=lt(n),Qe(i)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:a=>i.value=a}):t[r]=i}}function Pr(e,t,o){yt(Ee(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,o)}function ai(e,t,o,r){let n=r.includes(".")?Xr(o,r):()=>o[r];if(Fe(e)){let i=t[e];_e(i)&&He(n,i)}else if(_e(e))He(n,e.bind(o));else if(Ve(e))if(Ee(e))e.forEach(i=>ai(i,t,o,r));else{let i=_e(e.handler)?e.handler.bind(o):t[e.handler];_e(i)&&He(n,i,e)}}function To(e){let t=e.type,{mixins:o,extends:r}=t,{mixins:n,optionsCache:i,config:{optionMergeStrategies:a}}=e.appContext,u=i.get(t),f;return u?f=u:!n.length&&!o&&!r?f=t:(f={},n.length&&n.forEach(h=>Sn(f,h,a,!0)),Sn(f,t,a)),Ve(t)&&i.set(t,f),f}function Sn(e,t,o,r=!1){let{mixins:n,extends:i}=t;i&&Sn(e,i,o,!0),n&&n.forEach(a=>Sn(e,a,o,!0));for(let a in t)if(!(r&&a==="expose")){let u=Fd[a]||o&&o[a];e[a]=u?u(e[a],t[a]):t[a]}return e}var Fd={data:qr,props:Mr,emits:Mr,methods:Bs,computed:Bs,beforeCreate:st,created:st,beforeMount:st,mounted:st,beforeUpdate:st,updated:st,beforeDestroy:st,beforeUnmount:st,destroyed:st,unmounted:st,activated:st,deactivated:st,errorCaptured:st,serverPrefetch:st,components:Bs,directives:Bs,watch:Hd,provide:qr,inject:zd};function qr(e,t){return t?e?function(){return Ge(_e(e)?e.call(this,this):e,_e(t)?t.call(this,this):t)}:t:e}function zd(e,t){return Bs(No(e),No(t))}function No(e){if(Ee(e)){let t={};for(let o=0;o<e.length;o++)t[e[o]]=e[o];return t}return e}function st(e,t){return e?[...new Set([].concat(e,t))]:t}function Bs(e,t){return e?Ge(Object.create(null),e,t):t}function Mr(e,t){return e?Ee(e)&&Ee(t)?[...new Set([...e,...t])]:Ge(Object.create(null),Vr(e),Vr(t??{})):t}function Hd(e,t){if(!e)return t;if(!t)return e;let o=Ge(Object.create(null),e);for(let r in t)o[r]=st(e[r],t[r]);return o}function li(){return{app:null,config:{isNativeTag:Xn,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}var Bd=0;function Gd(e,t){return function(r,n=null){_e(r)||(r=Ge({},r)),n!=null&&!Ve(n)&&(n=null);let i=li(),a=new WeakSet,u=[],f=!1,h=i.app={_uid:Bd++,_component:r,_props:n,_container:null,_context:i,_instance:null,version:ku,get config(){return i.config},set config(v){},use(v,...k){return a.has(v)||(v&&_e(v.install)?(a.add(v),v.install(h,...k)):_e(v)&&(a.add(v),v(h,...k))),h},mixin(v){return i.mixins.includes(v)||i.mixins.push(v),h},component(v,k){return k?(i.components[v]=k,h):i.components[v]},directive(v,k){return k?(i.directives[v]=k,h):i.directives[v]},mount(v,k,p){if(!f){let g=h._ceVNode||De(r,n);return g.appContext=i,p===!0?p="svg":p===!1&&(p=void 0),k&&t?t(g,v):e(g,v,p),f=!0,h._container=v,v.__vue_app__=h,$n(g.component)}},onUnmount(v){u.push(v)},unmount(){f&&(yt(u,h._instance,16),e(null,h._container),delete h._container.__vue_app__)},provide(v,k){return i.provides[v]=k,h},runWithContext(v){let k=gs;gs=h;try{return v()}finally{gs=k}}};return h}}var gs=null;var jd=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ke(t)}Modifiers`]||e[`${qt(t)}Modifiers`];function Wd(e,t,...o){if(e.isUnmounted)return;let r=e.vnode.props||Me,n=o,i=t.startsWith("update:"),a=i&&jd(r,t.slice(7));a&&(a.trim&&(n=o.map(v=>Fe(v)?v.trim():v)),a.number&&(n=n.map(eo)));let u,f=r[u=Rs(t)]||r[u=Rs(Ke(t))];!f&&i&&(f=r[u=Rs(qt(t))]),f&&yt(f,e,6,n);let h=r[u+"Once"];if(h){if(!e.emitted)e.emitted={};else if(e.emitted[u])return;e.emitted[u]=!0,yt(h,e,6,n)}}var Kd=new WeakMap;function di(e,t,o=!1){let r=o?Kd:t.emitsCache,n=r.get(e);if(n!==void 0)return n;let i=e.emits,a={},u=!1;if(!_e(e)){let f=h=>{let v=di(h,t,!0);v&&(u=!0,Ge(a,v))};!o&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}return!i&&!u?(Ve(e)&&r.set(e,null),null):(Ee(i)?i.forEach(f=>a[f]=null):Ge(a,i),Ve(e)&&r.set(e,a),a)}function qn(e,t){return!e||!us(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),Ae(e,t[0].toLowerCase()+t.slice(1))||Ae(e,qt(t))||Ae(e,t))}function ko(e){let{type:t,vnode:o,proxy:r,withProxy:n,propsOptions:[i],slots:a,attrs:u,emit:f,render:h,renderCache:v,props:k,data:p,setupState:g,ctx:w,inheritAttrs:b}=e,T=Cn(e),N,R;try{if(o.shapeFlag&4){let A=n||r,P=A;N=At(h.call(P,A,v,k,g,p,w)),R=u}else{let A=t;N=At(A.length>1?A(k,{attrs:u,slots:a,emit:f}):A(k,null)),R=t.props?u:Yd(u)}}catch(A){es.length=0,Zs(A,e,1),N=De(Ft)}let I=N,C;if(R&&b!==!1){let A=Object.keys(R),{shapeFlag:P}=I;A.length&&P&7&&(i&&A.some(cs)&&(R=Jd(R,i)),I=bs(I,R,!1,!0))}if(o.dirs&&(I=bs(I,null,!1,!0),I.dirs=I.dirs?I.dirs.concat(o.dirs):o.dirs),o.transition){let A=An(I.type)&&Zr(I)||I;In(A,o.transition)}return N=I,Cn(T),N}var Yd=e=>{let t;for(let o in e)(o==="class"||o==="style"||us(o))&&((t||(t={}))[o]=e[o]);return t},Jd=(e,t)=>{let o={};for(let r in e)(!cs(r)||!(r.slice(9)in t))&&(o[r]=e[r]);return o};function Qd(e,t,o){let{props:r,children:n,component:i}=e,{props:a,children:u,patchFlag:f}=t,h=i.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&f>=0){if(f&1024)return!0;if(f&16)return r?$r(r,a,h):!!a;if(f&8){let v=t.dynamicProps;for(let k=0;k<v.length;k++){let p=v[k];if(ui(a,r,p)&&!qn(h,p))return!0}}}else return(n||u)&&(!u||!u.$stable)?!0:r===a?!1:r?a?$r(r,a,h):!0:!!a;return!1}function $r(e,t,o){let r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let n=0;n<r.length;n++){let i=r[n];if(ui(t,e,i)&&!qn(o,i))return!0}return!1}function ui(e,t,o){let r=e[o],n=t[o];return o==="style"&&Ve(r)&&Ve(n)?!fs(r,n):r!==n}function Xd({vnode:e,parent:t,suspense:o},r){for(;t;){let n=t.subTree;if(n.suspense&&n.suspense.activeBranch===e&&(n.suspense.vnode.el=n.el=r,e=n),n===e)(e=t.vnode).el=r,t=t.parent;else break}o&&o.activeBranch===e&&(o.vnode.el=r)}var ci={},pi=()=>Object.create(ci),fi=e=>Object.getPrototypeOf(e)===ci;function Zd(e,t,o,r=!1){let n={},i=pi();e.propsDefaults=Object.create(null),mi(e,t,n,i);for(let a in e.propsOptions[0])a in n||(n[a]=void 0);o?e.props=r?n:Fs(n):e.type.props?e.props=n:e.props=i,e.attrs=i}function xd(e,t,o,r){let{props:n,attrs:i,vnode:{patchFlag:a}}=e,u=Ie(n),[f]=e.propsOptions,h=!1;if((r||a>0)&&!(a&16)){if(a&8){let v=e.vnode.dynamicProps;for(let k=0;k<v.length;k++){let p=v[k];if(qn(e.emitsOptions,p))continue;let g=t[p];if(f)if(Ae(i,p))g!==i[p]&&(i[p]=g,h=!0);else{let w=Ke(p);n[w]=So(f,u,w,g,e,!1)}else g!==i[p]&&(i[p]=g,h=!0)}}}else{mi(e,t,n,i)&&(h=!0);let v;for(let k in u)(!t||!Ae(t,k)&&((v=qt(k))===k||!Ae(t,v)))&&(f?o&&(o[k]!==void 0||o[v]!==void 0)&&(n[k]=So(f,u,k,void 0,e,!0)):delete n[k]);if(i!==u)for(let k in i)(!t||!Ae(t,k))&&(delete i[k],h=!0)}h&&Nt(e.attrs,"set","")}function mi(e,t,o,r){let[n,i]=e.propsOptions,a=!1,u;if(t)for(let f in t){if(ps(f))continue;let h=t[f],v;n&&Ae(n,v=Ke(f))?!i||!i.includes(v)?o[v]=h:(u||(u={}))[v]=h:qn(e.emitsOptions,f)||(!(f in r)||h!==r[f])&&(r[f]=h,a=!0)}if(i){let f=Ie(o),h=u||Me;for(let v=0;v<i.length;v++){let k=i[v];o[k]=So(n,f,k,h[k],e,!Ae(h,k))}}return a}function So(e,t,o,r,n,i){let a=e[o];if(a!=null){let u=Ae(a,"default");if(u&&r===void 0){let f=a.default;if(a.type!==Function&&!a.skipFactory&&_e(f)){let{propsDefaults:h}=n;if(o in h)r=h[o];else{let v=tn(n);r=h[o]=f.call(null,t),v()}}else r=f;n.ce&&n.ce._setProp(o,r)}a[0]&&(i&&!u?r=!1:a[1]&&(r===""||r===qt(o))&&(r=!0))}return r}var eu=new WeakMap;function hi(e,t,o=!1){let r=o?eu:t.propsCache,n=r.get(e);if(n)return n;let i=e.props,a={},u=[],f=!1;if(!_e(e)){let v=k=>{f=!0;let[p,g]=hi(k,t,!0);Ge(a,p),g&&u.push(...g)};!o&&t.mixins.length&&t.mixins.forEach(v),e.extends&&v(e.extends),e.mixins&&e.mixins.forEach(v)}if(!i&&!f)return Ve(e)&&r.set(e,Kt),Kt;if(Ee(i))for(let v=0;v<i.length;v++){let k=Ke(i[v]);Lr(k)&&(a[k]=Me)}else if(i)for(let v in i){let k=Ke(v);if(Lr(k)){let p=i[v],g=a[k]=Ee(p)||_e(p)?{type:p}:Ge({},p),w=g.type,b=!1,T=!0;if(Ee(w))for(let N=0;N<w.length;++N){let R=w[N],I=_e(R)&&R.name;if(I==="Boolean"){b=!0;break}else I==="String"&&(T=!1)}else b=_e(w)&&w.name==="Boolean";g[0]=b,g[1]=T,(b||Ae(g,"default"))&&u.push(k)}}let h=[a,u];return Ve(e)&&r.set(e,h),h}function Lr(e){return e[0]!=="$"&&!ps(e)}var Oo=e=>e==="_"||e==="_ctx"||e==="$stable",Ao=e=>Ee(e)?e.map(At):[At(e)],tu=(e,t,o)=>{if(t._n)return t;let r=_d((...n)=>Ao(t(...n)),o);return r._c=!1,r},vi=(e,t,o)=>{let r=e._ctx;for(let n in e){if(Oo(n))continue;let i=e[n];if(_e(i))t[n]=tu(n,i,r);else if(i!=null){let a=Ao(i);t[n]=()=>a}}},yi=(e,t)=>{let o=Ao(t);e.slots.default=()=>o},gi=(e,t,o)=>{for(let r in t)(o||!Oo(r))&&(e[r]=t[r])},su=(e,t,o)=>{let r=e.slots=pi();if(e.vnode.shapeFlag&32){let n=t._;n?(gi(r,t,o),o&&un(r,"_",n,!0)):vi(t,r)}else t&&yi(e,t)},nu=(e,t,o)=>{let{vnode:r,slots:n}=e,i=!0,a=Me;if(r.shapeFlag&32){let u=t._;u?o&&u===1?i=!1:gi(n,t,o):(i=!t.$stable,vi(t,n)),a=t}else t&&(yi(e,t),a={default:1});if(i)for(let u in n)!Oo(u)&&a[u]==null&&delete n[u]};function ou(){let e=[]}var at=lu;function bi(e){return ru(e)}function ru(e,t){ou();let o=Os();o.__VUE__=!0;let{insert:r,remove:n,patchProp:i,createElement:a,createText:u,createComment:f,setText:h,setElementText:v,parentNode:k,nextSibling:p,setScopeId:g=rt,insertStaticContent:w}=e,b=(_,S,q,F=null,G=null,M=null,J=void 0,Z=null,X=!!S.dynamicChildren)=>{if(_===S)return;_&&!Hs(_,S)&&(F=te(_),V(_,G,M,!0),_=null),S.patchFlag===-2&&(X=!1,S.dynamicChildren=null);let{type:H,ref:de,shapeFlag:ee}=S;switch(H){case Mn:T(_,S,q,F);break;case Ft:N(_,S,q,F);break;case Ks:_==null&&R(S,q,F,J);break;case Y:re(_,S,q,F,G,M,J,Z,X);break;default:ee&1?P(_,S,q,F,G,M,J,Z,X):ee&6?ue(_,S,q,F,G,M,J,Z,X):(ee&64||ee&128)&&H.process(_,S,q,F,G,M,J,Z,X,fe)}de!=null&&G?Gs(de,_&&_.ref,M,S||_,!S):de==null&&_&&_.ref!=null&&Gs(_.ref,null,M,_,!0)},T=(_,S,q,F)=>{if(_==null)r(S.el=u(S.children),q,F);else{let G=S.el=_.el;S.children!==_.children&&h(G,S.children)}},N=(_,S,q,F)=>{_==null?r(S.el=f(S.children||""),q,F):S.el=_.el},R=(_,S,q,F)=>{[_.el,_.anchor]=w(_.children,S,q,F,_.el,_.anchor)},I=(_,S,q,F)=>{if(S.children!==_.children){let G=p(_.anchor);A(_),[S.el,S.anchor]=w(S.children,q,G,F)}else S.el=_.el,S.anchor=_.anchor},C=({el:_,anchor:S},q,F)=>{let G;for(;_&&_!==S;)G=p(_),r(_,q,F),_=G;r(S,q,F)},A=({el:_,anchor:S})=>{let q;for(;_&&_!==S;)q=p(_),n(_),_=q;n(S)},P=(_,S,q,F,G,M,J,Z,X)=>{if(S.type==="svg"?J="svg":S.type==="math"&&(J="mathml"),_==null)x(S,q,F,G,M,J,Z,X);else{let H=_.el&&_.el._isVueCE?_.el:null;try{H&&H._beginPatch(),z(_,S,G,M,J,Z,X)}finally{H&&H._endPatch()}}},x=(_,S,q,F,G,M,J,Z)=>{let X,H,{props:de,shapeFlag:ee,transition:ie,dirs:ve}=_;if(X=_.el=a(_.type,M,de&&de.is,de),ee&8?v(X,_.children):ee&16&&K(_.children,X,null,F,G,_o(_,M),J,Z),ve&&Zt(_,null,F,"created"),Q(X,_,_.scopeId,J,F),de){for(let Le in de)Le!=="value"&&!ps(Le)&&i(X,Le,null,de[Le],M,F);"value"in de&&i(X,"value",null,de.value,M),(H=de.onVnodeBeforeMount)&&Tt(H,F,_)}ve&&Zt(_,null,F,"beforeMount");let Oe=iu(G,ie);Oe&&ie.beforeEnter(X),r(X,S,q),((H=de&&de.onVnodeMounted)||Oe||ve)&&at(()=>{let $e;try{H&&Tt(H,F,_),Oe&&ie.enter(X),ve&&Zt(_,null,F,"mounted")}finally{}},G)},Q=(_,S,q,F,G)=>{if(q&&g(_,q),F)for(let M=0;M<F.length;M++)g(_,F[M]);if(G){let M=G.subTree;if(S===M||Ei(M.type)&&(M.ssContent===S||M.ssFallback===S)){let J=G.vnode;Q(_,J,J.scopeId,J.slotScopeIds,G.parent)}}},K=(_,S,q,F,G,M,J,Z,X=0)=>{for(let H=X;H<_.length;H++){let de=_[H]=Z?Ut(_[H]):At(_[H]);b(null,de,S,q,F,G,M,J,Z)}},z=(_,S,q,F,G,M,J)=>{let Z=S.el=_.el,{patchFlag:X,dynamicChildren:H,dirs:de}=S;X|=_.patchFlag&16;let ee=_.props||Me,ie=S.props||Me,ve;if(q&&xt(q,!1),(ve=ie.onVnodeBeforeUpdate)&&Tt(ve,q,S,_),de&&Zt(S,_,q,"beforeUpdate"),q&&xt(q,!0),H&&(!_.dynamicChildren||_.dynamicChildren.length!==H.length)&&(X=0,J=!1,H=null),(ee.innerHTML&&ie.innerHTML==null||ee.textContent&&ie.textContent==null)&&v(Z,""),H?ae(_.dynamicChildren,H,Z,q,F,_o(S,G),M):J||Te(_,S,Z,null,q,F,_o(S,G),M,!1),X>0){if(X&16)se(Z,ee,ie,q,G);else if(X&2&&ee.class!==ie.class&&i(Z,"class",null,ie.class,G),X&4&&i(Z,"style",ee.style,ie.style,G),X&8){let Oe=S.dynamicProps;for(let Le=0;Le<Oe.length;Le++){let $e=Oe[Le],je=ee[$e],We=ie[$e];(We!==je||$e==="value")&&i(Z,$e,je,We,G,q)}}X&1&&_.children!==S.children&&v(Z,S.children)}else!J&&H==null&&se(Z,ee,ie,q,G);((ve=ie.onVnodeUpdated)||de)&&at(()=>{ve&&Tt(ve,q,S,_),de&&Zt(S,_,q,"updated")},F)},ae=(_,S,q,F,G,M,J)=>{for(let Z=0;Z<S.length;Z++){let X=_[Z],H=S[Z],de=X.el&&(X.type===Y||!Hs(X,H)||X.shapeFlag&198)?k(X.el):q;b(X,H,de,null,F,G,M,J,!0)}},se=(_,S,q,F,G)=>{if(S!==q){if(S!==Me)for(let M in S)!ps(M)&&!(M in q)&&i(_,M,S[M],null,G,F);for(let M in q){if(ps(M))continue;let J=q[M],Z=S[M];J!==Z&&M!=="value"&&i(_,M,Z,J,G,F)}"value"in q&&i(_,"value",S.value,q.value,G)}},re=(_,S,q,F,G,M,J,Z,X)=>{let H=S.el=_?_.el:u(""),de=S.anchor=_?_.anchor:u(""),{patchFlag:ee,dynamicChildren:ie,slotScopeIds:ve}=S;ve&&(Z=Z?Z.concat(ve):ve),_==null?(r(H,q,F),r(de,q,F),K(S.children||[],q,de,G,M,J,Z,X)):ee>0&&ee&64&&ie&&_.dynamicChildren&&_.dynamicChildren.length===ie.length?(ae(_.dynamicChildren,ie,q,G,M,J,Z),(S.key!=null||G&&S===G.subTree)&&wi(_,S,!0)):Te(_,S,q,de,G,M,J,Z,X)},ue=(_,S,q,F,G,M,J,Z,X)=>{S.slotScopeIds=Z,_==null?S.shapeFlag&512?G.ctx.activate(S,q,F,J,X):ke(S,q,F,G,M,J,X):he(_,S,X)},ke=(_,S,q,F,G,M,J)=>{let Z=_.component=mu(_,F,G);if(Vn(_)&&(Z.ctx.renderer=fe),hu(Z,!1,J),Z.asyncDep){if(G&&G.registerDep(Z,me,J),!_.el){let X=Z.subTree=De(Ft);N(null,X,S,q),_.placeholder=X.el}}else me(Z,_,S,q,G,M,J)},he=(_,S,q)=>{let F=S.component=_.component;if(Qd(_,S,q))if(F.asyncDep&&!F.asyncResolved){pe(F,S,q);return}else F.next=S,F.update();else S.el=_.el,F.vnode=S},me=(_,S,q,F,G,M,J)=>{let Z=()=>{if(_.isMounted){let{next:ee,bu:ie,u:ve,parent:Oe,vnode:Le}=_;{let dt=ki(_);if(dt){ee&&(ee.el=Le.el,pe(_,ee,J)),dt.asyncDep.then(()=>{at(()=>{_.isUnmounted||H()},G)});return}}let $e=ee,je;xt(_,!1),ee?(ee.el=Le.el,pe(_,ee,J)):ee=Le,ie&&Ts(ie),(je=ee.props&&ee.props.onVnodeBeforeUpdate)&&Tt(je,Oe,ee,Le),xt(_,!0);let We=ko(_),bt=_.subTree;_.subTree=We,b(bt,We,k(bt.el),te(bt),_,G,M),ee.el=We.el,$e===null&&Xd(_,We.el),ve&&at(ve,G),(je=ee.props&&ee.props.onVnodeUpdated)&&at(()=>Tt(je,Oe,ee,Le),G)}else{let ee,{el:ie,props:ve}=S,{bm:Oe,m:Le,parent:$e,root:je,type:We}=_,bt=js(S);if(xt(_,!1),Oe&&Ts(Oe),!bt&&(ee=ve&&ve.onVnodeBeforeMount)&&Tt(ee,$e,S),xt(_,!0),ie&&ce){let dt=()=>{_.subTree=ko(_),ce(ie,_.subTree,_,G,null)};bt&&We.__asyncHydrate?We.__asyncHydrate(ie,_,dt):dt()}else{je.ce&&je.ce._hasShadowRoot()&&je.ce._injectChildStyle(We,_.parent?_.parent.type:void 0);let dt=_.subTree=ko(_);b(null,dt,q,F,_,G,M),S.el=dt.el}if(Le&&at(Le,G),!bt&&(ee=ve&&ve.onVnodeMounted)){let dt=S;at(()=>Tt(ee,$e,dt),G)}(S.shapeFlag&256||$e&&js($e.vnode)&&$e.vnode.shapeFlag&256)&&_.a&&at(_.a,G),_.isMounted=!0,S=q=F=null}};_.scope.on();let X=_.effect=new hs(Z);_.scope.off();let H=_.update=X.run.bind(X),de=_.job=X.runIfDirty.bind(X);de.i=_,de.id=_.uid,X.scheduler=()=>Do(de),xt(_,!0),H()},pe=(_,S,q)=>{S.component=_;let F=_.vnode.props;_.vnode=S,_.next=null,xd(_,S.props,F,q),nu(_,S.children,q),Dt(),Rr(_),Rt()},Te=(_,S,q,F,G,M,J,Z,X=!1)=>{let H=_&&_.children,de=_?_.shapeFlag:0,ee=S.children,{patchFlag:ie,shapeFlag:ve}=S;if(ie>0){if(ie&128){Se(H,ee,q,F,G,M,J,Z,X);return}else if(ie&256){Re(H,ee,q,F,G,M,J,Z,X);return}}ve&8?(de&16&&L(H,G,M),ee!==H&&v(q,ee)):de&16?ve&16?Se(H,ee,q,F,G,M,J,Z,X):L(H,G,M,!0):(de&8&&v(q,""),ve&16&&K(ee,q,F,G,M,J,Z,X))},Re=(_,S,q,F,G,M,J,Z,X)=>{_=_||Kt,S=S||Kt;let H=_.length,de=S.length,ee=Math.min(H,de),ie;for(ie=0;ie<ee;ie++){let ve=S[ie]=X?Ut(S[ie]):At(S[ie]);b(_[ie],ve,q,null,G,M,J,Z,X)}H>de?L(_,G,M,!0,!1,ee):K(S,q,F,G,M,J,Z,X,ee)},Se=(_,S,q,F,G,M,J,Z,X)=>{let H=0,de=S.length,ee=_.length-1,ie=de-1;for(;H<=ee&&H<=ie;){let ve=_[H],Oe=S[H]=X?Ut(S[H]):At(S[H]);if(Hs(ve,Oe))b(ve,Oe,q,null,G,M,J,Z,X);else break;H++}for(;H<=ee&&H<=ie;){let ve=_[ee],Oe=S[ie]=X?Ut(S[ie]):At(S[ie]);if(Hs(ve,Oe))b(ve,Oe,q,null,G,M,J,Z,X);else break;ee--,ie--}if(H>ee){if(H<=ie){let ve=ie+1,Oe=ve<de?S[ve].el:F;for(;H<=ie;)b(null,S[H]=X?Ut(S[H]):At(S[H]),q,Oe,G,M,J,Z,X),H++}}else if(H>ie)for(;H<=ee;)V(_[H],G,M,!0),H++;else{let ve=H,Oe=H,Le=new Map;for(H=Oe;H<=ie;H++){let ut=S[H]=X?Ut(S[H]):At(S[H]);ut.key!=null&&Le.set(ut.key,H)}let $e,je=0,We=ie-Oe+1,bt=!1,dt=0,Ns=new Array(We);for(H=0;H<We;H++)Ns[H]=0;for(H=ve;H<=ee;H++){let ut=_[H];if(je>=We){V(ut,G,M,!0);continue}let Et;if(ut.key!=null)Et=Le.get(ut.key);else for($e=Oe;$e<=ie;$e++)if(Ns[$e-Oe]===0&&Hs(ut,S[$e])){Et=$e;break}Et===void 0?V(ut,G,M,!0):(Ns[Et-Oe]=H+1,Et>=dt?dt=Et:bt=!0,b(ut,S[Et],q,null,G,M,J,Z,X),je++)}let Zo=bt?au(Ns):Kt;for($e=Zo.length-1,H=We-1;H>=0;H--){let ut=Oe+H,Et=S[ut],xo=S[ut+1],er=ut+1<de?xo.el||_i(xo):F;Ns[H]===0?b(null,Et,q,er,G,M,J,Z,X):bt&&($e<0||H!==Zo[$e]?D(Et,q,er,2):$e--)}}},D=(_,S,q,F,G=null)=>{let{el:M,type:J,transition:Z,children:X,shapeFlag:H}=_;if(H&6){D(_.component.subTree,S,q,F);return}if(H&128){_.suspense.move(S,q,F);return}if(H&64){J.move(_,S,q,fe);return}if(J===Y){r(M,S,q);for(let ee=0;ee<X.length;ee++)D(X[ee],S,q,F);r(_.anchor,S,q);return}if(J===Ks){C(_,S,q);return}if(F!==2&&H&1&&Z)if(F===0)Z.persisted&&!M[bo]?r(M,S,q):(Z.beforeEnter(M),r(M,S,q),at(()=>Z.enter(M),G));else{let{leave:ee,delayLeave:ie,afterLeave:ve}=Z,Oe=()=>{_.ctx.isUnmounted?n(M):r(M,S,q)},Le=()=>{let $e=M._isLeaving||!!M[bo];M._isLeaving&&M[bo](!0),Z.persisted&&!$e?Oe():ee(M,()=>{Oe(),ve&&ve()})};ie?ie(M,Oe,Le):Le()}else r(M,S,q)},V=(_,S,q,F=!1,G=!1)=>{let{type:M,props:J,ref:Z,children:X,dynamicChildren:H,shapeFlag:de,patchFlag:ee,dirs:ie,cacheIndex:ve,memo:Oe}=_;if(ee===-2&&(G=!1),Z!=null&&(Dt(),Gs(Z,null,q,_,!0),Rt()),ve!=null&&(S.renderCache[ve]=void 0),de&256){S.ctx.deactivate(_);return}let Le=de&1&&ie,$e=!js(_),je;if($e&&(je=J&&J.onVnodeBeforeUnmount)&&Tt(je,S,_),de&6)le(_.component,q,F);else{if(de&128){_.suspense.unmount(q,F);return}Le&&Zt(_,null,S,"beforeUnmount"),de&64?_.type.remove(_,S,q,fe,F):H&&!H.hasOnce&&(M!==Y||ee>0&&ee&64)?L(H,S,q,!1,!0):(M===Y&&ee&384||!G&&de&16)&&L(X,S,q),F&&j(_)}let We=Oe!=null&&ve==null;($e&&(je=J&&J.onVnodeUnmounted)||Le||We)&&at(()=>{je&&Tt(je,S,_),Le&&Zt(_,null,S,"unmounted"),We&&(_.el=null)},q)},j=_=>{let{type:S,el:q,anchor:F,transition:G}=_;if(S===Y){oe(q,F);return}if(S===Ks){A(_);return}let M=()=>{n(q),G&&!G.persisted&&G.afterLeave&&G.afterLeave()};if(_.shapeFlag&1&&G&&!G.persisted){let{leave:J,delayLeave:Z}=G,X=()=>J(q,M);Z?Z(_.el,M,X):X()}else M()},oe=(_,S)=>{let q;for(;_!==S;)q=p(_),n(_),_=q;n(S)},le=(_,S,q)=>{let{bum:F,scope:G,job:M,subTree:J,um:Z,m:X,a:H}=_;Ur(X),Ur(H),F&&Ts(F),G.stop(),M&&(M.flags|=8,V(J,_,S,q)),Z&&at(Z,S),at(()=>{_.isUnmounted=!0},S)},L=(_,S,q,F=!1,G=!1,M=0)=>{for(let J=M;J<_.length;J++)V(_[J],S,q,F,G)},te=_=>{if(_.shapeFlag&6)return te(_.component.subTree);if(_.shapeFlag&128)return _.suspense.next();let S=p(_.anchor||_.el),q=S&&S[Sd];return q?p(q):S},U=!1,W=(_,S,q)=>{let F;_==null?S._vnode&&(V(S._vnode,null,null,!0),F=S._vnode.component):b(S._vnode||null,_,S,null,null,null,q),S._vnode=_,U||(U=!0,Rr(F),Kr(),U=!1)},fe={p:b,um:V,m:D,r:j,mt:ke,mc:K,pc:Te,pbc:ae,n:te,o:e},Ce,ce;return t&&([Ce,ce]=t(fe)),{render:W,hydrate:Ce,createApp:Gd(W,Ce)}}function _o({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function xt({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function iu(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function wi(e,t,o=!1){let r=e.children,n=t.children;if(Ee(r)&&Ee(n))for(let i=0;i<r.length;i++){let a=r[i],u=n[i];u.shapeFlag&1&&!u.dynamicChildren&&((u.patchFlag<=0||u.patchFlag===32)&&(u=n[i]=Ut(n[i]),u.el=a.el),!o&&u.patchFlag!==-2&&wi(a,u)),u.type===Mn&&(u.patchFlag===-1&&(u=n[i]=Ut(u)),u.el=a.el),u.type===Ft&&!u.el&&(u.el=a.el)}}function au(e){let t=e.slice(),o=[0],r,n,i,a,u,f=e.length;for(r=0;r<f;r++){let h=e[r];if(h!==0){if(n=o[o.length-1],e[n]<h){t[r]=n,o.push(r);continue}for(i=0,a=o.length-1;i<a;)u=i+a>>1,e[o[u]]<h?i=u+1:a=u;h<e[o[i]]&&(i>0&&(t[r]=o[i-1]),o[i]=r)}}for(i=o.length,a=o[i-1];i-- >0;)o[i]=a,a=t[a];return o}function ki(e){let t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ki(t)}function Ur(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function _i(e){if(e.placeholder)return e.placeholder;let t=e.component;return t?_i(t.subTree):null}var Ei=e=>e.__isSuspense;function lu(e,t){t&&t.pendingBranch?Ee(e)?t.effects.push(...e):t.effects.push(e):Wr(e)}var Y=Symbol.for("v-fgt"),Mn=Symbol.for("v-txt"),Ft=Symbol.for("v-cmt"),Ks=Symbol.for("v-stc"),es=[],ft=null;function l(e=!1){es.push(ft=e?null:[])}function Ci(){es.pop(),ft=es[es.length-1]||null}var Js=1;function Dn(e,t=!1){Js+=e,e<0&&ft&&t&&(ft.hasOnce=!0)}function Ni(e){return e.dynamicChildren=Js>0?ft||Kt:null,Ci(),Js>0&&ft&&ft.push(e),e}function d(e,t,o,r,n,i){return Ni(s(e,t,o,r,n,i,!0))}function ks(e,t,o,r,n){return Ni(De(e,t,o,r,n,!0))}function Rn(e){return e?e.__v_isVNode===!0:!1}function Hs(e,t){return e.type===t.type&&e.key===t.key}var Si=({key:e})=>e??null,_n=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?Fe(e)||Qe(e)||_e(e)?{i:pt,r:e,k:t,f:!!o}:e:null);function s(e,t=null,o=null,r=0,n=null,i=e===Y?0:1,a=!1,u=!1){let f={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Si(t),ref:t&&_n(t),scopeId:Jr,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:n,dynamicChildren:null,appContext:null,ctx:pt};return u?(Tn(f,o),i&128&&e.normalize(f)):o&&(f.shapeFlag|=Fe(o)?8:16),Js>0&&!a&&ft&&(f.patchFlag>0||i&6)&&f.patchFlag!==32&&ft.push(f),f}var De=du;function du(e,t=null,o=null,r=0,n=null,i=!1){if((!e||e===Md)&&(e=Ft),Rn(e)){let u=bs(e,t,!0);return o&&Tn(u,o),Js>0&&!i&&ft&&(u.shapeFlag&6?ft[ft.indexOf(e)]=u:ft.push(u)),u.patchFlag=-2,u}if(wu(e)&&(e=e.__vccOpts),t){t=uu(t);let{class:u,style:f}=t;u&&!Fe(u)&&(t.class=O(u)),Ve(f)&&(zs(f)&&!Ee(f)&&(f=Ge({},f)),t.style=Pe(f))}let a=Fe(e)?1:Ei(e)?128:An(e)?64:Ve(e)?4:_e(e)?2:0;return s(e,t,o,r,n,a,i,!0)}function uu(e){return e?zs(e)||fi(e)?Ge({},e):e:null}function bs(e,t,o=!1,r=!1){let{props:n,ref:i,patchFlag:a,children:u,transition:f}=e,h=t?cu(n||{},t):n,v={__v_isVNode:!0,__v_skip:!0,type:e.type,props:h,key:h&&Si(h),ref:t&&t.ref?o&&i?Ee(i)?i.concat(_n(t)):[i,_n(t)]:_n(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:u,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Y?a===-1?16:a|16:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:f,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&bs(e.ssContent),ssFallback:e.ssFallback&&bs(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return f&&r&&In(v,f.clone(v)),v}function y(e=" ",t=0){return De(Mn,null,e,t)}function ge(e,t){let o=De(Ks,null,e);return o.staticCount=t,o}function m(e="",t=!1){return t?(l(),ks(Ft,null,e)):De(Ft,null,e)}function At(e){return e==null||typeof e=="boolean"?De(Ft):Ee(e)?De(Y,null,e.slice()):Rn(e)?Ut(e):De(Mn,null,String(e))}function Ut(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:bs(e)}function Tn(e,t){let o=0,{shapeFlag:r}=e;if(t==null)t=null;else if(Ee(t))o=16;else if(typeof t=="object")if(r&65){let n=t.default;n&&(n._c&&(n._d=!1),Tn(e,n()),n._c&&(n._d=!0));return}else{o=32;let n=t._;!n&&!fi(t)?t._ctx=pt:n===3&&pt&&(pt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(_e(t)){if(r&65){Tn(e,{default:t});return}t={default:t,_ctx:pt},o=32}else t=String(t),r&64?(o=16,t=[y(t)]):o=8;e.children=t,e.shapeFlag|=o}function cu(...e){let t={};for(let o=0;o<e.length;o++){let r=e[o];for(let n in r)if(n==="class")t.class!==r.class&&(t.class=O([t.class,r.class]));else if(n==="style")t.style=Pe([t.style,r.style]);else if(us(n)){let i=t[n],a=r[n];a&&i!==a&&!(Ee(i)&&i.includes(a))?t[n]=i?[].concat(i,a):a:a==null&&i==null&&!cs(n)&&(t[n]=a)}else n!==""&&(t[n]=r[n])}return t}function Tt(e,t,o,r=null){yt(e,t,7,[o,r])}var pu=li(),fu=0;function mu(e,t,o){let r=e.type,n=(t?t.appContext:e.appContext)||pu,i={uid:fu++,vnode:e,type:r,parent:t,appContext:n,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Ps(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(n.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:hi(r,n),emitsOptions:di(r,n),emit:null,emitted:null,propsDefaults:Me,inheritAttrs:r.inheritAttrs,ctx:Me,data:Me,props:Me,attrs:Me,slots:Me,refs:Me,setupState:Me,setupContext:null,suspense:o,suspenseId:o?o.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Wd.bind(null,i),e.ce&&e.ce(i),i}var xe=null,Io=()=>xe||pt,On,Qs;{let e=Os(),t=(o,r)=>{let n;return(n=e[o])||(n=e[o]=[]),n.push(r),i=>{n.length>1?n.forEach(a=>a(i)):n[0](i)}};On=t("__VUE_INSTANCE_SETTERS__",o=>xe=o),Qs=t("__VUE_SSR_SETTERS__",o=>ws=o)}var tn=e=>{let t=xe;return On(e),e.scope.on(),()=>{e.scope.off(),On(t)}},Fr=()=>{xe&&xe.scope.off(),On(null)};function Di(e){return e.vnode.shapeFlag&4}var ws=!1;function hu(e,t=!1,o=!1){t&&Qs(t);let{props:r,children:n}=e.vnode,i=Di(e);Zd(e,r,i,t),su(e,n,o||t);let a=i?vu(e,t):void 0;return t&&Qs(!1),a}function vu(e,t){let o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,$d);let{setup:r}=o;if(r){Dt();let n=e.setupContext=r.length>1?gu(e):null,i=tn(e),a=Xs(r,e,0,[e.props,n]),u=Zn(a);if(Rt(),i(),(u||e.sp)&&!js(e)&&Ro(e),u){if(a.then(Fr,Fr),t)return a.then(f=>{Qs(!0);try{zr(e,f,t)}finally{Qs(!1)}}).catch(f=>{Zs(f,e,0)});e.asyncDep=a}else zr(e,a,t)}else Ri(e,t)}function zr(e,t,o){_e(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ve(t)&&(e.setupState=wn(t)),Ri(e,o)}var Hr,Br;function Ri(e,t,o){let r=e.type;if(!e.render){if(!t&&Hr&&!r.render){let n=r.template||To(e).template;if(n){let{isCustomElement:i,compilerOptions:a}=e.appContext.config,{delimiters:u,compilerOptions:f}=r,h=Ge(Ge({isCustomElement:i,delimiters:u},a),f);r.render=Hr(n,h)}}e.render=r.render||rt,Br&&Br(e)}{let n=tn(e);Dt();try{Ld(e)}finally{Rt(),n()}}}var yu={get(e,t){return Xe(e,"get",""),e[t]}};function gu(e){let t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,yu),slots:e.slots,emit:e.emit,expose:t}}function $n(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(wn(go(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Ws)return Ws[o](e)},has(t,o){return o in t||o in Ws}})):e.proxy}function bu(e,t=!0){return _e(e)?e.displayName||e.name:e.name||t&&e.__name}function wu(e){return _e(e)&&"__vccOpts"in e}var tt=(e,t)=>Nr(e,t,ws);function Ne(e,t,o){try{Dn(-1);let r=arguments.length;return r===2?Ve(t)&&!Ee(t)?Rn(t)?De(e,null,[t]):De(e,t):De(e,null,t):(r>3?o=Array.prototype.slice.call(arguments,2):r===3&&Rn(o)&&(o=[o]),De(e,t,o))}finally{Dn(1)}}var ku="3.5.42";var qo,Ti=typeof window<"u"&&window.trustedTypes;if(Ti)try{qo=Ti.createPolicy("vue",{createHTML:e=>e})}catch{}var Li=qo?e=>qo.createHTML(e):e=>e,_u="http://www.w3.org/2000/svg",Eu="http://www.w3.org/1998/Math/MathML",Ht=typeof document<"u"?document:null,Oi=Ht&&Ht.createElement("template"),Cu={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{let t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,r)=>{let n=t==="svg"?Ht.createElementNS(_u,e):t==="mathml"?Ht.createElementNS(Eu,e):o?Ht.createElement(e,{is:o}):Ht.createElement(e);return e==="select"&&r&&r.multiple!=null&&n.setAttribute("multiple",r.multiple),n},createText:e=>Ht.createTextNode(e),createComment:e=>Ht.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ht.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,r,n,i){let a=o?o.previousSibling:t.lastChild;if(n&&(n===i||n.nextSibling))for(;t.insertBefore(n.cloneNode(!0),o),!(n===i||!(n=n.nextSibling)););else{Oi.innerHTML=Li(r==="svg"?`<svg>${e}</svg>`:r==="mathml"?`<math>${e}</math>`:e);let u=Oi.content;if(r==="svg"||r==="mathml"){let f=u.firstChild;for(;f.firstChild;)u.appendChild(f.firstChild);u.removeChild(f)}t.insertBefore(u,o)}return[a?a.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}};var Nu=Symbol("_vtc");function Su(e,t,o){let r=e[Nu];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}var Un=Symbol("_vod"),Ui=Symbol("_vsh"),B={name:"show",beforeMount(e,{value:t},{transition:o}){e[Un]=e.style.display==="none"?"":e.style.display,o&&t?o.beforeEnter(e):sn(e,t)},mounted(e,{value:t},{transition:o}){o&&t&&o.enter(e)},updated(e,{value:t,oldValue:o},{transition:r}){!t!=!o&&(r?t?(r.beforeEnter(e),sn(e,!0),r.enter(e)):r.leave(e,()=>{sn(e,!1)}):sn(e,t))},beforeUnmount(e,{value:t}){sn(e,t)}};function sn(e,t){e.style.display=t?e[Un]:"none",e[Ui]=!t}var Du=Symbol("");var Ru=/(?:^|;)\s*display\s*:/;function Tu(e,t,o){let r=e.style,n=Fe(o),i=!1;if(o&&!n){if(t)if(Fe(t))for(let a of t.split(";")){let u=a.slice(0,a.indexOf(":")).trim();o[u]==null&&nn(r,u,"")}else for(let a in t)o[a]==null&&nn(r,a,"");for(let a in o){a==="display"&&(i=!0);let u=o[a];u!=null?Au(e,a,!Fe(t)&&t?t[a]:void 0,u)||nn(r,a,u):nn(r,a,"")}}else if(n){if(t!==o){let a=r[Du];a&&(o+=";"+a),r.cssText=o,i=Ru.test(o)}}else t&&e.removeAttribute("style");Un in e&&(e[Un]=i?r.display:"",e[Ui]&&(r.display="none"))}var Ln=/\s*!important$/;function nn(e,t,o){if(Ee(o))o.forEach(r=>nn(e,t,r));else if(o==null&&(o=""),t.startsWith("--"))Ln.test(o)?e.setProperty(t,o.replace(Ln,""),"important"):e.setProperty(t,o);else{let r=Ou(e,t);Ln.test(o)?e.setProperty(qt(r),o.replace(Ln,""),"important"):e[r]=o}}var Ai=["Webkit","Moz","ms"],Vo={};function Ou(e,t){let o=Vo[t];if(o)return o;let r=Ke(t);if(r!=="filter"&&r in e)return Vo[t]=r;r=Yt(r);for(let n=0;n<Ai.length;n++){let i=Ai[n]+r;if(i in e)return Vo[t]=i}return t}function Au(e,t,o,r){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&Fe(r)&&o===r}var Ii="http://www.w3.org/1999/xlink";function Vi(e,t,o,r,n,i=ar(t)){r&&t.startsWith("xlink:")?o==null?e.removeAttributeNS(Ii,t.slice(6,t.length)):e.setAttributeNS(Ii,t,o):o==null||i&&!cn(o)?e.removeAttribute(t):e.setAttribute(t,i?"":ct(o)?String(o):o)}function Pi(e,t,o,r,n){if(t==="innerHTML"||t==="textContent"){o!=null&&(e[t]=t==="innerHTML"?Li(o):o);return}let i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){let u=i==="OPTION"?e.getAttribute("value")||"":e.value,f=o==null?e.type==="checkbox"?"on":"":String(o);(u!==f||!("_value"in e))&&(e.value=f),o==null&&e.removeAttribute(t),e._value=o;return}let a=!1;if(o===""||o==null){let u=typeof e[t];u==="boolean"?o=cn(o):o==null&&u==="string"?(o="",a=!0):u==="number"&&(o=0,a=!0)}try{e[t]=o}catch{}a&&e.removeAttribute(n||t)}function Iu(e,t,o,r){e.addEventListener(t,o,r)}function Vu(e,t,o,r){e.removeEventListener(t,o,r)}var qi=Symbol("_vei");function Pu(e,t,o,r,n=null){let i=e[qi]||(e[qi]={}),a=i[t];if(r&&a)a.value=r;else{let[u,f]=$u(t);if(r){let h=i[t]=Fu(r,n);Iu(e,u,h,f)}else a&&(Vu(e,u,a,f),i[t]=void 0)}}var qu=/(Once|Passive|Capture)$/,Mu=/^on:?(?:Once|Passive|Capture)$/;function $u(e){let t,o;for(;(o=e.match(qu))&&!Mu.test(e);)t||(t={}),e=e.slice(0,e.length-o[1].length),t[o[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):qt(e.slice(2)),t]}var Po=0,Lu=Promise.resolve(),Uu=()=>Po||(Lu.then(()=>Po=0),Po=Date.now());function Fu(e,t){let o=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=o.attached)return;let n=o.value;if(Ee(n)){let i=r.stopImmediatePropagation;r.stopImmediatePropagation=()=>{i.call(r),r._stopped=!0};let a=n.slice(),u=[r];for(let f=0;f<a.length&&!r._stopped;f++){let h=a[f];h&&yt(h,t,5,u)}}else yt(n,t,5,[r])};return o.value=e,o.attached=Uu(),o}var Mi=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,zu=(e,t,o,r,n,i)=>{let a=n==="svg";t==="class"?Su(e,r,a):t==="style"?Tu(e,o,r):us(t)?cs(t)||Pu(e,t,o,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Hu(e,t,r,a))?(Pi(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Vi(e,t,r,a,i,t!=="value")):e._isVueCE&&(Bu(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Fe(r)))?Pi(e,Ke(t),r,i,t):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Vi(e,t,r,a))};function Hu(e,t,o,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Mi(t)&&_e(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){let n=e.tagName;if(n==="IMG"||n==="VIDEO"||n==="CANVAS"||n==="SOURCE")return!1}return Mi(t)&&Fe(o)?!1:t in e}function Bu(e,t){let o=e._def.props;if(!o)return!1;let r=Ke(t);return Array.isArray(o)?o.some(n=>Ke(n)===r):Object.keys(o).some(n=>Ke(n)===r)}var Gu=["ctrl","shift","alt","meta"],ju={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Gu.some(o=>e[`${o}Key`]&&!t.includes(o))},we=(e,t)=>{if(!e)return e;let o=e._withMods||(e._withMods={}),r=t.join(".");return o[r]||(o[r]=((n,...i)=>{for(let a=0;a<t.length;a++){let u=ju[t[a]];if(u&&u(n,t))return}return e(n,...i)}))};var Wu=Ge({patchProp:zu},Cu),$i;function Ku(){return $i||($i=bi(Wu))}var Fi=((...e)=>{let t=Ku().createApp(...e),{mount:o}=t;return t.mount=r=>{let n=Ju(r);if(!n)return;let i=t._component;!_e(i)&&!i.render&&!i.template&&(i.template=n.innerHTML),n.nodeType===1&&(n.textContent="");let a=o(n,!1,Yu(n));return n instanceof Element&&(n.removeAttribute("v-cloak"),n.setAttribute("data-v-app","")),a},t});function Yu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Ju(e){return Fe(e)?document.querySelector(e):e}var rs=typeof document<"u";function Hi(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Qu(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Hi(e.default)}var qe=Object.assign;function Fn(e,t){let o={};for(let r in t){let n=t[r];o[r]=gt(n)?n.map(e):e(n)}return o}var Es=()=>{},gt=Array.isArray;function Lo(e,t){let o={};for(let r in e)o[r]=r in t?t[r]:e[r];return o}var Bi=/#/g,Xu=/&/g,Zu=/\//g,xu=/=/g,ec=/\?/g,Gi=/\+/g,tc=/%5B/g,sc=/%5D/g,ji=/%5E/g,nc=/%60/g,Wi=/%7B/g,oc=/%7C/g,Ki=/%7D/g,rc=/%20/g;function Uo(e){return e==null?"":encodeURI(""+e).replace(oc,"|").replace(tc,"[").replace(sc,"]")}function Yi(e){return Uo(e).replace(Wi,"{").replace(Ki,"}").replace(ji,"^")}function Mo(e){return Uo(e).replace(Gi,"%2B").replace(rc,"+").replace(Bi,"%23").replace(Xu,"%26").replace(nc,"`").replace(Wi,"{").replace(Ki,"}").replace(ji,"^")}function ic(e){return Mo(e).replace(xu,"%3D")}function ac(e){return Uo(e).replace(Bi,"%23").replace(ec,"%3F")}function Ji(e){return ac(e).replace(Zu,"%2F")}function _s(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}var lc=/\/$/,dc=e=>e.replace(lc,"");function zn(e,t,o="/"){let r,n={},i="",a="",u=t.indexOf("#"),f=t.indexOf("?");return f=u>=0&&f>u?-1:f,f>=0&&(r=t.slice(0,f),i=t.slice(f,u>0?u:t.length),n=e(i.slice(1))),u>=0&&(r=r||t.slice(0,u),a=t.slice(u,t.length)),r=cc(r??t,o),{fullPath:r+i+a,path:r,query:n,hash:_s(a)}}function Qi(e,t){let o=t.query?e(t.query):"";return t.path+(o&&"?")+o+(t.hash||"")}function Fo(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Xi(e,t,o){let r=t.matched.length-1,n=o.matched.length-1;return r>-1&&r===n&&ns(t.matched[r],o.matched[n])&&zo(t.params,o.params)&&e(t.query)===e(o.query)&&t.hash===o.hash}function ns(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function zo(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var o in e)if(!uc(e[o],t[o]))return!1;return!0}function uc(e,t){return gt(e)?zi(e,t):gt(t)?zi(t,e):e?.valueOf()===t?.valueOf()}function zi(e,t){return gt(t)?e.length===t.length&&e.every((o,r)=>o===t[r]):e.length===1&&e[0]===t}function cc(e,t){if(e.startsWith("/"))return e;if(!e)return t;let o=t.split("/"),r=e.split("/"),n=r[r.length-1];(n===".."||n===".")&&r.push("");let i=o.length-1,a,u;for(a=0;a<r.length;a++)if(u=r[a],u!==".")if(u==="..")i>1&&i--;else break;return o.slice(0,i).join("/")+"/"+r.slice(a).join("/")}var Gt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},Hn=(function(e){return e.pop="pop",e.push="push",e})({}),Bn=(function(e){return e.back="back",e.forward="forward",e.unknown="",e})({});function Zi(e){if(!e)if(rs){let t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),dc(e)}var pc=/^[^#]+#/;function xi(e,t){return e.replace(pc,"#")+t}function fc(e,t){let o=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-o.left-(t.left||0),top:r.top-o.top-(t.top||0)}}var on=()=>({left:window.scrollX,top:window.scrollY});function ea(e){let t;if("el"in e){let o=e.el,r=typeof o=="string"&&o.startsWith("#"),n=typeof o=="string"?r?document.getElementById(o.slice(1)):document.querySelector(o):o;if(!n)return;t=fc(n,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Ho(e,t){return(history.state?history.state.position-t:-1)+e}var $o=new Map;function ta(e,t){$o.set(e,t)}function sa(e){let t=$o.get(e);return $o.delete(e),t}function mc(e){return typeof e=="string"||e&&typeof e=="object"}function Bo(e){return typeof e=="string"||typeof e=="symbol"}var Be=(function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e})({}),na=Symbol("");var i5={[Be.MATCHER_NOT_FOUND]({location:e,currentLocation:t}){return`No match for
|
|
${JSON.stringify(e)}${t?`
|
|
while being at
|
|
`+JSON.stringify(t):""}`},[Be.NAVIGATION_GUARD_REDIRECT]({from:e,to:t}){return`Redirected from "${e.fullPath}" to "${vc(t)}" via a navigation guard.`},[Be.NAVIGATION_ABORTED]({from:e,to:t}){return`Navigation aborted from "${e.fullPath}" to "${t.fullPath}" via a navigation guard.`},[Be.NAVIGATION_CANCELLED]({from:e,to:t}){return`Navigation cancelled from "${e.fullPath}" to "${t.fullPath}" with a new navigation.`},[Be.NAVIGATION_DUPLICATED]({from:e,to:t}){return`Avoided redundant navigation to current location: "${e.fullPath}".`}};function os(e,t){return qe(new Error,{type:e,[na]:!0},t)}function Vt(e,t){return e instanceof Error&&na in e&&(t==null||!!(e.type&t))}var hc=["params","query","hash"];function vc(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;let t={};for(let o of hc)o in e&&(t[o]=e[o]);return JSON.stringify(t,null,2)}function oa(e){let t={};if(e===""||e==="?")return t;let o=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;r<o.length;++r){let n=o[r].replace(Gi," "),i=n.indexOf("="),a=_s(i<0?n:n.slice(0,i)),u=i<0?null:_s(n.slice(i+1));if(a in t){let f=t[a];gt(f)||(f=t[a]=[f]),f.push(u)}else t[a]=u}return t}function Go(e){let t="";for(let o in e){let r=e[o];if(o=ic(o),r==null){r!==void 0&&(t+=(t.length?"&":"")+o);continue}(gt(r)?r.map(n=>n&&Mo(n)):[r&&Mo(r)]).forEach(n=>{n!==void 0&&(t+=(t.length?"&":"")+o,n!=null&&(t+="="+n))})}return t}function ra(e){let t={};for(let o in e){let r=e[o];r!==void 0&&(t[o]=gt(r)?r.map(n=>n==null?null:""+n):r==null?r:""+r)}return t}var ia=Symbol(""),jo=Symbol(""),Gn=Symbol(""),jn=Symbol(""),Wn=Symbol("");function Cs(){let e=[];function t(r){return e.push(r),()=>{let n=e.indexOf(r);n>-1&&e.splice(n,1)}}function o(){e=[]}return{add:t,list:()=>e.slice(),reset:o}}function Bt(e,t,o,r,n,i=a=>a()){let a=r&&(r.enterCallbacks[n]=r.enterCallbacks[n]||[]);return()=>new Promise((u,f)=>{let h=p=>{p===!1?f(os(Be.NAVIGATION_ABORTED,{from:o,to:t})):p instanceof Error?f(p):mc(p)?f(os(Be.NAVIGATION_GUARD_REDIRECT,{from:t,to:p})):(a&&r.enterCallbacks[n]===a&&typeof p=="function"&&a.push(p),u())},v=i(()=>e.call(r&&r.instances[n],t,o,h)),k=Promise.resolve(v);e.length<3&&(k=k.then(h)),k.catch(p=>f(p))})}function Kn(e,t,o,r,n=i=>i()){let i=[];for(let a of e)for(let u in a.components){let f=a.components[u];if(!(t!=="beforeRouteEnter"&&!a.instances[u]))if(Hi(f)){let h=(f.__vccOpts||f)[t];h&&i.push(Bt(h,o,r,a,u,n))}else{let h=f();i.push(()=>h.then(v=>{if(!v)throw new Error(`Couldn't resolve component "${u}" at "${a.path}"`);let k=Qu(v)?v.default:v;a.mods[u]=v,a.components[u]=k;let p=(k.__vccOpts||k)[t];return p&&Bt(p,o,r,a,u,n)()}))}}return i}function aa(e,t){let o=[],r=[],n=[],i=Math.max(t.matched.length,e.matched.length);for(let a=0;a<i;a++){let u=t.matched[a];u&&(e.matched.find(h=>ns(h,u))?r.push(u):o.push(u));let f=e.matched[a];f&&(t.matched.find(h=>ns(h,f))||n.push(f))}return[o,r,n]}var yc=()=>location.protocol+"//"+location.host;function ga(e,t){let{pathname:o,search:r,hash:n}=t,i=e.indexOf("#");if(i>-1){let a=n.includes(e.slice(i))?e.slice(i).length:1,u=n.slice(a);return u[0]!=="/"&&(u="/"+u),Fo(u,"")}return Fo(o,e)+r+n}function gc(e,t,o,r){let n=[],i=[],a=null,u=({state:p})=>{let g=ga(e,location),w=o.value,b=t.value,T=0;if(p){if(o.value=g,t.value=p,a&&a===w){a=null;return}T=b?p.position-b.position:0}else r(g);n.forEach(N=>{N(o.value,w,{delta:T,type:Hn.pop,direction:T?T>0?Bn.forward:Bn.back:Bn.unknown})})};function f(){a=o.value}function h(p){n.push(p);let g=()=>{let w=n.indexOf(p);w>-1&&n.splice(w,1)};return i.push(g),g}function v(){if(document.visibilityState==="hidden"){let{history:p}=window;if(!p.state)return;p.replaceState(qe({},p.state,{scroll:on()}),"")}}function k(){for(let p of i)p();i=[],window.removeEventListener("popstate",u),window.removeEventListener("pagehide",v),document.removeEventListener("visibilitychange",v)}return window.addEventListener("popstate",u),window.addEventListener("pagehide",v),document.addEventListener("visibilitychange",v),{pauseListeners:f,listen:h,destroy:k}}function la(e,t,o,r=!1,n=!1){return{back:e,current:t,forward:o,replaced:r,position:window.history.length,scroll:n?on():null}}function bc(e){let{history:t,location:o}=window,r={value:ga(e,o)},n={value:t.state};n.value||i(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(f,h,v){let k=e.indexOf("#"),p=k>-1?(o.host&&document.querySelector("base")?e:e.slice(k))+f:yc()+e+f;try{t[v?"replaceState":"pushState"](h,"",p),n.value=h}catch(g){console.error(g),o[v?"replace":"assign"](p)}}function a(f,h){i(f,qe({},t.state,la(n.value.back,f,n.value.forward,!0),h,{position:n.value.position}),!0),r.value=f}function u(f,h){let v=qe({},n.value,t.state,{forward:f,scroll:on()});i(v.current,v,!0),i(f,qe({},la(r.value,f,null),{position:v.position+1},h),!1),r.value=f}return{location:r,state:n,push:u,replace:a}}function ba(e){e=Zi(e);let t=bc(e),o=gc(e,t.state,t.location,t.replace);function r(i,a=!0){a||o.pauseListeners(),history.go(i)}let n=qe({location:"",base:e,go:r,createHref:xi.bind(null,e)},t,o);return Object.defineProperty(n,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(n,"state",{enumerable:!0,get:()=>t.state.value}),n}var is=(function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e})({}),Je=(function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e})(Je||{}),wc={type:is.Static,value:""},kc=/[a-zA-Z0-9_]/;function _c(e){if(!e)return[[]];if(e==="/")return[[wc]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(g){throw new Error(`ERR (${o})/"${h}": ${g}`)}let o=Je.Static,r=o,n=[],i;function a(){i&&n.push(i),i=[]}let u=0,f,h="",v="";function k(){h&&(o===Je.Static?i.push({type:is.Static,value:h}):o===Je.Param||o===Je.ParamRegExp||o===Je.ParamRegExpEnd?(i.length>1&&(f==="*"||f==="+")&&t(`A repeatable param (${h}) must be alone in its segment. eg: '/:ids+.`),i.push({type:is.Param,value:h,regexp:v,repeatable:f==="*"||f==="+",optional:f==="*"||f==="?"})):t("Invalid state to consume buffer"),h="")}function p(){h+=f}for(;u<e.length;){if(f=e[u++],f==="\\"&&o!==Je.ParamRegExp){r=o,o=Je.EscapeNext;continue}switch(o){case Je.Static:f==="/"?(h&&k(),a()):f===":"?(k(),o=Je.Param):p();break;case Je.EscapeNext:p(),o=r;break;case Je.Param:f==="("?o=Je.ParamRegExp:kc.test(f)?p():(k(),o=Je.Static,f!=="*"&&f!=="?"&&f!=="+"&&u--);break;case Je.ParamRegExp:f===")"?v[v.length-1]=="\\"?v=v.slice(0,-1)+f:o=Je.ParamRegExpEnd:v+=f;break;case Je.ParamRegExpEnd:k(),o=Je.Static,f!=="*"&&f!=="?"&&f!=="+"&&u--,v="";break;default:t("Unknown state");break}}return o===Je.ParamRegExp&&t(`Unfinished custom RegExp for param "${h}"`),k(),a(),n}var da="[^/]+?",Ec={sensitive:!1,strict:!1,start:!0,end:!0},ot=(function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e})(ot||{}),Cc=/[.+*?^${}()[\]/\\]/g;function Nc(e,t){let o=qe({},Ec,t),r=[],n=o.start?"^":"",i=[];for(let h of e){let v=h.length?[]:[ot.Root];o.strict&&!h.length&&(n+="/");for(let k=0;k<h.length;k++){let p=h[k],g=ot.Segment+(o.sensitive?ot.BonusCaseSensitive:0);if(p.type===is.Static)k||(n+="/"),n+=p.value.replace(Cc,"\\$&"),g+=ot.Static;else if(p.type===is.Param){let{value:w,repeatable:b,optional:T,regexp:N}=p;i.push({name:w,repeatable:b,optional:T});let R=N||da;if(R!==da){g+=ot.BonusCustomRegExp;try{`${R}`}catch(C){throw new Error(`Invalid custom RegExp for param "${w}" (${R}): `+C.message)}}let I=b?`((?:${R})(?:/(?:${R}))*)`:`(${R})`;k||(I=T&&h.length<2?`(?:/${I})`:"/"+I),T&&(I+="?"),n+=I,g+=ot.Dynamic,T&&(g+=ot.BonusOptional),b&&(g+=ot.BonusRepeatable),R===".*"&&(g+=ot.BonusWildcard)}v.push(g)}r.push(v)}if(o.strict&&o.end){let h=r.length-1;r[h][r[h].length-1]+=ot.BonusStrict}o.strict||(n+="/?"),o.end?n+="$":o.strict&&!n.endsWith("/")&&(n+="(?:/|$)");let a=new RegExp(n,o.sensitive?"":"i");function u(h){let v=h.match(a),k={};if(!v)return null;for(let p=1;p<v.length;p++){let g=v[p]||"",w=i[p-1];k[w.name]=g&&w.repeatable?g.split("/"):g}return k}function f(h){let v="",k=!1;for(let p of e){(!k||!v.endsWith("/"))&&(v+="/"),k=!1;for(let g of p)if(g.type===is.Static)v+=g.value;else if(g.type===is.Param){let{value:w,repeatable:b,optional:T}=g,N=w in h?h[w]:"";if(gt(N)&&!b)throw new Error(`Provided param "${w}" is an array but it is not repeatable (* or + modifiers)`);let R=gt(N)?N.join("/"):N;if(!R)if(T)p.length<2&&(v.endsWith("/")?v=v.slice(0,-1):k=!0);else throw new Error(`Missing required param "${w}"`);v+=R}}return v||"/"}return{re:a,score:r,keys:i,parse:u,stringify:f}}function Sc(e,t){let o=0;for(;o<e.length&&o<t.length;){let r=t[o]-e[o];if(r)return r;o++}return e.length<t.length?e.length===1&&e[0]===ot.Static+ot.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===ot.Static+ot.Segment?1:-1:0}function wa(e,t){let o=0,r=e.score,n=t.score;for(;o<r.length&&o<n.length;){let i=Sc(r[o],n[o]);if(i)return i;o++}if(Math.abs(n.length-r.length)===1){if(ua(r))return 1;if(ua(n))return-1}return n.length-r.length}function ua(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var Dc={strict:!1,end:!0,sensitive:!1};function Rc(e,t,o){let r=Nc(_c(e.path),o),n=qe(r,{record:e,parent:t,children:[],alias:[]});return t&&!n.record.aliasOf==!t.record.aliasOf&&t.children.push(n),n}function Tc(e,t){let o=[],r=new Map;t=Lo(Dc,t);function n(k){return r.get(k)}function i(k,p,g){let w=!g,b=pa(k);b.aliasOf=g&&g.record;let T=Lo(t,k),N=[b];if("alias"in k){let C=typeof k.alias=="string"?[k.alias]:k.alias;for(let A of C)N.push(pa(qe({},b,{components:g?g.record.components:b.components,path:A,aliasOf:g?g.record:b})))}let R,I;for(let C of N){let{path:A}=C;if(p&&A[0]!=="/"){let P=p.record.path,x=P[P.length-1]==="/"?"":"/";C.path=p.record.path+(A&&x+A)}if(R=Rc(C,p,T),g?g.alias.push(R):(I=I||R,I!==R&&I.alias.push(R),w&&k.name&&!fa(R)&&a(k.name)),ka(R)&&f(R),b.children){let P=b.children;for(let x=0;x<P.length;x++)i(P[x],R,g&&g.children[x])}g=g||R}return I?()=>{a(I)}:Es}function a(k){if(Bo(k)){let p=r.get(k);p&&(r.delete(k),o.splice(o.indexOf(p),1),p.children.forEach(a),p.alias.forEach(a))}else{let p=o.indexOf(k);p>-1&&(o.splice(p,1),k.record.name&&r.delete(k.record.name),k.children.forEach(a),k.alias.forEach(a))}}function u(){return o}function f(k){let p=Ic(k,o);o.splice(p,0,k),k.record.name&&!fa(k)&&r.set(k.record.name,k)}function h(k,p){let g,w={},b,T;if("name"in k&&k.name){if(g=r.get(k.name),!g)throw os(Be.MATCHER_NOT_FOUND,{location:k});T=g.record.name,w=qe(ca(p.params,g.keys.filter(I=>!I.optional).concat(g.parent?g.parent.keys.filter(I=>I.optional):[]).map(I=>I.name)),k.params&&ca(k.params,g.keys.map(I=>I.name))),b=g.stringify(w)}else if(k.path!=null)b=k.path,g=o.find(I=>I.re.test(b)),g&&(w=g.parse(b),T=g.record.name);else{if(g=p.name?r.get(p.name):o.find(I=>I.re.test(p.path)),!g)throw os(Be.MATCHER_NOT_FOUND,{location:k,currentLocation:p});T=g.record.name,w=qe({},p.params,k.params),b=g.stringify(w)}let N=[],R=g;for(;R;)N.unshift(R.record),R=R.parent;return{name:T,path:b,params:w,matched:N,meta:Ac(N)}}e.forEach(k=>i(k));function v(){o.length=0,r.clear()}return{addRoute:i,resolve:h,removeRoute:a,clearRoutes:v,getRoutes:u,getRecordMatcher:n}}function ca(e,t){let o={};for(let r of t)r in e&&(o[r]=e[r]);return o}function pa(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Oc(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function Oc(e){let t={},o=e.props||!1;if("component"in e)t.default=o;else for(let r in e.components)t[r]=typeof o=="object"?o[r]:o;return t}function fa(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Ac(e){return e.reduce((t,o)=>qe(t,o.meta),{})}function Ic(e,t){let o=0,r=t.length;for(;o!==r;){let i=o+r>>1;wa(e,t[i])<0?r=i:o=i+1}let n=Vc(e);return n&&(r=t.lastIndexOf(n,r-1)),r}function Vc(e){let t=e;for(;t=t.parent;)if(ka(t)&&wa(e,t)===0)return t}function ka({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function ma(e){let t=lt(Gn),o=lt(jn),r=!1,n=null,i=tt(()=>{let v=Lt(e.to);return t.resolve(v)}),a=tt(()=>{let{matched:v}=i.value,{length:k}=v,p=v[k-1],g=o.matched;if(!p||!g.length)return-1;let w=g.findIndex(ns.bind(null,p));if(w>-1)return w;let b=ha(v[k-2]);return k>1&&ha(p)===b&&g[g.length-1].path!==b?g.findIndex(ns.bind(null,v[k-2])):w}),u=tt(()=>a.value>-1&&Lc(o.params,i.value.params)),f=tt(()=>a.value>-1&&a.value===o.matched.length-1&&zo(o.params,i.value.params));function h(v={}){if($c(v)){let k=t[Lt(e.replace)?"replace":"push"](Lt(e.to)).catch(Es);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>k),k}return Promise.resolve()}return{route:i,href:tt(()=>i.value.href),isActive:u,isExactActive:f,navigate:h}}function Pc(e){return e.length===1?e[0]:e}var qc=xs({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:ma,setup(e,{slots:t}){let o=ze(ma(e)),{options:r}=lt(Gn),n=tt(()=>({[va(e.activeClass,r.linkActiveClass,"router-link-active")]:o.isActive,[va(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:o.isExactActive}));return()=>{let i=t.default&&Pc(t.default(o));return e.custom?i:Ne("a",{"aria-current":o.isExactActive?e.ariaCurrentValue:null,href:o.href,onClick:o.navigate,class:n.value},i)}}}),Mc=qc;function $c(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Lc(e,t){for(let o in t){let r=t[o],n=e[o];if(typeof r=="string"){if(r!==n)return!1}else if(!gt(n)||n.length!==r.length||r.some((i,a)=>i.valueOf()!==n[a].valueOf()))return!1}return!0}function ha(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}var va=(e,t,o)=>e??t??o,Uc=xs({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:o}){let r=lt(Wn),n=tt(()=>e.route||r.value),i=lt(jo,0),a=tt(()=>{let h=Lt(i),{matched:v}=n.value,k;for(;(k=v[h])&&!k.components;)h++;return h}),u=tt(()=>n.value.matched[a.value]);ts(jo,tt(()=>a.value+1)),ts(ia,u),ts(Wn,n);let f=Ze();return He(()=>[f.value,u.value,e.name],([h,v,k],[p,g,w])=>{v&&(v.instances[k]=h,g&&g!==v&&h&&h===p&&(v.leaveGuards.size||(v.leaveGuards=g.leaveGuards),v.updateGuards.size||(v.updateGuards=g.updateGuards))),h&&v&&(!g||!ns(v,g)||!p)&&(v.enterCallbacks[k]||[]).forEach(b=>b(h))},{flush:"post"}),()=>{let h=n.value,v=e.name,k=u.value,p=k&&k.components[v];if(!p)return ya(o.default,{Component:p,route:h});let g=k.props[v],w=g?g===!0?h.params:typeof g=="function"?g(h):g:null,T=Ne(p,qe({},w,t,{onVnodeUnmounted:N=>{N.component.isUnmounted&&(k.instances[v]=null)},ref:f}));return ya(o.default,{Component:T,route:h})||T}}});function ya(e,t){if(!e)return null;let o=e(t);return o.length===1?o[0]:o}var Wo=Uc;function _a(e){let t=Tc(e.routes,e),o=e.parseQuery||oa,r=e.stringifyQuery||Go,n=e.history,i=Cs(),a=Cs(),u=Cs(),f=bn(Gt),h=Gt;rs&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");let v=Fn.bind(null,L=>""+L),k=Fn.bind(null,Ji),p=Fn.bind(null,_s);function g(L,te){let U,W;return Bo(L)?(U=t.getRecordMatcher(L),W=te):W=L,t.addRoute(W,U)}function w(L){let te=t.getRecordMatcher(L);te&&t.removeRoute(te)}function b(){return t.getRoutes().map(L=>L.record)}function T(L){return!!t.getRecordMatcher(L)}function N(L,te){if(te=qe({},te||f.value),typeof L=="string"){let _=zn(o,L,te.path),S=t.resolve({path:_.path},te),q=n.createHref(_.fullPath);return qe(_,S,{params:p(S.params),hash:_s(_.hash),redirectedFrom:void 0,href:q})}let U;if(L.path!=null)U=qe({},L,{path:zn(o,L.path,te.path).path});else{let _=qe({},L.params);for(let S in _)_[S]==null&&delete _[S];U=qe({},L,{params:k(_)}),te.params=k(te.params)}let W=t.resolve(U,te),fe=L.hash||"";W.params=v(p(W.params));let Ce=Qi(r,qe({},L,{hash:Yi(fe),path:W.path})),ce=n.createHref(Ce);return qe({fullPath:Ce,hash:fe,query:r===Go?ra(L.query):L.query||{}},W,{redirectedFrom:void 0,href:ce})}function R(L){return typeof L=="string"?zn(o,L,f.value.path):qe({},L)}function I(L,te){if(h!==L)return os(Be.NAVIGATION_CANCELLED,{from:te,to:L})}function C(L){return x(L)}function A(L){return C(qe(R(L),{replace:!0}))}function P(L,te){let U=L.matched[L.matched.length-1];if(U&&U.redirect){let{redirect:W}=U,fe=typeof W=="function"?W(L,te):W;return typeof fe=="string"&&(fe=fe.includes("?")||fe.includes("#")?fe=R(fe):{path:fe},fe.params={}),qe({query:L.query,hash:L.hash,params:fe.path!=null?{}:L.params},fe)}}function x(L,te){let U=h=N(L),W=f.value,fe=L.state,Ce=L.force,ce=L.replace===!0,_=P(U,W);if(_)return x(qe(R(_),{state:typeof _=="object"?qe({},fe,_.state):fe,force:Ce,replace:ce}),te||U);let S=U;S.redirectedFrom=te;let q;return!Ce&&Xi(r,W,U)&&(q=os(Be.NAVIGATION_DUPLICATED,{to:S,from:W}),Se(W,W,!0,!1)),(q?Promise.resolve(q):z(S,W)).catch(F=>Vt(F)?Vt(F,Be.NAVIGATION_GUARD_REDIRECT)?F:Re(F):pe(F,S,W)).then(F=>{if(F){if(Vt(F,Be.NAVIGATION_GUARD_REDIRECT))return x(qe({replace:ce},R(F.to),{state:typeof F.to=="object"?qe({},fe,F.to.state):fe,force:Ce}),te||S)}else F=se(S,W,!0,ce,fe);return ae(S,W,F),F})}function Q(L,te){let U=I(L,te);return U?Promise.reject(U):Promise.resolve()}function K(L){let te=j.values().next().value;return te&&typeof te.runWithContext=="function"?te.runWithContext(L):L()}function z(L,te){let U,[W,fe,Ce]=aa(L,te);U=Kn(W.reverse(),"beforeRouteLeave",L,te);for(let _ of W)_.leaveGuards.forEach(S=>{U.push(Bt(S,L,te))});let ce=Q.bind(null,L,te);return U.push(ce),le(U).then(()=>{U=[];for(let _ of i.list())U.push(Bt(_,L,te));return U.push(ce),le(U)}).then(()=>{U=Kn(fe,"beforeRouteUpdate",L,te);for(let _ of fe)_.updateGuards.forEach(S=>{U.push(Bt(S,L,te))});return U.push(ce),le(U)}).then(()=>{U=[];for(let _ of Ce)if(_.beforeEnter)if(gt(_.beforeEnter))for(let S of _.beforeEnter)U.push(Bt(S,L,te));else U.push(Bt(_.beforeEnter,L,te));return U.push(ce),le(U)}).then(()=>(L.matched.forEach(_=>_.enterCallbacks={}),U=Kn(Ce,"beforeRouteEnter",L,te,K),U.push(ce),le(U))).then(()=>{U=[];for(let _ of a.list())U.push(Bt(_,L,te));return U.push(ce),le(U)}).catch(_=>Vt(_,Be.NAVIGATION_CANCELLED)?_:Promise.reject(_))}function ae(L,te,U){u.list().forEach(W=>K(()=>W(L,te,U)))}function se(L,te,U,W,fe){let Ce=I(L,te);if(Ce)return Ce;let ce=te===Gt,_=rs?history.state:{};U&&(W||ce?n.replace(L.fullPath,qe({scroll:ce&&_&&_.scroll},fe)):n.push(L.fullPath,fe)),f.value=L,Se(L,te,U,ce),Re()}let re;function ue(){re||(re=n.listen((L,te,U)=>{if(!oe.listening)return;let W=N(L),fe=P(W,oe.currentRoute.value);if(fe){x(qe(fe,{replace:!0,force:!0}),W).catch(Es);return}h=W;let Ce=f.value;rs&&ta(Ho(Ce.fullPath,U.delta),on()),z(W,Ce).catch(ce=>Vt(ce,Be.NAVIGATION_ABORTED|Be.NAVIGATION_CANCELLED)?ce:Vt(ce,Be.NAVIGATION_GUARD_REDIRECT)?(x(qe(R(ce.to),{force:!0}),W).then(_=>{Vt(_,Be.NAVIGATION_ABORTED|Be.NAVIGATION_DUPLICATED)&&!U.delta&&U.type===Hn.pop&&n.go(-1,!1)}).catch(Es),Promise.reject()):(U.delta&&n.go(-U.delta,!1),pe(ce,W,Ce))).then(ce=>{ce=ce||se(W,Ce,!1),ce&&(U.delta&&!Vt(ce,Be.NAVIGATION_CANCELLED)?n.go(-U.delta,!1):U.type===Hn.pop&&Vt(ce,Be.NAVIGATION_ABORTED|Be.NAVIGATION_DUPLICATED)&&n.go(-1,!1)),ae(W,Ce,ce)}).catch(Es)}))}let ke=Cs(),he=Cs(),me;function pe(L,te,U){Re(L);let W=he.list();return W.length?W.forEach(fe=>fe(L,te,U)):console.error(L),Promise.reject(L)}function Te(){return me&&f.value!==Gt?Promise.resolve():new Promise((L,te)=>{ke.add([L,te])})}function Re(L){return me||(me=!L,ue(),ke.list().forEach(([te,U])=>L?U(L):te()),ke.reset()),L}function Se(L,te,U,W){let{scrollBehavior:fe}=e;if(!rs||!fe)return Promise.resolve();let Ce=!U&&sa(Ho(L.fullPath,0))||(W||!U)&&history.state&&history.state.scroll||null;return _t().then(()=>fe(L,te,Ce)).then(ce=>ce&&ea(ce)).catch(ce=>pe(ce,L,te))}let D=L=>n.go(L),V,j=new Set,oe={currentRoute:f,listening:!0,addRoute:g,removeRoute:w,clearRoutes:t.clearRoutes,hasRoute:T,getRoutes:b,resolve:N,options:e,push:C,replace:A,go:D,back:()=>D(-1),forward:()=>D(1),beforeEach:i.add,beforeResolve:a.add,afterEach:u.add,onError:he.add,isReady:Te,install(L){L.component("RouterLink",Mc),L.component("RouterView",Wo),L.config.globalProperties.$router=oe,Object.defineProperty(L.config.globalProperties,"$route",{enumerable:!0,get:()=>Lt(f)}),rs&&!V&&f.value===Gt&&(V=!0,C(n.location).catch(W=>{}));let te={};for(let W in Gt)Object.defineProperty(te,W,{get:()=>f.value[W],enumerable:!0});L.provide(Gn,oe),L.provide(jn,Fs(te)),L.provide(Wn,f);let U=L.unmount;j.add(L),L.unmount=function(){j.delete(L),j.size<1&&(h=Gt,re&&re(),re=null,f.value=Gt,V=!1,me=!1),U()}}};function le(L){return L.reduce((te,U)=>te.then(()=>K(U)),Promise.resolve())}return oe}function Ea(e){return lt(jn)}function Ca(e,t){return t?.split(".").reduce((o,r)=>o?.[r],e)}function Ko(e=null,t=new Map){let o=ze({}),r=[],n=!1,i=new Proxy(o,{get(a,u){return typeof u=="string"&&u.startsWith("__v_")||Reflect.has(a,u)?Reflect.get(a,u):e?.[u]}});return Object.defineProperty(o,"parent",{value:e,configurable:!0}),Object.defineProperty(o,"viewState",{get:()=>i}),i.watch=(a,u,f=!1)=>{let h=typeof a=="function"?()=>a(i):()=>Ca(i,a),v=He(h,u,{deep:f,flush:"post"});return r.push(v),_t(()=>{n||u(h(),h())}),v},i.watchGroup=(a,u)=>i.watch(()=>a.map(f=>Ca(i,f)),u,!0),i.on=(a,u)=>{if(a==="dispose")return r.push(u),()=>{};t.has(a)||t.set(a,new Set),t.get(a).add(u);let f=()=>t.get(a)?.delete(u);return r.push(f),f},i.emit=(a,...u)=>{for(let f of[...t.get(a)||[]])f({},...u)},i.dispose=()=>{n=!0,r.splice(0).reverse().forEach(a=>a())},Ls(i.dispose),i}function mt(){let e=new Set,t=new Set,o=!1,r=(i,a=0)=>{if(o)return;let u=setTimeout(()=>{e.delete(u),i()},a);return e.add(u),u};r.cancel=i=>{clearTimeout(i),e.delete(i)};let n=(i,a)=>{if(o)return;let u=setInterval(i,a);return t.add(u),u};return n.cancel=i=>{clearInterval(i),t.delete(i)},Ls(()=>{o=!0,e.forEach(clearTimeout),t.forEach(clearInterval)}),{timeout:r,interval:n}}function as(){let e=[];return Ls(()=>e.forEach(t=>t())),(t,o,r,n)=>{t.addEventListener(o,r,n),e.push(()=>t.removeEventListener(o,r,n))}}var Na=function(e,t,o,r){e.title="Main",e.user={status:"connection"},e.site_options,e.toasts=[],e.removeToast=function(f){let h=e.toasts.indexOf(f);h!==-1&&e.toasts.splice(h,1)},e.addToast=function(f){return e.toasts.push(f),r(function(){e.removeToast(f)},8e3),f},e.path=o.url(),e.paths=o.path().substring(1).split("/"),e.darkMode=function(f){localStorage.setItem("darkMode",f),e.isDarkMode=f;let h="/css/prism-okaidia.css",v="/css/prism.css";if(f){$("body").addClass("dark-mode");let p=document.createElement("link");p.href=h,p.rel="stylesheet",document.head.append(p),$(`link[href='${v}']`).remove()}else{$("body").removeClass("dark-mode");let p=document.createElement("link");p.href=v,p.rel="stylesheet",document.head.append(p),$(`link[href='${h}']`).remove()}var k=document.querySelector(".floatingchat-container-wrap-mo498 .floating-chat-kofi-text-container-wrap");k&&(k.style.backgroundColor=f?"#FAF9F6":"#1A1815",k.style.color=f?"#1A1815":"#FAF9F6"),e.emit("dark-mode",f)},e.darkMode(localStorage.getItem("darkMode")=="true");function n(){t.get("/api/user").then(f=>{f&&(e.user=f.data)},()=>{e.user=null})}n();function i(){t.get("/api/options").then(f=>{f&&(e.site_options=f.data)},()=>{e.site_options=null})}i();function a(){t.get("/api/message").then(f=>{f&&(e.generalMessage=f.data)},()=>{e.generalMessage=null})}a();function u(f,h){h&&(e.title=h.title),e.path=o.url(),e.paths=o.path().substring(1).split("/")}e.on("routeChange",u),e.on("routeUpdate",u)},Sa=function(e,t){let o=as()},Da=function(e,t,o,r,n){e.terms="",e.options={expirationMode:"remove",update:!1,image:!0,pdf:!0,notebook:!0,loc:!0,link:!0},e.saving=!1,e.message=null,e.error=null,n.load().then(u=>{e.quota=u},console.error);function i(){t.get("/api/user/default").then(u=>{let f=u.data||{};f.terms&&(e.terms=f.terms.join(`
|
|
`)),e.options=Object.assign({},e.options,f.options)})}i();let a=null;e.saveDefault=u=>{u&&u.preventDefault&&u.preventDefault();let f={terms:e.terms.split(`
|
|
`).map(h=>h.trim()).filter(h=>h.length>0),options:e.options};e.saving=!0,e.error=null,t.post("/api/user/default",f).then(()=>{i(),e.saving=!1,e.message="Saved",a&&r.cancel(a),a=r(()=>{e.message=null},2500)},h=>{e.saving=!1;let v=h&&h.data&&h.data.error;o("ERRORS."+v).then(k=>{e.error=k},()=>{e.error="Unable to save your defaults. Please try again."})})},e.deleteAccount=()=>{confirm("Delete your account? All your anonymized repositories, gists, and pull requests will be removed, and your personal data will be erased. This cannot be undone.")&&(e.deletingAccount=!0,t.delete("/api/user").then(()=>{window.location.href="/"},()=>{e.deletingAccount=!1,e.deleteError="Unable to delete the account. Please try again."}))}},Ra=function(e,t,o){e.repoId=null,e.repoUrl=null,e.claim=()=>{t.post("/api/repo/claim",{repoId:e.repoId,repoUrl:e.repoUrl}).then(r=>{o.url("/dashboard")},r=>{e.error=r.data,e.claimForm.repoUrl.setValidity("not_found",!1),e.claimForm.repoId.setValidity("not_found",!1)})}},Ta=function(e,t,o,r,n){e.user&&!e.user.status&&o.url("/dashboard"),e.watch("user.status",()=>{e.user&&!e.user.status&&o.url("/dashboard")}),e.features=[{key:"anonymize",num:"01",eyebrow:"Anonymize",title:"Double-anonymous,",accent:"your rules.",text:"Choose what reviewers may see: links, images, PDFs, notebooks, GitHub Pages. Add your own terms, with regex if you need it, and pick the expiration date.",cta:"Start an anonymization",href:"/anonymize",url:"anonymous.4open.science/anonymize",img:"/imgs/anonymize.png",alt:"The anonymize form: source repository, terms to redact, options and a live README preview"},{key:"review",num:"02",eyebrow:"Review",title:"Reviewers browse",accent:"the real thing.",text:"Highlighted source code, rendered PDFs, images, and notebooks, in a familiar file explorer. GitHub Pages is also supported.",cta:"Open the example",href:"https://anonymous.4open.science/r/840c8c57-3c32-451e-bf12-0e20be300389/",target:"_self",url:"anonymous.4open.science/r/840c8c57-\u2026",img:"/imgs/explorer.png",alt:"The repository explorer with a file tree and a rendered README"},{key:"manage",num:"03",eyebrow:"Manage",title:"One dashboard,",accent:"until the decision.",text:"Monitor views, edit configuration, remove or update your repository. Program chairs can group submissions under a conference with one shared expiry.",cta:"Open the dashboard",href:"/dashboard",needsUser:!0,url:"anonymous.4open.science/dashboard",img:"/imgs/dashboard.png",alt:"The dashboard listing anonymized repositories with status, views and expiry"}],e.feature=e.features[0].key,e.selectFeature=function(u){e.feature=u},e.featureHref=function(u){return u.needsUser&&!e.user?"/signin":u.href},e.featureTarget=function(u){return u.needsUser&&!e.user?"_self":u.target||void 0},e.featureKeydown=function(u,f){let h={ArrowDown:1,ArrowRight:1,ArrowUp:-1,ArrowLeft:-1,Home:"first",End:"last"}[u.key];if(h===void 0)return;u.preventDefault();let v=e.features.length,k=h==="first"?0:h==="last"?v-1:(f+h+v)%v;e.feature=e.features[k].key,n(()=>{let p=r.document.getElementById("feature-tab-"+e.feature);p&&p.focus()})},e.cards=[{key:"repositories",total:0,label:"repositories anonymized"},{key:"users",total:0,label:"researchers"},{key:"pageViews",total:0,label:"page views"},{key:"pullRequests",total:0,label:"pull requests"}];function i(){t.get("/api/stat/").then(u=>{e.stat=u.data,e.cards[0].total=u.data.nbRepositories,e.cards[1].total=u.data.nbUsers,e.cards[2].total=u.data.nbPageViews,e.cards[3].total=u.data.nbPullRequests})}i();function a(u){let f={series:u,bars:[],viewW:100,deltaToday:0,pctChange:0,pctAbs:0,isUp:!0};if(!u||u.length<2)return f;let h=new Array(u.length-1);for(let b=1;b<u.length;b++)h[b-1]=u[b]-u[b-1];let v=h.length,k=Math.max.apply(null,h),p=Math.min.apply(null,h),g=Math.min(0,p),w=k-g||1;f.viewW=v*2,f.bars=new Array(v);for(let b=0;b<v;b++){let T=(h[b]-g)/w,N=Math.max(1.5,T*34);f.bars[b]={x:(b*2+.25).toFixed(2),y:(36-N).toFixed(2),w:"1.5",h:N.toFixed(2)}}if(f.deltaToday=h[v-1],v>=2){let b=h[v-2];b&&(f.pctChange=(f.deltaToday-b)/b*100)}return f.pctAbs=Math.round(Math.abs(f.pctChange)),f.isUp=f.pctChange>=0,f}e.history={repositories:a([]),users:a([]),pageViews:a([]),pullRequests:a([])},t.get("/api/stat/history?days=60").then(u=>{let f=u.data||[];e.history={repositories:a(f.map(h=>h.nbRepositories||0)),users:a(f.map(h=>h.nbUsers||0)),pageViews:a(f.map(h=>h.nbPageViews||0)),pullRequests:a(f.map(h=>h.nbPullRequests||0))}})},Oa=function(e,t,o,r,n,i){let a=mt();e.on("routeLeave",function(){$('[data-toggle="tooltip"]').tooltip("dispose")}),e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),a.timeout(()=>{$('[data-toggle="tooltip"]').tooltip()},250),e.items=[],e.search="",e.loading=!0,e.statusKeyLabels={ready:"Ready",progress:"In progress",error:"Error",expired:"Expired",removed:"Removed"};let u=["queue","download","downloaded","preparing","anonymizing"];function f(C){return C==="ready"||C==="error"?C:C==="expired"||C==="expiring"?"expired":C==="removed"||C==="removing"?"removed":(u.indexOf(C)>-1,"progress")}let h=7200*1e3,v="dashboard.filterPrefs",k={typeFilter:"all",filters:{status:{ready:!0,progress:!0,error:!0,expired:!0,removed:!1}},orderBy:"-anonymizeDate"},p=loadFilterPrefs(v)||{};e.typeFilter=p.typeFilter||k.typeFilter,e.filters={status:Object.assign({},k.filters.status,p.filters&&p.filters.status||{})},e.orderBy=p.orderBy||k.orderBy;let g={_name:{label:"Name",defaultDesc:!1},anonymizeDate:{label:"Anonymize date",defaultDesc:!0},status:{label:"Status",defaultDesc:!1},lastView:{label:"Last view",defaultDesc:!0},pageView:{label:"Views",defaultDesc:!0},"options.expirationDate":{label:"Expiration",defaultDesc:!1}};e.sortFields=g,e.sortField=()=>e.orderBy.replace(/^-/,""),e.sortDesc=()=>e.orderBy.charAt(0)==="-",e.sortLabel=()=>{let C=g[e.sortField()];return C?C.label:"Custom"},e.isSortedBy=C=>e.sortField()===C,e.setSort=(C,A)=>{typeof A!="boolean"&&(A=e.isSortedBy(C)?!e.sortDesc():!!(g[C]&&g[C].defaultDesc)),e.orderBy=(A?"-":"")+C},e.toggleSortDirection=()=>{e.setSort(e.sortField(),!e.sortDesc())},e.watchGroup(["typeFilter","orderBy"],()=>{saveFilterPrefs(v,{typeFilter:e.typeFilter,filters:e.filters,orderBy:e.orderBy})}),e.watch("filters",()=>{saveFilterPrefs(v,{typeFilter:e.typeFilter,filters:e.filters,orderBy:e.orderBy})},!0),i.load().then(C=>{e.quota=C},console.error);function w(C,A,P,x,Q,K){C.pageView||(C.pageView=0),C.lastView||(C.lastView=""),C.options=C.options||{},C.options.terms=(C.options.terms||[]).filter(ae=>ae),C._id=A||"",C._source=x,C._broken=!A,C._name=A||x||"(unnamed)",C._editUrl=A?Q:null,C._viewUrl=A?K:null,C._broken&&(C.status="error",C.statusMessage="incomplete_record"),C._statusKey=f(C.status);let z=C.anonymizeDate||C.lastView;return C._stale=C._statusKey==="progress"&&!!z&&Date.now()-new Date(z).getTime()>h,C.status==="expired"||C.status==="expiring"?C._expiry={kind:"expired",date:C.options.expirationDate}:C.status!=="ready"?C._expiry={kind:"none"}:C.options.expirationMode==="never"||!C.options.expirationDate?C._expiry={kind:"never"}:C._expiry={kind:"date",date:C.options.expirationDate},C}function b(C){return t.get(C).then(A=>A.data||[],A=>(console.error(A),[]))}function T(){return e.loading=!0,r.all([b("/api/user/anonymized_repositories"),b("/api/user/anonymized_pull_requests"),b("/api/user/anonymized_gists")]).then(C=>{let A=C[0],P=C[1],x=C[2],Q=[];A.forEach(K=>{K._type="repo";let z=K.source||{};Q.push(w(K,K.repoId,K.repoId,z.fullName,"/anonymize/"+K.repoId,"/r/"+K.repoId+"/"))}),P.forEach(K=>{K._type="pr";let z=K.source||{};Q.push(w(K,K.pullRequestId,K.pullRequestId,z.repositoryFullName+"#"+z.pullRequestId,"/pull-request-anonymize/"+K.pullRequestId,"/pr/"+K.pullRequestId+"/"))}),x.forEach(K=>{K._type="gist";let z=K.source||{};Q.push(w(K,K.gistId,K.gistId,z.gistId,"/gist-anonymize/"+K.gistId,"/gist/"+K.gistId+"/"))}),e.items=Q,e.loading=!1})}T(),e.openItem=(C,A)=>{if(!C._viewUrl)return;let P=A&&A.target;P&&P.closest&&P.closest("a, button, .dropdown, input")||(n.location.href=C._viewUrl)},e.hiddenStatusCount=()=>Object.keys(e.filters.status).filter(C=>e.filters.status[C]===!1).length,e.hasHiddenStatus=()=>e.hiddenStatusCount()>0,e.hasActiveFilters=()=>e.typeFilter!=="all"||e.search.trim().length>0||Object.keys(e.filters.status).some(C=>e.filters.status[C]===!1),e.clearFilters=()=>{e.typeFilter="all",e.search="",Object.keys(e.filters.status).forEach(C=>{e.filters.status[C]=!0})};function N(C,A){t.get("/api/repo/"+C).then(P=>{for(let x of e.items)if(x._type==="repo"&&x.repoId==C){x.status=P.data.status;break}if(P.data.status=="ready"||P.data.status=="error"||P.data.status=="removed"||P.data.status=="expired"){A(P.data);return}a.timeout(()=>N(C,A),2500)})}let R=C=>C==="repo"?"repository":C==="gist"?"gist":"pull request",I=C=>C==="repo"?"/api/repo":C==="gist"?"/api/gist":"/api/pr";e.removeItem=C=>{let A=R(C._type);if(confirm(`Are you sure that you want to remove the ${A} ${C._id}?`)){let P=ze({title:`Removing ${C._id}...`,date:new Date,body:`The ${A} ${C._id} is going to be removed.`});e.addToast(P);let x=`${I(C._type)}/${C._id}`;t.delete(x).then(()=>{C._type==="repo"?N(C._id,()=>{P.title=`${C._id} is removed.`,P.body=`The ${A} ${C._id} is removed.`}):(P.title=`${C._id} is removed.`,P.body=`The ${A} ${C._id} is removed.`,T())},Q=>{P.title=`Error during the removal of ${C._id}.`,P.body=Q.body,T()})}},e.refreshItem=C=>{let A=R(C._type),P=ze({title:`Refreshing ${C._id}...`,date:new Date,body:`The ${A} ${C._id} is going to be refreshed.`});e.addToast(P);let x=`${I(C._type)}/${C._id}/refresh`;t.post(x).then(()=>{C._type==="repo"?N(C._id,()=>{P.title=`${C._id} is refreshed.`,P.body=`The ${A} ${C._id} is refreshed.`}):(P.title=`${C._id} is refreshed.`,P.body=`The ${A} ${C._id} is refreshed.`,T())},Q=>{P.title=`Error during the refresh of ${C._id}.`,P.body=Q.body,T()})},e.extendItem=C=>{let A=R(C._type),P=ze({title:`Extending ${C._id}...`,date:new Date,body:`The expiration of ${A} ${C._id} is going to be extended by 6 months.`});e.addToast(P);let x=`${I(C._type)}/${C._id}/extend`;t.post(x).then(()=>{C._type==="repo"?N(C._id,()=>{P.title=`${C._id} is extended.`,P.body=`The expiration of ${A} ${C._id} is extended by 6 months.`}):(P.title=`${C._id} is extended.`,P.body=`The expiration of ${A} ${C._id} is extended by 6 months.`,T())},Q=>{P.title=`Error during the extension of ${C._id}.`,P.body=Q.data&&Q.data.error||Q.body,T()})},e.itemFilter=C=>{if(e.typeFilter!=="all"&&C._type!==e.typeFilter||e.filters.status[C._statusKey]===!1)return!1;let A=e.search.trim().toLowerCase();return!!(A.length==0||C._source&&String(C._source).toLowerCase().indexOf(A)>-1||C._id&&String(C._id).toLowerCase().indexOf(A)>-1||C.conference&&String(C.conference).toLowerCase().indexOf(A)>-1)}};var Aa=function(e,t,o){let r=mt();e.repoId=o.repoId,e.repo=null,e.progress=0,e.rateLimitResetAt=0,e.rateLimitCountdown="";var n=null;let i=null,a=!1;function u(h){e.rateLimitResetAt=h,n&&r.interval.cancel(n);function v(){var k=Math.max(0,Math.ceil((h-Date.now())/1e3));if(k<=0)e.rateLimitCountdown="",e.rateLimitResetAt=0,r.interval.cancel(n),n=null;else{var p=Math.floor(k/60),g=k%60;e.rateLimitCountdown=p>0?p+"m "+g+"s":g+"s"}}v(),n=r.interval(v,1e3)}e.on("dispose",function(){a=!0,n&&r.interval.cancel(n),i&&r.timeout.cancel(i)});function f(h){if(!h)return h;var v=h.match(/^rate_limited:(\d+)$/);return v?(u(parseInt(v[1],10)),null):(e.rateLimitResetAt=0,h)}e.getStatus=()=>{a||t.get("/api/repo/"+e.repoId,{repoId:e.repoId,repoUrl:e.repoUrl}).then(h=>{if(!a){e.repo=h.data,h.data.rateLimitResetAt?u(h.data.rateLimitResetAt):e.repo.statusMessage=f(e.repo.statusMessage),e.repo.status=="ready"?e.progress=100:e.repo.status=="queue"?e.progress=10:e.repo.status=="downloaded"?e.progress=50:e.repo.status=="download"||e.repo.status=="preparing"?e.progress=25:e.repo.status=="anonymizing"&&(e.progress=75);var v=!["ready","removed","expired"].includes(e.repo.status);e.repo.status=="error"&&!e.rateLimitResetAt&&(v=!1),v&&(i=r.timeout(e.getStatus,2e3))}},h=>{e.error=h.data.error})},e.getStatus()},Yn=function(e,t,o,r,n,i,a){e.sourceUrl="",e.githubConnection=void 0,e.githubConnections=null,e.gistOAuthRequired=!1;let u=()=>{let D={};for(let V of["sourceUrl","terms","repoId","pullRequestId","gistId","source","options","conference","githubConnection"])D[V]=e[V];sessionStorage.setItem("github-access-draft",JSON.stringify({path:n.path(),savedAt:Date.now(),draft:D}))};e.connectGistOAuth=()=>{u(),window.location.href="/github/login?returnTo="+encodeURIComponent(n.path())},e.grantGitHubAccess=()=>{u();let D=n.path(),V=g(e.sourceUrl)||"",j=e.githubConnections?.appConnected?"/github/app/install":"/github/app/login";window.location.href=j+"?returnTo="+encodeURIComponent(D)+"&repository="+encodeURIComponent(V)+"&install=1"},e.chooseGitHubConnection=async D=>{e.githubConnection=D,e.readme="",e.sourceUrl&&await b()},e.detectedType=null,e.repoId="",e.pullRequestId="",e.gistId="",e.terms="",e.defaultTerms="",e.branches=[],e.source={branch:"",commit:""},e.options={expirationMode:"remove",expirationDate:new Date,update:!1,image:!0,pdf:!0,notebook:!0,link:!0,body:!0,title:!0,origin:!1,diff:!0,content:!0,comments:!0,username:!0,date:!0};function f(){let D=new Date;return D.setMonth(D.getMonth()+6),D}e.options.expirationDate=f();function h(D){let V=D.getFullYear(),j=String(D.getMonth()+1).padStart(2,"0"),oe=String(D.getDate()).padStart(2,"0");return`${V}-${j}-${oe}`}e.minExpirationDate=h(new Date);let v=new Date;v.setFullYear(v.getFullYear()+1),e.maxExpirationDate=h(v),e.anonymize_readme="",e.readme="",e.html_readme="",e.isUpdate=!1;function k(D){t.get("/api/user/default").then(V=>{let j=V.data;j.terms&&(e.defaultTerms=j.terms.join(`
|
|
`)),e.options=Object.assign({},e.options,j.options),e.options.expirationDate=j.options&&j.options.expirationDate?new Date(j.options.expirationDate):f(),D&&D()})}function p(D,V,j){e.anonymize&&e.anonymize[D]&&e.anonymize[D].setValidity(V,j)}function g(D){try{let V=parseGithubUrl(D);if(V&&V.owner&&V.repo)return V.owner+"/"+V.repo}catch{}return null}function w(){return!e.isUpdate||!e._originalRepositoryID?void 0:g(e.sourceUrl)===e._originalFullName?e._originalRepositoryID:void 0}async function b(){e._preservingDraft=!0;try{await e.urlSelected(!0)}finally{e._preservingDraft=!1}}async function T(){let D;try{D=JSON.parse(sessionStorage.getItem("github-access-draft")||"null")}catch{return!1}if(!D||D.path!==n.path()||Date.now()-D.savedAt>=30*6e4)return!1;for(let V of["sourceUrl","terms","repoId","pullRequestId","gistId","source","options","conference","githubConnection"])Object.prototype.hasOwnProperty.call(D.draft,V)&&(e[V]=D.draft[V]);return e.options.expirationDate&&(e.options.expirationDate=new Date(e.options.expirationDate)),await b(),sessionStorage.removeItem("github-access-draft"),!0}k(()=>{!r.repoId&&!r.pullRequestId&&!r.gistId&&a(T,0),r.repoId&&r.repoId!=""&&(e.isUpdate=!0,e.detectedType="repo",e.repoId=r.repoId,t.get("/api/repo/"+e.repoId).then(async D=>{e.githubConnection=D.data.connection||"oauth",e.sourceUrl="https://github.com/"+D.data.source.fullName,e._originalFullName=D.data.source.fullName,e.terms=D.data.options.terms.filter(V=>V).join(`
|
|
`),e.source=D.data.source,e.role=D.data.role||"owner",e.coauthors=D.data.coauthors||[],e._originalBranch=D.data.source.branch,e.options=Object.assign({},e.options,D.data.options),e.conference=D.data.conference,e._originalConference=D.data.conference,e.repositoryID=D.data.source.repositoryID,e._originalRepositoryID=D.data.source.repositoryID,D.data.options.expirationDate&&(e.options.expirationDate=new Date(D.data.options.expirationDate)),!await T()&&(await Promise.all([N(),R()]),P())},()=>{n.url("/404")})),r.pullRequestId&&r.pullRequestId!=""&&(e.isUpdate=!0,e.detectedType="pr",e.pullRequestId=r.pullRequestId,t.get("/api/pr/"+e.pullRequestId).then(async D=>{if(e.githubConnection=D.data.connection||"oauth",e.sourceUrl="https://github.com/"+D.data.source.repositoryFullName+"/pull/"+D.data.source.pullRequestId,e.terms=D.data.options.terms.filter(V=>V).join(`
|
|
`),e.source=D.data.source,e.options=Object.assign({},e.options,D.data.options),e.conference=D.data.conference,e._originalConference=D.data.conference,D.data.options.expirationDate&&(e.options.expirationDate=new Date(D.data.options.expirationDate)),!await T())try{e.details=(await t.get(`/api/pr/${D.data.source.repositoryFullName}/${D.data.source.pullRequestId}`,{params:{connection:e.githubConnection}})).data}catch(V){let j=V&&V.data&&V.data.error;j&&(i("ERRORS."+j).then(oe=>{e.addToast({title:"Error",date:new Date,body:oe}),e.error=oe},console.error),Se(j))}},()=>{n.url("/404")})),r.gistId&&r.gistId!=""&&(e.isUpdate=!0,e.detectedType="gist",e.gistId=r.gistId,t.get("/api/gist/"+e.gistId).then(async D=>{e.sourceUrl="https://gist.github.com/"+D.data.source.gistId,e.terms=D.data.options.terms.filter(V=>V).join(`
|
|
`),e.source=D.data.source,e.options=Object.assign({},e.options,D.data.options),e.conference=D.data.conference,e._originalConference=D.data.conference,D.data.options.expirationDate&&(e.options.expirationDate=new Date(D.data.options.expirationDate)),!await T()&&await se()},()=>{n.url("/404")}))}),t.get("/github/connections").then(D=>{e.githubConnections=D.data,!r.repoId&&!r.pullRequestId&&!r.gistId&&e.githubConnection===void 0&&D.data.appEnabled&&D.data.appConnected&&(e.githubConnection="github-app")}).catch(()=>{}),e.urlSelected=async(D=!1)=>{D||(e.terms=e.defaultTerms),!D&&!e.isUpdate&&(e.repoId="",e.pullRequestId="",e.gistId=""),e.details=null,e.branches=[],D||(e.source={type:"GitHubStream",branch:"",commit:""}),e.anonymize_readme="",e.readme="",e.html_readme="",e.detectedType=null,e.gistOAuthRequired=!1;let V;try{V=parseGithubUrl(e.sourceUrl)}catch{p("sourceUrl","github",!1);return}p("sourceUrl","github",!0);try{V.gistId&&!V.repo?(e.detectedType="gist",e.source={gistId:V.gistId},await se()):V.pullRequestId?(e.detectedType="pr",e.source={repositoryFullName:V.owner+"/"+V.repo,pullRequestId:V.pullRequestId},await x()):(e.detectedType="repo",await Promise.all([N(),R()]),P())}catch{return}$('[data-toggle="tooltip"]').tooltip()},$('[data-toggle="tooltip"]').tooltip(),e.watch("source.branch",async()=>{if(e.detectedType!=="repo")return;let D=e.branches.filter(j=>j.name==e.source.branch)[0];if(!D)return;!(e.isUpdate&&e._originalBranch===e.source.branch&&!!e.source.commit)&&!(e._preservingDraft&&e.source.commit)&&(e.source.commit=D.commit),e.readme=D.readme,await R(),P()}),e.getBranches=async D=>{let V=parseGithubUrl(e.sourceUrl);try{let j=await t.get(`/api/repo/${V.owner}/${V.repo}/branches`,{params:{anonymizedRepoId:e.isUpdate&&r.repoId&&g(e.sourceUrl)===e._originalFullName?r.repoId:void 0,connection:e.githubConnection,force:D===!0?"1":"0",repositoryID:w()}});e.branches=j.data,e.sourceUnreachable=!1,e.source.branch||(e.source.branch=e.details.defaultBranch);let oe=e.branches.filter(le=>le.name==e.source.branch);oe.length>0&&(!(!D&&e.isUpdate&&!e.options.update&&e._originalBranch===e.source.branch&&e.source.commit)&&!(e._preservingDraft&&e.source.commit)&&(e.source.commit=oe[0].commit),e.readme=oe[0].readme,await R(D))}catch(j){e.branches=[],e.sourceUnreachable=j&&(j.status===404||j.data&&j.data.error==="repo_not_found");let oe=j&&j.data&&j.data.error||(j&&j.status===404?"repo_not_found":"unknown_error");i("ERRORS."+oe).then(le=>{e.toasts=e.toasts||[],e.addToast({title:"Error",date:new Date,body:le}),e.error=le},console.error),typeof p=="function"&&p("sourceUrl","missing",!1)}};async function N(){let D=parseGithubUrl(e.sourceUrl);try{Te();let V=await t.get(`/api/repo/${D.owner}/${D.repo}/`,{params:{anonymizedRepoId:e.isUpdate&&r.repoId&&g(e.sourceUrl)===e._originalFullName?r.repoId:void 0,connection:e.githubConnection,repositoryID:w(),force:"1"}});e.details=V.data,e.details&&e.details.id&&(e.repositoryID=e.details.id),e.repoId||(e.repoId=e.details.repo+"-"+generateRandomId(4)),await e.getBranches()}catch(V){throw V.data&&(i("ERRORS."+V.data.error).then(j=>{e.addToast({title:"Error",date:new Date,body:j}),e.error=j},console.error),Se(V.data.error)),p("sourceUrl","missing",!1),V}}async function R(D){if(e.readme&&!D)return e.readme;let V=parseGithubUrl(e.sourceUrl);try{let j=await t.get(`/api/repo/${V.owner}/${V.repo}/readme`,{params:{anonymizedRepoId:e.isUpdate&&r.repoId&&g(e.sourceUrl)===e._originalFullName?r.repoId:void 0,connection:e.githubConnection,force:D===!0?"1":"0",branch:e.source.branch,repositoryID:w()}});e.readme=j.data}catch{e.readme=""}}function I(){let D={terms:e.terms?e.terms.split(`
|
|
`):[],image:!!e.options.image,link:!!e.options.link,repoId:e.repoId};e.source&&e.source.branch&&(D.branchName=e.source.branch);try{let V=parseGithubUrl(e.sourceUrl);D.repoName=`${V.owner}/${V.repo}`}catch{}return D}function C(D,V){let j=null,oe=0;return function(){j&&a.cancel(j),j=a(()=>{j=null;let L=++oe,te=D();te&&t.post("/api/anonymize-preview",te).then(U=>{L===oe&&V(U.data)},()=>{})},200)}}let A=C(()=>e.readme?{content:e.readme,options:I()}:null,D=>{e.anonymize_readme=D.content||"";let V="";try{let oe=parseGithubUrl(e.sourceUrl),le=e.source.branch||e.details&&e.details.defaultBranch||"main";V=`https://github.com/${oe.owner}/${oe.repo}/raw/${le}/`}catch{}let j=renderMD(e.anonymize_readme,V);e.html_readme=j,a(Prism.highlightAll,150)});function P(){!e.anonymize||!e.anonymize.terms||(e.termsRegexWarning=!!e.terms&&!!e.terms.match(/[-[\]{}()*+?.,\\^$|#]/g),A())}async function x(){let D=parseGithubUrl(e.sourceUrl);try{Te();let V=await t.get(`/api/pr/${D.owner}/${D.repo}/${D.pullRequestId}`,{params:{connection:e.githubConnection}});e.details=V.data,e.pullRequestId||(e.pullRequestId=D.repo+"-PR"+D.pullRequestId+"-"+generateRandomId(4))}catch(V){throw V.data&&(i("ERRORS."+V.data.error).then(j=>{e.addToast({title:"Error",date:new Date,body:j}),e.error=j},console.error),Se(V.data.error)),p("sourceUrl","missing",!1),V}}let Q=ze(new Map),K=new Set;function z(){let D=new Set,V=e.details&&e.details.pullRequest;if(!V)return D;typeof V.title=="string"&&D.add(V.title),typeof V.body=="string"&&D.add(V.body),typeof V.diff=="string"&&D.add(V.diff);let j=V.comments||[];for(let oe of j)typeof oe.author=="string"&&D.add(oe.author),typeof oe.body=="string"&&D.add(oe.body);return D}let ae=C(()=>{let D=z();K=D;let V=Array.from(D);return V.length===0?null:{contents:V,options:I()}},D=>{if(!D||!Array.isArray(D.contents))return;let V=Array.from(K),j=new Map;for(let oe=0;oe<V.length&&oe<D.contents.length;oe++)j.set(V[oe],D.contents[oe]);Q.clear(),j.forEach((oe,le)=>Q.set(le,oe))});e.anonymizePrContent=function(D){return D&&(Q.has(D)?Q.get(D):(K.has(D)||ae(),D))};async function se(){let D=parseGithubUrl(e.sourceUrl);try{if(Te(),e.gistOAuthRequired=!1,e.githubConnections?.oauthConnected===!1){e.gistOAuthRequired=!0,p("sourceUrl","missing",!1);return}let V=await t.get(`/api/gist/source/${D.gistId}`);e.details=V.data,e.gistId||(e.gistId="gist-"+D.gistId.substring(0,6)+"-"+generateRandomId(4))}catch(V){if(V.data?.error==="github_oauth_required"){e.gistOAuthRequired=!0,p("sourceUrl","missing",!1);return}throw V.data&&(i("ERRORS."+V.data.error).then(j=>{e.addToast({title:"Error",date:new Date,body:j}),e.error=j},console.error),Se(V.data.error)),p("sourceUrl","missing",!1),V}}let re=ze(new Map),ue=new Set;function ke(){let D=new Set,V=e.details&&e.details.gist;if(!V)return D;typeof V.description=="string"&&D.add(V.description),typeof V.ownerLogin=="string"&&D.add(V.ownerLogin);let j=V.files||[];for(let le of j)typeof le.filename=="string"&&D.add(le.filename),typeof le.content=="string"&&D.add(le.content);let oe=V.comments||[];for(let le of oe)typeof le.author=="string"&&D.add(le.author),typeof le.body=="string"&&D.add(le.body);return D}let he=C(()=>{let D=ke();ue=D;let V=Array.from(D);return V.length===0?null:{contents:V,options:I()}},D=>{if(!D||!Array.isArray(D.contents))return;let V=Array.from(ue),j=new Map;for(let oe=0;oe<V.length&&oe<D.contents.length;oe++)j.set(V[oe],D.contents[oe]);re.clear(),j.forEach((oe,le)=>re.set(le,oe)),me()});e.anonymizeGistContent=function(D){return D&&(re.has(D)?re.get(D):(ue.has(D)||he(),D))},e.previewGistFiles=[];function me(){let D=e.details&&e.details.gist&&e.details.gist.files||[];e.previewGistFiles=D.map(V=>({filename:e.anonymizeGistContent(V.filename),content:e.anonymizeGistContent(V.content),language:V.language}))}e.watch("details.gist.files",me,!0),e.watch("terms",me);function pe(){let D=e.conference;if(e.conference_data=null,!D)return;let V=e.isUpdate&&D===e._originalConference;t.get("/api/conferences/"+D).then(j=>{e.conference===D&&(e.conference_data=j.data,e.conference_data.startDate=new Date(e.conference_data.startDate),e.conference_data.endDate=new Date(e.conference_data.endDate),!V&&(e.options.expirationDate=new Date(e.conference_data.endDate),e.options.expirationMode="remove",e.options.update=e.conference_data.options.update,e.options.image=e.conference_data.options.image,e.options.pdf=e.conference_data.options.pdf,e.options.notebook=e.conference_data.options.notebook,e.options.link=e.conference_data.options.link))},()=>{e.conference===D&&(e.conference_data=null)})}function Te(){p("repoId","used",!0),p("repoId","format",!0),p("pullRequestId","used",!0),p("pullRequestId","format",!0),p("gistId","used",!0),p("gistId","format",!0),p("sourceUrl","used",!0),p("sourceUrl","missing",!0),p("sourceUrl","access",!0),p("sourceUrl","github",!0),p("commit","exists",!0),p("conference","activated",!0),p("terms","format",!0),e.termsRegexWarning=!1}function Re(){let D=e.anonymize&&e.anonymize.expirationDate;return!e.options.expirationDate||D&&D.invalid?(D&&D.setDirty&&D.setDirty(),e.error="Please choose a valid expiration date.",!0):!1}function Se(D){let V=e.detectedType==="pr"?"pullRequestId":e.detectedType==="gist"?"gistId":"repoId";switch(D){case"repoId_already_used":p(V,"used",!1);break;case"invalid_repoId":p(V,"format",!1);break;case"options_not_provided":p(V,"format",!1);break;case"repo_already_anonymized":p("sourceUrl","used",!1);break;case"invalid_terms_format":p("terms","format",!1);break;case"repo_not_found":p("sourceUrl","missing",!1);break;case"repo_not_accessible":p("sourceUrl","access",!1);break;case"commit_not_found":p("commit","exists",!1);break;case"conf_not_activated":p("conference","activated",!1);break}}e.coauthors=e.coauthors||[],e.coauthorResults=[],e.coauthorError="",e.searchCoauthors=()=>{let D=(e.coauthorSearch||"").trim();if(e.coauthorError="",D.length<2){e.coauthorResults=[];return}t.get("/api/user/search/github-users",{params:{q:D}}).then(V=>{let j=new Set((e.coauthors||[]).map(oe=>(oe.username||"").toLowerCase()));e.coauthorResults=(V.data||[]).filter(oe=>!j.has((oe.username||"").toLowerCase()))},()=>{e.coauthorResults=[]})},e.addCoauthor=(D,V)=>{V&&V.preventDefault(),!(!D||!D.username)&&t.post("/api/repo/"+e.repoId+"/coauthors",{username:D.username}).then(j=>{e.coauthors=j.data||[],e.coauthorResults=[],e.coauthorSearch="",e.coauthorError=""},j=>{let oe=j&&j.data&&j.data.error||"unknown_error";e.coauthorError=oe})},e.removeCoauthor=D=>{!D||!D.username||confirm("Remove co-author "+D.username+"?")&&t.delete("/api/repo/"+e.repoId+"/coauthors/"+encodeURIComponent(D.username)).then(V=>{e.coauthors=V.data||[]},V=>{let j=V&&V.data&&V.data.error||"unknown_error";e.coauthorError=j})},e.anonymizeRepo=D=>{if(Re())return;D.target.disabled=!0;let V=parseGithubUrl(e.sourceUrl),j={repoId:e.repoId,terms:e.terms.trim().split(`
|
|
`).filter(le=>le),connection:e.githubConnection,fullName:`${V.owner}/${V.repo}`,repository:e.sourceUrl,options:e.options,source:e.source,conference:e.conference};e.details&&(j.options.pageSource=e.details.pageSource),Te();let oe=e.isUpdate?"/api/repo/"+e.repoId:"/api/repo/";t.post(oe,j,{headers:{"Content-Type":"application/json"}}).then(()=>{window.location.href="/status/"+e.repoId},le=>{le.data&&(i("ERRORS."+le.data.error).then(L=>{e.error=L},console.error),Se(le.data.error))}).finally(()=>{D.target.disabled=!1})},e.anonymizeGist=D=>{if(Re())return;D.target.disabled=!0;let V=parseGithubUrl(e.sourceUrl),j={gistId:e.gistId,terms:e.terms.trim().split(`
|
|
`).filter(le=>le),source:{gistId:V.gistId},options:e.options,conference:e.conference};Te();let oe=e.isUpdate?"/api/gist/"+e.gistId:"/api/gist/";t.post(oe,j,{headers:{"Content-Type":"application/json"}}).then(()=>{window.location.href="/gist/"+e.gistId},le=>{le.data&&(i("ERRORS."+le.data.error).then(L=>{e.error=L},console.error),Se(le.data.error))}).finally(()=>{D.target.disabled=!1})},e.anonymizePullRequest=D=>{if(Re())return;D.target.disabled=!0;let V=parseGithubUrl(e.sourceUrl),j={pullRequestId:e.pullRequestId,connection:e.githubConnection,terms:e.terms.trim().split(`
|
|
`).filter(le=>le),source:{repositoryFullName:`${V.owner}/${V.repo}`,pullRequestId:V.pullRequestId},options:e.options,conference:e.conference};Te();let oe=e.isUpdate?"/api/pr/"+e.pullRequestId:"/api/pr/";t.post(oe,j,{headers:{"Content-Type":"application/json"}}).then(()=>{window.location.href="/pr/"+e.pullRequestId},le=>{le.data&&(i("ERRORS."+le.data.error).then(L=>{e.error=L},console.error),Se(le.data.error))}).finally(()=>{D.target.disabled=!1})},e.watch("conference",()=>{pe()}),e.watch("terms",()=>{e.detectedType==="repo"&&P(),e.detectedType==="pr"&&ae(),e.detectedType==="gist"&&he()}),e.watch("options.image",()=>{e.detectedType==="repo"&&P(),e.detectedType==="pr"&&ae(),e.detectedType==="gist"&&he()}),e.watch("options.link",()=>{e.detectedType==="repo"&&P(),e.detectedType==="pr"&&ae(),e.detectedType==="gist"&&he()}),e.watch("details",()=>{e.detectedType==="pr"&&ae(),e.detectedType==="gist"&&he()},!0)},Yo=function(e,t,o,r,n,i){let a=mt(),u=as(),f=0,h=!1;e.on("dispose",()=>{h=!0,f++,v&&v.resolve()}),e.files=[],e.isMac=/Mac|iPhone|iPad|iPod/.test(navigator.platform||navigator.userAgent),e.fileSearchQuery="",e.fileSearchResults=null,e.fileSearchLoading=!1,u(document,"keydown",function(z){if((z.metaKey||z.ctrlKey)&&z.key==="k"){z.preventDefault();var ae=document.querySelector(".tree-search-input");ae&&(ae.focus(),ae.select())}});var v=null;e.onFileSearchChange=function(){v&&(v.resolve(),v=null);let z=e.fileSearchQuery;if(!z||z.length<2){e.fileSearchResults=null,e.fileSearchLoading=!1;return}e.fileSearchLoading=!0;let ae=i.defer();v=ae,t.get(`/api/repo/${e.repoId}/files/search?q=${encodeURIComponent(z)}`,{timeout:ae.promise}).then(function(se){if(!(h||v!==ae)){v=null,e.fileSearchLoading=!1;var re={};e.files.forEach(function(L){re[(L.path||"")+"/"+L.name]=!0});for(var ue=[],ke={},he=0;he<se.data.length;he++){var me=se.data[he];if(me.path)for(var pe=me.path.split("/"),Te="",Re=0;Re<pe.length;Re++){var Se=Te;Te=Te?Te+"/"+pe[Re]:pe[Re];var D=Se+"/"+pe[Re];!re[D]&&!ke[D]&&(ke[D]=!0,ue.push({name:pe[Re],path:Se}))}}ue.sort(function(L,te){return(L.path||"").split("/").length-(te.path||"").split("/").length}),ue.length>0&&e.files.push.apply(e.files,ue);for(var V=[],j=0;j<se.data.length;j++){var oe=se.data[j],le=(oe.path||"")+"/"+oe.name;!re[le]&&oe.size!=null&&(V.push(oe),re[le]=!0)}V.length>0&&e.files.push.apply(e.files,V),e.fileSearchResults=se.data}},function(){!h&&v===ae&&(v=null,e.fileSearchLoading=!1,e.fileSearchResults=[])})};let k={yml:"yaml",txt:"text",py:"python",js:"javascript",ts:"typescript"},p=["license","txt"],g=["png","jpg","jpeg","gif","svg","ico","bmp","tiff","tif","webp","avif","heif","heic"],w=["wav","mp3","ogg","wma","flac","aac","m4a"],b=["mp4","avi","webm","mov","mpg","mpeg","mkv","flv","wmv","3gp","3g2","m4v","f4v","f4p","f4a","f4b"];e.on("routeUpdate",function(z,ae){if(e.repoId!=r.repoId)return K();if((r.path||"")!=e.filePath){e.filePath=r.path||"",e.paths=e.filePath.split("/").filter(se=>se&&se.trim().length>0),Q();for(let se=0;se<e.paths.length-1;se++){let re=se>0?e.paths.slice(0,se).join("/"):"";e.files.some(ke=>ke.path===re)||e.getFiles(re)}}});function T(){if(e.paths[0]!="")return;let z=["readme.md","readme.txt","readme.org","readme.1st","readme"],ae={};for(let re of e.files)re.name.toLowerCase().indexOf("readme")>-1&&(ae[re.name.toLowerCase()]=re.name);let se=null;for(let re of z)if(ae[re]){se=re;break}if(!se&&Object.keys(ae).length>0&&(se=Object.keys(ae)[0]),se){let re=o.url();re[re.length-1]!="/"&&(re+="/"),o.url(re+encodePathForUrl(ae[se]))}}e.fileCounts=null,e.getFiles=function(z){let ae=e.repoId;return t.get(`/api/repo/${e.repoId}/files/?path=${encodeURIComponent(z)}&v=${e.options.lastUpdateDate}`).then(function(se){if(h||ae!==e.repoId)return[];let re=z||"";return e.files=e.files.filter(ue=>ue.path!==re),e.files.push(...se.data),se.data},function(se){if(h||ae!==e.repoId)return[];e.type="error",e.content=se&&se.data&&se.data.error||"unknown_error",e.files=[]})};function N(){let z=e.repoId;t.get(`/api/repo/${e.repoId}/files/counts`).then(function(ae){h||z!==e.repoId||(e.fileCounts=ae.data)},function(){e.fileCounts={}})}function R(){return e.files.filter(z=>z.name==e.paths[e.paths.length-1]&&z.path==e.paths.slice(0,e.paths.length-1).join("/"))[0]}var I=null;e.on("dispose",function(){I&&a.interval.cancel(I)});function C(z){if(h)return;let ae=e.repoId;t.get(`/api/repo/${e.repoId}/options`).then(se=>{if(!(h||ae!==e.repoId)){if(e.options=se.data,e.options.url){window.location=e.options.url;return}z&&z(se.data)}},se=>{if(!(h||ae!==e.repoId)){var re=se.data||{};if(re.error==="rate_limited"&&re.resetAt){let ke=function(){var he=Math.max(0,Math.ceil((e.rateLimitResetAt-Date.now())/1e3));if(he<=0)e.rateLimitCountdown="",e.rateLimitResetAt=0,I&&(a.interval.cancel(I),I=null),C(z);else{var me=Math.floor(he/60),pe=he%60;e.rateLimitCountdown=me>0?me+"m "+pe+"s":pe+"s"}};var ue=ke;e.type="rate_limited",e.rateLimitResetAt=re.resetAt,I&&a.interval.cancel(I),ke(),I=a.interval(ke,1e3)}else re.error==="repository_not_ready"?(e.type="loading",a.timeout(function(){C(z)},3e3)):(e.type="error",e.content=re.error)}})}e.toggleSource=function(){e.showSource=!e.showSource},e.toggleAllowScripts=function(){e.allowScripts=!e.allowScripts};function A(z){return k[z]?k[z]:z}function P(z){return z=="pdf"?"pdf":z=="html"||z=="htm"?"html-doc":z=="md"?"md":z=="org"?"org":z=="ipynb"?"IPython":p.indexOf(z)>-1?"text":g.indexOf(z)>-1?"image":b.indexOf(z)>-1?"media":w.indexOf(z)>-1?"audio":"code"}function x(z,ae){let se=f;if(!z){e.type="error",e.content="no_file_selected";return}let re=e.type;e.type="loading",e.content="loading";let ue=ae&&ae.sha||"0";t.get(`/api/repo/${e.repoId}/file/${encodePathForUrl(z)}?v=`+ue,{transformResponse:ke=>ke}).then(ke=>{if(!(h||se!==f)){if(e.type=re,e.content=ke.data,e.content==""&&(e.content=null),e.type=="md"&&(e.content=renderMD(ke.data,o.url()+"/../"),e.type="html"),e.type=="org"){let me=contentAbs2Relative(ke.data);var he=new Org.Parser().parse(me).convert(Org.ConverterHTML,{headerOffset:1,exportFromLineNumber:!1,suppressSubScriptHandling:!0,suppressAutoLink:!1});e.content=DOMPurify.sanitize(he.toString()),e.type="html"}e.type=="code"&&ke.headers("content-type")=="application/octet-stream"&&(e.type="binary",e.content="binary"),a.timeout(()=>{Prism.highlightAll()},50)}},ke=>{if(!(h||se!==f)){e.type="error",e.content="unknown_error";try{ke.data=JSON.parse(ke.data),ke.data.error?e.content=ke.data.error:e.content=ke.data}catch{console.log(ke),ke.status==-1?e.content="request_error":ke.status==502&&(e.content="unreachable")}}})}function Q(){f++,e.content="",e.file=R();let z="0";e.file&&e.file.sha&&(z=e.file.sha),e.url=`/api/repo/${e.repoId}/file/${encodePathForUrl(e.filePath)}?v=${z}`;let ae=e.filePath.substring(0,e.filePath.lastIndexOf("/")+1);e.fileBaseUrl=`/api/repo/${e.repoId}/file/${ae?encodePathForUrl(ae):""}`,e.showSource=!1,e.allowScripts=!1;let se=e.filePath.toLowerCase(),re=se.lastIndexOf(".");if(re>-1&&(se=se.substring(re+1)),e.aceOption={readOnly:!0,useWrapMode:!0,showGutter:!0,theme:"chrome",useSoftTab:!0,tabSize:2,fontSize:15,keyBinding:"vscode",fullLineSelection:!0,highlightActiveLine:!1,highlightGutterLine:!1,cursor:"hide",showInvisibles:!1,showIndentGuides:!0,showPrintMargin:!1,highlightSelectedWord:!1,enableBehaviours:!0,fadeFoldWidgets:!1,mode:A(se),onLoad:function(ue){let ke=ace.require("ace/range").Range,he=null;function me(Re,Se){he!==null&&(ue.session.removeMarker(he),he=null),Re!=null&&(he=ue.session.addMarker(new ke(Re,0,Se,1),"highlighted-line","fullLine"))}function pe(Re){let Se=window.location.hash.match(/^#L(\d+)(?:-L(\d+))?/);if(!Se){me(null);return}let D=parseInt(Se[1])-1,V=Se[2]?parseInt(Se[2])-1:D;me(D,V),Re&&a.timeout(()=>{ue.scrollToLine(D,!0,!0,function(){})},100)}pe(!0);let Te=null;ue.on("guttermousedown",function(Re){let Se=Re.getDocumentPosition().row,D=Re.domEvent&&Re.domEvent.shiftKey,V=Se,j=Se;D&&Te!==null?(V=Math.min(Te,Se),j=Math.max(Te,Se)):Te=Se;let oe=V===j?`#L${V+1}`:`#L${V+1}-L${j+1}`,le=window.location.pathname+window.location.search+oe;window.history.replaceState(null,"",le),me(V,j),Re.stop()}),u(window,"hashchange",()=>pe(!1)),ue.setFontSize(e.aceOption.fontSize),ue.setReadOnly(e.aceOption.readOnly),ue.setKeyboardHandler(e.aceOption.keyBinding),ue.setSelectionStyle(e.aceOption.fullLineSelection?"line":"text"),ue.setOption("displayIndentGuides",!0),ue.setHighlightActiveLine(e.aceOption.highlightActiveLine),e.aceOption.cursor=="hide"&&(ue.renderer.$cursorLayer.element.style.display="none"),ue.setHighlightGutterLine(e.aceOption.highlightGutterLine),ue.setShowInvisibles(e.aceOption.showInvisibles),ue.setDisplayIndentGuides(e.aceOption.showIndentGuides),ue.renderer.setShowPrintMargin(e.aceOption.showPrintMargin),ue.setHighlightSelectedWord(e.aceOption.highlightSelectedWord),ue.session.setUseSoftTabs(e.aceOption.useSoftTab),ue.session.setTabSize(e.aceOption.tabSize),ue.setBehavioursEnabled(e.aceOption.enableBehaviours),ue.setFadeFoldWidgets(e.aceOption.fadeFoldWidgets)}},e.on("dark-mode",(ue,ke)=>{ke?e.aceOption.theme="nord_dark":e.aceOption.theme="chrome"}),e.isDarkMode&&(e.aceOption.theme="nord_dark"),e.type=P(se),e.type=="pdf"){e.content="pdf";return}x(e.filePath,e.file)}function K(){f++,e.files=[],e.content=null,e.fileCounts=null,e.fileSearchQuery="",e.onFileSearchChange(),e.repoId=r.repoId,e.type="loading",e.filePath=r.path||"",e.paths=e.filePath.split("/");let z=e.repoId;C(function(ae){N();var se=i.resolve();for(let re=0;re<e.paths.length;re++){let ue=re>0?e.paths.slice(0,re).join("/"):"";se=se.then(function(){return e.getFiles(ue)}).then(function(){if(e.type==="error")return i.reject("error")})}se.then(function(){h||z!==e.repoId||(e.files.length==1&&e.files[0].name==""?(e.files=[],e.type="empty"):(T(),Q()))})})}K()},Ia=function(e,t,o,r,n){async function i(f){t.get(`/api/pr/${e.pullRequestId}/options`).then(h=>{if(e.options=h.data,e.options.url){window.location=e.options.url;return}f&&f(h.data)},h=>{e.type="error",e.content=h.data.error})}async function a(f){t.get(`/api/pr/${e.pullRequestId}/content`).then(h=>{e.details=h.data,e.tabState={active:h.data.diff?"diff":"comments"},f&&f(h.data)},h=>{e.type="error",e.content=h.data.error})}function u(){e.pullRequestId=r.pullRequestId,e.type="loading",i(f=>{a()})}u()},Va=function(e,t,o,r,n){async function i(f){t.get(`/api/gist/${e.gistId}/options`).then(h=>{if(e.options=h.data,e.options.url){window.location=e.options.url;return}f&&f(h.data)},h=>{e.type="error",e.content=h.data.error})}async function a(f){t.get(`/api/gist/${e.gistId}/content`).then(h=>{e.details=h.data;let v=h.data&&h.data.files&&h.data.files.length;e.tabState={active:v?"files":"comments"},f&&f(h.data)},h=>{e.type="error",e.content=h.data.error})}function u(){e.gistId=r.gistId,e.type="loading",i(()=>{a()})}u()},Pa=function(e,t,o){e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.conferences=[],e.search="";let r="conferences.filterPrefs",n={filters:{status:{ready:!0,expired:!1,removed:!1}},orderBy:"name"},i=loadFilterPrefs(r)||{};e.filters={status:Object.assign({},n.filters.status,i.filters&&i.filters.status||{})},e.orderBy=i.orderBy||n.orderBy,e.watch("orderBy",()=>{saveFilterPrefs(r,{filters:e.filters,orderBy:e.orderBy})}),e.watch("filters",()=>{saveFilterPrefs(r,{filters:e.filters,orderBy:e.orderBy})},!0),e.removeConference=function(u){if(confirm(`Are you sure that you want to remove the conference ${u.name}? All the repositories linked to this conference will expire.`)){let f=ze({title:`Removing ${u.name}...`,date:new Date,body:`The conference ${u.name} is going to be removed.`});e.addToast(f),t.delete(`/api/conferences/${u.conferenceID}`).then(()=>{f.title=`${u.name} is removed.`,f.body=`The conference ${u.name} is removed.`,a()})}};function a(){t.get("/api/conferences/").then(u=>{e.conferences=u.data||[]},u=>{console.error(u)})}a(),e.conferenceFilter=u=>e.filters.status[u.status]==!1?!1:e.search.trim().length==0||u.name.indexOf(e.search)>-1||u.conferenceID.indexOf(e.search)>-1},Jo=function(e,t,o,r){e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.plans=[],e.editionMode=!1;function n(){t.get("/api/conferences/"+r.conferenceId).then(v=>{e.options=v.data,e.options.startDate=new Date(e.options.startDate),e.options.endDate=new Date(e.options.endDate)})}r.conferenceId&&(e.editionMode=!0,n());function i(){t.get("/api/conferences/plans").then(v=>{e.plans=v.data,e.plan=e.plans.filter(k=>k.id==e.options.plan.planID)[0]})}i();let a=new Date;a.setDate(1),a.setMonth(a.getMonth()+1);let u=new Date(a);u.setMonth(a.getMonth()+7,0),e.options={startDate:a,endDate:u,plan:{planID:"free_conference"},options:{link:!0,image:!0,pdf:!0,notebook:!0,update:!0,page:!0}},e.plan=null,e.watch("options.plan.planID",()=>{e.plan=e.plans.filter(v=>v.id==e.options.plan.planID)[0]});function f(){e.conference.name.setValidity("required",!0),e.conference.conferenceID.setValidity("pattern",!0),e.conference.conferenceID.setValidity("required",!0),e.conference.conferenceID.setValidity("used",!0),e.conference.startDate.setValidity("required",!0),e.conference.startDate.setValidity("invalid",!0),e.conference.endDate.setValidity("required",!0),e.conference.endDate.setValidity("invalid",!0),e.conference.setValidity("error",!0)}function h(v){switch(v){case"conf_name_missing":e.conference.name.setValidity("required",!1);break;case"conf_id_missing":e.conference.conferenceID.setValidity("required",!1);break;case"conf_id_format":e.conference.conferenceID.setValidity("pattern",!1);break;case"conf_id_used":e.conference.conferenceID.setValidity("used",!1);break;case"conf_start_date_missing":e.conference.startDate.setValidity("required",!1);break;case"conf_end_date_missing":e.conference.endDate.setValidity("required",!1);break;case"conf_start_date_invalid":e.conference.startDate.setValidity("invalid",!1);break;case"conf_end_date_invalid":e.conference.endDate.setValidity("invalid",!1);break;default:e.conference.setValidity("error",!1);break}}e.submit=function(){let v=ze({title:`Creating ${e.options.name}...`,date:new Date,body:`The conference ${e.options.conferenceID} is in creation.`});e.editionMode&&(v.title=`Updating ${e.options.name}...`,v.body=`The conference '${e.options.conferenceID}' is updating.`),e.addToast(v),f(),t.post("/api/conferences/"+(e.editionMode?e.options.conferenceID:""),e.options).then(()=>{e.editionMode?(v.title=`${e.options.name} updated`,v.body=`The conference '${e.options.conferenceID}' is updated.`):(v.title=`${e.options.name} created`,v.body=`The conference '${e.options.conferenceID}' is created.`),o.url("/conference/"+e.options.conferenceID)},k=>{h(k.data.error),e.removeToast(v)})}},qa=function(e,t,o,r){e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.conference=null,e.search="",e.filters={status:{ready:!0,expired:!1,removed:!1}},e.orderBy="-anonymizeDate",e.repoFiler=i=>e.filters.status[i.status]==!1?!1:e.search.trim().length==0||i.source.fullName.indexOf(e.search)>-1||i.repoId.indexOf(e.search)>-1;function n(){t.get("/api/conferences/"+r.conferenceId).then(i=>{e.conference=i.data})}n()},Ma=function(e,t){e.connections=null,e.connectionError="",e.busy=!1,e.loadConnections=()=>t.get("/github/connections").then(o=>{e.connections=o.data}).catch(o=>{e.connectionError=o.data?.error||"Unable to load connections."}),e.changeConnection=async(o,r,n)=>{e.busy=!0,e.connectionError="";try{let i=await t.post("/github/connections/migrate",{type:o.type,id:o.id,connection:r,preview:n},{headers:{"X-CSRF-Token":e.connections.csrf}});n?o.eligible=i.data.eligible:await e.loadConnections()}catch(i){e.connectionError=i.data?.error||"Unable to change connection."}finally{e.busy=!1}},e.disconnectOAuth=async()=>{e.busy=!0;try{await t.post("/github/connections/disconnect-oauth",{},{headers:{"X-CSRF-Token":e.connections.csrf}}),await e.loadConnections()}catch(o){e.connectionError=o.data?.error||"Unable to disconnect OAuth."}finally{e.busy=!1}},e.loadConnections()},$a=function(e,t){e.accountRecovery=!1,t.get("/github/account-recovery").then(o=>{e.accountRecovery=o.data.required}).catch(()=>{})};var La=function(e,t,o){let r=mt(),n=as();e.Math=Math,e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.repositories=[],e.total=-1,e.totalPage=0,e.statusCounts=[],e.totalSize=0,e.selected={},e.allSelected=!1;let i=w=>{if(w.key==="/"&&!["INPUT","TEXTAREA","SELECT"].includes(document.activeElement?.tagName)){w.preventDefault();let b=document.querySelector('.admin-filter-toolbar input[type="search"]');b&&b.focus()}};n(document,"keydown",i),e.on("dispose",()=>document.removeEventListener("keydown",i)),e.clearFilter=w=>{w==="dateRange"?(e.query.dateFrom="",e.query.dateTo=""):e.query[w]="",e.query.page=1},e.chips=[];let a=()=>{let w=[];e.query.owner&&w.push({key:"owner",label:"Owner",value:e.query.owner}),e.query.conference&&w.push({key:"conference",label:"Conference",value:e.query.conference}),e.chips=w};e.showStatusMessage=w=>{let b=w.statusMessage||"(no message)";window.prompt(`Status message for ${w.repoId} (${w.status}):`,b)},e.fetchGithubInfo=w=>{let b=window.open("","_blank");b&&b.document.write("<pre>Loading GitHub info for "+w.repoId+"...</pre>"),t.get("/api/admin/repos/"+w.repoId+"/github").then(T=>{b&&(b.document.open(),b.document.write('<pre style="font:13px monospace;padding:16px;white-space:pre-wrap">'+JSON.stringify(T.data,null,2).replace(/[<>]/g,N=>N==="<"?"<":">")+"</pre>"),b.document.close())},T=>{let N=T&&T.data?JSON.stringify(T.data,null,2):String(T);b&&(b.document.body.innerHTML='<pre style="color:#B42318;padding:16px">'+N+"</pre>")})},e.statusCountFor=w=>{let b=(e.statusCounts||[]).find(T=>T._id===w);return b?b.count:0},e.statusStorageFor=w=>{let b=(e.statusCounts||[]).find(T=>T._id===w);return b?b.storage:0},e.isErrorsOnly=()=>e.query&&e.query.error&&!e.query.ready&&!e.query.preparing&&!e.query.expired&&!e.query.removed,e.toggleErrorsOnly=()=>{e.isErrorsOnly()?Object.assign(e.query,{ready:!1,preparing:!0,expired:!1,removed:!1,error:!0}):Object.assign(e.query,{ready:!1,preparing:!1,expired:!1,removed:!1,error:!0}),e.query.page=1},e.toggleSortDirection=()=>{e.query.direction=e.query.direction==="asc"?"desc":"asc"},e.sortBy=w=>{e.query.sort===w?e.query.direction=e.query.direction==="asc"?"desc":"asc":(e.query.sort=w,e.query.direction="desc"),e.query.page=1},e.sortIcon=w=>e.query.sort===w?e.query.direction==="asc"?"fa-arrow-up":"fa-arrow-down":"";let u="admin.repos.filterPrefs",f={page:1,limit:25,sort:"lastView",direction:"desc",search:"",owner:"",conference:"",dateFrom:"",dateTo:"",ready:!1,expired:!1,removed:!1,error:!0,preparing:!0},h=loadFilterPrefs(u)||{};e.query=Object.assign({},f,h,{page:1,search:""});let v=o.search();v.owner&&(e.query.owner=v.owner),v.conference&&(e.query.conference=v.conference),v.search&&(e.query.search=v.search);let k="admin.repos.presets";e.presets=JSON.parse(localStorage.getItem(k)||"[]"),e.savePreset=()=>{let w=window.prompt("Preset name:");if(!w)return;let b=Object.assign({},e.query);delete b.page,e.presets=(e.presets||[]).filter(T=>T.name!==w),e.presets.push({name:w,query:b}),localStorage.setItem(k,JSON.stringify(e.presets))},e.applyPreset=w=>{Object.assign(e.query,w.query,{page:1})},e.deletePreset=w=>{e.presets=(e.presets||[]).filter(b=>b.name!==w.name),localStorage.setItem(k,JSON.stringify(e.presets))},e.selectAllOnPage=()=>{e.allSelected=!e.allSelected,e.repositories.forEach(w=>{e.selected[w.repoId]=e.allSelected})},e.selectedCount=()=>Object.values(e.selected||{}).filter(Boolean).length,e.selectedRepos=()=>e.repositories.filter(w=>e.selected[w.repoId]),e.bulkRefresh=()=>{let w=e.selectedRepos();w.length&&confirm(`Force refresh ${w.length} repositories?`)&&w.forEach(b=>e.updateRepository(b))},e.bulkRemoveCache=()=>{let w=e.selectedRepos();w.length&&confirm(`Purge cache for ${w.length} repositories?`)&&w.forEach(b=>e.removeCache(b))},e.clearSelection=()=>{e.selected={},e.allSelected=!1},e.exportCsv=()=>{let w=new URLSearchParams(Object.entries(e.query).filter(([,b])=>b!==""&&b!==!1&&b!=null));w.set("format","csv"),w.set("limit","10000"),window.open("/api/admin/repos?"+w.toString(),"_blank")},e.removeCache=w=>{confirm("Remove cached files for "+w.repoId+"?")&&t.delete("/api/admin/repos/"+w.repoId).then(()=>p(),b=>console.error(b))},e.removeRepository=w=>{confirm("Remove repository "+w.repoId+"?")&&t.delete("/api/repo/"+w.repoId+"/").then(()=>p(),b=>console.error(b))},e.updateRepository=w=>{let b=ze({title:`Refreshing ${w.repoId}...`,date:new Date,body:`The repository ${w.repoId} is going to be refreshed.`});e.toasts.push(b),t.post(`/api/repo/${w.repoId}/refresh`).then(T=>{T.data.status=="ready"?b.title=`${w.repoId} is refreshed.`:b.title=`Refreshing of ${w.repoId}.`},T=>{b.title=`Error during the refresh of ${w.repoId}.`,b.body=T.body})},e.fetchError=null;function p(){e.fetchError=null,t.get("/api/admin/repos",{params:e.query}).then(w=>{e.total=w.data.total,e.totalPage=Math.ceil(w.data.total/e.query.limit),e.repositories=w.data.results,e.statusCounts=w.data.statusCounts||[],e.totalSize=w.data.totalSize||0,e.allSelected=!1},w=>{e.fetchError=w&&w.data&&w.data.error||"Failed to load repositories",console.error(w)})}p();let g=null;e.watch("query",()=>{r.timeout.cancel(g),g=r.timeout(p,500);let{page:w,search:b,...T}=e.query;saveFilterPrefs(u,T),a()},!0),a()},Ua=function(e,t,o){let r=mt(),n=as();e.Math=Math,e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.users=[],e.total=-1,e.totalPage=0,e.statusCounts=[],e.selected={},e.allSelected=!1;let i=p=>{if(p.key==="/"&&!["INPUT","TEXTAREA","SELECT"].includes(document.activeElement?.tagName)){p.preventDefault();let g=document.querySelector('.admin-filter-toolbar input[type="search"]');g&&g.focus()}};n(document,"keydown",i),e.on("dispose",()=>document.removeEventListener("keydown",i)),e.clearFilter=p=>{p==="dateRange"?(e.query.dateFrom="",e.query.dateTo=""):e.query[p]="",e.query.page=1},e.chips=[];let a=()=>{let p=[];e.query.role&&p.push({key:"role",label:"Role",value:e.query.role}),e.chips=p};e.statusCountFor=p=>{let g=(e.statusCounts||[]).find(w=>w._id===p);return g?g.count:0},e.toggleSortDirection=()=>{e.query.direction=e.query.direction==="asc"?"desc":"asc"},e.sortBy=p=>{e.query.sort===p?e.query.direction=e.query.direction==="asc"?"desc":"asc":(e.query.sort=p,e.query.direction="desc"),e.query.page=1},e.sortIcon=p=>e.query.sort===p?e.query.direction==="asc"?"fa-arrow-up":"fa-arrow-down":"";let u="admin.users.filterPrefs",f={page:1,limit:25,sort:"username",direction:"asc",search:"",status:"",role:"",dateFrom:"",dateTo:""},h=loadFilterPrefs(u)||{};e.query=Object.assign({},f,h,{page:1,search:""}),e.selectAllOnPage=()=>{e.allSelected=!e.allSelected,e.users.forEach(p=>{e.selected[p.username]=e.allSelected})},e.selectedCount=()=>Object.values(e.selected||{}).filter(Boolean).length,e.selectedUsers=()=>e.users.filter(p=>e.selected[p.username]),e.banUser=p=>{confirm(`Ban user ${p.username}?`)&&t.post(`/api/admin/users/${p.username}/ban`).then(v,g=>console.error(g))},e.activateUser=p=>{t.post(`/api/admin/users/${p.username}/activate`).then(v,g=>console.error(g))},e.bulkBan=()=>{let p=e.selectedUsers();p.length&&confirm(`Ban ${p.length} users?`)&&p.forEach(g=>e.banUser(g))},e.exportCsv=()=>{let p=new URLSearchParams(Object.entries(e.query).filter(([,g])=>g!==""&&g!==!1&&g!=null));p.set("format","csv"),p.set("limit","10000"),window.open("/api/admin/users?"+p.toString(),"_blank")},e.fetchError=null;function v(){e.fetchError=null,t.get("/api/admin/users",{params:e.query}).then(p=>{e.total=p.data.total,e.totalPage=Math.ceil(p.data.total/e.query.limit),e.users=p.data.results,e.statusCounts=p.data.statusCounts||[],e.allSelected=!1},p=>{e.fetchError=p&&p.data&&p.data.error||"Failed to load users",console.error(p)})}v();let k=null;e.watch("query",()=>{r.timeout.cancel(k),k=r.timeout(v,500);let{page:p,search:g,...w}=e.query;saveFilterPrefs(u,w),a()},!0),a()},Fa=function(e,t,o,r){let n=mt();e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.userInfo,e.repositories=[],e.search="",e.selected={},e.allSelected=!1;let i="admin.user.filterPrefs",a={filters:{status:{ready:!0,expired:!0,removed:!0,error:!0,preparing:!0}},sort:"anonymizeDate",direction:"desc"},u=loadFilterPrefs(i)||{};e.filters={status:Object.assign({},a.filters.status,u.filters&&u.filters.status||{})},e.query={sort:u.sort||a.sort,direction:u.direction||a.direction},e.orderBy=(e.query.direction==="asc"?"":"-")+e.query.sort,e.sortBy=p=>{e.query.sort===p?e.query.direction=e.query.direction==="asc"?"desc":"asc":(e.query.sort=p,e.query.direction="desc"),e.orderBy=(e.query.direction==="asc"?"":"-")+e.query.sort},e.sortIcon=p=>e.query.sort===p?e.query.direction==="asc"?"fa-arrow-up":"fa-arrow-down":"",e.watch("query",()=>{saveFilterPrefs(i,{filters:e.filters,sort:e.query.sort,direction:e.query.direction})},!0),e.watch("filters",()=>{saveFilterPrefs(i,{filters:e.filters,sort:e.query.sort,direction:e.query.direction})},!0),e.statusCountFor=p=>(e.repositories||[]).filter(g=>g.status===p).length,e.repoFiler=p=>e.filters.status[p.status]==!1?!1:!!(e.search.trim().length==0||p.source.fullName.indexOf(e.search)>-1||p.repoId.indexOf(e.search)>-1||p.statusMessage&&p.statusMessage.indexOf(e.search)>-1||p.conference&&p.conference.indexOf(e.search)>-1),e.selectAllOnPage=()=>{e.allSelected=!e.allSelected,(e.filteredRepositories||e.repositories).forEach(p=>{e.selected[p.repoId]=e.allSelected})},e.selectedCount=()=>Object.values(e.selected||{}).filter(Boolean).length,e.selectedRepos=()=>e.repositories.filter(p=>e.selected[p.repoId]),e.bulkRefresh=()=>{let p=e.selectedRepos();p.length&&confirm(`Force refresh ${p.length} repositories?`)&&p.forEach(g=>e.updateRepository(g))},e.bulkRemoveCache=()=>{let p=e.selectedRepos();p.length&&confirm(`Purge cache for ${p.length} repositories?`)&&p.forEach(g=>e.removeCache(g))},e.clearSelection=()=>{e.selected={},e.allSelected=!1},e.exportCsv=()=>{let p=e.filteredRepositories||e.repositories,w=["repoId","status","statusMessage","pageView","anonymizeDate","source.fullName","conference","size.storage"].join(","),b=p.map(R=>[R.repoId,R.status,R.statusMessage||"",R.pageView||0,R.anonymizeDate||"",R.source&&R.source.fullName||"",R.conference||"",R.size&&R.size.storage||0].map(I=>{let C=String(I??"");return/[",\n\r]/.test(C)?'"'+C.replace(/"/g,'""')+'"':C}).join(",")),T=new Blob([w+`
|
|
`+b.join(`
|
|
`)],{type:"text/csv"}),N=document.createElement("a");N.href=URL.createObjectURL(T),N.download=r.username+"-repositories.csv",N.click()},e.showStatusMessage=p=>{let g=p.statusMessage||"(no message)";window.prompt(`Status message for ${p.repoId} (${p.status}):`,g)},e.fetchGithubInfo=p=>{let g=window.open("","_blank");g&&g.document.write("<pre>Loading GitHub info for "+p.repoId+"...</pre>"),t.get("/api/admin/repos/"+p.repoId+"/github").then(w=>{g&&(g.document.open(),g.document.write('<pre style="font:13px monospace;padding:16px;white-space:pre-wrap">'+JSON.stringify(w.data,null,2).replace(/[<>]/g,b=>b==="<"?"<":">")+"</pre>"),g.document.close())},w=>{let b=w&&w.data?JSON.stringify(w.data,null,2):String(w);g&&(g.document.body.innerHTML='<pre style="color:#B42318;padding:16px">'+b+"</pre>")})};function f(p){t.get("/api/admin/users/"+p+"/repos",{}).then(g=>{e.repositories=g.data},g=>{console.error(g)})}function h(p){t.get("/api/admin/users/"+p,{}).then(g=>{e.userInfo=g.data},g=>{console.error(g)})}h(r.username),f(r.username),e.banUser=()=>{confirm(`Ban user ${r.username}?`)&&t.post(`/api/admin/users/${r.username}/ban`).then(()=>h(r.username),p=>console.error(p))},e.activateUser=()=>{t.post(`/api/admin/users/${r.username}/activate`).then(()=>h(r.username),p=>console.error(p))},e.promoteUser=()=>{confirm(`Promote ${r.username} to admin?`)&&t.post(`/api/admin/users/${r.username}/promote`).then(()=>h(r.username),p=>console.error(p))},e.demoteUser=()=>{confirm(`Remove admin privileges from ${r.username}?`)&&t.post(`/api/admin/users/${r.username}/demote`).then(()=>h(r.username),p=>console.error(p))},e.tokens=[],e.tokenForm={name:"",plaintext:null};function v(){t.get("/api/admin/tokens").then(p=>{e.tokens=p.data||[]},p=>{p.status!==401&&p.status!==403&&console.error(p)})}v(),e.createToken=()=>{e.tokenForm.name&&t.post("/api/admin/tokens",{name:e.tokenForm.name}).then(p=>{e.tokenForm.plaintext=p.data.token,e.tokenForm.name="",v()},p=>console.error(p))},e.revokeToken=p=>{confirm(`Revoke token "${p.name}"?`)&&t.delete("/api/admin/tokens/"+p.id).then(()=>v(),g=>console.error(g))},e.removeCache=p=>{confirm("Remove cached files for "+p.repoId+"?")&&t.delete("/api/admin/repos/"+p.repoId).then(()=>f(r.username),g=>console.error(g))},e.removeRepository=p=>{confirm("Remove repository "+p.repoId+"?")&&t.delete("/api/repo/"+p.repoId+"/").then(()=>f(r.username),g=>console.error(g))},e.updateRepository=p=>{let g=ze({title:`Refreshing ${p.repoId}...`,date:new Date,body:`The repository ${p.repoId} is going to be refreshed.`});e.toasts.push(g),t.post(`/api/repo/${p.repoId}/refresh`).then(w=>{w.data.status=="ready"?g.title=`${p.repoId} is refreshed.`:g.title=`Refreshing of ${p.repoId}.`},w=>{g.title=`Error during the refresh of ${p.repoId}.`,g.body=w.body})},e.getGitHubRepositories=p=>{t.get(`/api/user/${e.userInfo.username}/all_repositories`,{params:{force:"1"}}).then(g=>{e.userInfo.repositories=g.data})};let k=null;e.watch("query",()=>{n.timeout.cancel(k),k=n.timeout(()=>{f(r.username)},500)},!0)},za=function(e,t,o){let r=mt(),n=as();e.Math=Math,e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.conferences=[],e.total=-1,e.totalPage=0,e.statusCounts=[];let i=w=>{if(w.key==="/"&&!["INPUT","TEXTAREA","SELECT"].includes(document.activeElement?.tagName)){w.preventDefault();let b=document.querySelector('.admin-filter-toolbar input[type="search"]');b&&b.focus()}};n(document,"keydown",i),e.on("dispose",()=>document.removeEventListener("keydown",i)),e.clearFilter=w=>{w==="dateRange"?(e.query.dateFrom="",e.query.dateTo=""):e.query[w]="",e.query.page=1},e.chips=[];let a=()=>{let w=[];(e.query.dateFrom||e.query.dateTo)&&w.push({key:"dateRange",label:"Date",value:(e.query.dateFrom||"\u2026")+" \u2013 "+(e.query.dateTo||"\u2026")}),e.chips=w};e.statusCountFor=w=>{let b=(e.statusCounts||[]).find(T=>T._id===w);return b?b.count:0},e.toggleSortDirection=()=>{e.query.direction=e.query.direction==="asc"?"desc":"asc"},e.sortBy=w=>{e.query.sort===w?e.query.direction=e.query.direction==="asc"?"desc":"asc":(e.query.sort=w,e.query.direction="desc"),e.query.page=1},e.sortIcon=w=>e.query.sort===w?e.query.direction==="asc"?"fa-arrow-up":"fa-arrow-down":"";let u="admin.conferences.filterPrefs",f={page:1,limit:25,sort:"name",direction:"asc",search:"",dateFrom:"",dateTo:"",ready:!1,expired:!1,removed:!1,error:!0,preparing:!0},h=loadFilterPrefs(u)||{};e.query=Object.assign({},f,h,{page:1,search:""});let v=o.search();v.search&&(e.query.search=v.search);let k="admin.conferences.presets";e.presets=JSON.parse(localStorage.getItem(k)||"[]"),e.savePreset=()=>{let w=window.prompt("Preset name:");if(!w)return;let b=Object.assign({},e.query);delete b.page,e.presets=(e.presets||[]).filter(T=>T.name!==w),e.presets.push({name:w,query:b}),localStorage.setItem(k,JSON.stringify(e.presets))},e.applyPreset=w=>{Object.assign(e.query,w.query,{page:1})},e.deletePreset=w=>{e.presets=(e.presets||[]).filter(b=>b.name!==w.name),localStorage.setItem(k,JSON.stringify(e.presets))},e.removeConference=w=>{confirm("Remove conference "+w.conferenceID+"?")&&t.delete("/api/admin/conferences/"+w.conferenceID).then(()=>p(),b=>console.error(b))},e.exportCsv=()=>{let w=new URLSearchParams(Object.entries(e.query).filter(([,b])=>b!==""&&b!==!1&&b!=null));w.set("format","csv"),w.set("limit","10000"),window.open("/api/admin/conferences?"+w.toString(),"_blank")},e.fetchError=null;function p(){e.fetchError=null,t.get("/api/admin/conferences",{params:e.query}).then(w=>{e.total=w.data.total,e.totalPage=Math.ceil(w.data.total/e.query.limit),e.conferences=w.data.results,e.statusCounts=w.data.statusCounts||[]},w=>{e.fetchError=w&&w.data&&w.data.error||"Failed to load conferences",console.error(w)})}p();let g=null;e.watch("query",()=>{r.timeout.cancel(g),g=r.timeout(p,500);let{page:w,search:b,...T}=e.query;saveFilterPrefs(u,T),a()},!0),a()},Ha=function(e,t,o,r,n){let i=mt();e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.queueList=[],e.jobs=[],e.selectedQueue="download",e.selectedStats=null,e.range="1h",e.allStates=["active","waiting","delayed","failed","completed"],e.stateFilter={active:!0,waiting:!0,delayed:!0,failed:!0,completed:!0},e.query={search:"",autoRefresh:!0},e.filteredJobs=()=>(e.jobs||[]).filter(b=>e.stateFilter[b._state]),e.jobProgressPct=b=>b&&b.progress&&typeof b.progress=="object"&&typeof b.progress.percent=="number"?Math.max(0,Math.min(100,Math.round(b.progress.percent))):typeof b.progress=="number"?Math.max(0,Math.min(100,Math.round(b.progress))):null,e.jobDuration=b=>{if(!b.processedOn)return"-";let N=(b.finishedOn||Date.now())-b.processedOn;return N<1e3?N+"ms":(N/1e3).toFixed(1)+"s"},e.metricsPoints=[],e.selectQueue=b=>{e.selectedQueue=b,a(),u()},e.setRange=b=>{e.range=b,u()};function a(){let b={queue:e.selectedQueue,search:e.query.search};t.get("/api/admin/queues",{params:b}).then(T=>{e.queueList=T.data.queues||[],e.jobs=T.data.jobs||[],e.selectedStats=e.queueList.find(N=>N.key===e.selectedQueue)||e.queueList[0]||null},T=>console.error(T))}function u(){t.get("/api/admin/queues/metrics",{params:{queue:e.selectedQueue,range:e.range}}).then(b=>{e.metricsPoints=b.data.points||[],n(p,0)},b=>console.error(b))}a(),u();let f=r(()=>{e.query.autoRefresh&&(a(),u())},15e3);e.on("dispose",()=>r.cancel(f)),e.refreshNow=function(){a(),u()};function h(b){let T=b&&b.data&&(b.data.message||b.data.error)||"Request failed";e.actionError=T,n(()=>{e.actionError=null},5e3),console.error(b)}e.actionError=null,e.removeJob=b=>{t.delete(`/api/admin/queue/${e.selectedQueue}/${b.id}`).then(a,h)},e.retryJob=b=>{t.post(`/api/admin/queue/${e.selectedQueue}/${b.id}`).then(a,h)},e.retryFailed=()=>{confirm(`Retry all failed jobs in ${e.selectedQueue}?`)&&t.post(`/api/admin/queue/${e.selectedQueue}/retry-failed`).then(a,b=>console.error(b))},e.drainSelected=()=>{confirm(`Drain the ${e.selectedQueue} queue?`)&&t.post(`/api/admin/queue/${e.selectedQueue}/drain`).then(a,b=>console.error(b))},e.togglePause=()=>{let b=e.selectedStats&&e.selectedStats.paused?"resume":"pause";t.post(`/api/admin/queue/${e.selectedQueue}/${b}`).then(a,T=>console.error(T))},e.emptyQueue=()=>{confirm(`Empty the ${e.selectedQueue} queue? This removes ALL jobs.`)&&t.post(`/api/admin/queue/${e.selectedQueue}/empty`).then(a,b=>console.error(b))},e.pauseAll=()=>{confirm("Pause all queues?")&&t.post("/api/admin/queues/pause-all").then(a,b=>console.error(b))};let v=null;e.watch("query.search",()=>{i.timeout.cancel(v),v=i.timeout(a,350)}),e.expanded={},e.toggleJob=b=>{e.expanded[b.id]=!e.expanded[b.id]},e.humanTime=b=>{if(!b)return"";let T=new Date(b);return T.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})+" "+T.toLocaleDateString([],{month:"short",day:"numeric"})},e.delayCountdown=b=>{if(!b)return"";var T=Math.max(0,Math.ceil((b-Date.now())/1e3));if(T<=0)return"resuming soon";var N=Math.floor(T/60),R=T%60;return"in "+(N>0?N+"m "+R+"s":R+"s")};function k(b){if(b<=0)return{ticks:[0],niceMax:1};let T=Math.pow(10,Math.floor(Math.log10(b))),N=T;b/N<2?N=T/2:b/N>5&&(N=T*2);let R=Math.ceil(b/N)*N,I=[];for(let C=0;C<=R;C+=N)I.push(C);return{ticks:I,niceMax:R}}function p(){var b=document.getElementById("q-throughput-chart");if(!b)return;var T=b.getContext("2d"),N=window.devicePixelRatio||1,R=b.parentElement.getBoundingClientRect(),I=44,C=50,A=20,P=R.width-40,x=180,Q=P-I-C,K=x-A;b.width=P*N,b.height=x*N,b.style.width=P+"px",b.style.height=x+"px",T.setTransform(N,0,0,N,0,0);var z=document.body.classList.contains("dark-mode"),ae="#8A857C",se=z?"rgba(255,255,255,0.06)":"rgba(0,0,0,0.06)",re=z?"#A7B2FF":"#3B4AD6",ue=z?"rgba(167,178,255,0.12)":"rgba(59,74,214,0.08)",ke=z?"#F08A82":"#B42318",he=z?"rgba(240,138,130,0.08)":"rgba(180,35,24,0.06)",me=z?"#F5C842":"#B8860B",pe=e.metricsPoints||[];if(pe.length===0){T.fillStyle=ae,T.font="12px monospace",T.textAlign="center",T.fillText("No metrics data yet",P/2,x/2),g=null;return}var Te=pe.map(function(M){return M.completed}),Re=pe.map(function(M){return M.failed}),Se=pe.map(function(M){return M.avgMs}),D=pe.length,V=Q/(D-1||1),j=Math.max(1,Math.max.apply(null,Te),Math.max.apply(null,Re)),oe=k(j),le=Math.max.apply(null,Se),L=le>0?k(le):{ticks:[0],niceMax:1},te=function(M){return K-M/oe.niceMax*(K-10)},U=function(M){return K-M/L.niceMax*(K-10)},W=function(M){return I+M*V};T.textAlign="right",T.textBaseline="middle",T.font="10px monospace",oe.ticks.forEach(function(M){var J=te(M);T.strokeStyle=se,T.lineWidth=1,T.beginPath(),T.moveTo(I,J),T.lineTo(P-C,J),T.stroke(),T.fillStyle=ae,T.fillText(M>=1e3?(M/1e3).toFixed(1)+"k":String(M),I-6,J)}),le>0&&(T.textAlign="left",L.ticks.forEach(function(M){var J=U(M);T.fillStyle=me,T.fillText(M>=1e3?(M/1e3).toFixed(1)+"s":M+"ms",P-C+6,J)}));var fe=Date.now(),Ce=Math.min(6,D);T.textAlign="center",T.textBaseline="top";for(var ce=0;ce<Ce;ce++){var _=Math.round(ce/(Ce-1)*(D-1)),S=Math.round((fe-pe[_].ts)/6e4),q=W(_),F;S<=0?F="now":S<60?F=S+"m":S<1440?F=Math.round(S/60)+"h":F=Math.round(S/1440)+"d",T.fillStyle=ae,T.fillText(F,q,K+4)}function G(M,J,Z,X){M.length!==0&&(T.beginPath(),T.moveTo(W(0),K),M.forEach(function(H,de){var ee=W(de),ie=J(H);if(de===0)T.lineTo(ee,ie);else{var ve=(W(de-1)+ee)/2;T.bezierCurveTo(ve,J(M[de-1]),ve,ie,ee,ie)}}),T.lineTo(W(M.length-1),K),T.closePath(),T.fillStyle=Z,T.fill(),T.beginPath(),M.forEach(function(H,de){var ee=W(de),ie=J(H);if(de===0)T.moveTo(ee,ie);else{var ve=(W(de-1)+ee)/2;T.bezierCurveTo(ve,J(M[de-1]),ve,ie,ee,ie)}}),T.strokeStyle=X,T.lineWidth=1.5,T.stroke())}G(Te,te,ue,re),G(Re,te,he,ke),le>0&&(T.beginPath(),Se.forEach(function(M,J){var Z=W(J),X=U(M);if(J===0)T.moveTo(Z,X);else{var H=(W(J-1)+Z)/2;T.bezierCurveTo(H,U(Se[J-1]),H,X,Z,X)}}),T.strokeStyle=me,T.lineWidth=1,T.setLineDash([4,3]),T.stroke(),T.setLineDash([])),g={pts:pe,maxLen:D,marginLeft:I,step:V,totalW:P,toX:W}}var g=null;function w(){var b=document.getElementById("q-throughput-chart");if(!(!b||b._tipBound)){b._tipBound=!0;var T=document.getElementById("q-chart-tooltip"),N=document.getElementById("q-chart-crosshair");b.addEventListener("mousemove",function(R){if(!(!g||!T||!N)){var I=g,C=b.getBoundingClientRect(),A=R.clientX-C.left,P=Math.round((A-I.marginLeft)/I.step);if(P<0||P>=I.maxLen){T.style.display="none",N.style.display="none";return}var x=I.pts[P],Q=Date.now(),K=Math.round((Q-x.ts)/6e4),z;if(K<=0)z="now";else if(K<60)z=K+"m ago";else if(K<1440){var ae=Math.floor(K/60),se=K%60;z=ae+"h"+(se?" "+se+"m":"")+" ago"}else z=Math.round(K/1440)+"d ago";var re='<div class="q-tip-time">'+z+'</div><div class="q-tip-completed">● completed: '+x.completed+'/min</div><div class="q-tip-failed">● failed: '+x.failed+"/min</div>";if(x.avgMs>0){var ue=x.avgMs>=1e3?(x.avgMs/1e3).toFixed(1)+"s":x.avgMs+"ms";re+='<div class="q-tip-exec">● avg time: '+ue+"</div>"}T.innerHTML=re;var ke=I.toX(P),he=T.offsetWidth,me=ke+10;me+he>I.totalW&&(me=ke-he-10),T.style.display="block",T.style.left=me+"px",T.style.top="8px",N.style.display="block",N.style.left=ke+"px"}}),b.addEventListener("mouseleave",function(){T&&(T.style.display="none"),N&&(N.style.display="none")})}}e.watch("metricsPoints",function(){n(w,50)})},Ba=function(e,t,o,r){let n=mt();e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null&&o.url("/"),e.entries=[],e.visible=[],e.available=!0,e.cap=1e3,e.total=0,e.pageSize=250,e.expanded={},e.detailTab={},e.copyHint="",e.parsedFilterCount=0,e.stats={last24h:0,prev24h:0,delta:0,severity:{error:0,warn:0,info:0},unique:{error:0,warn:0,info:0},buckets:[],dropped:0},e.query={search:"",bucket:"",sort:"recent",group:"code",autoRefresh:!0},e.relTime=N=>{if(!N)return"";let R=new Date(N).getTime();if(isNaN(R))return N;let I=Math.max(0,Date.now()-R),C=Math.floor(I/1e3);if(C<5)return"just now";if(C<60)return`${C}s ago`;let A=Math.floor(C/60);if(A<60)return`${A}m ago`;let P=Math.floor(A/60);if(P<24)return`${P}h ago`;let x=Math.floor(P/24);return x<7?`${x}d ago`:new Date(N).toLocaleDateString()},e.absTime=N=>{if(!N)return"";let R=new Date(N);return isNaN(R.getTime())?N:R.toLocaleString()},e.absTimeShort=N=>{if(!N)return"";let R=new Date(N);return isNaN(R.getTime())?N:R.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1})};let i=/^[a-zA-Z][a-zA-Z0-9]*(?:_[a-zA-Z0-9]+)+$/;function a(N,R){let I=N&&(N.httpStatus||N.status)||null;if(typeof I=="number"){if(I>=500)return"error";if(I===401||I===403||I===404)return"info";if(I>=400)return"warn"}return R==="error"?"error":R==="warn"?"warn":"info"}function u(N){let R=(N.raw||[]).find(P=>P&&typeof P=="object"&&!Array.isArray(P));if(R){R.message&&i.test(R.message)?(N.displayMessage=R.message,N.displayContext=N.message):R.code&&i.test(String(R.code))?(N.displayMessage=String(R.code),N.displayContext=N.message):R.name&&R.name!=="AnonymousError"&&R.name!=="Error"?(N.displayMessage=R.name,N.displayContext=R.message||N.message):N.displayMessage=N.message,N._status=R.httpStatus||R.status||null,N._url=R.url||null,N._method=R.method||null,N._repoId=R.repoId||R.detail||null,N._detail=R.detail&&R.detail!==N._repoId?R.detail:null;let P=typeof R.stack=="string"?R.stack:null;for(var I=[R.cause,R.err].filter(Boolean),C=0;!P&&C<I.length;C++)for(var A=I[C];!P&&A&&typeof A=="object";)typeof A.stack=="string"&&(P=A.stack),A=A.cause;N._stack=P}else N.displayMessage=N.message,N._status=null,N._url=null,N._stack=null;return N._bucket=a(R,N.level),N._detailJson=f(N,R),N}function f(N,R){let I=[],C=(Q,K)=>{K==null||K===""||I.push([Q,K])};C("name",R&&R.name),C("code",N.displayMessage||R&&R.message),N._bucket&&C("kind",N._bucket),C("httpStatus",R&&R.httpStatus),R&&R.status&&!R.httpStatus&&C("status",R.status),C("module",N.module);let A=R&&R.detail;if(typeof A=="string"){let Q=A.trim();if(Q[0]==="{"||Q[0]==="[")try{A=JSON.parse(A)}catch{}}if(C("detail",A),C("repoId",R&&R.repoId),C("filePath",R&&R.filePath),C("upstreamStatus",R&&R.upstreamStatus),C("upstreamBody",R&&R.upstreamBody),C("url",N._url),C("err",R&&R.err),C("cause",R&&!R.err&&R.cause),C("ts",N.ts),!I.length)return JSON.stringify(N,null,2);let P=I.reduce((Q,K)=>Math.max(Q,K[0].length),0),x=["{"];return I.forEach(([Q,K],z)=>{let se=` ${`"${Q}":`.padEnd(P+3," ")} `,re=z<I.length-1?",":"",ue;if(K&&typeof K=="object"){let ke=" ".repeat(se.length);ue=JSON.stringify(K,null,2).split(`
|
|
`).map((he,me)=>me===0?he:ke+he).join(`
|
|
`)}else typeof K=="number"||typeof K=="boolean"?ue=String(K):ue=JSON.stringify(K);x.push(`${se}${ue}${re}`)}),x.push("}"),x.join(`
|
|
`)}function h(N){let R=[],I="",C=/(\w+):(>=|<=|!=|>|<|=)?([^\s]+)/g,A=0,P;for(;P=C.exec(N);)I+=N.slice(A,P.index),A=C.lastIndex,R.push({key:P[1],op:P[2]||"=",val:P[3]});return I+=N.slice(A),{filters:R,free:I.trim().toLowerCase()}}function v(N,R){for(let I of R.filters){let C=(P,x,Q)=>{let K=parseFloat(P),z=parseFloat(x);return Q==="="?String(P)===String(x):Q==="!="?String(P)!==String(x):Q===">="?K>=z:Q==="<="?K<=z:Q===">"?K>z:Q==="<"?K<z:!0},A;if(I.key==="code")A=N.displayMessage;else if(I.key==="module")A=N.module;else if(I.key==="status")A=N._status;else if(I.key==="url")A=N._url;else if(I.key==="repo")A=N._repoId;else if(I.key==="level")A=N.level;else continue;if(A==null||!C(A,I.val,I.op))return!1}return!(R.free&&((N.displayMessage||"")+" "+(N.module||"")+" "+(N._url||"")+" "+JSON.stringify(N.raw||[])).toLowerCase().indexOf(R.free)===-1)}function k(){let N=h(e.query.search||"");e.parsedFilterCount=N.filters.length;let R=e.query.bucket,I=e.entries.filter(A=>R&&A._bucket!==R?!1:v(A,N)),C=e.query.group;if(C){let A=Q=>C==="module"?Q.module:Q.displayMessage||Q.message||"_",P=new Map;for(let Q of I){let K=A(Q);if(P.has(K)){let z=P.get(K);z.count++,z._related.push(Q),new Date(Q.ts)>new Date(z.ts)&&(z.ts=Q.ts,z._url=Q._url,z._status=Q._status),new Date(Q.ts)<new Date(z._firstSeen)&&(z._firstSeen=Q.ts)}else{let z=Object.assign({},Q);z._key=`${C}:${K}`,z._related=[Q],z._firstSeen=Q.ts,z._lastHourCount=0,z.count=1,P.set(K,z)}}let x=Date.now()-3600*1e3;for(let Q of P.values())Q._lastHourCount=Q._related.filter(K=>new Date(K.ts).getTime()>=x).length;I=Array.from(P.values())}else I=I.map((A,P)=>(A._key="row:"+P+":"+A.ts,A._related=[A],A._firstSeen=A.ts,A._lastHourCount=0,A.count=1,A));e.query.sort==="count"?I.sort((A,P)=>P.count-A.count||new Date(P.ts)-new Date(A.ts)):I.sort((A,P)=>new Date(P.ts)-new Date(A.ts)),e.visible=I}function p(N){let R=N?e.entries.length:0,I=N?e.pageSize:Math.max(e.pageSize,e.entries.length||e.pageSize);t.get("/api/admin/errors",{params:{offset:R,limit:I}}).then(C=>{let A=(C.data.entries||[]).map(u);e.entries=N?e.entries.concat(A):A,e.available=!!C.data.available,e.cap=C.data.max||e.cap,e.total=C.data.total||e.entries.length,k()},C=>console.error(C))}e.loadMore=()=>p(!0),e.canLoadMore=()=>e.entries.length<e.total;function g(){t.get("/api/admin/errors/stats").then(N=>{let R=N.data||{},I=R.prev24h?Math.round((R.last24h-R.prev24h)/R.prev24h*100):0;e.stats={last24h:R.last24h||0,prev24h:R.prev24h||0,delta:I,severity:R.severity||{error:0,warn:0,info:0},unique:R.unique||{error:0,warn:0,info:0},buckets:R.buckets||[],dropped:R.dropped||0}},N=>console.error(N))}function w(){p(),g()}e.barPx=(N,R)=>{let I=e.stats.buckets||[],C=0;for(let Q of I)C=Math.max(C,(Q.error||0)+(Q.warn||0)+(Q.info||0));if(!C)return 0;let A=(N.error||0)+(N.warn||0)+(N.info||0);if(!A)return 0;let P=Math.round(A/C*60),x=N[R]||0;return Math.round(x/A*P)},e.bucketTitle=N=>`${new Date(N.hour).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})} \xB7 ${N.error||0} err \xB7 ${N.warn||0} warn \xB7 ${N.info||0} info`,e.toggle=N=>{e.expanded[N._key]=!e.expanded[N._key]},e.setBucket=N=>{e.query.bucket=N},e.refreshNow=w,e.clearAll=()=>{confirm("Clear all captured errors?")&&t.delete("/api/admin/errors").then(w,N=>console.error(N))},e.exportCsv=()=>{let N=["ts","level","module","displayMessage","_status","_url","_repoId"],R=[N.join(",")];for(let P of e.visible)R.push(N.map(x=>{let Q=P[x]==null?"":String(P[x]);return/[",\n]/.test(Q)?`"${Q.replace(/"/g,'""')}"`:Q}).join(","));let I=new Blob([R.join(`
|
|
`)],{type:"text/csv;charset=utf-8"}),C=URL.createObjectURL(I),A=document.createElement("a");A.href=C,A.download=`errors-${new Date().toISOString().slice(0,19)}.csv`,document.body.appendChild(A),A.click(),document.body.removeChild(A),URL.revokeObjectURL(C)};function b(N){e.copyHint=`${N} copied`,n.timeout(()=>{e.copyHint=""},1500)}e.copyJson=N=>{navigator.clipboard.writeText(N._detailJson).then(()=>b("JSON"))},e.copyCurl=N=>{if(!N._url)return;let I=`curl -X ${N._method||"GET"} '${window.location.origin}${N._url}'`;navigator.clipboard.writeText(I).then(()=>b("curl"))},w();let T=r(()=>{e.query.autoRefresh&&w()},15e3);e.on("dispose",()=>r.cancel(T)),e.watch("query.search",k),e.watch("query.bucket",k),e.watch("query.sort",k),e.watch("query.group",k)},Ga=function(e,t,o,r){if(e.Math=Math,e.watch("user.status",()=>{e.user==null&&o.url("/")}),e.user==null){o.url("/");return}e.data=null,e.loading=!0,e.error=null;function n(p){if(p==null)return"\u2014";for(var g=["B","KB","MB","GB","TB"],w=0,b=p;b>=1024&&w<g.length-1;)b/=1024,w++;return b.toFixed(w>0?1:0)+" "+g[w]}e.humanBytes=n;function i(p){if(!p)return"\u2014";var g=Math.floor(p/86400),w=Math.floor(p%86400/3600),b=Math.floor(p%3600/60);return g>0?g+"d "+(w<10?"0":"")+w+"h":w>0?w+"h "+(b<10?"0":"")+b+"m":b+"m"}e.humanDuration=i;function a(p){return p==null?"\u2014":p>=1e6?(p/1e6).toFixed(1)+"M":p>=1e3?(p/1e3).toFixed(1)+"K":String(p)}e.humanNum=a,e.queueTotal=function(p){return p?(p.waiting||0)+(p.active||0)+(p.delayed||0)+(p.failed||0):0},e.statusCount=function(p){if(!e.data||!e.data.repos)return 0;for(var g=e.data.repos.statusBreakdown||[],w=0;w<g.length;w++)if(g[w]._id===p)return g[w].count;return 0},e.barPct=function(p){var g=e.data&&e.data.repos?e.data.repos.total:0;if(!g)return 0;var w=[p];p==="expired"&&w.push("expiring"),p==="removed"&&w.push("removing"),p==="preparing"&&w.push("download");var b=0;return w.forEach(function(T){b+=e.statusCount(T)}),Math.max(.4,b/g*100)},e.errPct=function(p){if(!e.data||!e.data.errors)return 0;var g=Math.max(e.data.errors.severity.error,e.data.errors.severity.warn,e.data.errors.severity.info,1);return e.data.errors.severity[p]/g*100};function u(p){var g=p||[];return g.map(function(w,b){var T=g[b-1]||{},N=Object.assign({},w);return N.dailyRepositories=b?Math.max(0,(w.nbRepositories||0)-(T.nbRepositories||0)):0,N.dailyUsers=b?Math.max(0,(w.nbUsers||0)-(T.nbUsers||0)):0,N.dailyPageViews=b?Math.max(0,(w.nbPageViews||0)-(T.nbPageViews||0)):0,N})}function f(p){var g=p&&p.length?p[p.length-1]:{};return{repositories:g.dailyRepositories||0,users:g.dailyUsers||0,pageViews:g.dailyPageViews||0}}var h={};e.historyBarH=function(p,g){return!p||!h[g]?0:Math.max(1,Math.round(p[g]/h[g]*140))},e.historyLabel=function(p){if(!p||!p.date)return"";var g=new Date(p.date);return g.getUTCMonth()+1+"/"+g.getUTCDate()};function v(){t.get("/api/admin/overview").then(function(p){p.data.history=u(p.data.history),p.data.daily={today:f(p.data.history)},e.data=p.data,e.loading=!1,e.error=null,h={},(p.data.history||[]).forEach(function(g){["dailyPageViews","dailyRepositories","dailyUsers","nbUsers"].forEach(function(w){(!h[w]||g[w]>h[w])&&(h[w]=g[w])})})},function(p){e.loading=!1,e.error=p.data&&p.data.error||"Failed to load overview"})}v();var k=r(v,3e4);e.on("dispose",function(){r.cancel(k)})};var ja=[{path:"/connections",template:"partials/connections.htm",title:"GitHub connections \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ma(e,t.http)},{path:"/signin",template:"partials/signin.htm",title:"Sign in \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>$a(e,t.http)},{path:"/",template:"partials/home.htm",title:"Anonymous GitHub \u2013 Share the code, not the author",preserveExplorer:!1,setup:(e,t)=>Ta(e,t.http,t.location,t.window,t.timeout)},{path:"/dashboard",template:"partials/dashboard.htm",title:"Your anonymizations \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Oa(e,t.http,t.location,t.promises,t.window,t.quotaService)},{path:"/pr-dashboard",redirect:"/dashboard"},{path:"/anonymize/:repoId?",template:"partials/anonymize.htm",title:"New anonymization \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Yn(e,t.http,t.html,t.params,t.location,t.translate,t.timeout)},{path:"/pull-request-anonymize/:pullRequestId?",template:"partials/anonymize.htm",title:"Anonymize a pull request \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Yn(e,t.http,t.html,t.params,t.location,t.translate,t.timeout)},{path:"/gist-anonymize/:gistId?",template:"partials/anonymize.htm",title:"Anonymize a gist \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Yn(e,t.http,t.html,t.params,t.location,t.translate,t.timeout)},{path:"/status/:repoId",template:"partials/status.htm",title:"Repository status \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Aa(e,t.http,t.params)},{path:"/conferences",template:"partials/conferences.htm",title:"Your conferences \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Pa(e,t.http,t.location)},{path:"/conference/new",template:"partials/newConference.htm",title:"New conference \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Jo(e,t.http,t.location,t.params)},{path:"/conference/:conferenceId/edit",template:"partials/newConference.htm",title:"Edit conference \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Jo(e,t.http,t.location,t.params)},{path:"/conference/:conferenceId",template:"partials/conference.htm",title:"Conference \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>qa(e,t.http,t.location,t.params)},{path:"/faq",template:"partials/faq.htm",title:"FAQ \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Sa(e,t.http)},{path:"/profile",template:"partials/profile.htm",title:"Your settings \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Da(e,t.http,t.translate,t.timeout,t.quotaService)},{path:"/claim",template:"partials/claim.htm",title:"Claim an anonymization \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ra(e,t.http,t.location)},{path:"/pr/:pullRequestId/:path(.*)*",template:"partials/pullRequest.htm",title:"Anonymous pull request \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ia(e,t.http,t.location,t.params,t.html)},{path:"/gist/:gistId/:path(.*)*",template:"partials/gist.htm",title:"Anonymous gist \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Va(e,t.http,t.location,t.params,t.html)},{path:"/r/:repoId/:path(.*)*",template:"partials/explorer.htm",title:"Anonymous repository \u2013 Anonymous GitHub",preserveExplorer:!0,setup:(e,t)=>Yo(e,t.http,t.location,t.params,t.html,t.promises)},{path:"/repository/:repoId/:path(.*)*",template:"partials/explorer.htm",title:"Anonymous repository \u2013 Anonymous GitHub",preserveExplorer:!0,setup:(e,t)=>Yo(e,t.http,t.location,t.params,t.html,t.promises)},{path:"/admin/",template:"partials/admin/overview.htm",title:"Admin \xB7 Overview \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ga(e,t.http,t.location,t.interval)},{path:"/admin/repositories",template:"partials/admin/repositories.htm",title:"Admin \xB7 Repositories \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>La(e,t.http,t.location)},{path:"/admin/users",template:"partials/admin/users.htm",title:"Admin \xB7 Users \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ua(e,t.http,t.location)},{path:"/admin/users/:username",template:"partials/admin/user.htm",title:"Admin \xB7 User details \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Fa(e,t.http,t.location,t.params)},{path:"/admin/conferences",template:"partials/admin/conferences.htm",title:"Admin \xB7 Conferences \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>za(e,t.http,t.location)},{path:"/admin/queues",template:"partials/admin/queues.htm",title:"Admin \xB7 Queues \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ha(e,t.http,t.location,t.interval,t.timeout)},{path:"/admin/errors",template:"partials/admin/errors.htm",title:"Admin \xB7 Errors \u2013 Anonymous GitHub",preserveExplorer:!1,setup:(e,t)=>Ba(e,t.http,t.location,t.interval)},{path:"/404",template:"partials/404.htm",title:"Page not found \u2013 Anonymous GitHub",preserveExplorer:!1,setup:()=>{}},{path:"/:pathMatch(.*)*",template:"partials/404.htm",title:"Page not found \u2013 Anonymous GitHub",setup:()=>{}}];var Hc={class:"container paper-page connections-page"},Bc={key:0,class:"paper-inline-alert paper-inline-alert-error",role:"alert"},Gc={key:1,role:"status"},jc=["disabled"],Wc={key:3},Kc={class:"connections-grid"},Yc={key:0},Jc={class:"connection-title"},Qc={key:0,class:"paper-inline-alert paper-inline-alert-error",role:"alert"},Xc={class:"connection-actions"},Zc={key:0,class:"btn btn-ink",target:"_self",href:"/github/app/install"},xc={key:1,class:"connection-installations"},ep={key:0},tp=["href"],sp={class:"sr-only"},np=["disabled"],op={class:"connection-title"},rp={key:0,target:"_self",href:"/github/login",class:"btn btn-outline-ink"},ip={key:1,class:"connection-revoke"},ap={key:0},lp=["disabled"],dp={class:"connection-resources"},up={class:"connection-title"},cp={class:"connection-count"},pp={key:0,class:"connection-empty"},fp={class:"connection-resource-name"},mp={key:0,class:"connection-resource-actions"},hp=["disabled","onClick"],vp=["disabled","onClick"],yp={key:1,class:"connection-help",role:"status"},gp=["disabled","onClick"];function Wa(e,t){return l(),d("div",Hc,[t[20]||(t[20]=ge('<div class="paper-crumbs"><a href="/dashboard">My work</a> / <span class="here">GitHub connections</span></div><header class="connections-heading"><h1 class="paper-page-title">GitHub <em>connections</em></h1><p class="paper-page-lede">Manage how GitHub shares your code. Your anonymizations and URLs stay the same.</p></header>',2)),e.connectionError?(l(),d("p",Bc,c(e.connectionError),1)):m("v-if",!0),!e.connections&&!e.connectionError?(l(),d("p",Gc,"Loading your connections\u2026")):m("v-if",!0),!e.connections&&e.connectionError?(l(),d("button",{key:2,class:"btn btn-outline-ink",disabled:e.busy,onClick:t[0]||(t[0]=o=>e.loadConnections())},"Try again",8,jc)):m("v-if",!0),e.connections?(l(),d("div",Wc,[s("div",Kc,[e.connections.appEnabled?(l(),d("section",Yc,[t[8]||(t[8]=s("div",{class:"connection-top"},[s("i",{class:"fab fa-github","aria-hidden":"true"}),s("span",{class:"connection-badge"},"Recommended")],-1)),s("div",Jc,[t[3]||(t[3]=s("h2",null,"GitHub App",-1)),s("span",{class:O(["connection-status",{"is-connected":e.connections.appConnected&&!e.connections.appError}])},c(e.connections.appError?"Needs attention":e.connections.appConnected?"Connected":"Not connected"),3)]),t[9]||(t[9]=s("p",null,"Read-only access to the repositories you choose.",-1)),e.connections.appError?(l(),d("p",Qc,c(e.connections.appError)+". Reconnect to restore access.",1)):m("v-if",!0),s("div",Xc,[e.connections.appConnected&&!e.connections.appError?(l(),d("a",Zc,[...t[4]||(t[4]=[y("Manage repository access ",-1),s("i",{class:"fas fa-external-link-alt","aria-hidden":"true"},null,-1)])])):m("v-if",!0),s("a",{class:O(e.connections.appConnected&&!e.connections.appError?"connection-link":"btn btn-ink"),target:"_self",href:"/github/app/login"},c(e.connections.appConnected?"Reconnect account":"Connect GitHub account"),3)]),t[10]||(t[10]=s("p",{class:"connection-help"},"Choose repositories on GitHub. Organization access may need an administrator's approval.",-1)),e.connections.installations?.length?(l(),d("ul",xc,[(l(!0),d(Y,null,ne(e.connections.installations,o=>(l(),d("li",{key:o.id},[s("div",null,[s("strong",null,c(o.account),1),o.suspended?(l(),d("span",ep," \xB7 Suspended")):m("v-if",!0)]),s("a",{target:"_self",href:"/github/app/install?installationId="+o.id},[t[5]||(t[5]=y("Manage access ",-1)),s("span",sp,"for "+c(o.account),1),t[6]||(t[6]=y(" \u2192",-1))],8,tp)]))),128))])):m("v-if",!0),s("button",{class:"connection-link",disabled:e.busy,onClick:t[1]||(t[1]=o=>e.loadConnections())},[...t[7]||(t[7]=[s("i",{class:"fas fa-sync-alt","aria-hidden":"true"},null,-1),y(" Refresh access",-1)])],8,np)])):m("v-if",!0),s("section",null,[t[13]||(t[13]=s("div",{class:"connection-top"},[s("i",{class:"fas fa-key","aria-hidden":"true"}),s("span",{class:"connection-badge connection-badge-muted"},"Legacy")],-1)),s("div",op,[t[11]||(t[11]=s("h2",null,"GitHub OAuth",-1)),s("span",{class:O(["connection-status",{"is-connected":e.connections.oauthConnected}])},c(e.connections.oauthConnected?"Connected":"Not connected"),3)]),t[14]||(t[14]=s("p",null,"For existing OAuth anonymizations and gists.",-1)),t[15]||(t[15]=s("p",{class:"connection-help"},"This connection uses GitHub's broader repository permissions. Existing work keeps using it until you switch below.",-1)),e.connections.oauthEnabled?(l(),d("a",rp,c(e.connections.oauthConnected?"Reconnect OAuth":"Connect legacy OAuth"),1)):m("v-if",!0),e.connections.oauthConnected?(l(),d("div",ip,[e.connections.gistCount?(l(),d("p",ap,c(e.connections.gistCount)+" gist(s) still require OAuth.",1)):m("v-if",!0),t[12]||(t[12]=s("p",null,"Switch all dependent repositories before revoking access. Gists still require OAuth.",-1)),e.connections.appConnected?(l(),d("button",{key:1,class:"connection-link connection-danger",disabled:e.busy||e.connections.gistCount||e.connections.resources.some(o=>o.connection==="oauth"),onClick:t[2]||(t[2]=o=>e.disconnectOAuth())},"Revoke OAuth access",8,lp)):m("v-if",!0)])):m("v-if",!0)])]),s("section",dp,[s("div",up,[t[16]||(t[16]=s("h2",null,"Repository connections",-1)),s("span",cp,c(e.connections.resources?.length||0)+" resources",1)]),t[18]||(t[18]=s("p",null,"Check access, then switch each resource to the GitHub App.",-1)),e.connections.resources?.length?m("v-if",!0):(l(),d("div",pp,[...t[17]||(t[17]=[s("i",{class:"fas fa-code-branch","aria-hidden":"true"},null,-1),s("div",null,[s("h3",null,"No repository connections yet"),s("p",null,"Your repositories and pull requests will appear here once you anonymize them.")],-1),s("a",{class:"connection-link",href:"/anonymize"},"New anonymization \u2192",-1)])])),(l(!0),d(Y,null,ne(e.connections.resources,o=>(l(),d("div",{class:"connection-resource",key:o.type+o.id},[s("div",fp,[s("strong",null,c(o.name||o.id),1),s("small",null,c(o.type)+" \xB7 "+c(o.id),1)]),s("span",{class:O(["connection-badge",{"connection-badge-muted":o.connection==="oauth"}])},c(o.connection==="github-app"?"Read-only App":"Legacy OAuth"),3),o.connection==="oauth"&&e.connections.appEnabled&&e.connections.appConnected?(l(),d("div",mp,[s("button",{class:"btn btn-outline-ink",disabled:e.busy,onClick:r=>e.changeConnection(o,"github-app",!0)},"Check read-only access",8,hp),o.eligible?(l(),d("button",{key:0,class:"btn btn-ink",disabled:e.busy,onClick:r=>e.changeConnection(o,"github-app",!1)},"Switch to read-only access",8,vp)):m("v-if",!0),o.eligible===!1?(l(),d("span",yp,"Access unavailable. Allow this repository on GitHub, then check again.")):m("v-if",!0)])):m("v-if",!0),o.connection==="github-app"&&e.connections.oauthConnected?(l(),d("button",{key:1,class:"connection-link",disabled:e.busy,onClick:r=>e.changeConnection(o,"oauth",!1)},"Use OAuth",8,gp)):m("v-if",!0)]))),128)),t[19]||(t[19]=s("p",{class:"connection-footnote"},[s("i",{class:"fas fa-info-circle","aria-hidden":"true"}),y(" Removing access stops new fetches from GitHub. Published content keeps its current expiration and removal settings.")],-1))])])):m("v-if",!0)])}var bp={class:"container paper-page auth-page"},wp={class:"auth-layout"},kp={class:"auth-options"},_p={key:0},Ep={key:0,class:"btn btn-ink auth-continue",target:"_self",href:"/github/login?recover=1"},Cp={key:1},Np={key:1},Sp={key:2,class:"auth-legacy"},Dp={key:3,role:"status"};function Ka(e,t){return l(),d("div",bp,[t[5]||(t[5]=s("a",{class:"auth-back",href:"/"},[s("i",{class:"fas fa-arrow-left","aria-hidden":"true"}),y(" Anonymous GitHub")],-1)),s("div",wp,[t[4]||(t[4]=ge('<header class="auth-intro"><div class="paper-eyebrow">Your research, ready for review</div><h1 class="paper-page-title"><span class="auth-title-desktop">Your code.<br>Your identity,<br><em>protected.</em></span><span class="auth-title-mobile">Sign in to <em>GitHub</em></span></h1><p class="paper-page-lede">Sign in to create and manage your anonymizations.</p></header>',1)),s("div",kp,[e.accountRecovery?(l(),d("section",_p,[t[0]||(t[0]=s("h2",null,"Verify your existing account",-1)),t[1]||(t[1]=s("p",null,"We found an existing account. Verify it with your previous GitHub connection to keep your anonymizations. Future sign-ins will use the GitHub App.",-1)),e.site_options?.GITHUB_OAUTH_ENABLED?(l(),d("a",Ep,"Verify with previous GitHub connection")):(l(),d("p",Cp,"Account verification is currently unavailable. Please try again later."))])):m("v-if",!0),e.site_options?.GITHUB_APP_ENABLED&&!e.accountRecovery?(l(),d("section",Np,[...t[2]||(t[2]=[ge('<div class="connection-top"><i class="fab fa-github" aria-hidden="true"></i><span class="connection-badge">Read-only access</span></div><h2>Continue with GitHub</h2><p>Connect through the GitHub App with read-only repository access.</p><ul class="auth-permissions"><li><i class="fas fa-check" aria-hidden="true"></i> You choose which repositories to share</li><li><i class="fas fa-check" aria-hidden="true"></i> No permission to write to your code</li></ul><a class="btn btn-ink auth-continue" target="_self" href="/github/app/login">Sign in with GitHub <i class="fas fa-arrow-right" aria-hidden="true"></i></a><small>Your existing anonymizations and connections stay with your account.</small>',6)])])):m("v-if",!0),!e.site_options?.GITHUB_APP_ENABLED&&e.site_options?.GITHUB_OAUTH_ENABLED&&!e.accountRecovery?(l(),d("section",Sp,[...t[3]||(t[3]=[s("div",{class:"connection-title"},[s("h2",null,"Continue with GitHub")],-1),s("p",null,"Sign in to access your account. GitHub OAuth includes write access to private repositories.",-1),s("a",{class:"connection-link",target:"_self",href:"/github/login"},[y("Sign in with GitHub "),s("i",{class:"fas fa-arrow-right","aria-hidden":"true"})],-1)])])):m("v-if",!0),e.site_options&&!e.site_options.GITHUB_APP_ENABLED&&!e.site_options.GITHUB_OAUTH_ENABLED?(l(),d("p",Dp,"GitHub sign-in is currently unavailable. Please try again later.")):m("v-if",!0)])])])}var Rp={class:"paper-empty"};function Ya(e,t){return l(),d("div",Rp,[...t[0]||(t[0]=[ge('<div class="paper-empty-inner"><div class="paper-eyebrow">Error \xB7 404</div><h1 class="paper-empty-title"> This link<br><em>isn\u2019t here.</em></h1><p class="paper-empty-lede"> The anonymous mirror you\u2019re looking for has expired, been removed by its owner, or never existed. If you received this URL from an author, ask them to re-issue it. </p><div class="paper-empty-cta"><a href="/" class="btn-hero">Back to home</a><a href="/faq" class="btn-hero-ghost">Read the FAQ</a></div></div>',1)])])}var Tp={class:"container paper-page admin-page"},Op={class:"admin-summary"},Ap={class:"summary-total"},Ip={class:"count"},Vp={class:"count"},Pp={class:"count"},qp={class:"count"},Mp={class:"count"},$p={key:0,class:"alert alert-danger",style:{margin:"8px 0"}},Lp={class:"w-100 admin-filter-toolbar","aria-label":"Conferences","accept-charset":"UTF-8"},Up={class:"admin-filter-row"},Fp={class:"search-wrap"},zp={type:"search",class:"form-control",placeholder:"Search conferences\u2026",autocomplete:"off"},Hp={key:0,class:"admin-search-hint"},Bp={class:"admin-filter-inline","aria-label":"Pagination"},Gp=["disabled"],jp={style:{"font-family":"var(--font-mono)","font-size":"12px",color:"var(--ink-muted)"}},Wp=["disabled"],Kp={key:0,class:"admin-filter-row"},Yp={class:"admin-active-chips"},Jp={class:"key"},Qp=["onClick"],Xp={class:"paper-table paper-table-conferences w-100",role:"table","aria-label":"Conferences"},Zp={class:"paper-table-head",role:"row"},xp={role:"columnheader"},ef={role:"columnheader"},tf={role:"columnheader"},sf={class:"paper-table-row",role:"row"},nf={class:"cell-anon",role:"cell"},of={class:"anon-text"},rf=["textContent","href"],af={class:"anon-sub"},lf={class:"cell-status",role:"cell"},df=["textContent"],uf={class:"cell-views num",role:"cell"},cf=["textContent","href"],pf={class:"cell-expires",role:"cell"},ff={class:"cell-actions",role:"cell"},mf={class:"dropdown"},hf={class:"dropdown-menu dropdown-menu-right"},vf=["href"],yf=["href"],gf=["href"],bf=["onClick"],wf={key:0,class:"paper-table-empty"},kf={class:"admin-toolbar",style:{"justify-content":"space-between","border-bottom":"none"}},_f={style:{"font-size":"12px",color:"var(--ink-muted)"}},Ef={key:0,class:"pagination-compact"},Cf=["disabled"],Nf=["max"],Sf=["disabled"],Df={class:"admin-filter-inline"},Rf={class:"form-control form-control-sm"};function Ja(e,t){let o=be("field"),r=be("form");return l(),d("div",Tp,[t[42]||(t[42]=ge('<div class="paper-crumbs">Admin \xA0/\xA0 <span class="here">Conferences</span></div><h1 class="paper-page-title">Conferences</h1><nav class="admin-nav"><a href="/admin/"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences" class="active"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors"><i class="fas fa-bug"></i> Errors</a></nav>',3)),s("div",Op,[s("span",Ap,c(e.total>=0?e.fmt.number(e.total):"\u2026"),1),s("span",{class:O(["summary-pill ok",{active:e.query?.ready}]),title:"Toggle ready filter",onClick:t[0]||(t[0]=n=>{e.query.ready=!e.query.ready,e.query.page=1})},[t[13]||(t[13]=y("Ready ",-1)),s("span",Ip,c(e.fmt?.number(e.statusCountFor("ready"))),1)],2),s("span",{class:O(["summary-pill warn",{active:e.query?.preparing}]),title:"Toggle preparing filter",onClick:t[1]||(t[1]=n=>{e.query.preparing=!e.query.preparing,e.query.page=1})},[t[14]||(t[14]=y("Preparing ",-1)),s("span",Vp,c(e.fmt?.number(e.statusCountFor("preparing"))),1)],2),s("span",{class:O(["summary-pill error",{active:e.query?.error}]),title:"Toggle errored filter",onClick:t[2]||(t[2]=n=>{e.query.error=!e.query.error,e.query.page=1})},[t[15]||(t[15]=y("Errored ",-1)),s("span",Pp,c(e.fmt?.number(e.statusCountFor("error"))),1)],2),s("span",{class:O(["summary-pill",{active:e.query?.expired}]),title:"Toggle expired filter",onClick:t[3]||(t[3]=n=>{e.query.expired=!e.query.expired,e.query.page=1})},[t[16]||(t[16]=y("Expired ",-1)),s("span",qp,c(e.fmt?.number(e.statusCountFor("expired"))),1)],2),s("span",{class:O(["summary-pill",{active:e.query?.removed}]),title:"Toggle removed filter",onClick:t[4]||(t[4]=n=>{e.query.removed=!e.query.removed,e.query.page=1})},[t[17]||(t[17]=y("Removed ",-1)),s("span",Mp,c(e.fmt?.number(e.statusCountFor("removed"))),1)],2)]),e.fetchError?(l(),d("div",$p,[t[18]||(t[18]=s("i",{class:"fas fa-exclamation-triangle"},null,-1)),y(" "+c(e.fetchError),1)])):m("v-if",!0),E((l(),d("form",Lp,[s("div",Up,[s("div",Fp,[E(s("input",zp,null,512),[[o,{state:e.viewState,set:n=>{e.query.search=n},value:e.query?.search,form:null,options:{}}]]),e.query?.search?m("v-if",!0):(l(),d("span",Hp,"/"))]),t[22]||(t[22]=s("span",{class:"admin-filter-spacer"},null,-1)),s("button",{class:"btn btn-sm",type:"button",onClick:t[5]||(t[5]=n=>e.exportCsv())},[...t[19]||(t[19]=[s("i",{class:"fas fa-file-csv"},null,-1),y(" Export",-1)])]),s("span",Bp,[s("button",{class:"btn btn-sm",type:"button",onClick:t[6]||(t[6]=n=>e.query.page=Math.max(1,e.query.page-1)),disabled:e.query?.page<=1},[...t[20]||(t[20]=[s("i",{class:"fas fa-chevron-left"},null,-1)])],8,Gp),s("span",jp,c(e.query?.page)+"/"+c(e.totalPage||1),1),s("button",{class:"btn btn-sm",type:"button",onClick:t[7]||(t[7]=n=>e.query.page=Math.min(e.totalPage,e.query.page+1)),disabled:e.query?.page>=e.totalPage},[...t[21]||(t[21]=[s("i",{class:"fas fa-chevron-right"},null,-1)])],8,Wp)])]),e.chips?.length?(l(),d("div",Kp,[s("div",Yp,[(l(!0),d(Y,null,ne(e.chips,(n,i)=>(l(),d("span",{class:"admin-active-chip",key:n?.key},[s("span",Jp,c(n?.label),1),s("span",null,c(n?.value),1),s("button",{type:"button",onClick:a=>e.clearFilter(n.key)},[...t[23]||(t[23]=[s("i",{class:"fas fa-times"},null,-1)])],8,Qp)]))),128))])])):m("v-if",!0)])),[[r,e.viewState]]),s("div",Xp,[s("div",Zp,[s("div",xp,[s("span",{class:O(["sortable",{active:e.query?.sort=="name"}]),onClick:t[8]||(t[8]=n=>e.sortBy("name"))},[t[24]||(t[24]=y("Conference ",-1)),s("i",{class:O(["fas",e.sortIcon("name")])},null,2)],2)]),s("div",ef,[s("span",{class:O(["sortable",{active:e.query?.sort=="status"}]),onClick:t[9]||(t[9]=n=>e.sortBy("status"))},[t[25]||(t[25]=y("Status ",-1)),s("i",{class:O(["fas",e.sortIcon("status")])},null,2)],2)]),t[27]||(t[27]=s("div",{role:"columnheader",class:"num"},"Repos",-1)),s("div",tf,[s("span",{class:O(["sortable",{active:e.query?.sort=="startDate"}]),onClick:t[10]||(t[10]=n=>e.sortBy("startDate"))},[t[26]||(t[26]=y("Window ",-1)),s("i",{class:O(["fas",e.sortIcon("startDate")])},null,2)],2)]),t[28]||(t[28]=s("div",{role:"columnheader","aria-label":"Actions"},null,-1))]),(l(!0),d(Y,null,ne(e.filteredConferences,(n,i)=>(l(),d("div",sf,[s("div",nf,[t[30]||(t[30]=s("span",{class:"type-badge type-repo"},"Conf",-1)),s("div",of,[s("a",{class:"repo-name",textContent:c(n?.name),href:e.safeUrl("/conference/"+n?.conferenceID)},null,8,rf),s("div",af,[s("span",null,c(n?.conferenceID),1),t[29]||(t[29]=y("\xA0\xB7\xA0",-1)),s("span",null,c(e.fmt?.number(n?.price||0))+" \u20AC",1)])])]),s("div",lf,[s("span",{class:O(["status-dot",{"status-removed":n?.status=="removed"||n?.status=="expired","status-ready":n?.status=="ready","status-error":n?.status=="error","status-preparing":n?.status=="preparing"}])},null,2),s("span",{textContent:c(e.fmt?.title(n?.status))},null,8,df)]),s("div",uf,[s("a",{title:"Show repositories in this conference",textContent:c(e.fmt?.number(n?.repositories?.length||0)),href:e.safeUrl("/admin/?conference="+n?.conferenceID)},null,8,cf)]),s("div",pf,c(e.fmt?.date(n?.startDate))+" \u2013 "+c(e.fmt?.date(n?.endDate)),1),s("div",ff,[s("div",mf,[t[36]||(t[36]=s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions"},[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"})],-1)),s("div",hf,[s("a",{class:"dropdown-item",href:e.safeUrl("/conference/"+n?.conferenceID+"/edit")},[...t[31]||(t[31]=[s("i",{class:"far fa-edit"},null,-1),y(" Edit",-1)])],8,vf),s("a",{class:"dropdown-item",href:e.safeUrl("/conference/"+n?.conferenceID+"/")},[...t[32]||(t[32]=[s("i",{class:"fa fa-eye"},null,-1),y(" View",-1)])],8,yf),s("a",{class:"dropdown-item",href:e.safeUrl("/admin/?conference="+n?.conferenceID)},[...t[33]||(t[33]=[s("i",{class:"fas fa-code-branch"},null,-1),y(" View repositories",-1)])],8,gf),t[35]||(t[35]=s("div",{class:"dropdown-divider"},null,-1)),E(s("a",{class:"dropdown-item text-danger",href:"#",onClick:we(a=>e.removeConference(n),["prevent"])},[...t[34]||(t[34]=[s("i",{class:"fas fa-trash-alt"},null,-1),y(" Remove",-1)])],8,bf),[[B,n?.status!="removed"]])])])])]))),256)),e.filteredConferences?.length==0?(l(),d("div",wf,[...t[37]||(t[37]=[s("i",{class:"fas fa-inbox"},null,-1),s("span",null,"No conferences match the current filters.",-1)])])):m("v-if",!0)]),s("div",kf,[s("span",_f,c(e.fmt?.number(e.total))+" results",1),e.totalPage>1?(l(),d("div",Ef,[s("button",{class:"btn btn-sm",onClick:t[11]||(t[11]=n=>e.query.page=Math.max(1,e.query.page-1)),disabled:e.query?.page<=1},[...t[38]||(t[38]=[s("i",{class:"fas fa-chevron-left"},null,-1),y(" Previous",-1)])],8,Cf),E(s("input",{type:"number",class:"form-control form-control-sm",min:"1",style:{width:"56px"},max:e.totalPage},null,8,Nf),[[o,{state:e.viewState,set:n=>{e.query.page=n},value:e.query?.page,form:null,options:{}}]]),s("span",null,"of "+c(e.totalPage),1),s("button",{class:"btn btn-sm",onClick:t[12]||(t[12]=n=>e.query.page=Math.min(e.totalPage,e.query.page+1)),disabled:e.query?.page>=e.totalPage},[...t[39]||(t[39]=[y("Next ",-1),s("i",{class:"fas fa-chevron-right"},null,-1)])],8,Sf)])):m("v-if",!0),s("span",Df,[t[41]||(t[41]=s("label",null,"Per page",-1)),E((l(),d("select",Rf,[...t[40]||(t[40]=[ge('<option value="10">10</option><option value="25">25</option><option value="50">50</option><option value="100">100</option><option value="250">250</option>',5)])])),[[o,{state:e.viewState,set:n=>{e.query.limit=n},value:e.query?.limit,form:null,options:{}}]])])])])}var Tf={class:"container paper-page admin-page errors-page"},Of={class:"errors-header"},Af={class:"errors-actions"},If={class:"kpi-grid"},Vf={class:"kpi-card"},Pf={class:"kpi-value"},qf={key:0},Mf={key:1},$f={class:"kpi-card kpi-error"},Lf={class:"kpi-value"},Uf={class:"kpi-sub"},Ff={class:"kpi-card kpi-warn"},zf={class:"kpi-value"},Hf={class:"kpi-sub"},Bf={class:"kpi-card kpi-info"},Gf={class:"kpi-value"},jf={class:"kpi-sub"},Wf={class:"kpi-value"},Kf={class:"kpi-sub"},Yf={key:0,class:"dropped-warn"},Jf={class:"volume-chart"},Qf={class:"volume-bars"},Xf=["title"],Zf={class:"errors-toolbar","aria-label":"Error filters"},xf={class:"seg-tabs"},em={class:"search-wrap"},tm={type:"search",class:"form-control",placeholder:"code:repo_not_found module:route status:>=400",autocomplete:"off"},sm={key:0,class:"filter-count"},nm={class:"select-wrap"},om={class:"form-control form-control-sm"},rm={class:"select-wrap"},im={class:"form-control form-control-sm"},am={class:"autoref"},lm={type:"checkbox"},dm={key:0,class:"admin-empty"},um={key:1,class:"errors-pager"},cm={key:2,class:"errors-list"},pm=["onClick"],fm={class:"col-when"},mm={class:"when-rel"},hm={class:"when-abs"},vm={class:"col-sev"},ym={class:"sev-label"},gm={class:"col-mod"},bm={class:"pill pill-module"},wm={class:"col-msg"},km={class:"msg-code"},_m={key:0,class:"msg-context"},Em={key:1,class:"msg-detail"},Cm={key:2,class:"msg-url"},Nm={class:"col-count"},Sm={key:0,class:"count-pill"},Dm={key:1,class:"count-pill count-pill-muted"},Rm={class:"col-status"},Tm={key:0,class:"errors-row-detail"},Om={class:"detail-tabs"},Am=["onClick"],Im=["onClick"],Vm=["onClick"],Pm={class:"detail-body"},qm={class:"detail-main"},Mm={key:0},$m={key:1,class:"stack-pre"},Lm={key:2,class:"related-list"},Um={class:"when-abs"},Fm={class:"msg-url"},zm={class:"detail-actions"},Hm=["onClick"],Bm=["onClick"],Gm={key:0,class:"copy-hint"},jm={class:"detail-aside"},Wm={class:"aside-block"},Km=["title"],Ym={class:"aside-block"},Jm=["title"],Qm={class:"aside-block"},Xm={class:"aside-value"},Zm={key:0,class:"aside-sub"},xm={key:0,class:"aside-block"},eh=["href"],th={key:1,class:"aside-block"},sh={class:"aside-value mono"};function Qa(e,t){let o=be("field"),r=be("form");return l(),d("div",Tf,[t[32]||(t[32]=s("div",{class:"paper-crumbs"},[y("Admin \xA0/\xA0 "),s("span",{class:"here"},"Errors")],-1)),s("header",Of,[t[10]||(t[10]=s("h1",{class:"paper-page-title"},"Errors",-1)),s("div",Af,[s("button",{class:"btn btn-sm",type:"button",onClick:t[0]||(t[0]=n=>e.exportCsv())},[...t[8]||(t[8]=[s("i",{class:"fas fa-file-export"},null,-1),y(" Export CSV",-1)])]),s("button",{class:"btn btn-sm btn-danger",type:"button",onClick:t[1]||(t[1]=n=>e.clearAll())},[...t[9]||(t[9]=[s("i",{class:"fas fa-trash"},null,-1),y(" Clear all",-1)])])])]),t[33]||(t[33]=ge('<nav class="admin-nav"><a href="/admin/"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors" class="active"><i class="fas fa-bug"></i> Errors</a></nav>',1)),s("section",If,[s("div",Vf,[t[11]||(t[11]=s("div",{class:"kpi-label"},"Last 24h",-1)),s("div",Pf,c(e.stats?.last24h),1),s("div",{class:O(["kpi-sub",{up:e.stats?.delta>0,down:e.stats?.delta<0}])},[e.stats?.prev24h?(l(),d("span",qf,c(e.stats?.delta>0?"+":"")+c(e.stats?.delta)+"% vs yesterday",1)):m("v-if",!0),e.stats?.prev24h?m("v-if",!0):(l(),d("span",Mf,"no prior baseline"))],2)]),s("div",$f,[t[12]||(t[12]=s("div",{class:"kpi-label"},"Errors (5xx)",-1)),s("div",Lf,c(e.stats?.severity?.error),1),s("div",Uf,c(e.stats?.unique?.error)+" unique",1)]),s("div",Ff,[t[13]||(t[13]=s("div",{class:"kpi-label"},"Warnings (4xx)",-1)),s("div",zf,c(e.stats?.severity?.warn),1),s("div",Hf,c(e.stats?.unique?.warn)+" unique",1)]),s("div",Bf,[t[14]||(t[14]=s("div",{class:"kpi-label"},"Info (auth, 404)",-1)),s("div",Gf,c(e.stats?.severity?.info),1),s("div",jf,c(e.stats?.unique?.info)+" unique",1)]),s("div",{class:O(["kpi-card",{"kpi-error":e.stats?.dropped>0}])},[t[15]||(t[15]=s("div",{class:"kpi-label"},"Captured",-1)),s("div",Wf,c(e.total),1),s("div",Kf,[y(" cap "+c(e.cap)+" \xB7 "+c(e.available?"live":"redis off")+" ",1),e.stats?.dropped>0?(l(),d("span",Yf," \xB7 "+c(e.stats?.dropped)+" dropped",1)):m("v-if",!0)])],2)]),s("section",Jf,[t[16]||(t[16]=ge('<div class="volume-head"><span class="volume-title">Volume \xB7 24h \xB7 1h buckets</span><span class="volume-legend"><span class="dot dot-error"></span>error <span class="dot dot-warn"></span>warn <span class="dot dot-info"></span>info </span></div>',1)),s("div",Qf,[(l(!0),d(Y,null,ne(e.stats?.buckets,(n,i)=>(l(),d("div",{class:"volume-bar",key:i,title:e.bucketTitle(n)},[s("span",{class:"seg seg-error",style:Pe({height:e.barPx(n,"error")+"px"})},null,4),s("span",{class:"seg seg-warn",style:Pe({height:e.barPx(n,"warn")+"px"})},null,4),s("span",{class:"seg seg-info",style:Pe({height:e.barPx(n,"info")+"px"})},null,4)],8,Xf))),128))])]),E((l(),d("form",Zf,[s("div",xf,[s("button",{type:"button",class:O({active:e.query?.bucket===""}),onClick:t[2]||(t[2]=n=>e.setBucket(""))},"All",2),s("button",{type:"button",class:O({active:e.query?.bucket==="error"}),onClick:t[3]||(t[3]=n=>e.setBucket("error"))},"5xx",2),s("button",{type:"button",class:O({active:e.query?.bucket==="warn"}),onClick:t[4]||(t[4]=n=>e.setBucket("warn"))},"4xx",2),s("button",{type:"button",class:O({active:e.query?.bucket==="info"}),onClick:t[5]||(t[5]=n=>e.setBucket("info"))},"Info",2)]),s("div",em,[t[17]||(t[17]=s("i",{class:"fas fa-search search-icon"},null,-1)),E(s("input",tm,null,512),[[o,{state:e.viewState,set:n=>{e.query.search=n},value:e.query?.search,form:null,options:{}}]]),e.parsedFilterCount?(l(),d("span",sm,c(e.parsedFilterCount)+" filter"+c(e.parsedFilterCount>1?"s":""),1)):m("v-if",!0)]),s("div",nm,[t[19]||(t[19]=s("label",null,"Sort",-1)),E((l(),d("select",om,[...t[18]||(t[18]=[s("option",{value:"recent"},"Most recent",-1),s("option",{value:"count"},"Most frequent",-1)])])),[[o,{state:e.viewState,set:n=>{e.query.sort=n},value:e.query?.sort,form:null,options:{}}]])]),s("div",rm,[t[21]||(t[21]=s("label",null,"Group",-1)),E((l(),d("select",im,[...t[20]||(t[20]=[s("option",{value:""},"Off",-1),s("option",{value:"code"},"By code",-1),s("option",{value:"module"},"By module",-1)])])),[[o,{state:e.viewState,set:n=>{e.query.group=n},value:e.query?.group,form:null,options:{}}]])]),s("label",am,[E(s("input",lm,null,512),[[o,{state:e.viewState,set:n=>{e.query.autoRefresh=n},value:e.query?.autoRefresh,form:null,options:{}}]]),t[22]||(t[22]=y(" Auto-refresh ",-1))]),s("button",{class:"btn btn-sm btn-icon",type:"button",title:"Refresh now",onClick:t[6]||(t[6]=n=>e.refreshNow())},[...t[23]||(t[23]=[s("i",{class:"fas fa-sync"},null,-1)])])])),[[r,e.viewState]]),e.visible?.length?m("v-if",!0):(l(),d("div",dm,"No errors captured.")),e.canLoadMore()&&e.visible?.length?(l(),d("div",um,[s("span",null,"Showing "+c(e.entries?.length)+" of "+c(e.total)+" captured",1),s("button",{class:"btn btn-sm",type:"button",onClick:t[7]||(t[7]=n=>e.loadMore())},"Load older")])):m("v-if",!0),e.visible?.length?(l(),d("div",cm,[t[31]||(t[31]=ge('<div class="errors-list-head"><span class="col-when">When</span><span class="col-sev">Severity</span><span class="col-mod">Module</span><span class="col-msg">Message</span><span class="col-count">Count</span><span class="col-status">Status</span></div>',1)),(l(!0),d(Y,null,ne(e.visible,(n,i)=>(l(),d("div",{class:O(["errors-row",{open:e.expanded[n?._key]}]),key:n?._key},[s("div",{class:"errors-row-main",onClick:a=>e.toggle(n)},[s("div",fm,[s("div",mm,c(e.relTime(n?.ts)),1),s("div",hm,c(e.absTimeShort(n?.ts)),1)]),s("div",vm,[s("span",{class:O(["sev-dot","sev-"+n?._bucket])},null,2),s("span",ym,c(e.fmt?.uppercase(n?._bucket)),1)]),s("div",gm,[s("span",bm,c(n?.module),1)]),s("div",wm,[s("strong",km,c(n?.displayMessage),1),n?.displayContext&&n?.displayContext!==n?.displayMessage?(l(),d("span",_m,c(n?.displayContext),1)):m("v-if",!0),n?._detail?(l(),d("span",Em,c(n?._detail),1)):m("v-if",!0),n?._url?(l(),d("div",Cm,c(n?._url),1)):m("v-if",!0)]),s("div",Nm,[n?.count>1?(l(),d("span",Sm,"\xD7"+c(n?.count),1)):m("v-if",!0),n?.count===1?(l(),d("span",Dm,"\xD71")):m("v-if",!0)]),s("div",Rm,[n?._status?(l(),d("span",{key:0,class:O(["status-pill","status-"+n?._bucket])},c(n?._status),3)):m("v-if",!0)])],8,pm),e.expanded[n?._key]?(l(),d("div",Tm,[s("div",Om,[s("button",{type:"button",class:O({active:e.detailTab[n?._key]==="raw"||!e.detailTab[n?._key]}),onClick:a=>e.detailTab[n._key]="raw"},"Raw",10,Am),n?._stack?(l(),d("button",{key:0,type:"button",class:O({active:e.detailTab[n?._key]==="stack"}),onClick:a=>e.detailTab[n._key]="stack"},"Stack",10,Im)):m("v-if",!0),n?.count>1?(l(),d("button",{key:1,type:"button",class:O({active:e.detailTab[n?._key]==="related"}),onClick:a=>e.detailTab[n._key]="related"},"Related ("+c(n?.count)+")",11,Vm)):m("v-if",!0)]),s("div",Pm,[s("div",qm,[(e.detailTab[n?._key]||"raw")==="raw"?(l(),d("pre",Mm,c(n?._detailJson),1)):m("v-if",!0),e.detailTab[n?._key]==="stack"?(l(),d("pre",$m,c(n?._stack),1)):m("v-if",!0),e.detailTab[n?._key]==="related"?(l(),d("div",Lm,[(l(!0),d(Y,null,ne(n?._related,(a,u)=>(l(),d("div",{class:"related-row",key:u},[s("span",Um,c(e.absTimeShort(a?.ts)),1),s("span",Fm,c(a?._url),1),a?._status?(l(),d("span",{key:0,class:O(["status-pill","status-"+a?._bucket])},c(a?._status),3)):m("v-if",!0)]))),128))])):m("v-if",!0),s("div",zm,[s("button",{class:"btn btn-sm",type:"button",title:"Copy a curl that reproduces the request",onClick:a=>e.copyCurl(n)},[...t[24]||(t[24]=[s("i",{class:"fas fa-terminal"},null,-1),y(" Copy curl",-1)])],8,Hm),s("button",{class:"btn btn-sm",type:"button",onClick:a=>e.copyJson(n)},[...t[25]||(t[25]=[s("i",{class:"fas fa-clipboard"},null,-1),y(" Copy JSON",-1)])],8,Bm),e.copyHint?(l(),d("span",Gm,c(e.copyHint),1)):m("v-if",!0)])]),s("aside",jm,[s("div",Wm,[t[26]||(t[26]=s("div",{class:"aside-label"},"First seen",-1)),s("div",{class:"aside-value",title:e.absTime(n?._firstSeen)},c(e.relTime(n?._firstSeen)),9,Km)]),s("div",Ym,[t[27]||(t[27]=s("div",{class:"aside-label"},"Last seen",-1)),s("div",{class:"aside-value",title:e.absTime(n?.ts)},c(e.relTime(n?.ts)),9,Jm)]),s("div",Qm,[t[28]||(t[28]=s("div",{class:"aside-label"},"Occurrences",-1)),s("div",Xm,[y(c(n?.count),1),n?._lastHourCount?(l(),d("span",Zm," \xB7 "+c(n?._lastHourCount)+" this hour",1)):m("v-if",!0)])]),n?._repoId?(l(),d("div",xm,[t[29]||(t[29]=s("div",{class:"aside-label"},"Repository",-1)),s("a",{class:"aside-value",href:e.safeUrl("/r/"+n?._repoId)},c(n?._repoId),9,eh)])):m("v-if",!0),n?._url?(l(),d("div",th,[t[30]||(t[30]=s("div",{class:"aside-label"},"URL",-1)),s("div",sh,c(n?._url),1)])):m("v-if",!0)])])])):m("v-if",!0)],2))),128))])):m("v-if",!0)])}var nh={class:"container paper-page admin-page overview-page"},oh={key:0,class:"admin-empty"},rh={key:1,class:"alert alert-danger",style:{margin:"12px 0"}},ih={key:2},ah={class:"ov-kpi-row"},lh={class:"ov-kpi-card"},dh={class:"ov-kpi-value"},uh={class:"ov-kpi-sub"},ch={class:"ov-kpi-card"},ph={class:"ov-kpi-sub"},fh={class:"ov-kpi-card"},mh={class:"ov-kpi-sub"},hh={class:"ov-kpi-card"},vh={class:"ov-kpi-sub"},yh={class:"ov-kpi-card"},gh={class:"ov-kpi-value"},bh={class:"ov-kpi-sub"},wh={class:"ov-daily-row"},kh={class:"ov-daily-card"},_h={class:"ov-daily-value"},Eh={class:"ov-daily-card"},Ch={class:"ov-daily-value"},Nh={class:"ov-daily-sub"},Sh={class:"ov-daily-card"},Dh={class:"ov-daily-value"},Rh={class:"ov-chart-row"},Th={class:"ov-chart-card"},Oh={key:0,class:"ov-spark-bars"},Ah=["data-tip","aria-label"],Ih={key:1,class:"ov-spark-x"},Vh={class:"ov-chart-card"},Ph={key:0,class:"ov-spark-bars"},qh=["data-tip","aria-label"],Mh={key:1,class:"ov-spark-x"},$h={class:"ov-chart-card"},Lh={key:0,class:"ov-spark-bars"},Uh=["data-tip","aria-label"],Fh={key:1,class:"ov-spark-x"},zh={class:"ov-chart-card"},Hh={key:0,class:"ov-spark-bars"},Bh=["data-tip","aria-label"],Gh={key:1,class:"ov-spark-x"},jh={class:"ov-triple-row"},Wh={class:"ov-panel-card"},Kh={class:"ov-panel-head"},Yh={class:"ov-panel-meta"},Jh={class:"ov-stacked-bar"},Qh={class:"ov-bar-legend"},Xh={href:"/admin/repositories",class:"ov-legend-item"},Zh={class:"ov-legend-n"},xh={href:"/admin/repositories",class:"ov-legend-item"},ev={class:"ov-legend-n"},tv={href:"/admin/repositories",class:"ov-legend-item"},sv={class:"ov-legend-n"},nv={href:"/admin/repositories",class:"ov-legend-item"},ov={class:"ov-legend-n"},rv={href:"/admin/repositories",class:"ov-legend-item"},iv={class:"ov-legend-n"},av={class:"ov-panel-card"},lv={class:"ov-panel-head"},dv={class:"ov-panel-meta"},uv={class:"ov-error-bars"},cv={class:"ov-ebar-row"},pv={class:"ov-ebar-track"},fv={class:"ov-ebar-n"},mv={class:"ov-ebar-row"},hv={class:"ov-ebar-track"},vv={class:"ov-ebar-n"},yv={class:"ov-ebar-row"},gv={class:"ov-ebar-track"},bv={class:"ov-ebar-n"},wv={key:0,class:"ov-panel-foot"},kv={href:"/admin/errors"},_v={class:"ov-panel-card"},Ev={class:"ov-routes-table"},Cv={class:"ov-route-row",href:"/admin/queues"},Nv={class:"ov-route-n"},Sv={class:"ov-route-n"},Dv={class:"ov-route-row",href:"/admin/queues"},Rv={class:"ov-route-n"},Tv={class:"ov-route-n"},Ov={class:"ov-route-row",href:"/admin/queues"},Av={class:"ov-route-n"},Iv={class:"ov-route-n"},Vv={class:"ov-services-card"},Pv={class:"ov-services-head"},qv={class:"ov-panel-meta"},Mv={class:"ov-services-grid"},$v={class:"ov-svc"},Lv={class:"ov-svc-info"},Uv={class:"ov-svc-meta"},Fv={class:"ov-svc-detail"},zv={class:"ov-svc"},Hv={class:"ov-svc-info"},Bv={key:0,class:"ov-svc-meta"},Gv={key:1,class:"ov-svc-meta"},jv={class:"ov-svc"},Wv={class:"ov-svc-info"},Kv={key:0,class:"ov-svc-meta"},Yv={key:1,class:"ov-svc-meta"},Jv={class:"ov-svc"},Qv={class:"ov-svc-info"},Xv={key:0,class:"ov-svc-meta"},Zv={key:1,class:"ov-svc-meta"},xv={class:"ov-svc"},ey={class:"ov-svc-info"},ty={class:"ov-svc-meta"};function Xa(e,t){return l(),d("div",nh,[t[42]||(t[42]=ge('<div class="paper-crumbs">Admin \xB7 System Health</div><div class="ov-header"><h1 class="paper-page-title">Overview</h1></div><nav class="admin-nav"><a href="/admin/" class="active"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors"><i class="fas fa-bug"></i> Errors</a></nav>',3)),e.loading?(l(),d("div",oh,"Loading overview\u2026")):m("v-if",!0),e.error?(l(),d("div",rh,[t[0]||(t[0]=s("i",{class:"fas fa-exclamation-triangle"},null,-1)),y(" "+c(e.error),1)])):m("v-if",!0),e.data?(l(),d("div",ih,[m(" \u2500\u2500 Top KPI row \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 "),s("section",ah,[s("div",lh,[t[1]||(t[1]=s("div",{class:"ov-kpi-label"},[y("Repositories "),s("span",{class:"ov-dot ov-dot-ok"})],-1)),s("div",dh,c(e.humanNum(e.data?.repos?.total)),1),s("div",uh,"+"+c(e.data?.repos?.newRepos24h)+" \xB7 last 24h",1)]),s("div",ch,[t[2]||(t[2]=s("div",{class:"ov-kpi-label"},"CPU",-1)),s("div",{class:O(["ov-kpi-value",{"ov-val-warn":e.data?.system?.cpuPercent>80}])},c(e.data?.system?.cpuPercent)+"%",3),s("div",ph,c(e.data?.system?.cpuCount)+" cores \xB7 load "+c(e.data?.system?.loadAvg?.[0]?.toFixed(1)),1)]),s("div",fh,[t[3]||(t[3]=s("div",{class:"ov-kpi-label"},"Memory",-1)),s("div",{class:O(["ov-kpi-value",{"ov-val-warn":e.data?.system?.memPercent>85}])},c(e.data?.system?.memPercent)+"%",3),s("div",mh,c(e.humanBytes(e.data?.system?.memUsed))+" / "+c(e.humanBytes(e.data?.system?.memTotal)),1)]),s("div",hh,[t[4]||(t[4]=s("div",{class:"ov-kpi-label"},"Disk",-1)),s("div",{class:O(["ov-kpi-value",{"ov-val-warn":e.data?.system?.diskPercent>85}])},c(e.data?.system?.diskPercent)+"%",3),s("div",vh,c(e.humanBytes(e.data?.system?.diskUsed))+" / "+c(e.humanBytes(e.data?.system?.diskTotal))+" \xB7 "+c(e.data?.system?.diskMount),1)]),s("div",yh,[t[5]||(t[5]=s("div",{class:"ov-kpi-label"},"Uptime",-1)),s("div",gh,c(e.humanDuration(e.data?.system?.uptime)),1),s("div",bh,c(e.data?.system?.nodeVersion)+" \xB7 "+c(e.data?.system?.platform),1)])]),m(" \u2500\u2500 Daily activity highlights \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 "),s("section",wh,[s("div",kh,[t[6]||(t[6]=s("div",{class:"ov-daily-label"},"New repos today",-1)),s("div",_h,"+"+c(e.fmt?.number(e.data?.daily?.today?.repositories)),1),t[7]||(t[7]=s("div",{class:"ov-daily-sub"},"since yesterday",-1))]),s("div",Eh,[t[8]||(t[8]=s("div",{class:"ov-daily-label"},"New users today",-1)),s("div",Ch,"+"+c(e.fmt?.number(e.data?.daily?.today?.users)),1),s("div",Nh,c(e.fmt?.number(e.data?.users?.total))+" total users",1)]),s("div",Sh,[t[9]||(t[9]=s("div",{class:"ov-daily-label"},"Page views today",-1)),s("div",Dh,"+"+c(e.fmt?.number(e.data?.daily?.today?.pageViews)),1),t[10]||(t[10]=s("div",{class:"ov-daily-sub"},"since yesterday",-1))])]),m(" \u2500\u2500 Daily charts \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 "),s("section",Rh,[s("div",Th,[t[11]||(t[11]=s("div",{class:"ov-chart-head"},[s("span",{class:"ov-chart-title"},"Daily page views \xB7 30d"),s("span",{class:"ov-chart-legend"},[s("span",{class:"ov-dot-legend ov-dot-accent"}),y("views/day")])],-1)),e.data?.history?.length?(l(),d("div",Oh,[(l(!0),d(Y,null,ne(e.data?.history,(o,r)=>(l(),d("div",{class:"ov-spark-col has-tip",key:r,"data-tip":e.historyLabel(o)+": +"+e.fmt?.number(o?.dailyPageViews)+" views","aria-label":e.historyLabel(o)+": +"+e.fmt?.number(o?.dailyPageViews)+" views"},[s("span",{class:"ov-spark-fill",style:Pe({height:e.historyBarH(o,"dailyPageViews")+"px"})},null,4)],8,Ah))),128))])):m("v-if",!0),e.data?.history?.length?(l(),d("div",Ih,[s("span",null,c(e.historyLabel(e.data?.history[0])),1),s("span",null,c(e.historyLabel(e.data?.history[Math?.floor(e.data?.history?.length/2)])),1),s("span",null,c(e.historyLabel(e.data?.history[e.data?.history?.length-1])),1)])):m("v-if",!0)]),s("div",Vh,[t[12]||(t[12]=s("div",{class:"ov-chart-head"},[s("span",{class:"ov-chart-title"},"New repos \xB7 30d"),s("span",{class:"ov-chart-legend"},[s("span",{class:"ov-dot-legend ov-dot-ok-fill"}),y("repos/day")])],-1)),e.data?.history?.length?(l(),d("div",Ph,[(l(!0),d(Y,null,ne(e.data?.history,(o,r)=>(l(),d("div",{class:"ov-spark-col has-tip",key:r,"data-tip":e.historyLabel(o)+": +"+e.fmt?.number(o?.dailyRepositories)+" repos","aria-label":e.historyLabel(o)+": +"+e.fmt?.number(o?.dailyRepositories)+" repos"},[s("span",{class:"ov-spark-fill ov-spark-fill-alt",style:Pe({height:e.historyBarH(o,"dailyRepositories")+"px"})},null,4)],8,qh))),128))])):m("v-if",!0),e.data?.history?.length?(l(),d("div",Mh,[s("span",null,c(e.historyLabel(e.data?.history[0])),1),s("span",null,c(e.historyLabel(e.data?.history[Math?.floor(e.data?.history?.length/2)])),1),s("span",null,c(e.historyLabel(e.data?.history[e.data?.history?.length-1])),1)])):m("v-if",!0)]),s("div",$h,[t[13]||(t[13]=s("div",{class:"ov-chart-head"},[s("span",{class:"ov-chart-title"},"Users \xB7 30d"),s("span",{class:"ov-chart-legend"},[s("span",{class:"ov-dot-legend ov-dot-user-fill"}),y("total users")])],-1)),e.data?.history?.length?(l(),d("div",Lh,[(l(!0),d(Y,null,ne(e.data?.history,(o,r)=>(l(),d("div",{class:"ov-spark-col has-tip",key:r,"data-tip":e.historyLabel(o)+": "+e.fmt?.number(o?.nbUsers)+" users","aria-label":e.historyLabel(o)+": "+e.fmt?.number(o?.nbUsers)+" users"},[s("span",{class:"ov-spark-fill ov-spark-fill-user",style:Pe({height:e.historyBarH(o,"nbUsers")+"px"})},null,4)],8,Uh))),128))])):m("v-if",!0),e.data?.history?.length?(l(),d("div",Fh,[s("span",null,c(e.historyLabel(e.data?.history[0])),1),s("span",null,c(e.historyLabel(e.data?.history[Math?.floor(e.data?.history?.length/2)])),1),s("span",null,c(e.historyLabel(e.data?.history[e.data?.history?.length-1])),1)])):m("v-if",!0)]),s("div",zh,[t[14]||(t[14]=s("div",{class:"ov-chart-head"},[s("span",{class:"ov-chart-title"},"New users \xB7 30d"),s("span",{class:"ov-chart-legend"},[s("span",{class:"ov-dot-legend ov-dot-new-user-fill"}),y("users/day")])],-1)),e.data?.history?.length?(l(),d("div",Hh,[(l(!0),d(Y,null,ne(e.data?.history,(o,r)=>(l(),d("div",{class:"ov-spark-col has-tip",key:r,"data-tip":e.historyLabel(o)+": +"+e.fmt?.number(o?.dailyUsers)+" users","aria-label":e.historyLabel(o)+": +"+e.fmt?.number(o?.dailyUsers)+" users"},[s("span",{class:"ov-spark-fill ov-spark-fill-new-user",style:Pe({height:e.historyBarH(o,"dailyUsers")+"px"})},null,4)],8,Bh))),128))])):m("v-if",!0),e.data?.history?.length?(l(),d("div",Gh,[s("span",null,c(e.historyLabel(e.data?.history[0])),1),s("span",null,c(e.historyLabel(e.data?.history[Math?.floor(e.data?.history?.length/2)])),1),s("span",null,c(e.historyLabel(e.data?.history[e.data?.history?.length-1])),1)])):m("v-if",!0)])]),m(" \u2500\u2500 Three-panel row: Status / Errors / Queues \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 "),s("section",jh,[m(" Repo status breakdown "),s("div",Wh,[s("div",Kh,[t[15]||(t[15]=s("span",{class:"ov-panel-title"},"Repo status",-1)),s("span",Yh,c(e.fmt?.number(e.data?.repos?.total))+" total",1)]),s("div",Jh,[s("span",{class:"ov-bar-seg ov-bar-ready",title:"Ready",style:Pe({width:e.barPct("ready")+"%"})},null,4),s("span",{class:"ov-bar-seg ov-bar-preparing",title:"Preparing",style:Pe({width:e.barPct("preparing")+"%"})},null,4),s("span",{class:"ov-bar-seg ov-bar-error",title:"Error",style:Pe({width:e.barPct("error")+"%"})},null,4),s("span",{class:"ov-bar-seg ov-bar-expired",title:"Expired",style:Pe({width:e.barPct("expired")+"%"})},null,4),s("span",{class:"ov-bar-seg ov-bar-removed",title:"Removed",style:Pe({width:e.barPct("removed")+"%"})},null,4)]),s("div",Qh,[s("a",Xh,[t[16]||(t[16]=s("span",{class:"ov-swatch ov-bar-ready"},null,-1)),t[17]||(t[17]=y(" ready ",-1)),s("span",Zh,c(e.fmt?.number(e.statusCount("ready"))),1)]),s("a",xh,[t[18]||(t[18]=s("span",{class:"ov-swatch ov-bar-preparing"},null,-1)),t[19]||(t[19]=y(" preparing ",-1)),s("span",ev,c(e.fmt?.number(e.statusCount("preparing")+e.statusCount("download"))),1)]),s("a",tv,[t[20]||(t[20]=s("span",{class:"ov-swatch ov-bar-error"},null,-1)),t[21]||(t[21]=y(" error ",-1)),s("span",sv,c(e.fmt?.number(e.statusCount("error"))),1)]),s("a",nv,[t[22]||(t[22]=s("span",{class:"ov-swatch ov-bar-expired"},null,-1)),t[23]||(t[23]=y(" expired ",-1)),s("span",ov,c(e.fmt?.number(e.statusCount("expired")+e.statusCount("expiring"))),1)]),s("a",rv,[t[24]||(t[24]=s("span",{class:"ov-swatch ov-bar-removed"},null,-1)),t[25]||(t[25]=y(" removed ",-1)),s("span",iv,c(e.fmt?.number(e.statusCount("removed")+e.statusCount("removing"))),1)])])]),m(" Error breakdown "),s("div",av,[s("div",lv,[t[26]||(t[26]=s("span",{class:"ov-panel-title"},"Errors \xB7 24h",-1)),s("span",dv,c(e.data?.errors?.last24h)+" total",1)]),s("div",uv,[s("div",cv,[t[27]||(t[27]=s("span",{class:"ov-ebar-label"},"5xx",-1)),s("span",pv,[s("span",{class:"ov-ebar-fill ov-ebar-error",style:Pe({width:e.errPct("error")+"%"})},null,4)]),s("span",fv,c(e.data?.errors?.severity?.error),1)]),s("div",mv,[t[28]||(t[28]=s("span",{class:"ov-ebar-label"},"4xx",-1)),s("span",hv,[s("span",{class:"ov-ebar-fill ov-ebar-warn",style:Pe({width:e.errPct("warn")+"%"})},null,4)]),s("span",vv,c(e.data?.errors?.severity?.warn),1)]),s("div",yv,[t[29]||(t[29]=s("span",{class:"ov-ebar-label"},"Info",-1)),s("span",gv,[s("span",{class:"ov-ebar-fill ov-ebar-info",style:Pe({width:e.errPct("info")+"%"})},null,4)]),s("span",bv,c(e.data?.errors?.severity?.info),1)])]),e.data?.repos?.recentErrors24h?(l(),d("div",wv,[s("a",kv,c(e.data?.repos?.recentErrors24h)+" repos in error state \u2192",1)])):m("v-if",!0)]),m(" Top routes / queues "),s("div",_v,[t[34]||(t[34]=s("div",{class:"ov-panel-head"},[s("span",{class:"ov-panel-title"},"Queues"),s("span",{class:"ov-panel-meta"},"by state")],-1)),s("div",Ev,[t[33]||(t[33]=ge('<div class="ov-route-row ov-route-head"><span class="ov-route-name">Queue</span><span class="ov-route-n">Active</span><span class="ov-route-n">Wait</span><span class="ov-route-n ov-route-lat">Failed</span></div>',1)),s("a",Cv,[t[30]||(t[30]=s("span",{class:"ov-route-name"},"download",-1)),s("span",Nv,c(e.data?.queues?.download?.active),1),s("span",Sv,c(e.data?.queues?.download?.waiting),1),s("span",{class:O(["ov-route-n ov-route-lat",{"ov-n-bad":e.data?.queues?.download?.failed>0}])},c(e.data?.queues?.download?.failed),3)]),s("a",Dv,[t[31]||(t[31]=s("span",{class:"ov-route-name"},"remove",-1)),s("span",Rv,c(e.data?.queues?.remove?.active),1),s("span",Tv,c(e.data?.queues?.remove?.waiting),1),s("span",{class:O(["ov-route-n ov-route-lat",{"ov-n-bad":e.data?.queues?.remove?.failed>0}])},c(e.data?.queues?.remove?.failed),3)]),s("a",Ov,[t[32]||(t[32]=s("span",{class:"ov-route-name"},"cache",-1)),s("span",Av,c(e.data?.queues?.cache?.active),1),s("span",Iv,c(e.data?.queues?.cache?.waiting),1),s("span",{class:O(["ov-route-n ov-route-lat",{"ov-n-bad":e.data?.queues?.cache?.failed>0}])},c(e.data?.queues?.cache?.failed),3)])])])]),m(" \u2500\u2500 Services bar \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 "),s("section",Vv,[s("div",Pv,[t[35]||(t[35]=s("span",{class:"ov-panel-title"},"Services",-1)),s("span",qv,c(e.fmt?.number(e.data?.users?.total))+" users \xB7 "+c(e.data?.conferences?.total)+" conferences",1)]),s("div",Mv,[s("div",$v,[t[37]||(t[37]=s("span",{class:"ov-svc-dot ov-dot-ok"},null,-1)),s("div",Lv,[t[36]||(t[36]=s("span",{class:"ov-svc-name"},"web",-1)),s("span",Uv,c(e.data?.system?.nodeVersion),1)]),s("span",Fv,"uptime "+c(e.humanDuration(e.data?.system?.uptime)),1)]),s("div",zv,[s("span",{class:O(["ov-svc-dot",e.queueTotal(e.data?.queues?.download)>0?"ov-dot-ok":"ov-dot-idle"])},null,2),s("div",Hv,[t[38]||(t[38]=s("span",{class:"ov-svc-name"},"download",-1)),e.queueTotal(e.data?.queues?.download)?(l(),d("span",Bv,c(e.queueTotal(e.data?.queues?.download))+" jobs",1)):m("v-if",!0),e.queueTotal(e.data?.queues?.download)?m("v-if",!0):(l(),d("span",Gv,"idle"))])]),s("div",jv,[s("span",{class:O(["ov-svc-dot",e.queueTotal(e.data?.queues?.cache)>0?"ov-dot-ok":"ov-dot-idle"])},null,2),s("div",Wv,[t[39]||(t[39]=s("span",{class:"ov-svc-name"},"cache",-1)),e.queueTotal(e.data?.queues?.cache)?(l(),d("span",Kv,c(e.queueTotal(e.data?.queues?.cache))+" jobs",1)):m("v-if",!0),e.queueTotal(e.data?.queues?.cache)?m("v-if",!0):(l(),d("span",Yv,"idle"))])]),s("div",Jv,[s("span",{class:O(["ov-svc-dot",e.queueTotal(e.data?.queues?.remove)>0?"ov-dot-ok":"ov-dot-idle"])},null,2),s("div",Qv,[t[40]||(t[40]=s("span",{class:"ov-svc-name"},"remove",-1)),e.queueTotal(e.data?.queues?.remove)?(l(),d("span",Xv,c(e.queueTotal(e.data?.queues?.remove))+" jobs",1)):m("v-if",!0),e.queueTotal(e.data?.queues?.remove)?m("v-if",!0):(l(),d("span",Zv,"idle"))])]),s("div",xv,[s("span",{class:O(["ov-svc-dot",e.data?.repos?.recentErrors24h>10?"ov-dot-warn":"ov-dot-ok"])},null,2),s("div",ey,[t[41]||(t[41]=s("span",{class:"ov-svc-name"},"errors",-1)),s("span",ty,c(e.data?.errors?.last24h)+" / 24h",1)])])])])])):m("v-if",!0)])}var sy={class:"container paper-page admin-page"},ny={class:"q-header"},oy={class:"q-header-actions"},ry={class:"q-range-btns"},iy={class:"q-cards"},ay=["onClick"],ly={class:"q-card-head"},dy=["textContent"],uy=["textContent"],cy={class:"q-card-sub"},py={key:0,class:"q-card-bar"},fy={key:0,class:"q-detail"},my={class:"q-throughput"},hy={class:"q-section-label"},vy={class:"q-section-right"},yy={class:"q-stats-panel"},gy={class:"q-section-label"},by={class:"q-stats-grid"},wy={class:"q-stat"},ky=["textContent"],_y={class:"q-stat"},Ey=["textContent"],Cy={class:"q-stat"},Ny=["textContent"],Sy={class:"q-stat"},Dy=["textContent"],Ry={class:"q-stat"},Ty=["textContent"],Oy={class:"q-stat"},Ay=["textContent"],Iy={class:"q-stats-actions"},Vy=["disabled"],Py={class:"q-jobs"},qy={class:"q-jobs-header"},My={class:"q-section-label"},$y={class:"q-state-filters"},Ly={class:"q-state-toggle"},Uy={type:"checkbox"},Fy={class:"q-search-row"},zy={type:"search",class:"form-control",placeholder:"Search by job/repo id\u2026",autocomplete:"off"},Hy={class:"q-auto-refresh"},By={type:"checkbox"},Gy={key:0,class:"q-table"},jy=["onClick"],Wy={class:"q-cell-state"},Ky=["textContent"],Yy=["textContent"],Jy={class:"q-cell-id"},Qy=["textContent","href"],Xy={class:"q-cell-payload"},Zy=["textContent"],xy={key:0,class:"q-payload-detail"},eg=["textContent"],tg=["textContent"],sg={class:"q-cell-progress"},ng={key:0,class:"q-progress-wrap"},og=["textContent"],rg={class:"q-cell-actions"},ig=["onClick"],ag=["onClick"],lg={key:0,class:"q-detail-row"},dg={colspan:"7"},ug={class:"q-job-detail"},cg={class:"q-job-detail-grid"},pg={class:"q-job-detail-item"},fg={class:"q-job-detail-value"},mg=["textContent","href"],hg={class:"q-job-detail-item"},vg={class:"q-job-detail-value"},yg=["textContent"],gg={key:0,class:"q-job-detail-item"},bg=["textContent"],wg={key:1,class:"q-job-detail-item"},kg=["textContent"],_g={key:2,class:"q-job-detail-item"},Eg={class:"q-job-detail-value"},Cg={key:3,class:"q-job-detail-item"},Ng=["textContent"],Sg={key:4,class:"q-job-detail-item"},Dg=["textContent"],Rg={key:5,class:"q-job-detail-item"},Tg=["textContent"],Og={key:6,class:"q-job-detail-item"},Ag=["textContent"],Ig={key:7,class:"q-job-detail-item"},Vg=["textContent"],Pg={key:0,class:"q-job-detail-error"},qg=["textContent"],Mg={key:1},$g=["textContent"],Lg={class:"q-job-detail-actions"},Ug=["onClick"],Fg=["onClick"],zg=["href"],Hg={key:1,class:"paper-table-empty",style:{border:"1px solid var(--border-color)","border-radius":"10px",background:"var(--paper-card)"}},Bg={key:0},Gg={key:1};function Za(e,t){let o=be("field");return l(),d("div",sy,[t[47]||(t[47]=s("div",{class:"paper-crumbs"},[y("Admin \xA0/\xA0 "),s("span",{class:"here"},"Queues")],-1)),s("div",ny,[t[12]||(t[12]=s("h1",{class:"paper-page-title"},"Queues",-1)),s("div",oy,[s("div",ry,[s("button",{class:O(["btn btn-sm",{active:e.range=="1h"}]),onClick:t[0]||(t[0]=r=>e.setRange("1h"))},"1h",2),s("button",{class:O(["btn btn-sm",{active:e.range=="6h"}]),onClick:t[1]||(t[1]=r=>e.setRange("6h"))},"6h",2),s("button",{class:O(["btn btn-sm",{active:e.range=="24h"}]),onClick:t[2]||(t[2]=r=>e.setRange("24h"))},"24h",2),s("button",{class:O(["btn btn-sm",{active:e.range=="7d"}]),onClick:t[3]||(t[3]=r=>e.setRange("7d"))},"7d",2)]),s("button",{class:"btn btn-sm",onClick:t[4]||(t[4]=r=>e.pauseAll())},"Pause all"),s("button",{class:"btn btn-sm btn-dark",onClick:t[5]||(t[5]=r=>e.drainSelected())},"Drain "+c(e.selectedQueue),1)])]),t[48]||(t[48]=ge('<nav class="admin-nav"><a href="/admin/"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues" class="active"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors"><i class="fas fa-bug"></i> Errors</a></nav>',1)),m(" Queue overview cards "),s("div",iy,[(l(!0),d(Y,null,ne(e.queueList,(r,n)=>(l(),d("div",{class:O(["q-card",{selected:e.selectedQueue==r?.key,paused:r?.paused}]),onClick:i=>e.selectQueue(r.key)},[s("div",ly,[s("span",{class:O(["q-dot",{"q-dot-red":r?.paused||r?.counts?.failed>0}])},null,2),s("span",{class:"q-card-name",textContent:c(r?.label)},null,8,dy)]),s("div",{class:"q-card-count",textContent:c((r?.counts?.waiting||0)+(r?.counts?.active||0)+(r?.counts?.delayed||0))},null,8,uy),s("div",cy,[s("span",null,"waiting \xB7 "+c(r?.counts?.active||0)+" active",1),r?.counts?.active?(l(),d("div",py,[s("div",{class:"q-card-bar-fill",style:Pe({width:r?.counts?.active/((r?.counts?.waiting||0)+(r?.counts?.active||0)+(r?.counts?.delayed||0)||1)*100+"%"})},null,4)])):m("v-if",!0)])],10,ay))),256))]),m(" Detail: throughput chart + stats panel "),e.selectedStats?(l(),d("div",fy,[s("div",my,[s("div",hy,[y(c(e.selectedQueue)+"\xB7throughput ",1),s("span",vy,[t[13]||(t[13]=s("span",{class:"q-legend-completed"},"\u25CF",-1)),t[14]||(t[14]=y(" completed ",-1)),t[15]||(t[15]=s("span",{class:"q-legend-failed"},"\u25CF",-1)),t[16]||(t[16]=y(" failed ",-1)),t[17]||(t[17]=s("span",{class:"q-legend-exec"},"- -",-1)),y(" avg time \xB7 "+c(e.fmt?.uppercase(e.range)),1)])]),t[18]||(t[18]=s("div",{class:"q-chart-wrap"},[s("canvas",{id:"q-throughput-chart",height:"180"}),s("div",{id:"q-chart-tooltip",class:"q-chart-tooltip",style:{display:"none"}}),s("div",{id:"q-chart-crosshair",class:"q-chart-crosshair",style:{display:"none"}})],-1))]),s("div",yy,[s("div",gy,c(e.selectedQueue)+"\xB7stats",1),s("div",by,[s("div",wy,[t[19]||(t[19]=s("div",{class:"q-stat-label"},"WAITING",-1)),s("div",{class:"q-stat-value",textContent:c(e.selectedStats?.counts?.waiting||0)},null,8,ky)]),s("div",_y,[t[20]||(t[20]=s("div",{class:"q-stat-label"},"ACTIVE",-1)),s("div",{class:"q-stat-value",textContent:c(e.selectedStats?.counts?.active||0)},null,8,Ey)]),s("div",Cy,[t[21]||(t[21]=s("div",{class:"q-stat-label"},"COMPLETED (24H)",-1)),s("div",{class:"q-stat-value",textContent:c(e.fmt?.number(e.selectedStats?.completed24h))},null,8,Ny)]),s("div",Sy,[t[22]||(t[22]=s("div",{class:"q-stat-label"},"FAILED (24H)",-1)),s("div",{class:"q-stat-value",textContent:c(e.selectedStats?.failed24h||0)},null,8,Dy)]),s("div",Ry,[t[23]||(t[23]=s("div",{class:"q-stat-label"},"DELAYED",-1)),s("div",{class:"q-stat-value",textContent:c(e.selectedStats?.counts?.delayed||0)},null,8,Ty)]),s("div",Oy,[t[24]||(t[24]=s("div",{class:"q-stat-label"},"WORKERS",-1)),s("div",{class:"q-stat-value",textContent:c(e.selectedStats?.workers||0)},null,8,Ay)])]),s("div",Iy,[s("button",{class:"btn btn-sm",onClick:t[6]||(t[6]=r=>e.togglePause())},c(e.selectedStats?.paused?"Resume":"Pause"),1),s("button",{class:"btn btn-sm",onClick:t[7]||(t[7]=r=>e.retryFailed()),disabled:!e.selectedStats?.counts?.failed},"Retry failed",8,Vy),s("button",{class:"btn btn-sm",onClick:t[8]||(t[8]=r=>e.emptyQueue())},"Empty")])])])):m("v-if",!0),e.actionError?(l(),d("div",{key:1,class:"q-toast-error",onClick:t[9]||(t[9]=r=>e.actionError=null)},[t[25]||(t[25]=s("i",{class:"fas fa-exclamation-circle"},null,-1)),y(" "+c(e.actionError),1)])):m("v-if",!0),m(" Jobs table "),s("div",Py,[s("div",qy,[s("div",My,"ALL JOBS \xB7 "+c(e.fmt?.uppercase(e.selectedQueue)),1),s("div",$y,[(l(!0),d(Y,null,ne(e.allStates,(r,n)=>(l(),d("label",Ly,[E(s("input",Uy,null,512),[[o,{state:e.viewState,set:i=>{e.stateFilter[r]=i},value:e.stateFilter[r],form:null,options:{}}]]),s("span",{class:O("q-state-chip q-state-"+r)},c(r),3)]))),256))])]),s("div",Fy,[E(s("input",zy,null,512),[[o,{state:e.viewState,set:r=>{e.query.search=r},value:e.query?.search,form:null,options:{}}]]),s("label",Hy,[E(s("input",By,null,512),[[o,{state:e.viewState,set:r=>{e.query.autoRefresh=r},value:e.query?.autoRefresh,form:null,options:{}}]]),t[26]||(t[26]=y(" Auto-refresh ",-1))]),s("button",{class:"btn btn-sm",type:"button",title:"Refresh now",onClick:t[10]||(t[10]=r=>e.refreshNow())},[...t[27]||(t[27]=[s("i",{class:"fas fa-sync"},null,-1)])])]),e.filteredJobs().length>0?(l(),d("table",Gy,[t[45]||(t[45]=s("thead",null,[s("tr",null,[s("th",null,"STATE"),s("th",null,"JOB ID"),s("th",null,"PAYLOAD"),s("th",null,"ATTEMPTS"),s("th",null,"DURATION"),s("th",null,"PROGRESS"),s("th")])],-1)),(l(!0),d(Y,null,ne(e.filteredJobs(),(r,n)=>(l(),d("tbody",null,[s("tr",{style:{cursor:"pointer"},class:O({"q-row-failed":r?._state=="failed","q-row-expanded":e.expanded[r?.id]}),onClick:i=>e.toggleJob(r)},[s("td",Wy,[s("span",{textContent:c(r?._state),class:O("q-state-badge q-state-"+r?._state)},null,10,Ky),r?._state=="delayed"&&r?.delayUntil?(l(),d("span",{key:0,class:"q-delay-hint",textContent:c(e.delayCountdown(r?.delayUntil))},null,8,Yy)):m("v-if",!0)]),s("td",Jy,[s("i",{class:O(["fas fa-chevron-right q-chevron",{"q-chevron-open":e.expanded[r?.id]}])},null,2),s("a",{target:"_blank",textContent:c("job:"+e.fmt.limitTo(r?.id,6)),onClick:t[11]||(t[11]=i=>i.stopPropagation()),href:e.safeUrl("/r/"+r?.id)},null,8,Qy)]),s("td",Xy,[s("span",{textContent:c(r?.name||"anonymize")},null,8,Zy),r?.data?.repoId&&r?.data?.repoId!==r?.name?(l(),d("span",xy," \xB7 "+c(r?.data?.repoId),1)):m("v-if",!0)]),s("td",{class:"q-cell-num",textContent:c(r?.attemptsMade||1)},null,8,eg),s("td",{class:"q-cell-num",textContent:c(e.jobDuration(r))},null,8,tg),s("td",sg,[e.jobProgressPct(r)!==null?(l(),d("div",ng,[s("div",{class:"q-progress-bar",style:Pe({"--pct":e.jobProgressPct(r)+"%"})},null,4),s("span",{class:"q-progress-label",textContent:c(e.jobProgressPct(r)+"%")},null,8,og)])):m("v-if",!0)]),s("td",rg,[r?._state=="failed"?(l(),d("button",{key:0,class:"btn btn-sm",title:"Retry",onClick:i=>{e.retryJob(r),i.stopPropagation()}},[...t[28]||(t[28]=[s("i",{class:"fas fa-sync"},null,-1)])],8,ig)):m("v-if",!0),s("button",{class:"btn btn-sm",title:"Remove",onClick:i=>{e.removeJob(r),i.stopPropagation()}},[...t[29]||(t[29]=[s("i",{class:"fas fa-trash-alt"},null,-1)])],8,ag)])],10,jy),e.expanded[r?.id]?(l(),d("tr",lg,[s("td",dg,[s("div",ug,[s("div",cg,[s("div",pg,[t[30]||(t[30]=s("span",{class:"q-job-detail-label"},"JOB ID",-1)),s("span",fg,[s("a",{target:"_blank",textContent:c(r?.id),href:e.safeUrl("/r/"+r?.id)},null,8,mg)])]),s("div",hg,[t[31]||(t[31]=s("span",{class:"q-job-detail-label"},"STATE",-1)),s("span",vg,[s("span",{textContent:c(r?._state),class:O("q-state-badge q-state-"+r?._state)},null,10,yg)])]),r?.data?.repoId?(l(),d("div",gg,[t[32]||(t[32]=s("span",{class:"q-job-detail-label"},"REPO ID",-1)),s("span",{class:"q-job-detail-value",textContent:c(r?.data?.repoId)},null,8,bg)])):m("v-if",!0),r?.timestamp?(l(),d("div",wg,[t[33]||(t[33]=s("span",{class:"q-job-detail-label"},"CREATED",-1)),s("span",{class:"q-job-detail-value",textContent:c(e.humanTime(r?.timestamp))},null,8,kg)])):m("v-if",!0),r?._state=="delayed"&&r?.delayUntil?(l(),d("div",_g,[t[34]||(t[34]=s("span",{class:"q-job-detail-label"},"RETRY AT",-1)),s("span",Eg,c(e.humanTime(r?.delayUntil))+" ("+c(e.delayCountdown(r?.delayUntil))+")",1)])):m("v-if",!0),r?.processedOn?(l(),d("div",Cg,[t[35]||(t[35]=s("span",{class:"q-job-detail-label"},"PROCESSED",-1)),s("span",{class:"q-job-detail-value",textContent:c(e.humanTime(r?.processedOn))},null,8,Ng)])):m("v-if",!0),r?.finishedOn?(l(),d("div",Sg,[t[36]||(t[36]=s("span",{class:"q-job-detail-label"},"FINISHED",-1)),s("span",{class:"q-job-detail-value",textContent:c(e.humanTime(r?.finishedOn))},null,8,Dg)])):m("v-if",!0),r?.attemptsMade?(l(),d("div",Rg,[t[37]||(t[37]=s("span",{class:"q-job-detail-label"},"ATTEMPTS",-1)),s("span",{class:"q-job-detail-value",textContent:c(r?.attemptsMade)},null,8,Tg)])):m("v-if",!0),r?.progress&&r?.progress?.status?(l(),d("div",Og,[t[38]||(t[38]=s("span",{class:"q-job-detail-label"},"STATUS",-1)),s("span",{class:"q-job-detail-value",textContent:c(r?.progress?.status)},null,8,Ag)])):m("v-if",!0),e.jobProgressPct(r)!==null?(l(),d("div",Ig,[t[39]||(t[39]=s("span",{class:"q-job-detail-label"},"PROGRESS",-1)),s("span",{class:"q-job-detail-value",textContent:c(e.jobProgressPct(r)+"%")},null,8,Vg)])):m("v-if",!0)]),r?.failedReason?(l(),d("div",Pg,[t[40]||(t[40]=s("span",{class:"q-job-detail-label"},"ERROR",-1)),s("div",{class:"q-error-reason",textContent:c(r?.failedReason)},null,8,qg)])):m("v-if",!0),r?.stacktrace?.length?(l(),d("div",Mg,[t[41]||(t[41]=s("span",{class:"q-job-detail-label"},"STACKTRACE",-1)),(l(!0),d(Y,null,ne(r?.stacktrace,(i,a)=>(l(),d("pre",{class:"q-error-stack",key:a},[s("code",{textContent:c(i)},null,8,$g)]))),128))])):m("v-if",!0),s("div",Lg,[r?._state=="failed"?(l(),d("button",{key:0,class:"btn btn-sm",onClick:i=>e.retryJob(r)},[...t[42]||(t[42]=[s("i",{class:"fas fa-sync"},null,-1),y(" Retry",-1)])],8,Ug)):m("v-if",!0),s("button",{class:"btn btn-sm",onClick:i=>e.removeJob(r)},[...t[43]||(t[43]=[s("i",{class:"fas fa-trash-alt"},null,-1),y(" Remove",-1)])],8,Fg),s("a",{class:"btn btn-sm",target:"_blank",href:e.safeUrl("/r/"+r?.id)},[...t[44]||(t[44]=[s("i",{class:"fas fa-external-link-alt"},null,-1),y(" View repo",-1)])],8,zg)])])])])):m("v-if",!0)]))),256))])):m("v-if",!0),e.filteredJobs().length==0?(l(),d("div",Hg,[t[46]||(t[46]=s("i",{class:"fas fa-check-circle"},null,-1)),e.query?.search?m("v-if",!0):(l(),d("span",Bg,"No jobs in the "+c(e.selectedQueue)+" queue.",1)),e.query?.search?(l(),d("span",Gg,"No jobs match the current filters.")):m("v-if",!0)])):m("v-if",!0)])])}var jg={class:"container paper-page admin-page"},Wg={class:"admin-summary"},Kg={class:"summary-total"},Yg={class:"summary-meta"},Jg={class:"count"},Qg={class:"count"},Xg={class:"count"},Zg={class:"count"},xg={class:"count"},eb={key:0,class:"alert alert-danger",style:{margin:"8px 0"}},tb={class:"w-100 admin-filter-toolbar","aria-label":"Repositories","accept-charset":"UTF-8"},sb={class:"admin-filter-row"},ob={class:"search-wrap"},rb={type:"search",class:"form-control","aria-label":"Search repositories",placeholder:"Search repoId, source repo, error message\u2026",autocomplete:"off"},ib={key:0,class:"admin-search-hint"},ab={class:"admin-filter-inline"},lb={type:"text",class:"form-control form-control-sm",placeholder:"username"},db={class:"admin-filter-inline"},ub={type:"text",class:"form-control form-control-sm",placeholder:"ID"},cb={class:"admin-filter-inline","aria-label":"Pagination"},pb=["disabled"],fb={style:{"font-family":"var(--font-mono)","font-size":"12px",color:"var(--ink-muted)"}},mb=["disabled"],hb={key:0,class:"admin-filter-row"},vb={class:"admin-active-chips"},yb={class:"key"},gb=["onClick"],bb={key:1,class:"bulk-bar"},wb={class:"paper-table paper-table-repos has-bulk w-100",role:"table","aria-label":"Repositories"},kb={class:"paper-table-head",role:"row"},_b={role:"columnheader",style:{width:"28px"}},Eb=["checked"],Cb={role:"columnheader"},Nb={role:"columnheader"},Sb={role:"columnheader",class:"num"},Db={role:"columnheader"},Rb={role:"cell",style:{width:"28px"}},Tb={type:"checkbox","aria-label":"Select repository"},Ob={class:"cell-anon",role:"cell"},Ab={class:"anon-text"},Ib=["textContent","href"],Vb={class:"anon-sub"},Pb=["textContent","href"],qb={key:0},Mb=["textContent","href"],$b={key:1},Lb=["textContent","href"],Ub={key:2},Fb={class:"cell-status",role:"cell"},zb={class:"status-line"},Hb=["textContent"],Bb=["textContent","title"],Gb=["textContent"],jb=["textContent"],Wb={class:"cell-actions",role:"cell"},Kb={class:"dropdown"},Yb={class:"dropdown-menu dropdown-menu-right"},Jb=["href"],Qb=["href"],Xb=["href"],Zb=["onClick"],xb=["onClick"],e1=["onClick"],t1=["onClick"],s1=["onClick"],n1=["onClick"],o1={key:0,class:"paper-table-empty"},r1={class:"admin-toolbar",style:{"justify-content":"space-between","border-bottom":"none"}},i1={style:{"font-size":"12px",color:"var(--ink-muted)"}},a1={key:0,class:"pagination-compact"},l1=["disabled"],d1=["max"],u1=["disabled"],c1={class:"admin-filter-inline"},p1={class:"form-control form-control-sm"};function xa(e,t){let o=be("field"),r=be("form");return l(),d("div",jg,[t[61]||(t[61]=ge('<div class="paper-crumbs">Admin \xA0/\xA0 <span class="here">Repositories</span></div><h1 class="paper-page-title">Repositories</h1><nav class="admin-nav"><a href="/admin/"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories" class="active"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors"><i class="fas fa-bug"></i> Errors</a></nav>',3)),s("div",Wg,[s("span",Kg,c(e.total>=0?e.fmt.number(e.total):"\u2026"),1),s("span",Yg,c(e.fmt?.humanFileSize(e.totalSize))+" on disk",1),s("span",{class:O(["summary-pill ok",{active:e.query?.ready}]),title:"Toggle ready filter",onClick:t[0]||(t[0]=n=>{e.query.ready=!e.query.ready,e.query.page=1})},[t[18]||(t[18]=y("Ready ",-1)),s("span",Jg,c(e.fmt?.number(e.statusCountFor("ready"))),1)],2),s("span",{class:O(["summary-pill warn",{active:e.query?.preparing}]),title:"Toggle preparing filter",onClick:t[1]||(t[1]=n=>{e.query.preparing=!e.query.preparing,e.query.page=1})},[t[19]||(t[19]=y("Preparing ",-1)),s("span",Qg,c(e.fmt?.number(e.statusCountFor("preparing")+e.statusCountFor("download"))),1)],2),s("span",{class:O(["summary-pill error",{active:e.query?.error}]),title:"Toggle errored filter",onClick:t[2]||(t[2]=n=>{e.query.error=!e.query.error,e.query.page=1})},[t[20]||(t[20]=y("Errored ",-1)),s("span",Xg,c(e.fmt?.number(e.statusCountFor("error"))),1)],2),s("span",{class:O(["summary-pill",{active:e.query?.expired}]),title:"Toggle expired filter",onClick:t[3]||(t[3]=n=>{e.query.expired=!e.query.expired,e.query.page=1})},[t[21]||(t[21]=y("Expired ",-1)),s("span",Zg,c(e.fmt?.number(e.statusCountFor("expired")+e.statusCountFor("expiring"))),1)],2),s("span",{class:O(["summary-pill",{active:e.query?.removed}]),title:"Toggle removed filter",onClick:t[4]||(t[4]=n=>{e.query.removed=!e.query.removed,e.query.page=1})},[t[22]||(t[22]=y("Removed ",-1)),s("span",xg,c(e.fmt?.number(e.statusCountFor("removed")+e.statusCountFor("removing"))),1)],2)]),e.fetchError?(l(),d("div",eb,[t[23]||(t[23]=s("i",{class:"fas fa-exclamation-triangle"},null,-1)),y(" "+c(e.fetchError),1)])):m("v-if",!0),E((l(),d("form",tb,[m(" Row 1: search + scoped inputs + headline actions "),s("div",sb,[s("div",ob,[E(s("input",rb,null,512),[[o,{state:e.viewState,set:n=>{e.query.search=n},value:e.query?.search,form:null,options:{}}]]),e.query?.search?m("v-if",!0):(l(),d("span",ib,"/"))]),s("span",ab,[t[24]||(t[24]=s("label",null,"Owner",-1)),E(s("input",lb,null,512),[[o,{state:e.viewState,set:n=>{e.query.owner=n},value:e.query?.owner,form:null,options:{}}]])]),s("span",db,[t[25]||(t[25]=s("label",null,"Conference",-1)),E(s("input",ub,null,512),[[o,{state:e.viewState,set:n=>{e.query.conference=n},value:e.query?.conference,form:null,options:{}}]])]),t[29]||(t[29]=s("span",{class:"admin-filter-spacer"},null,-1)),s("button",{class:"btn btn-sm",type:"button",title:"Export current view to CSV",onClick:t[5]||(t[5]=n=>e.exportCsv())},[...t[26]||(t[26]=[s("i",{class:"fas fa-file-csv"},null,-1),y(" Export",-1)])]),s("span",cb,[s("button",{class:"btn btn-sm",type:"button",onClick:t[6]||(t[6]=n=>e.query.page=Math.max(1,e.query.page-1)),disabled:e.query?.page<=1},[...t[27]||(t[27]=[s("i",{class:"fas fa-chevron-left"},null,-1)])],8,pb),s("span",fb,c(e.query?.page)+"/"+c(e.totalPage||1),1),s("button",{class:"btn btn-sm",type:"button",onClick:t[7]||(t[7]=n=>e.query.page=Math.min(e.totalPage,e.query.page+1)),disabled:e.query?.page>=e.totalPage},[...t[28]||(t[28]=[s("i",{class:"fas fa-chevron-right"},null,-1)])],8,mb)])]),m(" Row 2: appears only when there are active filter chips "),e.chips?.length?(l(),d("div",hb,[s("div",vb,[(l(!0),d(Y,null,ne(e.chips,(n,i)=>(l(),d("span",{class:"admin-active-chip",key:n?.key},[s("span",yb,c(n?.label),1),s("span",null,c(n?.value),1),s("button",{type:"button","aria-label":"Remove filter",onClick:a=>e.clearFilter(n.key)},[...t[30]||(t[30]=[s("i",{class:"fas fa-times"},null,-1)])],8,gb)]))),128))])])):m("v-if",!0)])),[[r,e.viewState]]),e.selectedCount()>0?(l(),d("div",bb,[s("span",null,[s("strong",null,c(e.selectedCount()),1),t[31]||(t[31]=y(" selected",-1))]),s("button",{class:"btn btn-sm",type:"button",onClick:t[8]||(t[8]=n=>e.bulkRefresh())},[...t[32]||(t[32]=[s("i",{class:"fas fa-sync"},null,-1),y(" Force refresh",-1)])]),s("button",{class:"btn btn-sm text-danger",type:"button",onClick:t[9]||(t[9]=n=>e.bulkRemoveCache())},[...t[33]||(t[33]=[s("i",{class:"fas fa-broom"},null,-1),y(" Remove cache",-1)])]),s("button",{class:"btn btn-sm",type:"button",onClick:t[10]||(t[10]=n=>e.clearSelection())},"Clear")])):m("v-if",!0),s("div",wb,[s("div",kb,[s("div",_b,[s("input",{type:"checkbox","aria-label":"Select all on page",onClick:t[11]||(t[11]=n=>e.selectAllOnPage()),checked:e.allSelected},null,8,Eb)]),s("div",Cb,[s("span",{class:O(["sortable",{active:e.query?.sort=="source.repositoryName"}]),onClick:t[12]||(t[12]=n=>e.sortBy("source.repositoryName"))},[t[34]||(t[34]=y("Repository ",-1)),s("i",{class:O(["fas",e.sortIcon("source.repositoryName")])},null,2)],2)]),s("div",Nb,[s("span",{class:O(["sortable",{active:e.query?.sort=="status"}]),onClick:t[13]||(t[13]=n=>e.sortBy("status"))},[t[35]||(t[35]=y("Status ",-1)),s("i",{class:O(["fas",e.sortIcon("status")])},null,2)],2)]),s("div",Sb,[s("span",{class:O(["sortable",{active:e.query?.sort=="pageView"}]),onClick:t[14]||(t[14]=n=>e.sortBy("pageView"))},[t[36]||(t[36]=y("Views ",-1)),s("i",{class:O(["fas",e.sortIcon("pageView")])},null,2)],2)]),s("div",Db,[s("span",{class:O(["sortable",{active:e.query?.sort=="anonymizeDate"}]),onClick:t[15]||(t[15]=n=>e.sortBy("anonymizeDate"))},[t[37]||(t[37]=y("Anonymized ",-1)),s("i",{class:O(["fas",e.sortIcon("anonymizeDate")])},null,2)],2)]),t[38]||(t[38]=s("div",{role:"columnheader","aria-label":"Actions"},null,-1))]),(l(!0),d(Y,null,ne(e.filteredRepositories,(n,i)=>(l(),d("div",{class:O(["paper-table-row",{"repo-inactive":n?.status=="expired"||n?.status=="removed","repo-error":n?.status=="error","row-selected":e.selected[n?.repoId]}]),role:"row"},[s("div",Rb,[E(s("input",Tb,null,512),[[o,{state:e.viewState,set:a=>{e.selected[n.repoId]=a},value:e.selected[n?.repoId],form:null,options:{}}]])]),s("div",Ob,[t[43]||(t[43]=s("span",{class:"type-badge type-repo"},"Repo",-1)),s("div",Ab,[s("a",{class:"repo-name",target:"_blank",textContent:c(n?.repoId),href:e.safeUrl("/r/"+n?.repoId)},null,8,Ib),s("div",Vb,[s("a",{textContent:c(n?.source?.repositoryName),href:e.safeUrl("https://github.com/"+n?.source?.repositoryName+"/")},null,8,Pb),n?.options?.update?(l(),d("span",qb,[t[39]||(t[39]=y("\xA0\xB7\xA0",-1)),s("a",{textContent:c(n?.source?.branch),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.branch)},null,8,Mb)])):m("v-if",!0),n?.options?.update?m("v-if",!0):(l(),d("span",$b,[t[40]||(t[40]=y("\xA0\xB7\xA0@",-1)),s("a",{textContent:c(n?.source?.commit?.substring(0,8)),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.commit)},null,8,Lb)])),n?.conference?(l(),d("span",Ub,[t[41]||(t[41]=y("\xA0\xB7\xA0",-1)),t[42]||(t[42]=s("i",{class:"fas fa-chalkboard-teacher"},null,-1)),y(" "+c(n?.conference),1)])):m("v-if",!0),s("span",null,"\xA0\xB7\xA0"+c(e.fmt?.humanFileSize(n?.size?.storage)),1),s("span",null,"\xA0\xB7\xA0"+c(e.fmt?.number(n?.options?.terms?.length))+" terms",1)])])]),s("div",Fb,[s("span",zb,[s("span",{class:O(["status-dot",{"status-removed":n?.status=="removed"||n?.status=="expired","status-ready":n?.status=="ready","status-error":n?.status=="error","status-preparing":n?.status=="preparing"}])},null,2),s("span",{textContent:c(e.fmt?.title(n?.status))},null,8,Hb)]),n?.statusMessage?(l(),d("span",{key:0,class:"status-sub",textContent:c(e.fmt?.statusMsg(n?.statusMessage)),title:n?.statusMessage},null,8,Bb)):m("v-if",!0)]),s("div",{class:"cell-views num",role:"cell",textContent:c(e.fmt?.number(n?.pageView||0))},null,8,Gb),s("div",{class:"cell-expires",role:"cell",textContent:c(e.fmt?.humanTime(n?.anonymizeDate))},null,8,jb),s("div",Wb,[s("div",Kb,[t[55]||(t[55]=s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions"},[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"})],-1)),s("div",Yb,[s("a",{class:"dropdown-item",href:e.safeUrl("/anonymize/"+n?.repoId)},[...t[44]||(t[44]=[s("i",{class:"far fa-edit"},null,-1),y(" Edit",-1)])],8,Jb),s("a",{class:"dropdown-item",href:e.safeUrl("/r/"+n?.repoId+"/")},[...t[45]||(t[45]=[s("i",{class:"fa fa-eye"},null,-1),y(" View repo",-1)])],8,Qb),n?.options?.page&&n?.status=="ready"?(l(),d("a",{key:0,class:"dropdown-item",target:"_self",href:e.safeUrl("/w/"+n?.repoId+"/")},[...t[46]||(t[46]=[s("i",{class:"fas fa-globe"},null,-1),y(" View page",-1)])],8,Xb)):m("v-if",!0),s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.fetchGithubInfo(n),["prevent"])},[...t[47]||(t[47]=[s("i",{class:"fab fa-github"},null,-1),y(" Live GitHub info",-1)])],8,Zb),t[53]||(t[53]=s("div",{class:"dropdown-divider"},null,-1)),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.updateRepository(n),["prevent"])},[...t[48]||(t[48]=[s("i",{class:"fas fa-sync"},null,-1),y(" Force update",-1)])],8,xb),[[B,n?.status=="ready"||n?.status=="error"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.updateRepository(n),["prevent"])},[...t[49]||(t[49]=[s("i",{class:"fas fa-check-circle"},null,-1),y(" Enable",-1)])],8,e1),[[B,n?.status=="removed"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.showStatusMessage(n),["prevent"])},[...t[50]||(t[50]=[s("i",{class:"fas fa-exclamation-triangle"},null,-1),y(" View status message",-1)])],8,t1),[[B,n?.statusMessage]]),t[54]||(t[54]=s("div",{class:"dropdown-divider"},null,-1)),s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.removeCache(n),["prevent"])},[...t[51]||(t[51]=[s("i",{class:"fas fa-broom"},null,-1),y(" Remove cache",-1)])],8,s1),E(s("a",{class:"dropdown-item text-danger",href:"#",onClick:we(a=>e.removeRepository(n),["prevent"])},[...t[52]||(t[52]=[s("i",{class:"fas fa-trash-alt"},null,-1),y(" Remove",-1)])],8,n1),[[B,n?.status=="ready"]])])])])],2))),256)),e.filteredRepositories?.length==0?(l(),d("div",o1,[...t[56]||(t[56]=[s("i",{class:"fas fa-inbox"},null,-1),s("span",null,"No repositories match the current filters.",-1)])])):m("v-if",!0)]),s("div",r1,[s("span",i1,c(e.fmt?.number(e.total))+" results",1),e.totalPage>1?(l(),d("div",a1,[s("button",{class:"btn btn-sm",onClick:t[16]||(t[16]=n=>e.query.page=Math.max(1,e.query.page-1)),disabled:e.query?.page<=1},[...t[57]||(t[57]=[s("i",{class:"fas fa-chevron-left"},null,-1),y(" Previous ",-1)])],8,l1),E(s("input",{type:"number",class:"form-control form-control-sm",min:"1",style:{width:"56px"},"aria-label":"Page",max:e.totalPage},null,8,d1),[[o,{state:e.viewState,set:n=>{e.query.page=n},value:e.query?.page,form:null,options:{}}]]),s("span",null,"of "+c(e.totalPage),1),s("button",{class:"btn btn-sm",onClick:t[17]||(t[17]=n=>e.query.page=Math.min(e.totalPage,e.query.page+1)),disabled:e.query?.page>=e.totalPage},[...t[58]||(t[58]=[y(" Next ",-1),s("i",{class:"fas fa-chevron-right"},null,-1)])],8,u1)])):m("v-if",!0),s("span",c1,[t[60]||(t[60]=s("label",null,"Per page",-1)),E((l(),d("select",p1,[...t[59]||(t[59]=[ge('<option value="10">10</option><option value="25">25</option><option value="50">50</option><option value="100">100</option><option value="250">250</option>',5)])])),[[o,{state:e.viewState,set:n=>{e.query.limit=n},value:e.query?.limit,form:null,options:{}}]])])])])}var f1={class:"container paper-page admin-page"},m1={class:"paper-crumbs"},h1={class:"here"},v1={class:"paper-page-title"},y1={key:0,class:"user-detail-card"},g1={class:"user-header"},b1=["src"],w1={class:"status-dot-wrap"},k1=["textContent"],_1={key:0,class:"type-badge type-repo"},E1={class:"user-actions",style:{"margin-top":"4px"}},C1={class:"user-detail-grid"},N1={class:"detail-value"},S1={class:"detail-value"},D1={class:"detail-value",style:{"font-family":"var(--font-mono)","font-size":"0.85rem"}},R1={class:"detail-value"},T1=["href"],O1={class:"detail-value"},A1={class:"detail-value"},I1={key:0},V1={key:1,class:"text-muted"},P1={class:"detail-value"},q1={key:0,style:{"margin-top":"20px"}},M1={class:"paper-table w-100",style:{"margin-top":"10px"}},$1={class:"paper-table-row",style:{"grid-template-columns":"1fr 160px"}},L1={class:"cell-anon",role:"cell"},U1={class:"anon-text"},F1=["textContent"],z1={class:"cell-expires",role:"cell"},H1={key:1,class:"admin-section-header"},B1={class:"section-count"},G1={key:2,class:"user-detail-card"},j1={type:"text",class:"form-control",placeholder:"Token name (e.g. dev-laptop)",required:""},W1={key:0,class:"alert alert-warning",role:"alert"},K1={style:{"white-space":"pre-wrap","word-break":"break-all",margin:"8px 0 0","font-family":"var(--font-mono)","font-size":"0.85rem"}},Y1={key:1,class:"paper-table w-100"},J1={class:"paper-table-row",role:"row",style:{"grid-template-columns":"1fr 200px 200px 80px"}},Q1=["textContent"],X1=["textContent"],Z1={role:"cell"},x1={key:0},ew={key:1,class:"text-muted"},tw={role:"cell"},sw=["onClick"],nw={key:2,class:"paper-table-empty"},ow={class:"admin-section-header"},rw={class:"section-count"},iw={class:"admin-summary"},aw={class:"summary-total"},lw={class:"count"},dw={class:"count"},uw={class:"count"},cw={class:"count"},pw={class:"count"},fw={class:"w-100 admin-filter-toolbar","aria-label":"Repositories","accept-charset":"UTF-8"},mw={class:"admin-filter-row"},hw={class:"search-wrap"},vw={type:"search",class:"form-control","aria-label":"Search repositories",placeholder:"Search repoId, source repo, error message\u2026",autocomplete:"off"},yw={key:3,class:"bulk-bar"},gw={class:"paper-table paper-table-repos has-bulk w-100",role:"table","aria-label":"Repositories"},bw={class:"paper-table-head",role:"row"},ww={role:"columnheader",style:{width:"28px"}},kw=["checked"],_w={role:"columnheader"},Ew={role:"columnheader"},Cw={role:"columnheader",class:"num"},Nw={role:"columnheader"},Sw={role:"cell",style:{width:"28px"}},Dw={type:"checkbox","aria-label":"Select repository"},Rw={class:"cell-anon",role:"cell"},Tw={class:"anon-text"},Ow=["textContent","href"],Aw={class:"anon-sub"},Iw=["textContent","href"],Vw={key:0},Pw=["textContent","href"],qw={key:1},Mw=["textContent","href"],$w={key:2},Lw={class:"cell-status",role:"cell"},Uw={class:"status-line"},Fw=["textContent"],zw=["textContent","title"],Hw=["textContent"],Bw=["textContent"],Gw={class:"cell-actions",role:"cell"},jw={class:"dropdown"},Ww={class:"dropdown-menu dropdown-menu-right"},Kw=["href"],Yw=["href"],Jw=["href"],Qw=["onClick"],Xw=["onClick"],Zw=["onClick"],xw=["onClick"],ek=["onClick"],tk=["onClick"],sk={key:0,class:"paper-table-empty"};function el(e,t){let o=be("field"),r=be("form");return l(),d("div",f1,[s("div",m1,[t[22]||(t[22]=s("a",{href:"/admin/users"},"Users",-1)),t[23]||(t[23]=y(" \xA0/\xA0 ",-1)),s("span",h1,c(e.userInfo?.username||"Profile"),1)]),s("h1",v1,c(e.userInfo?.username||"User"),1),t[81]||(t[81]=ge('<nav class="admin-nav"><a href="/admin/"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users" class="active"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors"><i class="fas fa-bug"></i> Errors</a></nav>',1)),e.userInfo?(l(),d("div",y1,[s("div",g1,[e.userInfo?.photo?(l(),d("img",{key:0,width:"56",height:"56",src:e.safeUrl(e.userInfo?.photo)},null,8,b1)):m("v-if",!0),s("div",null,[s("h1",null,[y(c(e.userInfo?.username)+" ",1),s("span",w1,[s("span",{class:O(["status-dot",{"status-ready":e.userInfo?.status=="active","status-removed":e.userInfo?.status!="active"}])},null,2),s("span",{textContent:c(e.fmt?.title(e.userInfo?.status))},null,8,k1)]),e.userInfo?.isAdmin?(l(),d("span",_1,"Admin")):m("v-if",!0)]),s("div",E1,[e.userInfo?.status!=="banned"?(l(),d("button",{key:0,class:"btn btn-sm text-danger",onClick:t[0]||(t[0]=n=>e.banUser())},[...t[24]||(t[24]=[s("i",{class:"fas fa-ban"},null,-1),y(" Ban",-1)])])):m("v-if",!0),e.userInfo?.status==="banned"||e.userInfo?.status==="removed"?(l(),d("button",{key:1,class:"btn btn-sm",onClick:t[1]||(t[1]=n=>e.activateUser())},[...t[25]||(t[25]=[s("i",{class:"fas fa-check-circle"},null,-1),y(" Activate",-1)])])):m("v-if",!0),e.userInfo?.isAdmin?m("v-if",!0):(l(),d("button",{key:2,class:"btn btn-sm",onClick:t[2]||(t[2]=n=>e.promoteUser())},[...t[26]||(t[26]=[s("i",{class:"fas fa-user-shield"},null,-1),y(" Promote to admin",-1)])])),e.userInfo?.isAdmin?(l(),d("button",{key:3,class:"btn btn-sm text-danger",onClick:t[3]||(t[3]=n=>e.demoteUser())},[...t[27]||(t[27]=[s("i",{class:"fas fa-user-minus"},null,-1),y(" Remove admin",-1)])])):m("v-if",!0)])])]),s("div",C1,[t[30]||(t[30]=s("div",{class:"detail-label"},"ID",-1)),s("div",N1,c(e.userInfo?._id),1),t[31]||(t[31]=s("div",{class:"detail-label"},"Email",-1)),s("div",S1,c(e.userInfo?.emails?.[0]?.email),1),t[32]||(t[32]=s("div",{class:"detail-label"},"Access token",-1)),s("div",D1,c(e.userInfo?.accessTokens?.github),1),t[33]||(t[33]=s("div",{class:"detail-label"},"GitHub",-1)),s("div",R1,[s("a",{target:"_blank",href:e.safeUrl("https://github.com/"+e.userInfo?.username)},[t[28]||(t[28]=s("i",{class:"fab fa-github"},null,-1)),y(" "+c(e.userInfo?.username),1)],8,T1)]),t[34]||(t[34]=s("div",{class:"detail-label"},"Created",-1)),s("div",O1,c(e.fmt?.humanTime(e.userInfo?.dateOfEntry)),1),t[35]||(t[35]=s("div",{class:"detail-label"},"Last connection",-1)),s("div",A1,[e.userInfo?.accessTokenDates?.github?(l(),d("span",I1,c(e.fmt?.humanTime(e.userInfo?.accessTokenDates?.github)),1)):m("v-if",!0),e.userInfo?.accessTokenDates?.github?m("v-if",!0):(l(),d("span",V1,"never"))]),t[36]||(t[36]=s("div",{class:"detail-label"},"GitHub repos",-1)),s("div",P1,[y(c(e.userInfo?.repositories?.length)+" repositories ",1),s("button",{class:"btn btn-sm ml-2",onClick:t[4]||(t[4]=n=>e.showRepos=!e.showRepos)},c(e.showRepos?"Hide":"Show"),1),s("button",{class:"btn btn-sm ml-1",onClick:t[5]||(t[5]=n=>e.getGitHubRepositories())},[...t[29]||(t[29]=[s("i",{class:"fas fa-sync"},null,-1),y(" Refresh ",-1)])])])]),e.showRepos?(l(),d("div",q1,[t[39]||(t[39]=s("div",{class:"paper-section-eyebrow"},"GitHub repositories",-1)),s("div",M1,[(l(!0),d(Y,null,ne(e.userInfo?.repositories,(n,i)=>(l(),d("div",$1,[s("div",L1,[t[37]||(t[37]=s("span",{class:"type-badge type-repo"},"Repo",-1)),s("div",U1,[s("span",{class:"repo-name",textContent:c(n?.name)},null,8,F1)])]),s("div",z1,[t[38]||(t[38]=s("i",{class:"fas fa-database"},null,-1)),y(" "+c(e.fmt?.humanFileSize(n?.size)),1)])]))),256))])])):m("v-if",!0)])):m("v-if",!0),e.userInfo&&e.userInfo?.isAdmin&&e.user&&e.user?.username==e.userInfo?.username?(l(),d("div",H1,[t[40]||(t[40]=s("h2",null,[s("i",{class:"fas fa-key"}),y(" API tokens")],-1)),s("span",B1,c(e.tokens?.length),1)])):m("v-if",!0),e.userInfo&&e.userInfo?.isAdmin&&e.user&&e.user?.username==e.userInfo?.username?(l(),d("div",G1,[t[46]||(t[46]=s("p",{class:"paper-page-lede"},[y("Personal API tokens for this admin account. Send as "),s("code",null,"Authorization: Bearer <token>"),y(" to authenticate without GitHub OAuth (useful for development).")],-1)),E((l(),d("form",{class:"d-flex",style:{gap:"8px","margin-bottom":"12px"},onSubmit:t[6]||(t[6]=we(n=>e.submitForm(n,()=>{e.createToken()}),["prevent"]))},[E(s("input",j1,null,512),[[o,{state:e.viewState,set:n=>{e.tokenForm.name=n},value:e.tokenForm?.name,form:null,options:{}}]]),t[41]||(t[41]=s("button",{type:"submit",class:"btn btn-primary"},[s("i",{class:"fas fa-plus"}),y(" Generate")],-1))],32)),[[r,e.viewState]]),e.tokenForm?.plaintext?(l(),d("div",W1,[t[42]||(t[42]=s("strong",null,"Copy this token now \u2014 it will not be shown again:",-1)),s("pre",K1,c(e.tokenForm?.plaintext),1),s("button",{class:"btn btn-sm",onClick:t[7]||(t[7]=n=>e.tokenForm.plaintext=null)},"Dismiss")])):m("v-if",!0),e.tokens?.length?(l(),d("div",Y1,[t[44]||(t[44]=s("div",{class:"paper-table-head",role:"row",style:{"grid-template-columns":"1fr 200px 200px 80px"}},[s("div",{role:"columnheader"},"Name"),s("div",{role:"columnheader"},"Created"),s("div",{role:"columnheader"},"Last used"),s("div",{role:"columnheader","aria-label":"Actions"})],-1)),(l(!0),d(Y,null,ne(e.tokens,(n,i)=>(l(),d("div",J1,[s("div",{role:"cell",textContent:c(n?.name)},null,8,Q1),s("div",{role:"cell",textContent:c(e.fmt?.humanTime(n?.createdAt))},null,8,X1),s("div",Z1,[n?.lastUsedAt?(l(),d("span",x1,c(e.fmt?.humanTime(n?.lastUsedAt)),1)):m("v-if",!0),n?.lastUsedAt?m("v-if",!0):(l(),d("span",ew,"never"))]),s("div",tw,[s("button",{class:"btn btn-sm text-danger",title:"Revoke",onClick:a=>e.revokeToken(n)},[...t[43]||(t[43]=[s("i",{class:"fas fa-trash-alt"},null,-1)])],8,sw)])]))),256))])):m("v-if",!0),e.tokens?.length?m("v-if",!0):(l(),d("div",nw,[...t[45]||(t[45]=[s("i",{class:"fas fa-inbox"},null,-1),s("span",null,"No tokens yet.",-1)])]))])):m("v-if",!0),s("div",ow,[t[47]||(t[47]=s("h2",null,[s("i",{class:"fas fa-code-branch"}),y(" Anonymized repositories")],-1)),s("span",rw,c(e.repositories?.length),1)]),s("div",iw,[s("span",aw,c(e.fmt?.number(e.repositories?.length)),1),s("span",{class:O(["summary-pill ok",{active:e.filters?.status?.ready===!1}]),title:"Toggle ready filter",onClick:t[8]||(t[8]=n=>e.filters.status.ready=!e.filters.status.ready)},[t[48]||(t[48]=y("Ready ",-1)),s("span",lw,c(e.fmt?.number(e.statusCountFor("ready"))),1)],2),s("span",{class:O(["summary-pill warn",{active:e.filters?.status?.preparing===!1}]),title:"Toggle preparing filter",onClick:t[9]||(t[9]=n=>e.filters.status.preparing=!e.filters.status.preparing)},[t[49]||(t[49]=y("Preparing ",-1)),s("span",dw,c(e.fmt?.number(e.statusCountFor("preparing"))),1)],2),s("span",{class:O(["summary-pill error",{active:e.filters?.status?.error===!1}]),title:"Toggle errored filter",onClick:t[10]||(t[10]=n=>e.filters.status.error=!e.filters.status.error)},[t[50]||(t[50]=y("Errored ",-1)),s("span",uw,c(e.fmt?.number(e.statusCountFor("error"))),1)],2),s("span",{class:O(["summary-pill",{active:e.filters?.status?.expired===!1}]),title:"Toggle expired filter",onClick:t[11]||(t[11]=n=>e.filters.status.expired=!e.filters.status.expired)},[t[51]||(t[51]=y("Expired ",-1)),s("span",cw,c(e.fmt?.number(e.statusCountFor("expired"))),1)],2),s("span",{class:O(["summary-pill",{active:e.filters?.status?.removed===!1}]),title:"Toggle removed filter",onClick:t[12]||(t[12]=n=>e.filters.status.removed=!e.filters.status.removed)},[t[52]||(t[52]=y("Removed ",-1)),s("span",pw,c(e.fmt?.number(e.statusCountFor("removed"))),1)],2)]),E((l(),d("form",fw,[s("div",mw,[s("div",hw,[E(s("input",vw,null,512),[[o,{state:e.viewState,set:n=>{e.search=n},value:e.search,form:null,options:{}}]])]),t[54]||(t[54]=s("span",{class:"admin-filter-spacer"},null,-1)),s("button",{class:"btn btn-sm",type:"button",title:"Export current view to CSV",onClick:t[13]||(t[13]=n=>e.exportCsv())},[...t[53]||(t[53]=[s("i",{class:"fas fa-file-csv"},null,-1),y(" Export",-1)])])])])),[[r,e.viewState]]),e.selectedCount()>0?(l(),d("div",yw,[s("span",null,[s("strong",null,c(e.selectedCount()),1),t[55]||(t[55]=y(" selected",-1))]),s("button",{class:"btn btn-sm",type:"button",onClick:t[14]||(t[14]=n=>e.bulkRefresh())},[...t[56]||(t[56]=[s("i",{class:"fas fa-sync"},null,-1),y(" Force refresh",-1)])]),s("button",{class:"btn btn-sm text-danger",type:"button",onClick:t[15]||(t[15]=n=>e.bulkRemoveCache())},[...t[57]||(t[57]=[s("i",{class:"fas fa-broom"},null,-1),y(" Remove cache",-1)])]),s("button",{class:"btn btn-sm",type:"button",onClick:t[16]||(t[16]=n=>e.clearSelection())},"Clear")])):m("v-if",!0),s("div",gw,[s("div",bw,[s("div",ww,[s("input",{type:"checkbox","aria-label":"Select all on page",onClick:t[17]||(t[17]=n=>e.selectAllOnPage()),checked:e.allSelected},null,8,kw)]),s("div",_w,[s("span",{class:O(["sortable",{active:e.query?.sort=="source.repositoryName"}]),onClick:t[18]||(t[18]=n=>e.sortBy("source.repositoryName"))},[t[58]||(t[58]=y("Repository ",-1)),s("i",{class:O(["fas",e.sortIcon("source.repositoryName")])},null,2)],2)]),s("div",Ew,[s("span",{class:O(["sortable",{active:e.query?.sort=="status"}]),onClick:t[19]||(t[19]=n=>e.sortBy("status"))},[t[59]||(t[59]=y("Status ",-1)),s("i",{class:O(["fas",e.sortIcon("status")])},null,2)],2)]),s("div",Cw,[s("span",{class:O(["sortable",{active:e.query?.sort=="pageView"}]),onClick:t[20]||(t[20]=n=>e.sortBy("pageView"))},[t[60]||(t[60]=y("Views ",-1)),s("i",{class:O(["fas",e.sortIcon("pageView")])},null,2)],2)]),s("div",Nw,[s("span",{class:O(["sortable",{active:e.query?.sort=="anonymizeDate"}]),onClick:t[21]||(t[21]=n=>e.sortBy("anonymizeDate"))},[t[61]||(t[61]=y("Anonymized ",-1)),s("i",{class:O(["fas",e.sortIcon("anonymizeDate")])},null,2)],2)]),t[62]||(t[62]=s("div",{role:"columnheader","aria-label":"Actions"},null,-1))]),(l(!0),d(Y,null,ne(e.filteredRepositories,(n,i)=>(l(),d("div",{class:O(["paper-table-row",{"repo-inactive":n?.status=="expired"||n?.status=="removed","repo-error":n?.status=="error","row-selected":e.selected[n?.repoId]}]),role:"row"},[s("div",Sw,[E(s("input",Dw,null,512),[[o,{state:e.viewState,set:a=>{e.selected[n.repoId]=a},value:e.selected[n?.repoId],form:null,options:{}}]])]),s("div",Rw,[t[67]||(t[67]=s("span",{class:"type-badge type-repo"},"Repo",-1)),s("div",Tw,[s("a",{class:"repo-name",target:"_blank",textContent:c(n?.repoId),href:e.safeUrl("/r/"+n?.repoId)},null,8,Ow),s("div",Aw,[s("a",{textContent:c(n?.source?.fullName),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/")},null,8,Iw),n?.options?.update?(l(),d("span",Vw,[t[63]||(t[63]=y("\xA0\xB7\xA0",-1)),s("a",{textContent:c(n?.source?.branch),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.branch)},null,8,Pw)])):m("v-if",!0),n?.options?.update?m("v-if",!0):(l(),d("span",qw,[t[64]||(t[64]=y("\xA0\xB7\xA0@",-1)),s("a",{textContent:c(n?.source?.commit?.substring(0,8)),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.commit)},null,8,Mw)])),n?.conference?(l(),d("span",$w,[t[65]||(t[65]=y("\xA0\xB7\xA0",-1)),t[66]||(t[66]=s("i",{class:"fas fa-chalkboard-teacher"},null,-1)),y(" "+c(n?.conference),1)])):m("v-if",!0),s("span",null,"\xA0\xB7\xA0"+c(e.fmt?.humanFileSize(n?.size?.storage)),1),s("span",null,"\xA0\xB7\xA0"+c(e.fmt?.number(n?.options?.terms?.length))+" terms",1)])])]),s("div",Lw,[s("span",Uw,[s("span",{class:O(["status-dot",{"status-removed":n?.status=="removed"||n?.status=="expired","status-ready":n?.status=="ready","status-error":n?.status=="error","status-preparing":n?.status=="preparing"}])},null,2),s("span",{textContent:c(e.fmt?.title(n?.status))},null,8,Fw)]),n?.statusMessage?(l(),d("span",{key:0,class:"status-sub",textContent:c(e.fmt?.statusMsg(n?.statusMessage)),title:n?.statusMessage},null,8,zw)):m("v-if",!0)]),s("div",{class:"cell-views num",role:"cell",textContent:c(e.fmt?.number(n?.pageView||0))},null,8,Hw),s("div",{class:"cell-expires",role:"cell",textContent:c(e.fmt?.humanTime(n?.anonymizeDate))},null,8,Bw),s("div",Gw,[s("div",jw,[t[79]||(t[79]=s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions"},[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"})],-1)),s("div",Ww,[s("a",{class:"dropdown-item",href:e.safeUrl("/anonymize/"+n?.repoId)},[...t[68]||(t[68]=[s("i",{class:"far fa-edit"},null,-1),y(" Edit",-1)])],8,Kw),s("a",{class:"dropdown-item",href:e.safeUrl("/r/"+n?.repoId+"/")},[...t[69]||(t[69]=[s("i",{class:"fa fa-eye"},null,-1),y(" View repo",-1)])],8,Yw),n?.options?.page&&n?.status=="ready"?(l(),d("a",{key:0,class:"dropdown-item",target:"_self",href:e.safeUrl("/w/"+n?.repoId+"/")},[...t[70]||(t[70]=[s("i",{class:"fas fa-globe"},null,-1),y(" View page",-1)])],8,Jw)):m("v-if",!0),s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.fetchGithubInfo(n),["prevent"])},[...t[71]||(t[71]=[s("i",{class:"fab fa-github"},null,-1),y(" Live GitHub info",-1)])],8,Qw),t[77]||(t[77]=s("div",{class:"dropdown-divider"},null,-1)),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.updateRepository(n),["prevent"])},[...t[72]||(t[72]=[s("i",{class:"fas fa-sync"},null,-1),y(" Force update",-1)])],8,Xw),[[B,n?.status=="ready"||n?.status=="error"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.updateRepository(n),["prevent"])},[...t[73]||(t[73]=[s("i",{class:"fas fa-check-circle"},null,-1),y(" Enable",-1)])],8,Zw),[[B,n?.status=="removed"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.showStatusMessage(n),["prevent"])},[...t[74]||(t[74]=[s("i",{class:"fas fa-exclamation-triangle"},null,-1),y(" View status message",-1)])],8,xw),[[B,n?.statusMessage]]),t[78]||(t[78]=s("div",{class:"dropdown-divider"},null,-1)),s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.removeCache(n),["prevent"])},[...t[75]||(t[75]=[s("i",{class:"fas fa-broom"},null,-1),y(" Remove cache",-1)])],8,ek),E(s("a",{class:"dropdown-item text-danger",href:"#",onClick:we(a=>e.removeRepository(n),["prevent"])},[...t[76]||(t[76]=[s("i",{class:"fas fa-trash-alt"},null,-1),y(" Remove",-1)])],8,tk),[[B,n?.status=="ready"]])])])])],2))),256)),e.filteredRepositories?.length==0?(l(),d("div",sk,[...t[80]||(t[80]=[s("i",{class:"fas fa-inbox"},null,-1),s("span",null,"No repositories match the current filters.",-1)])])):m("v-if",!0)])])}var nk={class:"container paper-page admin-page"},ok={class:"admin-summary"},rk={class:"summary-total"},ik={class:"count"},ak={class:"count"},lk={class:"count"},dk={key:0,class:"alert alert-danger",style:{margin:"8px 0"}},uk={class:"w-100 admin-filter-toolbar","aria-label":"Users","accept-charset":"UTF-8"},ck={class:"admin-filter-row"},pk={class:"search-wrap"},fk={type:"search",class:"form-control","aria-label":"Search users",placeholder:"Search username or email\u2026",autocomplete:"off"},mk={key:0,class:"admin-search-hint"},hk={class:"admin-filter-inline"},vk={class:"form-control form-control-sm"},yk={class:"admin-filter-inline","aria-label":"Pagination"},gk=["disabled"],bk={style:{"font-family":"var(--font-mono)","font-size":"12px",color:"var(--ink-muted)"}},wk=["disabled"],kk={key:0,class:"admin-filter-row"},_k={class:"admin-active-chips"},Ek={class:"key"},Ck=["onClick"],Nk={key:1,class:"bulk-bar"},Sk={class:"paper-table w-100",role:"table","aria-label":"Users",style:{"--cols":"28px minmax(280px, 2.4fr) 100px 140px 140px 52px"}},Dk={class:"paper-table-head admin-users-row",role:"row"},Rk={role:"columnheader",style:{width:"28px"}},Tk=["checked"],Ok={role:"columnheader"},Ak={role:"columnheader"},Ik={role:"cell",style:{width:"28px"}},Vk={type:"checkbox","aria-label":"Select user"},Pk={class:"cell-anon",role:"cell"},qk=["src"],Mk={class:"anon-text"},$k=["textContent","href"],Lk={class:"anon-sub"},Uk={key:0},Fk={key:1},zk=["href"],Hk={key:2},Bk={class:"cell-views num",role:"cell"},Gk=["textContent","href"],jk={class:"cell-status",role:"cell"},Wk=["textContent"],Kk={class:"cell-status",role:"cell"},Yk={key:0,class:"type-badge type-repo"},Jk={key:1,class:"empty-dash"},Qk={class:"cell-actions",role:"cell"},Xk={class:"dropdown"},Zk={class:"dropdown-menu dropdown-menu-right"},xk=["href"],e_=["href"],t_=["onClick"],s_=["onClick"],n_={key:0,class:"paper-table-empty"},o_={class:"admin-toolbar",style:{"justify-content":"space-between","border-bottom":"none"}},r_={style:{"font-size":"12px",color:"var(--ink-muted)"}},i_={key:0,class:"pagination-compact"},a_=["disabled"],l_=["max"],d_=["disabled"],u_={class:"admin-filter-inline"},c_={class:"form-control form-control-sm"};function tl(e,t){let o=be("field"),r=be("form");return l(),d("div",nk,[t[43]||(t[43]=ge('<div class="paper-crumbs">Admin \xA0/\xA0 <span class="here">Users</span></div><h1 class="paper-page-title">Users</h1><nav class="admin-nav"><a href="/admin/"><i class="fas fa-tachometer-alt"></i> Overview</a><a href="/admin/repositories"><i class="fas fa-code-branch"></i> Repositories</a><a href="/admin/users" class="active"><i class="fas fa-users"></i> Users</a><a href="/admin/conferences"><i class="fas fa-chalkboard-teacher"></i> Conferences</a><a href="/admin/queues"><i class="fas fa-tasks"></i> Queues</a><a href="/admin/errors"><i class="fas fa-bug"></i> Errors</a></nav>',3)),s("div",ok,[s("span",rk,c(e.total>=0?e.fmt.number(e.total):"\u2026"),1),s("span",{class:O(["summary-pill ok",{active:e.query?.status=="active"}]),onClick:t[0]||(t[0]=n=>{e.query.status=e.query.status=="active"?"":"active",e.query.page=1})},[t[13]||(t[13]=y("Active ",-1)),s("span",ik,c(e.fmt?.number(e.statusCountFor("active"))),1)],2),s("span",{class:O(["summary-pill error",{active:e.query?.status=="banned"}]),onClick:t[1]||(t[1]=n=>{e.query.status=e.query.status=="banned"?"":"banned",e.query.page=1})},[t[14]||(t[14]=y("Banned ",-1)),s("span",ak,c(e.fmt?.number(e.statusCountFor("banned"))),1)],2),s("span",{class:O(["summary-pill",{active:e.query?.status=="removed"}]),onClick:t[2]||(t[2]=n=>{e.query.status=e.query.status=="removed"?"":"removed",e.query.page=1})},[t[15]||(t[15]=y("Removed ",-1)),s("span",lk,c(e.fmt?.number(e.statusCountFor("removed"))),1)],2)]),e.fetchError?(l(),d("div",dk,[t[16]||(t[16]=s("i",{class:"fas fa-exclamation-triangle"},null,-1)),y(" "+c(e.fetchError),1)])):m("v-if",!0),E((l(),d("form",uk,[s("div",ck,[s("div",pk,[E(s("input",fk,null,512),[[o,{state:e.viewState,set:n=>{e.query.search=n},value:e.query?.search,form:null,options:{}}]]),e.query?.search?m("v-if",!0):(l(),d("span",mk,"/"))]),s("span",hk,[t[18]||(t[18]=s("label",null,"Role",-1)),E((l(),d("select",vk,[...t[17]||(t[17]=[s("option",{value:""},"Any",-1),s("option",{value:"admin"},"Admin",-1)])])),[[o,{state:e.viewState,set:n=>{e.query.role=n},value:e.query?.role,form:null,options:{}}]])]),t[22]||(t[22]=s("span",{class:"admin-filter-spacer"},null,-1)),s("button",{class:"btn btn-sm",type:"button",onClick:t[3]||(t[3]=n=>e.exportCsv())},[...t[19]||(t[19]=[s("i",{class:"fas fa-file-csv"},null,-1),y(" Export",-1)])]),s("span",yk,[s("button",{class:"btn btn-sm",type:"button",onClick:t[4]||(t[4]=n=>e.query.page=Math.max(1,e.query.page-1)),disabled:e.query?.page<=1},[...t[20]||(t[20]=[s("i",{class:"fas fa-chevron-left"},null,-1)])],8,gk),s("span",bk,c(e.query?.page)+"/"+c(e.totalPage||1),1),s("button",{class:"btn btn-sm",type:"button",onClick:t[5]||(t[5]=n=>e.query.page=Math.min(e.totalPage,e.query.page+1)),disabled:e.query?.page>=e.totalPage},[...t[21]||(t[21]=[s("i",{class:"fas fa-chevron-right"},null,-1)])],8,wk)])]),e.chips?.length?(l(),d("div",kk,[s("div",_k,[(l(!0),d(Y,null,ne(e.chips,(n,i)=>(l(),d("span",{class:"admin-active-chip",key:n?.key},[s("span",Ek,c(n?.label),1),s("span",null,c(n?.value),1),s("button",{type:"button",onClick:a=>e.clearFilter(n.key)},[...t[23]||(t[23]=[s("i",{class:"fas fa-times"},null,-1)])],8,Ck)]))),128))])])):m("v-if",!0)])),[[r,e.viewState]]),e.selectedCount()>0?(l(),d("div",Nk,[s("span",null,[s("strong",null,c(e.selectedCount()),1),t[24]||(t[24]=y(" selected",-1))]),s("button",{class:"btn btn-sm text-danger",type:"button",onClick:t[6]||(t[6]=n=>e.bulkBan())},[...t[25]||(t[25]=[s("i",{class:"fas fa-ban"},null,-1),y(" Ban",-1)])]),s("button",{class:"btn btn-sm",type:"button",onClick:t[7]||(t[7]=n=>{e.selected={},e.allSelected=!1})},"Clear")])):m("v-if",!0),s("div",Sk,[s("div",Dk,[s("div",Rk,[s("input",{type:"checkbox","aria-label":"Select all on page",onClick:t[8]||(t[8]=n=>e.selectAllOnPage()),checked:e.allSelected},null,8,Tk)]),s("div",Ok,[s("span",{class:O(["sortable",{active:e.query?.sort=="username"}]),onClick:t[9]||(t[9]=n=>e.sortBy("username"))},[t[26]||(t[26]=y("User ",-1)),s("i",{class:O(["fas",e.sortIcon("username")])},null,2)],2)]),t[28]||(t[28]=s("div",{role:"columnheader",class:"num"},"Repos",-1)),s("div",Ak,[s("span",{class:O(["sortable",{active:e.query?.sort=="status"}]),onClick:t[10]||(t[10]=n=>e.sortBy("status"))},[t[27]||(t[27]=y("Status ",-1)),s("i",{class:O(["fas",e.sortIcon("status")])},null,2)],2)]),t[29]||(t[29]=s("div",{role:"columnheader"},"Role",-1)),t[30]||(t[30]=s("div",{role:"columnheader","aria-label":"Actions"},null,-1))]),(l(!0),d(Y,null,ne(e.filteredUsers,(n,i)=>(l(),d("div",{class:O(["paper-table-row admin-users-row",{"row-selected":e.selected[n?.username]}]),role:"row"},[s("div",Ik,[E(s("input",Vk,null,512),[[o,{state:e.viewState,set:a=>{e.selected[n.username]=a},value:e.selected[n?.username],form:null,options:{}}]])]),s("div",Pk,[n?.photo?(l(),d("img",{key:0,width:"28",height:"28",class:"rounded-circle",style:{"flex-shrink":"0"},src:e.safeUrl(n?.photo)},null,8,qk)):m("v-if",!0),s("div",Mk,[s("a",{class:"repo-name",textContent:c(n?.username),href:e.safeUrl("/admin/users/"+n?.username)},null,8,$k),s("div",Lk,[n?.emails[0].email?(l(),d("span",Uk,c(n?.emails[0].email),1)):m("v-if",!0),n?.emails[0].email?(l(),d("span",Fk,"\xA0\xB7\xA0")):m("v-if",!0),s("a",{target:"_blank",href:e.safeUrl("https://github.com/"+n?.username)},[t[31]||(t[31]=s("i",{class:"fab fa-github"},null,-1)),y(" "+c(n?.username),1)],8,zk),n?.dateOfEntry?(l(),d("span",Hk,"\xA0\xB7\xA0Joined "+c(e.fmt?.humanTime(n?.dateOfEntry)),1)):m("v-if",!0)])])]),s("div",Bk,[s("a",{title:"Show this user's repositories",textContent:c(e.fmt?.number(n?.repoCount||0)),href:e.safeUrl("/admin/?owner="+n?.username)},null,8,Gk)]),s("div",jk,[s("span",{class:O(["status-dot",{"status-ready":n?.status=="active","status-removed":n?.status=="removed"||n?.status=="banned"}])},null,2),s("span",{textContent:c(e.fmt?.title(n?.status))},null,8,Wk)]),s("div",Kk,[n?.isAdmin?(l(),d("span",Yk,"Admin")):m("v-if",!0),n?.isAdmin?m("v-if",!0):(l(),d("span",Jk,"\u2014"))]),s("div",Qk,[s("div",Xk,[t[37]||(t[37]=s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions"},[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"})],-1)),s("div",Zk,[s("a",{class:"dropdown-item",href:e.safeUrl("/admin/users/"+n?.username)},[...t[32]||(t[32]=[s("i",{class:"far fa-eye"},null,-1),y(" View details",-1)])],8,xk),s("a",{class:"dropdown-item",href:e.safeUrl("/admin/?owner="+n?.username)},[...t[33]||(t[33]=[s("i",{class:"fas fa-code-branch"},null,-1),y(" View repositories",-1)])],8,e_),t[36]||(t[36]=s("div",{class:"dropdown-divider"},null,-1)),E(s("a",{class:"dropdown-item text-danger",href:"#",onClick:we(a=>e.banUser(n),["prevent"])},[...t[34]||(t[34]=[s("i",{class:"fas fa-ban"},null,-1),y(" Ban",-1)])],8,t_),[[B,n?.status=="active"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.activateUser(n),["prevent"])},[...t[35]||(t[35]=[s("i",{class:"fas fa-check-circle"},null,-1),y(" Activate",-1)])],8,s_),[[B,n?.status=="removed"||n?.status=="banned"]])])])])],2))),256)),e.filteredUsers?.length==0?(l(),d("div",n_,[...t[38]||(t[38]=[s("i",{class:"fas fa-inbox"},null,-1),s("span",null,"No users match the current filters.",-1)])])):m("v-if",!0)]),s("div",o_,[s("span",r_,c(e.fmt?.number(e.total))+" results",1),e.totalPage>1?(l(),d("div",i_,[s("button",{class:"btn btn-sm",onClick:t[11]||(t[11]=n=>e.query.page=Math.max(1,e.query.page-1)),disabled:e.query?.page<=1},[...t[39]||(t[39]=[s("i",{class:"fas fa-chevron-left"},null,-1),y(" Previous",-1)])],8,a_),E(s("input",{type:"number",class:"form-control form-control-sm",min:"1",style:{width:"56px"},max:e.totalPage},null,8,l_),[[o,{state:e.viewState,set:n=>{e.query.page=n},value:e.query?.page,form:null,options:{}}]]),s("span",null,"of "+c(e.totalPage),1),s("button",{class:"btn btn-sm",onClick:t[12]||(t[12]=n=>e.query.page=Math.min(e.totalPage,e.query.page+1)),disabled:e.query?.page>=e.totalPage},[...t[40]||(t[40]=[y("Next ",-1),s("i",{class:"fas fa-chevron-right"},null,-1)])],8,d_)])):m("v-if",!0),s("span",u_,[t[42]||(t[42]=s("label",null,"Per page",-1)),E((l(),d("select",c_,[...t[41]||(t[41]=[s("option",{value:"10"},"10",-1),s("option",{value:"25"},"25",-1),s("option",{value:"50"},"50",-1),s("option",{value:"100"},"100",-1)])])),[[o,{state:e.viewState,set:n=>{e.query.limit=n},value:e.query?.limit,form:null,options:{}}]])])])])}var p_={class:"anonymize-page h-100"},f_={class:"anonymize-landing"},m_={class:"anonymize-landing-inner"},h_={class:"form-group mt-4 mb-2"},v_={class:"source-url-label-row"},y_={key:0,class:"repo-access","aria-label":"GitHub access"},g_={key:0,class:"repo-access-switch",role:"group","aria-label":"Repository connection"},b_=["aria-pressed","disabled"],w_=["aria-pressed","disabled"],k_={key:1,class:"connection-badge"},__={id:"sourceUrl-landing",type:"text",class:"form-control form-control-lg",placeholder:"https://github.com/owner/repository"},E_={key:0,class:"alert alert-info",role:"status"},C_={key:1},N_={key:1,class:"repo-access-details","aria-label":"GitHub access"},S_={class:"repo-access-main"},D_={class:"repo-access-controls"},R_={key:1,class:"connection-link",href:"/connections"},T_={class:"repo-access-note"},O_={key:0},A_={class:"anonymize-workspace"},I_={class:"anonymize-topbar"},V_={class:"anonymize-topbar-inner"},P_={class:"paper-crumbs"},q_={class:"here"},M_={class:"anonymize-topbar-head"},$_={class:"paper-page-title anonymize-topbar-title"},L_={key:0},U_={key:1},F_={class:"anonymize-split"},z_={class:"anonymize-form-col overflow-auto"},H_={class:"form needs-validation paper-settings-main",name:"anonymize",novalidate:""},B_={class:"paper-settings-section"},G_={class:"form-group"},j_={class:"source-url-label-row"},W_={key:0,class:"repo-access","aria-label":"GitHub access"},K_={key:0,class:"repo-access-switch",role:"group","aria-label":"Repository connection"},Y_=["aria-pressed","disabled"],J_=["aria-pressed","disabled"],Q_={key:1,class:"connection-badge"},X_=["disabled"],Z_={class:"invalid-feedback"},x_={class:"invalid-feedback"},e0={class:"invalid-feedback"},t0={class:"invalid-feedback"},s0={key:0,class:"repo-access-details","aria-label":"GitHub access"},n0={class:"repo-access-main"},o0={class:"repo-access-controls"},r0={key:1,class:"connection-link",href:"/connections"},i0={class:"repo-access-note"},a0={key:0},l0={key:1,class:"form-grid-2"},d0={class:"form-group"},u0={class:"input-group"},c0={class:"form-control",id:"branch",name:"branch"},p0=["textContent","value"],f0={class:"input-group-append"},m0={class:"form-group"},h0=["disabled"],v0={class:"invalid-feedback"},y0={class:"invalid-feedback"},g0={class:"form-check"},b0={class:"form-check-input",type:"checkbox",id:"update",name:"update"},w0={class:"paper-settings-section"},k0={class:"form-group"},_0=["disabled"],E0={class:"form-text text-muted"},C0={class:"invalid-feedback"},N0={class:"form-group"},S0=["disabled"],D0={class:"form-text text-muted"},R0={class:"invalid-feedback"},T0={class:"form-group"},O0=["disabled"],A0={class:"form-text text-muted"},I0={class:"invalid-feedback"},V0={class:"form-group"},P0={class:"form-text text-muted"},q0=["href"],M0={class:"invalid-feedback"},$0={class:"form-text text-muted"},L0={class:"paper-settings-section"},U0={class:"form-group"},F0={class:"form-text text-muted"},z0={class:"warning-feedback"},H0={class:"invalid-feedback"},B0={class:"paper-settings-section"},G0={class:"form-check"},j0={class:"form-check-input",type:"checkbox",id:"link",name:"link"},W0={class:"form-check"},K0={class:"form-check-input",type:"checkbox",id:"image",name:"image"},Y0={class:"form-check"},J0={class:"form-check-input",type:"checkbox",id:"pdf",name:"pdf"},Q0={class:"form-check"},X0={class:"form-check-input",type:"checkbox",id:"notebook",name:"notebook"},Z0={class:"form-check"},x0=["disabled"],eE={class:"form-check"},tE={class:"form-check-input",type:"checkbox",id:"title-gist",name:"title-gist"},sE={class:"form-check"},nE={class:"form-check-input",type:"checkbox",id:"content-gist",name:"content-gist"},oE={class:"form-check"},rE={class:"form-check-input",type:"checkbox",id:"comments-gist",name:"comments-gist"},iE={class:"form-check"},aE={class:"form-check-input",type:"checkbox",id:"username-gist",name:"username-gist"},lE={class:"form-check"},dE={class:"form-check-input",type:"checkbox",id:"date-gist",name:"date-gist"},uE={class:"form-check"},cE={class:"form-check-input",type:"checkbox",id:"origin-gist",name:"origin-gist"},pE={class:"form-check"},fE={class:"form-check-input",type:"checkbox",id:"title",name:"title"},mE={class:"form-check"},hE={class:"form-check-input",type:"checkbox",id:"body",name:"body"},vE={class:"form-check"},yE={class:"form-check-input",type:"checkbox",id:"diff",name:"diff"},gE={class:"form-check"},bE={class:"form-check-input",type:"checkbox",id:"comments",name:"comments"},wE={class:"form-check"},kE={class:"form-check-input",type:"checkbox",id:"username",name:"username"},_E={class:"form-check"},EE={class:"form-check-input",type:"checkbox",id:"date",name:"date"},CE={class:"form-check"},NE={class:"form-check-input",type:"checkbox",id:"origin",name:"origin"},SE={class:"paper-settings-section"},DE={class:"form-grid-2"},RE={class:"form-group"},TE={class:"form-control",id:"expiration",name:"expiration"},OE={class:"form-group"},AE=["min","max"],IE={class:"invalid-feedback"},VE={class:"invalid-feedback"},PE={class:"paper-settings-section"},qE={class:"form-group"},ME={style:{position:"relative"}},$E={type:"text",id:"coauthorSearch",class:"form-control",placeholder:"Search GitHub username\u2026",autocomplete:"off"},LE={class:"dropdown-menu show",style:{display:"block","max-height":"220px","overflow-y":"auto",width:"100%"}},UE=["onClick"],FE=["src"],zE=["textContent"],HE=["textContent"],BE={class:"coauthor-list"},GE={class:"coauthor-row d-flex align-items-center",style:{padding:"6px 0",gap:"8px"}},jE=["src"],WE=["textContent","href"],KE=["onClick"],YE={class:"form-text text-muted"},JE=["textContent"],QE={class:"anonymize-submit-bar"},XE={key:0,class:"anonymize-preview-col"},ZE=["innerHTML"],xE={key:1,class:"anonymize-preview-col"},eC={class:"anonymize-preview-body"},tC={class:"d-flex w-100 justify-content-between align-items-center flex-wrap"},sC={class:"pr-title mb-1"},nC={key:0},oC=["textContent"],rC={key:0},iC={key:1},aC={key:2},lC={class:"pr-comments mt-3"},dC={class:"pr-comment"},uC={class:"pr-comment-head"},cC=["textContent"],pC={key:0,class:"pr-comment-date"},fC={key:3},mC={class:"pr-comments"},hC={class:"pr-comment"},vC={class:"pr-comment-head"},yC={key:0,class:"pr-comment-author"},gC=["textContent"],bC=["textContent"],wC={key:0,class:"pr-comment-body"},kC={key:2,class:"anonymize-preview-col"},_C={class:"anonymize-preview-body"},EC={class:"d-flex w-100 justify-content-between align-items-center flex-wrap"},CC={class:"pr-title mb-1"},NC={key:0},SC=["textContent"],DC={key:0},RC={key:1,class:"pr-body shadow-sm p-3 mb-4 rounded",style:{background:"var(--paper-bg-alt)"}},TC={key:2,class:"paper-tabs",role:"tablist"},OC=["textContent"],AC={class:"paper-tab-content"},IC={key:0},VC=["innerHTML"],PC={key:1},qC={class:"pr-comments"},MC={class:"pr-comment"},$C={class:"pr-comment-head"},LC={key:0,class:"pr-comment-author"},UC=["textContent"],FC=["textContent"],zC={key:0,class:"pr-comment-body"};function sl(e,t){let o=et("gist-file"),r=et("markdown"),n=be("field"),i=be("form");return l(),d("div",p_,[m(" ===== STATE 1: No URL \u2014 centered input ===== "),E(s("div",f_,[s("div",m_,[t[22]||(t[22]=s("div",{class:"paper-crumbs"},[y("My work \xA0/\xA0 "),s("span",{class:"here"},"New anonymization")],-1)),t[23]||(t[23]=s("h1",{class:"paper-page-title"},[y("New "),s("em",null,"anonymization")],-1)),t[24]||(t[24]=s("p",{class:"paper-page-lede"}," Paste a GitHub repository, pull-request, or gist URL. We\u2019ll fetch it, strip every trace of identity, and hand you back a stable link. ",-1)),s("div",h_,[s("div",v_,[t[17]||(t[17]=s("label",{class:"paper-field-label",for:"sourceUrl-landing"},"Source URL",-1)),!e.sourceUrl&&e.githubConnections?.appEnabled&&e.githubConnections.appConnected&&e.githubConnections.oauthConnected?(l(),d("aside",y_,[!e.isUpdate&&e.detectedType!=="gist"?(l(),d("div",g_,[s("button",{type:"button","aria-pressed":e.githubConnection==="github-app",disabled:e.githubConnection==="github-app",onClick:t[0]||(t[0]=a=>e.chooseGitHubConnection("github-app"))},[...t[16]||(t[16]=[s("i",{class:"fas fa-shield-alt","aria-hidden":"true"},null,-1),y(),s("span",{class:"sr-only"},"Read-only ",-1),y("GitHub App",-1)])],8,b_),s("button",{type:"button","aria-pressed":e.githubConnection==="oauth",disabled:e.githubConnection==="oauth",onClick:t[1]||(t[1]=a=>e.chooseGitHubConnection("oauth"))},"Legacy OAuth",8,w_)])):m("v-if",!0),e.isUpdate||e.detectedType==="gist"?(l(),d("span",k_,c(e.detectedType!=="gist"&&e.githubConnection==="github-app"?"Read-only GitHub App":"Legacy OAuth"),1)):m("v-if",!0)])):m("v-if",!0)]),E(s("input",__,null,512),[[n,{state:e.viewState,set:a=>{e.sourceUrl=a},value:e.sourceUrl,form:null,options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"},change:()=>{e.urlSelected()}}]])]),t[25]||(t[25]=s("small",{class:"form-text",style:{color:"var(--ink-muted)"}}," Repository, pull request (\u2026/pull/42) and gist (gist.github.com/\u2026) URLs are all accepted. ",-1)),e.detectedType==="gist"&&e.gistOAuthRequired?(l(),d("aside",E_,[t[18]||(t[18]=s("p",null,"Connect GitHub OAuth to access gists. Your account and existing anonymizations stay the same, and your draft will be restored when you return.",-1)),t[19]||(t[19]=s("p",null,"GitHub's legacy OAuth connection includes write access to private repositories.",-1)),e.githubConnections?.oauthEnabled?(l(),d("button",{key:0,type:"button",class:"btn btn-ink",onClick:t[2]||(t[2]=a=>e.connectGistOAuth())},"Connect GitHub OAuth to access gists")):(l(),d("p",C_,"GitHub OAuth is currently unavailable. Please try again later."))])):m("v-if",!0),!e.sourceUrl&&e.githubConnections?.appEnabled&&e.githubConnections.appConnected&&e.githubConnections.oauthConnected?(l(),d("aside",N_,[s("div",S_,[s("div",D_,[e.detectedType!=="gist"&&e.githubConnection!=="oauth"?(l(),d("button",{key:0,type:"button",class:"btn btn-outline-ink",onClick:t[3]||(t[3]=a=>e.grantGitHubAccess())},[...t[20]||(t[20]=[y("Manage access ",-1),s("i",{class:"fas fa-external-link-alt","aria-hidden":"true"},null,-1)])])):m("v-if",!0),e.isUpdate||e.detectedType==="gist"||e.githubConnection==="oauth"?(l(),d("a",R_,c(e.isUpdate?"Change connection":"Manage connections")+" \u2192",1)):m("v-if",!0)])]),s("div",T_,[e.detectedType!=="gist"&&e.githubConnection!=="oauth"?(l(),d("span",O_,"Select repositories on GitHub, then return here.")):m("v-if",!0),t[21]||(t[21]=s("span",null,[s("i",{class:"fas fa-info-circle","aria-hidden":"true"}),y(" Selected content will be published, including content from private repositories.")],-1))])])):m("v-if",!0)])],512),[[B,!e.sourceUrl]]),m(" ===== STATE 2: URL provided \u2014 form (left) + preview (right) ===== "),E(s("div",A_,[s("header",I_,[s("div",V_,[s("div",P_,[t[26]||(t[26]=s("a",{href:"/dashboard"},"My work",-1)),t[27]||(t[27]=y(" \xA0/\xA0 ",-1)),s("span",q_,c(e.isUpdate?"Edit anonymization":"New anonymization"),1)]),s("div",M_,[s("h1",$_,[e.isUpdate?m("v-if",!0):(l(),d("span",L_,[...t[28]||(t[28]=[y("New ",-1),s("em",null,"anonymization",-1)])])),e.isUpdate?(l(),d("span",U_,[...t[29]||(t[29]=[y("Edit ",-1),s("em",null,"anonymization",-1)])])):m("v-if",!0)]),E(s("span",{class:O(["type-badge",{"type-repo":e.detectedType==="repo","type-pr":e.detectedType==="pr","type-gist":e.detectedType==="gist"}])},c(e.detectedType==="repo"?"Repo":e.detectedType==="pr"?"PR":"Gist"),3),[[B,e.detectedType]])])])]),s("div",F_,[m(" Form column (left) "),s("div",z_,[E((l(),d("form",H_,[s("section",B_,[t[39]||(t[39]=s("div",{class:"paper-section-eyebrow"},"Source",-1)),s("div",G_,[s("div",j_,[t[31]||(t[31]=s("label",{class:"paper-field-label",for:"sourceUrl"},"GitHub URL",-1)),e.sourceUrl&&e.githubConnections?.appEnabled&&e.githubConnections.appConnected&&e.githubConnections.oauthConnected?(l(),d("aside",W_,[!e.isUpdate&&e.detectedType!=="gist"?(l(),d("div",K_,[s("button",{type:"button","aria-pressed":e.githubConnection==="github-app",disabled:e.githubConnection==="github-app",onClick:t[4]||(t[4]=a=>e.chooseGitHubConnection("github-app"))},[...t[30]||(t[30]=[s("i",{class:"fas fa-shield-alt","aria-hidden":"true"},null,-1),y(),s("span",{class:"sr-only"},"Read-only ",-1),y("GitHub App",-1)])],8,Y_),s("button",{type:"button","aria-pressed":e.githubConnection==="oauth",disabled:e.githubConnection==="oauth",onClick:t[5]||(t[5]=a=>e.chooseGitHubConnection("oauth"))},"Legacy OAuth",8,J_)])):m("v-if",!0),e.isUpdate||e.detectedType==="gist"?(l(),d("span",Q_,c(e.detectedType!=="gist"&&e.githubConnection==="github-app"?"Read-only GitHub App":"Legacy OAuth"),1)):m("v-if",!0)])):m("v-if",!0)]),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.anonymize?.sourceUrl?.invalid}]),name:"sourceUrl",id:"sourceUrl",disabled:e.isUpdate&&e.detectedType!=="repo",placeholder:"Paste a GitHub repo or pull request URL"},null,10,X_),[[n,{state:e.viewState,set:a=>{e.sourceUrl=a},value:e.sourceUrl,form:"anonymize",options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"},change:()=>{e.urlSelected()}}]]),E(s("div",Z_," Please provide a valid GitHub URL. ",512),[[B,e.anonymize?.sourceUrl?.errors?.github]]),E(s("div",x_," Not accessible. The organization may restrict access. ",512),[[B,e.anonymize?.sourceUrl?.errors?.access]]),E(s("div",e0," Does not exist or is not accessible. ",512),[[B,e.anonymize?.sourceUrl?.errors?.missing]]),E(s("div",t0," Already anonymized. ",512),[[B,e.anonymize?.sourceUrl?.errors?.used]])]),e.sourceUrl&&e.githubConnections?.appEnabled&&e.githubConnections.appConnected&&e.githubConnections.oauthConnected?(l(),d("aside",s0,[s("div",n0,[s("div",o0,[e.detectedType!=="gist"&&e.githubConnection!=="oauth"?(l(),d("button",{key:0,type:"button",class:"btn btn-outline-ink",onClick:t[6]||(t[6]=a=>e.grantGitHubAccess())},[...t[32]||(t[32]=[y("Manage access ",-1),s("i",{class:"fas fa-external-link-alt","aria-hidden":"true"},null,-1)])])):m("v-if",!0),e.isUpdate||e.detectedType==="gist"||e.githubConnection==="oauth"?(l(),d("a",r0,c(e.isUpdate?"Change connection":"Manage connections")+" \u2192",1)):m("v-if",!0)])]),s("div",i0,[e.detectedType!=="gist"&&e.githubConnection!=="oauth"?(l(),d("span",a0,"Select repositories on GitHub, then return here.")):m("v-if",!0),t[33]||(t[33]=s("span",null,[s("i",{class:"fas fa-info-circle","aria-hidden":"true"}),y(" Selected content will be published, including content from private repositories.")],-1))])])):m("v-if",!0),e.detectedType==="repo"?(l(),d("div",l0,[s("div",d0,[t[35]||(t[35]=s("label",{class:"paper-field-label",for:"branch"},"Branch",-1)),s("div",u0,[E((l(),d("select",c0,[(l(!0),d(Y,null,ne(e.branches,(a,u)=>(l(),d("option",{textContent:c(a?.name),value:a?.name},null,8,p0))),256))])),[[n,{state:e.viewState,set:a=>{e.source.branch=a},value:e.source?.branch,form:"anonymize",options:{}}]]),s("div",f0,[s("button",{class:"btn",type:"button",title:"Refresh","data-toggle":"tooltip","data-placement":"bottom",onClick:t[7]||(t[7]=a=>e.getBranches(!0))},[...t[34]||(t[34]=[s("i",{class:"fas fa-sync","aria-hidden":"true"},null,-1)])])])])]),s("div",m0,[t[36]||(t[36]=s("label",{class:"paper-field-label",for:"commit"},"Commit",-1)),E(s("input",{class:O(["form-control",{"is-invalid":e.anonymize?.commit?.invalid}]),id:"commit",disabled:e.options.update,name:"commit",pattern:"[a-fA-Z0-9]{6,}",required:""},null,10,h0),[[n,{state:e.viewState,set:a=>{e.source.commit=a},value:e.source?.commit,form:"anonymize",options:{}}]]),E(s("div",v0," The commit SHA is not valid. ",512),[[B,e.anonymize?.commit?.errors?.pattern||e.anonymize?.commit?.errors?.required]]),E(s("div",y0," This commit no longer exists in the repository. Click refresh to get the latest. ",512),[[B,e.anonymize?.commit?.errors?.exists]])])])):m("v-if",!0),E(s("div",g0,[E(s("input",b0,null,512),[[n,{state:e.viewState,set:a=>{e.options.update=a},value:e.options?.update,form:"anonymize",options:{}}]]),t[37]||(t[37]=s("label",{class:"form-check-label",for:"update"},"Auto-update from GitHub",-1)),t[38]||(t[38]=s("small",{class:"form-text text-muted"},"Follow the branch and pull the latest commit automatically, at most once an hour.",-1))],512),[[B,e.detectedType]])]),E(s("section",w0,[t[50]||(t[50]=s("div",{class:"paper-section-eyebrow"},"Identity",-1)),E(s("div",k0,[t[42]||(t[42]=s("label",{class:"paper-field-label",for:"repoId"},"Anonymized repository ID",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.anonymize?.repoId?.invalid}]),name:"repoId",id:"repoId",disabled:e.isUpdate},null,10,_0),[[n,{state:e.viewState,set:a=>{e.repoId=a},value:e.repoId,form:"anonymize",options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"}}]]),s("small",E0,[t[40]||(t[40]=y("Your share link will be ",-1)),s("code",null,"anonymous.4open.science/r/"+c(e.repoId),1),t[41]||(t[41]=y(".",-1))]),E(s("div",C0,"ID can only contain letters and numbers.",512),[[B,e.anonymize?.repoId?.errors?.format]]),E(s("div",{class:"invalid-feedback"},c(e.repoId)+" is already used.",513),[[B,e.anonymize?.repoId?.errors?.used]])],512),[[B,e.detectedType==="repo"]]),E(s("div",N0,[t[45]||(t[45]=s("label",{class:"paper-field-label",for:"pullRequestId"},"Anonymized pull request ID",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.anonymize?.pullRequestId?.invalid}]),name:"pullRequestId",id:"pullRequestId",disabled:e.isUpdate},null,10,S0),[[n,{state:e.viewState,set:a=>{e.pullRequestId=a},value:e.pullRequestId,form:"anonymize",options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"}}]]),s("small",D0,[t[43]||(t[43]=y("Your share link will be ",-1)),s("code",null,"anonymous.4open.science/pr/"+c(e.pullRequestId),1),t[44]||(t[44]=y(".",-1))]),E(s("div",R0,"ID can only contain letters and numbers.",512),[[B,e.anonymize?.pullRequestId?.errors?.format]]),E(s("div",{class:"invalid-feedback"},c(e.pullRequestId)+" is already used.",513),[[B,e.anonymize?.pullRequestId?.errors?.used]])],512),[[B,e.detectedType==="pr"]]),E(s("div",T0,[t[48]||(t[48]=s("label",{class:"paper-field-label",for:"gistId"},"Anonymized gist ID",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.anonymize?.gistId?.invalid}]),name:"gistId",id:"gistId",disabled:e.isUpdate},null,10,O0),[[n,{state:e.viewState,set:a=>{e.gistId=a},value:e.gistId,form:"anonymize",options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"}}]]),s("small",A0,[t[46]||(t[46]=y("Your share link will be ",-1)),s("code",null,"anonymous.4open.science/gist/"+c(e.gistId),1),t[47]||(t[47]=y(".",-1))]),E(s("div",I0,"ID can only contain letters and numbers.",512),[[B,e.anonymize?.gistId?.errors?.format]]),E(s("div",{class:"invalid-feedback"},c(e.gistId)+" is already used.",513),[[B,e.anonymize?.gistId?.errors?.used]])],512),[[B,e.detectedType==="gist"]]),s("div",V0,[t[49]||(t[49]=s("label",{class:"paper-field-label",for:"conference"},[y("Conference "),s("span",{class:"paper-optional"},"(optional)")],-1)),E(s("input",{class:O(["form-control",{"is-invalid":e.anonymize?.conference?.invalid}]),id:"conference",name:"conference"},null,2),[[n,{state:e.viewState,set:a=>{e.conference=a},value:e.conference,form:"anonymize",options:{debounce:{default:800,blur:0},updateOn:"default blur"}}]]),E(s("small",P0,[s("a",{target:"_blank",href:e.safeUrl(e.conference_data?.url)},c(e.conference_data?.name),9,q0),y(" expires "+c(e.fmt?.date(e.conference_data?.endDate))+". ",1)],512),[[B,e.conference_data]]),E(s("div",M0,"The conference is not activated.",512),[[B,e.anonymize?.conference?.errors?.activated]]),E(s("small",$0,"Link to a conference to apply its shared defaults.",512),[[B,!e.conference_data]])])],512),[[B,e.detectedType]]),E(s("section",L0,[t[58]||(t[58]=s("div",{class:"paper-section-eyebrow"},"Anonymization",-1)),s("div",U0,[t[57]||(t[57]=s("label",{class:"paper-field-label",for:"terms"},"Terms to redact",-1)),E(s("textarea",{class:O(["form-control",{"is-invalid":e.anonymize?.terms?.invalid}]),id:"terms",name:"terms",rows:"4"},null,2),[[n,{state:e.viewState,set:a=>{e.terms=a},value:e.terms,form:"anonymize",options:{debounce:250}}]]),s("small",F0,[t[51]||(t[51]=y("One term per line (regex allowed). Replaced by ",-1)),s("code",null,c(e.site_options?.ANONYMIZATION_MASK)+"-[N]",1),t[52]||(t[52]=y(", or use ",-1)),t[53]||(t[53]=s("code",null,"term=>replacement",-1)),t[54]||(t[54]=y(" to pick your own (e.g. ",-1)),t[55]||(t[55]=s("code",null,"Anonymous=>ABC",-1)),t[56]||(t[56]=y(").",-1))]),E(s("div",z0,"Regex characters detected. Escape them if unintentional.",512),[[B,e.termsRegexWarning]]),E(s("div",H0,"Terms are in an invalid format.",512),[[B,e.anonymize?.terms?.errors?.format]])])],512),[[B,e.detectedType]]),E(s("section",B0,[t[77]||(t[77]=s("div",{class:"paper-section-eyebrow"},"Display",-1)),E(s("div",null,[s("div",G0,[E(s("input",j0,null,512),[[n,{state:e.viewState,set:a=>{e.options.link=a},value:e.options?.link,form:"anonymize",options:{}}]]),t[59]||(t[59]=s("label",{class:"form-check-label",for:"link"},"Keep links",-1))]),s("div",W0,[E(s("input",K0,null,512),[[n,{state:e.viewState,set:a=>{e.options.image=a},value:e.options?.image,form:"anonymize",options:{}}]]),t[60]||(t[60]=s("label",{class:"form-check-label",for:"image"},"Display images",-1))]),s("div",Y0,[E(s("input",J0,null,512),[[n,{state:e.viewState,set:a=>{e.options.pdf=a},value:e.options?.pdf,form:"anonymize",options:{}}]]),t[61]||(t[61]=s("label",{class:"form-check-label",for:"pdf"},"Display PDFs",-1))]),s("div",Q0,[E(s("input",X0,null,512),[[n,{state:e.viewState,set:a=>{e.options.notebook=a},value:e.options?.notebook,form:"anonymize",options:{}}]]),t[62]||(t[62]=s("label",{class:"form-check-label",for:"notebook"},"Display Notebooks",-1))]),s("div",Z0,[E(s("input",{class:"form-check-input",type:"checkbox",id:"page",name:"page",disabled:!e.details?.hasPage||e.details?.pageSource&&e.details?.pageSource?.branch!==e.source?.branch},null,8,x0),[[n,{state:e.viewState,set:a=>{e.options.page=a},value:e.options?.page,form:"anonymize",options:{}}]]),t[63]||(t[63]=s("label",{class:"form-check-label",for:"page"},"GitHub Pages",-1)),E(s("small",{class:"form-text text-muted d-block"},c(e.fmt?.translate("WARNINGS.page_not_enabled_on_repo")),513),[[B,!e.details?.hasPage]]),E(s("small",{class:"form-text text-muted d-block"},c(e.fmt?.translate("WARNINGS.page_branch_mismatch",{pageBranch:e.details?.pageSource?.branch,selectedBranch:e.source?.branch})),513),[[B,e.details?.hasPage&&e.details?.pageSource&&e.details?.pageSource?.branch!==e.source?.branch]])])],512),[[B,e.detectedType==="repo"]]),E(s("div",null,[s("div",eE,[E(s("input",tE,null,512),[[n,{state:e.viewState,set:a=>{e.options.title=a},value:e.options?.title,form:"anonymize",options:{}}]]),t[64]||(t[64]=s("label",{class:"form-check-label",for:"title-gist"},"Gist description",-1))]),s("div",sE,[E(s("input",nE,null,512),[[n,{state:e.viewState,set:a=>{e.options.content=a},value:e.options?.content,form:"anonymize",options:{}}]]),t[65]||(t[65]=s("label",{class:"form-check-label",for:"content-gist"},"File contents",-1))]),s("div",oE,[E(s("input",rE,null,512),[[n,{state:e.viewState,set:a=>{e.options.comments=a},value:e.options?.comments,form:"anonymize",options:{}}]]),t[66]||(t[66]=s("label",{class:"form-check-label",for:"comments-gist"},"Comments",-1))]),s("div",iE,[E(s("input",aE,null,512),[[n,{state:e.viewState,set:a=>{e.options.username=a},value:e.options?.username,form:"anonymize",options:{}}]]),t[67]||(t[67]=s("label",{class:"form-check-label",for:"username-gist"},"Usernames",-1))]),s("div",lE,[E(s("input",dE,null,512),[[n,{state:e.viewState,set:a=>{e.options.date=a},value:e.options?.date,form:"anonymize",options:{}}]]),t[68]||(t[68]=s("label",{class:"form-check-label",for:"date-gist"},"Dates",-1))]),s("div",uE,[E(s("input",cE,null,512),[[n,{state:e.viewState,set:a=>{e.options.origin=a},value:e.options?.origin,form:"anonymize",options:{}}]]),t[69]||(t[69]=s("label",{class:"form-check-label",for:"origin-gist"},"Source gist ID",-1))])],512),[[B,e.detectedType==="gist"]]),E(s("div",null,[s("div",pE,[E(s("input",fE,null,512),[[n,{state:e.viewState,set:a=>{e.options.title=a},value:e.options?.title,form:"anonymize",options:{}}]]),t[70]||(t[70]=s("label",{class:"form-check-label",for:"title"},"PR title",-1))]),s("div",mE,[E(s("input",hE,null,512),[[n,{state:e.viewState,set:a=>{e.options.body=a},value:e.options?.body,form:"anonymize",options:{}}]]),t[71]||(t[71]=s("label",{class:"form-check-label",for:"body"},"PR body",-1))]),s("div",vE,[E(s("input",yE,null,512),[[n,{state:e.viewState,set:a=>{e.options.diff=a},value:e.options?.diff,form:"anonymize",options:{}}]]),t[72]||(t[72]=s("label",{class:"form-check-label",for:"diff"},"Diff",-1))]),s("div",gE,[E(s("input",bE,null,512),[[n,{state:e.viewState,set:a=>{e.options.comments=a},value:e.options?.comments,form:"anonymize",options:{}}]]),t[73]||(t[73]=s("label",{class:"form-check-label",for:"comments"},"Comments",-1))]),s("div",wE,[E(s("input",kE,null,512),[[n,{state:e.viewState,set:a=>{e.options.username=a},value:e.options?.username,form:"anonymize",options:{}}]]),t[74]||(t[74]=s("label",{class:"form-check-label",for:"username"},"Usernames",-1))]),s("div",_E,[E(s("input",EE,null,512),[[n,{state:e.viewState,set:a=>{e.options.date=a},value:e.options?.date,form:"anonymize",options:{}}]]),t[75]||(t[75]=s("label",{class:"form-check-label",for:"date"},"Dates",-1))]),s("div",CE,[E(s("input",NE,null,512),[[n,{state:e.viewState,set:a=>{e.options.origin=a},value:e.options?.origin,form:"anonymize",options:{}}]]),t[76]||(t[76]=s("label",{class:"form-check-label",for:"origin"},"Project name",-1))])],512),[[B,e.detectedType==="pr"]])],512),[[B,e.detectedType]]),E(s("section",SE,[t[81]||(t[81]=s("div",{class:"paper-section-eyebrow"},"Expiration",-1)),s("div",DE,[s("div",RE,[t[79]||(t[79]=s("label",{class:"paper-field-label",for:"expiration"},"Strategy",-1)),E((l(),d("select",TE,[...t[78]||(t[78]=[s("option",{value:"redirect"},"Redirect to GitHub when expired",-1),s("option",{value:"remove",selected:""},"Remove when expired",-1)])])),[[n,{state:e.viewState,set:a=>{e.options.expirationMode=a},value:e.options?.expirationMode,form:"anonymize",options:{}}]])]),s("div",OE,[t[80]||(t[80]=s("label",{class:"paper-field-label",for:"expirationDate"},"Expiration date",-1)),E(s("input",{class:O(["form-control",{"is-invalid":e.anonymize?.expirationDate?.invalid}]),type:"date",name:"expirationDate",id:"expirationDate",required:"",min:e.minExpirationDate,max:e.maxExpirationDate},null,10,AE),[[n,{state:e.viewState,set:a=>{e.options.expirationDate=a},value:e.options?.expirationDate,form:"anonymize",options:{}}]]),E(s("div",IE,"Pick a date in the future.",512),[[B,e.anonymize?.expirationDate?.errors?.min]]),E(s("div",{class:"invalid-feedback"},"Pick a date on or before "+c(e.fmt?.date(e.maxExpirationDate))+".",513),[[B,e.anonymize?.expirationDate?.errors?.max]]),E(s("div",VE,"Enter a valid expiration date.",512),[[B,e.anonymize?.expirationDate?.errors?.required||e.anonymize?.expirationDate?.errors?.date]])])]),E(s("small",{class:"form-text text-muted"},"After "+c(e.fmt?.date(e.options?.expirationDate))+", the content will be removed.",513),[[B,e.options?.expirationMode=="remove"&&e.options?.expirationDate]]),E(s("small",{class:"form-text text-muted"},"After "+c(e.fmt?.date(e.options?.expirationDate))+", visitors will be redirected to GitHub.",513),[[B,e.options?.expirationMode=="redirect"&&e.options?.expirationDate]])],512),[[B,e.detectedType]]),E(s("section",PE,[t[85]||(t[85]=s("div",{class:"paper-section-eyebrow"},"Co-authors",-1)),t[86]||(t[86]=s("p",{class:"form-text text-muted",style:{"margin-bottom":"8px"}}," Co-authors can view and edit these settings. They cannot delete the anonymization or manage co-authors. ",-1)),E(s("div",qE,[t[82]||(t[82]=s("label",{class:"paper-field-label",for:"coauthorSearch"},"Add a GitHub user",-1)),s("div",ME,[E(s("input",$E,null,512),[[n,{state:e.viewState,set:a=>{e.coauthorSearch=a},value:e.coauthorSearch,form:"anonymize",options:{debounce:300},change:()=>{e.searchCoauthors()}}]]),E(s("div",LE,[(l(!0),d(Y,null,ne(e.coauthorResults,(a,u)=>(l(),d("a",{href:"#",class:"dropdown-item d-flex align-items-center",onClick:we(f=>e.addCoauthor(a,f),["prevent"])},[s("img",{alt:"",style:{width:"22px",height:"22px","border-radius":"50%","margin-right":"8px"},src:e.safeUrl(a?.photo)},null,8,FE),s("span",{textContent:c(a?.username)},null,8,zE)],8,UE))),256))],512),[[B,e.coauthorResults?.length>0]])]),E(s("small",{class:"form-text text-muted",textContent:c(e.coauthorError)},null,8,HE),[[B,e.coauthorError]])],512),[[B,e.role==="owner"||e.role==="admin"]]),s("div",BE,[(l(!0),d(Y,null,ne(e.coauthors,(a,u)=>(l(),d("div",GE,[a?.photo?(l(),d("img",{key:0,alt:"",style:{width:"24px",height:"24px","border-radius":"50%"},src:e.safeUrl(a?.photo)},null,8,jE)):m("v-if",!0),s("a",{target:"_blank",textContent:c(a?.username),href:e.safeUrl("https://github.com/"+a?.username)},null,8,WE),t[84]||(t[84]=s("span",{class:"type-badge type-coauthor"},"Co-author",-1)),E(s("button",{type:"button",class:"btn btn-sm",style:{"margin-left":"auto"},title:"Remove co-author",onClick:f=>e.removeCoauthor(a)},[...t[83]||(t[83]=[s("i",{class:"fas fa-times"},null,-1)])],8,KE),[[B,e.role==="owner"||e.role==="admin"]])]))),256)),E(s("div",YE," No co-authors yet. ",512),[[B,!e.coauthors||e.coauthors?.length===0]])])],512),[[B,e.isUpdate&&e.detectedType==="repo"]]),e.error?(l(),d("div",{key:0,class:"alert alert-danger",role:"alert",textContent:c(e.error)},null,8,JE)):m("v-if",!0),E(s("div",QE,[e.detectedType==="repo"&&!e.isUpdate?(l(),d("button",{key:0,type:"submit",class:"btn btn-ink",onClick:t[8]||(t[8]=we(a=>e.submitForm(a,()=>{e.anonymizeRepo(a)}),["prevent"]))},[...t[87]||(t[87]=[s("i",{class:"fas fa-user-secret mr-1"},null,-1),y(" Anonymize Repository ",-1)])])):m("v-if",!0),e.detectedType==="repo"&&e.isUpdate?(l(),d("button",{key:1,type:"submit",class:"btn btn-ink",onClick:t[9]||(t[9]=we(a=>e.submitForm(a,()=>{e.anonymizeRepo(a)}),["prevent"]))},[...t[88]||(t[88]=[s("i",{class:"fas fa-save mr-1"},null,-1),y(" Update Repository ",-1)])])):m("v-if",!0),e.detectedType==="pr"&&!e.isUpdate?(l(),d("button",{key:2,type:"submit",class:"btn btn-ink",onClick:t[10]||(t[10]=we(a=>e.submitForm(a,()=>{e.anonymizePullRequest(a)}),["prevent"]))},[...t[89]||(t[89]=[s("i",{class:"fas fa-user-secret mr-1"},null,-1),y(" Anonymize Pull Request ",-1)])])):m("v-if",!0),e.detectedType==="pr"&&e.isUpdate?(l(),d("button",{key:3,type:"submit",class:"btn btn-ink",onClick:t[11]||(t[11]=we(a=>e.submitForm(a,()=>{e.anonymizePullRequest(a)}),["prevent"]))},[...t[90]||(t[90]=[s("i",{class:"fas fa-save mr-1"},null,-1),y(" Update Pull Request ",-1)])])):m("v-if",!0),e.detectedType==="gist"&&!e.isUpdate?(l(),d("button",{key:4,type:"submit",class:"btn btn-ink",onClick:t[12]||(t[12]=we(a=>e.submitForm(a,()=>{e.anonymizeGist(a)}),["prevent"]))},[...t[91]||(t[91]=[s("i",{class:"fas fa-user-secret mr-1"},null,-1),y(" Anonymize Gist ",-1)])])):m("v-if",!0),e.detectedType==="gist"&&e.isUpdate?(l(),d("button",{key:5,type:"submit",class:"btn btn-ink",onClick:t[13]||(t[13]=we(a=>e.submitForm(a,()=>{e.anonymizeGist(a)}),["prevent"]))},[...t[92]||(t[92]=[s("i",{class:"fas fa-save mr-1"},null,-1),y(" Update Gist ",-1)])])):m("v-if",!0)],512),[[B,e.detectedType]])])),[[i,e.viewState]])]),m(" Preview column (right) "),e.detectedType==="repo"&&e.html_readme?(l(),d("div",XE,[t[93]||(t[93]=s("div",{class:"anonymize-preview-head"},[s("span",{class:"paper-eyebrow"},"Live preview"),s("span",{class:"anonymize-preview-sub"},"README with redactions applied")],-1)),s("div",{class:"anonymize-preview-body markdown-body body",innerHTML:e.sanitize(e.html_readme)},null,8,ZE)])):m("v-if",!0),e.detectedType==="gist"&&e.details?(l(),d("div",xE,[t[97]||(t[97]=s("div",{class:"anonymize-preview-head"},[s("span",{class:"paper-eyebrow"},"Live preview"),s("span",{class:"anonymize-preview-sub"},"Gist with redactions applied")],-1)),s("div",eC,[s("div",tC,[s("h2",sC,[e.options?.title?(l(),d("span",nC,c(e.anonymizeGistContent(e.details?.gist?.description)||"Untitled gist"),1)):m("v-if",!0),s("span",{class:O(["badge",{"badge-success":e.details?.gist?.isPublic,"badge-secondary":!e.details?.gist?.isPublic}])},c(e.details?.gist?.isPublic?"public":"secret"),3)]),e.options?.date?(l(),d("small",{key:0,textContent:c(e.fmt?.date(e.details?.gist?.updatedDate))},null,8,oC)):m("v-if",!0)]),e.options?.origin?(l(),d("small",rC,"Gist ID: "+c(e.details?.source?.gistId),1)):m("v-if",!0),e.options?.username&&e.details?.gist?.ownerLogin?(l(),d("small",iC,"By @"+c(e.anonymizeGistContent(e.details?.gist?.ownerLogin)),1)):m("v-if",!0),e.options?.content&&e.previewGistFiles?.length?(l(),d("div",aC,[s("ul",lC,[(l(!0),d(Y,null,ne(e.previewGistFiles,(a,u)=>(l(),d("li",dC,[s("div",uC,[s("strong",{textContent:c(a?.filename)},null,8,cC),a?.language?(l(),d("span",pC,c(a?.language),1)):m("v-if",!0)]),De(o,{file:a,terms:e.terms,options:e.options},null,8,["file","terms","options"])]))),256))])])):m("v-if",!0),e.options?.comments&&e.details?.gist?.comments&&e.details?.gist?.comments?.length?(l(),d("div",fC,[t[96]||(t[96]=s("h3",{class:"paper-section-eyebrow mt-3"},"Comments",-1)),s("ul",mC,[(l(!0),d(Y,null,ne(e.details?.gist?.comments,(a,u)=>(l(),d("li",hC,[s("div",vC,[e.options?.username?(l(),d("span",yC,[t[94]||(t[94]=s("i",{class:"far fa-user"},null,-1)),t[95]||(t[95]=y(" @",-1)),s("span",{textContent:c(e.anonymizeGistContent(a?.author))},null,8,gC)])):m("v-if",!0),e.options?.date?(l(),d("span",{key:1,class:"pr-comment-date",textContent:c(e.fmt?.date(a?.updatedDate))},null,8,bC)):m("v-if",!0)]),e.options?.body?(l(),d("div",wC,[De(r,{content:e.anonymizeGistContent(a?.body),options:e.options,terms:e.terms},null,8,["content","options","terms"])])):m("v-if",!0)]))),256))])])):m("v-if",!0)])])):m("v-if",!0),e.detectedType==="pr"&&e.details?(l(),d("div",kC,[t[102]||(t[102]=s("div",{class:"anonymize-preview-head"},[s("span",{class:"paper-eyebrow"},"Live preview"),s("span",{class:"anonymize-preview-sub"},"Pull request with redactions applied")],-1)),s("div",_C,[s("div",EC,[s("h2",CC,[e.options?.title?(l(),d("span",NC,c(e.anonymizePrContent(e.details?.pullRequest?.title)),1)):m("v-if",!0),s("span",{class:O(["badge",{"badge-success":e.details?.pullRequest?.merged,"badge-warning":e.details?.pullRequest?.state=="open","badge-danger":e.details?.pullRequest?.state=="closed"&&!e.details?.pullRequest?.merged}])},c(e.fmt?.title(e.details?.pullRequest?.merged?"merged":e.details?.pullRequest?.state)),3)]),e.options?.date?(l(),d("small",{key:0,textContent:c(e.fmt?.date(e.details?.pullRequest?.updatedDate))},null,8,SC)):m("v-if",!0)]),e.options?.origin?(l(),d("small",DC,"Pull Request on "+c(e.details?.pullRequest?.baseRepositoryFullName),1)):m("v-if",!0),e.options?.body?(l(),d("div",RC,[De(r,{content:e.anonymizePrContent(e.details?.pullRequest?.body),options:e.options,terms:e.terms},null,8,["content","options","terms"])])):m("v-if",!0),e.options?.diff||e.options?.comments?(l(),d("nav",TC,[e.options?.diff?(l(),d("button",{key:0,class:O(["paper-tab",{active:e.prTabState?.active=="diff"}]),type:"button",role:"tab",onClick:t[14]||(t[14]=a=>e.prTabState.active="diff")},[...t[98]||(t[98]=[s("i",{class:"fas fa-code"},null,-1),y(" Diff ",-1)])],2)):m("v-if",!0),e.options?.comments?(l(),d("button",{key:1,class:O(["paper-tab",{active:e.prTabState?.active=="comments"}]),type:"button",role:"tab",onClick:t[15]||(t[15]=a=>e.prTabState.active="comments")},[t[99]||(t[99]=s("i",{class:"far fa-comment-dots"},null,-1)),s("span",{textContent:c(e.fmt.plural(e.details?.pullRequest?.comments?.length,{0:"No comments",one:"1 comment",other:"{} comments"}))},null,8,OC)],2)):m("v-if",!0)])):m("v-if",!0),s("div",AC,[e.options?.diff&&e.prTabState?.active=="diff"?(l(),d("div",IC,[s("div",{class:"pr-diff",innerHTML:e.sanitize(e.fmt?.diff(e.anonymizePrContent(e.details?.pullRequest?.diff)))},null,8,VC)])):m("v-if",!0),e.options?.comments&&e.prTabState?.active=="comments"?(l(),d("div",PC,[s("ul",qC,[(l(!0),d(Y,null,ne(e.details?.pullRequest?.comments,(a,u)=>(l(),d("li",MC,[s("div",$C,[e.options?.username?(l(),d("span",LC,[t[100]||(t[100]=s("i",{class:"far fa-user"},null,-1)),t[101]||(t[101]=y(" @",-1)),s("span",{textContent:c(e.anonymizePrContent(a?.author))},null,8,UC)])):m("v-if",!0),e.options?.date?(l(),d("span",{key:1,class:"pr-comment-date",textContent:c(e.fmt?.date(a?.updatedDate))},null,8,FC)):m("v-if",!0)]),e.options?.body?(l(),d("div",zC,[De(r,{content:e.anonymizePrContent(a?.body),options:e.options,terms:e.terms},null,8,["content","options","terms"])])):m("v-if",!0)]))),256))])])):m("v-if",!0)])])])):m("v-if",!0)])],512),[[B,e.sourceUrl]])])}var HC={class:"container-fluid h-100 anonymize-page"},BC={class:"row h-100 flex-column flex-md-row"},GC={class:"col-md sidePanel shadow overflow-auto anonymize-form-col"},jC={class:"form-group"},WC={class:"form-group"},KC={class:"form-check"},YC={class:"form-check-input",type:"checkbox",id:"update",name:"update"},JC={class:"form-group"},QC={class:"form-text text-muted"},XC=["href"],ZC={class:"invalid-feedback"},xC={class:"form-text text-muted"},eN={class:"form-group"},tN={id:"idHelp",class:"form-text text-muted"},sN={class:"invalid-feedback"},nN={class:"form-group"},oN={class:"invalid-feedback"},rN={class:"form-group"},iN={class:"form-control",id:"expiration",name:"expiration"},aN={class:"form-group",id:"expiration-date-form"},lN={class:"form-control",type:"date",name:"expirationDate",id:"expirationDate"},dN={class:"accordion mb-3",id:"options"},uN={class:"card"},cN={id:"collapseOne",class:"collapse show","aria-labelledby":"headingOne","data-parent":"#options"},pN={class:"card-body"},fN={class:"form-group mb-0"},mN={class:"form-check"},hN={class:"form-check-input",type:"checkbox",id:"link",name:"link"},vN={class:"form-check"},yN={class:"form-check-input",type:"checkbox",id:"image",name:"image"},gN={class:"form-check"},bN={class:"form-check-input",type:"checkbox",id:"date",name:"date"},wN={class:"form-check"},kN={class:"form-check-input",type:"checkbox",id:"username",name:"username"},_N={class:"form-check"},EN={class:"form-check-input",type:"checkbox",id:"comments",name:"comments"},CN={class:"form-check"},NN={class:"form-check-input",type:"checkbox",id:"diff",name:"diff"},SN={class:"form-check"},DN={class:"form-check-input",type:"checkbox",id:"origin",name:"origin"},RN={class:"form-check"},TN={class:"form-check-input",type:"checkbox",id:"title",name:"title"},ON={class:"form-check"},AN={class:"form-check-input",type:"checkbox",id:"body",name:"body"},IN=["textContent"],VN={class:"anonymize-submit-bar"},PN={key:0,class:"col-md-8 p-2 overflow-auto anonymize-preview-col"},qN={class:"d-flex w-100 justify-content-between align-items-center flex-wrap"},MN={class:"pr-title mb-1"},$N={key:0},LN=["textContent"],UN={key:0},FN={key:1,class:"pr-body shadow-sm p-3 mb-4 rounded",style:{background:"var(--sidebar-bg-color)"}},zN={class:"nav nav-tabs",id:"myTab",role:"tablist"},HN={key:0,class:"nav-item",role:"presentation"},BN={key:1,class:"nav-item",role:"presentation"},GN=["textContent"],jN={class:"tab-content",id:"pills-tabContent"},WN={class:"tab-pane show active",id:"pills-diff",role:"tabpanel","aria-labelledby":"pills-diff-tab"},KN={key:0,class:"pr-diff shadow-sm p-3 mb-4 rounded",style:{background:"var(--sidebar-bg-color)"}},YN={style:{"overflow-x":"auto"}},JN=["innerHTML"],QN={key:0,class:"pr-comments list-group"},XN={class:"pr-comment list-group-item"},ZN={class:"d-flex w-100 justify-content-between flex-wrap"},xN={key:0,class:"mb-1"},eS=["textContent"],tS={class:"mb-1"};function nl(e,t){let o=et("markdown"),r=be("field"),n=be("form");return l(),d("div",HC,[s("div",BC,[s("div",GC,[s("div",{class:O(["p-0 py-2 m-auto",{card:!e.pullRequestUrl,container:e.pullRequestUrl}])},[E((l(),d("form",{class:O(["form needs-validation",{"card-body":!e.pullRequestUrl}]),name:"anonymizeForm",novalidate:""},[t[30]||(t[30]=ge('<div class="paper-crumbs">Anonymize \xA0/\xA0 <span class="here">Pull request</span></div><h1 class="paper-page-title">Anonymize a <em>pull request</em></h1><p class="paper-page-lede"> Fill in the details \u2014 it only takes a minute. </p><div class="paper-section-eyebrow anonymize-section-title"><i class="fab fa-github"></i> Source </div>',4)),m(" pullRequestUrl "),s("div",jC,[t[2]||(t[2]=s("label",{for:"pullRequestUrl"},"URL of your pull request",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.anonymize?.pullRequestUrl?.invalid}]),name:"pullRequestUrl",id:"pullRequestUrl",placeholder:"https://github.com/owner/repo/pull/123"},null,2),[[r,{state:e.viewState,set:i=>{e.pullRequestUrl=i},value:e.pullRequestUrl,form:"anonymizeForm",options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"},change:()=>{e.pullRequestSelected()}}]]),E(s("div",{class:"invalid-feedback"},c(e.pullRequestUrl)+" is not accessible. Some organizations are restricting the access to the repositories. ",513),[[B,e.anonymize?.pullRequestUrl?.errors?.access]]),E(s("div",{class:"invalid-feedback"},c(e.pullRequestUrl)+" does not exist or is not accessible ",513),[[B,e.anonymize?.pullRequestUrl?.errors?.missing]]),E(s("div",{class:"invalid-feedback"},c(e.pullRequestUrl)+" is already anonymized ",513),[[B,e.anonymize?.pullRequestUrl?.errors?.used]])]),E(s("div",null,[s("div",WC,[s("div",KC,[E(s("input",YC,null,512),[[r,{state:e.viewState,set:i=>{e.options.update=i},value:e.options?.update,form:"anonymizeForm",options:{}}]]),t[3]||(t[3]=s("label",{class:"form-check-label",for:"update"},"Auto update",-1)),t[4]||(t[4]=s("small",{id:"updateHelp",class:"form-text text-muted"},"Automatically update the anonymized pull request with the latest updates. The pull request is updated once per day maximum.",-1))])]),t[26]||(t[26]=s("div",{class:"paper-section-eyebrow anonymize-section-title"},[s("i",{class:"fas fa-chalkboard-teacher"}),y(" Conference ID ")],-1)),m(" Conference "),s("div",JC,[t[5]||(t[5]=s("label",{for:"conference"},[y("Conference ID "),s("span",{class:"text-muted"},"(Optional)")],-1)),E(s("input",{class:O(["form-control",{"is-invalid":e.anonymize?.conference?.invalid}]),id:"conference",name:"conference"},null,2),[[r,{state:e.viewState,set:i=>{e.conference=i},value:e.conference,form:"anonymizeForm",options:{debounce:{default:800,blur:0},updateOn:"default blur"}}]]),E(s("small",QC,[s("a",{target:"_target",href:e.safeUrl(e.conference_data?.url)},c(e.conference_data?.name),9,XC),y(" will expire on "+c(e.fmt?.date(e.conference_data?.endDate))+".",1)],512),[[B,e.conference_data]]),E(s("div",ZC," The conference is not activated. ",512),[[B,e.anonymize?.conference?.errors?.activated]]),E(s("small",xC," Use the Conference ID that your conference provided you. This will update automatically the anonymization options based on the conference preferences. ",512),[[B,!e.conference_data]])]),t[27]||(t[27]=s("div",{class:"paper-section-eyebrow anonymize-section-title"},[s("i",{class:"fas fa-shield-alt"}),y(" Anonymization Options ")],-1)),m(" Pull Request ID "),s("div",eN,[t[6]||(t[6]=s("label",{for:"pullRequestId"},"Anonymized pull request id",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.anonymize?.pullRequestId?.invalid}]),name:"pullRequestId",id:"pullRequestId"},null,2),[[r,{state:e.viewState,set:i=>{e.pullRequestId=i},value:e.pullRequestId,form:"anonymizeForm",options:{debounce:{default:1e3,blur:0,click:0},updateOn:"default blur click"}}]]),s("small",tN,"Id used in the url: https://anonymous.4open.science/r/"+c(e.pullRequestId),1),E(s("div",sN," Repository id can only contain letters and numbers ",512),[[B,e.anonymize?.pullRequestId?.errors?.format]]),E(s("div",{class:"invalid-feedback"},c(e.pullRequestId)+" is already used ",513),[[B,e.anonymize?.pullRequestId?.errors?.used]])]),m(" Terms "),s("div",nN,[t[7]||(t[7]=s("label",{for:"terms"},"Terms to anonymize",-1)),E(s("textarea",{class:O(["form-control",{"is-invalid":e.anonymize?.terms?.invalid}]),id:"terms",name:"terms",rows:"3"},null,2),[[r,{state:e.viewState,set:i=>{e.terms=i},value:e.terms,form:"anonymizeForm",options:{debounce:250}}]]),t[8]||(t[8]=s("small",{id:"termsHelp",class:"form-text text-muted"},"One term per line. Each term will be replaced by XXX.",-1)),E(s("div",oN," Terms are in an invalid format ",512),[[B,e.anonymize?.terms?.errors?.format]])]),s("div",rN,[t[10]||(t[10]=s("label",{for:"expiration"},"Expiration strategy",-1)),E((l(),d("select",iN,[...t[9]||(t[9]=[s("option",{value:"never",selected:""},"Never expire",-1),s("option",{value:"redirect"}," Redirect to GitHub when expired ",-1),s("option",{value:"remove"},"Remove when expired",-1)])])),[[r,{state:e.viewState,set:i=>{e.options.expirationMode=i},value:e.options?.expirationMode,form:"anonymizeForm",options:{}}]]),t[11]||(t[11]=s("small",{class:"form-text text-muted"},"Define the expiration strategy for the anonymized repository.",-1))]),E(s("div",aN,[t[12]||(t[12]=s("label",{for:"expirationDate"},"Expiration date of the anonymized repository",-1)),E(s("input",lN,null,512),[[r,{state:e.viewState,set:i=>{e.options.expirationDate=i},value:e.options?.expirationDate,form:"anonymizeForm",options:{}}]]),E(s("small",{class:"form-text text-muted"},"After "+c(e.fmt?.date(e.options?.expirationDate))+", the repository will be removed and the visitor will not be able to see the content of the repository.",513),[[B,e.options?.expirationMode=="remove"]]),E(s("small",{class:"form-text text-muted"},"After "+c(e.fmt?.date(e.options?.expirationDate))+", the visitors of the anonymized repository will be redirected to "+c(e.pullRequestUrl)+".",513),[[B,e.options?.expirationMode=="redirect"]])],512),[[B,e.options?.expirationMode!="never"]]),s("div",dN,[s("div",uN,[t[25]||(t[25]=s("div",{class:"card-header",id:"headingOne"},[s("h2",{class:"mb-0"},[s("button",{class:"btn btn-block text-left",type:"button","data-toggle":"collapse","data-target":"#collapseOne","aria-expanded":"true","aria-controls":"collapseOne"},[s("i",{class:"fas fa-cog mr-1"}),y(" Advanced options ")])])],-1)),s("div",cN,[s("div",pN,[s("div",fN,[s("div",mN,[E(s("input",hN,null,512),[[r,{state:e.viewState,set:i=>{e.options.link=i},value:e.options?.link,form:"anonymizeForm",options:{}}]]),t[13]||(t[13]=s("label",{class:"form-check-label",for:"link"},"Keep links",-1)),t[14]||(t[14]=s("small",{class:"form-text text-muted"},"Keep or remove all the links.",-1))]),s("div",vN,[E(s("input",yN,null,512),[[r,{state:e.viewState,set:i=>{e.options.image=i},value:e.options?.image,form:"anonymizeForm",options:{}}]]),t[15]||(t[15]=s("label",{class:"form-check-label",for:"image"},"Display images",-1)),t[16]||(t[16]=s("small",{class:"form-text text-muted"},"Images are not anonymized",-1))]),s("div",gN,[E(s("input",bN,null,512),[[r,{state:e.viewState,set:i=>{e.options.date=i},value:e.options?.date,form:"anonymizeForm",options:{}}]]),t[17]||(t[17]=s("label",{class:"form-check-label",for:"date"},"Display dates",-1)),t[18]||(t[18]=s("small",{class:"form-text text-muted"},"Display the date of the Pull Request and the date of the comments.",-1))]),s("div",wN,[E(s("input",kN,null,512),[[r,{state:e.viewState,set:i=>{e.options.username=i},value:e.options?.username,form:"anonymizeForm",options:{}}]]),t[19]||(t[19]=s("label",{class:"form-check-label",for:"username"},"Display username",-1))]),s("div",_N,[E(s("input",EN,null,512),[[r,{state:e.viewState,set:i=>{e.options.comments=i},value:e.options?.comments,form:"anonymizeForm",options:{}}]]),t[20]||(t[20]=s("label",{class:"form-check-label",for:"comments"},"Display comments",-1))]),s("div",CN,[E(s("input",NN,null,512),[[r,{state:e.viewState,set:i=>{e.options.diff=i},value:e.options?.diff,form:"anonymizeForm",options:{}}]]),t[21]||(t[21]=s("label",{class:"form-check-label",for:"diff"},"Display diff",-1))]),s("div",SN,[E(s("input",DN,null,512),[[r,{state:e.viewState,set:i=>{e.options.origin=i},value:e.options?.origin,form:"anonymizeForm",options:{}}]]),t[22]||(t[22]=s("label",{class:"form-check-label",for:"origin"},"Display the project name",-1))]),s("div",RN,[E(s("input",TN,null,512),[[r,{state:e.viewState,set:i=>{e.options.title=i},value:e.options?.title,form:"anonymizeForm",options:{}}]]),t[23]||(t[23]=s("label",{class:"form-check-label",for:"title"},"Display the PR title",-1))]),s("div",ON,[E(s("input",AN,null,512),[[r,{state:e.viewState,set:i=>{e.options.body=i},value:e.options?.body,form:"anonymizeForm",options:{}}]]),t[24]||(t[24]=s("label",{class:"form-check-label",for:"body"},"Display the PR body and comment bodies",-1))])])])])])])],512),[[B,e.pullRequestUrl]]),e.error?(l(),d("div",{key:0,class:"alert alert-danger",role:"alert",textContent:c(e.error)},null,8,IN)):m("v-if",!0),E(s("div",VN,[e.isUpdate?m("v-if",!0):(l(),d("button",{key:0,id:"submit",type:"submit",class:"btn btn-ink btn-block",onClick:t[0]||(t[0]=we(i=>e.submitForm(i,()=>{e.anonymizePullRequest(i)}),["prevent"]))},[...t[28]||(t[28]=[s("i",{class:"fas fa-user-secret mr-1"},null,-1),y(" Anonymize ",-1)])])),e.isUpdate?(l(),d("button",{key:1,id:"submit",type:"submit",class:"btn btn-ink btn-block",onClick:t[1]||(t[1]=we(i=>e.submitForm(i,()=>{e.updatePullRequest(i)}),["prevent"]))},[...t[29]||(t[29]=[s("i",{class:"fas fa-save mr-1"},null,-1),y(" Update ",-1)])])):m("v-if",!0)],512),[[B,e.pullRequestUrl]])],2)),[[n,e.viewState]])],2)]),e.details?(l(),d("div",PN,[s("div",qN,[s("h2",MN,[e.options?.title?(l(),d("span",$N,c(e.anonymize(e.details?.pullRequest?.title)),1)):m("v-if",!0),s("span",{class:O(["badge",{"badge-success":e.details?.pullRequest?.merged,"badge-warning":e.details?.pullRequest?.state=="open","badge-danger":e.details?.pullRequest?.state=="closed"&&!e.details?.pullRequest?.merged}])},c(e.fmt?.title(e.details?.pullRequest?.merged?"merged":e.details?.pullRequest?.state)),3)]),e.options?.date?(l(),d("small",{key:0,textContent:c(e.fmt?.date(e.details?.pullRequest?.updatedDate))},null,8,LN)):m("v-if",!0)]),e.options?.origin?(l(),d("small",UN,"Pull Request on "+c(e.details?.pullRequest?.baseRepositoryFullName),1)):m("v-if",!0),e.options?.body?(l(),d("div",FN,[De(o,{content:e.anonymize(e.details?.pullRequest?.body),options:e.options,terms:e.terms},null,8,["content","options","terms"])])):m("v-if",!0),s("ul",zN,[e.options?.diff?(l(),d("li",HN,[...t[31]||(t[31]=[s("button",{class:"nav-link active",id:"pills-diff-tab","data-toggle":"pill","data-target":"#pills-diff",type:"button",role:"tab","aria-controls":"pills-diff","aria-selected":"true"}," Diff ",-1)])])):m("v-if",!0),e.options?.comments?(l(),d("li",BN,[s("button",{class:O(["nav-link",{active:!e.options?.diff}]),id:"pills-comments-tab","data-toggle":"pill","data-target":"#pills-comments",type:"button",role:"tab","aria-controls":"pills-comments","aria-selected":"false"},[s("span",{textContent:c(e.fmt.plural(e.details?.pullRequest?.comments?.length,{0:"No comment",one:"One Comment",other:"{} Comments"}))},null,8,GN)],2)])):m("v-if",!0)]),s("div",jN,[s("div",WN,[e.options?.diff?(l(),d("div",KN,[s("pre",YN,[s("code",{innerHTML:e.sanitize(e.fmt?.diff(e.anonymize(e.details?.pullRequest?.diff)))},null,8,JN)])])):m("v-if",!0)]),s("div",{class:O(["tab-pane",{"show active":!e.options?.diff}]),id:"pills-comments",role:"tabpanel","aria-labelledby":"pills-comments-tab"},[e.options?.comments?(l(),d("ul",QN,[(l(!0),d(Y,null,ne(e.details?.pullRequest?.comments,(i,a)=>(l(),d("li",XN,[s("div",ZN,[e.options?.username?(l(),d("h5",xN," @"+c(e.anonymize(i?.author)),1)):m("v-if",!0),e.options?.date?(l(),d("small",{key:1,textContent:c(e.fmt?.date(i?.updatedDate))},null,8,eS)):m("v-if",!0)]),s("p",tS,[e.options?.body?(l(),ks(o,{key:0,class:"pr-comment-body",content:e.anonymize(i?.body),options:e.options,terms:e.terms},null,8,["content","options","terms"])):m("v-if",!0)])]))),256))])):m("v-if",!0)],2)])])):m("v-if",!0)])])}var sS={class:"container paper-page"},nS={class:"paper-settings-main claim-form"},oS={class:"form-group"},rS={class:"invalid-feedback"},iS={class:"form-group"};function ol(e,t){let o=be("field"),r=be("form");return l(),d("div",sS,[t[6]||(t[6]=ge('<div class="paper-crumbs"><a href="/dashboard">My work</a> \xA0/\xA0 <span class="here">Claim</span></div><h1 class="paper-page-title">Claim an <em>anonymization</em></h1><p class="paper-page-lede"> Take ownership of an existing anonymized repository so it appears on your dashboard. </p>',3)),s("div",nS,[t[5]||(t[5]=s("p",{class:"paper-section-copy"},"Use this when an anonymization was created by a co-author or from another account. You must have access to the GitHub repository it was made from.",-1)),E((l(),d("form",{class:"form needs-validation",name:"claimForm",novalidate:"",onSubmit:t[0]||(t[0]=we(n=>e.submitForm(n,()=>{e.claim()}),["prevent"]))},[s("div",oS,[t[1]||(t[1]=s("label",{class:"paper-field-label",for:"repoUrl"},"GitHub repository URL",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.claimForm?.repoUrl?.invalid&&(e.claimForm?.repoUrl?.touched||e.claimForm?.submitted)}]),name:"repoUrl",id:"repoUrl",required:""},null,2),[[o,{state:e.viewState,set:n=>{e.repoUrl=n},value:e.repoUrl,form:"claimForm",options:{}}]]),E(s("div",rS," No anonymization matches this repository and ID. Check both values and that you can access the repository on GitHub. ",512),[[B,e.claimForm?.repoUrl?.errors?.not_found]])]),s("div",iS,[t[2]||(t[2]=s("label",{class:"paper-field-label",for:"repoId"},"Anonymized repository ID",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.claimForm?.repoId?.invalid&&(e.claimForm?.repoId?.touched||e.claimForm?.submitted)}]),name:"repoId",id:"repoId",required:""},null,2),[[o,{state:e.viewState,set:n=>{e.repoId=n},value:e.repoId,form:"claimForm",options:{}}]]),t[3]||(t[3]=s("small",{id:"idHelp",class:"form-text text-muted"},[y("The ID is the last part of the anonymized URL: "),s("code",null,"anonymous.4open.science/r/<ID>"),y(".")],-1))]),t[4]||(t[4]=s("button",{id:"submit",type:"submit",class:"btn btn-ink"}," Claim anonymization ",-1))],32)),[[r,e.viewState]])])])}var aS={class:"container page paper-page"},lS={class:"paper-crumbs"},dS={class:"here"},uS={class:"d-flex align-items-end flex-wrap",style:{gap:"12px","justify-content":"space-between"}},cS=["textContent"],pS={key:0,class:"paper-page-lede"},fS=["textContent","href"],mS={class:"d-flex align-items-center flex-wrap",style:{gap:"10px"}},hS=["textContent"],vS=["href"],yS={class:"paper-meta-rule"},gS=["textContent"],bS=["textContent"],wS={key:0},kS={class:"search-wrap"},_S={type:"search",id:"search",class:"form-control","aria-label":"Search repositories",placeholder:"Search by ID or source repository\u2026",autocomplete:"off"},ES={class:"dashboard-filter-controls"},CS={class:"dropdown"},NS={class:"btn dropdown-toggle",type:"button",id:"dropdownSort","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},SS={class:"filter-btn-value"},DS={class:"dropdown-menu","aria-labelledby":"dropdownSort"},RS={class:"form-check dropdown-item"},TS={class:"form-check-input",type:"radio",name:"sort",id:"anonymizeDate",value:"-anonymizeDate"},OS={class:"form-check dropdown-item"},AS={class:"form-check-input",type:"radio",name:"sort",id:"sortID",value:"repoId"},IS={class:"form-check dropdown-item"},VS={class:"form-check-input",type:"radio",name:"sort",id:"sortStatus",value:"-status"},PS={class:"form-check dropdown-item"},qS={class:"form-check-input",type:"radio",name:"sort",id:"sortViews",value:"-pageView"},MS={class:"dropdown"},$S={class:"btn dropdown-toggle",type:"button",id:"dropdownStatus","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},LS={key:0,class:"filter-btn-value"},US={key:1,class:"filter-btn-value"},FS={class:"dropdown-menu","aria-labelledby":"dropdownStatus"},zS={class:"form-check dropdown-item"},HS=["id"],BS=["for"],GS={class:"dashboard-meta"},jS={class:"dashboard-count"},WS={key:0},KS={key:0},YS={key:1},JS={key:1},QS={key:0,class:"filter-chip"},XS=["onClick","aria-label"],ZS={class:"paper-table paper-table-repos w-100",role:"table","aria-label":"Repositories"},xS={class:"cell-anon",role:"cell"},e2={class:"anon-text"},t2=["textContent","href"],s2={class:"anon-sub"},n2={class:"anon-source"},o2=["textContent","href"],r2={key:0},i2=["textContent","href"],a2={key:1},l2=["href"],d2={class:"cell-status",role:"cell"},u2={class:"status-line"},c2=["textContent"],p2={key:0,class:"status-sub"},f2=["textContent"],m2={class:"cell-expires",role:"cell"},h2={key:0,class:"expires-never"},v2=["textContent"],y2={key:2,class:"expires-past"},g2={key:0},b2={key:3,class:"empty-dash","aria-label":"Not applicable"},w2={class:"cell-actions",role:"cell"},k2={class:"dropdown"},_2=["aria-label"],E2={class:"dropdown-menu dropdown-menu-right"},C2=["href"],N2=["href"],S2={key:0,class:"paper-table-empty"},D2={key:0},R2={key:1},T2={key:2,class:"paper-table-empty-actions"};function rl(e,t){let o=be("field"),r=be("form");return l(),d("div",aS,[s("div",null,[s("div",lS,[t[2]||(t[2]=s("a",{href:"/dashboard"},"My work",-1)),t[3]||(t[3]=y(" \xA0/\xA0 ",-1)),t[4]||(t[4]=s("a",{href:"/conferences"},"Conferences",-1)),t[5]||(t[5]=y(" \xA0/\xA0 ",-1)),s("span",dS,c(e.conference?.conferenceID),1)]),s("div",uS,[s("div",null,[s("h1",{class:"paper-page-title",textContent:c(e.conference?.name)},null,8,cS),e.conference?.url?(l(),d("p",pS,[s("a",{target:"_blank",rel:"noopener",textContent:c(e.conference?.url),href:e.safeUrl(e.conference?.url)},null,8,fS)])):m("v-if",!0)]),s("div",mS,[s("span",{class:O(["status-pill",{"status-pill-ready":e.conference?.status=="ready","status-pill-removed":e.conference?.status=="removed"||e.conference?.status=="expired"}])},[s("span",{class:O(["status-dot","status-"+e.conference?.status]),"aria-hidden":"true"},null,2),s("span",{textContent:c(e.fmt?.statusLabel(e.conference?.status))},null,8,hS)],2),s("a",{class:"btn btn-outline-ink",href:e.safeUrl("/conference/"+e.conference?.conferenceID+"/edit")},[...t[6]||(t[6]=[s("i",{class:"far fa-edit mr-1","aria-hidden":"true"},null,-1),y(" Edit conference",-1)])],8,vS)])]),s("div",yS,[s("span",null,[t[7]||(t[7]=y("ID ",-1)),s("b",{class:"commit-hash",textContent:c(e.conference?.conferenceID)},null,8,gS)]),s("span",null,[t[8]||(t[8]=y("Review window ",-1)),s("b",null,c(e.fmt?.date(e.conference?.startDate,"mediumDate"))+" \u2013 "+c(e.fmt?.date(e.conference?.endDate,"mediumDate")),1)]),s("span",null,[t[9]||(t[9]=y("Repositories ",-1)),s("b",null,c(e.fmt?.number(e.conference?.repositories?.length)),1)]),s("span",null,[t[10]||(t[10]=y("Plan ",-1)),s("b",{textContent:c(e.conference?.plan?.name||e.conference?.plan?.planID||"Free")},null,8,bS)]),e.conference?.price?(l(),d("span",wS,[t[11]||(t[11]=y("Cost so far ",-1)),s("b",null,c(e.fmt?.number(e.conference?.price,2))+" \u20AC",1)])):m("v-if",!0)]),t[29]||(t[29]=s("div",{class:"paper-section-eyebrow"},"Repositories",-1)),E((l(),d("form",{class:"w-100 dashboard-filter-row","aria-label":"Filter repositories","accept-charset":"UTF-8",onSubmit:t[0]||(t[0]=we(n=>e.submitForm(n,()=>{n.preventDefault()}),["prevent"]))},[s("div",kS,[E(s("input",_S,null,512),[[o,{state:e.viewState,set:n=>{e.search=n},value:e.search,form:null,options:{}}]])]),s("div",ES,[s("div",CS,[s("button",NS,[t[12]||(t[12]=s("span",{class:"filter-btn-label"},"Sort",-1)),s("span",SS,c({"-anonymizeDate":"Anonymize date",repoId:"ID","-status":"Status","-pageView":"Views"}[e.orderBy]||"Custom"),1)]),s("div",DS,[t[17]||(t[17]=s("h6",{class:"dropdown-header"},"Order by",-1)),s("div",RS,[E(s("input",TS,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[13]||(t[13]=s("label",{class:"form-check-label",for:"anonymizeDate"},"Anonymize date",-1))]),s("div",OS,[E(s("input",AS,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[14]||(t[14]=s("label",{class:"form-check-label",for:"sortID"},"ID",-1))]),s("div",IS,[E(s("input",VS,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[15]||(t[15]=s("label",{class:"form-check-label",for:"sortStatus"},"Status",-1))]),s("div",PS,[E(s("input",qS,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[16]||(t[16]=s("label",{class:"form-check-label",for:"sortViews"},"Views",-1))])])]),s("div",MS,[s("button",$S,[t[18]||(t[18]=s("span",{class:"filter-btn-label"},"Status",-1)),e.filters?.status?.ready&&e.filters?.status?.expired&&e.filters?.status?.removed?(l(),d("span",LS,"All")):m("v-if",!0),e.filters?.status?.ready&&e.filters?.status?.expired&&e.filters?.status?.removed?m("v-if",!0):(l(),d("span",US,c((e.filters?.status?.ready?0:1)+(e.filters?.status?.expired?0:1)+(e.filters?.status?.removed?0:1))+" hidden ",1))]),s("div",FS,[t[19]||(t[19]=s("h6",{class:"dropdown-header"},"Show statuses",-1)),(l(!0),d(Y,null,ne(e.statusLabels,(n,i,a)=>(l(),d("div",zS,[E(s("input",{class:"form-check-input",type:"checkbox",id:"status-"+i},null,8,HS),[[o,{state:e.viewState,set:u=>{e.filters.status[i]=u},value:e.filters?.status[i],form:null,options:{}}]]),s("label",{class:"form-check-label",for:"status-"+i},c(n),9,BS)]))),256))])])])],32)),[[r,e.viewState]]),s("div",GS,[s("span",jS,[e.filteredRepositories?.length===e.conference?.repositories?.length?(l(),d("span",WS,[y(c(e.fmt?.number(e.conference?.repositories?.length))+" repositor",1),e.conference?.repositories?.length===1?(l(),d("span",KS,"y")):m("v-if",!0),e.conference?.repositories?.length!==1?(l(),d("span",YS,"ies")):m("v-if",!0)])):m("v-if",!0),e.filteredRepositories?.length!==e.conference?.repositories?.length?(l(),d("span",JS,c(e.fmt?.number(e.filteredRepositories?.length))+" of "+c(e.fmt?.number(e.conference?.repositories?.length))+" shown",1)):m("v-if",!0)]),(l(!0),d(Y,null,ne(e.filters?.status,(n,i,a)=>(l(),d(Y,null,[n===!1?(l(),d("span",QS,[y(" Hiding "+c(e.statusLabels[i])+" ",1),s("button",{type:"button",class:"filter-chip-close",onClick:u=>{e.filters.status[i]=!0},"aria-label":"Show "+e.statusLabels[i]+" again"},"\xD7",8,XS)])):m("v-if",!0)],64))),256))]),s("div",ZS,[t[28]||(t[28]=s("div",{class:"paper-table-head",role:"row"},[s("div",{role:"columnheader"},"Repository"),s("div",{role:"columnheader"},"Status"),s("div",{role:"columnheader",class:"num"},"Views"),s("div",{role:"columnheader"},"Expires"),s("div",{role:"columnheader"},[s("span",{class:"sr-only"},"Actions")])],-1)),(l(!0),d(Y,null,ne(e.filteredRepositories,(n,i)=>(l(),d("div",{class:O(["paper-table-row",{"repo-inactive":n?.status=="expired"||n?.status=="removed","repo-error":n?.status=="error"}]),role:"row",key:n?.repoId},[s("div",xS,[t[22]||(t[22]=s("span",{class:"type-badge type-repo"},"Repo",-1)),s("div",e2,[s("a",{class:"repo-name",textContent:c(n?.repoId),href:e.safeUrl("/r/"+n?.repoId+"/")},null,8,t2),s("div",s2,[s("span",n2,[s("a",{target:"_blank",rel:"noopener",textContent:c(n?.source?.fullName),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/")},null,8,o2),n?.options?.update&&n?.source?.branch?(l(),d("span",r2,[t[20]||(t[20]=y(" \xB7 ",-1)),s("a",{target:"_blank",rel:"noopener",textContent:c(n?.source?.branch),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.branch)},null,8,i2)])):m("v-if",!0),n?.source?.commit?(l(),d("span",a2,[t[21]||(t[21]=y(" \xB7 ",-1)),s("a",{class:"commit-hash",target:"_blank",rel:"noopener",href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.commit)},"@"+c(n?.source?.commit?.substring(0,8)),9,l2)])):m("v-if",!0)])])])]),s("div",d2,[s("div",u2,[s("span",{class:O(["status-dot","status-"+(n?.status=="error"?"error":n?.status=="ready"?"ready":n?.status=="expired"||n?.status=="removed"?n?.status:"progress")]),"aria-hidden":"true"},null,2),s("span",{class:"status-word",textContent:c(e.fmt?.statusLabel(n?.status))},null,8,c2)]),n?.anonymizeDate?(l(),d("div",p2,"anonymized "+c(e.fmt?.humanTime(n?.anonymizeDate)),1)):m("v-if",!0)]),s("div",{class:"cell-views num",role:"cell",textContent:c(e.fmt?.number(n?.pageView))},null,8,f2),s("div",m2,[n?.status=="ready"&&(n?.options?.expirationMode==="never"||!n?.options?.expirationDate)?(l(),d("span",h2,"Never")):m("v-if",!0),n?.status=="ready"&&n?.options?.expirationMode!=="never"&&n?.options?.expirationDate?(l(),d("span",{key:1,textContent:c(e.fmt?.humanTime(n?.options?.expirationDate))},null,8,v2)):m("v-if",!0),n?.status=="expired"?(l(),d("span",y2,[t[23]||(t[23]=y("Expired",-1)),n?.options?.expirationDate?(l(),d("span",g2,c(e.fmt?.humanTime(n?.options?.expirationDate)),1)):m("v-if",!0)])):m("v-if",!0),n?.status!="ready"&&n?.status!="expired"?(l(),d("span",b2,"\u2014")):m("v-if",!0)]),s("div",w2,[s("div",k2,[s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions for "+n?.repoId},[...t[24]||(t[24]=[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"},null,-1)])],8,_2),s("div",E2,[s("a",{class:"dropdown-item",href:e.safeUrl("/r/"+n?.repoId+"/")},[...t[25]||(t[25]=[s("i",{class:"fa fa-eye","aria-hidden":"true"},null,-1),y(" View ",-1)])],8,C2),s("a",{class:"dropdown-item",href:e.safeUrl("/anonymize/"+n?.repoId)},[...t[26]||(t[26]=[s("i",{class:"far fa-edit","aria-hidden":"true"},null,-1),y(" Edit ",-1)])],8,N2)])])])],2))),128)),e.filteredRepositories?.length==0?(l(),d("div",S2,[t[27]||(t[27]=s("i",{class:"fas fa-inbox","aria-hidden":"true"},null,-1)),e.conference?.repositories?.length?m("v-if",!0):(l(),d("span",D2,"No repository has been submitted to this conference yet.")),e.conference?.repositories?.length?(l(),d("span",R2,"Nothing matches the current filters.")):m("v-if",!0),e.conference?.repositories?.length?(l(),d("div",T2,[s("button",{type:"button",class:"btn btn-outline-ink",onClick:t[1]||(t[1]=n=>{e.search="",e.filters.status.ready=!0,e.filters.status.expired=!0,e.filters.status.removed=!0})},"Clear filters")])):m("v-if",!0)])):m("v-if",!0)])])])}var O2={class:"container page paper-page"},A2={class:"row"},I2={class:"w-100"},V2={class:"search-wrap"},P2={type:"search",id:"search",class:"form-control","aria-label":"Search conferences",placeholder:"Search by name or ID\u2026",autocomplete:"off"},q2={class:"dashboard-filter-controls"},M2={class:"dropdown"},$2={class:"btn dropdown-toggle",type:"button",id:"dropdownSort","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},L2={class:"filter-btn-value"},U2={class:"dropdown-menu","aria-labelledby":"dropdownSort"},F2={class:"form-check dropdown-item"},z2={class:"form-check-input",type:"radio",name:"sort",id:"sortName",value:"name"},H2={class:"form-check dropdown-item"},B2={class:"form-check-input",type:"radio",name:"sort",id:"sortID",value:"conferenceID"},G2={class:"form-check dropdown-item"},j2={class:"form-check-input",type:"radio",name:"sort",id:"sortStatus",value:"-status"},W2={class:"dropdown"},K2={class:"btn dropdown-toggle",type:"button",id:"dropdownStatus","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},Y2={key:0,class:"filter-btn-value"},J2={key:1,class:"filter-btn-value"},Q2={class:"dropdown-menu","aria-labelledby":"dropdownStatus"},X2={class:"form-check dropdown-item"},Z2=["id"],x2=["for"],eD={class:"dashboard-meta"},tD={class:"dashboard-count"},sD={key:0},nD={key:0},oD={key:1},rD={key:0,class:"filter-chip"},iD=["onClick","aria-label"],aD={class:"paper-table paper-table-conferences w-100",role:"table","aria-label":"Conferences"},lD={class:"cell-anon",role:"cell"},dD={class:"anon-text"},uD=["textContent","href"],cD={class:"anon-sub"},pD={class:"anon-source"},fD=["textContent"],mD={key:0},hD=["textContent","href"],vD={class:"cell-status",role:"cell"},yD={class:"status-line"},gD=["textContent"],bD=["textContent"],wD={class:"cell-expires",role:"cell"},kD={key:0},_D={key:1,class:"empty-dash","aria-label":"No review window"},ED={class:"cell-actions",role:"cell"},CD={class:"dropdown"},ND=["aria-label"],SD={class:"dropdown-menu dropdown-menu-right"},DD=["href"],RD=["href"],TD={key:0},OD=["onClick"],AD={key:0,class:"paper-table-empty"},ID={key:0},VD={key:1},PD={class:"paper-table-empty-actions"},qD={key:1,href:"/conference/new",class:"btn btn-ink"};function il(e,t){let o=be("field"),r=be("form");return l(),d("div",O2,[s("div",A2,[s("div",I2,[t[9]||(t[9]=ge('<div class="paper-crumbs"><a href="/dashboard">My work</a> \xA0/\xA0 <span class="here">Conferences</span></div><div class="d-flex align-items-end justify-content-between flex-wrap" style="gap:12px;"><div><h1 class="paper-page-title">Your <em>conferences</em></h1><p class="paper-page-lede">Group anonymizations by venue, give chairs a shared dashboard, and set one expiry for every submission.</p></div><a href="/conference/new" class="btn btn-ink"><i class="fa fa-plus-circle mr-1" aria-hidden="true"></i> New conference </a></div>',2)),E((l(),d("form",{class:"w-100 dashboard-filter-row","aria-label":"Filter conferences","accept-charset":"UTF-8",onSubmit:t[0]||(t[0]=we(n=>e.submitForm(n,()=>{n.preventDefault()}),["prevent"]))},[s("div",V2,[E(s("input",P2,null,512),[[o,{state:e.viewState,set:n=>{e.search=n},value:e.search,form:null,options:{}}]])]),s("div",q2,[s("div",M2,[s("button",$2,[t[2]||(t[2]=s("span",{class:"filter-btn-label"},"Sort",-1)),s("span",L2,c({name:"Name",conferenceID:"ID","-status":"Status"}[e.orderBy]||"Custom"),1)]),s("div",U2,[t[6]||(t[6]=s("h6",{class:"dropdown-header"},"Order by",-1)),s("div",F2,[E(s("input",z2,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[3]||(t[3]=s("label",{class:"form-check-label",for:"sortName"},"Name",-1))]),s("div",H2,[E(s("input",B2,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[4]||(t[4]=s("label",{class:"form-check-label",for:"sortID"},"ID",-1))]),s("div",G2,[E(s("input",j2,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[5]||(t[5]=s("label",{class:"form-check-label",for:"sortStatus"},"Status",-1))])])]),s("div",W2,[s("button",K2,[t[7]||(t[7]=s("span",{class:"filter-btn-label"},"Status",-1)),e.filters?.status?.ready&&e.filters?.status?.expired&&e.filters?.status?.removed?(l(),d("span",Y2,"All")):m("v-if",!0),e.filters?.status?.ready&&e.filters?.status?.expired&&e.filters?.status?.removed?m("v-if",!0):(l(),d("span",J2,c((e.filters?.status?.ready?0:1)+(e.filters?.status?.expired?0:1)+(e.filters?.status?.removed?0:1))+" hidden ",1))]),s("div",Q2,[t[8]||(t[8]=s("h6",{class:"dropdown-header"},"Show statuses",-1)),(l(!0),d(Y,null,ne(e.statusLabels,(n,i,a)=>(l(),d("div",X2,[E(s("input",{class:"form-check-input",type:"checkbox",id:"status-"+i},null,8,Z2),[[o,{state:e.viewState,set:u=>{e.filters.status[i]=u},value:e.filters?.status[i],form:null,options:{}}]]),s("label",{class:"form-check-label",for:"status-"+i},c(n),9,x2)]))),256))])])])],32)),[[r,e.viewState]]),s("div",eD,[s("span",tD,[e.filteredConferences?.length===e.conferences?.length?(l(),d("span",sD,[y(c(e.fmt?.number(e.conferences?.length))+" conference",1),e.conferences?.length!==1?(l(),d("span",nD,"s")):m("v-if",!0)])):m("v-if",!0),e.filteredConferences?.length!==e.conferences?.length?(l(),d("span",oD,c(e.fmt?.number(e.filteredConferences?.length))+" of "+c(e.fmt?.number(e.conferences?.length))+" shown",1)):m("v-if",!0)]),(l(!0),d(Y,null,ne(e.filters?.status,(n,i,a)=>(l(),d(Y,null,[n===!1?(l(),d("span",rD,[y(" Hiding "+c(e.statusLabels[i])+" ",1),s("button",{type:"button",class:"filter-chip-close",onClick:u=>{e.filters.status[i]=!0},"aria-label":"Show "+e.statusLabels[i]+" again"},"\xD7",8,iD)])):m("v-if",!0)],64))),256))])]),s("div",aD,[t[20]||(t[20]=s("div",{class:"paper-table-head",role:"row"},[s("div",{role:"columnheader"},"Conference"),s("div",{role:"columnheader"},"Status"),s("div",{role:"columnheader",class:"num"},"Repos"),s("div",{role:"columnheader"},"Review window"),s("div",{role:"columnheader"},[s("span",{class:"sr-only"},"Actions")])],-1)),(l(!0),d(Y,null,ne(e.filteredConferences,(n,i)=>(l(),d("div",{class:O(["paper-table-row row-clickable",{"repo-inactive":n?.status=="expired"||n?.status=="removed"}]),role:"row",key:n?.conferenceID},[s("div",lD,[t[12]||(t[12]=s("span",{class:"type-badge type-repo"},"Conf",-1)),s("div",dD,[s("a",{class:"repo-name",textContent:c(n?.name),href:e.safeUrl("/conference/"+n?.conferenceID)},null,8,uD),s("div",cD,[s("span",pD,[t[11]||(t[11]=y("ID ",-1)),s("span",{class:"commit-hash",textContent:c(n?.conferenceID)},null,8,fD),n?.url?(l(),d("span",mD,[t[10]||(t[10]=y(" \xB7 ",-1)),s("a",{target:"_blank",rel:"noopener",textContent:c(e.fmt?.limitTo(n?.url,60)),href:e.safeUrl(n?.url)},null,8,hD)])):m("v-if",!0)])])])]),s("div",vD,[s("div",yD,[s("span",{class:O(["status-dot","status-"+n?.status]),"aria-hidden":"true"},null,2),s("span",{class:"status-word",textContent:c(e.fmt?.statusLabel(n?.status))},null,8,gD)])]),s("div",{class:"cell-views num",role:"cell",textContent:c(e.fmt?.number(n?.nbRepositories||0))},null,8,bD),s("div",wD,[n?.startDate?(l(),d("span",kD,c(e.fmt?.date(n?.startDate,"mediumDate"))+" \u2013 "+c(e.fmt?.date(n?.endDate,"mediumDate")),1)):m("v-if",!0),n?.startDate?m("v-if",!0):(l(),d("span",_D,"\u2014"))]),s("div",ED,[s("div",CD,[s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions for "+n?.name},[...t[13]||(t[13]=[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"},null,-1)])],8,ND),s("div",SD,[s("a",{class:"dropdown-item",href:e.safeUrl("/conference/"+n?.conferenceID+"/")},[...t[14]||(t[14]=[s("i",{class:"fa fa-eye","aria-hidden":"true"},null,-1),y(" View ",-1)])],8,DD),s("a",{class:"dropdown-item",href:e.safeUrl("/conference/"+n?.conferenceID+"/edit")},[...t[15]||(t[15]=[s("i",{class:"far fa-edit","aria-hidden":"true"},null,-1),y(" Edit ",-1)])],8,RD),n?.status!="removed"?(l(),d("div",TD,[t[17]||(t[17]=s("div",{class:"dropdown-divider"},null,-1)),s("button",{type:"button",class:"dropdown-item dropdown-item-danger",onClick:a=>e.removeConference(n)},[...t[16]||(t[16]=[s("i",{class:"fas fa-trash-alt","aria-hidden":"true"},null,-1),y(" Remove ",-1)])],8,OD)])):m("v-if",!0)])])])],2))),128)),e.filteredConferences?.length==0?(l(),d("div",AD,[t[19]||(t[19]=s("i",{class:"fas fa-inbox","aria-hidden":"true"},null,-1)),e.conferences?.length==0?(l(),d("span",ID,"You have not created a conference yet.")):m("v-if",!0),e.conferences?.length>0?(l(),d("span",VD,"Nothing matches the current filters.")):m("v-if",!0),s("div",PD,[e.conferences?.length>0?(l(),d("button",{key:0,type:"button",class:"btn btn-outline-ink",onClick:t[1]||(t[1]=n=>{e.search="",e.filters.status.ready=!0,e.filters.status.expired=!0,e.filters.status.removed=!0})},"Clear filters")):m("v-if",!0),e.conferences?.length==0?(l(),d("a",qD,[...t[18]||(t[18]=[s("i",{class:"fa fa-plus-circle mr-1","aria-hidden":"true"},null,-1),y(" New conference",-1)])])):m("v-if",!0)])])):m("v-if",!0)])])])}var MD={class:"container page dashboard-page paper-page"},$D={class:"row"},LD={class:"w-100"},UD={key:0,class:"quota-row"},FD={class:"quota-item"},zD={class:"quota-header"},HD={class:"quota-label"},BD={key:0,class:"quota-value"},GD={key:0},jD={key:1,class:"quota-unlimited-tag"},WD={key:1,class:"quota-value"},KD={key:0},YD={key:1,class:"quota-unlimited-tag"},JD=["aria-label","aria-valuenow","aria-valuemax","aria-valuetext"],QD={class:"search-wrap"},XD={type:"search",id:"search",class:"form-control","aria-label":"Search anonymizations",placeholder:"Search by name, source, or conference\u2026",autocomplete:"off"},ZD={class:"dashboard-filter-controls"},xD={class:"btn-group",role:"group","aria-label":"Type"},eR=["aria-pressed"],tR=["aria-pressed"],sR=["aria-pressed"],nR=["aria-pressed"],oR={class:"dropdown"},rR={class:"btn dropdown-toggle",type:"button",id:"dropdownSort","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},iR={class:"filter-btn-value"},aR={class:"sr-only"},lR={class:"dropdown-menu","aria-labelledby":"dropdownSort"},dR={class:"form-check dropdown-item"},uR=["onClick","checked","id"],cR=["for"],pR={class:"dropdown"},fR={class:"btn dropdown-toggle",type:"button",id:"dropdownStatus","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},mR={key:0,class:"filter-btn-value"},hR={key:1,class:"filter-btn-value"},vR={class:"dropdown-menu","aria-labelledby":"dropdownStatus"},yR={class:"form-check dropdown-item"},gR=["id"],bR=["for"],wR={key:1,class:"dashboard-meta"},kR={class:"dashboard-count"},_R={key:0},ER={key:0},CR={key:1},NR={key:0,class:"filter-chip"},SR=["onClick","aria-label"],DR=["aria-busy"],RR={class:"paper-table-head",role:"row"},TR=["aria-sort"],OR=["aria-sort"],AR=["aria-sort"],IR=["aria-sort"],VR={key:0,class:"paper-table-row paper-table-skeleton",role:"row","aria-hidden":"true"},PR=["onClick"],qR={class:"cell-anon",role:"cell"},MR={class:"anon-text"},$R={class:"anon-title"},LR=["textContent","href"],UR=["textContent"],FR={key:2,class:"type-badge type-coauthor",title:"You are a co-author on this anonymization"},zR={key:0,class:"anon-sub"},HR={key:0,class:"anon-source"},BR=["textContent","href"],GR={key:0},jR=["textContent","href"],WR={key:1},KR=["href"],YR={key:1,class:"anon-source"},JR=["textContent","href"],QR={key:2,class:"anon-source"},XR=["textContent","href"],ZR=["title"],xR=["textContent"],eT={class:"cell-status",role:"cell"},tT={class:"status-line"},sT=["textContent"],nT=["textContent","title"],oT=["title"],rT={key:2,class:"status-sub"},iT=["textContent"],aT={class:"cell-expires",role:"cell"},lT={key:0,class:"expires-never"},dT=["textContent"],uT={key:2,class:"expires-past"},cT={key:3,class:"expires-past"},pT={key:4,class:"empty-dash","aria-label":"Not applicable"},fT={class:"cell-actions",role:"cell"},mT={key:0,class:"dropdown"},hT=["aria-label"],vT={class:"dropdown-menu dropdown-menu-right"},yT=["href"],gT=["href"],bT=["href"],wT=["onClick"],kT=["onClick"],_T=["onClick"],ET={key:4},CT=["onClick"],NT={key:0,class:"paper-table-empty"},ST={key:0},DT={key:1},RT={class:"paper-table-empty-actions"},TT={key:1,href:"/anonymize",class:"btn btn-ink"};function al(e,t){let o=be("field"),r=be("form");return l(),d("div",MD,[s("div",$D,[s("div",LD,[t[18]||(t[18]=ge('<div class="paper-crumbs">My work \xA0/\xA0 <span class="here">Dashboard</span></div><div class="d-flex align-items-end justify-content-between flex-wrap" style="gap:12px;"><div><h1 class="paper-page-title">Your <em>anonymizations</em></h1><p class="paper-page-lede">Every repository, pull request, and gist you\u2019ve mirrored, with live status and stats.</p></div><div class="dashboard-heading-actions"><a href="/anonymize" class="btn btn-ink"><i class="fa fa-plus-circle" aria-hidden="true"></i> New anonymization </a><a href="/connections" class="dashboard-connections-link"><i class="fab fa-github" aria-hidden="true"></i> GitHub connections <span aria-hidden="true">\u2192</span></a></div></div>',2)),m(" Quota "),e.quota?(l(),d("div",UD,[(l(),d(Y,null,ne([{key:"repository",label:"Repositories",kind:"count"},{key:"storage",label:"Storage",kind:"bytes"},{key:"file",label:"Files",kind:"count"}],(n,i)=>s("div",FD,[s("div",zD,[s("span",HD,c(n?.label),1),n?.kind==="count"?(l(),d("span",BD,[y(c(e.fmt?.number(e.quota[n?.key].used)),1),e.quota[n?.key].unlimited?m("v-if",!0):(l(),d("span",GD," / "+c(e.fmt?.number(e.quota[n?.key].total)),1)),e.quota[n?.key].unlimited?(l(),d("span",jD,"Unlimited")):m("v-if",!0)])):m("v-if",!0),n?.kind==="bytes"?(l(),d("span",WD,[y(c(e.fmt?.humanFileSize(e.quota[n?.key].used)),1),e.quota[n?.key].unlimited?m("v-if",!0):(l(),d("span",KD," / "+c(e.fmt?.humanFileSize(e.quota[n?.key].total)),1)),e.quota[n?.key].unlimited?(l(),d("span",YD,"Unlimited")):m("v-if",!0)])):m("v-if",!0)]),s("div",{class:O(["quota-track","quota-"+e.quota[n?.key].level]),role:"progressbar","aria-valuemin":"0","aria-label":n?.label+" quota","aria-valuenow":e.quota[n?.key].used,"aria-valuemax":e.quota[n?.key].unlimited?e.quota[n?.key].used:e.quota[n?.key].total,"aria-valuetext":e.quota[n?.key].unlimited?"unlimited":e.fmt.number(e.quota[n?.key].percent,0)+"% used"},[e.quota[n?.key].unlimited?m("v-if",!0):(l(),d("div",{key:0,class:"quota-fill",style:Pe({width:e.quota[n?.key].percent+"%"})},null,4))],10,JD)])),64))])):m("v-if",!0),m(" Search + filters "),E((l(),d("form",{class:"w-100 dashboard-filter-row","aria-label":"Filter anonymizations","accept-charset":"UTF-8",onSubmit:t[5]||(t[5]=we(n=>e.submitForm(n,()=>{n.preventDefault()}),["prevent"]))},[s("div",QD,[E(s("input",XD,null,512),[[o,{state:e.viewState,set:n=>{e.search=n},value:e.search,form:null,options:{}}]])]),s("div",ZD,[s("div",xD,[s("button",{type:"button",class:O(["btn",{"btn-primary":e.typeFilter==="all"}]),onClick:t[0]||(t[0]=n=>e.typeFilter="all"),"aria-pressed":e.typeFilter==="all"},"All",10,eR),s("button",{type:"button",class:O(["btn",{"btn-primary":e.typeFilter==="repo"}]),onClick:t[1]||(t[1]=n=>e.typeFilter="repo"),"aria-pressed":e.typeFilter==="repo"},"Repos",10,tR),s("button",{type:"button",class:O(["btn",{"btn-primary":e.typeFilter==="pr"}]),onClick:t[2]||(t[2]=n=>e.typeFilter="pr"),"aria-pressed":e.typeFilter==="pr"},"PRs",10,sR),s("button",{type:"button",class:O(["btn",{"btn-primary":e.typeFilter==="gist"}]),onClick:t[3]||(t[3]=n=>e.typeFilter="gist"),"aria-pressed":e.typeFilter==="gist"},"Gists",10,nR)]),s("div",oR,[s("button",rR,[t[12]||(t[12]=s("span",{class:"filter-btn-label"},"Sort",-1)),s("span",iR,c(e.sortLabel()),1),s("i",{class:O(["fas",e.sortDesc()?"fa-arrow-down":"fa-arrow-up"]),"aria-hidden":"true"},null,2),s("span",aR,c(e.sortDesc()?"descending":"ascending"),1)]),s("div",lR,[t[14]||(t[14]=s("h6",{class:"dropdown-header"},"Order by",-1)),(l(!0),d(Y,null,ne(e.sortFields,(n,i,a)=>(l(),d("div",dR,[s("input",{class:"form-check-input",type:"radio",name:"sort",onClick:u=>e.setSort(i,n.defaultDesc),checked:e.isSortedBy(i),id:"sort-"+a},null,8,uR),s("label",{class:"form-check-label",for:"sort-"+a},c(n?.label),9,cR)]))),256)),t[15]||(t[15]=s("div",{class:"dropdown-divider"},null,-1)),s("button",{type:"button",class:"dropdown-item",onClick:t[4]||(t[4]=n=>e.toggleSortDirection())},[t[13]||(t[13]=s("i",{class:"fas fa-exchange-alt fa-rotate-90","aria-hidden":"true"},null,-1)),y(" "+c(e.sortDesc()?"Switch to ascending":"Switch to descending"),1)])])]),s("div",pR,[s("button",fR,[t[16]||(t[16]=s("span",{class:"filter-btn-label"},"Status",-1)),e.hasHiddenStatus()?m("v-if",!0):(l(),d("span",mR,"All")),e.hasHiddenStatus()?(l(),d("span",hR,c(e.hiddenStatusCount())+" hidden",1)):m("v-if",!0)]),s("div",vR,[t[17]||(t[17]=s("h6",{class:"dropdown-header"},"Show statuses",-1)),(l(!0),d(Y,null,ne(e.statusKeyLabels,(n,i,a)=>(l(),d("div",yR,[E(s("input",{class:"form-check-input",type:"checkbox",id:"status-"+i},null,8,gR),[[o,{state:e.viewState,set:u=>{e.filters.status[i]=u},value:e.filters?.status[i],form:null,options:{}}]]),s("label",{class:"form-check-label",for:"status-"+i},c(n),9,bR)]))),256))])])])],32)),[[r,e.viewState]]),m(" Result count + active filter chips "),e.loading?m("v-if",!0):(l(),d("div",wR,[s("span",kR,[e.filteredItems?.length===e.items?.length?(l(),d("span",_R,[y(c(e.fmt?.number(e.items?.length))+" anonymization",1),e.items?.length!==1?(l(),d("span",ER,"s")):m("v-if",!0)])):m("v-if",!0),e.filteredItems?.length!==e.items?.length?(l(),d("span",CR,c(e.fmt?.number(e.filteredItems?.length))+" of "+c(e.fmt?.number(e.items?.length))+" shown",1)):m("v-if",!0)]),(l(!0),d(Y,null,ne(e.filters?.status,(n,i,a)=>(l(),d(Y,null,[n===!1?(l(),d("span",NR,[y(" Hiding "+c(e.statusKeyLabels[i])+" ",1),s("button",{type:"button",class:"filter-chip-close",onClick:u=>{e.filters.status[i]=!0},"aria-label":"Show "+e.statusKeyLabels[i]+" again"},"\xD7",8,SR)])):m("v-if",!0)],64))),256)),e.hasActiveFilters()?(l(),d("button",{key:0,type:"button",class:"btn-link-inline",onClick:t[6]||(t[6]=n=>e.clearFilters())},"Clear filters")):m("v-if",!0)]))]),m(" Table "),s("div",{class:"paper-table paper-table-dashboard w-100",role:"table","aria-label":"Anonymizations","aria-busy":e.loading},[s("div",RR,[s("div",{role:"columnheader","aria-sort":e.isSortedBy("_name")?e.sortDesc()?"descending":"ascending":"none"},[s("button",{type:"button",class:O(["sortable",{active:e.isSortedBy("_name")}]),onClick:t[7]||(t[7]=n=>e.setSort("_name"))},[t[19]||(t[19]=y(" Anonymization ",-1)),e.isSortedBy("_name")?(l(),d("i",{key:0,class:O(["fas",e.sortDesc()?"fa-arrow-down":"fa-arrow-up"]),"aria-hidden":"true"},null,2)):m("v-if",!0)],2)],8,TR),s("div",{role:"columnheader","aria-sort":e.isSortedBy("status")?e.sortDesc()?"descending":"ascending":"none"},[s("button",{type:"button",class:O(["sortable",{active:e.isSortedBy("status")}]),onClick:t[8]||(t[8]=n=>e.setSort("status"))},[t[20]||(t[20]=y(" Status ",-1)),e.isSortedBy("status")?(l(),d("i",{key:0,class:O(["fas",e.sortDesc()?"fa-arrow-down":"fa-arrow-up"]),"aria-hidden":"true"},null,2)):m("v-if",!0)],2)],8,OR),s("div",{role:"columnheader",class:"num","aria-sort":e.isSortedBy("pageView")?e.sortDesc()?"descending":"ascending":"none"},[s("button",{type:"button",class:O(["sortable",{active:e.isSortedBy("pageView")}]),onClick:t[9]||(t[9]=n=>e.setSort("pageView"))},[t[21]||(t[21]=y(" Views ",-1)),e.isSortedBy("pageView")?(l(),d("i",{key:0,class:O(["fas",e.sortDesc()?"fa-arrow-down":"fa-arrow-up"]),"aria-hidden":"true"},null,2)):m("v-if",!0)],2)],8,AR),s("div",{role:"columnheader","aria-sort":e.isSortedBy("options.expirationDate")?e.sortDesc()?"descending":"ascending":"none"},[s("button",{type:"button",class:O(["sortable",{active:e.isSortedBy("options.expirationDate")}]),onClick:t[10]||(t[10]=n=>e.setSort("options.expirationDate"))},[t[22]||(t[22]=y(" Expires ",-1)),e.isSortedBy("options.expirationDate")?(l(),d("i",{key:0,class:O(["fas",e.sortDesc()?"fa-arrow-down":"fa-arrow-up"]),"aria-hidden":"true"},null,2)):m("v-if",!0)],2)],8,IR),t[23]||(t[23]=s("div",{role:"columnheader"},[s("span",{class:"sr-only"},"Actions")],-1))]),m(" Loading skeleton: keeps the layout stable while the three lists load "),(l(),d(Y,null,ne([1,2,3,4],(n,i)=>(l(),d(Y,null,[e.loading?(l(),d("div",VR,[...t[24]||(t[24]=[s("div",{class:"cell-anon",role:"cell"},[s("span",{class:"skeleton skeleton-badge"}),s("div",{class:"anon-text"},[s("span",{class:"skeleton skeleton-line",style:{width:"38%"}}),s("span",{class:"skeleton skeleton-line skeleton-line-sm",style:{width:"56%"}})])],-1),s("div",{class:"cell-status",role:"cell"},[s("span",{class:"skeleton skeleton-line",style:{width:"60%"}})],-1),s("div",{class:"cell-views num",role:"cell"},[s("span",{class:"skeleton skeleton-line",style:{width:"40%"}})],-1),s("div",{class:"cell-expires",role:"cell"},[s("span",{class:"skeleton skeleton-line",style:{width:"55%"}})],-1),s("div",{class:"cell-actions",role:"cell"},null,-1)])])):m("v-if",!0)],64))),64)),(l(!0),d(Y,null,ne(e.filteredItems,(n,i)=>(l(),d(Y,{key:n?._type+":"+(n?._id||i)},[e.loading?m("v-if",!0):(l(),d("div",{key:0,class:O(["paper-table-row",{"repo-inactive":n?._statusKey=="expired"||n?._statusKey=="removed","repo-error":n?.status=="error","row-clickable":!!n?._viewUrl}]),role:"row",onClick:a=>e.openItem(n,a)},[s("div",qR,[s("span",{class:O(["type-badge",{"type-repo":n?._type==="repo","type-pr":n?._type==="pr","type-gist":n?._type==="gist"}])},c(n?._type==="repo"?"Repo":n?._type==="pr"?"PR":"Gist"),3),s("div",MR,[s("div",$R,[n?._viewUrl?(l(),d("a",{key:0,class:"repo-name",textContent:c(n?._name),href:e.safeUrl(n?._viewUrl)},null,8,LR)):m("v-if",!0),n?._viewUrl?m("v-if",!0):(l(),d("span",{key:1,class:"repo-name repo-name-static",textContent:c(n?._name)},null,8,UR)),n?.role==="coauthor"?(l(),d("span",FR,"Co-author")):m("v-if",!0)]),!n?._broken||n?.conference?(l(),d("div",zR,[n?._type==="repo"&&n?.source?.fullName&&!n?._broken?(l(),d("span",HR,[s("a",{target:"_blank",rel:"noopener",textContent:c(n?.source?.fullName),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/")},null,8,BR),n?.options?.update&&n?.source?.branch?(l(),d("span",GR,[t[25]||(t[25]=y(" \xB7 ",-1)),s("a",{target:"_blank",rel:"noopener",textContent:c(n?.source?.branch),href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.branch)},null,8,jR)])):m("v-if",!0),n?.source?.commit?(l(),d("span",WR,[t[26]||(t[26]=y(" \xB7 ",-1)),s("a",{class:"commit-hash",target:"_blank",rel:"noopener",href:e.safeUrl("https://github.com/"+n?.source?.fullName+"/tree/"+n?.source?.commit)},"@"+c(n?.source?.commit?.substring(0,8)),9,KR)])):m("v-if",!0)])):m("v-if",!0),n?._type==="pr"&&n?.source?.repositoryFullName&&!n?._broken?(l(),d("span",YR,[s("a",{target:"_blank",rel:"noopener",textContent:c(n?._source),href:e.safeUrl("https://github.com/"+n?.source?.repositoryFullName+"/pull/"+n?.source?.pullRequestId)},null,8,JR)])):m("v-if",!0),n?._type==="gist"&&n?.source?.gistId&&!n?._broken?(l(),d("span",QR,[s("a",{target:"_blank",rel:"noopener",textContent:c(n?._source),href:e.safeUrl("https://gist.github.com/"+n?.source?.gistId)},null,8,XR)])):m("v-if",!0),n?.conference?(l(),d("span",{key:3,class:"cell-conf conf-tag",title:n?.conference},[t[27]||(t[27]=s("i",{class:"fas fa-university","aria-hidden":"true"},null,-1)),t[28]||(t[28]=y()),s("span",{textContent:c(n?.conference)},null,8,xR)],8,ZR)):m("v-if",!0)])):m("v-if",!0)])]),s("div",eT,[s("div",tT,[s("span",{class:O(["status-dot","status-"+n?._statusKey]),"aria-hidden":"true"},null,2),s("span",{class:"status-word",textContent:c(e.fmt?.statusLabel(n?.status))},null,8,sT)]),n?.status=="error"&&n?.statusMessage?(l(),d("div",{key:0,class:"status-sub status-sub-error",textContent:c(e.fmt?.statusMsg(n?.statusMessage)),title:n?.statusMessage},null,8,nT)):m("v-if",!0),n?._stale?(l(),d("div",{key:1,class:"status-sub status-sub-warn",title:"Last activity "+e.fmt?.humanTime(n?.anonymizeDate||n?.lastView)}," Last activity "+c(e.fmt?.humanTime(n?.anonymizeDate||n?.lastView))+" \xB7 may be stuck ",9,oT)):m("v-if",!0),n?.status!="error"&&!n?._stale&&n?.anonymizeDate?(l(),d("div",rT," anonymized "+c(e.fmt?.humanTime(n?.anonymizeDate)),1)):m("v-if",!0)]),s("div",{class:"cell-views num",role:"cell",textContent:c(e.fmt?.number(n?.pageView))},null,8,iT),s("div",aT,[n?._expiry?.kind==="never"?(l(),d("span",lT,"Never")):m("v-if",!0),n?._expiry?.kind==="date"?(l(),d("span",{key:1,textContent:c(e.fmt?.humanTime(n?._expiry?.date))},null,8,dT)):m("v-if",!0),n?._expiry?.kind==="expired"&&n?._expiry?.date?(l(),d("span",uT,"Expired "+c(e.fmt?.humanTime(n?._expiry?.date)),1)):m("v-if",!0),n?._expiry?.kind==="expired"&&!n?._expiry?.date?(l(),d("span",cT,"Expired")):m("v-if",!0),n?._expiry?.kind==="none"?(l(),d("span",pT,"\u2014")):m("v-if",!0)]),s("div",fT,[n?._broken?m("v-if",!0):(l(),d("div",mT,[s("button",{class:"btn btn-icon-dots",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"Actions for "+n?._name},[...t[29]||(t[29]=[s("i",{class:"fas fa-ellipsis-h","aria-hidden":"true"},null,-1)])],8,hT),s("div",vT,[s("a",{class:"dropdown-item",href:e.safeUrl(n?._viewUrl)},[...t[30]||(t[30]=[s("i",{class:"fa fa-eye","aria-hidden":"true"},null,-1),y(" View ",-1)])],8,yT),n?._type==="repo"&&n?.options?.page&&n?.status=="ready"?(l(),d("a",{key:0,class:"dropdown-item",target:"_self",href:e.safeUrl("/w/"+n?.repoId+"/")},[...t[31]||(t[31]=[s("i",{class:"fas fa-globe","aria-hidden":"true"},null,-1),y(" View page ",-1)])],8,gT)):m("v-if",!0),s("a",{class:"dropdown-item",href:e.safeUrl(n?._editUrl)},[...t[32]||(t[32]=[s("i",{class:"far fa-edit","aria-hidden":"true"},null,-1),y(" Edit ",-1)])],8,bT),n?.status=="ready"||n?.status=="error"?(l(),d("button",{key:1,type:"button",class:"dropdown-item",onClick:a=>e.refreshItem(n)},[...t[33]||(t[33]=[s("i",{class:"fas fa-sync","aria-hidden":"true"},null,-1),y(" Force update ",-1)])],8,wT)):m("v-if",!0),n?.status=="removed"?(l(),d("button",{key:2,type:"button",class:"dropdown-item",onClick:a=>e.refreshItem(n)},[...t[34]||(t[34]=[s("i",{class:"fas fa-check-circle","aria-hidden":"true"},null,-1),y(" Enable ",-1)])],8,kT)):m("v-if",!0),n?.status=="expired"?(l(),d("button",{key:3,type:"button",class:"dropdown-item",onClick:a=>e.extendItem(n)},[...t[35]||(t[35]=[s("i",{class:"fas fa-calendar-plus","aria-hidden":"true"},null,-1),y(" Extend 6 months ",-1)])],8,_T)):m("v-if",!0),(n?.status=="ready"||n?.status=="expired"||n?.status=="error")&&n?.role!=="coauthor"?(l(),d("div",ET,[t[37]||(t[37]=s("div",{class:"dropdown-divider"},null,-1)),s("button",{type:"button",class:"dropdown-item dropdown-item-danger",onClick:a=>e.removeItem(n)},[...t[36]||(t[36]=[s("i",{class:"fas fa-trash-alt","aria-hidden":"true"},null,-1),y(" Remove ",-1)])],8,CT)])):m("v-if",!0)])]))])],10,PR))],64))),128)),!e.loading&&e.filteredItems?.length==0?(l(),d("div",NT,[t[39]||(t[39]=s("i",{class:"fas fa-inbox","aria-hidden":"true"},null,-1)),e.items?.length==0?(l(),d("span",ST,"You have no anonymizations yet.")):m("v-if",!0),e.items?.length>0?(l(),d("span",DT,"Nothing matches the current filters.")):m("v-if",!0),s("div",RT,[e.hasActiveFilters()?(l(),d("button",{key:0,type:"button",class:"btn btn-outline-ink",onClick:t[11]||(t[11]=n=>e.clearFilters())},"Clear filters")):m("v-if",!0),e.items?.length==0?(l(),d("a",TT,[...t[38]||(t[38]=[s("i",{class:"fa fa-plus-circle mr-1","aria-hidden":"true"},null,-1),y(" New anonymization",-1)])])):m("v-if",!0)])])):m("v-if",!0)],8,DR)])])}var OT={class:"explorer-page"},AT=["aria-label"],IT=["textContent"],VT={class:"leftCol-head"},PT={class:"leftCol-search"},qT={class:"tree-search-box"},MT={type:"text",class:"tree-search-input",placeholder:"Search files","aria-label":"Search files"},$T={class:"leftCol-project-header"},LT=["textContent"],UT={class:"project-file-count"},FT={class:"leftCol-body"},zT={key:0,class:"paper-inline-warning",role:"alert"},HT={key:1,class:"paper-inline-warning",role:"alert"},BT={class:"leftCol-foot"},GT=["title"],jT={class:"explorer-main"},WT={class:"status-bar"},KT={class:"breadcrumb paths","aria-label":"Path"},YT=["textContent"],JT={class:"status-bar-actions"},QT=["href"],XT={class:"d-none d-md-inline"},ZT={class:"d-none d-md-inline"},xT=["href"],eO=["href"],tO=["href"],sO=["href"],nO={class:"explorer-content"};function ll(e,t){let o=et("tree"),r=et("partial-view"),n=be("field");return l(),d("div",OT,[E(s("button",{class:"sidebar-toggle",onClick:t[0]||(t[0]=i=>e.sidebarCollapsed=!e.sidebarCollapsed),"aria-label":e.sidebarCollapsed?"Show files":"Hide files"},[s("i",{class:O(["fas",e.sidebarCollapsed?"fa-folder-open":"fa-times"])},null,2),s("span",{textContent:c(e.sidebarCollapsed?"Files":"Close")},null,8,IT)],8,AT),[[B,e.files?.length]]),E(s("div",{class:O(["leftCol",{collapsed:e.sidebarCollapsed}])},[s("div",VT,[t[7]||(t[7]=s("span",{class:"leftCol-eyebrow"},"Files",-1)),s("button",{class:"leftCol-close","aria-label":"Close files",onClick:t[1]||(t[1]=i=>e.sidebarCollapsed=!0)},[...t[6]||(t[6]=[s("i",{class:"fas fa-times"},null,-1)])])]),s("div",PT,[s("div",qT,[s("i",{class:O(["fas tree-search-icon",e.fileSearchLoading?"fa-spinner fa-spin":"fa-search"])},null,2),E(s("input",MT,null,512),[[n,{state:e.viewState,set:i=>{e.fileSearchQuery=i},value:e.fileSearchQuery,form:null,options:{debounce:300},change:()=>{e.onFileSearchChange()}}]]),E(s("kbd",{class:"tree-search-kbd"},c(e.isMac?"\u2318":"Ctrl+")+"K",513),[[B,!e.fileSearchQuery]]),E(s("button",{class:"tree-search-clear","aria-label":"Clear search",onClick:t[2]||(t[2]=i=>{e.fileSearchQuery="",e.onFileSearchChange()})},"\xD7",512),[[B,e.fileSearchQuery]])])]),s("div",$T,[s("span",{class:"project-name",textContent:c(e.repoId)},null,8,LT),s("span",UT,c(e.fileCounts?.[""]||e.files?.length)+" files",1)]),s("div",FT,[e.options?.truncatedFolders?.length>0?(l(),d("div",zT,[t[8]||(t[8]=s("i",{class:"fas fa-exclamation-triangle"},null,-1)),y(" "+c(e.fmt?.translate("WARNINGS.repo_truncated")),1)])):m("v-if",!0),e.options?.hasSubmodules?(l(),d("div",HT,[t[9]||(t[9]=s("i",{class:"fas fa-exclamation-triangle"},null,-1)),y(" "+c(e.fmt?.translate("WARNINGS.submodules_not_included")),1)])):m("v-if",!0),De(o,{class:"files",file:e.files,"search-query":e.fileSearchQuery,"search-results":e.fileSearchResults,page:e.viewState},null,8,["file","search-query","search-results","page"])]),s("div",BT,[s("span",{class:"last-update","data-toggle":"tooltip","data-placement":"top",title:e.options?.lastUpdateDate}," Updated "+c(e.fmt?.date(e.options?.lastUpdateDate)),9,GT)])],2),[[B,e.files?.length]]),E(s("div",{class:"leftCol-backdrop",onClick:t[3]||(t[3]=i=>e.sidebarCollapsed=!0)},null,512),[[B,e.files?.length&&!e.sidebarCollapsed]]),s("div",jT,[s("div",WT,[s("ol",KT,[(l(!0),d(Y,null,ne(e.paths,(i,a)=>(l(),d("li",{class:"breadcrumb-item",textContent:c(i)},null,8,YT))),256))]),s("div",JT,[e.options?.isAdmin||e.options?.isOwner?(l(),d("a",{key:0,class:"btn btn-sm","aria-label":"Edit",href:e.safeUrl("/anonymize/"+e.repoId)},[...t[10]||(t[10]=[s("i",{class:"far fa-edit"},null,-1),s("span",{class:"d-none d-md-inline"}," Edit",-1)])],8,QT)):m("v-if",!0),e.type=="html-doc"&&!e.showSource?(l(),d("button",{key:1,class:O(["btn btn-sm",{"btn-active":e.allowScripts}]),"aria-label":"Allow this document to run JavaScript",title:"Scripts in this file are blocked by default. Enable them only if you trust the repository \u2014 the document stays isolated from your session either way.",onClick:t[4]||(t[4]=i=>e.toggleAllowScripts())},[t[11]||(t[11]=s("i",{class:"fab fa-js"},null,-1)),s("span",XT,c(e.allowScripts?"JS on":"JS off"),1)],2)):m("v-if",!0),e.type=="html-doc"?(l(),d("button",{key:2,class:"btn btn-sm","aria-label":"Toggle between the rendered document and its source",title:"Toggle between the rendered document and its source",onClick:t[5]||(t[5]=i=>e.toggleSource())},[s("i",{class:O(["fas",e.showSource?"fa-eye":"fa-code"])},null,2),s("span",ZT,c(e.showSource?"Rendered":"Source"),1)])):m("v-if",!0),E(s("a",{target:"_self",class:"btn btn-sm","aria-label":"View raw current file",title:"View the raw content of the current file",href:e.safeUrl(e.url)},[...t[12]||(t[12]=[s("i",{class:"fas fa-file-alt"},null,-1),s("span",{class:"d-none d-md-inline"}," Raw",-1)])],8,xT),[[B,e.content!=null]]),E(s("a",{target:"_self",class:"btn btn-sm","aria-label":"Download current file",title:"Download the current file",href:e.safeUrl(e.url+"&download=true")},[...t[13]||(t[13]=[s("i",{class:"fas fa-download"},null,-1),s("span",{class:"d-none d-md-inline"}," Download",-1)])],8,eO),[[B,e.content!=null]]),e.options?.download?(l(),d("a",{key:3,target:"_self",class:"btn btn-sm","aria-label":"Download full repository as ZIP",title:"Download the full repository as a ZIP archive",href:e.safeUrl("/api/repo/"+e.repoId+"/zip")},[...t[14]||(t[14]=[s("i",{class:"fas fa-file-archive"},null,-1),s("span",{class:"d-none d-md-inline"}," Full repo ZIP",-1)])],8,tO)):m("v-if",!0),e.options?.hasWebsite?(l(),d("a",{key:4,target:"_self",class:"btn btn-sm","aria-label":"Website",href:e.safeUrl("/w/"+e.repoId+"/")},[...t[15]||(t[15]=[s("i",{class:"fas fa-globe"},null,-1),s("span",{class:"d-none d-md-inline"}," Website",-1)])],8,sO)):m("v-if",!0)])]),s("div",nO,[De(r,{name:"partials/pageView.htm",state:e.viewState},null,8,["state"])])])])}var oO={class:"paper-faq"};function dl(e,t){return l(),d("div",oO,[...t[0]||(t[0]=[ge('<div class="paper-faq-hero"><div class="paper-faq-eyebrow">Help</div><h1 class="paper-faq-title">Answers to the <em>questions</em> that come up most.</h1><p class="paper-faq-lede"> If something's missing, write to us \u2014 <a href="https://github.com/tdurieux/anonymous_github/issues/new?template=issue_report.yml" target="_blank" rel="noopener">report a bug on GitHub</a>. </p></div>',1),s("div",{class:"paper-faq-body"},[s("aside",{class:"paper-faq-toc"},[s("div",{class:"paper-faq-toc-head"},"Contents"),s("nav",null,[s("a",{href:"#faq-general"},"General"),s("a",{href:"#faq-features"},"Features"),s("a",{href:"#faq-limitations"},"Limitations"),s("a",{href:"#faq-privacy"},"Privacy & Security"),s("a",{href:"#faq-hosting"},"Self-Hosting")])]),s("section",{class:"faq-section","aria-label":"FAQs"},[s("div",null,[m(" General "),s("h4",{class:"faq-cat"},[s("i",{class:"fas fa-info-circle mr-2"}),y("General ")]),s("div",{class:"panel-group",id:"faq-general",role:"tablist","aria-multiselectable":"true"},[s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingWhatIs"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-general",href:"#whatIs","aria-expanded":"false","aria-controls":"whatIs"}," What is Anonymous GitHub? ")])]),s("div",{id:"whatIs",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingWhatIs"},[s("div",{class:"panel-body p-3"},[s("p",null," Anonymous GitHub is a free, open-source tool that anonymizes GitHub repositories and pull requests for double-anonymous (double-blind) peer review. It replaces identifying information \u2014 such as the repository owner, organization name, and custom terms \u2014 so that reviewers cannot determine the identity of the authors through the code repository. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingHowWork"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-general",href:"#howWork","aria-expanded":"false","aria-controls":"howWork"}," How does Anonymous GitHub work? ")])]),s("div",{id:"howWork",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingHowWork"},[s("div",{class:"panel-body p-3"},[s("p",null," Anonymous GitHub either downloads the complete repository and anonymizes the content, or proxies requests to GitHub on the fly. In both cases, the original and anonymized versions of files are cached on the server. The system automatically detects and replaces the repository owner, organization name, and repository name. You can also specify additional custom terms to anonymize using one-per-line regex patterns. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingScope"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-general",href:"#scope","aria-expanded":"false","aria-controls":"scope"}," What is the scope of anonymization? ")])]),s("div",{id:"scope",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingScope"},[s("div",{class:"panel-body p-3"},[s("p",null," In double-anonymous peer review, the boundary of anonymization is the paper plus its online appendix \u2014 not the entire internet. Searching for any part of the paper or the online appendix can be considered a deliberate attempt to break anonymity. Anonymous GitHub anonymizes the repository owner, organization, repository name, file and directory names, and file contents across all text-based file types. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingCost"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-general",href:"#cost","aria-expanded":"false","aria-controls":"cost"}," How much does it cost? ")])]),s("div",{id:"cost",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingCost"},[s("div",{class:"panel-body p-3"},[s("p",null,[y(" Anonymous GitHub is completely free to use. However, the server costs hundreds of dollars per year to maintain. If you find the service useful, a small donation would be greatly appreciated. You can support the project by "),s("a",{href:"https://github.com/sponsors/tdurieux/",target:"_blank"},"sponsoring on GitHub"),y(", donating through "),s("a",{href:"https://ko-fi.com/tdurieux",target:"_blank"},"Ko-fi"),y(', or by clicking the "Support me" button on the site. ')])])])])]),m(" Features "),s("h4",{class:"faq-cat"},[s("i",{class:"fas fa-cogs mr-2"}),y("Features ")]),s("div",{class:"panel-group",id:"faq-features",role:"tablist","aria-multiselectable":"true"},[s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingFormats"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#formats","aria-expanded":"false","aria-controls":"formats"}," Which file formats are supported? ")])]),s("div",{id:"formats",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingFormats"},[s("div",{class:"panel-body p-3"},[s("p",null," Anonymous GitHub can display and render a wide variety of file types: "),s("ul",null,[s("li",null,[s("strong",null,"Text and source code"),y(" \u2014 displayed with syntax highlighting")]),s("li",null,[s("strong",null,"Markdown"),y(" \u2014 rendered as formatted HTML")]),s("li",null,[s("strong",null,"Images"),y(" (PNG, JPG, SVG, etc.) \u2014 displayed inline")]),s("li",null,[s("strong",null,"PDFs"),y(" \u2014 rendered directly in the browser")]),s("li",null,[s("strong",null,"Jupyter Notebooks"),y(" \u2014 rendered with code cells and outputs")])]),s("p",null," Only text-based files are anonymized. Anonymous GitHub analyzes the content of each file to determine whether it is textual or binary. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingPR"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#pullRequests","aria-expanded":"false","aria-controls":"pullRequests"}," Can I anonymize pull requests? ")])]),s("div",{id:"pullRequests",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingPR"},[s("div",{class:"panel-body p-3"},[s("p",null," Yes. In addition to full repositories, Anonymous GitHub supports anonymizing individual pull requests. Simply paste the URL of a GitHub pull request when creating a new anonymized repository, and the system will automatically detect that it is a pull request and anonymize it accordingly. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingConference"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#conference","aria-expanded":"false","aria-controls":"conference"}," What is the Conference ID feature? ")])]),s("div",{id:"conference",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingConference"},[s("div",{class:"panel-body p-3"},[s("p",null," When creating an anonymized repository, you can associate it with a Conference ID. This allows conferences to define default anonymization settings (such as expiration dates) that are automatically applied to repositories submitted under that conference. If your conference provides a Conference ID, enter it during the anonymization setup. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingExpiration"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#expiration","aria-expanded":"false","aria-controls":"expiration"}," What happens when an anonymized repository expires? ")])]),s("div",{id:"expiration",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingExpiration"},[s("div",{class:"panel-body p-3"},[s("p",null," You can configure one of three expiration strategies when creating your anonymized repository: "),s("ul",null,[s("li",null,[s("strong",null,"Never expire"),y(" \u2014 the anonymized repository remains accessible indefinitely.")]),s("li",null,[s("strong",null,"Redirect to GitHub"),y(" \u2014 after expiration, visitors are redirected to the original GitHub repository.")]),s("li",null,[s("strong",null,"Remove content"),y(" \u2014 after expiration, the anonymized content is deleted from the server.")])])])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingDownload"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#download","aria-expanded":"false","aria-controls":"download"}," Can I download an anonymized repository? ")])]),s("div",{id:"download",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingDownload"},[s("div",{class:"panel-body p-3"},[s("p",null," Yes. Anonymized repositories can be downloaded as a ZIP file. This is useful if reviewers want to build or test the code locally. The downloaded archive contains the fully anonymized version of the repository. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingUpdates"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#updates","aria-expanded":"false","aria-controls":"updates"}," Are updates to the original repository reflected in the anonymized version? ")])]),s("div",{id:"updates",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingUpdates"},[s("div",{class:"panel-body p-3"},[s("p",null," Yes. The anonymized repository tracks the source on GitHub: when you push new commits to the original repository, the anonymized view picks up those changes (cached files are refreshed against GitHub). This means you can keep iterating on the code while reviewers have the link, and you do not need to recreate the anonymized repository every time you update the source. "),s("p",null," A few practical implications worth keeping in mind: "),s("ul",null,[s("li",null," You can safely create the anonymized repository early in the writing process \u2014 later commits will be visible to reviewers without any additional action. "),s("li",null," If you rename files, add new identifiers, or introduce new contributor names after creation, revisit the anonymization options (custom terms, file filters) to make sure the new content is still properly anonymized. "),s("li",null," If the original repository is made private or deleted, the anonymized repository will no longer be able to fetch updated content. ")])])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingCLI"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-features",href:"#cli","aria-expanded":"false","aria-controls":"cli"}," Is there a command-line tool? ")])]),s("div",{id:"cli",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingCLI"},[s("div",{class:"panel-body p-3"},[s("p",null," Yes. Anonymous GitHub provides a CLI tool that lets you anonymize repositories locally, generating an anonymized ZIP file on your machine. Install it via npm: "),s("pre",{style:{"background-color":"var(--hover-bg-color)",padding:"12px","border-radius":"4px","margin-top":"8px",color:"var(--color)"}},[s("code",null,`npm install -g @tdurieux/anonymous_github
|
|
anonymous_github`)])])])])]),m(" Limitations "),s("h4",{class:"faq-cat"},[s("i",{class:"fas fa-exclamation-triangle mr-2"}),y("Limitations ")]),s("div",{class:"panel-group",id:"faq-limitations",role:"tablist","aria-multiselectable":"true"},[s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingLimitation"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-limitations",href:"#limitation","aria-expanded":"false","aria-controls":"limitation"}," What are the limitations of Anonymous GitHub? ")])]),s("div",{id:"limitation",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingLimitation"},[s("div",{class:"panel-body p-3"},[s("ul",null,[s("li",null," Anonymous GitHub only anonymizes text-based files. Binary files (compiled executables, archives, etc.) are served as-is without anonymization. "),s("li",null," Files larger than 8 MB are not supported. "),s("li",null," Static site generators (such as Jekyll) used with GitHub Pages are not fully supported, although Markdown files are converted to HTML. "),s("li",null," The anonymization of terms within source code may change the behavior of the program (e.g., if a replaced term appears in a string literal or identifier). ")])])])])]),m(" Privacy & Security "),s("h4",{class:"faq-cat"},[s("i",{class:"fas fa-shield-alt mr-2"}),y("Privacy & Security ")]),s("div",{class:"panel-group",id:"faq-privacy",role:"tablist","aria-multiselectable":"true"},[s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingData"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-privacy",href:"#data","aria-expanded":"false","aria-controls":"data"}," How is my data handled? ")])]),s("div",{id:"data",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingData"},[s("div",{class:"panel-body p-3"},[s("p",null," Data stored on Anonymous GitHub is never shared or used for any purpose beyond providing the anonymization service. When a repository is removed or expires, only its configuration is retained \u2014 this makes it easy to restore the repository if needed and ensures that no future repository reuses the same ID. ")])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingPermissions"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-privacy",href:"#permissions","aria-expanded":"false","aria-controls":"permissions"}," Why does GitHub say Anonymous GitHub asks for write access? ")])]),s("div",{id:"permissions",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingPermissions"},[s("div",{class:"panel-body p-3"},[s("p",null," Anonymous GitHub only reads your repositories \u2014 it never pushes commits, opens issues, modifies settings, or deletes anything. From your perspective as a user, the service is read-only. "),s("p",null,[y(" However, GitHub's OAuth scopes do not offer a read-only option for private repositories: the only scope that grants access to private repos is "),s("code",null,"repo"),y(", which is documented as full read/write access. To support users who want to anonymize a private repository, Anonymous GitHub must request that scope, and GitHub then displays the broader permission text at sign-in. The application itself only ever performs read operations against the GitHub API. ")]),s("p",null,[y(" If you only anonymize public repositories, the source code is open and can be audited on the "),s("a",{href:"https://github.com/tdurieux/anonymous_github/",target:"_blank"},"GitHub repository"),y(", or you can self-host your own instance. ")])])])]),s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingViewer"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-privacy",href:"#viewer","aria-expanded":"false","aria-controls":"viewer"}," Can repository owners see who viewed their anonymized repository? ")])]),s("div",{id:"viewer",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingViewer"},[s("div",{class:"panel-body p-3"},[s("p",null," No. Only the total number of views is tracked as an incremental counter. It is not possible for the repository owner or for Anonymous GitHub to identify individual viewers. Reviewer anonymity is fully preserved. ")])])])]),m(" Self-Hosting "),s("h4",{class:"faq-cat"},[s("i",{class:"fas fa-server mr-2"}),y("Self-Hosting ")]),s("div",{class:"panel-group",id:"faq-hosting",role:"tablist","aria-multiselectable":"true"},[s("div",{class:"panel panel-default mb-3"},[s("div",{class:"panel-heading p-3",role:"tab",id:"headingDeploy"},[s("h3",{class:"panel-title"},[s("a",{class:"collapsed",role:"button","data-toggle":"collapse","data-parent":"#faq-hosting",href:"#deploy","aria-expanded":"false","aria-controls":"deploy"}," Can I deploy my own instance? ")])]),s("div",{id:"deploy",class:"panel-collapse collapse",role:"tabpanel","aria-labelledby":"headingDeploy"},[s("div",{class:"panel-body p-3"},[s("p",null,[y(" Yes. Anonymous GitHub is fully open source (GPL-3.0) and supports Docker-based deployment. You will need to configure a GitHub OAuth app and provide a GitHub token. Detailed setup instructions are available on the "),s("a",{href:"https://github.com/tdurieux/anonymous_github/",target:"_blank"},"GitHub repository"),y(". ")]),s("p",null," The basic steps are: "),s("ol",null,[s("li",null,"Clone the repository and install dependencies"),s("li",null,[y("Create a "),s("code",null,".env"),y(" file with your GitHub token, OAuth client ID, and client secret")]),s("li",null,[y("Run "),s("code",null,"docker-compose up -d")])])])])])]),s("div",{class:"text-center mt-5 mb-5 p-4",style:{"background-color":"var(--hover-bg-color)","border-radius":"8px"}},[s("p",{class:"mb-2",style:{"font-size":"1.1rem"}}," Still have questions? "),s("p",{class:"text-muted mb-0"},[y(" Open an issue on the "),s("a",{href:"https://github.com/tdurieux/anonymous_github/issues",target:"_blank"},"GitHub repository"),y(" and we'll be happy to help. ")])])])])],-1)])])}var rO={class:"pr-page"},iO={class:"container paper-page pr-page-inner"},aO={class:"pr-header"},lO={class:"paper-page-title pr-title"},dO=["textContent"],uO={key:1,class:"text-muted"},cO=["href"],pO={class:"pr-header-meta"},fO={key:0,class:"pr-meta-item"},mO=["textContent"],hO={key:1,class:"pr-meta-item"},vO=["textContent"],yO={key:2,class:"pr-meta-item"},gO=["textContent"],bO={key:0,class:"paper-tabs",role:"tablist"},wO=["textContent"],kO=["textContent"],_O={class:"paper-tab-content"},EO={key:0},CO={class:"pr-comments"},NO={class:"pr-comment"},SO={class:"pr-comment-head"},DO=["textContent"],RO={key:0,class:"pr-comment-date"},TO={key:0,class:"paper-table-empty"},OO={key:1},AO={class:"pr-comments"},IO={class:"pr-comment"},VO={class:"pr-comment-head"},PO={key:0,class:"pr-comment-author"},qO=["textContent"],MO=["textContent"],$O={key:0,class:"pr-comment-body"},LO={key:0,class:"paper-table-empty"};function ul(e,t){let o=et("gist-file"),r=et("markdown");return l(),d("div",rO,[s("div",iO,[t[15]||(t[15]=s("div",{class:"paper-crumbs"},[s("a",{href:"/dashboard"},"Reviewer"),y(" \xA0/\xA0 "),s("span",{class:"here"},"Gist")],-1)),s("header",aO,[s("h1",lO,[e.details?.description?(l(),d("span",{key:0,textContent:c(e.details?.description)},null,8,dO)):m("v-if",!0),e.details?.description?m("v-if",!0):(l(),d("span",uO,"Untitled gist")),e.options?.isAdmin||e.options?.isOwner?(l(),d("a",{key:2,class:"btn btn-sm","aria-label":"Edit",href:e.safeUrl("/gist-anonymize/"+e.gistId)},[...t[2]||(t[2]=[s("i",{class:"far fa-edit"},null,-1),s("span",{class:"d-none d-md-inline"}," Edit",-1)])],8,cO)):m("v-if",!0)]),s("div",pO,[s("span",{class:O(["paper-pill",{good:e.details?.isPublic,warn:!e.details?.isPublic}])},c(e.details?.isPublic?"Public":"Secret"),3),e.details?.ownerLogin?(l(),d("span",fO,[t[3]||(t[3]=s("i",{class:"far fa-user"},null,-1)),t[4]||(t[4]=y(" @",-1)),s("span",{textContent:c(e.details?.ownerLogin)},null,8,mO)])):m("v-if",!0),e.details?.updatedDate?(l(),d("span",hO,[t[5]||(t[5]=s("i",{class:"far fa-clock"},null,-1)),t[6]||(t[6]=y()),s("span",{textContent:c(e.fmt?.date(e.details?.updatedDate))},null,8,vO)])):m("v-if",!0),e.details?.anonymizeDate?(l(),d("span",yO,[t[7]||(t[7]=s("i",{class:"fas fa-user-secret"},null,-1)),t[8]||(t[8]=y(" Anonymized ",-1)),s("span",{textContent:c(e.fmt?.date(e.details?.anonymizeDate))},null,8,gO)])):m("v-if",!0)])]),e.details?.files&&e.details?.files?.length||e.details?.comments&&e.details?.comments?.length?(l(),d("nav",bO,[e.details?.files?(l(),d("button",{key:0,class:O(["paper-tab",{active:e.tabState?.active=="files"}]),type:"button",role:"tab",onClick:t[0]||(t[0]=n=>e.tabState.active="files")},[t[9]||(t[9]=s("i",{class:"fas fa-file-code"},null,-1)),s("span",{textContent:c(e.fmt.plural(e.details?.files?.length,{0:"No files",one:"1 file",other:"{} files"}))},null,8,wO)],2)):m("v-if",!0),e.details?.comments?(l(),d("button",{key:1,class:O(["paper-tab",{active:e.tabState?.active=="comments"}]),type:"button",role:"tab",onClick:t[1]||(t[1]=n=>e.tabState.active="comments")},[t[10]||(t[10]=s("i",{class:"far fa-comment-dots"},null,-1)),s("span",{textContent:c(e.fmt.plural(e.details?.comments?.length,{0:"No comments",one:"1 comment",other:"{} comments"}))},null,8,kO)],2)):m("v-if",!0)])):m("v-if",!0),s("div",_O,[e.details?.files&&e.tabState?.active=="files"?(l(),d("div",EO,[s("ul",CO,[(l(!0),d(Y,null,ne(e.details?.files,(n,i)=>(l(),d("li",NO,[s("div",SO,[s("strong",{textContent:c(n?.filename)},null,8,DO),n?.language?(l(),d("span",RO,c(n?.language),1)):m("v-if",!0)]),De(o,{file:n},null,8,["file"])]))),256)),e.details?.files?.length?m("v-if",!0):(l(),d("li",TO,[...t[11]||(t[11]=[s("i",{class:"fas fa-file"},null,-1),s("span",null,"No files in this gist.",-1)])]))])])):m("v-if",!0),e.details?.comments&&e.tabState?.active=="comments"?(l(),d("div",OO,[s("ul",AO,[(l(!0),d(Y,null,ne(e.details?.comments,(n,i)=>(l(),d("li",IO,[s("div",VO,[n?.author?(l(),d("span",PO,[t[12]||(t[12]=s("i",{class:"far fa-user"},null,-1)),t[13]||(t[13]=y(" @",-1)),s("span",{textContent:c(n?.author)},null,8,qO)])):m("v-if",!0),n?.updatedDate?(l(),d("span",{key:1,class:"pr-comment-date",textContent:c(e.fmt?.date(n?.updatedDate))},null,8,MO)):m("v-if",!0)]),n?.body?(l(),d("div",$O,[De(r,{content:n?.body},null,8,["content"])])):m("v-if",!0)]))),256)),e.details?.comments?.length?m("v-if",!0):(l(),d("li",LO,[...t[14]||(t[14]=[s("i",{class:"far fa-comment-dots"},null,-1),s("span",null,"No comments on this gist.",-1)])]))])])):m("v-if",!0)])])])}var UO={class:"collapse navbar-collapse",id:"navbarSupportedContent"},FO={class:"navbar-nav mr-auto smooth-scroll"},zO={key:0,class:"nav-item"},HO={key:1,class:"nav-item"},BO={key:2,class:"nav-item"},GO={key:3,class:"nav-item"},jO={class:"nav-item"},WO={key:4,class:"nav-item"},KO={class:"navbar-nav"},YO={key:0,class:"nav-item"},JO={key:1,class:"nav-item"},QO={key:2,class:"nav-item"},XO={key:3,class:"nav-item dropdown user-chip-wrap"},ZO={class:"nav-link user-chip dropdown-toggle",href:"#",id:"navbarDropdownMenuLink",role:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"},xO=["src"],eA={class:"user-chip-name"},tA={class:"dropdown-menu dropdown-menu-right user-menu","aria-labelledby":"navbarDropdownMenuLink"},sA={class:"dropdown-header"},nA=["innerHTML"];function cl(e,t){return l(),d(Y,null,[s("nav",{class:O(["navbar navbar-expand-lg",{"navbar-dark":e.isDarkMode}])},[t[13]||(t[13]=s("a",{class:"navbar-brand",href:"/"},[y("Anonymous "),s("em",null,"GitHub")],-1)),t[14]||(t[14]=s("button",{class:"navbar-toggler",type:"button","data-toggle":"collapse","data-target":"#navbarSupportedContent","aria-controls":"navbarSupportedContent","aria-expanded":"false","aria-label":"Toggle navigation"},[s("span",{class:"navbar-toggler-icon"})],-1)),s("div",UO,[s("ul",FO,[e.user?m("v-if",!0):(l(),d("li",zO,[s("a",{class:O(["nav-link",{active:e.path=="/"}]),href:"/"}," Home ",2)])),e.user?(l(),d("li",HO,[s("a",{class:O(["nav-link",{active:e.path=="/dashboard"}]),href:"/dashboard"},[...t[2]||(t[2]=[s("i",{class:"fas fa-th-large d-lg-none mr-1"},null,-1),y(" My work ",-1)])],2)])):m("v-if",!0),e.user?(l(),d("li",BO,[s("a",{class:O(["nav-link",{active:e.path=="/anonymize"||e.path=="/pull-request-anonymize"}]),href:"/anonymize"},[...t[3]||(t[3]=[s("i",{class:"fas fa-user-secret d-lg-none mr-1"},null,-1),y(" Anonymize ",-1)])],2)])):m("v-if",!0),e.user?(l(),d("li",GO,[s("a",{class:O(["nav-link",{active:e.path=="/conferences"}]),href:"/conferences"},[...t[4]||(t[4]=[s("i",{class:"fas fa-chalkboard-teacher d-lg-none mr-1"},null,-1),y(" Conferences ",-1)])],2)])):m("v-if",!0),s("li",jO,[s("a",{class:O(["nav-link",{active:e.path=="/faq"}]),href:"/faq"},[...t[5]||(t[5]=[s("i",{class:"fas fa-question-circle d-lg-none mr-1"},null,-1),y("FAQ",-1)])],2)]),e.user&&e.user?.isAdmin?(l(),d("li",WO,[s("a",{class:O(["nav-link",{active:e.path?.indexOf("/admin")===0}]),href:"/admin/"},[...t[6]||(t[6]=[s("i",{class:"fas fa-cog d-lg-none mr-1"},null,-1),y(" Admin ",-1)])],2)])):m("v-if",!0)]),s("ul",KO,[t[11]||(t[11]=s("li",{class:"nav-item"},[s("a",{class:"nav-link nav-icon",target:"_blank",href:"https://github.com/tdurieux/anonymous_github/",title:"Anonymous GitHub source code","aria-label":"Anonymous GitHub source code on GitHub",rel:"noopener","data-offset":"30"},[s("i",{class:"fab fa-github","aria-hidden":"true"})])],-1)),m(` "Report a bug" is about this service. Reviewers who land on an
|
|
anonymized repository often think it is about the paper, so the
|
|
label names the service and the tooltip says who to contact. `),t[12]||(t[12]=s("li",{class:"nav-item d-none d-lg-block"},[s("a",{class:"nav-link",target:"_blank",rel:"noopener",href:"https://github.com/tdurieux/anonymous_github/issues/new?template=issue_report.yml",title:"Report a problem with the Anonymous GitHub service. Questions about an anonymized repository or paper go to its authors.","data-offset":"30"},[s("i",{class:"fas fa-bug d-lg-none mr-1","aria-hidden":"true"}),y("Report a bug ")])],-1)),e.isDarkMode?m("v-if",!0):(l(),d("li",YO,[s("a",{class:"nav-link nav-icon",href:"#",title:"Switch to dark mode","aria-label":"Switch to dark mode",role:"button",onClick:t[0]||(t[0]=we(o=>{e.darkMode(!0)},["prevent"]))},[...t[7]||(t[7]=[s("i",{class:"fas fa-moon","aria-hidden":"true"},null,-1)])])])),e.isDarkMode?(l(),d("li",JO,[s("a",{class:"nav-link nav-icon",href:"#",title:"Switch to light mode","aria-label":"Switch to light mode",role:"button",onClick:t[1]||(t[1]=we(o=>{e.darkMode(!1)},["prevent"]))},[...t[8]||(t[8]=[s("i",{class:"fas fa-sun","aria-hidden":"true"},null,-1)])])])):m("v-if",!0),e.user?m("v-if",!0):(l(),d("li",QO,[...t[9]||(t[9]=[s("a",{class:"nav-link btn-signin",target:"_self",href:"/signin","data-offset":"30"},[s("i",{class:"fab fa-github mr-1"}),y(" Sign in ")],-1)])])),e.user?(l(),d("li",XO,[s("a",ZO,[e.user?.photo?(l(),d("img",{key:0,width:"22",height:"22",class:"rounded-circle",src:e.safeUrl(e.user?.photo)},null,8,xO)):m("v-if",!0),s("span",eA,c(e.user?.username),1)]),s("div",tA,[s("h6",sA,"Signed in as @"+c(e.user?.username),1),t[10]||(t[10]=ge('<a class="dropdown-item" href="/profile"><i class="fas fa-sliders-h" aria-hidden="true"></i><span>Settings<small>Defaults, quotas, account</small></span></a><a class="dropdown-item" href="/connections"><i class="fab fa-github" aria-hidden="true"></i><span>GitHub connections<small>Repository access and OAuth</small></span></a><a class="dropdown-item" href="/claim"><i class="fas fa-link" aria-hidden="true"></i><span>Claim an anonymization<small>Attach an existing mirror to your account</small></span></a><div class="dropdown-divider"></div><a class="dropdown-item" href="https://github.com/tdurieux/anonymous_github/issues/new?template=issue_report.yml" target="_blank" rel="noopener"><i class="fas fa-bug" aria-hidden="true"></i><span>Report a bug<small>About this service, not a paper</small></span></a><a class="dropdown-item" href="https://github.com/tdurieux/anonymous_github/" target="_blank" rel="noopener"><i class="fab fa-github" aria-hidden="true"></i><span>Source code</span></a><div class="dropdown-divider"></div><a class="dropdown-item" href="/api/user/logout" target="_self"><i class="fas fa-sign-out-alt" aria-hidden="true"></i><span>Sign out</span></a>',8))])])):m("v-if",!0)])])],2),e.generalMessage?(l(),d("div",{key:0,class:"navbar shadow generalMessage",innerHTML:e.sanitize(e.generalMessage)},null,8,nA)):m("v-if",!0)],64)}var oA={class:"paper-landing"},rA={class:"paper-hero"},iA={class:"paper-hero-copy"},aA={class:"paper-cta-row"},lA={key:0,href:"/signin",target:"_self",class:"btn-hero"},dA={key:1,href:"/anonymize",class:"btn-hero"},uA={class:"paper-stats paper-wrap",id:"metrics","aria-label":"Usage over the last 60 days"},cA={class:"paper-stats-grid"},pA={class:"paper-stat-value"},fA={class:"paper-stat-label"},mA=["viewBox"],hA=["x","y","width","height"],vA={key:1,class:"paper-stat-delta"},yA={class:"paper-features paper-wrap","aria-label":"Product features"},gA={class:"paper-features-list",role:"tablist","aria-label":"Features","aria-orientation":"vertical"},bA=["onClick","onKeydown","id","aria-controls","aria-selected","tabindex"],wA={class:"paper-eyebrow"},kA={class:"paper-feature-title"},_A={class:"paper-feature-more"},EA={class:"paper-feature-title paper-feature-title-m","aria-hidden":"true"},CA=["href","target"],NA={class:"paper-features-stage"},SA=["id","aria-labelledby"],DA={class:"paper-frame"},RA={class:"paper-frame-bar","aria-hidden":"true"},TA={class:"url"},OA=["src","alt"],AA={class:"paper-footer"},IA={class:"paper-footer-inner"},VA={class:"paper-footer-col"},PA={key:0,href:"/dashboard"},qA={key:1,href:"/conferences"},MA={class:"paper-footer-foot"};function pl(e,t){return l(),d("div",oA,[m(" Hero: copy on the left, the product on the right "),s("section",rA,[s("div",iA,[t[2]||(t[2]=s("div",{class:"paper-eyebrow"},"For double-blind peer review",-1)),t[3]||(t[3]=s("h1",{class:"hero-title"},[y(" Share the code,"),s("br"),s("span",{class:"accent"},"not the author.")],-1)),t[4]||(t[4]=s("p",{class:"hero-subtitle"}," Anonymous GitHub makes a read-only mirror of your repository, pull request, or gist with every trace of identity removed, so you can attach a link to your submission without breaking anonymity. ",-1)),s("div",aA,[e.user?m("v-if",!0):(l(),d("a",lA,[...t[0]||(t[0]=[s("i",{class:"fab fa-github mr-2","aria-hidden":"true"},null,-1),y("Sign in with GitHub ",-1)])])),e.user?(l(),d("a",dA," Anonymize a repository \u2192 ")):m("v-if",!0),t[1]||(t[1]=s("a",{class:"paper-link-arrow",target:"_self",href:"https://anonymous.4open.science/r/840c8c57-3c32-451e-bf12-0e20be300389/"},"See an anonymized repository \u2192",-1))]),t[5]||(t[5]=s("ul",{class:"paper-reassure"},[s("li",null,"Free and open source"),s("li",null,"Read-only: never writes to your repos"),s("li",null,"Expires on the date you set")],-1))]),t[6]||(t[6]=ge('<div class="paper-hero-shot"><div class="paper-frame"><div class="paper-frame-bar" aria-hidden="true"><span class="dots"><i></i><i></i><i></i></span><span class="url">anonymous.4open.science/anonymize</span></div><img src="/imgs/anonymize.png" width="2880" height="1800" alt="The anonymize form with a live README preview showing the redactions"></div></div>',1))]),m(" Proof "),t[16]||(t[16]=ge('<section class="paper-proof paper-wrap" aria-label="Venues"><div class="paper-eyebrow">Trusted by authors at</div><div class="paper-proof-venues"><span>ICSE</span><i aria-hidden="true">\xB7</i><span>FSE</span><i aria-hidden="true">\xB7</i><span>OOPSLA</span></div></section>',1)),m(" Live stats "),s("section",uA,[t[7]||(t[7]=s("div",{class:"paper-stats-meta"},[s("div",{class:"paper-stats-meta-left"},"Live \xB7 last 60 days"),s("div",{class:"paper-stats-meta-right"},[s("span",{class:"paper-stats-dot","aria-hidden":"true"}),y(" updated daily ")])],-1)),s("div",cA,[(l(!0),d(Y,null,ne(e.cards,(o,r)=>(l(),d("div",{class:"paper-stat-card",key:o?.key},[s("div",pA,c(e.fmt?.bigNum(o?.total)),1),s("div",fA,c(o?.label),1),e.history[o?.key].bars?.length>1?(l(),d("svg",{key:0,class:"paper-stat-bars",preserveAspectRatio:"none","aria-hidden":"true",viewBox:"0 0 "+e.history[o?.key].viewW+" 36"},[(l(!0),d(Y,null,ne(e.history[o?.key].bars,(n,i)=>(l(),d("rect",{key:i,class:O({"is-latest":i===e.history[o.key].bars.length-1}),x:n?.x,y:n?.y,width:n?.w,height:n?.h},null,10,hA))),128))],8,mA)):m("v-if",!0),e.history[o?.key].bars?.length>1?(l(),d("div",vA," +"+c(e.fmt?.number(e.history[o?.key].deltaToday))+" today ",1)):m("v-if",!0)]))),128))])]),m(" Before / after "),t[17]||(t[17]=s("section",{class:"paper-section-head paper-wrap"},[s("div",null,[s("div",{class:"paper-eyebrow"},"Before \xB7 after"),s("h2",null,[y("The same repository, "),s("em",null,"minus you.")])]),s("p",null," Names, affiliations, emails, and any term you list are replaced across the README, source files, notebooks, and PDF links. Reviewers browse the real thing, not a zip. ")],-1)),t[18]||(t[18]=s("div",{class:"paper-preview paper-wrap","aria-label":"Before and after example"},[s("div",{class:"pane"},[s("div",{class:"pane-header"},[s("span",{class:"pane-label"},"Before \xB7 your repo"),s("span",{class:"pane-url"},"github.com/jane-smith/DeepLearnUtils")]),s("div",{class:"pane-body"},[s("div",null,[s("span",{class:"tok"},"#"),y(),s("strong",null,"DeepLearnUtils")]),s("div",null,"Developed by Jane Smith at MIT CSAIL."),s("div",null,"See Smith et\xA0al., \u201CAttention That Works,\u201D 2026."),s("div",null,"Contact: jane.smith@mit.edu")])]),s("div",{class:"pane"},[s("div",{class:"pane-header"},[s("span",{class:"pane-label"},"After \xB7 anonymous mirror"),s("span",{class:"pane-url"},"anonymous.4open.science/r/paper-7f2a")]),s("div",{class:"pane-body"},[s("div",null,[s("span",{class:"tok"},"#"),y(),s("strong",null,"DeepLearnUtils")]),s("div",null,[y("Developed by "),s("span",{class:"redact",role:"img","aria-label":"redacted author name"},"XXXX-1"),y(" at "),s("span",{class:"redact",role:"img","aria-label":"redacted affiliation"},"XXXX-2"),y(".")]),s("div",null,[y("See "),s("span",{class:"redact",role:"img","aria-label":"redacted author name"},"XXXX-1"),y(" et\xA0al., \u201CAttention That Works,\u201D 2026.")]),s("div",null,[y("Contact: "),s("span",{class:"redact",role:"img","aria-label":"redacted email address"},"XXXX-3")])])])],-1)),m(" What you get: one screenshot, three tabs "),t[19]||(t[19]=s("section",{class:"paper-section-head paper-wrap",id:"about"},[s("div",null,[s("div",{class:"paper-eyebrow"},"What you get"),s("h2",null,[y("Anonymize, review, "),s("em",null,"manage.")])]),s("p",null," Every mirror is read-only and passes through the same filter, from the README to a PDF's link targets. Monitor it, update it, or remove it the day the decision is out. ")],-1)),s("section",yA,[s("div",gA,[(l(!0),d(Y,null,ne(e.features,(o,r)=>(l(),d("div",{class:O(["paper-feature",{"is-on":e.feature===o?.key}]),key:o?.key},[s("button",{type:"button",class:"paper-feature-tab",role:"tab",onClick:n=>e.selectFeature(o.key),onKeydown:n=>e.featureKeydown(n,r),id:"feature-tab-"+o?.key,"aria-controls":"feature-panel-"+o?.key,"aria-selected":e.feature===o?.key,tabindex:e.feature===o?.key?0:-1},[s("span",wA,c(o?.num)+" \xB7 "+c(o?.eyebrow),1),s("span",kA,[y(c(o?.title)+" ",1),s("em",null,c(o?.accent),1)])],40,bA),s("div",_A,[s("span",EA,[y(c(o?.title)+" ",1),s("em",null,c(o?.accent),1)]),s("p",null,c(o?.text),1),s("a",{class:"paper-link-arrow",href:e.safeUrl(e.featureHref(o)),target:e.featureTarget(o)},c(o?.cta)+" \u2192",9,CA)])],2))),128))]),s("div",NA,[(l(!0),d(Y,null,ne(e.features,(o,r)=>E((l(),d("div",{class:"paper-feature-panel",role:"tabpanel",key:o?.key,id:"feature-panel-"+o?.key,"aria-labelledby":"feature-tab-"+o?.key},[s("div",DA,[s("div",RA,[t[8]||(t[8]=s("span",{class:"dots"},[s("i"),s("i"),s("i")],-1)),s("span",TA,c(o?.url),1)]),s("div",{class:O("paper-crop paper-crop-"+o?.key)},[s("img",{loading:"lazy",width:"2880",height:"1800",src:e.safeUrl(o?.img),alt:o?.alt},null,8,OA)],2)])],8,SA)),[[B,e.feature===o?.key]])),128))])]),m(" FAQ teaser "),t[20]||(t[20]=ge('<section class="paper-qa paper-wrap" aria-labelledby="qa-heading"><div><div class="paper-eyebrow">Before you sign in</div><h2 id="qa-heading">The questions that <em>come up most.</em></h2><a class="paper-link-arrow" href="/faq">Read the full FAQ \u2192</a></div><div><div class="q"><a href="/faq#howWork">Why does GitHub ask for write access at sign-in?</a><p> GitHub's OAuth scopes have no read-only option for private repositories. Anonymous GitHub only ever reads your repositories; it never pushes, modifies, or deletes anything. </p></div><div class="q"><a href="/faq#formats">Which file formats are supported?</a><p> Source code with syntax highlighting, Markdown, Jupyter notebooks, PDFs, images, and GitHub Pages sites. Everything passes through the same redaction filter. </p></div><div class="q"><a href="/faq#expiration">What happens when an anonymized repository expires?</a><p> You choose: the mirror is removed, or visitors are redirected to the original GitHub repository once the review is over. </p></div></div></section>',1)),s("footer",AA,[s("div",IA,[t[12]||(t[12]=s("div",{class:"paper-footer-brand"},[s("div",{class:"paper-footer-mark"},[y("Anonymous "),s("em",null,"GitHub")]),s("p",{class:"paper-footer-tag"}," A read-only, identity-stripped mirror of your repository, built for double-blind peer review. ")],-1)),s("div",VA,[t[9]||(t[9]=s("div",{class:"paper-footer-head"},"Product",-1)),t[10]||(t[10]=s("a",{href:"/anonymize"},"Anonymize",-1)),e.user?(l(),d("a",PA,"My work")):m("v-if",!0),e.user?(l(),d("a",qA,"Conferences")):m("v-if",!0),t[11]||(t[11]=s("a",{href:"/faq"},"FAQ",-1))]),t[13]||(t[13]=ge('<div class="paper-footer-col"><div class="paper-footer-head">Project</div><a href="https://github.com/tdurieux/anonymous_github/" target="_blank" rel="noopener">Source code</a><a href="https://github.com/tdurieux/anonymous_github/issues/new?template=issue_report.yml" target="_blank" rel="noopener">Report a bug</a><a href="https://github.com/sponsors/tdurieux/" target="_blank" rel="noopener">Sponsor</a></div><div class="paper-footer-col"><div class="paper-footer-head">Contact</div><a href="mailto:tdurieux@anonymous.4open.science">Email maintainer</a><a href="https://github.com/tdurieux" target="_blank" rel="noopener">@tdurieux</a></div>',2))]),t[15]||(t[15]=s("div",{class:"paper-footer-rule"},null,-1)),s("div",MA,[s("span",null,"\xA9 "+c(e.year||2026)+" Anonymous GitHub \xB7 MIT licensed",1),t[14]||(t[14]=s("span",{class:"paper-footer-meta"},"Built for reviewers, by researchers.",-1))])])])}var $A={class:"paper-empty"},LA={class:"paper-empty-inner"},UA={key:0,class:"paper-eyebrow"},FA={key:1,class:"paper-eyebrow"},zA={key:2,class:"paper-empty-title"},HA=["textContent"];function fl(e,t){return l(),d("div",$A,[s("div",LA,[e.error?m("v-if",!0):(l(),d("div",UA,"Working")),e.error?(l(),d("div",FA,"Error")):m("v-if",!0),e.error?m("v-if",!0):(l(),d("h1",zA,[...t[0]||(t[0]=[y(" Loading",-1),s("span",{class:"dot-anim"},"\u2026",-1)])])),e.error?(l(),d("h1",{key:3,class:"paper-empty-title",textContent:c(e.fmt.translate(e.error))},null,8,HA)):m("v-if",!0)])])}var BA={class:"container paper-page paper-settings"},GA={class:"paper-crumbs"},jA={class:"here"},WA={class:"paper-page-title"},KA={class:"paper-settings-body"},YA={class:"paper-settings-toc"},JA={href:"#conf-billing"},QA={class:"form needs-validation paper-settings-main",name:"conference",novalidate:""},XA={id:"conf-basics",class:"paper-settings-section"},ZA={class:"form-group"},xA={class:"invalid-feedback"},eI={class:"invalid-feedback"},tI={class:"form-group"},sI={class:"invalid-feedback"},nI={class:"form-group"},oI={class:"invalid-feedback"},rI={class:"invalid-feedback"},iI={id:"conf-window",class:"paper-settings-section"},aI={class:"form-grid-2"},lI={class:"form-group"},dI={class:"invalid-feedback"},uI={class:"invalid-feedback"},cI={class:"form-group"},pI={class:"invalid-feedback"},fI={class:"invalid-feedback"},mI={id:"conf-rendering",class:"paper-settings-section"},hI={class:"form-check"},vI={class:"form-check-input",type:"checkbox",id:"link",name:"link"},yI={class:"form-check"},gI={class:"form-check-input",type:"checkbox",id:"image",name:"image"},bI={class:"form-check"},wI={class:"form-check-input",type:"checkbox",id:"pdf",name:"pdf"},kI={class:"form-check"},_I={class:"form-check-input",type:"checkbox",id:"notebook",name:"notebook"},EI={id:"conf-features",class:"paper-settings-section"},CI={class:"form-check"},NI={class:"form-check-input",type:"checkbox",id:"update",name:"update"},SI={class:"form-check"},DI={class:"form-check-input",type:"checkbox",id:"page",name:"page"},RI={id:"conf-plan",class:"paper-settings-section"},TI={class:"paper-plan-grid"},OI=["value"],AI=["textContent"],II={class:"paper-plan-price"},VI=["innerHTML"],PI={key:0,id:"conf-billing",class:"paper-settings-section"},qI={class:"form-group"},MI={class:"form-group"},$I={class:"form-group"},LI={class:"form-group"},UI={class:"form-grid-3"},FI={class:"form-group"},zI={class:"form-group"},HI={class:"form-group"},BI={class:"form-group"},GI={class:"paper-settings-footer"},jI=["textContent"],WI=["textContent"];function ml(e,t){let o=be("paper-scrollspy"),r=be("field"),n=be("form");return l(),d("div",BA,[s("div",GA,[t[1]||(t[1]=s("a",{href:"/dashboard"},"My work",-1)),t[2]||(t[2]=y(" \xA0/\xA0 ",-1)),t[3]||(t[3]=s("a",{href:"/conferences"},"Conferences",-1)),t[4]||(t[4]=y(" \xA0/\xA0 ",-1)),s("span",jA,c(e.editionMode?"Edit":"New"),1)]),s("h1",WA,[y(c(e.editionMode?"Edit":"Create a")+" ",1),t[5]||(t[5]=s("em",null,"conference",-1))]),t[42]||(t[42]=s("p",{class:"paper-page-lede"}," Give chairs access to every anonymization submitted to a venue, and lift author quotas during the review window. ",-1)),s("div",KA,[E((l(),d("aside",YA,[t[7]||(t[7]=s("div",{class:"paper-settings-toc-head"},"On this page",-1)),s("nav",null,[t[6]||(t[6]=ge('<a href="#conf-basics">Basics</a><a href="#conf-window">Review window</a><a href="#conf-rendering">Rendering defaults</a><a href="#conf-features">Features</a><a href="#conf-plan">Plan</a>',5)),E(s("a",JA,"Billing",512),[[B,e.plan?.pricePerRepo>0]])])])),[[o]]),E((l(),d("form",QA,[s("section",XA,[t[12]||(t[12]=s("div",{class:"paper-section-eyebrow"},"Basics",-1)),s("div",ZA,[t[8]||(t[8]=s("label",{class:"paper-field-label",for:"name"},"Conference name",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.name?.invalid&&(e.conference?.name?.touched||e.conference?.submitted)}]),name:"name",id:"name",required:"",placeholder:"e.g. International Conference on Software Engineering"},null,2),[[r,{state:e.viewState,set:i=>{e.options.name=i},value:e.options?.name,form:"conference",options:{}}]]),E(s("div",xA," The name of the conference is invalid. ",512),[[B,e.conference?.name?.errors?.invalid]]),E(s("div",eI," The name of the conference is required. ",512),[[B,e.conference?.name?.errors?.required]])]),s("div",tI,[t[9]||(t[9]=s("label",{class:"paper-field-label",for:"url"},"Website",-1)),E(s("input",{type:"url",class:O(["form-control",{"is-invalid":e.conference?.url?.invalid&&(e.conference?.url?.touched||e.conference?.submitted)}]),name:"url",id:"url",placeholder:"https://example.org"},null,2),[[r,{state:e.viewState,set:i=>{e.options.url=i},value:e.options?.url,form:"conference",options:{}}]]),E(s("div",sI," The url of the conference is invalid. ",512),[[B,e.conference?.url?.errors?.invalid]])]),s("div",nI,[t[10]||(t[10]=s("label",{class:"paper-field-label",for:"conferenceID"},"Conference ID",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.conferenceID?.invalid&&(e.conference?.conferenceID?.touched||e.conference?.submitted)}]),name:"conferenceID",id:"conferenceID",required:"",pattern:"[a-zA-Z0-9\\-_]{3,10}",placeholder:"ICSE26"},null,2),[[r,{state:e.viewState,set:i=>{e.options.conferenceID=i},value:e.options?.conferenceID,form:"conference",options:{}}]]),t[11]||(t[11]=s("small",{class:"form-text text-muted"},[y("3\u201310 characters, letters, numbers, "),s("code",null,"-"),y(" and "),s("code",null,"_"),y(". Authors reference this when they anonymize.")],-1)),E(s("div",{class:"invalid-feedback"}," The conference ID '"+c(e.options?.conferenceID)+"' is already used. ",513),[[B,e.conference?.conferenceID?.errors?.used]]),E(s("div",oI," The conference ID is required. ",512),[[B,e.conference?.conferenceID?.errors?.required]]),E(s("div",rI," The format of the conference ID is incorrect ([a-zA-Z0-9-_]{3,10}). ",512),[[B,e.conference?.conferenceID?.errors?.pattern]])])]),s("section",iI,[t[17]||(t[17]=s("div",{class:"paper-section-eyebrow"},"Review window",-1)),s("div",aI,[s("div",lI,[t[13]||(t[13]=s("label",{class:"paper-field-label",for:"startDate"},"Start date",-1)),E(s("input",{type:"date",class:O(["form-control",{"is-invalid":e.conference?.startDate?.invalid&&(e.conference?.startDate?.touched||e.conference?.submitted)}]),name:"startDate",id:"startDate",required:""},null,2),[[r,{state:e.viewState,set:i=>{e.options.startDate=i},value:e.options?.startDate,form:"conference",options:{}}]]),t[14]||(t[14]=s("small",{class:"form-text text-muted"},"Beginning of the review process.",-1)),E(s("div",dI," Start date is required. ",512),[[B,e.conference?.startDate?.errors?.required]]),E(s("div",uI," Start date must be before end date. ",512),[[B,e.conference?.startDate?.errors?.invalid]])]),s("div",cI,[t[15]||(t[15]=s("label",{class:"paper-field-label",for:"endDate"},"End date",-1)),E(s("input",{type:"date",class:O(["form-control",{"is-invalid":e.conference?.endDate?.invalid&&(e.conference?.endDate?.touched||e.conference?.submitted)}]),name:"endDate",id:"endDate",required:""},null,2),[[r,{state:e.viewState,set:i=>{e.options.endDate=i},value:e.options?.endDate,form:"conference",options:{}}]]),t[16]||(t[16]=s("small",{class:"form-text text-muted"},"All repositories expire on this date.",-1)),E(s("div",pI," End date is required. ",512),[[B,e.conference?.endDate?.errors?.required]]),E(s("div",fI," End date is invalid. ",512),[[B,e.conference?.endDate?.errors?.invalid]])])])]),s("section",mI,[t[25]||(t[25]=s("div",{class:"paper-section-eyebrow"},"Rendering defaults",-1)),s("div",hI,[E(s("input",vI,null,512),[[r,{state:e.viewState,set:i=>{e.options.options.link=i},value:e.options?.options?.link,form:"conference",options:{}}]]),t[18]||(t[18]=s("label",{class:"form-check-label",for:"link"},"Keep links",-1)),t[19]||(t[19]=s("small",{class:"form-text text-muted"},"Keep or remove all links from text files.",-1))]),s("div",yI,[E(s("input",gI,null,512),[[r,{state:e.viewState,set:i=>{e.options.options.image=i},value:e.options?.options?.image,form:"conference",options:{}}]]),t[20]||(t[20]=s("label",{class:"form-check-label",for:"image"},"Display images",-1)),t[21]||(t[21]=s("small",{class:"form-text text-muted"},"Images are not anonymized.",-1))]),s("div",bI,[E(s("input",wI,null,512),[[r,{state:e.viewState,set:i=>{e.options.options.pdf=i},value:e.options?.options?.pdf,form:"conference",options:{}}]]),t[22]||(t[22]=s("label",{class:"form-check-label",for:"pdf"},"Display PDFs",-1)),t[23]||(t[23]=s("small",{class:"form-text text-muted"},"PDFs are not anonymized.",-1))]),s("div",kI,[E(s("input",_I,null,512),[[r,{state:e.viewState,set:i=>{e.options.options.notebook=i},value:e.options?.options?.notebook,form:"conference",options:{}}]]),t[24]||(t[24]=s("label",{class:"form-check-label",for:"notebook"},"Display Notebooks",-1))])]),s("section",EI,[t[30]||(t[30]=s("div",{class:"paper-section-eyebrow"},"Features",-1)),s("div",CI,[E(s("input",NI,null,512),[[r,{state:e.viewState,set:i=>{e.options.options.update=i},value:e.options?.options?.update,form:"conference",options:{}}]]),t[26]||(t[26]=s("label",{class:"form-check-label",for:"update"},"Auto-update from GitHub",-1)),t[27]||(t[27]=s("small",{class:"form-text text-muted"},"Pull the latest commit automatically (hourly maximum).",-1))]),s("div",SI,[E(s("input",DI,null,512),[[r,{state:e.viewState,set:i=>{e.options.options.page=i},value:e.options?.options?.page,form:"conference",options:{}}]]),t[28]||(t[28]=s("label",{class:"form-check-label",for:"page"},"GitHub Pages",-1)),t[29]||(t[29]=s("small",{class:"form-text text-muted"},"Enable anonymized GitHub pages.",-1))])]),s("section",RI,[t[32]||(t[32]=s("div",{class:"paper-section-eyebrow"},"Plan",-1)),t[33]||(t[33]=s("p",{class:"paper-section-copy"},"Billed per repository per month, prorated by the day for as long as a repository stays in the conference.",-1)),s("div",TI,[(l(!0),d(Y,null,ne(e.plans,(i,a)=>(l(),d("label",{class:O(["paper-plan-card",{selected:e.options?.plan?.planID==i?.id}])},[E(s("input",{type:"radio",name:"planPicker",value:i?.id},null,8,OI),[[r,{state:e.viewState,set:u=>{e.options.plan.planID=u},value:e.options?.plan?.planID,form:"conference",options:{}}]]),s("div",{class:"paper-plan-head",textContent:c(i?.name)},null,8,AI),s("div",II,[y(c(e.fmt?.number(i?.pricePerRepo))+"\u20AC ",1),t[31]||(t[31]=s("span",{class:"paper-plan-per"},"/ repo / month",-1))]),s("div",{class:"paper-plan-desc",innerHTML:e.sanitize(i?.description)},null,8,VI)],2))),256))])]),e.plan?.pricePerRepo>0?(l(),d("section",PI,[t[41]||(t[41]=s("div",{class:"paper-section-eyebrow"},"Billing",-1)),s("div",qI,[t[34]||(t[34]=s("label",{class:"paper-field-label",for:"billing_name"},"Name",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.billing_name?.invalid&&(e.conference?.billing_name?.touched||e.conference?.submitted)}]),name:"billing_name",id:"billing_name",required:"",placeholder:"First & last name"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.name=i},value:e.options?.billing?.name,form:"conference",options:{}}]])]),s("div",MI,[t[35]||(t[35]=s("label",{class:"paper-field-label",for:"email"},"Email",-1)),E(s("input",{type:"email",class:O(["form-control",{"is-invalid":e.conference?.email?.invalid&&(e.conference?.email?.touched||e.conference?.submitted)}]),name:"email",id:"email",required:"",placeholder:"you@example.org"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.email=i},value:e.options?.billing?.email,form:"conference",options:{}}]])]),s("div",$I,[t[36]||(t[36]=s("label",{class:"paper-field-label",for:"inputAddress"},"Address",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.inputAddress?.invalid&&(e.conference?.inputAddress?.touched||e.conference?.submitted)}]),name:"inputAddress",id:"inputAddress",required:"",placeholder:"1234 Main St"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.address=i},value:e.options?.billing?.address,form:"conference",options:{}}]])]),s("div",LI,[E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.inputAddress2?.invalid&&(e.conference?.inputAddress2?.touched||e.conference?.submitted)}]),name:"inputAddress2",id:"inputAddress2",placeholder:"Apartment, studio, or floor"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.address2=i},value:e.options?.billing?.address2,form:"conference",options:{}}]])]),s("div",UI,[s("div",FI,[t[37]||(t[37]=s("label",{class:"paper-field-label",for:"city"},"City",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.city?.invalid&&(e.conference?.city?.touched||e.conference?.submitted)}]),name:"city",id:"city",required:"",placeholder:"City"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.city=i},value:e.options?.billing?.city,form:"conference",options:{}}]])]),s("div",zI,[t[38]||(t[38]=s("label",{class:"paper-field-label",for:"country"},"Country",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.country?.invalid&&(e.conference?.country?.touched||e.conference?.submitted)}]),name:"country",id:"country",required:"",placeholder:"Country"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.country=i},value:e.options?.billing?.country,form:"conference",options:{}}]])]),s("div",HI,[t[39]||(t[39]=s("label",{class:"paper-field-label",for:"zip"},"Zip",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.zip?.invalid&&(e.conference?.zip?.touched||e.conference?.submitted)}]),name:"zip",id:"zip",required:"",placeholder:"Zip"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.zip=i},value:e.options?.billing?.zip,form:"conference",options:{}}]])])]),s("div",BI,[t[40]||(t[40]=s("label",{class:"paper-field-label",for:"vat"},"VAT number",-1)),E(s("input",{type:"text",class:O(["form-control",{"is-invalid":e.conference?.vat?.invalid&&(e.conference?.vat?.touched||e.conference?.submitted)}]),name:"vat",id:"vat",placeholder:"VAT Number"},null,2),[[r,{state:e.viewState,set:i=>{e.options.billing.vat=i},value:e.options?.billing?.vat,form:"conference",options:{}}]])])])):m("v-if",!0),s("div",GI,[e.error?(l(),d("div",{key:0,class:"alert alert-danger",role:"alert",textContent:c(e.error)},null,8,jI)):m("v-if",!0),e.message?(l(),d("div",{key:1,class:"alert alert-success",role:"alert",textContent:c(e.message)},null,8,WI)):m("v-if",!0),s("button",{id:"send",type:"submit",class:"btn btn-ink",onClick:t[0]||(t[0]=we(i=>e.submitForm(i,()=>{e.submit(i)}),["prevent"]))},c(e.editionMode?"Update":"Create")+" conference ",1)])])),[[n,e.viewState]])])])}var KI={key:0},YI=["innerHTML"],JI={key:3},QI=["src"],XI=["src"],ZI={key:7},xI={controls:"controls"},eV=["src"],tV={key:8},sV={key:9,class:"file-error container d-flex h-100"},nV={class:"paper-ratelimit-card m-auto",style:{"max-width":"520px"}},oV={class:"paper-error-msg"},rV={key:10,class:"file-error container d-flex h-100"},iV=["textContent"],aV={key:11,class:"file-error container d-flex h-100"},lV={key:12,class:"file-error container d-flex h-100"},dV={key:13,class:"file-error container d-flex h-100"},uV={key:14,class:"file-error container d-flex h-100"},cV={class:"paper-empty-title m-auto"},pV=["href"];function hl(e,t){let o=et("html-doc"),r=et("pdfviewer"),n=et("notebook"),i=be("code-editor");return l(),d(Y,null,[e.type=="text"?E((l(),d("div",KI,null,512)),[[i,{content:e.content,options:e.aceOption}]]):m("v-if",!0),e.type=="html"?(l(),d("div",{key:1,class:"file-content markdown-body",innerHTML:e.sanitize(e.content)},null,8,YI)):m("v-if",!0),e.type=="html-doc"&&!e.showSource&&e.content!=null?(l(),ks(o,{key:2,content:e.content,"base-url":e.fileBaseUrl,"allow-scripts":e.allowScripts},null,8,["content","base-url","allow-scripts"])):m("v-if",!0),(e.type=="code"||e.type=="html-doc"&&e.showSource)&&e.content!=null?E((l(),d("div",JI,null,512)),[[i,{content:e.content,options:e.aceOption}]]):m("v-if",!0),e.type=="image"?(l(),d("img",{key:4,class:"image-content",src:e.safeUrl(e.url)},null,8,QI)):m("v-if",!0),e.type=="media"?(l(),d("iframe",{key:5,class:"h-100 overflow-auto w-100 b-0",src:e.safeUrl(e.url)},null,8,XI)):m("v-if",!0),e.type=="pdf"?(l(),ks(r,{key:6,src:e.safeUrl(e.url)},null,8,["src"])):m("v-if",!0),e.type=="audio"?(l(),d("div",ZI,[s("audio",xI,[s("source",{src:e.safeUrl(e.url)},null,8,eV)])])):m("v-if",!0),e.type=="IPython"?(l(),d("div",tV,[De(n,{file:e.url,content:e.content},null,8,["file","content"])])):m("v-if",!0),e.type=="rate_limited"?(l(),d("div",sV,[s("div",nV,[t[2]||(t[2]=s("div",{class:"paper-ratelimit-head"},[s("i",{class:"fas fa-hourglass-half"}),s("div",null,[s("div",{class:"paper-error-eyebrow"},"Temporarily paused"),s("div",{class:"paper-error-title"},"GitHub API rate limit reached")])],-1)),s("p",oV,[t[0]||(t[0]=y("This repository will be available in ",-1)),s("strong",null,c(e.rateLimitCountdown),1),t[1]||(t[1]=y(". The page will reload automatically.",-1))])])])):m("v-if",!0),e.type=="error"?(l(),d("div",rV,[s("h1",{class:"paper-empty-title m-auto",textContent:c(e.fmt.translate("ERRORS."+e.content))},null,8,iV)])):m("v-if",!0),e.type=="loading"&&!e.error?(l(),d("div",aV,[...t[3]||(t[3]=[s("h1",{class:"paper-empty-title m-auto"},"Loading\u2026",-1)])])):m("v-if",!0),e.type=="empty"?(l(),d("div",lV,[...t[4]||(t[4]=[s("h1",{class:"paper-empty-title m-auto"},[y("Empty "),s("em",null,"repository"),y(".")],-1)])])):m("v-if",!0),e.content==null&&e.type!="empty"?(l(),d("div",dV,[...t[5]||(t[5]=[s("h1",{class:"paper-empty-title m-auto"},[y("Empty "),s("em",null,"file"),y(".")],-1)])])):m("v-if",!0),e.type=="binary"?(l(),d("div",uV,[s("h1",cV,[t[6]||(t[6]=y("Unsupported ",-1)),t[7]||(t[7]=s("em",null,"binary file",-1)),t[8]||(t[8]=y(". You can ",-1)),s("a",{target:"_blank",href:e.safeUrl(e.url+"&download=true")},"download it",8,pV),t[9]||(t[9]=y(".",-1))])])):m("v-if",!0)],64)}var fV={class:"container page dashboard-page paper-page"},mV={class:"row"},hV={class:"w-100"},vV={class:"w-100","aria-label":"Pull Requests","accept-charset":"UTF-8"},yV={class:"d-flex flex-column flex-md-row align-items-md-center",style:{gap:"8px"}},gV={class:"flex-grow-1"},bV={type:"search",id:"search",class:"form-control","aria-label":"Find a pull request...",placeholder:"Find a pull request...",autocomplete:"off"},wV={class:"d-flex flex-wrap",style:{gap:"6px"}},kV={class:"dropdown"},_V={class:"dropdown-menu","aria-labelledby":"dropdownSort"},EV={class:"form-check dropdown-item"},CV={class:"form-check-input",type:"radio",name:"sort",id:"sortFullName",value:"fullName"},NV={class:"form-check dropdown-item"},SV={class:"form-check-input",type:"radio",name:"sort",id:"sortAnonymizeDate",value:"-anonymizeDate"},DV={class:"form-check dropdown-item"},RV={class:"form-check-input",type:"radio",name:"sort",id:"sortStatus",value:"-status"},TV={class:"form-check dropdown-item"},OV={class:"form-check-input",type:"radio",name:"sort",id:"sortLastView",value:"-lastView"},AV={class:"form-check dropdown-item"},IV={class:"form-check-input",type:"radio",name:"sort",id:"sortPageView",value:"-pageView"},VV={class:"dropdown"},PV={class:"dropdown-menu","aria-labelledby":"dropdownStatus"},qV={class:"form-check dropdown-item"},MV={class:"form-check-input",type:"checkbox",name:"sort",id:"statusReady",value:"ready"},$V={class:"form-check dropdown-item"},LV={class:"form-check-input",type:"checkbox",name:"sort",id:"statusExpired",value:"expired"},UV={class:"form-check dropdown-item"},FV={class:"form-check-input",type:"checkbox",name:"sort",id:"statusRemoved",value:"removed"},zV={class:"d-flex flex-wrap mt-2",style:{gap:"6px"}},HV={class:"filter-chip"},BV=["onClick"],GV={class:"repo-list w-100"},jV={class:"repo-list-item-content"},WV={class:"repo-list-item-main"},KV={class:"repo-list-item-header"},YV=["textContent","href"],JV=["textContent"],QV=["textContent"],XV={class:"repo-source"},ZV=["href"],xV={class:"repo-date"},eP={class:"repo-meta"},tP={key:0,title:"Conference"},sP=["title"],nP=["title"],oP=["title"],rP={key:1},iP={class:"repo-list-item-actions"},aP={class:"dropdown"},lP={class:"dropdown-menu dropdown-menu-right"},dP=["href"],uP=["onClick"],cP=["onClick"],pP=["onClick"],fP=["href"],mP={key:0,class:"repo-list-empty"};function vl(e,t){let o=be("field"),r=be("form");return l(),d("div",fV,[s("div",mV,[s("div",hV,[t[12]||(t[12]=ge('<div class="paper-crumbs">My work \xA0/\xA0 <span class="here">Pull requests</span></div><div class="d-flex align-items-end justify-content-between flex-wrap" style="gap:12px;"><div><h1 class="paper-page-title">Anonymized <em>pull requests</em></h1><p class="paper-page-lede">Track PR mirrors you\u2019ve created and their reviewer traffic.</p></div><div class="d-flex flex-wrap" style="gap:6px;"><a href="/anonymize" class="btn btn-ink"><i class="fa fa-plus-circle mr-1" aria-hidden="true"></i> Anonymize Repo </a><a href="/pull-request-anonymize" class="btn btn-ink"><i class="fa fa-plus-circle mr-1" aria-hidden="true"></i> Anonymize PR </a><a title="Claim the ownership of an existing anonymized repository." data-toggle="tooltip" data-placement="bottom" href="/claim" class="btn"> Claim </a></div></div>',2)),m(" Search + filters row "),E((l(),d("form",vV,[s("div",yV,[s("div",gV,[E(s("input",bV,null,512),[[o,{state:e.viewState,set:n=>{e.search=n},value:e.search,form:null,options:{}}]])]),s("div",wV,[s("div",kV,[t[6]||(t[6]=s("button",{class:"btn btn-sm dropdown-toggle",type:"button",id:"dropdownSort","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}," Sort ",-1)),s("div",_V,[t[5]||(t[5]=s("h6",{class:"dropdown-header"},"Select order",-1)),s("div",EV,[E(s("input",CV,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[0]||(t[0]=s("label",{class:"form-check-label",for:"sortFullName"},"Pull Request",-1))]),s("div",NV,[E(s("input",SV,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[1]||(t[1]=s("label",{class:"form-check-label",for:"sortAnonymizeDate"},"Anonymize Date",-1))]),s("div",DV,[E(s("input",RV,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[2]||(t[2]=s("label",{class:"form-check-label",for:"sortStatus"},"Status",-1))]),s("div",TV,[E(s("input",OV,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[3]||(t[3]=s("label",{class:"form-check-label",for:"sortLastView"},"Last View",-1))]),s("div",AV,[E(s("input",IV,null,512),[[o,{state:e.viewState,set:n=>{e.orderBy=n},value:e.orderBy,form:null,options:{}}]]),t[4]||(t[4]=s("label",{class:"form-check-label",for:"sortPageView"},"Page View",-1))])])]),s("div",VV,[t[11]||(t[11]=s("button",{class:"btn btn-sm dropdown-toggle",type:"button",id:"dropdownStatus","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}," Status ",-1)),s("div",PV,[t[10]||(t[10]=s("h6",{class:"dropdown-header"},"Select status",-1)),s("div",qV,[E(s("input",MV,null,512),[[o,{state:e.viewState,set:n=>{e.filters.status.ready=n},value:e.filters?.status?.ready,form:null,options:{}}]]),t[7]||(t[7]=s("label",{class:"form-check-label",for:"statusReady"},"Ready",-1))]),s("div",$V,[E(s("input",LV,null,512),[[o,{state:e.viewState,set:n=>{e.filters.status.expired=n},value:e.filters?.status?.expired,form:null,options:{}}]]),t[8]||(t[8]=s("label",{class:"form-check-label",for:"statusExpired"},"Expired",-1))]),s("div",UV,[E(s("input",FV,null,512),[[o,{state:e.viewState,set:n=>{e.filters.status.removed=n},value:e.filters?.status?.removed,form:null,options:{}}]]),t[9]||(t[9]=s("label",{class:"form-check-label",for:"statusRemoved"},"Removed",-1))])])])])])])),[[r,e.viewState]]),m(" Active filter chips "),E(s("div",zV,[(l(!0),d(Y,null,ne(e.filters?.status,(n,i,a)=>E((l(),d("span",HV,[y(c(e.fmt?.title(i))+" ",1),s("button",{type:"button",class:"filter-chip-close","aria-label":"Remove filter",onClick:u=>{e.filters.status[i]=!0}}," \xD7 ",8,BV)],512)),[[B,!n]])),256))],512),[[B,e.filters?.status?.ready===!1||e.filters?.status?.expired===!1||e.filters?.status?.removed===!1]])]),m(" Pull request list "),s("ul",GV,[(l(!0),d(Y,null,ne(e.filteredPullRequests,(n,i)=>(l(),d("li",{class:O(["repo-list-item",{"repo-inactive":n?.status=="expired"||n?.status=="removed"||n?.status=="error"}])},[s("div",jV,[s("div",WV,[s("div",KV,[s("a",{class:"repo-name",textContent:c(n?.pullRequestId),href:e.safeUrl("/pr/"+n?.pullRequestId)},null,8,YV),s("span",{class:O(["status-badge",{"status-removed":n?.status=="removed"||n?.status=="expired"||n?.status=="removing"||n?.status=="expiring","status-preparing":n?.status=="preparing"||n?.status=="download","status-ready":n?.status=="ready","status-error":n?.status=="error"}])},[s("span",{textContent:c(e.fmt?.title(n?.status))},null,8,JV),n?.status=="error"?(l(),d("span",{key:0,textContent:c(": "+n?.statusMessage)},null,8,QV)):m("v-if",!0)],2)]),s("div",XV,[s("span",null,[t[13]||(t[13]=s("i",{class:"fab fa-github","aria-hidden":"true"},null,-1)),s("a",{href:e.safeUrl("https://github.com/"+n?.source?.repositoryFullName+"/pull/"+n?.source?.pullRequestId)},c(n?.source?.repositoryFullName)+"#"+c(n?.source?.pullRequestId),9,ZV)]),s("span",{class:O(["status-badge",{"status-ready":n?.merged,"status-removed":n?.state=="open","status-error":n?.state=="closed"&&!n?.merged}]),style:{"font-size":"10px"}},c(e.fmt?.title(n?.merged?"merged":n?.state)),3),s("span",xV,"anonymized "+c(e.fmt?.humanTime(n?.anonymizeDate)),1)])]),s("div",eP,[n?.conference?(l(),d("span",tP,[t[14]||(t[14]=s("i",{class:"fas fa-chalkboard-teacher"},null,-1)),y(" "+c(n?.conference),1)])):m("v-if",!0),s("span",{"data-toggle":"tooltip","data-placement":"bottom",title:"Terms: "+n?.options?.terms?.join(", ")},[t[15]||(t[15]=s("i",{class:"fas fa-shield-alt"},null,-1)),y(" "+c(e.fmt?.number(n?.options?.terms?.length)),1)],8,sP),s("span",{"data-toggle":"tooltip","data-placement":"bottom",title:"Views: "+e.fmt?.number(n?.pageView)},[t[16]||(t[16]=s("i",{class:"far fa-eye"},null,-1)),y(" "+c(e.fmt?.number(n?.pageView)),1)],8,nP),s("span",{"data-toggle":"tooltip","data-placement":"bottom",title:"Last view: "+e.fmt?.date(n?.lastView)},[t[17]||(t[17]=s("i",{class:"far fa-calendar-alt"},null,-1)),y(" "+c(e.fmt?.humanTime(n?.lastView)),1)],8,oP),n?.options?.expirationMode!="never"&&n?.status=="ready"?(l(),d("span",rP,[t[18]||(t[18]=s("i",{class:"far fa-clock"},null,-1)),y(" Expire: "+c(e.fmt?.humanTime(n?.options?.expirationDate)),1)])):m("v-if",!0)])]),s("div",iP,[s("div",aP,[t[24]||(t[24]=s("button",{class:"btn btn-sm dropdown-toggle",type:"button","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false"}," Actions ",-1)),s("div",lP,[s("a",{class:"dropdown-item",href:e.safeUrl("/pull-request-anonymize/"+n?.pullRequestId)},[...t[19]||(t[19]=[s("i",{class:"far fa-edit","aria-hidden":"true"},null,-1),y(" Edit ",-1)])],8,dP),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.updatePullRequest(n),["prevent"])},[...t[20]||(t[20]=[s("i",{class:"fas fa-sync"},null,-1),y(" Force update ",-1)])],8,uP),[[B,n?.status=="ready"||n?.status=="error"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.updatePullRequest(n),["prevent"])},[...t[21]||(t[21]=[s("i",{class:"fas fa-check-circle"},null,-1),y(" Enable ",-1)])],8,cP),[[B,n?.status=="removed"]]),E(s("a",{class:"dropdown-item",href:"#",onClick:we(a=>e.removePullRequest(n),["prevent"])},[...t[22]||(t[22]=[s("i",{class:"fas fa-trash-alt"},null,-1),y(" Remove ",-1)])],8,pP),[[B,n?.status=="ready"]]),s("a",{class:"dropdown-item",href:e.safeUrl("/pr/"+n?.pullRequestId+"/")},[...t[23]||(t[23]=[s("i",{class:"fa fa-eye","aria-hidden":"true"},null,-1),y(" View PR ",-1)])],8,fP)])])])],2))),256)),e.filteredPullRequests?.length==0?(l(),d("li",mP,[...t[25]||(t[25]=[s("i",{class:"fas fa-inbox"},null,-1),s("span",null,"No pull requests to display.",-1)])])):m("v-if",!0)])])])}var hP={class:"container paper-page paper-settings"},vP={class:"paper-settings-body"},yP={class:"paper-settings-toc"},gP={class:"paper-settings-main"},bP={id:"settings-quota",class:"paper-settings-section"},wP={key:0,class:"quota-row"},kP={class:"quota-item"},_P={class:"quota-header"},EP={class:"quota-label"},CP={key:0,class:"quota-value"},NP={key:0},SP={key:1,class:"quota-unlimited-tag"},DP={key:1,class:"quota-value"},RP={key:0},TP={key:1,class:"quota-unlimited-tag"},OP=["aria-label","aria-valuenow","aria-valuemax","aria-valuetext"],AP={key:1,class:"quota-row","aria-hidden":"true"},IP={class:"quota-item"},VP={id:"settings-terms",class:"paper-settings-section"},PP={class:"form-group"},qP={class:"form-control",id:"terms",name:"terms",rows:"4",placeholder:`Jane Smith
|
|
MIT CSAIL
|
|
jane.smith@example.org`},MP={id:"termsHelp",class:"form-text text-muted"},$P={class:"invalid-feedback"},LP={id:"settings-display",class:"paper-settings-section"},UP={class:"form-group paper-check-list"},FP={class:"form-check"},zP={class:"form-check-input",type:"checkbox",id:"link",name:"link"},HP={class:"form-check"},BP={class:"form-check-input",type:"checkbox",id:"image",name:"image"},GP={class:"form-check"},jP={class:"form-check-input",type:"checkbox",id:"pdf",name:"pdf"},WP={class:"form-check"},KP={class:"form-check-input",type:"checkbox",id:"notebook",name:"notebook"},YP={id:"settings-features",class:"paper-settings-section"},JP={class:"form-group paper-check-list"},QP={class:"form-check"},XP={class:"form-check-input",type:"checkbox",id:"page",name:"page"},ZP={class:"form-check"},xP={class:"form-check-input",type:"checkbox",id:"loc",name:"loc"},e3={class:"form-check"},t3={class:"form-check-input",type:"checkbox",id:"update",name:"update"},s3={class:"form-group"},n3={class:"form-control",id:"mode",name:"mode"},o3={class:"form-text text-muted"},r3={id:"settings-expiration",class:"paper-settings-section"},i3={class:"form-group"},a3={class:"form-control",id:"expiration",name:"expiration"},l3={class:"paper-settings-footer"},d3={key:0,class:"paper-inline-alert paper-inline-alert-error",role:"alert"},u3=["textContent"],c3={class:"paper-settings-actions"},p3=["disabled"],f3={key:0,class:"fas fa-check mr-1","aria-hidden":"true"},m3={id:"settings-account",class:"paper-settings-section"},h3={class:"paper-account-card"},v3=["src"],y3={class:"paper-account-identity"},g3={class:"paper-account-name"},b3={class:"paper-danger-zone"},w3={key:0,class:"paper-inline-alert paper-inline-alert-error",role:"alert"},k3=["textContent"],_3=["disabled"];function yl(e,t){let o=be("paper-scrollspy"),r=be("field"),n=be("form");return l(),d("div",hP,[t[48]||(t[48]=ge('<div class="paper-crumbs"><a href="/dashboard">My work</a> \xA0/\xA0 <span class="here">Settings</span></div><h1 class="paper-page-title">Your <em>settings</em></h1><p class="paper-page-lede">Defaults applied to every new anonymization, your quotas, and your account.</p>',3)),s("div",vP,[E((l(),d("aside",yP,[...t[2]||(t[2]=[ge('<div class="paper-settings-toc-head">On this page</div><nav><a href="#settings-quota">Quota</a><a href="#settings-terms">Terms to redact</a><a href="#settings-display">Display</a><a href="#settings-features">Features</a><a href="#settings-expiration">Expiration</a><a href="#settings-account">Account</a></nav>',2)])])),[[o]]),s("div",gP,[m(" Quota: same markup as the dashboard, driven by quotaService "),s("section",bP,[t[4]||(t[4]=s("div",{class:"paper-section-eyebrow"},"Quota",-1)),t[5]||(t[5]=s("p",{class:"paper-section-copy"},"What you are using across all your anonymizations. Conferences can lift these limits during a review window.",-1)),e.quota?(l(),d("div",wP,[(l(),d(Y,null,ne([{key:"repository",label:"Repositories",kind:"count"},{key:"storage",label:"Storage",kind:"bytes"},{key:"file",label:"Files",kind:"count"}],(i,a)=>s("div",kP,[s("div",_P,[s("span",EP,c(i?.label),1),i?.kind==="count"?(l(),d("span",CP,[y(c(e.fmt?.number(e.quota[i?.key].used)),1),e.quota[i?.key].unlimited?m("v-if",!0):(l(),d("span",NP," / "+c(e.fmt?.number(e.quota[i?.key].total)),1)),e.quota[i?.key].unlimited?(l(),d("span",SP,"Unlimited")):m("v-if",!0)])):m("v-if",!0),i?.kind==="bytes"?(l(),d("span",DP,[y(c(e.fmt?.humanFileSize(e.quota[i?.key].used)),1),e.quota[i?.key].unlimited?m("v-if",!0):(l(),d("span",RP," / "+c(e.fmt?.humanFileSize(e.quota[i?.key].total)),1)),e.quota[i?.key].unlimited?(l(),d("span",TP,"Unlimited")):m("v-if",!0)])):m("v-if",!0)]),s("div",{class:O(["quota-track","quota-"+e.quota[i?.key].level]),role:"progressbar","aria-valuemin":"0","aria-label":i?.label+" quota","aria-valuenow":e.quota[i?.key].used,"aria-valuemax":e.quota[i?.key].unlimited?e.quota[i?.key].used:e.quota[i?.key].total,"aria-valuetext":e.quota[i?.key].unlimited?"unlimited":e.fmt.number(e.quota[i?.key].percent,0)+"% used"},[e.quota[i?.key].unlimited?m("v-if",!0):(l(),d("div",{key:0,class:"quota-fill",style:Pe({width:e.quota[i?.key].percent+"%"})},null,4))],10,OP)])),64))])):m("v-if",!0),e.quota?m("v-if",!0):(l(),d("div",AP,[(l(),d(Y,null,ne([1,2,3],(i,a)=>s("div",IP,[...t[3]||(t[3]=[s("div",{class:"quota-header"},[s("span",{class:"skeleton skeleton-line",style:{width:"40%"}}),s("span",{class:"skeleton skeleton-line",style:{width:"25%"}})],-1),s("div",{class:"quota-track"},null,-1)])])),64))]))]),E((l(),d("form",{class:"form needs-validation",name:"defaultsForm",novalidate:"",onSubmit:t[0]||(t[0]=we(i=>e.submitForm(i,()=>{e.saveDefault(i)}),["prevent"]))},[s("section",VP,[t[11]||(t[11]=s("div",{class:"paper-section-eyebrow"},"Terms to redact",-1)),t[12]||(t[12]=s("p",{class:"paper-section-copy"},"Pre-filled in every new anonymization. You can still edit the list per anonymization.",-1)),s("div",PP,[t[10]||(t[10]=s("label",{class:"paper-field-label",for:"terms"},"Default terms",-1)),E(s("textarea",qP,null,512),[[r,{state:e.viewState,set:i=>{e.terms=i},value:e.terms,form:"defaultsForm",options:{debounce:250}}]]),s("small",MP,[t[6]||(t[6]=y(" One term per line (regex allowed). Each match is replaced by ",-1)),s("code",null,c(e.site_options?.ANONYMIZATION_MASK||"XXX")+"-[N]",1),t[7]||(t[7]=y(", or use ",-1)),t[8]||(t[8]=s("code",null,"term=>replacement",-1)),t[9]||(t[9]=y(" to pick your own. ",-1))]),E(s("div",$P," Terms are in an invalid format ",512),[[B,e.defaultsForm?.terms?.errors?.format]])])]),s("section",LP,[t[21]||(t[21]=s("div",{class:"paper-section-eyebrow"},"Display",-1)),t[22]||(t[22]=s("p",{class:"paper-section-copy"},"What reviewers can see inside an anonymized repository.",-1)),s("div",UP,[s("div",FP,[E(s("input",zP,null,512),[[r,{state:e.viewState,set:i=>{e.options.link=i},value:e.options?.link,form:"defaultsForm",options:{}}]]),t[13]||(t[13]=s("label",{class:"form-check-label",for:"link"},"Keep links",-1)),t[14]||(t[14]=s("small",{class:"form-text text-muted"},"Unchecked, every link in text files is removed.",-1))]),s("div",HP,[E(s("input",BP,null,512),[[r,{state:e.viewState,set:i=>{e.options.image=i},value:e.options?.image,form:"defaultsForm",options:{}}]]),t[15]||(t[15]=s("label",{class:"form-check-label",for:"image"},"Display images",-1)),t[16]||(t[16]=s("small",{class:"form-text text-muted"},"Images are shown as is. They are not anonymized.",-1))]),s("div",GP,[E(s("input",jP,null,512),[[r,{state:e.viewState,set:i=>{e.options.pdf=i},value:e.options?.pdf,form:"defaultsForm",options:{}}]]),t[17]||(t[17]=s("label",{class:"form-check-label",for:"pdf"},"Display PDFs",-1)),t[18]||(t[18]=s("small",{class:"form-text text-muted"},"PDFs are shown as is. They are not anonymized.",-1))]),s("div",WP,[E(s("input",KP,null,512),[[r,{state:e.viewState,set:i=>{e.options.notebook=i},value:e.options?.notebook,form:"defaultsForm",options:{}}]]),t[19]||(t[19]=s("label",{class:"form-check-label",for:"notebook"},"Display notebooks",-1)),t[20]||(t[20]=s("small",{class:"form-text text-muted"},"Render Jupyter notebooks instead of raw JSON.",-1))])])]),s("section",YP,[t[31]||(t[31]=s("div",{class:"paper-section-eyebrow"},"Features",-1)),s("div",JP,[s("div",QP,[E(s("input",XP,null,512),[[r,{state:e.viewState,set:i=>{e.options.page=i},value:e.options?.page,form:"defaultsForm",options:{}}]]),t[23]||(t[23]=s("label",{class:"form-check-label",for:"page"},"GitHub Pages",-1)),t[24]||(t[24]=s("small",{class:"form-text text-muted"},"Serve an anonymized copy of the repository's GitHub Pages site. Only pages built from the anonymized branch are supported.",-1))]),s("div",ZP,[E(s("input",xP,null,512),[[r,{state:e.viewState,set:i=>{e.options.loc=i},value:e.options?.loc,form:"defaultsForm",options:{}}]]),t[25]||(t[25]=s("label",{class:"form-check-label",for:"loc"},"Lines of code",-1)),t[26]||(t[26]=s("small",{class:"form-text text-muted"},"Show the line count of the repository in the explorer.",-1))]),s("div",e3,[E(s("input",t3,null,512),[[r,{state:e.viewState,set:i=>{e.options.update=i},value:e.options?.update,form:"defaultsForm",options:{}}]]),t[27]||(t[27]=s("label",{class:"form-check-label",for:"update"},"Auto-update from GitHub",-1)),t[28]||(t[28]=s("small",{class:"form-text text-muted"},"Follow the branch and pull the latest commit automatically, at most once an hour.",-1))])]),s("div",s3,[t[30]||(t[30]=s("label",{class:"paper-field-label",for:"mode"},"Fetch mode",-1)),E((l(),d("select",n3,[...t[29]||(t[29]=[s("option",{value:"GitHubStream",selected:""},"Stream from GitHub on demand",-1),s("option",{value:"GitHubDownload"},"Download to Anonymous GitHub",-1)])])),[[r,{state:e.viewState,set:i=>{e.options.mode=i},value:e.options?.mode,form:"defaultsForm",options:{}}]]),s("small",o3," Download is faster for reviewers and enables every feature. Streaming is the only option above "+c(e.fmt?.humanFileSize(e.site_options?.MAX_REPO_SIZE*1024))+". ",1)])]),s("section",r3,[t[35]||(t[35]=s("div",{class:"paper-section-eyebrow"},"Expiration",-1)),s("div",i3,[t[33]||(t[33]=s("label",{class:"paper-field-label",for:"expiration"},"When an anonymization expires",-1)),E((l(),d("select",a3,[...t[32]||(t[32]=[s("option",{value:"redirect"},"Redirect visitors to the GitHub repository",-1),s("option",{value:"remove",selected:""},"Remove the anonymized repository",-1)])])),[[r,{state:e.viewState,set:i=>{e.options.expirationMode=i},value:e.options?.expirationMode,form:"defaultsForm",options:{}}]]),t[34]||(t[34]=s("small",{class:"form-text text-muted"}," The expiration date itself is chosen per anonymization. Redirecting reveals the source repository, so pick it only once the review is over. ",-1))])]),s("div",l3,[e.error?(l(),d("div",d3,[t[36]||(t[36]=s("i",{class:"fas fa-exclamation-circle","aria-hidden":"true"},null,-1)),t[37]||(t[37]=y()),s("span",{textContent:c(e.error)},null,8,u3)])):m("v-if",!0),s("div",c3,[s("button",{id:"save",type:"submit",class:"btn btn-ink",disabled:e.saving},[e.message?(l(),d("i",f3)):m("v-if",!0),y(c(e.saving?"Saving\u2026":e.message?"Saved":"Save defaults"),1)],8,p3),t[38]||(t[38]=s("span",{class:"paper-settings-hint"},"Applies to new anonymizations only. Existing ones keep their settings.",-1))])])],32)),[[n,e.viewState]]),s("section",m3,[t[46]||(t[46]=s("div",{class:"paper-section-eyebrow"},"Account",-1)),s("div",h3,[e.user?.photo?(l(),d("img",{key:0,width:"40",height:"40",class:"rounded-circle",alt:"",src:e.safeUrl(e.user?.photo)},null,8,v3)):m("v-if",!0),s("div",y3,[s("div",g3,"@"+c(e.user?.username),1),t[39]||(t[39]=s("div",{class:"paper-account-meta"},"Signed in with GitHub. Anonymous GitHub only reads your repositories.",-1))]),t[40]||(t[40]=s("a",{class:"btn btn-outline-ink",href:"/api/user/logout",target:"_self"},"Sign out",-1))]),t[47]||(t[47]=s("a",{class:"paper-settings-connection-link",href:"/connections"},[s("i",{class:"fab fa-github","aria-hidden":"true"}),s("span",null,[y("GitHub connections"),s("small",null,"Manage repository access and legacy OAuth.")]),s("span",{"aria-hidden":"true"},"\u2192")],-1)),s("div",b3,[t[44]||(t[44]=s("div",{class:"paper-danger-head"},"Delete account",-1)),t[45]||(t[45]=s("p",{class:"paper-danger-copy"}," Removes all your anonymized repositories, gists, and pull requests, revokes the application's access to your GitHub account, and erases your personal data (username, email, access tokens). This cannot be undone. ",-1)),e.deleteError?(l(),d("div",w3,[t[41]||(t[41]=s("i",{class:"fas fa-exclamation-circle","aria-hidden":"true"},null,-1)),t[42]||(t[42]=y()),s("span",{textContent:c(e.deleteError)},null,8,k3)])):m("v-if",!0),s("button",{type:"button",class:"btn btn-outline-danger",onClick:t[1]||(t[1]=i=>e.deleteAccount()),disabled:e.deletingAccount},[t[43]||(t[43]=s("i",{class:"fas fa-trash-alt mr-1","aria-hidden":"true"},null,-1)),y(c(e.deletingAccount?"Deleting\u2026":"Delete my account"),1)],8,_3)])])])])])}var E3={class:"pr-page"},C3={class:"container paper-page pr-page-inner"},N3={class:"pr-header"},S3={class:"paper-page-title pr-title"},D3=["textContent"],R3={key:1,class:"text-muted"},T3=["href"],O3={class:"pr-header-meta"},A3={key:0,class:"pr-meta-item"},I3=["textContent"],V3={key:1,class:"pr-meta-item"},P3=["textContent"],q3={key:2,class:"pr-meta-item"},M3=["textContent"],$3={key:0,class:"pr-body-card"},L3={key:1,class:"paper-tabs",role:"tablist"},U3=["textContent"],F3={class:"paper-tab-content"},z3={key:0},H3=["innerHTML"],B3={key:1},G3={class:"pr-comments"},j3={class:"pr-comment"},W3={class:"pr-comment-head"},K3={key:0,class:"pr-comment-author"},Y3=["textContent"],J3=["textContent"],Q3={key:0,class:"pr-comment-body"},X3={key:0,class:"paper-table-empty"};function gl(e,t){let o=et("markdown");return l(),d("div",E3,[s("div",C3,[t[15]||(t[15]=s("div",{class:"paper-crumbs"},[s("a",{href:"/dashboard"},"Reviewer"),y(" \xA0/\xA0 "),s("span",{class:"here"},"Pull request")],-1)),s("header",N3,[s("h1",S3,[e.details?.title?(l(),d("span",{key:0,textContent:c(e.details?.title)},null,8,D3)):m("v-if",!0),e.details?.title?m("v-if",!0):(l(),d("span",R3,"Untitled pull request")),e.options?.isAdmin||e.options?.isOwner?(l(),d("a",{key:2,class:"btn btn-sm","aria-label":"Edit",href:e.safeUrl("/pull-request-anonymize/"+e.pullRequestId)},[...t[2]||(t[2]=[s("i",{class:"far fa-edit"},null,-1),s("span",{class:"d-none d-md-inline"}," Edit",-1)])],8,T3)):m("v-if",!0)]),s("div",O3,[s("span",{class:O(["paper-pill",{good:e.details?.merged,warn:e.details?.state=="open",bad:e.details?.state=="closed"&&!e.details?.merged}])},[s("span",{class:O(["status-dot",{"status-ready":e.details?.merged,"status-error":e.details?.state=="closed"&&!e.details?.merged}])},null,2),y(" "+c(e.details?.merged?"Merged":e.fmt.title(e.details?.state)),1)],2),e.details?.baseRepositoryFullName?(l(),d("span",A3,[t[3]||(t[3]=s("i",{class:"fab fa-github"},null,-1)),t[4]||(t[4]=y()),s("span",{textContent:c(e.details?.baseRepositoryFullName)},null,8,I3)])):m("v-if",!0),e.details?.updatedDate?(l(),d("span",V3,[t[5]||(t[5]=s("i",{class:"far fa-clock"},null,-1)),t[6]||(t[6]=y()),s("span",{textContent:c(e.fmt?.date(e.details?.updatedDate))},null,8,P3)])):m("v-if",!0),e.details?.anonymizeDate?(l(),d("span",q3,[t[7]||(t[7]=s("i",{class:"fas fa-user-secret"},null,-1)),t[8]||(t[8]=y(" Anonymized ",-1)),s("span",{textContent:c(e.fmt?.date(e.details?.anonymizeDate))},null,8,M3)])):m("v-if",!0)])]),e.details?.body?(l(),d("section",$3,[t[9]||(t[9]=s("div",{class:"paper-section-eyebrow"},"Description",-1)),De(o,{content:e.details?.body},null,8,["content"])])):m("v-if",!0),e.details?.diff||e.details?.comments?(l(),d("nav",L3,[e.details?.diff?(l(),d("button",{key:0,class:O(["paper-tab",{active:e.tabState?.active=="diff"}]),type:"button",role:"tab",onClick:t[0]||(t[0]=r=>e.tabState.active="diff")},[...t[10]||(t[10]=[s("i",{class:"fas fa-code"},null,-1),y(" Diff ",-1)])],2)):m("v-if",!0),e.details?.comments?(l(),d("button",{key:1,class:O(["paper-tab",{active:e.tabState?.active=="comments"}]),type:"button",role:"tab",onClick:t[1]||(t[1]=r=>e.tabState.active="comments")},[t[11]||(t[11]=s("i",{class:"far fa-comment-dots"},null,-1)),s("span",{textContent:c(e.fmt.plural(e.details?.comments?.length,{0:"No comments",one:"1 comment",other:"{} comments"}))},null,8,U3)],2)):m("v-if",!0)])):m("v-if",!0),s("div",F3,[e.details?.diff&&e.tabState?.active=="diff"?(l(),d("div",z3,[s("div",{class:"pr-diff",innerHTML:e.sanitize(e.fmt?.diff(e.details?.diff))},null,8,H3)])):m("v-if",!0),e.details?.comments&&e.tabState?.active=="comments"?(l(),d("div",B3,[s("ul",G3,[(l(!0),d(Y,null,ne(e.details?.comments,(r,n)=>(l(),d("li",j3,[s("div",W3,[r?.author?(l(),d("span",K3,[t[12]||(t[12]=s("i",{class:"far fa-user"},null,-1)),t[13]||(t[13]=y(" @",-1)),s("span",{textContent:c(r?.author)},null,8,Y3)])):m("v-if",!0),r?.updatedDate?(l(),d("span",{key:1,class:"pr-comment-date",textContent:c(e.fmt?.date(r?.updatedDate))},null,8,J3)):m("v-if",!0)]),r?.body?(l(),d("div",Q3,[De(o,{content:r?.body},null,8,["content"])])):m("v-if",!0)]))),256)),e.details?.comments?.length?m("v-if",!0):(l(),d("li",X3,[...t[14]||(t[14]=[s("i",{class:"far fa-comment-dots"},null,-1),s("span",null,"No comments on this pull request.",-1)])]))])])):m("v-if",!0)])])])}var Z3={class:"container paper-page"},x3={class:"d-flex align-items-end justify-content-between flex-wrap",style:{gap:"12px"}},eq={class:"paper-page-title"},tq=["textContent"],sq={key:1},nq={class:"paper-settings-section"},oq={key:0,class:"paper-ratelimit-card",role:"status"},rq={class:"paper-error-msg"},iq=["aria-valuenow"],aq={class:"paper-progress-label"},lq=["textContent"],dq={key:0},uq=["textContent"],cq={class:"paper-progress-pct"},pq={key:2,class:"paper-error-card",role:"alert"},fq={key:0,class:"paper-error-msg"},mq={key:1,class:"paper-error-msg"},hq={class:"paper-error-actions"},vq=["href"],yq={class:"paper-detail-grid"},gq={class:"detail-value"},bq=["href"],wq={key:0,class:"detail-label"},kq={key:1,class:"detail-value"},_q=["href"],Eq={key:3,class:"anonymize-submit-bar"},Cq=["href"],Nq=["href"];function bl(e,t){return l(),d("div",Z3,[t[16]||(t[16]=s("div",{class:"paper-crumbs"},[y("Anonymization \xA0/\xA0 "),s("span",{class:"here"},"Status")],-1)),s("div",x3,[s("div",null,[s("h1",eq,[t[0]||(t[0]=y("Status of ",-1)),s("em",null,c(e.repoId),1)]),t[1]||(t[1]=s("p",{class:"paper-page-lede"},"Track progress as your anonymization is prepared.",-1))]),s("span",{class:O(["status-pill",{"status-pill-ready":e.repo?.status=="ready","status-pill-error":e.repo?.status=="error","status-pill-removed":e.repo?.status=="removed"||e.repo?.status=="expired","status-pill-ratelimit":e.rateLimitResetAt}])},[s("span",{class:O(["status-dot",{"status-ready":e.repo?.status=="ready","status-error":e.repo?.status=="error","status-removed":e.repo?.status=="removed"||e.repo?.status=="expired","status-ratelimit":e.rateLimitResetAt}])},null,2),e.rateLimitResetAt?m("v-if",!0):(l(),d("span",{key:0,textContent:c(e.fmt?.title(e.repo?.status))},null,8,tq)),e.rateLimitResetAt?(l(),d("span",sq,"Rate limited")):m("v-if",!0)],2)]),s("section",nq,[t[14]||(t[14]=s("div",{class:"paper-section-eyebrow"},"Progress",-1)),t[15]||(t[15]=s("p",{class:"paper-section-copy"},[y(" The repository will take a few minutes to get ready, depending on its size. Visit the "),s("a",{href:"/faq"},"FAQ"),y(" for more information. ")],-1)),e.rateLimitResetAt?(l(),d("div",oq,[t[4]||(t[4]=s("div",{class:"paper-ratelimit-head"},[s("i",{class:"fas fa-hourglass-half"}),s("div",null,[s("div",{class:"paper-error-eyebrow"},"Temporarily paused"),s("div",{class:"paper-error-title"},"GitHub API rate limit reached")])],-1)),s("p",rq,[t[2]||(t[2]=y("Anonymization will resume automatically in ",-1)),s("strong",null,c(e.rateLimitCountdown),1),t[3]||(t[3]=y(". No action needed \u2014 the job is queued and will continue where it left off.",-1))])])):m("v-if",!0),e.repo?.status!="error"&&!e.rateLimitResetAt?(l(),d("div",{key:1,class:O(["paper-progress",{"paper-progress-ready":e.repo?.status=="ready"}]),role:"progressbar","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":e.progress},[s("div",{class:"paper-progress-bar",style:Pe("width: "+e.progress+"%;")},null,4),s("div",aq,[s("span",{textContent:c(e.fmt?.title(e.repo?.status))},null,8,lq),e.repo?.statusMessage?(l(),d("span",dq,[t[5]||(t[5]=y("\xA0\xB7\xA0",-1)),s("span",{textContent:c(e.repo?.statusMessage)},null,8,uq)])):m("v-if",!0),s("span",cq,c(e.progress||0)+"%",1)])],10,iq)):m("v-if",!0),e.repo?.status=="error"&&!e.rateLimitResetAt?(l(),d("div",pq,[t[9]||(t[9]=s("div",{class:"paper-error-head"},[s("i",{class:"fas fa-exclamation-triangle"}),s("div",null,[s("div",{class:"paper-error-eyebrow"},"Anonymization failed"),s("div",{class:"paper-error-title"},"Something went wrong while preparing this repository.")])],-1)),e.repo?.statusMessage?(l(),d("p",fq,c(e.fmt?.translate("ERRORS."+e.repo?.statusMessage)),1)):m("v-if",!0),e.repo?.statusMessage?m("v-if",!0):(l(),d("p",mq,"No additional details were reported. The most common causes are private repositories, missing branches, and rate limits.")),t[10]||(t[10]=s("ul",{class:"paper-error-hints"},[s("li",null,"Make sure the source URL points to a repository or pull request you can access."),s("li",null,"Check that the chosen branch and commit still exist on GitHub."),s("li",null,"If you just signed in, the access token may need a moment to propagate \u2014 try again.")],-1)),s("div",hq,[s("a",{class:"btn btn-ink",href:e.safeUrl("/anonymize/"+e.repoId)},[...t[6]||(t[6]=[s("i",{class:"far fa-edit mr-1"},null,-1),y(" Edit anonymization",-1)])],8,vq),t[7]||(t[7]=s("a",{class:"btn",href:"/faq"},[s("i",{class:"far fa-question-circle mr-1"}),y(" Read the FAQ")],-1)),t[8]||(t[8]=s("a",{class:"btn",href:"https://github.com/tdurieux/anonymous_github/issues/new?template=issue_report.yml",target:"_blank",rel:"noopener"},[s("i",{class:"fas fa-bug mr-1","aria-hidden":"true"}),y(" Report a bug in Anonymous GitHub")],-1))])])):m("v-if",!0),s("div",yq,[t[11]||(t[11]=s("div",{class:"detail-label"},"Repository",-1)),s("div",gq,[s("a",{target:"_self",href:e.safeUrl("/r/"+e.repoId+"/")},"/r/"+c(e.repoId)+"/",9,bq)]),e.repo?.options?.page?(l(),d("div",wq,"GitHub Page")):m("v-if",!0),e.repo?.options?.page?(l(),d("div",kq,[s("a",{target:"_self",href:e.safeUrl("/w/"+e.repoId+"/")},"/w/"+c(e.repoId)+"/",9,_q)])):m("v-if",!0)]),e.repo?.status=="ready"?(l(),d("div",Eq,[s("a",{class:"btn btn-ink",target:"_self",href:e.safeUrl("/r/"+e.repoId+"/")},[...t[12]||(t[12]=[s("i",{class:"far fa-eye mr-1"},null,-1),y(" Go to anonymized repository ",-1)])],8,Cq),e.repo?.options?.page?(l(),d("a",{key:0,class:"btn",target:"_self",href:e.safeUrl("/w/"+e.repoId+"/")},[...t[13]||(t[13]=[s("i",{class:"fas fa-globe mr-1"},null,-1),y(" Go to anonymized GitHub page ",-1)])],8,Nq)):m("v-if",!0)])):m("v-if",!0)]),t[17]||(t[17]=ge('<section class="paper-settings-section"><div class="paper-section-eyebrow">Support Anonymous GitHub</div><p class="paper-section-copy"> A small team keeps this running. If it helps you, please consider contributing back \u2014 in code, ideas, or coffee. </p><div class="paper-support-grid"><a class="paper-support-card" href="https://github.com/tdurieux/anonymous_github/" target="_blank" rel="noopener"><div class="paper-support-eyebrow"><i class="fas fa-code-branch"></i> Contribute</div><p>Collaborate by implementing new features and fixing bugs. Help with new file formats or deployment is welcome.</p><span class="paper-support-cta">Open on GitHub <i class="fas fa-arrow-right"></i></span></a><a class="paper-support-card" href="https://github.com/tdurieux/anonymous_github/issues/new?template=issue_report.yml" target="_blank" rel="noopener"><div class="paper-support-eyebrow"><i class="far fa-comment-dots"></i> Feedback</div><p>Tell us about bugs and missing features in Anonymous GitHub itself. Questions about an anonymized repository go to its authors.</p><span class="paper-support-cta">File an issue <i class="fas fa-arrow-right"></i></span></a><a class="paper-support-card" href="https://github.com/sponsors/tdurieux/" target="_blank" rel="noopener"><div class="paper-support-eyebrow"><i class="fas fa-heart"></i> Sponsor</div><p>Server costs hover around $25 a month. Any contribution helps keep the lights on.</p><span class="paper-support-cta">GitHub Sponsors <i class="fas fa-arrow-right"></i></span></a></div><div class="paper-kofi-wrap"><iframe id="kofiframe" src="https://ko-fi.com/tdurieux/?hidefeed=true&widget=true&embed=true&preview=true" title="tdurieux" loading="lazy"></iframe></div></section>',1))])}var Jn={"partials/connections.htm":Wa,"partials/signin.htm":Ka,"partials/404.htm":Ya,"partials/admin/conferences.htm":Ja,"partials/admin/errors.htm":Qa,"partials/admin/overview.htm":Xa,"partials/admin/queues.htm":Za,"partials/admin/repositories.htm":xa,"partials/admin/user.htm":el,"partials/admin/users.htm":tl,"partials/anonymize.htm":sl,"partials/anonymizePullRequest.htm":nl,"partials/claim.htm":ol,"partials/conference.htm":rl,"partials/conferences.htm":il,"partials/dashboard.htm":al,"partials/explorer.htm":ll,"partials/faq.htm":dl,"partials/gist.htm":ul,"partials/header.htm":cl,"partials/home.htm":pl,"partials/loading.htm":fl,"partials/newConference.htm":ml,"partials/pageView.htm":hl,"partials/pr-dashboard.htm":vl,"partials/profile.htm":yl,"partials/pullRequest.htm":gl,"partials/status.htm":bl};function wl(e,t){e==="partials/explorer.htm"&&(t.sidebarCollapsed=window.matchMedia?.("(max-width: 767px)").matches||!1),e==="partials/anonymize.htm"&&(t.prTabState={active:t.options.diff?"diff":"comments"}),e==="partials/gist.htm"&&(t.tabState={active:t.details?.files?"files":"comments"}),["partials/conferences.htm","partials/conference.htm"].includes(e)&&(t.statusLabels={ready:"Ready",expired:"Expired",removed:"Removed"});let r={"partials/dashboard.htm":["filteredItems",()=>t.items,"itemFilter"],"partials/conferences.htm":["filteredConferences",()=>t.conferences,"conferenceFilter"],"partials/conference.htm":["filteredRepositories",()=>t.conference?.repositories,"repoFiler"],"partials/admin/repositories.htm":["filteredRepositories",()=>t.repositories,"repoFiler"],"partials/admin/user.htm":["filteredRepositories",()=>t.repositories,"repoFiler"],"partials/admin/users.htm":["filteredUsers",()=>t.users,"userFiler"],"partials/admin/conferences.htm":["filteredConferences",()=>t.conferences]}[e];if(r){let n=tt(()=>t.fmt.orderBy(t.fmt.filter(r[1](),t[r[2]]),t.orderBy));Object.defineProperty(t,r[0],{configurable:!0,get:()=>n.value})}}function kl(e=(...t)=>fetch(...t)){async function t(r,n,i,a={}){let u=new URL(n,window.location.href);for(let[v,k]of Object.entries(a.params||{}))if(k!=null)for(let p of Array.isArray(k)?k:[k])u.searchParams.append(v,typeof p=="object"?JSON.stringify(p):p);let f=new AbortController,h;a.timeout?.then?a.timeout.then(()=>f.abort()):a.timeout&&(h=setTimeout(()=>f.abort(),a.timeout));try{let v={Accept:"application/json, text/plain, */*",...a.headers},k=document.cookie.match(/(?:^|;\s*)XSRF-TOKEN=([^;]*)/);k&&u.origin===window.location.origin&&(v["X-XSRF-TOKEN"]=decodeURIComponent(k[1]));let p;i!==void 0&&(i instanceof FormData?p=i:(v["Content-Type"]||(v["Content-Type"]="application/json;charset=utf-8"),p=JSON.stringify(i)));let g=await e(u.href,{method:r,headers:v,body:p,credentials:"same-origin",signal:f.signal}),w=await g.text(),b=w;if(a.transformResponse)b=a.transformResponse(w);else if(w&&(/json/i.test(g.headers.get("content-type")||"")||/^[\[{]/.test(w.trim())))try{b=JSON.parse(w)}catch{}let T={data:b,status:g.status,headers:N=>g.headers.get(N)};if(!g.ok)throw T;return T}catch(v){throw v.name==="AbortError"?{status:-1,data:null}:v}finally{clearTimeout(h)}}let o={};for(let r of["get","delete","head"])o[r]=(n,i)=>t(r.toUpperCase(),n,void 0,i);for(let r of["post","put","patch"])o[r]=(n,i,a)=>t(r.toUpperCase(),n,i,a);return o}var _l={resolve:e=>Promise.resolve(e),reject:e=>Promise.reject(e),all:e=>Promise.all(e),defer(){let e,t;return{promise:new Promise((r,n)=>{e=r,t=n}),resolve:e,reject:t}}};var El=function(e){function t(o){return o=o||{used:0,total:0},o.unlimited=!o.total,o.percent=o.unlimited?0:Math.min(100,o.used*100/o.total),o.level=o.unlimited?"unlimited":o.percent>=95?"danger":o.percent>=80?"warn":"ok",o}return{decorate:t,load:function(){return e.get("/api/user/quota").then(o=>{let r=o.data||{};return r.storage=t(r.storage),r.file=t(r.file),r.repository=t(r.repository),r})}}};var Qo={};Hl(Qo,{bigNum:()=>Dq,date:()=>Lq,diff:()=>Iq,filter:()=>Mq,humanFileSize:()=>Sq,humanTime:()=>Rq,limitTo:()=>qq,number:()=>Vq,orderBy:()=>$q,plural:()=>Uq,statusLabel:()=>Oq,statusMsg:()=>Aq,title:()=>Tq,uppercase:()=>Pq});var Sq=e=>window.humanFileSize(e),Dq=(function(){return function(t){let o=Number(t)||0,r=Math.abs(o);return r<1e3?String(o):r<1e4?(o/1e3).toFixed(1).replace(/\.0$/,"")+"k":r<1e6?Math.round(o/1e3)+"k":r<1e7?(o/1e6).toFixed(1).replace(/\.0$/,"")+"M":Math.round(o/1e6)+"M"}})(),Rq=(function(){return function(t){if(!t)return"never";t instanceof Date&&(t=Math.round((Date.now()-t)/1e3)),(typeof t=="string"||typeof t=="number")&&(t=Math.round((Date.now()-new Date(t))/1e3));var o=t<0?"from now":"ago";if(Math.abs(t)>7200*24){let f=new Date;return f.setSeconds(f.getSeconds()-t),"on "+f.toLocaleDateString(void 0,{day:"numeric",month:"short",year:"numeric"})}t=Math.abs(t);for(var r=[t/60/60/24/365,t/60/60/24/30,t/60/60/24/7,t/60/60/24,t/60/60,t/60,t],n=["year","month","week","day","hour","minute","second"],i=0;i<n.length;i++){var a=Math.floor(r[i]),u=n[i];if(a>1&&(u+="s"),a>=1)return a+" "+u+" "+o}return"0 seconds "+o}})(),Tq=(function(){return function(e){if(!e)return e;e=e.toLowerCase();var t=e.split(" "),o=t.map(function(r){return r.charAt(0).toUpperCase()+r.substring(1,r.length)});return o.join(" ")}})(),Oq=(function(){var e={ready:"Ready",error:"Error",expired:"Expired",expiring:"Expiring",removed:"Removed",removing:"Removing",queue:"Queued",download:"Downloading",downloaded:"Downloaded",preparing:"Preparing",anonymizing:"Anonymizing"};return function(t){if(!t)return"";if(e[t])return e[t];var o=String(t).replace(/[_-]+/g," ").toLowerCase();return o.charAt(0).toUpperCase()+o.slice(1)}})(),Aq=(function(){var e={branch_not_found:"Branch not found on GitHub",repo_not_found:"Repository not found on GitHub",repository_not_found:"Repository not found on GitHub",repo_not_accessible:"Repository is not accessible with your token",pr_not_found:"Pull request not found on GitHub",gist_not_found:"Gist not found on GitHub",commit_not_found:"Commit not found on GitHub",repo_too_big:"Repository exceeds the size limit",quota_exceeded:"Storage quota exceeded",incomplete_record:"Incomplete record: missing identifier"};return function(t){if(!t)return t;var o=t.match(/^rate_limited:(\d+)$/);if(o){var r=Math.max(0,Math.ceil((parseInt(o[1],10)-Date.now())/1e3));if(r<=0)return"Rate limited \u2014 resuming soon";var n=Math.floor(r/60),i=r%60;return"Rate limited \u2014 retrying in "+(n>0?n+"m "+i+"s":i+"s")}if(e[t])return e[t];if(/^[a-z0-9]+(_[a-z0-9]+)+$/.test(t)){var a=t.replace(/_/g," ");return a.charAt(0).toUpperCase()+a.slice(1)}return t}})(),Iq=(function(e){let t=r=>r.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");function o(r,n){if(!n)return;let i=n.newPath&&n.newPath!=="/dev/null"?n.newPath:n.oldPath||"",a=n.oldPath==="/dev/null"?"added":n.newPath==="/dev/null"?"deleted":n.oldPath&&n.newPath&&n.oldPath!==n.newPath?"renamed":"modified";if(r.push('<div class="diff-file-block">'),r.push('<div class="diff-file-header"><span class="diff-file-icon"><i class="far fa-file-code"></i></span><span class="diff-file-name">'+t(i)+'</span><span class="diff-file-status diff-file-status-'+a+'">'+a+"</span></div>"),n.lines.length){r.push('<table class="diff-file-table"><tbody>');for(let u of n.lines)r.push('<tr class="diff-row diff-row-'+u.kind+'"><td class="diff-gutter diff-gutter-old">'+(u.oldNo||"")+'</td><td class="diff-gutter diff-gutter-new">'+(u.newNo||"")+'</td><td class="diff-sign">'+(u.kind==="add"?"+":u.kind==="remove"?"-":u.kind==="hunk"?"@":"")+'</td><td class="diff-code">'+t(u.text)+"</td></tr>");r.push("</tbody></table>")}r.push("</div>")}return function(r){if(!r)return r;let n=[],i=null,a=0,u=0,f=()=>(i||(i={oldPath:"",newPath:"",lines:[]}),i),h=()=>{i&&(i.lines.length||i.oldPath||i.newPath)&&(o(n,i),i=null)},v=r.split(`
|
|
`);for(let k=0;k<v.length;k++){let p=v[k];if(p.startsWith("diff --git")){h(),f();continue}if(p.startsWith("--- ")){i&&i.lines.length&&h(),f().oldPath=p.replace(/^--- (a\/)?/,"").trim();continue}if(p.startsWith("+++ ")){f().newPath=p.replace(/^\+\+\+ (b\/)?/,"").trim();continue}if(!(p.startsWith("index ")||p.startsWith("similarity index")||p.startsWith("rename ")||p.startsWith("new file mode")||p.startsWith("deleted file mode")||p.startsWith("Binary files"))){if(p.startsWith("@@")){let g=p.match(/@@\s+-(\d+)(?:,\d+)?\s+\+(\d+)(?:,\d+)?\s+@@/);g&&(a=parseInt(g[1],10),u=parseInt(g[2],10)),f().lines.push({kind:"hunk",oldNo:"",newNo:"",text:p});continue}i&&(p.startsWith("+")?(i.lines.push({kind:"add",oldNo:"",newNo:u,text:p.slice(1)}),u++):p.startsWith("-")?(i.lines.push({kind:"remove",oldNo:a,newNo:"",text:p.slice(1)}),a++):(i.lines.push({kind:"ctx",oldNo:a,newNo:u,text:p.startsWith(" ")?p.slice(1):p}),a++,u++))}}return o(n,i),n.join("")}})({trustAsHtml:e=>e});function Vq(e,t){return e==null?"":Number(e).toLocaleString(void 0,t==null?{}:{minimumFractionDigits:t,maximumFractionDigits:t})}function Pq(e){return String(e??"").toUpperCase()}function qq(e,t,o=0){return(e||[]).slice(o,o+t)}function Mq(e,t){return Array.isArray(e)?typeof t=="function"?e.filter(t):e:[]}function $q(e,t){if(!t)return e||[];let o=Array.isArray(t)?t:[t];return[...e||[]].sort((r,n)=>{for(let i of o){let a=i[0]==="-"?-1:1;i=i.replace(/^[+-]/,"");let u=i.split(".").reduce((h,v)=>h?.[v],r),f=i.split(".").reduce((h,v)=>h?.[v],n);if(typeof u=="string"&&(u=u.toLowerCase()),typeof f=="string"&&(f=f.toLowerCase()),u!==f)return(u==null?-1:f==null?1:u<f?-1:1)*a}return 0})}function Lq(e,t){if(!e)return"";let o=new Date(e);if(isNaN(o))return String(e);if(!t||t==="mediumDate")return o.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"});let r={yyyy:o.getFullYear(),MMM:o.toLocaleDateString(void 0,{month:"short"}),MM:String(o.getMonth()+1).padStart(2,"0"),dd:String(o.getDate()).padStart(2,"0"),d:o.getDate(),HH:String(o.getHours()).padStart(2,"0"),mm:String(o.getMinutes()).padStart(2,"0"),ss:String(o.getSeconds()).padStart(2,"0")};return t.replace(/yyyy|MMM|MM|dd|HH|mm|ss|d/g,n=>r[n])}function Uq(e,t){return(t?.[e]??t?.[e===1?"one":"other"]??"").replace(/\{\}/g,e??0)}var Cl={ERRORS:{repository_job_cancelled:"The repository changed or was removed while processing.",storage_delete_failed:"Unable to remove cached files. Please try again later.",unknown_error:"Unknown error, contact the admin.",unreachable:"Anonymous GitHub is unreachable, contact the admin.",request_error:"Unable to download the file, check your connection or contact the admin.",not_found:"The requested resource could not be found.",not_connected:"You must be logged in to perform this action.",not_authorized:"You do not have permission to perform this action.",unable_to_connect_user:"Unable to connect your account. Please try again later.",user_not_found:"The requested user could not be found.",user_banned:"Your account has been banned. Contact the admin for more information.",repo_access_limited:"GitHub blocked access because the repository's organization restricts third-party OAuth apps. Ask an org owner to approve Anonymous GitHub under Settings \u2192 Third-party Access \u2192 OAuth app policy, or anonymize a personal fork instead.",repo_saml_enforcement:"The repository's organization enforces SAML single sign-on. Authorize your token for that organization (GitHub \u2192 Settings \u2192 Applications, or re-run the org's SSO sign-in), then retry. Alternatively, anonymize a personal fork.",repo_not_found:"The repository was not found on GitHub. Check the URL and spelling, make sure you are signed in to the account that can see it, and confirm the repo isn't hidden under an org that restricts third-party app access.",repo_empty:"The selected branch has no commits on GitHub. Push at least one commit, or pick a different branch, then retry.",repo_not_accessible:"Anonymous GitHub cannot access this repository. Verify the repository exists and that Anonymous GitHub has been authorized for the owning organization.",repository_archived:"This repository has been archived and its files are no longer available.",repository_expired:"The repository is expired.",invalid_status:"This action cannot be performed while the resource is in its current state.",repository_not_ready:"Anonymous GitHub is still processing the repository, it can take several minutes.",repository_not_accessible:"This repository is currently not accessible.",repo_is_updating:"Anonymous GitHub is still processing the repository, it can take several minutes.",invalid_repo:"The provided repository is not valid.",invalid_source_repository:"The repository source name is invalid; expected the form 'owner/name'.",repoId_not_defined:"A repository ID must be provided.",repoUrl_not_defined:"The repository URL needs to be defined.",source_not_provided:"A repository source must be provided.",github_rate_limit_exceeded:"GitHub temporarily blocked the request because we hit its API rate limit. Wait a few minutes and try again. If the problem persists and you contact GitHub Support, include the request ID and timestamp shown in GitHub's response (the 'X-GitHub-Request-Id' header).",rate_limited:"GitHub API rate limit reached. The repository will be available shortly \u2014 please wait a moment and refresh.",repoId_already_used:"The repository ID is already used.",invalid_repoId:"The format of the repository ID is invalid.",unsupported_source:"The repository source type is not supported.",branch_not_specified:"The branch is not specified.",branch_not_found:"The branch of the repository cannot be found.",commit_not_specified:"A commit must be specified.",commit_not_found:"The configured commit no longer exists in the source repository. It may have been force-pushed, rebased, or removed.",repo_renamed:"The source repository appears to have been renamed or moved on GitHub. Please refresh and try again \u2014 the cached name has been updated.",invalid_commit_format:"The commit hash format is invalid. It must be a hexadecimal string.",pull_request_not_found:"The requested pull request could not be found.",pull_request_expired:"This pull request has expired and is no longer available.",pull_request_not_ready:"This pull request is still being prepared. Please try again shortly.",pull_request_not_available:"This pull request is currently not available.",invalid_pullRequestId:"The pull request ID is invalid.",pullRequestId_already_used:"This pull request ID is already in use. Please choose a different one.",repository_not_specified:"A repository must be specified for this pull request.",pullRequestId_not_specified:"A pull request ID must be specified.",pullRequestId_is_not_a_number:"The source pull request ID must be a number.",options_not_provided:"Anonymization options are mandatory.",terms_not_specified:"Anonymization terms must be specified.",invalid_terms_format:"Terms are in an invalid format.",missing_content:"No content was provided to the anonymization preview.",unable_to_anonymize:"An error happened during the anonymization process. Please try later or report the issue.",non_supported_mode:"The selected anonymization mode is invalid, only download and stream are supported.",invalid_path:"The provided path is invalid or missing.",path_not_specified:"A file path must be specified.",path_not_defined:"The file path has not been resolved yet.",invalid_file_path:"The requested file path is not valid.",invalid_request:"The request is missing required fields or is malformed.",no_file_selected:"Please select a file.",file_not_found:"The requested file is not found.",file_not_accessible:"The requested file is not accessible.",file_not_supported:"The file type is not supported. Anonymous GitHub cannot handle it.",file_too_big:"The file size exceeds the limit of Anonymous GitHub.",is_folder:"The path points to a folder.",folder_not_supported:"The path points to a folder. Please select a file.",unable_to_write_file:"Unable to write file on disk.",download_not_enabled:"Repository downloads are not enabled on this server.",unable_to_download:"The repository could not be downloaded. Please try again later.",s3_config_not_provided:"Object storage has not been configured on this server.",stats_unsupported:"Statistics are only supported in download mode.",branches_not_found:"The requested branch is not found.",readme_not_available:"No README for the repository is found.",page_not_supported_on_different_branch:"GitHub Pages is served from a different branch than the one selected. Pick the branch that GitHub Pages is configured to use.",page_not_activated:"GitHub Pages is not enabled on this repository. Enable it in the repository settings on GitHub before anonymizing.",is_removed:"This resource has been removed and is no longer available.",conf_name_missing:"A conference name is required.",conf_id_missing:"A conference ID is required.",conf_id_used:"This conference ID is already in use. Please choose a different one.",conf_start_date_missing:"A start date is required for the conference.",conf_end_date_missing:"An end date is required for the conference.",conf_start_date_invalid:"The start date must be before the end date.",conf_end_date_invalid:"The end date must be in the future.",invalid_plan:"The selected plan is not valid.",conference_not_found:"The requested conference could not be found.",conf_not_found:"The requested conference could not be found.",conf_not_activated:"The conference is not activated.",billing_missing:"Billing information is required for this plan.",billing_name_missing:"A billing name is required.",billing_email_missing:"A billing email is required.",billing_address_missing:"A billing address is required.",billing_city_missing:"A billing city is required.",billing_zip_missing:"A billing ZIP/postal code is required.",billing_country_missing:"A billing country is required.",queue_not_found:"The specified queue could not be found.",job_not_found:"The specified job could not be found in the queue.",error_retrying_job:"An error occurred while retrying the job.",gist_expired:"The gist is expired.",gist_not_ready:"Anonymous GitHub is still processing the gist, it can take several minutes.",gist_not_found:"The requested gist could not be found.",gist_not_available:"This gist is currently not available.",invalid_gistId:"The format of the gist ID is invalid.",gistId_not_specified:"A gist ID must be provided.",gistId_already_used:"The gist ID is already used.",missing_token:"An authentication token is required.",invalid_token:"The provided authentication token is invalid.",login_failed:"Login failed. Please try again.",server_error:"An unexpected server error occurred. Please try again later.",username_not_defined:"A username must be provided.",github_user_not_found:"The specified GitHub user could not be found.",cannot_coauthor_self:"You cannot add yourself as a co-author.",storage_write_size_mismatch:"The downloaded file was smaller than expected. The upstream source may have returned an incomplete response \u2014 please try again.",storage_read_error:"An error occurred while reading the file from storage \u2014 please try again.",upstream_error:"A temporary error occurred while fetching from GitHub \u2014 please try again.",token_expired:"Your GitHub access token has expired. Please log out and log in again to refresh it.",job_is_active:"This job is currently running \u2014 wait for it to finish or remove it first.",github_app_access_required:"Allow this repository on GitHub using the read-only access button, then retry. Organization access may require administrator approval.",github_app_reconnect_required:"Reconnect your GitHub App account to restore read-only access.",github_app_disabled:"New GitHub App connections are currently unavailable.",github_oauth_required:"Connect legacy GitHub OAuth to use this feature.",github_identity_mismatch:"Use the same GitHub account that you are signed in with here.",github_app_permissions_invalid:"The GitHub App must be configured with read-only permissions.",github_unavailable:"GitHub is temporarily unavailable. Please retry.",connection_changed:"The repository connection changed. Reload and try again.",repository_busy:"Wait for the repository operation to finish before changing its connection.",invalid_connection:"Select a supported GitHub connection.",github_oauth_disabled:"Legacy OAuth sign-in is currently disabled.",invalid_auth_state:"The authorization session expired. Please start again from Anonymous GitHub.",invalid_webhook_signature:"The webhook signature is invalid.",webhook_processing_failed:"Webhook processing failed. Retry the delivery.",github_app_authorization_cancelled:"GitHub authorization was cancelled.",github_account_link_required:"Verify your existing account with your previous GitHub connection. Future sign-ins will use the GitHub App.",github_app_refresh_busy:"GitHub credentials are being renewed. Please retry shortly.",github_grant_revocation_failed:"Unable to revoke the GitHub grant. Please retry.",another_login_required:"Connect and verify another sign-in method before disconnecting OAuth.",oauth_resources_remaining:"Some resources still require OAuth. Migrate or remove them before disconnecting.",invalid_github_path:"The GitHub repository path is invalid."},WARNINGS:{page_not_enabled_on_repo:"GitHub Pages is not enabled on this repository. Enable it in the repository's Settings \u2192 Pages on GitHub, then refresh.",page_branch_mismatch:"GitHub Pages on this repository is served from the '{{pageBranch}}' branch, but you selected '{{selectedBranch}}'. Switch the branch above to '{{pageBranch}}' to anonymize the Pages site.",folder_truncated:"This folder has more than 10,000 entries; only a partial listing is shown.",repo_truncated:"Some folders in this repository have too many files to be fully listed. Affected folders are marked with a warning icon.",submodules_not_included:"This repository uses git submodules. Submodule contents are not included in the anonymized repository and appear as empty folders."}};var Nl={name:"htmlDoc",props:["content","baseUrl","allowScripts"],setup(e){let t=Ze(null);return It(()=>{let r=[t.value][0];r.classList.add("html-doc");function n(){r.innerHTML="";let i=e.content;if(typeof i!="string")return;let a=document.createElement("iframe");a.className="html-doc-frame",a.setAttribute("title","Rendered HTML document");let u=["allow-popups","allow-popups-to-escape-sandbox"];e.allowScripts&&u.push("allow-scripts","allow-forms","allow-modals"),a.setAttribute("sandbox",u.join(" ")),a.setAttribute("referrerpolicy","no-referrer"),r.appendChild(a);let f="";e.baseUrl&&(f='<base href="'+e.baseUrl.replace(/&/g,"&").replace(/"/g,""")+'">'),a.srcdoc=f+i}He(()=>e.content,n,{immediate:!0}),He(()=>e.baseUrl,n,{immediate:!0}),He(()=>e.allowScripts,n,{immediate:!0})}),()=>Ne("html-doc",{ref:t})}};var Sl={name:"pdfviewer",props:["src"],setup(e){let t=Ze(null);return It(()=>{let o=[t.value],r=400,n=[.5,.75,1,1.25,1.5,2,3],i=1e3,a=o[0];a.classList.add("pdf-viewer");let u=null,f=[],h=!1,v=null,k=1,p=1,g=0,w=0,b=612/792,T=0,N=document.createElement("div");N.className="pdf-toolbar";let R=document.createElement("div");R.className="pdf-pages",R.tabIndex=0,R.setAttribute("aria-label","PDF pages"),a.appendChild(N),a.appendChild(R);function I(U,W,fe){let Ce=document.createElement("button");return Ce.type="button",Ce.className="pdf-toolbar-btn",Ce.title=W,Ce.setAttribute("aria-label",W),Ce.innerHTML='<i class="fas '+U+'"></i>',Ce.addEventListener("click",fe),Ce}let C=I("fa-chevron-up","Previous page",function(){he(p-1)}),A=I("fa-chevron-down","Next page",function(){he(p+1)}),P=document.createElement("input");P.type="text",P.className="pdf-toolbar-page",P.setAttribute("aria-label","Page number"),P.title="Page number \u2014 type a page and press Enter",P.addEventListener("keydown",function(U){U.key==="Enter"&&(he(parseInt(P.value,10)),P.blur())}),P.addEventListener("blur",function(){P.value=String(p)});let x=document.createElement("span");x.className="pdf-toolbar-count";let Q=I("fa-search-minus","Zoom out",function(){le(n[Math.max(0,re()-1)])}),K=I("fa-search-plus","Zoom in",function(){le(n[Math.min(n.length-1,re()+1)])}),z=document.createElement("button");z.type="button",z.className="pdf-toolbar-btn pdf-toolbar-zoom",z.title="Reset zoom to fit the width",z.setAttribute("aria-label","Reset zoom to fit the width"),z.addEventListener("click",function(){le(1)}),N.appendChild(C),N.appendChild(A);let ae=document.createElement("span");ae.className="pdf-toolbar-group",ae.appendChild(P),ae.appendChild(x),N.appendChild(ae);let se=document.createElement("span");se.className="pdf-toolbar-group pdf-toolbar-right",se.appendChild(Q),se.appendChild(z),se.appendChild(K),N.appendChild(se);function re(){let U=0;for(let W=0;W<n.length;W++)Math.abs(n[W]-k)<Math.abs(n[U]-k)&&(U=W);return U}function ue(){let U=u?u.numPages:0;N.style.display=U?"":"none",x.textContent="/ "+U,document.activeElement!==P&&(P.value=String(p)),C.disabled=p<=1,A.disabled=p>=U,z.textContent=Math.round(k*100)+"%",Q.disabled=re()===0,K.disabled=re()===n.length-1}function ke(U){let W=f[U-1];W&&(R.scrollTop+=W.getBoundingClientRect().top-R.getBoundingClientRect().top)}function he(U){if(!u||isNaN(U))return;let W=Math.min(Math.max(1,U),u.numPages);f[W-1]&&(ke(W),p=W,g=W,w=Date.now()+800,ue(),D())}function me(){if(!f.length||Date.now()<w)return;let U=R.getBoundingClientRect(),W=U.top+U.height/2,fe=1;for(let Ce=0;Ce<f.length&&f[Ce].getBoundingClientRect().top<=W;Ce++)fe=Ce+1;fe!==p&&(p=fe,ue())}function pe(){T++,v&&(clearTimeout(v),v=null),u&&(u.destroy(),u=null),f=[],p=1,R.innerHTML="",ue()}function Te(){R.innerHTML="";let U=document.createElement("div");U.className="pdf-viewer-error",U.textContent="This PDF could not be displayed.",R.appendChild(U)}function Re(){let U=Math.max(120,R.clientWidth-24);return Math.round(Math.min(U,i)*k)}function Se(U,W){let fe=window.devicePixelRatio||1,Ce=U.getViewport({scale:1}),ce=parseFloat(W.style.width);if(!ce)return;let _=U.getViewport({scale:ce/Ce.width*fe}),S=document.createElement("canvas");return S.width=Math.floor(_.width),S.height=Math.floor(_.height),S.style.width=ce+"px",S.style.height=Math.floor(_.height/fe)+"px",W.innerHTML="",W.appendChild(S),W.style.height="",U.render({canvasContext:S.getContext("2d"),viewport:_}).promise}function D(){if(!u)return;let U=T,W=R.getBoundingClientRect(),fe=W.top-r,Ce=W.top+R.clientHeight+r;f.forEach(function(ce,_){if(ce.dataset.state)return;let S=ce.getBoundingClientRect();S.top>Ce||S.bottom<fe||(ce.dataset.state="rendering",u.getPage(_+1).then(function(q){if(U===T)return Se(q,ce)}).then(function(){U===T&&(ce.dataset.state="done",g&&Date.now()<w&&ke(g),D())}).catch(function(){ce.dataset.state="failed"}))})}function V(){h||(h=!0,window.requestAnimationFrame(function(){h=!1,me(),D()}))}function j(){let U=!1;function W(){U||(U=!0,D())}window.requestAnimationFrame(W),window.setTimeout(W,50)}function oe(){let U=Re();f.forEach(function(W){delete W.dataset.state,W.innerHTML="",W.style.width=U+"px",W.style.height=Math.round(U/b)+"px"}),D()}function le(U){if(!u||U===k)return;let W=p;k=U,ue(),oe(),he(W)}function L(){u&&(v&&clearTimeout(v),v=setTimeout(function(){v=null,u&&oe()},250))}function te(U){if(pe(),!U)return;let W=T;pdfjsLib.getDocument({url:U,isEvalSupported:!1,standardFontDataUrl:"/script/external/pdf-standard-fonts/",cMapUrl:"/script/external/pdf-cmaps/",cMapPacked:!0}).promise.then(function(fe){if(W!==T){fe.destroy();return}return u=fe,u.getPage(1).then(function(Ce){if(W!==T)return;let ce=Ce.getViewport({scale:1});ce.width&&ce.height&&(b=ce.width/ce.height);let _=Re();for(let S=1;S<=u.numPages;S++){let q=document.createElement("div");q.className="pdf-viewer-page",q.style.width=_+"px",q.style.height=Math.round(_/b)+"px",R.appendChild(q),f.push(q)}ue(),j()})}).catch(function(){W===T&&Te()})}R.addEventListener("scroll",V,{passive:!0}),$(window).on("resize",L),ue(),He(()=>e.src,te,{immediate:!0}),ss(function(){R.removeEventListener("scroll",V),$(window).off("resize",L),pe()})}),()=>Ne("pdfviewer",{ref:t})}};var Rl={props:["content","terms","options"],setup(e){let t=Ze(null),o=()=>{t.value.innerHTML=renderMD(e.content||"",window.location.pathname+"/../")};return It(()=>{o(),He(()=>[e.content,e.terms,e.options],o,{deep:!0})}),()=>Ne("markdown",{ref:t})}},zq={props:["file","terms","options"],setup(e){let t=Ze(null),o=()=>_t(()=>t.value?.querySelectorAll("pre code").forEach(r=>window.Prism?.highlightElement(r)));return It(o),He(()=>[e.file?.content,e.terms,e.options],o,{deep:!0}),()=>{let r=e.file||{},n=(r.filename||"").split(".").pop().toLowerCase();if(["md","markdown"].includes(n)||r.language==="Markdown")return Ne("gist-file",{ref:t},Ne(Rl,{content:r.content,terms:e.terms,options:e.options}));let i={js:"javascript",jsx:"javascript",ts:"javascript",typescript:"javascript",py:"python",html:"markup",xml:"markup",svg:"markup",sh:"bash"},a=(r.language||n||"none").toLowerCase();return Ne("gist-file",{ref:t},Ne("pre",{class:"line-numbers"},Ne("code",{class:"language-"+(i[a]||a),key:r.content},r.content||"")))}}},Hq={props:["file","content"],setup(e){let t=Ze(null),o=0,r,n=async()=>{let i=++o;r?.abort(),r=new AbortController;try{let a=e.content?JSON.parse(e.content):await fetch(e.file?.download_url||e.file,{signal:r.signal}).then(u=>{if(!u.ok)throw Error("Notebook request failed");return u.json()});if(await Wt("notebook"),i!==o)return;t.value.innerHTML=DOMPurify.sanitize(nb.parse(a).render()),t.value.querySelectorAll("pre code").forEach(u=>window.Prism?.highlightElement(u))}catch(a){i===o&&a.name!=="AbortError"&&(t.value.textContent="Unable to render the notebook.")}};return It(()=>{n(),He(()=>[e.file,e.content],n)}),ss(()=>{o++,r?.abort()}),()=>Ne("notebook",{ref:t})}},Bq={props:["stats"],setup(e){return()=>{let t=Object.entries(e.stats||{}).filter(([,r])=>r.code),o=t.reduce((r,[,n])=>r+n.code,0);return Ne("loc",t.map(([r,n])=>Ne("div",{class:"lang",title:`${r}: ${n.code.toLocaleString()} lines`,style:{width:n.code*100/o+"%",background:langColors[r]}})))}}},Tl={Markdown:Rl,GistFile:zq,Notebook:Hq,Loc:Bq,HtmlDoc:Nl,Pdfviewer:xr(async()=>(await Wt("pdf"),pdfjsLib.GlobalWorkerOptions.workerSrc="/script/external/pdf.worker.js",Sl))},Ol={async mounted(e,{value:t}){e._editorValue=t;try{if(await tr(),e._editorDisposed)return;let o=e._editorValue,r=ace.edit(e);e._editor=r,r.setValue(String(o.content??""),-1),Dl(e,o.options),o.options?.onLoad?.(r)}catch(o){e._editorDisposed||(e.textContent=o.message)}},updated(e,{value:t}){e._editorValue=t,e._editor&&(e._editor.getValue()!==String(t.content??"")&&e._editor.setValue(String(t.content??""),-1),Dl(e,t.options))},beforeUnmount(e){e._editorDisposed=!0,e._editor?.destroy()}};function Dl(e,t={}){t.mode&&e._editor.session.setMode("ace/mode/"+t.mode),t.theme&&e._editor.setTheme("ace/theme/"+t.theme),e._editor.setReadOnly(t.readOnly!==!1)}var Al={mounted(e){if(!window.IntersectionObserver)return;let t=[...e.querySelectorAll('a[href^="#"]')],o=new Set,r=new IntersectionObserver(n=>{n.forEach(a=>a.isIntersecting?o.add(a.target.id):o.delete(a.target.id));let i=t.find(a=>o.has(a.hash.slice(1)));t.forEach(a=>a.classList.toggle("active",a===i))},{rootMargin:"-20% 0px -60% 0px",threshold:0});_t(()=>t.forEach(n=>{let i=document.getElementById(n.hash.slice(1));i&&r.observe(i)})),e._observer=r},beforeUnmount(e){e._observer?.disconnect()}};function Gq(e){let t={children:[]},o=new Map([["",t]]);function r(n){if(o.has(n))return o.get(n);let i=n.lastIndexOf("/"),a=r(i<0?"":n.slice(0,i)),u={name:n.slice(i+1),children:[]};return o.set(n,u),a.children.push(u),u}for(let n of e||[]){let i=n.path?`${n.path}/${n.name}`:n.name;n.size==null?r(i):r(n.path||"").children.push({...n})}return t.children}var Il={name:"FileTree",props:["file","parent","searchQuery","searchResults","page"],setup(e){let t=Ea(),o=Ze(null),r=ze(Object.create(null)),n=null,i=tt(()=>Gq(e.file)),a=()=>"/"+(Array.isArray(t.params.path)?t.params.path.join("/"):t.params.path||"");He(()=>[t.params.repoId,t.params.path],()=>{let p="";a().split("/").filter(Boolean).forEach(g=>{p+="/"+g,r[p]=!0})},{immediate:!0});let u=tt(()=>{if(!e.searchQuery||!e.searchResults)return null;let p=new Set,g=new Set;return e.searchResults.forEach(w=>{p.add(w.path?`${w.path}/${w.name}`:w.name);let b="";(w.path||"").split("/").filter(Boolean).forEach(T=>{b=b?b+"/"+T:T,g.add(b)})}),{files:p,folders:g}}),f=()=>[...o.value.querySelectorAll("li > a")],h=p=>{o.value.querySelector(".tree-focused")?.classList.remove("tree-focused"),p&&(n=p.dataset.path,p.classList.add("tree-focused"),p.scrollIntoView?.({block:"nearest"}),o.value.focus())};function v(p){let g=f(),w=o.value.querySelector(".tree-focused")||g[0],b=g.indexOf(w);if(!["ArrowDown","ArrowUp","ArrowRight","ArrowLeft","Enter"].includes(p.key)||(p.preventDefault(),p.key==="ArrowDown"&&h(g[(b+1)%g.length]),p.key==="ArrowUp"&&h(g[(b-1+g.length)%g.length]),!w))return;let T=w.closest("li");p.key==="ArrowRight"&&T.classList.contains("folder")&&(T.classList.contains("open")?h(T.querySelector(":scope > ul > li > a")):w.click()),p.key==="ArrowLeft"&&(T.classList.contains("folder")&&T.classList.contains("open")?w.click():h(T.parentElement.closest("li.folder")?.querySelector(":scope > a"))),p.key==="Enter"&&w.click()}function k(p,g=""){let w=[...p].sort((b,T)=>+!!T.children-+!!b.children||b.name.localeCompare(T.name));return Ne("ul",w.flatMap(b=>{let T=b,N=T.name,R=(g+"/"+N).slice(1);if(u.value&&!u.value.files.has(R)&&!u.value.folders.has(R))return[];for(;T.children?.length===1;)T=T.children[0],N+="/"+T.name;let I=g+"/"+N,C=!!T.children,A=u.value?r[I]!==!1:!!r[I],P=C&&e.page?.options?.truncatedFolders?.includes(I.slice(1)),x=e.page?.fileCounts?.[I.slice(1)]||0,Q=Ne("span",{class:C?"tree-icon-folder":"far fa-file tree-icon-file","aria-hidden":"true"},C?Ne("svg",{viewBox:"0 0 14 12",focusable:"false"},Ne("path",{d:"M1.5 10.5v-9h4l1.5 2h5.5v7z"})):null),K=Ne("span",{class:"tree-name"},N),z=se=>{h(se.currentTarget),C&&(se.preventDefault(),r[I]=!A,r[I]&&!T.children.length&&e.page.getFiles(I.slice(1)),_t(()=>h(f().find(re=>re.dataset.path===n))))},ae=Ne("a",{"data-path":I,href:C?void 0:`/r/${encodeURIComponent(t.params.repoId)}${encodePathForUrl(I)}`,class:{"tree-focused":n===I},onClick:z},[C?Ne("span",{class:"tree-toggle"}):g?Ne("span",{class:"tree-spacer"}):null,Q,K,P?Ne("span",{class:"truncated-warning",title:e.page.fmt.translate("WARNINGS.folder_truncated")},Ne("i",{class:"fas fa-exclamation-triangle"})):null,C&&x?Ne("span",{class:"tree-count"},x):null]);return Ne("li",{key:I,class:{file:!0,folder:C,open:A,active:a()===I,truncated:P},title:C?"":`Size: ${humanFileSize(T.size||0)}`},[ae,C&&A?k(T.children,I):null])}))}return()=>Ne("tree",{ref:o,tabindex:0,onKeydown:v},e.file?.length?u.value?.files.size===0?Ne("div",{class:"tree-search-empty"},"No files found"):k(i.value):"Empty repository")}};function Pl(){return ze({errors:{},dirty:!1,touched:!1,submitted:!1,get invalid(){return Object.values(this.errors).some(Boolean)},setValidity(e,t){this.errors[e]=!t},setDirty(){this.dirty=!0}})}function ql(e,t){if(!e[t]){let o=Pl();Object.defineProperty(o,"invalid",{get(){return Object.values(o.errors).some(Boolean)||Object.keys(o).some(r=>r!=="invalid"&&o[r]&&typeof o[r]=="object"&&o[r].invalid)}}),e[t]=o}return e[t]}var Ml={beforeMount(e,{value:t}){e._formState=ql(t,e.name),e.addEventListener("submit",o=>o.preventDefault())}};function jq(e){return e instanceof Date?isNaN(e)?"":`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`:e||""}function Vl(e){let t=e._field.binding.value;e.type==="checkbox"?e.checked=!!t:e.type==="radio"?e.checked=t==(e._value??e.value):e._field.timer||(e.value=e.type==="date"?jq(t):t??""),Xo(e)}function Xo(e){let t=e._field.validation;if(!t)return;let o=e.validity;for(let[r,n]of Object.entries({required:o.valueMissing,pattern:o.patternMismatch,min:o.rangeUnderflow,max:o.rangeOverflow,date:o.badInput,email:o.typeMismatch&&e.type==="email",url:o.typeMismatch&&e.type==="url"}))t.setValidity(r,e.disabled||!n)}var $l={beforeMount(e,{value:t}){var a;let o=t.form&&ql(t.state,t.form),r=o&&e.name?o[a=e.name]||(o[a]=Pl()):null;e._field={binding:t,validation:r,timer:null};let n=()=>{clearTimeout(e._field.timer),e._field.timer=null;let u=e._field.binding,f=e.type==="checkbox"?e.checked:e._value??e.value;if(!(e.type==="radio"&&!e.checked)){if((e.type==="number"||e.type==="range")&&(f=e.value===""?null:Number(e.value)),e.type==="date"&&(f=e.value?new Date(e.value+"T00:00:00"):null),r){r.setDirty();for(let h of Object.keys(r.errors))r.setValidity(h,!0)}u.set(f),Xo(e),u.change?.()}};e._field.commit=n;let i=u=>{let f=e._field.binding.options?.debounce||0,h=typeof f=="number"?f:f[u.type]??f.default??0;clearTimeout(e._field.timer),h?e._field.timer=setTimeout(n,h):n()};e.addEventListener(e.tagName==="SELECT"||["checkbox","radio","date"].includes(e.type)?"change":"input",i),e.addEventListener("blur",()=>{r&&(r.touched=!0),e._field.timer&&n()})},mounted:Vl,updated(e,{value:t}){e._field.binding=t,Vl(e)},beforeUnmount(e){clearTimeout(e._field.timer);let{binding:t,validation:o}=e._field,r=t.form&&t.state[t.form];r&&r[e.name]===o&&delete r[e.name]}};function Ll(e,t){let o=e.target.closest("form");if(o?._formState&&(o._formState.submitted=!0),o?.querySelectorAll("input, select, textarea").forEach(r=>{r._field?.timer&&r._field.commit(),r._field&&Xo(r)}),o&&!o.checkValidity()){let r=o.querySelector(":invalid");r?.scrollIntoView?.({block:"center"}),r?.focus(),o.reportValidity();return}return t()}var Ul=Symbol("session"),Wq=/^\/(w|api|github)(\/|$)/;function Fl(e,t={}){let o=e?.split(".").reduce((r,n)=>r?.[n],Cl);return String(o??e??"").replace(/{{\s*([^}]+?)\s*}}/g,(r,n)=>t[n]??"")}var Kq={...Qo,translate:Fl};function Yq(e){if(e==null||e==="")return e;try{let t=new URL(e,window.location.href);return["http:","https:","mailto:","tel:","blob:"].includes(t.protocol)?e:void 0}catch{return}}function Jq(e="#app",t={}){let o=new Map,r=kl(t.fetch),n,i;function a(){let h=mt(),v={url(p){return p===void 0?i.currentRoute.value.fullPath:(i.push(p),v)},path(){return i.currentRoute.value.path},search(){return i.currentRoute.value.query}},k=new Proxy({},{get(p,g){let w=i.currentRoute.value.params[g];return Array.isArray(w)?w.join("/"):w}});return{http:r,...h,location:v,params:k,window,promises:_l,html:{trustAsHtml:p=>p},translate:(p,g)=>Promise.resolve(Fl(p,g)),quotaService:El(r)}}function u(h){return{name:h.template,setup(){let v=Ko(lt(Ul),o);h.setup(v,a()),wl(h.template,v);let k=[];return()=>Jn[h.template](v,k)}}}i=_a({history:t.history||ba(),routes:ja.map(h=>h.redirect?h:{path:h.path,component:u(h),meta:{title:h.title,preserveExplorer:h.preserveExplorer}})});let f=Fi({setup(){n=Ko(null,o),n.fmt=Kq,n.window=window,n.Math=Math,n.sanitize=p=>DOMPurify.sanitize(p??""),n.submitForm=Ll,n.safeUrl=Yq;let h=a();Na(n,h.http,h.location,h.timeout),ts(Ul,n),He(()=>n.title,p=>{document.title=p||"Anonymous GitHub"});let v=[],k=p=>{let g=p.target.closest?.("a[href]");if(p.defaultPrevented||p.button!==0||p.metaKey||p.ctrlKey||p.shiftKey||p.altKey||!g||g.hasAttribute("download")||g.target&&g.target!=="_self"||g.dataset.toggle||g.getAttribute("href").startsWith("#"))return;let b=new URL(g.href,window.location.href);b.origin!==window.location.origin||Wq.test(b.pathname)||(p.preventDefault(),i.push(b.pathname+b.search+b.hash),$("#navbarSupportedContent.show").collapse("hide"))};return document.addEventListener("click",k),ss(()=>document.removeEventListener("click",k)),()=>[Ne("header",{class:"app-header"},Jn["partials/header.htm"](n,v)),Ne("main",{class:"app-view align-items-stretch w-100"},Ne(Wo,null,{default:({Component:p,route:g})=>p?Ne(p,{key:g.meta.preserveExplorer?g.matched[0]?.path:g.path}):null})),Ne("div",{class:"position-fixed p-3",style:{zIndex:999999999,right:0,bottom:0}},n.toasts.map((p,g)=>Ne("div",{class:"toast show",role:"alert","aria-live":"assertive","aria-atomic":"true",key:g},[Ne("div",{class:"toast-header"},[Ne("strong",{class:"mr-auto"},p.title),Ne("button",{type:"button",class:"ml-2 mb-1 close","aria-label":"Close",onClick:()=>n.removeToast(p)},"\xD7")]),Ne("div",{class:"toast-body"},p.body)])))]}});for(let[h,v]of Object.entries(Tl))f.component(h,v);return f.component("Tree",Il),f.component("PartialView",{props:["name","state"],setup(h){let v=[];return()=>Jn[h.name](h.state,v)}}),f.directive("field",$l),f.directive("form",Ml),f.directive("code-editor",Ol),f.directive("paper-scrollspy",Al),f.use(i),i.beforeEach(async h=>{n?.emit("routeLeave"),/^\/(r|repository|anonymize|pull-request-anonymize|gist-anonymize|pr|gist)(\/|$)/.test(h.path)&&await Wt("markdown"),/^\/(r|repository)\//.test(h.path)&&await Wt("org")}),i.afterEach(h=>{if(!n)return;n.title=h.meta.title,n.emit("routeChange",{title:h.meta.title}),n.emit("routeUpdate",{title:h.meta.title});let v=document.querySelector(".app-view");!h.meta.preserveExplorer&&v&&(v.scrollTop=0)}),f.mount(e),{app:f,router:i,state:n}}document.querySelector("#app")&&(window.anonymousApp=Jq());})();
|
|
/*! Bundled license information:
|
|
|
|
@vue/shared/dist/shared.esm-bundler.js:
|
|
(**
|
|
* @vue/shared v3.5.42
|
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
* @license MIT
|
|
**)
|
|
|
|
@vue/reactivity/dist/reactivity.esm-bundler.js:
|
|
(**
|
|
* @vue/reactivity v3.5.42
|
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
* @license MIT
|
|
**)
|
|
|
|
@vue/runtime-core/dist/runtime-core.esm-bundler.js:
|
|
(**
|
|
* @vue/runtime-core v3.5.42
|
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
* @license MIT
|
|
**)
|
|
|
|
@vue/runtime-dom/dist/runtime-dom.esm-bundler.js:
|
|
(**
|
|
* @vue/runtime-dom v3.5.42
|
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
* @license MIT
|
|
**)
|
|
|
|
vue/dist/vue.runtime.esm-bundler.js:
|
|
(**
|
|
* vue v3.5.42
|
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
* @license MIT
|
|
**)
|
|
|
|
vue-router/dist/devtools-EWN81iOl.mjs:
|
|
vue-router/dist/vue-router.mjs:
|
|
(*!
|
|
* vue-router v4.6.4
|
|
* (c) 2025 Eduardo San Martin Morote
|
|
* @license MIT
|
|
*)
|
|
*/
|