Thread viewer for Bluesky
at 2.0 55 lines 186 kB view raw
1(()=>{var f=!1;var w5=Array.isArray,rJ=Array.prototype.indexOf,Nz=Array.from,I7=Object.keys,V1=Object.defineProperty,I1=Object.getOwnPropertyDescriptor,M8=Object.getOwnPropertyDescriptors,S7=Object.prototype,nJ=Array.prototype,F6=Object.getPrototypeOf,j7=Object.isExtensible;function M6(z){return typeof z==="function"}var t1=()=>{};function D7(z){return typeof z?.then==="function"}function tJ(z){return z()}function c6(z){for(var J=0;J<z.length;J++)z[J]()}function x8(){var z,J,Q=new Promise((K,Z)=>{z=K,J=Z});return{promise:Q,resolve:z,reject:J}}var g0=2,s6=4,x6=8,o6=16777216,f1=16,N1=32,e1=64,C6=128,k1=512,$0=1024,p0=2048,S1=4096,j1=8192,b1=16384,G5=32768,T1=65536,O6=131072,a6=262144,L5=524288,R7=1048576,z5=32768,C8=2097152,m5=4194304,J5=8388608,z1=Symbol("$state"),r6=Symbol("legacy props"),eJ=Symbol(""),O8=Symbol("proxy path"),I5=new class extends Error{name="StaleReactionError";message="The reaction that called `getAbortSignal()` was re-run or destroyed"};var n6=3,D1=8;function P8(z){if(f){let J=Error(`lifecycle_outside_component 2\`${z}(...)\` can only be used during component initialisation 3https://svelte.dev/e/lifecycle_outside_component`);throw J.name="Svelte error",J}else throw Error("https://svelte.dev/e/lifecycle_outside_component")}function zQ(){if(f){let z=Error(`missing_context 4Context was not set in a parent component 5https://svelte.dev/e/missing_context`);throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/missing_context")}function JQ(){if(f){let z=Error("async_derived_orphan\nCannot create a `$derived(...)` with an `await` expression outside of an effect tree\nhttps://svelte.dev/e/async_derived_orphan");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/async_derived_orphan")}function A7(){if(f){let z=Error("bind_invalid_checkbox_value\nUsing `bind:value` together with a checkbox input is not allowed. Use `bind:checked` instead\nhttps://svelte.dev/e/bind_invalid_checkbox_value");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/bind_invalid_checkbox_value")}function QQ(){if(f){let z=Error(`derived_references_self 6A derived value cannot reference itself recursively 7https://svelte.dev/e/derived_references_self`);throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/derived_references_self")}function KQ(z){if(f){let J=Error(`effect_in_teardown 8\`${z}\` cannot be used inside an effect cleanup function 9https://svelte.dev/e/effect_in_teardown`);throw J.name="Svelte error",J}else throw Error("https://svelte.dev/e/effect_in_teardown")}function ZQ(){if(f){let z=Error("effect_in_unowned_derived\nEffect cannot be created inside a `$derived` value that was not itself created inside an effect\nhttps://svelte.dev/e/effect_in_unowned_derived");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/effect_in_unowned_derived")}function XQ(z){if(f){let J=Error(`effect_orphan 10\`${z}\` can only be used inside an effect (e.g. during component initialisation) 11https://svelte.dev/e/effect_orphan`);throw J.name="Svelte error",J}else throw Error("https://svelte.dev/e/effect_orphan")}function WQ(){if(f){let z=Error(`effect_update_depth_exceeded 12Maximum update depth exceeded. This typically indicates that an effect reads and writes the same piece of state 13https://svelte.dev/e/effect_update_depth_exceeded`);throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/effect_update_depth_exceeded")}function YQ(){if(f){let z=Error(`hydration_failed 14Failed to hydrate the application 15https://svelte.dev/e/hydration_failed`);throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/hydration_failed")}function wQ(){if(f){let z=Error("invalid_snippet\nCould not `{@render}` snippet due to the expression being `null` or `undefined`. Consider using optional chaining `{@render snippet?.()}`\nhttps://svelte.dev/e/invalid_snippet");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/invalid_snippet")}function GQ(z){if(f){let J=Error(`props_invalid_value 16Cannot do \`bind:${z}={undefined}\` when \`${z}\` has a fallback value 17https://svelte.dev/e/props_invalid_value`);throw J.name="Svelte error",J}else throw Error("https://svelte.dev/e/props_invalid_value")}function BQ(z){if(f){let J=Error(`props_rest_readonly 18Rest element properties of \`$props()\` such as \`${z}\` are readonly 19https://svelte.dev/e/props_rest_readonly`);throw J.name="Svelte error",J}else throw Error("https://svelte.dev/e/props_rest_readonly")}function HQ(z){if(f){let J=Error(`rune_outside_svelte 20The \`${z}\` rune is only available inside \`.svelte\` and \`.svelte.js/ts\` files 21https://svelte.dev/e/rune_outside_svelte`);throw J.name="Svelte error",J}else throw Error("https://svelte.dev/e/rune_outside_svelte")}function UQ(){if(f){let z=Error("set_context_after_init\n`setContext` must be called when a component first initializes, not in a subsequent effect or after an `await` expression\nhttps://svelte.dev/e/set_context_after_init");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/set_context_after_init")}function VQ(){if(f){let z=Error("state_descriptors_fixed\nProperty descriptors defined on `$state` objects must contain `value` and always be `enumerable`, `configurable` and `writable`.\nhttps://svelte.dev/e/state_descriptors_fixed");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/state_descriptors_fixed")}function qQ(){if(f){let z=Error("state_prototype_fixed\nCannot set prototype of `$state` object\nhttps://svelte.dev/e/state_prototype_fixed");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/state_prototype_fixed")}function FQ(){if(f){let z=Error("state_unsafe_mutation\nUpdating state inside `$derived(...)`, `$inspect(...)` or a template expression is forbidden. If the value should not be reactive, declare it without `$state`\nhttps://svelte.dev/e/state_unsafe_mutation");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/state_unsafe_mutation")}function MQ(){if(f){let z=Error("svelte_boundary_reset_onerror\nA `<svelte:boundary>` `reset` function cannot be called while an error is still being handled\nhttps://svelte.dev/e/svelte_boundary_reset_onerror");throw z.name="Svelte error",z}else throw Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}var N7=1,k7=2,b7=4,xQ=8,CQ=16,OQ=1,PQ=2,LQ=4,IQ=8,SQ=16;var jQ=1,DQ=2;var kz="[",B5="[!",P6="]",S5={};var E0=Symbol(),m1=Symbol("filename"),RQ=Symbol("hmr"),AQ="http://www.w3.org/1999/xhtml";var T7="@attach";var $5="font-weight: bold",u5="font-weight: normal";function NQ(z,J){if(f)console.warn(`%c[svelte] await_waterfall 22%cAn async derived, \`${z}\` (${J}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app 23https://svelte.dev/e/await_waterfall`,$5,u5);else console.warn("https://svelte.dev/e/await_waterfall")}function kQ(z,J,Q){if(f)console.warn(`%c[svelte] hydration_attribute_changed 24%cThe \`${z}\` attribute on \`${J}\` changed its value between server and client renders. The client value, \`${Q}\`, will be ignored in favour of the server value 25https://svelte.dev/e/hydration_attribute_changed`,$5,u5);else console.warn("https://svelte.dev/e/hydration_attribute_changed")}function bQ(z){if(f)console.warn(`%c[svelte] hydration_html_changed 26%c${z?`The value of an \`{@html ...}\` block ${z} changed between server and client renders. The client value will be ignored in favour of the server value`:"The value of an `{@html ...}` block changed between server and client renders. The client value will be ignored in favour of the server value"} 27https://svelte.dev/e/hydration_html_changed`,$5,u5);else console.warn("https://svelte.dev/e/hydration_html_changed")}function e5(z){if(f)console.warn(`%c[svelte] hydration_mismatch 28%c${z?`Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near ${z}`:"Hydration failed because the initial UI does not match what was rendered on the server"} 29https://svelte.dev/e/hydration_mismatch`,$5,u5);else console.warn("https://svelte.dev/e/hydration_mismatch")}function TQ(){if(f)console.warn(`%c[svelte] lifecycle_double_unmount 30%cTried to unmount a component that was not mounted 31https://svelte.dev/e/lifecycle_double_unmount`,$5,u5);else console.warn("https://svelte.dev/e/lifecycle_double_unmount")}function EQ(){if(f)console.warn("%c[svelte] select_multiple_invalid_value\n%cThe `value` property of a `<select multiple>` element should be an array, but it received a non-array value. The selection will be kept as is.\nhttps://svelte.dev/e/select_multiple_invalid_value",$5,u5);else console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function L8(z){if(f)console.warn(`%c[svelte] state_proxy_equality_mismatch 32%cReactive \`$state(...)\` proxies and the values they proxy have different identities. Because of this, comparisons with \`${z}\` will produce unexpected results 33https://svelte.dev/e/state_proxy_equality_mismatch`,$5,u5);else console.warn("https://svelte.dev/e/state_proxy_equality_mismatch")}function yQ(){if(f)console.warn(`%c[svelte] state_proxy_unmount 34%cTried to unmount a state proxy, rather than a component 35https://svelte.dev/e/state_proxy_unmount`,$5,u5);else console.warn("https://svelte.dev/e/state_proxy_unmount")}function vQ(){if(f)console.warn("%c[svelte] svelte_boundary_reset_noop\n%cA `<svelte:boundary>` `reset` function only resets the boundary the first time it is called\nhttps://svelte.dev/e/svelte_boundary_reset_noop",$5,u5);else console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}var r=!1;function h0(z){r=z}var U0;function R0(z){if(z===null)throw e5(),S5;return U0=z}function d0(){return R0(a0(U0))}function x(z){if(!r)return;if(a0(U0)!==null)throw e5(),S5;U0=z}function J1(z=1){if(r){var J=z,Q=U0;while(J--)Q=a0(Q);U0=Q}}function H5(z=!0){var J=0,Q=U0;while(!0){if(Q.nodeType===D1){var K=Q.data;if(K===P6){if(J===0)return Q;J-=1}else if(K===kz||K===B5)J+=1}var Z=a0(Q);if(z)Q.remove();Q=Z}}function I8(z){if(!z||z.nodeType!==D1)throw e5(),S5;return z.data}function S8(z){return z===this.v}function E7(z,J){return z!=z?J==J:z!==J||z!==null&&typeof z==="object"||typeof z==="function"}function j8(z){return!E7(z,this.v)}var R1=!1,l5=!1,U5=!1;function gQ(){l5=!0}var bz=null;function $1(z,J){return z.label=J,D8(z.v,J),z}function D8(z,J){return z?.[O8]?.(J),z}function D5(z){let J=Error(),Q=RK();if(Q.length===0)return null;return Q.unshift(` 36`),V1(J,"stack",{value:Q.join(` 37`)}),V1(J,"name",{value:z}),J}function RK(){let z=Error.stackTraceLimit;Error.stackTraceLimit=1/0;let J=Error().stack;if(Error.stackTraceLimit=z,!J)return[];let Q=J.split(` 38`),K=[];for(let Z=0;Z<Q.length;Z++){let X=Q[Z],W=X.replaceAll("\\","/");if(X.trim()==="Error")continue;if(X.includes("validate_each_keys"))return[];if(W.includes("svelte/src/internal")||W.includes("node_modules/.vite"))continue;K.push(X)}return K}var L0=null;function p5(z){L0=z}var V5=null;function t6(z){V5=z}var _1=null;function R8(z){_1=z}function v7(){let z={};return[()=>{if(!$Q(z))zQ();return fQ(z)},(J)=>mQ(z,J)]}function fQ(z){return g7("getContext").get(z)}function mQ(z,J){let Q=g7("setContext");if(R1){var K=K0.f,Z=!Y0&&(K&N1)!==0&&!L0.i;if(!Z)UQ()}return Q.set(z,J),J}function $Q(z){return g7("hasContext").has(z)}function c(z,J=!1,Q){if(L0={p:L0,i:!1,c:null,e:null,s:z,x:null,l:l5&&!J?{s:null,u:null,$:[]}:null},f)L0.function=Q,_1=Q}function s(z){var J=L0,Q=J.e;if(Q!==null){J.e=null;for(var K of Q)h7(K)}if(z!==void 0)J.x=z;if(J.i=!0,L0=J.p,f)_1=L0?.function??null;return z??{}}function c1(){return!l5||L0!==null&&L0.l===null}function g7(z){if(L0===null)P8(z);return L0.c??=new Map(AK(L0)||void 0)}function AK(z){let J=z.p;while(J!==null){let Q=J.c;if(Q!==null)return Q;J=J.p}return null}var L6=[];function uQ(){var z=L6;L6=[],c6(z)}function u0(z){if(L6.length===0&&!z6){var J=L6;queueMicrotask(()=>{if(J===L6)uQ()})}L6.push(z)}function lQ(){while(L6.length>0)uQ()}var f7=new WeakMap;function A8(z){var J=K0;if(J===null)return Y0.f|=J5,z;if(f&&z instanceof Error&&!f7.has(z))f7.set(z,NK(z,J));if((J.f&G5)===0){if((J.f&C6)===0){if(f&&!J.parent&&z instanceof Error)pQ(z);throw z}J.b.error(z)}else R5(z,J)}function R5(z,J){while(J!==null){if((J.f&C6)!==0)try{J.b.error(z);return}catch(Q){z=Q}J=J.parent}if(f&&z instanceof Error)pQ(z);throw z}function NK(z,J){let Q=I1(z,"message");if(Q&&!Q.configurable)return;var K=Tz?" ":"\t",Z=` 39${K}in ${J.fn?.name||"<unknown>"}`,X=J.ctx;while(X!==null)Z+=` 40${K}in ${X.function?.[m1].split("/").pop()}`,X=X.p;return{message:z.message+` 41${Z} 42`,stack:z.stack?.split(` 43`).filter((W)=>!W.includes("svelte/src/internal")).join(` 44`)}}function pQ(z){let J=f7.get(z);if(J)V1(z,"message",{value:J.message}),V1(z,"stack",{value:J.stack})}var e6=new Set,F0=null,I6=null,Y1=null,Q5=[],N8=null,m7=!1,z6=!1;class _0{committed=!1;current=new Map;previous=new Map;#z=new Set;#J=new Set;#Q=0;#K=0;#w=null;#X=[];#Z=[];skipped_effects=new Set;is_fork=!1;is_deferred(){return this.is_fork||this.#K>0}process(z){Q5=[],I6=null,this.apply();var J={parent:null,effect:null,effects:[],render_effects:[],block_effects:[]};for(let Q of z)this.#W(Q,J);if(!this.is_fork)this.#B();if(this.is_deferred())this.#Y(J.effects),this.#Y(J.render_effects),this.#Y(J.block_effects);else I6=this,F0=null,dQ(J.render_effects),dQ(J.effects),I6=null,this.#w?.resolve();Y1=null}#W(z,J){z.f^=$0;var Q=z.first;while(Q!==null){var K=Q.f,Z=(K&(N1|e1))!==0,X=Z&&(K&$0)!==0,W=X||(K&j1)!==0||this.skipped_effects.has(Q);if((Q.f&C6)!==0&&Q.b?.is_pending())J={parent:J,effect:Q,effects:[],render_effects:[],block_effects:[]};if(!W&&Q.fn!==null){if(Z)Q.f^=$0;else if((K&s6)!==0)J.effects.push(Q);else if(R1&&(K&(x6|o6))!==0)J.render_effects.push(Q);else if(K6(Q)){if((Q.f&f1)!==0)J.block_effects.push(Q);J6(Q)}var w=Q.first;if(w!==null){Q=w;continue}}var H=Q.parent;Q=Q.next;while(Q===null&&H!==null){if(H===J.effect)this.#Y(J.effects),this.#Y(J.render_effects),this.#Y(J.block_effects),J=J.parent;Q=H.next,H=H.parent}}}#Y(z){for(let J of z)((J.f&p0)!==0?this.#X:this.#Z).push(J),this.#G(J.deps),i0(J,$0)}#G(z){if(z===null)return;for(let J of z){if((J.f&g0)===0||(J.f&z5)===0)continue;J.f^=z5,this.#G(J.deps)}}capture(z,J){if(!this.previous.has(z))this.previous.set(z,J);if((z.f&J5)===0)this.current.set(z,z.v),Y1?.set(z,z.v)}activate(){F0=this,this.apply()}deactivate(){if(F0!==this)return;F0=null,Y1=null}flush(){if(this.activate(),Q5.length>0){if($7(),F0!==null&&F0!==this)return}else if(this.#Q===0)this.process([]);this.deactivate()}discard(){for(let z of this.#J)z(this);this.#J.clear()}#B(){if(this.#K===0){for(let z of this.#z)z();this.#z.clear()}if(this.#Q===0)this.#H()}#H(){if(e6.size>1){this.previous.clear();var z=Y1,J=!0,Q={parent:null,effect:null,effects:[],render_effects:[],block_effects:[]};for(let Z of e6){if(Z===this){J=!1;continue}let X=[];for(let[w,H]of this.current){if(Z.current.has(w))if(J&&H!==Z.current.get(w))Z.current.set(w,H);else continue;X.push(w)}if(X.length===0)continue;let W=[...Z.current.keys()].filter((w)=>!this.current.has(w));if(W.length>0){var K=Q5;Q5=[];let w=new Set,H=new Map;for(let B of X)iQ(B,W,w,H);if(Q5.length>0){F0=Z,Z.apply();for(let B of Q5)Z.#W(B,Q);Z.deactivate()}Q5=K}}F0=null,Y1=z}this.committed=!0,e6.delete(this)}increment(z){if(this.#Q+=1,z)this.#K+=1}decrement(z){if(this.#Q-=1,z)this.#K-=1;this.revive()}revive(){for(let z of this.#X)i0(z,p0),A5(z);for(let z of this.#Z)i0(z,S1),A5(z);this.#X=[],this.#Z=[],this.flush()}oncommit(z){this.#z.add(z)}ondiscard(z){this.#J.add(z)}settled(){return(this.#w??=x8()).promise}static ensure(){if(F0===null){let z=F0=new _0;if(e6.add(F0),!z6)_0.enqueue(()=>{if(F0!==z)return;z.flush()})}return F0}static enqueue(z){u0(z)}apply(){if(!R1||!this.is_fork&&e6.size===1)return;Y1=new Map(this.current);for(let z of e6){if(z===this)continue;for(let[J,Q]of z.previous)if(!Y1.has(J))Y1.set(J,Q)}}}function Q6(z){var J=z6;z6=!0;try{var Q;if(z){if(F0!==null)$7();Q=z()}while(!0){if(lQ(),Q5.length===0){if(F0?.flush(),Q5.length===0)return N8=null,Q}$7()}}finally{z6=J}}function $7(){var z=k5;m7=!0;var J=f?new Set:null;try{var Q=0;zz(!0);while(Q5.length>0){var K=_0.ensure();if(Q++>1000){if(f){var Z=new Map;for(let W of K.current.keys())for(let[w,H]of W.updated??[]){var X=Z.get(w);if(!X)X={error:H.error,count:0},Z.set(w,X);X.count+=H.count}for(let W of Z.values())if(W.error)console.error(W.error)}bK()}if(K.process(Q5),N5.clear(),f)for(let W of K.current.keys())J.add(W)}}finally{if(m7=!1,zz(z),N8=null,f)for(let W of J)W.updated=null}}function bK(){try{WQ()}catch(z){if(f)V1(z,"stack",{value:""});R5(z,N8)}}var K5=null;function dQ(z){var J=z.length;if(J===0)return;var Q=0;while(Q<J){var K=z[Q++];if((K.f&(b1|j1))===0&&K6(K)){if(K5=new Set,J6(K),K.deps===null&&K.first===null&&K.nodes_start===null)if(K.teardown===null&&K.ac===null)u7(K);else K.fn=null;if(K5?.size>0){N5.clear();for(let Z of K5){if((Z.f&(b1|j1))!==0)continue;let X=[Z],W=Z.parent;while(W!==null){if(K5.has(W))K5.delete(W),X.push(W);W=W.parent}for(let w=X.length-1;w>=0;w--){let H=X[w];if((H.f&(b1|j1))!==0)continue;J6(H)}}K5.clear()}}}K5=null}function iQ(z,J,Q,K){if(Q.has(z))return;if(Q.add(z),z.reactions!==null)for(let Z of z.reactions){let X=Z.f;if((X&g0)!==0)iQ(Z,J,Q,K);else if((X&(m5|f1))!==0&&(X&p0)===0&&_Q(Z,J,K))i0(Z,p0),A5(Z)}}function _Q(z,J,Q){let K=Q.get(z);if(K!==void 0)return K;if(z.deps!==null)for(let Z of z.deps){if(J.includes(Z))return!0;if((Z.f&g0)!==0&&_Q(Z,J,Q))return Q.set(Z,!0),!0}return Q.set(z,!1),!1}function A5(z){var J=N8=z;while(J.parent!==null){J=J.parent;var Q=J.f;if(m7&&J===K0&&(Q&f1)!==0&&(Q&a6)===0)return;if((Q&(e1|N1))!==0){if((Q&$0)===0)return;J.f^=$0}}Q5.push(J)}function sQ(z){let J=0,Q=w1(0),K;if(f)$1(Q,"createSubscriber version");return()=>{if(j5())Y(Q),G1(()=>{if(J===0)K=b0(()=>z(()=>S6(Q)));return J+=1,()=>{u0(()=>{if(J-=1,J===0)K?.(),K=void 0,S6(Q)})}})}}var EK=T1|L5|C6;function l7(z,J,Q){new p7(z,J,Q)}class p7{parent;#z=!1;#J;#Q=r?U0:null;#K;#w;#X;#Z=null;#W=null;#Y=null;#G=null;#B=null;#H=0;#V=0;#q=!1;#U=null;#O=sQ(()=>{if(this.#U=w1(this.#H),f)$1(this.#U,"$effect.pending()");return()=>{this.#U=null}});constructor(z,J,Q){if(this.#J=z,this.#K=J,this.#w=Q,this.parent=K0.b,this.#z=!!this.#K.pending,this.#X=M1(()=>{if(K0.b=this,r){let Z=this.#Q;if(d0(),Z.nodeType===D1&&Z.data===B5)this.#L();else this.#P()}else{var K=this.#x();try{this.#Z=r0(()=>Q(K))}catch(Z){this.error(Z)}if(this.#V>0)this.#M();else this.#z=!1}return()=>{this.#B?.remove()}},EK),r)this.#J=U0}#P(){try{this.#Z=r0(()=>this.#w(this.#J))}catch(z){this.error(z)}this.#z=!1}#L(){let z=this.#K.pending;if(!z)return;this.#W=r0(()=>z(this.#J)),_0.enqueue(()=>{var J=this.#x();if(this.#Z=this.#F(()=>{return _0.ensure(),r0(()=>this.#w(J))}),this.#V>0)this.#M();else d5(this.#W,()=>{this.#W=null}),this.#z=!1})}#x(){var z=this.#J;if(this.#z)this.#B=l0(),this.#J.before(this.#B),z=this.#B;return z}is_pending(){return this.#z||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!this.#K.pending}#F(z){var J=K0,Q=Y0,K=L0;B1(this.#X),c0(this.#X),p5(this.#X.ctx);try{return z()}catch(Z){return A8(Z),null}finally{B1(J),c0(Q),p5(K)}}#M(){let z=this.#K.pending;if(this.#Z!==null)this.#G=document.createDocumentFragment(),this.#G.append(this.#B),T8(this.#Z,this.#G);if(this.#W===null)this.#W=r0(()=>z(this.#J))}#C(z){if(!this.has_pending_snippet()){if(this.parent)this.parent.#C(z);return}if(this.#V+=z,this.#V===0){if(this.#z=!1,this.#W)d5(this.#W,()=>{this.#W=null});if(this.#G)this.#J.before(this.#G),this.#G=null}}update_pending_count(z){if(this.#C(z),this.#H+=z,this.#U)u1(this.#U,this.#H)}get_effect_pending(){return this.#O(),Y(this.#U)}error(z){var J=this.#K.onerror;let Q=this.#K.failed;if(this.#q||!J&&!Q)throw z;if(this.#Z)y0(this.#Z),this.#Z=null;if(this.#W)y0(this.#W),this.#W=null;if(this.#Y)y0(this.#Y),this.#Y=null;if(r)R0(this.#Q),J1(),R0(H5());var K=!1,Z=!1;let X=()=>{if(K){vQ();return}if(K=!0,Z)MQ();if(_0.ensure(),this.#H=0,this.#Y!==null)d5(this.#Y,()=>{this.#Y=null});if(this.#z=this.has_pending_snippet(),this.#Z=this.#F(()=>{return this.#q=!1,r0(()=>this.#w(this.#J))}),this.#V>0)this.#M();else this.#z=!1};var W=Y0;try{c0(null),Z=!0,J?.(z,X),Z=!1}catch(w){R5(w,this.#X&&this.#X.parent)}finally{c0(W)}if(Q)u0(()=>{this.#Y=this.#F(()=>{_0.ensure(),this.#q=!0;try{return r0(()=>{Q(this.#J,()=>z,()=>X)})}catch(w){return R5(w,this.#X.parent),null}finally{this.#q=!1}})})}}var Jz=null;function x1(z,J){return J}function yK(z,J,Q){var K=[],Z=J.length;for(var X=0;X<Z;X++)y8(J[X].e,K,!0);i7(K,()=>{var W=K.length===0&&Q!==null;if(W){var w=Q,H=w.parentNode;yz(H),H.append(w),z.items.clear(),q5(z,J[0].prev,J[Z-1].next)}for(var B=0;B<Z;B++){var F=J[B];if(!W)z.items.delete(F.k),q5(z,F.prev,F.next);y0(F.e,!W)}if(z.first===J[0])z.first=J[0].prev})}function A0(z,J,Q,K,Z,X=null){var W=z,w=new Map,H=null,B=(J&b7)!==0,F=(J&N7)!==0,q=(J&k7)!==0;if(B){var G=z;W=r?R0(s0(G)):G.appendChild(l0())}if(r)d0();var U=null,M=j6(()=>{var N=Q();return w5(N)?N:N==null?[]:Nz(N)}),I,O=!0;function A(){if(vK(y,I,W,J,K),U!==null)if(I.length===0){if(U.fragment)W.before(U.fragment),U.fragment=null;else vz(U.effect);T.first=U.effect}else d5(U.effect,()=>{U=null})}var T=M1(()=>{I=Y(M);var N=I.length;let E=!1;if(r){var b=I8(W)===B5;if(b!==(N===0))W=H5(),R0(W),h0(!1),E=!0}var R=new Set,k=F0,$=null,v=E8();for(var u=0;u<N;u+=1){if(r&&U0.nodeType===D1&&U0.data===P6)W=U0,E=!0,h0(!1);var n=I[u],o=K(n,u),i=O?null:w.get(o);if(i){if(F)u1(i.v,n);if(q)u1(i.i,u);else i.i=u;if(v)k.skipped_effects.delete(i.e)}else{if(i=gK(O?W:null,$,n,o,u,Z,J,Q),O){if(i.o=!0,$===null)H=i;else $.next=i;$=i}w.set(o,i)}R.add(o)}if(N===0&&X&&!U)if(O)U={fragment:null,effect:r0(()=>X(W))};else{var X0=document.createDocumentFragment(),Q0=l0();X0.append(Q0),U={fragment:X0,effect:r0(()=>X(Q0))}}if(r&&N>0)R0(H5());if(!O)if(v){for(let[q0,a]of w)if(!R.has(q0))k.skipped_effects.add(a.e);k.oncommit(A),k.ondiscard(()=>{})}else A();if(E)h0(!0);Y(M)}),y={effect:T,flags:J,items:w,first:H};if(O=!1,r)W=U0}function vK(z,J,Q,K,Z){var X=(K&xQ)!==0,W=J.length,w=z.items,H=z.first,B,F=null,q,G=[],U=[],M,I,O,A;if(X){for(A=0;A<W;A+=1)if(M=J[A],I=Z(M,A),O=w.get(I),O.o)O.a?.measure(),(q??=new Set).add(O)}for(A=0;A<W;A+=1){if(M=J[A],I=Z(M,A),O=w.get(I),z.first??=O,!O.o){O.o=!0;var T=F?F.next:H;q5(z,F,O),q5(z,O,T),d7(O,T,Q),F=O,G=[],U=[],H=F.next;continue}if((O.e.f&j1)!==0){if(vz(O.e),X)O.a?.unfix(),(q??=new Set).delete(O)}if(O!==H){if(B!==void 0&&B.has(O)){if(G.length<U.length){var y=U[0],N;F=y.prev;var E=G[0],b=G[G.length-1];for(N=0;N<G.length;N+=1)d7(G[N],y,Q);for(N=0;N<U.length;N+=1)B.delete(U[N]);q5(z,E.prev,b.next),q5(z,F,E),q5(z,b,y),H=y,F=b,A-=1,G=[],U=[]}else B.delete(O),d7(O,H,Q),q5(z,O.prev,O.next),q5(z,O,F===null?z.first:F.next),q5(z,F,O),F=O;continue}G=[],U=[];while(H!==null&&H.k!==I){if((H.e.f&j1)===0)(B??=new Set).add(H);U.push(H),H=H.next}if(H===null)continue;O=H}G.push(O),F=O,H=O.next}let R=w.size>W;if(H!==null||B!==void 0){var k=B===void 0?[]:Nz(B);while(H!==null){if((H.e.f&j1)===0)k.push(H);H=H.next}var $=k.length;if(R=w.size-$>W,$>0){var v=(K&b7)!==0&&W===0?Q:null;if(X){for(A=0;A<$;A+=1)k[A].a?.measure();for(A=0;A<$;A+=1)k[A].a?.fix()}yK(z,k,v)}}if(R){for(let u of w.values())if(!u.o)q5(z,F,u),F=u}if(z.effect.last=F&&F.e,X)u0(()=>{if(q===void 0)return;for(O of q)O.a?.apply()})}function gK(z,J,Q,K,Z,X,W,w){var H=Jz,B=(W&N7)!==0,F=(W&CQ)===0,q=B?F?i5(Q,!1,!1):w1(Q):Q,G=(W&k7)===0?Z:w1(Z);if(f&&B)q.trace=()=>{var I=typeof G==="number"?Z:G.v;w()[I]};var U={i:G,v:q,k:K,a:null,e:null,o:!1,prev:J,next:null};Jz=U;try{if(z===null){var M=document.createDocumentFragment();M.append(z=l0())}if(U.e=r0(()=>X(z,q,G,w)),J!==null)J.next=U;return U}finally{Jz=H}}function d7(z,J,Q){var K=z.next?z.next.e.nodes_start:Q,Z=J?J.e.nodes_start:Q,X=z.e.nodes_start;while(X!==null&&X!==K){var W=a0(X);Z.before(X),X=W}}function q5(z,J,Q){if(J===null)z.first=Q,z.effect.first=Q&&Q.e;else{if(J.e.next)J.e.next.prev=null;J.next=Q,J.e.next=Q&&Q.e}if(Q!==null){if(Q.e.prev)Q.e.prev.next=null;Q.prev=J,Q.e.prev=J&&J.e}}function Qz(z,J,Q,K){let Z=c1()?Z6:j6;if(Q.length===0&&z.length===0){K(J.map(Z));return}var X=F0,W=K0,w=_7();function H(){Promise.all(Q.map((B)=>s7(B))).then((B)=>{w();try{K([...J.map(Z),...B])}catch(F){if((W.f&b1)===0)R5(F,W)}X?.deactivate(),D6()}).catch((B)=>{R5(B,W)})}if(z.length>0)Promise.all(z).then(()=>{w();try{return H()}finally{X?.deactivate(),D6()}});else H()}function _7(){var z=K0,J=Y0,Q=L0,K=F0;if(f)var Z=V5;return function(W=!0){if(B1(z),c0(J),p5(Q),W)K?.activate();if(f)c7(null),t6(Z)}}function D6(){if(B1(null),c0(null),p5(null),f)c7(null),t6(null)}var Kz=null;function c7(z){Kz=z}var gz=new Set;function Z6(z){var J=g0|p0,Q=Y0!==null&&(Y0.f&g0)!==0?Y0:null;if(K0!==null)K0.f|=L5;let K={ctx:L0,deps:null,effects:null,equals:S8,f:J,fn:z,reactions:null,rv:0,v:E0,wv:0,parent:Q??K0,ac:null};if(f&&U5)K.created=D5("created at");return K}function s7(z,J){let Q=K0;if(Q===null)JQ();var K=Q.b,Z=void 0,X=w1(E0),W=!Y0,w=new Map;if(oQ(()=>{if(f)Kz=K0;var H=x8();Z=H.promise;try{Promise.resolve(z()).then(H.resolve,H.reject).then(()=>{if(B===F0&&B.committed)B.deactivate();D6()})}catch(G){H.reject(G),D6()}if(f)Kz=null;var B=F0;if(W){var F=!K.is_pending();K.update_pending_count(1),B.increment(F),w.get(B)?.reject(I5),w.delete(B),w.set(B,H)}let q=(G,U=void 0)=>{if(Kz=null,B.activate(),U){if(U!==I5)X.f|=J5,u1(X,U)}else{if((X.f&J5)!==0)X.f^=J5;u1(X,G);for(let[M,I]of w){if(w.delete(M),M===B)break;I.reject(I5)}if(f&&J!==void 0)gz.add(X),setTimeout(()=>{if(gz.has(X))NQ(X.label,J),gz.delete(X)})}if(W)K.update_pending_count(-1),B.decrement(F)};H.promise.then(q,(G)=>q(null,G||"unknown"))}),Q1(()=>{for(let H of w.values())H.reject(I5)}),f)X.f|=m5;return new Promise((H)=>{function B(F){function q(){if(F===Z)H(X);else B(Z)}F.then(q,q)}B(Z)})}function x0(z){let J=Z6(z);if(!R1)h8(J);return J}function j6(z){let J=Z6(z);return J.equals=j8,J}function v8(z){var J=z.effects;if(J!==null){z.effects=null;for(var Q=0;Q<J.length;Q+=1)y0(J[Q])}}var o7=[];function $K(z){var J=z.parent;while(J!==null){if((J.f&g0)===0)return(J.f&b1)===0?J:null;J=J.parent}return null}function hz(z){var J,Q=K0;if(B1($K(z)),f){let K=R6;k8(new Set);try{if(o7.includes(z))QQ();o7.push(z),z.f&=~z5,v8(z),J=g8(z)}finally{B1(Q),k8(K),o7.pop()}}else try{z.f&=~z5,v8(z),J=g8(z)}finally{B1(Q)}return J}function a7(z){var J=hz(z);if(!z.equals(J)){if(!F0?.is_fork)z.v=J;z.wv=fz()}if(F5)return;if(Y1!==null){if(j5()||F0?.is_fork)Y1.set(z,J)}else{var Q=(z.f&k1)===0?S1:$0;i0(z,Q)}}var R6=new Set,N5=new Map;function k8(z){R6=z}var r7=!1;function aQ(){r7=!0}function w1(z,J){var Q={f:0,v:z,reactions:null,equals:S8,rv:0,wv:0};if(f&&U5)Q.created=J??D5("created at"),Q.updated=null,Q.set_during_effect=!1,Q.trace=null;return Q}function m(z,J){let Q=w1(z,J);return h8(Q),Q}function i5(z,J=!1,Q=!0){let K=w1(z);if(!J)K.equals=j8;if(l5&&Q&&L0!==null&&L0.l!==null)(L0.l.s??=[]).push(K);return K}function D(z,J,Q=!1){if(Y0!==null&&(!o1||(Y0.f&O6)!==0)&&c1()&&(Y0.f&(g0|f1|m5|O6))!==0&&!b5?.includes(z))FQ();let K=Q?C0(J):J;if(f)D8(K,z.label);return u1(z,K)}function u1(z,J){if(!z.equals(J)){var Q=z.v;if(F5)N5.set(z,J);else N5.set(z,Q);z.v=J;var K=_0.ensure();if(K.capture(z,Q),f){if(U5||K0!==null){z.updated??=new Map;let Z=(z.updated.get("")?.count??0)+1;if(z.updated.set("",{error:null,count:Z}),U5||Z>5){let X=D5("updated at");if(X!==null){let W=z.updated.get(X.stack);if(!W)W={error:X,count:0},z.updated.set(X.stack,W);W.count++}}}if(K0!==null)z.set_during_effect=!0}if((z.f&g0)!==0){if((z.f&p0)!==0)hz(z);i0(z,(z.f&k1)!==0?$0:S1)}if(z.wv=fz(),rQ(z,p0),c1()&&K0!==null&&(K0.f&$0)!==0&&(K0.f&(N1|e1))===0)if(s1===null)nQ([z]);else s1.push(z);if(!K.is_fork&&R6.size>0&&!r7)b8()}return J}function b8(){r7=!1;var z=k5;zz(!0);let J=Array.from(R6);try{for(let Q of J){if((Q.f&$0)!==0)i0(Q,S1);if(K6(Q))J6(Q)}}finally{zz(z)}R6.clear()}function S6(z){D(z,z.v+1)}function rQ(z,J){var Q=z.reactions;if(Q===null)return;var K=c1(),Z=Q.length;for(var X=0;X<Z;X++){var W=Q[X],w=W.f;if(!K&&W===K0)continue;if(f&&(w&O6)!==0){R6.add(W);continue}var H=(w&p0)===0;if(H)i0(W,J);if((w&g0)!==0){var B=W;if(Y1?.delete(B),(w&z5)===0){if(w&k1)W.f|=z5;rQ(B,S1)}}else if(H){if((w&f1)!==0&&K5!==null)K5.add(W);A5(W)}}}var uK=/^[a-zA-Z_$][a-zA-Z_$0-9]*$/;function C0(z){if(typeof z!=="object"||z===null||z1 in z)return z;let J=F6(z);if(J!==S7&&J!==nJ)return z;var Q=new Map,K=w5(z),Z=m(0),X=f&&U5?D5("created at"):null,W=X6,w=(q)=>{if(X6===W)return q();var G=Y0,U=X6;c0(null),n7(W);var M=q();return c0(G),n7(U),M};if(K){if(Q.set("length",m(z.length,X)),f)z=pK(z)}var H="";let B=!1;function F(q){if(B)return;B=!0,H=q,$1(Z,`${H} version`);for(let[G,U]of Q)$1(U,A6(H,G));B=!1}return new Proxy(z,{defineProperty(q,G,U){if(!("value"in U)||U.configurable===!1||U.enumerable===!1||U.writable===!1)VQ();var M=Q.get(G);if(M===void 0)M=w(()=>{var I=m(U.value,X);if(Q.set(G,I),f&&typeof G==="string")$1(I,A6(H,G));return I});else D(M,U.value,!0);return!0},deleteProperty(q,G){var U=Q.get(G);if(U===void 0){if(G in q){let M=w(()=>m(E0,X));if(Q.set(G,M),S6(Z),f)$1(M,A6(H,G))}}else D(U,E0),S6(Z);return!0},get(q,G,U){if(G===z1)return z;if(f&&G===O8)return F;var M=Q.get(G),I=G in q;if(M===void 0&&(!I||I1(q,G)?.writable))M=w(()=>{var A=C0(I?q[G]:E0),T=m(A,X);if(f)$1(T,A6(H,G));return T}),Q.set(G,M);if(M!==void 0){var O=Y(M);return O===E0?void 0:O}return Reflect.get(q,G,U)},getOwnPropertyDescriptor(q,G){var U=Reflect.getOwnPropertyDescriptor(q,G);if(U&&"value"in U){var M=Q.get(G);if(M)U.value=Y(M)}else if(U===void 0){var I=Q.get(G),O=I?.v;if(I!==void 0&&O!==E0)return{enumerable:!0,configurable:!0,value:O,writable:!0}}return U},has(q,G){if(G===z1)return!0;var U=Q.get(G),M=U!==void 0&&U.v!==E0||Reflect.has(q,G);if(U!==void 0||K0!==null&&(!M||I1(q,G)?.writable)){if(U===void 0)U=w(()=>{var O=M?C0(q[G]):E0,A=m(O,X);if(f)$1(A,A6(H,G));return A}),Q.set(G,U);var I=Y(U);if(I===E0)return!1}return M},set(q,G,U,M){var I=Q.get(G),O=G in q;if(K&&G==="length")for(var A=U;A<I.v;A+=1){var T=Q.get(A+"");if(T!==void 0)D(T,E0);else if(A in q){if(T=w(()=>m(E0,X)),Q.set(A+"",T),f)$1(T,A6(H,A))}}if(I===void 0){if(!O||I1(q,G)?.writable){if(I=w(()=>m(void 0,X)),f)$1(I,A6(H,G));D(I,C0(U)),Q.set(G,I)}}else{O=I.v!==E0;var y=w(()=>C0(U));D(I,y)}var N=Reflect.getOwnPropertyDescriptor(q,G);if(N?.set)N.set.call(M,U);if(!O){if(K&&typeof G==="string"){var E=Q.get("length"),b=Number(G);if(Number.isInteger(b)&&b>=E.v)D(E,b+1)}S6(Z)}return!0},ownKeys(q){Y(Z);var G=Reflect.ownKeys(q).filter((I)=>{var O=Q.get(I);return O===void 0||O.v!==E0});for(var[U,M]of Q)if(M.v!==E0&&!(U in q))G.push(U);return G},setPrototypeOf(){qQ()}})}function A6(z,J){if(typeof J==="symbol")return`${z}[Symbol(${J.description??""})]`;if(uK.test(J))return`${z}.${J}`;return/^\d+$/.test(J)?`${z}[${J}]`:`${z}['${J}']`}function Zz(z){try{if(z!==null&&typeof z==="object"&&z1 in z)return z[z1]}catch{}return z}function f8(z,J){return Object.is(Zz(z),Zz(J))}var lK=new Set(["copyWithin","fill","pop","push","reverse","shift","sort","splice","unshift"]);function pK(z){return new Proxy(z,{get(J,Q,K){var Z=Reflect.get(J,Q,K);if(!lK.has(Q))return Z;return function(...X){aQ();var W=Z.apply(this,X);return b8(),W}}})}function tQ(){let{prototype:z,__svelte_cleanup:J}=Array;if(J)J();let{indexOf:Q,lastIndexOf:K,includes:Z}=z;z.indexOf=function(X,W){let w=Q.call(this,X,W);if(w===-1){for(let H=W??0;H<this.length;H+=1)if(Zz(this[H])===X){L8("array.indexOf(...)");break}}return w},z.lastIndexOf=function(X,W){let w=K.call(this,X,W??this.length-1);if(w===-1){for(let H=0;H<=(W??this.length-1);H+=1)if(Zz(this[H])===X){L8("array.lastIndexOf(...)");break}}return w},z.includes=function(X,W){let w=Z.call(this,X,W);if(!w){for(let H=0;H<this.length;H+=1)if(Zz(this[H])===X){L8("array.includes(...)");break}}return w},Array.__svelte_cleanup=()=>{z.indexOf=Q,z.lastIndexOf=K,z.includes=Z}}var t7,W6,Tz,eQ,z4;function m8(){if(t7!==void 0)return;t7=window,W6=document,Tz=/Firefox/.test(navigator.userAgent);var z=Element.prototype,J=Node.prototype,Q=Text.prototype;if(eQ=I1(J,"firstChild").get,z4=I1(J,"nextSibling").get,j7(z))z.__click=void 0,z.__className=void 0,z.__attributes=null,z.__style=void 0,z.__e=void 0;if(j7(Q))Q.__t=void 0;if(f)z.__svelte_meta=null,tQ()}function l0(z=""){return document.createTextNode(z)}function s0(z){return eQ.call(z)}function a0(z){return z4.call(z)}function C(z,J){if(!r)return s0(z);var Q=s0(U0);if(Q===null)Q=U0.appendChild(l0());else if(J&&Q.nodeType!==n6){var K=l0();return Q?.before(K),R0(K),K}return R0(Q),Q}function h(z,J=!1){if(!r){var Q=s0(z);if(Q instanceof Comment&&Q.data==="")return a0(Q);return Q}if(J&&U0?.nodeType!==n6){var K=l0();return U0?.before(K),R0(K),K}return U0}function S(z,J=1,Q=!1){let K=r?U0:z;var Z;while(J--)Z=K,K=a0(K);if(!r)return K;if(Q&&K?.nodeType!==n6){var X=l0();if(K===null)Z?.after(X);else K.before(X);return R0(X),X}return R0(K),K}function yz(z){z.textContent=""}function E8(){if(!R1)return!1;if(K5!==null)return!1;var z=K0.f;return(z&G5)!==0}function N6(z,J){if(J){let Q=document.body;z.autofocus=!0,u0(()=>{if(document.activeElement===Q)z.focus()})}}var J4=!1;function $8(){if(!J4)J4=!0,document.addEventListener("reset",(z)=>{Promise.resolve().then(()=>{if(!z.defaultPrevented)for(let J of z.target.elements)J.__on_r?.()})},{capture:!0})}function _5(z){var J=Y0,Q=K0;c0(null),B1(null);try{return z()}finally{c0(J),B1(Q)}}function mz(z,J,Q,K=Q){z.addEventListener(J,()=>_5(Q));let Z=z.__on_r;if(Z)z.__on_r=()=>{Z(),K(!0)};else z.__on_r=()=>K(!0);$8()}function z9(z){if(K0===null){if(Y0===null)XQ(z);ZQ()}if(F5)KQ(z)}function dK(z,J){var Q=J.last;if(Q===null)J.last=J.first=z;else Q.next=z,z.prev=Q,J.last=z}function a1(z,J,Q){var K=K0;if(f)while(K!==null&&(K.f&O6)!==0)K=K.parent;if(K!==null&&(K.f&j1)!==0)z|=j1;var Z={ctx:L0,deps:null,nodes_start:null,nodes_end:null,f:z|p0|k1,first:null,fn:J,last:null,next:null,parent:K,b:K&&K.b,prev:null,teardown:null,transitions:null,wv:0,ac:null};if(f)Z.component_function=_1;if(Q)try{J6(Z),Z.f|=G5}catch(w){throw y0(Z),w}else if(J!==null)A5(Z);var X=Z;if(Q&&X.deps===null&&X.teardown===null&&X.nodes_start===null&&X.first===X.last&&(X.f&L5)===0){if(X=X.first,(z&f1)!==0&&(z&T1)!==0&&X!==null)X.f|=T1}if(X!==null){if(X.parent=K,K!==null)dK(X,K);if(Y0!==null&&(Y0.f&g0)!==0&&(z&e1)===0){var W=Y0;(W.effects??=[]).push(X)}}return Z}function j5(){return Y0!==null&&!o1}function Q1(z){let J=a1(x6,null,!1);return i0(J,$0),J.teardown=z,J}function K1(z){if(z9("$effect"),f)V1(z,"name",{value:"$effect"});var J=K0.f,Q=!Y0&&(J&N1)!==0&&(J&G5)===0;if(Q){var K=L0;(K.e??=[]).push(z)}else return h7(z)}function h7(z){return a1(s6|R7,z,!1)}function $z(z){if(z9("$effect.pre"),f)V1(z,"name",{value:"$effect.pre"});return a1(x6|R7,z,!0)}function J9(z){_0.ensure();let J=a1(e1|L5,z,!0);return()=>{y0(J)}}function Q4(z){_0.ensure();let J=a1(e1|L5,z,!0);return(Q={})=>{return new Promise((K)=>{if(Q.outro)d5(J,()=>{y0(J),K(void 0)});else y0(J),K(void 0)})}}function H1(z){return a1(s6,z,!1)}function oQ(z){return a1(m5|L5,z,!0)}function G1(z,J=0){return a1(x6|J,z,!0)}function g(z,J=[],Q=[],K=[]){Qz(K,J,Q,(Z)=>{a1(x6,()=>z(...Z.map(Y)),!0)})}function uz(z,J=[],Q=[],K=[]){var Z=F0,X=Q.length>0||K.length>0;if(X)Z.increment(!0);Qz(K,J,Q,(W)=>{if(a1(s6,()=>z(...W.map(Y)),!1),X)Z.decrement(!0)})}function M1(z,J=0){var Q=a1(f1|J,z,!0);if(f)Q.dev_stack=V5;return Q}function u8(z,J=0){var Q=a1(o6|J,z,!0);if(f)Q.dev_stack=V5;return Q}function r0(z){return a1(N1|L5,z,!0)}function Q9(z){var J=z.teardown;if(J!==null){let Q=F5,K=Y0;e7(!0),c0(null);try{J.call(null)}finally{e7(Q),c0(K)}}}function K9(z,J=!1){var Q=z.first;z.first=z.last=null;while(Q!==null){let Z=Q.ac;if(Z!==null)_5(()=>{Z.abort(I5)});var K=Q.next;if((Q.f&e1)!==0)Q.parent=null;else y0(Q,J);Q=K}}function K4(z){var J=z.first;while(J!==null){var Q=J.next;if((J.f&N1)===0)y0(J);J=Q}}function y0(z,J=!0){var Q=!1;if((J||(z.f&a6)!==0)&&z.nodes_start!==null&&z.nodes_end!==null)Z9(z.nodes_start,z.nodes_end),Q=!0;K9(z,J&&!Q),lz(z,0),i0(z,b1);var K=z.transitions;if(K!==null)for(let X of K)X.stop();Q9(z);var Z=z.parent;if(Z!==null&&Z.first!==null)u7(z);if(f)z.component_function=null;z.next=z.prev=z.teardown=z.ctx=z.deps=z.fn=z.nodes_start=z.nodes_end=z.ac=null}function Z9(z,J){while(z!==null){var Q=z===J?null:a0(z);z.remove(),z=Q}}function u7(z){var{parent:J,prev:Q,next:K}=z;if(Q!==null)Q.next=K;if(K!==null)K.prev=Q;if(J!==null){if(J.first===z)J.first=K;if(J.last===z)J.last=Q}}function d5(z,J,Q=!0){var K=[];y8(z,K,!0),i7(K,()=>{if(Q)y0(z);if(J)J()})}function i7(z,J){var Q=z.length;if(Q>0){var K=()=>--Q||J();for(var Z of z)Z.out(K)}else J()}function y8(z,J,Q){if((z.f&j1)!==0)return;if(z.f^=j1,z.transitions!==null){for(let W of z.transitions)if(W.is_global||Q)J.push(W)}var K=z.first;while(K!==null){var Z=K.next,X=(K.f&T1)!==0||(K.f&N1)!==0&&(z.f&f1)!==0;y8(K,J,X?Q:!1),K=Z}}function vz(z){Z4(z,!0)}function Z4(z,J){if((z.f&j1)===0)return;if(z.f^=j1,(z.f&$0)===0)i0(z,p0),A5(z);var Q=z.first;while(Q!==null){var K=Q.next,Z=(Q.f&T1)!==0||(Q.f&N1)!==0;Z4(Q,Z?J:!1),Q=K}if(z.transitions!==null){for(let X of z.transitions)if(X.is_global||J)X.in()}}function T8(z,J){var{nodes_start:Q,nodes_end:K}=z;while(Q!==null){var Z=Q===K?null:a0(Q);J.append(Q),Q=Z}}var X4=null;var k5=!1;function zz(z){k5=z}var F5=!1;function e7(z){F5=z}var Y0=null,o1=!1;function c0(z){Y0=z}var K0=null;function B1(z){K0=z}var b5=null;function h8(z){if(Y0!==null&&(!R1||(Y0.f&g0)!==0))if(b5===null)b5=[z];else b5.push(z)}var E1=null,r1=0,s1=null;function nQ(z){s1=z}var W4=1,pz=0,X6=pz;function n7(z){X6=z}function fz(){return++W4}function K6(z){var J=z.f;if((J&p0)!==0)return!0;if(J&g0)z.f&=~z5;if((J&S1)!==0){var Q=z.deps;if(Q!==null){var K=Q.length;for(var Z=0;Z<K;Z++){var X=Q[Z];if(K6(X))a7(X);if(X.wv>z.wv)return!0}}if((J&k1)!==0&&Y1===null)i0(z,$0)}return!1}function Y4(z,J,Q=!0){var K=z.reactions;if(K===null)return;if(!R1&&b5?.includes(z))return;for(var Z=0;Z<K.length;Z++){var X=K[Z];if((X.f&g0)!==0)Y4(X,J,!1);else if(J===X){if(Q)i0(X,p0);else if((X.f&$0)!==0)i0(X,S1);A5(X)}}}function g8(z){var J=E1,Q=r1,K=s1,Z=Y0,X=b5,W=L0,w=o1,H=X6,B=z.f;if(E1=null,r1=0,s1=null,Y0=(B&(N1|e1))===0?z:null,b5=null,p5(z.ctx),o1=!1,X6=++pz,z.ac!==null)_5(()=>{z.ac.abort(I5)}),z.ac=null;try{z.f|=C8;var F=z.fn,q=F(),G=z.deps;if(E1!==null){var U;if(lz(z,r1),G!==null&&r1>0){G.length=r1+E1.length;for(U=0;U<E1.length;U++)G[r1+U]=E1[U]}else z.deps=G=E1;if(k5&&j5()&&(z.f&k1)!==0)for(U=r1;U<G.length;U++)(G[U].reactions??=[]).push(z)}else if(G!==null&&r1<G.length)lz(z,r1),G.length=r1;if(c1()&&s1!==null&&!o1&&G!==null&&(z.f&(g0|S1|p0))===0)for(U=0;U<s1.length;U++)Y4(s1[U],z);if(Z!==null&&Z!==z){if(pz++,s1!==null)if(K===null)K=s1;else K.push(...s1)}if((z.f&J5)!==0)z.f^=J5;return q}catch(M){return A8(M)}finally{z.f^=C8,E1=J,r1=Q,s1=K,Y0=Z,b5=X,p5(W),o1=w,X6=H}}function iK(z,J){let Q=J.reactions;if(Q!==null){var K=rJ.call(Q,z);if(K!==-1){var Z=Q.length-1;if(Z===0)Q=J.reactions=null;else Q[K]=Q[Z],Q.pop()}}if(Q===null&&(J.f&g0)!==0&&(E1===null||!E1.includes(J))){if(i0(J,S1),(J.f&k1)!==0)J.f^=k1,J.f&=~z5;v8(J),lz(J,0)}}function lz(z,J){var Q=z.deps;if(Q===null)return;for(var K=J;K<Q.length;K++)iK(z,Q[K])}function J6(z){var J=z.f;if((J&b1)!==0)return;i0(z,$0);var Q=K0,K=k5;if(K0=z,k5=!0,f){var Z=_1;R8(z.component_function);var X=V5;t6(z.dev_stack??V5)}try{if((J&(f1|o6))!==0)K4(z);else K9(z);Q9(z);var W=g8(z);if(z.teardown=typeof W==="function"?W:null,z.wv=W4,f&&U5&&(z.f&p0)!==0&&z.deps!==null){for(var w of z.deps)if(w.set_during_effect)w.wv=fz(),w.set_during_effect=!1}}finally{if(k5=K,K0=Q,f)R8(Z),t6(X)}}async function Ez(){if(R1)return new Promise((z)=>{requestAnimationFrame(()=>z()),setTimeout(()=>z())});await Promise.resolve(),Q6()}function Y(z){var J=z.f,Q=(J&g0)!==0;if(X4?.add(z),Y0!==null&&!o1){var K=K0!==null&&(K0.f&b1)!==0;if(!K&&!b5?.includes(z)){var Z=Y0.deps;if((Y0.f&C8)!==0){if(z.rv<pz){if(z.rv=pz,E1===null&&Z!==null&&Z[r1]===z)r1++;else if(E1===null)E1=[z];else if(!E1.includes(z))E1.push(z)}}else{(Y0.deps??=[]).push(z);var X=z.reactions;if(X===null)z.reactions=[Y0];else if(!X.includes(Y0))X.push(Y0)}}}if(f){if(gz.delete(z),U5&&!o1&&bz!==null&&Y0!==null&&bz.reaction===Y0)if(z.trace)z.trace();else{var W=D5("traced at");if(W){var w=bz.entries.get(z);if(w===void 0)w={traces:[]},bz.entries.set(z,w);var H=w.traces[w.traces.length-1];if(W.stack!==H?.stack)w.traces.push(W)}}}if(F5){if(N5.has(z))return N5.get(z);if(Q){var B=z,F=B.v;if((B.f&$0)===0&&B.reactions!==null||G4(B))F=hz(B);return N5.set(B,F),F}}else if(Q&&(!Y1?.has(z)||F0?.is_fork&&!j5())){if(B=z,K6(B))a7(B);if(k5&&j5()&&(B.f&k1)===0)w4(B)}if(Y1?.has(z))return Y1.get(z);if((z.f&J5)!==0)throw z.v;return z.v}function w4(z){if(z.deps===null)return;z.f^=k1;for(let J of z.deps)if((J.reactions??=[]).push(z),(J.f&g0)!==0&&(J.f&k1)===0)w4(J)}function G4(z){if(z.v===E0)return!0;if(z.deps===null)return!1;for(let J of z.deps){if(N5.has(J))return!0;if((J.f&g0)!==0&&G4(J))return!0}return!1}function b0(z){var J=o1;try{return o1=!0,z()}finally{o1=J}}var _K=~(p0|S1|$0);function i0(z,J){z.f=z.f&_K|J}function p8(z){if(typeof z!=="object"||!z||z instanceof EventTarget)return;if(z1 in z)l8(z);else if(!Array.isArray(z))for(let J in z){let Q=z[J];if(typeof Q==="object"&&Q&&z1 in Q)l8(Q)}}function l8(z,J=new Set){if(typeof z==="object"&&z!==null&&!(z instanceof EventTarget)&&!J.has(z)){if(J.add(z),z instanceof Date)z.getTime();for(let K in z)try{l8(z[K],J)}catch(Z){}let Q=F6(z);if(Q!==Object.prototype&&Q!==Array.prototype&&Q!==Map.prototype&&Q!==Set.prototype&&Q!==Date.prototype){let K=M8(Q);for(let Z in K){let X=K[Z].get;if(X)try{X.call(z)}catch(W){}}}}}var cK=/\r/g;function B4(z){z=z.replace(cK,"");let J=5381,Q=z.length;while(Q--)J=(J<<5)-J^z.charCodeAt(Q);return(J>>>0).toString(36)}function H4(z){return z.endsWith("capture")&&z!=="gotpointercapture"&&z!=="lostpointercapture"}var sK=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function U4(z){return sK.includes(z)}var oK=["allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","indeterminate","inert","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected","webkitdirectory","defer","disablepictureinpicture","disableremoteplayback"];var aK={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function V4(z){return z=z.toLowerCase(),aK[z]??z}var D2=[...oK,"formNoValidate","isMap","noModule","playsInline","readOnly","value","volume","defaultValue","defaultChecked","srcObject","noValidate","allowFullscreen","disablePictureInPicture","disableRemotePlayback"];var rK=["touchstart","touchmove"];function q4(z){return rK.includes(z)}var nK=["$state","$state.raw","$derived","$derived.by"],R2=[...nK,"$state.eager","$state.snapshot","$props","$props.id","$bindable","$effect","$effect.pre","$effect.tracking","$effect.root","$effect.pending","$inspect","$inspect().with","$inspect.trace","$host"];function d8(z){return z?.replace(/\//g,"/​")}var X9=new Set,i8=new Set;function Xz(z){if(!r)return;z.removeAttribute("onload"),z.removeAttribute("onerror");let J=z.__e;if(J!==void 0)z.__e=void 0,queueMicrotask(()=>{if(z.isConnected)z.dispatchEvent(J)})}function W9(z,J,Q,K={}){function Z(X){if(!K.capture)Wz.call(J,X);if(!X.cancelBubble)return _5(()=>{return Q?.call(this,X)})}if(z.startsWith("pointer")||z.startsWith("touch")||z==="wheel")u0(()=>{J.addEventListener(z,Z,K)});else J.addEventListener(z,Z,K);return Z}function C1(z,J,Q,K,Z){var X={capture:K,passive:Z},W=W9(z,J,Q,X);if(J===document.body||J===window||J===document||J instanceof HTMLMediaElement)Q1(()=>{J.removeEventListener(z,W,X)})}function I0(z){for(var J=0;J<z.length;J++)X9.add(z[J]);for(var Q of i8)Q(z)}var M4=null;function Wz(z){var J=this,Q=J.ownerDocument,K=z.type,Z=z.composedPath?.()||[],X=Z[0]||z.target;M4=z;var W=0,w=M4===z&&z.__root;if(w){var H=Z.indexOf(w);if(H!==-1&&(J===document||J===window)){z.__root=J;return}var B=Z.indexOf(J);if(B===-1)return;if(H<=B)W=H}if(X=Z[W]||z.target,X===J)return;V1(z,"currentTarget",{configurable:!0,get(){return X||Q}});var F=Y0,q=K0;c0(null),B1(null);try{var G,U=[];while(X!==null){var M=X.assignedSlot||X.parentNode||X.host||null;try{var I=X["__"+K];if(I!=null&&(!X.disabled||z.target===X))I.call(X,z)}catch(O){if(G)U.push(O);else G=O}if(z.cancelBubble||M===J||M===null)break;X=M}if(G){for(let O of U)queueMicrotask(()=>{throw O});throw G}}finally{z.__root=J,delete z.currentTarget,c0(F),B1(q)}}function dz(z){var J=document.createElement("template");return J.innerHTML=z.replaceAll("<!>","<!---->"),J.content}function l1(z,J){var Q=K0;if(Q.nodes_start===null)Q.nodes_start=z,Q.nodes_end=J}function P(z,J){var Q=(J&jQ)!==0,K=(J&DQ)!==0,Z,X=!z.startsWith("<!>");return()=>{if(r)return l1(U0,null),U0;if(Z===void 0){if(Z=dz(X?z:"<!>"+z),!Q)Z=s0(Z)}var W=K||Tz?document.importNode(Z,!0):Z.cloneNode(!0);if(Q){var w=s0(W),H=W.lastChild;l1(w,H)}else l1(W,W);return W}}function A1(z=""){if(!r){var J=l0(z+"");return l1(J,J),J}var Q=U0;if(Q.nodeType!==n6)Q.before(Q=l0()),R0(Q);return l1(Q,Q),Q}function d(){if(r)return l1(U0,null),U0;var z=document.createDocumentFragment(),J=document.createComment(""),Q=l0();return z.append(J,Q),l1(J,Q),z}function V(z,J){if(r){var Q=K0;if((Q.f&G5)===0||Q.nodes_end===null)Q.nodes_end=U0;d0();return}if(z===null)return;z.before(J)}var Y9=!0;function l(z,J){var Q=J==null?"":typeof J==="object"?J+"":J;if(Q!==(z.__t??=z.nodeValue))z.__t=Q,z.nodeValue=Q+""}function wz(z,J){return C4(z,J)}function G9(z,J){m8(),J.intro=J.intro??!1;let Q=J.target,K=r,Z=U0;try{var X=s0(Q);while(X&&(X.nodeType!==D1||X.data!==kz))X=a0(X);if(!X)throw S5;h0(!0),R0(X);let W=C4(z,{...J,anchor:X});return h0(!1),W}catch(W){if(W instanceof Error&&W.message.split(` 45`).some((w)=>w.startsWith("https://svelte.dev/e/")))throw W;if(W!==S5)console.warn("Failed to hydrate: ",W);if(J.recover===!1)YQ();return m8(),yz(Q),h0(!1),wz(z,J)}finally{h0(K),R0(Z)}}var Yz=new Map;function C4(z,{target:J,anchor:Q,props:K={},events:Z,context:X,intro:W=!0}){m8();var w=new Set,H=(q)=>{for(var G=0;G<q.length;G++){var U=q[G];if(w.has(U))continue;w.add(U);var M=q4(U);J.addEventListener(U,Wz,{passive:M});var I=Yz.get(U);if(I===void 0)document.addEventListener(U,Wz,{passive:M}),Yz.set(U,1);else Yz.set(U,I+1)}};H(Nz(X9)),i8.add(H);var B=void 0,F=Q4(()=>{var q=Q??J.appendChild(l0());return l7(q,{pending:()=>{}},(G)=>{if(X){c({});var U=L0;U.c=X}if(Z)K.$$events=Z;if(r)l1(G,null);if(Y9=W,B=z(G,K)||{},Y9=!0,r){if(K0.nodes_end=U0,U0===null||U0.nodeType!==D1||U0.data!==P6)throw e5(),S5}if(X)s()}),()=>{for(var G of w){J.removeEventListener(G,Wz);var U=Yz.get(G);if(--U===0)document.removeEventListener(G,Wz),Yz.delete(G);else Yz.set(G,U)}if(i8.delete(H),q!==Q)q.parentNode?.removeChild(q)}});return w9.set(B,F),B}var w9=new WeakMap;function B9(z,J){let Q=w9.get(z);if(Q)return w9.delete(z),Q(J);if(f)if(z1 in z)yQ();else TQ();return Promise.resolve()}class M5{anchor;#z=new Map;#J=new Map;#Q=new Map;#K=new Set;#w=!0;constructor(z,J=!0){this.anchor=z,this.#w=J}#X=()=>{var z=F0;if(!this.#z.has(z))return;var J=this.#z.get(z),Q=this.#J.get(J);if(Q)vz(Q),this.#K.delete(J);else{var K=this.#Q.get(J);if(K)this.#J.set(J,K.effect),this.#Q.delete(J),K.fragment.lastChild.remove(),this.anchor.before(K.fragment),Q=K.effect}for(let[Z,X]of this.#z){if(this.#z.delete(Z),Z===z)break;let W=this.#Q.get(X);if(W)y0(W.effect),this.#Q.delete(X)}for(let[Z,X]of this.#J){if(Z===J||this.#K.has(Z))continue;let W=()=>{if(Array.from(this.#z.values()).includes(Z)){var H=document.createDocumentFragment();T8(X,H),H.append(l0()),this.#Q.set(Z,{effect:X,fragment:H})}else y0(X);this.#K.delete(Z),this.#J.delete(Z)};if(this.#w||!Q)this.#K.add(Z),d5(X,W,!1);else W()}};#Z=(z)=>{this.#z.delete(z);let J=Array.from(this.#z.values());for(let[Q,K]of this.#Q)if(!J.includes(Q))y0(K.effect),this.#Q.delete(Q)};ensure(z,J){var Q=F0,K=E8();if(J&&!this.#J.has(z)&&!this.#Q.has(z))if(K){var Z=document.createDocumentFragment(),X=l0();Z.append(X),this.#Q.set(z,{effect:r0(()=>J(X)),fragment:Z})}else this.#J.set(z,r0(()=>J(this.anchor)));if(this.#z.set(Q,z),K){for(let[W,w]of this.#J)if(W===z)Q.skipped_effects.delete(w);else Q.skipped_effects.add(w);for(let[W,w]of this.#Q)if(W===z)Q.skipped_effects.delete(w.effect);else Q.skipped_effects.add(w.effect);Q.oncommit(this.#X),Q.ondiscard(this.#Z)}else{if(r)this.anchor=U0;this.#X()}}}var O4=0,H9=1;function k6(z,J,Q,K,Z){if(r)d0();var X=c1(),W=E0,w=X?w1(W):i5(W,!1,!1),H=X?w1(W):i5(W,!1,!1),B=new M5(z);M1(()=>{var F=J(),q=!1;let G=r&&D7(F)===(z.data===B5);if(G)R0(H5()),h0(!1);if(D7(F)){var U=_7(),M=!1;let I=(O)=>{if(q)return;if(M=!0,U(!1),_0.ensure(),r)h0(!1);try{O()}finally{if(D6(),!z6)Q6()}};if(F.then((O)=>{I(()=>{u1(w,O),B.ensure(H9,K&&((A)=>K(A,w)))})},(O)=>{I(()=>{if(u1(H,O),B.ensure(H9,Z&&((A)=>Z(A,H))),!Z)throw H.v})}),r)B.ensure(O4,Q);else u0(()=>{if(!M)I(()=>{B.ensure(O4,Q)})})}else u1(w,F),B.ensure(H9,K&&((I)=>K(I,w)));if(G)h0(!0);return()=>{q=!0}})}function j(z,J,Q=!1){if(r)d0();var K=new M5(z),Z=Q?T1:0;function X(W,w){if(r){let B=I8(z)===B5;if(W===B){var H=H5();R0(H),K.anchor=H,h0(!1),K.ensure(W,w),h0(!0);return}}K.ensure(W,w)}M1(()=>{var W=!1;if(J((w,H=!0)=>{W=!0,X(H,w)}),!W)X(!1,null)},Z)}function U9(z,J,Q){if(r)d0();var K=new M5(z),Z=!c1();M1(()=>{var X=J();if(Z&&X!==null&&typeof X==="object")X={};K.ensure(X,Q)})}function zZ(z,J,Q){if(!J||J===B4(String(Q??"")))return;let K,Z=z.__svelte_meta?.loc;if(Z)K=`near ${Z.file}:${Z.line}:${Z.column}`;else if(_1?.[m1])K=`in ${_1[m1]}`;bQ(d8(K))}function V9(z,J,Q=!1,K=!1,Z=!1){var X=z,W="";g(()=>{var w=K0;if(W===(W=J()??"")){if(r)d0();return}if(w.nodes_start!==null)Z9(w.nodes_start,w.nodes_end),w.nodes_start=w.nodes_end=null;if(W==="")return;if(r){var H=U0.data,B=d0(),F=B;while(B!==null&&(B.nodeType!==D1||B.data!==""))F=B,B=a0(B);if(B===null)throw e5(),S5;if(f&&!Z)zZ(B.parentNode,H,W);l1(U0,F),X=R0(B);return}var q=W+"";if(Q)q=`<svg>${q}</svg>`;else if(K)q=`<math>${q}</math>`;var G=dz(q);if(Q||K)G=s0(G);if(l1(s0(G),G.lastChild),Q||K)while(s0(G))X.before(s0(G));else X.before(G)})}function Y6(z,J,...Q){var K=new M5(z);M1(()=>{let Z=J()??null;if(f&&Z==null)wQ();K.ensure(Z,Z&&((X)=>Z(X,...Q)))},T1)}function b6(z,J){let Q=null,K=r;var Z;if(r){Q=U0;var X=s0(document.head);while(X!==null&&(X.nodeType!==D1||X.data!==z))X=a0(X);if(X===null)h0(!1);else{var W=a0(X);X.remove(),R0(W)}}if(!r)Z=document.head.appendChild(l0());try{M1(()=>J(Z),a6)}finally{if(K)h0(!0),R0(Q)}}function q9(z,J){var Q=void 0,K;u8(()=>{if(Q!==(Q=J())){if(K)y0(K),K=null;if(Q)K=r0(()=>{H1(()=>Q(z))})}})}function P4(z){var J,Q,K="";if(typeof z=="string"||typeof z=="number")K+=z;else if(typeof z=="object")if(Array.isArray(z)){var Z=z.length;for(J=0;J<Z;J++)z[J]&&(Q=P4(z[J]))&&(K&&(K+=" "),K+=Q)}else for(Q in z)z[Q]&&(K&&(K+=" "),K+=Q);return K}function L4(){for(var z,J,Q=0,K="",Z=arguments.length;Q<Z;Q++)(z=arguments[Q])&&(J=P4(z))&&(K&&(K+=" "),K+=J);return K}function T6(z){if(typeof z==="object")return L4(z);else return z??""}var I4=[...` 46\r\f \v\uFEFF`];function j4(z,J,Q){var K=z==null?"":""+z;if(J)K=K?K+" "+J:J;if(Q){for(var Z in Q)if(Q[Z])K=K?K+" "+Z:Z;else if(K.length){var X=Z.length,W=0;while((W=K.indexOf(Z,W))>=0){var w=W+X;if((W===0||I4.includes(K[W-1]))&&(w===K.length||I4.includes(K[w])))K=(W===0?"":K.substring(0,W))+K.substring(w+1);else W=w}}}return K===""?null:K}function S4(z,J=!1){var Q=J?" !important;":";",K="";for(var Z in z){var X=z[Z];if(X!=null&&X!=="")K+=" "+Z+": "+X+Q}return K}function F9(z){if(z[0]!=="-"||z[1]!=="-")return z.toLowerCase();return z}function D4(z,J){if(J){var Q="",K,Z;if(Array.isArray(J))K=J[0],Z=J[1];else K=J;if(z){z=String(z).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var X=!1,W=0,w=!1,H=[];if(K)H.push(...Object.keys(K).map(F9));if(Z)H.push(...Object.keys(Z).map(F9));var B=0,F=-1;let I=z.length;for(var q=0;q<I;q++){var G=z[q];if(w){if(G==="/"&&z[q-1]==="*")w=!1}else if(X){if(X===G)X=!1}else if(G==="/"&&z[q+1]==="*")w=!0;else if(G==='"'||G==="'")X=G;else if(G==="(")W++;else if(G===")")W--;if(!w&&X===!1&&W===0){if(G===":"&&F===-1)F=q;else if(G===";"||q===I-1){if(F!==-1){var U=F9(z.substring(B,F).trim());if(!H.includes(U)){if(G!==";")q++;var M=z.substring(B,q).trim();Q+=" "+M+";"}}B=q+1,F=-1}}}}if(K)Q+=S4(K);if(Z)Q+=S4(Z,!0);return Q=Q.trim(),Q===""?null:Q}return z==null?null:String(z)}function Z1(z,J,Q,K,Z,X){var W=z.__className;if(r||W!==Q||W===void 0){var w=j4(Q,K,X);if(!r||w!==z.getAttribute("class"))if(w==null)z.removeAttribute("class");else if(J)z.className=w;else z.setAttribute("class",w);z.__className=Q}else if(X&&Z!==X)for(var H in X){var B=!!X[H];if(Z==null||B!==!!Z[H])z.classList.toggle(H,B)}return X}function M9(z,J={},Q,K){for(var Z in Q){var X=Q[Z];if(J[Z]!==X)if(Q[Z]==null)z.style.removeProperty(Z);else z.style.setProperty(Z,X,K)}}function c5(z,J,Q,K){var Z=z.__style;if(r||Z!==J){var X=D4(J,K);if(!r||X!==z.getAttribute("style"))if(X==null)z.removeAttribute("style");else z.style.cssText=X;z.__style=J}else if(K)if(Array.isArray(K))M9(z,Q?.[0],K[0]),M9(z,Q?.[1],K[1],"important");else M9(z,Q,K);return K}function Gz(z,J,Q=!1){if(z.multiple){if(J==null)return;if(!w5(J))return EQ();for(var K of z.options)K.selected=J.includes(iz(K));return}for(K of z.options){var Z=iz(K);if(f8(Z,J)){K.selected=!0;return}}if(!Q||J!==void 0)z.selectedIndex=-1}function _8(z){var J=new MutationObserver(()=>{Gz(z,z.__value)});J.observe(z,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),Q1(()=>{J.disconnect()})}function x9(z,J,Q=J){var K=new WeakSet,Z=!0;mz(z,"change",(X)=>{var W=X?"[selected]":":checked",w;if(z.multiple)w=[].map.call(z.querySelectorAll(W),iz);else{var H=z.querySelector(W)??z.querySelector("option:not([disabled])");w=H&&iz(H)}if(Q(w),F0!==null)K.add(F0)}),H1(()=>{var X=J();if(z===document.activeElement){var W=I6??F0;if(K.has(W))return}if(Gz(z,X,Z),Z&&X===void 0){var w=z.querySelector(":checked");if(w!==null)X=iz(w),Q(X)}z.__value=X,Z=!1}),_8(z)}function iz(z){if("__value"in z)return z.__value;else return z.value}var Bz=Symbol("class"),Hz=Symbol("style"),N4=Symbol("is custom element"),k4=Symbol("is html");function m0(z){if(!r)return;var J=!1,Q=()=>{if(J)return;if(J=!0,z.hasAttribute("value")){var K=z.value;_(z,"value",null),z.value=K}if(z.hasAttribute("checked")){var Z=z.checked;_(z,"checked",null),z.checked=Z}};z.__on_r=Q,u0(Q),$8()}function Z5(z,J){var Q=O9(z);if(Q.value===(Q.value=J??void 0)||z.value===J&&(J!==0||z.nodeName!=="PROGRESS"))return;z.value=J??""}function b4(z,J){if(J){if(!z.hasAttribute("selected"))z.setAttribute("selected","")}else z.removeAttribute("selected")}function _(z,J,Q,K){var Z=O9(z);if(r){if(Z[J]=z.getAttribute(J),J==="src"||J==="srcset"||J==="href"&&z.nodeName==="LINK"){if(!K)ZZ(z,J,Q??"");return}}if(Z[J]===(Z[J]=Q))return;if(J==="loading")z[eJ]=Q;if(Q==null)z.removeAttribute(J);else if(typeof Q!=="string"&&T4(z).includes(J))z[J]=Q;else z.setAttribute(J,Q)}function KZ(z,J,Q,K,Z=!1,X=!1){if(r&&Z&&z.tagName==="INPUT"){var W=z,w=W.type==="checkbox"?"defaultChecked":"defaultValue";if(!(w in Q))m0(W)}var H=O9(z),B=H[N4],F=!H[k4];let q=r&&B;if(q)h0(!1);var G=J||{},U=z.tagName==="OPTION";for(var M in J)if(!(M in Q))Q[M]=null;if(Q.class)Q.class=T6(Q.class);else if(K||Q[Bz])Q.class=null;if(Q[Hz])Q.style??=null;var I=T4(z);for(let b in Q){let R=Q[b];if(U&&b==="value"&&R==null){z.value=z.__value="",G[b]=R;continue}if(b==="class"){var O=z.namespaceURI==="http://www.w3.org/1999/xhtml";Z1(z,O,R,K,J?.[Bz],Q[Bz]),G[b]=R,G[Bz]=Q[Bz];continue}if(b==="style"){c5(z,R,J?.[Hz],Q[Hz]),G[b]=R,G[Hz]=Q[Hz];continue}var A=G[b];if(R===A&&!(R===void 0&&z.hasAttribute(b)))continue;G[b]=R;var T=b[0]+b[1];if(T==="$$")continue;if(T==="on"){let k={},$="$$"+b,v=b.slice(2);var y=U4(v);if(H4(v))v=v.slice(0,-7),k.capture=!0;if(!y&&A){if(R!=null)continue;z.removeEventListener(v,G[$],k),G[$]=null}if(R!=null)if(!y){let u=function(n){G[b].call(this,n)};G[$]=W9(v,z,u,k)}else z[`__${v}`]=R,I0([v]);else if(y)z[`__${v}`]=void 0}else if(b==="style")_(z,b,R);else if(b==="autofocus")N6(z,Boolean(R));else if(!B&&(b==="__value"||b==="value"&&R!=null))z.value=z.__value=R;else if(b==="selected"&&U)b4(z,R);else{var N=b;if(!F)N=V4(N);var E=N==="defaultValue"||N==="defaultChecked";if(R==null&&!B&&!E)if(H[b]=null,N==="value"||N==="checked"){let k=z,$=J===void 0;if(N==="value"){let v=k.defaultValue;k.removeAttribute(N),k.defaultValue=v,k.value=k.__value=$?v:null}else{let v=k.defaultChecked;k.removeAttribute(N),k.defaultChecked=v,k.checked=$?v:!1}}else z.removeAttribute(b);else if(E||I.includes(N)&&(B||typeof R!=="string")){if(z[N]=R,N in H)H[N]=E0}else if(typeof R!=="function")_(z,N,R,X)}}if(q)h0(!0);return G}function c8(z,J,Q=[],K=[],Z=[],X,W=!1,w=!1){Qz(Z,Q,K,(H)=>{var B=void 0,F={},q=z.nodeName==="SELECT",G=!1;if(u8(()=>{var M=J(...H.map(Y)),I=KZ(z,B,M,X,W,w);if(G&&q&&"value"in M)Gz(z,M.value);for(let A of Object.getOwnPropertySymbols(F))if(!M[A])y0(F[A]);for(let A of Object.getOwnPropertySymbols(M)){var O=M[A];if(A.description===T7&&(!B||O!==B[A])){if(F[A])y0(F[A]);F[A]=r0(()=>q9(z,()=>O))}I[A]=O}B=I}),q){var U=z;H1(()=>{Gz(U,B.value,!0),_8(U)})}G=!0})}function O9(z){return z.__attributes??={[N4]:z.nodeName.includes("-"),[k4]:z.namespaceURI===AQ}}var R4=new Map;function T4(z){var J=z.getAttribute("is")||z.nodeName,Q=R4.get(J);if(Q)return Q;R4.set(J,Q=[]);var K,Z=z,X=Element.prototype;while(X!==Z){K=M8(Z);for(var W in K)if(K[W].set)Q.push(W);Z=F6(Z)}return Q}function ZZ(z,J,Q){if(!f)return;if(J==="srcset"&&XZ(z,Q))return;if(C9(z.getAttribute(J)??"",Q))return;kQ(J,z.outerHTML.replace(z.innerHTML,z.innerHTML&&"..."),String(Q))}function C9(z,J){if(z===J)return!0;return new URL(z,document.baseURI).href===new URL(J,document.baseURI).href}function A4(z){return z.split(",").map((J)=>J.trim().split(" ").filter(Boolean))}function XZ(z,J){var Q=A4(z.srcset),K=A4(J);return K.length===Q.length&&K.every(([Z,X],W)=>X===Q[W][1]&&(C9(Q[W][0],Z)||C9(Z,Q[W][0])))}function O1(z,J,Q=J){var K=new WeakSet;if(mz(z,"input",async(Z)=>{if(f&&z.type==="checkbox")A7();var X=Z?z.defaultValue:z.value;if(X=L9(z)?I9(X):X,Q(X),F0!==null)K.add(F0);if(await Ez(),X!==(X=J())){var{selectionStart:W,selectionEnd:w}=z,H=z.value.length;if(z.value=X??"",w!==null){var B=z.value.length;if(W===w&&w===H&&B>H)z.selectionStart=B,z.selectionEnd=B;else z.selectionStart=W,z.selectionEnd=Math.min(w,B)}}}),r&&z.defaultValue!==z.value||b0(J)==null&&z.value){if(Q(L9(z)?I9(z.value):z.value),F0!==null)K.add(F0)}G1(()=>{if(f&&z.type==="checkbox")A7();var Z=J();if(z===document.activeElement){var X=I6??F0;if(K.has(X))return}if(L9(z)&&Z===I9(z.value))return;if(z.type==="date"&&!Z&&!z.value)return;if(Z!==z.value)z.value=Z??""})}var P9=new Set;function _z(z,J,Q,K,Z=K){var X=Q.getAttribute("type")==="checkbox",W=z;let w=!1;if(J!==null)for(var H of J)W=W[H]??=[];if(W.push(Q),mz(Q,"change",()=>{var B=Q.__value;if(X)B=E4(W,B,Q.checked);Z(B)},()=>Z(X?[]:null)),G1(()=>{var B=K();if(r&&Q.defaultChecked!==Q.checked){w=!0;return}if(X)B=B||[],Q.checked=B.includes(Q.__value);else Q.checked=f8(Q.__value,B)}),Q1(()=>{var B=W.indexOf(Q);if(B!==-1)W.splice(B,1)}),!P9.has(W))P9.add(W),u0(()=>{W.sort((B,F)=>B.compareDocumentPosition(F)===4?-1:1),P9.delete(W)});u0(()=>{if(w){var B;if(X)B=E4(W,B,Q.checked);else{var F=W.find((q)=>q.checked);B=F?.__value}Z(B)}})}function E4(z,J,Q){var K=new Set;for(var Z=0;Z<z.length;Z+=1)if(z[Z].checked)K.add(z[Z].__value);if(!Q)K.delete(J);return Array.from(K)}function L9(z){var J=z.type;return J==="number"||J==="range"}function I9(z){return z===""?null:+z}class S9{#z=new WeakMap;#J;#Q;static entries=new WeakMap;constructor(z){this.#Q=z}observe(z,J){var Q=this.#z.get(z)||new Set;return Q.add(J),this.#z.set(z,Q),this.#K().observe(z,this.#Q),()=>{var K=this.#z.get(z);if(K.delete(J),K.size===0)this.#z.delete(z),this.#J.unobserve(z)}}#K(){return this.#J??(this.#J=new ResizeObserver((z)=>{for(var J of z){S9.entries.set(J.target,J);for(var Q of this.#z.get(J.target)||[])Q(J)}}))}}var YZ=new S9({box:"border-box"});function j9(z,J,Q){var K=YZ.observe(z,()=>Q(z[J]));H1(()=>{return b0(()=>Q(z[J])),K})}function y4(z,J){return z===J||z?.[z1]===J}function n1(z={},J,Q,K){return H1(()=>{var Z,X;return G1(()=>{Z=X,X=K?.()||[],b0(()=>{if(z!==Q(...X)){if(J(z,...X),Z&&y4(Q(...Z),z))J(null,...Z)}})}),()=>{u0(()=>{if(X&&y4(Q(...X),z))J(null,...X)})}}),z}function D9(z=!1){let J=L0,Q=J.l.u;if(!Q)return;let K=()=>p8(J.s);if(z){let Z=0,X={},W=Z6(()=>{let w=!1,H=J.s;for(let B in H)if(H[B]!==X[B])X[B]=H[B],w=!0;if(w)Z++;return Z});K=()=>Y(W)}if(Q.b.length)$z(()=>{v4(J,K),c6(Q.b)});if(K1(()=>{let Z=b0(()=>Q.m.map(tJ));return()=>{for(let X of Z)if(typeof X==="function")X()}}),Q.a.length)K1(()=>{v4(J,K),c6(Q.a)})}function v4(z,J){if(z.l.s)for(let Q of z.l.s)Y(Q);J()}var o8=!1,wF=Symbol();function R9(z){var J=o8;try{return o8=!1,[z(),o8]}finally{o8=J}}var GZ={get(z,J){if(z.exclude.includes(J))return;return z.props[J]},set(z,J){if(f)BQ(`${z.name}.${String(J)}`);return!1},getOwnPropertyDescriptor(z,J){if(z.exclude.includes(J))return;if(J in z.props)return{enumerable:!0,configurable:!0,value:z.props[J]}},has(z,J){if(z.exclude.includes(J))return!1;return J in z.props},ownKeys(z){return Reflect.ownKeys(z.props).filter((J)=>!z.exclude.includes(J))}};function s5(z,J,Q){return new Proxy(f?{props:z,exclude:J,name:Q,other:{},to_proxy:[]}:{props:z,exclude:J},GZ)}var BZ={get(z,J){let Q=z.props.length;while(Q--){let K=z.props[Q];if(M6(K))K=K();if(typeof K==="object"&&K!==null&&J in K)return K[J]}},set(z,J,Q){let K=z.props.length;while(K--){let Z=z.props[K];if(M6(Z))Z=Z();let X=I1(Z,J);if(X&&X.set)return X.set(Q),!0}return!1},getOwnPropertyDescriptor(z,J){let Q=z.props.length;while(Q--){let K=z.props[Q];if(M6(K))K=K();if(typeof K==="object"&&K!==null&&J in K){let Z=I1(K,J);if(Z&&!Z.configurable)Z.configurable=!0;return Z}}},has(z,J){if(J===z1||J===r6)return!1;for(let Q of z.props){if(M6(Q))Q=Q();if(Q!=null&&J in Q)return!0}return!1},ownKeys(z){let J=[];for(let Q of z.props){if(M6(Q))Q=Q();if(!Q)continue;for(let K in Q)if(!J.includes(K))J.push(K);for(let K of Object.getOwnPropertySymbols(Q))if(!J.includes(K))J.push(K)}return J}};function A9(...z){return new Proxy({props:z},BZ)}function j0(z,J,Q,K){var Z=!l5||(Q&PQ)!==0,X=(Q&IQ)!==0,W=(Q&SQ)!==0,w=K,H=!0,B=()=>{if(H)H=!1,w=W?b0(K):K;return w},F;if(X){var q=z1 in z||r6 in z;F=I1(z,J)?.set??(q&&J in z?(y)=>z[J]=y:void 0)}var G,U=!1;if(X)[G,U]=R9(()=>z[J]);else G=z[J];if(G===void 0&&K!==void 0){if(G=B(),F){if(Z)GQ(J);F(G)}}var M;if(Z)M=()=>{var y=z[J];if(y===void 0)return B();return H=!0,y};else M=()=>{var y=z[J];if(y!==void 0)w=void 0;return y===void 0?w:y};if(Z&&(Q&LQ)===0)return M;if(F){var I=z.$$legacy;return function(y,N){if(arguments.length>0){if(!Z||!N||I||U)F(N?M():y);return y}return M()}}var O=!1,A=((Q&OQ)!==0?Z6:j6)(()=>{return O=!1,M()});if(f)A.label=J;if(X)Y(A);var T=K0;return function(y,N){if(arguments.length>0){let E=N?Y(A):Z&&X?C0(y):y;if(D(A,E),O=!0,w!==void 0)w=E;return y}if(F5&&O||(T.f&b1)!==0)return A.v;return Y(A)}}function g4(z){return new h4(z)}class h4{#z;#J;constructor(z){var J=new Map,Q=(Z,X)=>{var W=i5(X,!1,!1);return J.set(Z,W),W};let K=new Proxy({...z.props||{},$$events:{}},{get(Z,X){return Y(J.get(X)??Q(X,Reflect.get(Z,X)))},has(Z,X){if(X===r6)return!0;return Y(J.get(X)??Q(X,Reflect.get(Z,X))),Reflect.has(Z,X)},set(Z,X,W){return D(J.get(X)??Q(X,W),W),Reflect.set(Z,X,W)}});if(this.#J=(z.hydrate?G9:wz)(z.component,{target:z.target,anchor:z.anchor,props:K,context:z.context,intro:z.intro??!1,recover:z.recover}),!R1&&(!z?.props?.$$host||z.sync===!1))Q6();this.#z=K.$$events;for(let Z of Object.keys(this.#J)){if(Z==="$set"||Z==="$destroy"||Z==="$on")continue;V1(this,Z,{get(){return this.#J[Z]},set(X){this.#J[Z]=X},enumerable:!0})}this.#J.$set=(Z)=>{Object.assign(K,Z)},this.#J.$destroy=()=>{B9(this.#J)}}$set(z){this.#J.$set(z)}$on(z,J){this.#z[z]=this.#z[z]||[];let Q=(...K)=>J.call(this,...K);return this.#z[z].push(Q),()=>{this.#z[z]=this.#z[z].filter((K)=>K!==Q)}}$destroy(){this.#J.$destroy()}}var CZ;if(typeof HTMLElement==="function")CZ=class extends HTMLElement{$$ctor;$$s;$$c;$$cn=!1;$$d={};$$r=!1;$$p_d={};$$l={};$$l_u=new Map;$$me;constructor(z,J,Q){super();if(this.$$ctor=z,this.$$s=J,Q)this.attachShadow({mode:"open"})}addEventListener(z,J,Q){if(this.$$l[z]=this.$$l[z]||[],this.$$l[z].push(J),this.$$c){let K=this.$$c.$on(z,J);this.$$l_u.set(J,K)}super.addEventListener(z,J,Q)}removeEventListener(z,J,Q){if(super.removeEventListener(z,J,Q),this.$$c){let K=this.$$l_u.get(J);if(K)K(),this.$$l_u.delete(J)}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){let z=function(K){return(Z)=>{let X=document.createElement("slot");if(K!=="default")X.name=K;V(Z,X)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;let J={},Q=OZ(this);for(let K of this.$$s)if(K in Q)if(K==="default"&&!this.$$d.children)this.$$d.children=z(K),J.default=!0;else J[K]=z(K);for(let K of this.attributes){let Z=this.$$g_p(K.name);if(!(Z in this.$$d))this.$$d[Z]=N9(Z,K.value,this.$$p_d,"toProp")}for(let K in this.$$p_d)if(!(K in this.$$d)&&this[K]!==void 0)this.$$d[K]=this[K],delete this[K];this.$$c=g4({component:this.$$ctor,target:this.shadowRoot||this,props:{...this.$$d,$$slots:J,$$host:this}}),this.$$me=J9(()=>{G1(()=>{this.$$r=!0;for(let K of I7(this.$$c)){if(!this.$$p_d[K]?.reflect)continue;this.$$d[K]=this.$$c[K];let Z=N9(K,this.$$d[K],this.$$p_d,"toAttribute");if(Z==null)this.removeAttribute(this.$$p_d[K].attribute||K);else this.setAttribute(this.$$p_d[K].attribute||K,Z)}this.$$r=!1})});for(let K in this.$$l)for(let Z of this.$$l[K]){let X=this.$$c.$on(K,Z);this.$$l_u.set(Z,X)}this.$$l={}}}attributeChangedCallback(z,J,Q){if(this.$$r)return;z=this.$$g_p(z),this.$$d[z]=N9(z,Q,this.$$p_d,"toProp"),this.$$c?.$set({[z]:this.$$d[z]})}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{if(!this.$$cn&&this.$$c)this.$$c.$destroy(),this.$$me(),this.$$c=void 0})}$$g_p(z){return I7(this.$$p_d).find((J)=>this.$$p_d[J].attribute===z||!this.$$p_d[J].attribute&&J.toLowerCase()===z)||z}};function N9(z,J,Q,K){let Z=Q[z]?.type;if(J=Z==="Boolean"&&typeof J!=="boolean"?J!=null:J,!K||!Q[z])return J;else if(K==="toAttribute")switch(Z){case"Object":case"Array":return J==null?null:JSON.stringify(J);case"Boolean":return J?"":null;case"Number":return J==null?null:J;default:return J}else switch(Z){case"Object":case"Array":return J&&JSON.parse(J);case"Boolean":return J;case"Number":return J!=null?+J:J;default:return J}}function OZ(z){let J={};return z.childNodes.forEach((Q)=>{J[Q.slot||"default"]=!0}),J}if(f){let z=function(J){if(!(J in globalThis)){let Q;Object.defineProperty(globalThis,J,{configurable:!0,get:()=>{if(Q!==void 0)return Q;HQ(J)},set:(K)=>{Q=K}})}};z("$state"),z("$effect"),z("$derived"),z("$inspect"),z("$props"),z("$bindable")}class k9{cache;prepareCache(){if(!this.cache){let z=localStorage.getItem("handleCache");this.cache=z?JSON.parse(z):{}}}saveCache(){localStorage.setItem("handleCache",JSON.stringify(this.cache))}getHandleDid(z){return this.prepareCache(),this.cache[z]}setHandleDid(z,J){this.prepareCache(),this.cache[z]=J,this.saveCache()}findHandleByDid(z){this.prepareCache();let J=Object.entries(this.cache).find((Q)=>Q[1]==z);return J?J[0]:void 0}}class G6 extends Error{code;json;constructor(z,J){super("APIError status "+z+` 47 48`+JSON.stringify(J));this.code=z,this.json=J}}class b9 extends Error{}class w6 extends Error{}class cz{host;config;user;sendAuthHeaders;autoManageTokens;constructor(z,J,Q){if(this.host=z,this.config=J||null,this.user=J?.user||null,this.sendAuthHeaders=!!this.user,this.autoManageTokens=!!this.user,Q)Object.assign(this,Q)}get baseURL(){if(this.host)return(this.host.includes("://")?this.host:`https://${this.host}`)+"/xrpc";else throw new b9("Hostname not set")}get isLoggedIn(){return!!(this.user&&this.user.accessToken&&this.user.refreshToken&&this.user.did&&this.user.pdsEndpoint)}async getRequest(z,J,Q={}){let K=new URL(`${this.baseURL}/${z}`),Z=Q&&"auth"in Q?Q.auth:this.sendAuthHeaders;if(this.autoManageTokens&&Z===!0)await this.checkAccess();if(J)for(let w in J)if(J[w]instanceof Array)J[w].forEach((H)=>K.searchParams.append(w,H));else K.searchParams.append(w,J[w]);let X=this.authHeaders(Z);if(Q.headers)Object.assign(X,Q.headers);let W=await fetch(K,{headers:X,signal:Q.abortSignal??null});return await this.parseResponse(W)}async postRequest(z,J,Q={}){let K=`${this.baseURL}/${z}`,Z=Q&&"auth"in Q?Q.auth:this.sendAuthHeaders;if(this.autoManageTokens&&Z===!0)await this.checkAccess();let X=this.authHeaders(Z),W={method:"POST"};if(J)W.body=JSON.stringify(J),X["Content-Type"]="application/json";if(Q.headers)Object.assign(X,Q.headers);if(Q.abortSignal)W.signal=Q.abortSignal;W.headers=X;let w=await fetch(K,W);return await this.parseResponse(w)}async fetchAll(z,J){if(!J||!J.field)throw new b9("'field' option is required");let Q=[],K=J.params??{},Z=this.sliceOptions(J,["auth","headers","abortSignal"]);for(;;){let X=await this.getRequest(z,K,Z),W=X[J.field],w=X.cursor;if(J.breakWhen){let H=J.breakWhen;if(W.some((B)=>H(B))){if(!J.keepLastPage)W=W.filter((B)=>!H(B));w=null}}if(Q=Q.concat(W),K.cursor=w,J.onPageLoad?.(W),!w)break}return Q}authHeaders(z){if(typeof z=="string")return{Authorization:`Bearer ${z}`};else if(z)if(this.user?.accessToken)return{Authorization:`Bearer ${this.user.accessToken}`};else throw new w6("Can't send auth headers, access token is missing");else return{}}sliceOptions(z,J){let Q={};for(let K of J)if(K in z)Q[K]=z[K];return Q}tokenExpirationTimestamp(z){let J=z.split(".");if(J.length!=3)throw new w6("Invalid access token format");let K=JSON.parse(atob(J[1])).exp;if(!(K&&typeof K=="number"&&K>0))throw new w6("Invalid token expiry data");return K*1000}isInvalidToken(z,J){return z.status==400&&!!J&&["InvalidToken","ExpiredToken"].includes(J.error)}async parseResponse(z){let J=await z.text(),Q=J.trim().length>0?JSON.parse(J):void 0;if(z.status>=200&&z.status<300)return Q;else throw new G6(z.status,Q)}requireUserConfig(){if(!this.config||!this.config.user)throw new w6("Missing user configuration object")}requireLoggedInUser(){if(this.requireUserConfig(),!this.isLoggedIn)throw new w6("Not logged in")}async checkAccess(){if(this.requireLoggedInUser(),this.tokenExpirationTimestamp(this.user.accessToken)<new Date().getTime()+60000)await this.performTokenRefresh()}async logIn(z,J){this.requireUserConfig();let Q={identifier:z,password:J},K=await this.postRequest("com.atproto.server.createSession",Q,{auth:!1});return this.saveTokens(K),K}async performTokenRefresh(){this.requireLoggedInUser(),console.log("Refreshing access token…");let z=await this.postRequest("com.atproto.server.refreshSession",null,{auth:this.user.refreshToken});return this.saveTokens(z),z}saveTokens(z){if(this.requireUserConfig(),this.user.accessToken=z.accessJwt,this.user.refreshToken=z.refreshJwt,this.user.did=z.did,z.didDoc?.service){let J=z.didDoc.service.find((Q)=>Q.id=="#atproto_pds");this.host=J.serviceEndpoint.replace("https://","")}this.user.pdsEndpoint=this.host,this.config.save()}resetTokens(){this.requireUserConfig(),delete this.user.accessToken,delete this.user.refreshToken,delete this.user.did,delete this.user.pdsEndpoint,this.config.save()}}class f4{repo;collection;rkey;constructor(z){if(!z.startsWith("at://"))throw new o5(`Not an at:// URI: ${z}`);let J=z.split("/");if(J.length!=5)throw new o5(`Invalid at:// URI: ${z}`);this.repo=J[2],this.collection=J[3],this.rkey=J[4]}}function f0(z){return new f4(z)}function PZ(){return new IntersectionObserver((z,J)=>{for(let Q of z)if(Q.isIntersecting){let K=Q.target;K.removeAttribute("lazy"),J.unobserve(K)}},{rootMargin:"1000px 0px"})}var T9=PZ();/*! @license DOMPurify 3.3.1 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.3.1/LICENSE */var{entries:c4,setPrototypeOf:m4,isFrozen:LZ,getPrototypeOf:IZ,getOwnPropertyDescriptor:SZ}=Object,{freeze:v1,seal:X5,create:m9}=Object,{apply:$9,construct:u9}=typeof Reflect<"u"&&Reflect;if(!v1)v1=function(J){return J};if(!X5)X5=function(J){return J};if(!$9)$9=function(J,Q){for(var K=arguments.length,Z=Array(K>2?K-2:0),X=2;X<K;X++)Z[X-2]=arguments[X];return J.apply(Q,Z)};if(!u9)u9=function(J){for(var Q=arguments.length,K=Array(Q>1?Q-1:0),Z=1;Z<Q;Z++)K[Z-1]=arguments[Z];return new J(...K)};var a8=g1(Array.prototype.forEach),jZ=g1(Array.prototype.lastIndexOf),$4=g1(Array.prototype.pop),sz=g1(Array.prototype.push),DZ=g1(Array.prototype.splice),n8=g1(String.prototype.toLowerCase),E9=g1(String.prototype.toString),y9=g1(String.prototype.match),oz=g1(String.prototype.replace),RZ=g1(String.prototype.indexOf),AZ=g1(String.prototype.trim),x5=g1(Object.prototype.hasOwnProperty),y1=g1(RegExp.prototype.test),az=NZ(TypeError);function g1(z){return function(J){if(J instanceof RegExp)J.lastIndex=0;for(var Q=arguments.length,K=Array(Q>1?Q-1:0),Z=1;Z<Q;Z++)K[Z-1]=arguments[Z];return $9(z,J,K)}}function NZ(z){return function(){for(var J=arguments.length,Q=Array(J),K=0;K<J;K++)Q[K]=arguments[K];return u9(z,Q)}}function O0(z,J){let Q=arguments.length>2&&arguments[2]!==void 0?arguments[2]:n8;if(m4)m4(z,null);let K=J.length;while(K--){let Z=J[K];if(typeof Z==="string"){let X=Q(Z);if(X!==Z){if(!LZ(J))J[K]=X;Z=X}}z[Z]=!0}return z}function kZ(z){for(let J=0;J<z.length;J++)if(!x5(z,J))z[J]=null;return z}function T5(z){let J=m9(null);for(let[Q,K]of c4(z))if(x5(z,Q))if(Array.isArray(K))J[Q]=kZ(K);else if(K&&typeof K==="object"&&K.constructor===Object)J[Q]=T5(K);else J[Q]=K;return J}function rz(z,J){while(z!==null){let K=SZ(z,J);if(K){if(K.get)return g1(K.get);if(typeof K.value==="function")return g1(K.value)}z=IZ(z)}function Q(){return null}return Q}var u4=v1(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),v9=v1(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),g9=v1(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),bZ=v1(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),h9=v1(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),TZ=v1(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),l4=v1(["#text"]),p4=v1(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),f9=v1(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),d4=v1(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),r8=v1(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),EZ=X5(/\{\{[\w\W]*|[\w\W]*\}\}/gm),yZ=X5(/<%[\w\W]*|[\w\W]*%>/gm),vZ=X5(/\$\{[\w\W]*/gm),gZ=X5(/^data-[\-\w.\u00B7-\uFFFF]+$/),hZ=X5(/^aria-[\-\w]+$/),s4=X5(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),fZ=X5(/^(?:\w+script|data):/i),mZ=X5(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),o4=X5(/^html$/i),$Z=X5(/^[a-z][.\w]*(-[.\w]+)+$/i),i4=Object.freeze({__proto__:null,ARIA_ATTR:hZ,ATTR_WHITESPACE:mZ,CUSTOM_ELEMENT:$Z,DATA_ATTR:gZ,DOCTYPE_NAME:o4,ERB_EXPR:yZ,IS_ALLOWED_URI:s4,IS_SCRIPT_OR_DATA:fZ,MUSTACHE_EXPR:EZ,TMPLIT_EXPR:vZ}),nz={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},uZ=function(){return typeof window>"u"?null:window},lZ=function(J,Q){if(typeof J!=="object"||typeof J.createPolicy!=="function")return null;let K=null,Z="data-tt-policy-suffix";if(Q&&Q.hasAttribute(Z))K=Q.getAttribute(Z);let X="dompurify"+(K?"#"+K:"");try{return J.createPolicy(X,{createHTML(W){return W},createScriptURL(W){return W}})}catch(W){return console.warn("TrustedTypes policy "+X+" could not be created."),null}},_4=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function a4(){let z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:uZ(),J=(Z0)=>a4(Z0);if(J.version="3.3.1",J.removed=[],!z||!z.document||z.document.nodeType!==nz.document||!z.Element)return J.isSupported=!1,J;let{document:Q}=z,K=Q,Z=K.currentScript,{DocumentFragment:X,HTMLTemplateElement:W,Node:w,Element:H,NodeFilter:B,NamedNodeMap:F=z.NamedNodeMap||z.MozNamedAttrMap,HTMLFormElement:q,DOMParser:G,trustedTypes:U}=z,M=H.prototype,I=rz(M,"cloneNode"),O=rz(M,"remove"),A=rz(M,"nextSibling"),T=rz(M,"childNodes"),y=rz(M,"parentNode");if(typeof W==="function"){let Z0=Q.createElement("template");if(Z0.content&&Z0.content.ownerDocument)Q=Z0.content.ownerDocument}let N,E="",{implementation:b,createNodeIterator:R,createDocumentFragment:k,getElementsByTagName:$}=Q,{importNode:v}=K,u=_4();J.isSupported=typeof c4==="function"&&typeof y==="function"&&b&&b.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:n,ERB_EXPR:o,TMPLIT_EXPR:i,DATA_ATTR:X0,ARIA_ATTR:Q0,IS_SCRIPT_OR_DATA:q0,ATTR_WHITESPACE:a,CUSTOM_ELEMENT:e}=i4,{IS_ALLOWED_URI:P0}=i4,V0=null,k0=O0({},[...u4,...v9,...g9,...h9,...l4]),w0=null,z0=O0({},[...p4,...f9,...d4,...r8]),t=Object.seal(m9(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),B0=null,D0=null,H0=Object.seal(m9(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),G0=!0,t0=!0,v5=!1,B8=!0,r5=!1,n5=!0,Y5=!1,$6=!1,u6=!1,t5=!1,l6=!1,H8=!1,yJ=!0,vJ=!1,MK="user-content-",q7=!0,Rz=!1,p6={},O5=null,F7=O0({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),gJ=null,hJ=O0({},["audio","video","img","source","image","track"]),M7=null,fJ=O0({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),U8="http://www.w3.org/1998/Math/MathML",V8="http://www.w3.org/2000/svg",g5="http://www.w3.org/1999/xhtml",d6=g5,x7=!1,C7=null,xK=O0({},[U8,V8,g5],E9),q8=O0({},["mi","mo","mn","ms","mtext"]),F8=O0({},["annotation-xml"]),CK=O0({},["title","style","font","a","script"]),Az=null,OK=["application/xhtml+xml","text/html"],PK="text/html",e0=null,i6=null,LK=Q.createElement("form"),mJ=function(L){return L instanceof RegExp||L instanceof Function},O7=function(){let L=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(i6&&i6===L)return;if(!L||typeof L!=="object")L={};if(L=T5(L),Az=OK.indexOf(L.PARSER_MEDIA_TYPE)===-1?PK:L.PARSER_MEDIA_TYPE,e0=Az==="application/xhtml+xml"?E9:n8,V0=x5(L,"ALLOWED_TAGS")?O0({},L.ALLOWED_TAGS,e0):k0,w0=x5(L,"ALLOWED_ATTR")?O0({},L.ALLOWED_ATTR,e0):z0,C7=x5(L,"ALLOWED_NAMESPACES")?O0({},L.ALLOWED_NAMESPACES,E9):xK,M7=x5(L,"ADD_URI_SAFE_ATTR")?O0(T5(fJ),L.ADD_URI_SAFE_ATTR,e0):fJ,gJ=x5(L,"ADD_DATA_URI_TAGS")?O0(T5(hJ),L.ADD_DATA_URI_TAGS,e0):hJ,O5=x5(L,"FORBID_CONTENTS")?O0({},L.FORBID_CONTENTS,e0):F7,B0=x5(L,"FORBID_TAGS")?O0({},L.FORBID_TAGS,e0):T5({}),D0=x5(L,"FORBID_ATTR")?O0({},L.FORBID_ATTR,e0):T5({}),p6=x5(L,"USE_PROFILES")?L.USE_PROFILES:!1,G0=L.ALLOW_ARIA_ATTR!==!1,t0=L.ALLOW_DATA_ATTR!==!1,v5=L.ALLOW_UNKNOWN_PROTOCOLS||!1,B8=L.ALLOW_SELF_CLOSE_IN_ATTR!==!1,r5=L.SAFE_FOR_TEMPLATES||!1,n5=L.SAFE_FOR_XML!==!1,Y5=L.WHOLE_DOCUMENT||!1,t5=L.RETURN_DOM||!1,l6=L.RETURN_DOM_FRAGMENT||!1,H8=L.RETURN_TRUSTED_TYPE||!1,u6=L.FORCE_BODY||!1,yJ=L.SANITIZE_DOM!==!1,vJ=L.SANITIZE_NAMED_PROPS||!1,q7=L.KEEP_CONTENT!==!1,Rz=L.IN_PLACE||!1,P0=L.ALLOWED_URI_REGEXP||s4,d6=L.NAMESPACE||g5,q8=L.MATHML_TEXT_INTEGRATION_POINTS||q8,F8=L.HTML_INTEGRATION_POINTS||F8,t=L.CUSTOM_ELEMENT_HANDLING||{},L.CUSTOM_ELEMENT_HANDLING&&mJ(L.CUSTOM_ELEMENT_HANDLING.tagNameCheck))t.tagNameCheck=L.CUSTOM_ELEMENT_HANDLING.tagNameCheck;if(L.CUSTOM_ELEMENT_HANDLING&&mJ(L.CUSTOM_ELEMENT_HANDLING.attributeNameCheck))t.attributeNameCheck=L.CUSTOM_ELEMENT_HANDLING.attributeNameCheck;if(L.CUSTOM_ELEMENT_HANDLING&&typeof L.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements==="boolean")t.allowCustomizedBuiltInElements=L.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements;if(r5)t0=!1;if(l6)t5=!0;if(p6){if(V0=O0({},l4),w0=[],p6.html===!0)O0(V0,u4),O0(w0,p4);if(p6.svg===!0)O0(V0,v9),O0(w0,f9),O0(w0,r8);if(p6.svgFilters===!0)O0(V0,g9),O0(w0,f9),O0(w0,r8);if(p6.mathMl===!0)O0(V0,h9),O0(w0,d4),O0(w0,r8)}if(L.ADD_TAGS)if(typeof L.ADD_TAGS==="function")H0.tagCheck=L.ADD_TAGS;else{if(V0===k0)V0=T5(V0);O0(V0,L.ADD_TAGS,e0)}if(L.ADD_ATTR)if(typeof L.ADD_ATTR==="function")H0.attributeCheck=L.ADD_ATTR;else{if(w0===z0)w0=T5(w0);O0(w0,L.ADD_ATTR,e0)}if(L.ADD_URI_SAFE_ATTR)O0(M7,L.ADD_URI_SAFE_ATTR,e0);if(L.FORBID_CONTENTS){if(O5===F7)O5=T5(O5);O0(O5,L.FORBID_CONTENTS,e0)}if(L.ADD_FORBID_CONTENTS){if(O5===F7)O5=T5(O5);O0(O5,L.ADD_FORBID_CONTENTS,e0)}if(q7)V0["#text"]=!0;if(Y5)O0(V0,["html","head","body"]);if(V0.table)O0(V0,["tbody"]),delete B0.tbody;if(L.TRUSTED_TYPES_POLICY){if(typeof L.TRUSTED_TYPES_POLICY.createHTML!=="function")throw az('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof L.TRUSTED_TYPES_POLICY.createScriptURL!=="function")throw az('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');N=L.TRUSTED_TYPES_POLICY,E=N.createHTML("")}else{if(N===void 0)N=lZ(U,Z);if(N!==null&&typeof E==="string")E=N.createHTML("")}if(v1)v1(L);i6=L},$J=O0({},[...v9,...g9,...bZ]),uJ=O0({},[...h9,...TZ]),IK=function(L){let p=y(L);if(!p||!p.tagName)p={namespaceURI:d6,tagName:"template"};let J0=n8(L.tagName),v0=n8(p.tagName);if(!C7[L.namespaceURI])return!1;if(L.namespaceURI===V8){if(p.namespaceURI===g5)return J0==="svg";if(p.namespaceURI===U8)return J0==="svg"&&(v0==="annotation-xml"||q8[v0]);return Boolean($J[J0])}if(L.namespaceURI===U8){if(p.namespaceURI===g5)return J0==="math";if(p.namespaceURI===V8)return J0==="math"&&F8[v0];return Boolean(uJ[J0])}if(L.namespaceURI===g5){if(p.namespaceURI===V8&&!F8[v0])return!1;if(p.namespaceURI===U8&&!q8[v0])return!1;return!uJ[J0]&&(CK[J0]||!$J[J0])}if(Az==="application/xhtml+xml"&&C7[L.namespaceURI])return!0;return!1},P5=function(L){sz(J.removed,{element:L});try{y(L).removeChild(L)}catch(p){O(L)}},q6=function(L,p){try{sz(J.removed,{attribute:p.getAttributeNode(L),from:p})}catch(J0){sz(J.removed,{attribute:null,from:p})}if(p.removeAttribute(L),L==="is")if(t5||l6)try{P5(p)}catch(J0){}else try{p.setAttribute(L,"")}catch(J0){}},lJ=function(L){let p=null,J0=null;if(u6)L="<remove></remove>"+L;else{let o0=y9(L,/^[\r\n\t ]+/);J0=o0&&o0[0]}if(Az==="application/xhtml+xml"&&d6===g5)L='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+L+"</body></html>";let v0=N?N.createHTML(L):L;if(d6===g5)try{p=new G().parseFromString(v0,Az)}catch(o0){}if(!p||!p.documentElement){p=b.createDocument(d6,"template",null);try{p.documentElement.innerHTML=x7?E:v0}catch(o0){}}let L1=p.body||p.documentElement;if(L&&J0)L1.insertBefore(Q.createTextNode(J0),L1.childNodes[0]||null);if(d6===g5)return $.call(p,Y5?"html":"body")[0];return Y5?p.documentElement:L1},pJ=function(L){return R.call(L.ownerDocument||L,L,B.SHOW_ELEMENT|B.SHOW_COMMENT|B.SHOW_TEXT|B.SHOW_PROCESSING_INSTRUCTION|B.SHOW_CDATA_SECTION,null)},P7=function(L){return L instanceof q&&(typeof L.nodeName!=="string"||typeof L.textContent!=="string"||typeof L.removeChild!=="function"||!(L.attributes instanceof F)||typeof L.removeAttribute!=="function"||typeof L.setAttribute!=="function"||typeof L.namespaceURI!=="string"||typeof L.insertBefore!=="function"||typeof L.hasChildNodes!=="function")},dJ=function(L){return typeof w==="function"&&L instanceof w};function h5(Z0,L,p){a8(Z0,(J0)=>{J0.call(J,L,p,i6)})}let iJ=function(L){let p=null;if(h5(u.beforeSanitizeElements,L,null),P7(L))return P5(L),!0;let J0=e0(L.nodeName);if(h5(u.uponSanitizeElement,L,{tagName:J0,allowedTags:V0}),n5&&L.hasChildNodes()&&!dJ(L.firstElementChild)&&y1(/<[/\w!]/g,L.innerHTML)&&y1(/<[/\w!]/g,L.textContent))return P5(L),!0;if(L.nodeType===nz.progressingInstruction)return P5(L),!0;if(n5&&L.nodeType===nz.comment&&y1(/<[/\w]/g,L.data))return P5(L),!0;if(!(H0.tagCheck instanceof Function&&H0.tagCheck(J0))&&(!V0[J0]||B0[J0])){if(!B0[J0]&&cJ(J0)){if(t.tagNameCheck instanceof RegExp&&y1(t.tagNameCheck,J0))return!1;if(t.tagNameCheck instanceof Function&&t.tagNameCheck(J0))return!1}if(q7&&!O5[J0]){let v0=y(L)||L.parentNode,L1=T(L)||L.childNodes;if(L1&&v0){let o0=L1.length;for(let h1=o0-1;h1>=0;--h1){let f5=I(L1[h1],!0);f5.__removalCount=(L.__removalCount||0)+1,v0.insertBefore(f5,A(L))}}}return P5(L),!0}if(L instanceof H&&!IK(L))return P5(L),!0;if((J0==="noscript"||J0==="noembed"||J0==="noframes")&&y1(/<\/no(script|embed|frames)/i,L.innerHTML))return P5(L),!0;if(r5&&L.nodeType===nz.text){if(p=L.textContent,a8([n,o,i],(v0)=>{p=oz(p,v0," ")}),L.textContent!==p)sz(J.removed,{element:L.cloneNode()}),L.textContent=p}return h5(u.afterSanitizeElements,L,null),!1},_J=function(L,p,J0){if(yJ&&(p==="id"||p==="name")&&((J0 in Q)||(J0 in LK)))return!1;if(t0&&!D0[p]&&y1(X0,p));else if(G0&&y1(Q0,p));else if(H0.attributeCheck instanceof Function&&H0.attributeCheck(p,L));else if(!w0[p]||D0[p])if(cJ(L)&&(t.tagNameCheck instanceof RegExp&&y1(t.tagNameCheck,L)||t.tagNameCheck instanceof Function&&t.tagNameCheck(L))&&(t.attributeNameCheck instanceof RegExp&&y1(t.attributeNameCheck,p)||t.attributeNameCheck instanceof Function&&t.attributeNameCheck(p,L))||p==="is"&&t.allowCustomizedBuiltInElements&&(t.tagNameCheck instanceof RegExp&&y1(t.tagNameCheck,J0)||t.tagNameCheck instanceof Function&&t.tagNameCheck(J0)));else return!1;else if(M7[p]);else if(y1(P0,oz(J0,a,"")));else if((p==="src"||p==="xlink:href"||p==="href")&&L!=="script"&&RZ(J0,"data:")===0&&gJ[L]);else if(v5&&!y1(q0,oz(J0,a,"")));else if(J0)return!1;return!0},cJ=function(L){return L!=="annotation-xml"&&y9(L,e)},sJ=function(L){h5(u.beforeSanitizeAttributes,L,null);let{attributes:p}=L;if(!p||P7(L))return;let J0={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:w0,forceKeepAttr:void 0},v0=p.length;while(v0--){let L1=p[v0],{name:o0,namespaceURI:h1,value:f5}=L1,_6=e0(o0),L7=f5,U1=o0==="value"?L7:AZ(L7);if(J0.attrName=_6,J0.attrValue=U1,J0.keepAttr=!0,J0.forceKeepAttr=void 0,h5(u.uponSanitizeAttribute,L,J0),U1=J0.attrValue,vJ&&(_6==="id"||_6==="name"))q6(o0,L),U1=MK+U1;if(n5&&y1(/((--!?|])>)|<\/(style|title|textarea)/i,U1)){q6(o0,L);continue}if(_6==="attributename"&&y9(U1,"href")){q6(o0,L);continue}if(J0.forceKeepAttr)continue;if(!J0.keepAttr){q6(o0,L);continue}if(!B8&&y1(/\/>/i,U1)){q6(o0,L);continue}if(r5)a8([n,o,i],(aJ)=>{U1=oz(U1,aJ," ")});let oJ=e0(L.nodeName);if(!_J(oJ,_6,U1)){q6(o0,L);continue}if(N&&typeof U==="object"&&typeof U.getAttributeType==="function")if(h1);else switch(U.getAttributeType(oJ,_6)){case"TrustedHTML":{U1=N.createHTML(U1);break}case"TrustedScriptURL":{U1=N.createScriptURL(U1);break}}if(U1!==L7)try{if(h1)L.setAttributeNS(h1,o0,U1);else L.setAttribute(o0,U1);if(P7(L))P5(L);else $4(J.removed)}catch(aJ){q6(o0,L)}}h5(u.afterSanitizeAttributes,L,null)},SK=function Z0(L){let p=null,J0=pJ(L);h5(u.beforeSanitizeShadowDOM,L,null);while(p=J0.nextNode())if(h5(u.uponSanitizeShadowNode,p,null),iJ(p),sJ(p),p.content instanceof X)Z0(p.content);h5(u.afterSanitizeShadowDOM,L,null)};return J.sanitize=function(Z0){let L=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},p=null,J0=null,v0=null,L1=null;if(x7=!Z0,x7)Z0="<!-->";if(typeof Z0!=="string"&&!dJ(Z0))if(typeof Z0.toString==="function"){if(Z0=Z0.toString(),typeof Z0!=="string")throw az("dirty is not a string, aborting")}else throw az("toString is not a function");if(!J.isSupported)return Z0;if(!$6)O7(L);if(J.removed=[],typeof Z0==="string")Rz=!1;if(Rz){if(Z0.nodeName){let f5=e0(Z0.nodeName);if(!V0[f5]||B0[f5])throw az("root node is forbidden and cannot be sanitized in-place")}}else if(Z0 instanceof w)if(p=lJ("<!---->"),J0=p.ownerDocument.importNode(Z0,!0),J0.nodeType===nz.element&&J0.nodeName==="BODY")p=J0;else if(J0.nodeName==="HTML")p=J0;else p.appendChild(J0);else{if(!t5&&!r5&&!Y5&&Z0.indexOf("<")===-1)return N&&H8?N.createHTML(Z0):Z0;if(p=lJ(Z0),!p)return t5?null:H8?E:""}if(p&&u6)P5(p.firstChild);let o0=pJ(Rz?Z0:p);while(v0=o0.nextNode())if(iJ(v0),sJ(v0),v0.content instanceof X)SK(v0.content);if(Rz)return Z0;if(t5){if(l6){L1=k.call(p.ownerDocument);while(p.firstChild)L1.appendChild(p.firstChild)}else L1=p;if(w0.shadowroot||w0.shadowrootmode)L1=v.call(K,L1,!0);return L1}let h1=Y5?p.outerHTML:p.innerHTML;if(Y5&&V0["!doctype"]&&p.ownerDocument&&p.ownerDocument.doctype&&p.ownerDocument.doctype.name&&y1(o4,p.ownerDocument.doctype.name))h1="<!DOCTYPE "+p.ownerDocument.doctype.name+`> 49`+h1;if(r5)a8([n,o,i],(f5)=>{h1=oz(h1,f5," ")});return N&&H8?N.createHTML(h1):h1},J.setConfig=function(){let Z0=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};O7(Z0),$6=!0},J.clearConfig=function(){i6=null,$6=!1},J.isValidAttribute=function(Z0,L,p){if(!i6)O7({});let J0=e0(Z0),v0=e0(L);return _J(J0,v0,p)},J.addHook=function(Z0,L){if(typeof L!=="function")return;sz(u[Z0],L)},J.removeHook=function(Z0,L){if(L!==void 0){let p=jZ(u[Z0],L);return p===-1?void 0:DZ(u[Z0],p,1)[0]}return $4(u[Z0])},J.removeHooks=function(Z0){u[Z0]=[]},J.removeAllHooks=function(){u=_4()},J}var r4=a4();function E6(z){return t8(z,"day")}function t8(z,J,Q){if(z==1)return`1 ${J}`;else return Q=Q??`${J}s`,`${z} ${Q}`}function n4(z){return r4.sanitize(z,{ALLOWED_TAGS:["a","b","blockquote","br","code","dd","del","div","dl","dt","em","font","h1","h2","h3","h4","h5","h6","hr","i","li","ol","p","q","pre","s","span","strong","sub","sup","u","wbr","#text"],ALLOWED_ATTR:["align","alt","class","clear","color","dir","href","lang","rel","title","translate"]})}function t4(z,J){if(z.length<=J)return z;else return z.slice(0,J-1)+"…"}function y6(z){if(z===void 0||z===null||typeof z=="number")return z;else return parseInt(z,10)}function p1(z){let J=z.reason?z.reason.indexedAt:z.post.record.createdAt;return Date.parse(J)}function Uz(z){try{let J=new URL(z);return J.protocol=="http:"||J.protocol=="https:"}catch(J){return console.error("Invalid URL: "+J),!1}}function e4(z,J){return z.getDate()==J.getDate()&&z.getMonth()==J.getMonth()&&z.getFullYear()==J.getFullYear()}function B6(z){console.log(z),alert(z)}class d1{constructor(z,J){this.data=z,Object.assign(this,J??{})}get uri(){return this.data.uri}get cid(){return this.data.cid}get rkey(){return f0(this.uri).rkey}get type(){return this.data.$type}}class tz extends d1{constructor(z){super(z);this.author=z.creator}get title(){return this.data.displayName}get description(){return this.data.description}get likeCount(){return y6(this.data.likeCount)}get avatar(){return this.data.avatar}}class ez extends d1{constructor(z){super(z);this.author=z.creator}get title(){return this.data.name}get purpose(){return this.data.purpose}get description(){return this.data.description}get avatar(){return this.data.avatar}}class z8 extends d1{constructor(z){super(z);this.author=z.creator}get title(){return this.data.record.name}get description(){return this.data.record.description}}class X1{json;static parseInlineEmbed(z){switch(z.$type){case"app.bsky.embed.record#view":return new qz(z);case"app.bsky.embed.recordWithMedia#view":return new Fz(z);case"app.bsky.embed.images#view":return new Z7(z);case"app.bsky.embed.external#view":return new Mz(z);case"app.bsky.embed.video#view":return new xz(z);default:if(location.protocol=="file:")throw new Vz(`Unexpected embed type: ${z.$type}`);else return console.warn("Unexpected embed type:",z.$type),new X1(z)}}static parseRawEmbed(z){switch(z.$type){case"app.bsky.embed.record":return new Q7(z);case"app.bsky.embed.recordWithMedia":return new K7(z);case"app.bsky.embed.images":return new e8(z);case"app.bsky.embed.external":return new z7(z);case"app.bsky.embed.video":return new J7(z);default:if(location.protocol=="file:")throw new Vz(`Unexpected embed type: ${z.$type}`);else return console.warn("Unexpected embed type:",z.$type),new X1(z)}}constructor(z){this.json=z}get type(){return this.json.$type}}class e8 extends X1{images;constructor(z){super(z);this.images=z.images}}class z7 extends X1{url;title;thumb;constructor(z){super(z);this.url=z.external.uri,this.title=z.external.title,this.thumb=z.external.thumb}}class J7 extends X1{video;constructor(z){super(z);this.video=z.video}}class Q7 extends X1{record;constructor(z){super(z);this.record=new d1(z.record)}}class K7 extends X1{record;media;constructor(z){super(z);this.record=new d1(z.record.record),this.media=X1.parseRawEmbed(z.media)}}class qz extends X1{record;constructor(z){super(z);this.record=l9(z.record)}}class Fz extends X1{record;media;constructor(z){super(z);this.record=l9(z.record.record),this.media=X1.parseInlineEmbed(z.media)}}class Mz extends X1{url;title;description;thumb;constructor(z){super(z);this.url=z.external.uri,this.title=z.external.title,this.description=z.external.description,this.thumb=z.external.thumb}}class Z7 extends X1{images;constructor(z){super(z);this.images=z.images}}class xz extends X1{playlistURL;alt;constructor(z){super(z);this.playlistURL=z.playlist,this.alt=z.alt}}class Vz extends Error{constructor(z){super(z)}}class v6 extends d1{get didLinkToAuthor(){let{repo:z}=f0(this.uri);return`https://bsky.app/profile/${z}`}}function H6(z,J=null,Q=0,K=0){switch(z.$type){case"app.bsky.feed.defs#threadViewPost":let Z=new S0(z.post,{level:Q,absoluteLevel:K});if(Z.pageRoot=J??Z,z.replies){let X=z.replies.map((W)=>H6(W,Z.pageRoot,Q+1,K+1));Z.setReplies(X)}if(K<=0&&z.parent)Z.parent=H6(z.parent,Z.pageRoot,Q-1,K-1);return Z;case"app.bsky.feed.defs#notFoundPost":return new C5(z);case"app.bsky.feed.defs#blockedPost":return new E5(z);default:throw new Vz(`Unexpected record type: ${z.$type}`)}}function l9(z){switch(z.$type){case"app.bsky.embed.record#viewRecord":return new S0(z,{isEmbed:!0});case"app.bsky.embed.record#viewNotFound":return new C5(z);case"app.bsky.embed.record#viewBlocked":return new E5(z);case"app.bsky.embed.record#viewDetached":return new Cz(z);case"app.bsky.feed.defs#generatorView":return new tz(z);case"app.bsky.graph.defs#listView":return new ez(z);case"app.bsky.graph.defs#starterPackViewBasic":return new z8(z);default:return console.warn("Unknown record type:",z.$type),new d1(z)}}function JK(z){let J=new S0(z.post);if(z.reply){if(J.parent=zK(z.reply.parent),J.threadRoot=zK(z.reply.root),z.reply.grandparentAuthor)J.grandparentAuthor=z.reply.grandparentAuthor}if(z.reason)J.reason=z.reason;return J}function zK(z){switch(z.$type){case"app.bsky.feed.defs#postView":return new S0(z);case"app.bsky.feed.defs#notFoundPost":return new C5(z);case"app.bsky.feed.defs#blockedPost":return new E5(z);default:throw new Vz(`Unexpected record type: ${z.$type}`)}}class S0 extends v6{parent;threadRoot;pageRoot;replies;grandparentAuthor;level;absoluteLevel;reason;isEmbed;constructor(z,J){super(z);if(Object.assign(this,J??{}),this.absoluteLevel===0)this.pageRoot=this;if(this.record=this.isPostView?z.record:z.value,this.isPostView&&z.embed)this.embed=X1.parseInlineEmbed(z.embed);else if(this.isEmbed&&z.embeds&&z.embeds[0])this.embed=X1.parseInlineEmbed(z.embeds[0]);else if(this.record.embed)this.embed=X1.parseRawEmbed(this.record.embed);if(this.author=this.author??z.author,this.replies=[],this.viewerData=z.viewer,this.viewerLike=z.viewer?.like,this.author)N0.cacheProfile(this.author)}updateDataFromPost(z){this.record=z.record,this.embed=z.embed,this.author=z.author,this.viewerData=z.viewerData,this.viewerLike=z.viewerLike,this.level=z.level,this.absoluteLevel=z.absoluteLevel,this.setReplies(z.replies)}setReplies(z){this.replies=z,this.replies.sort(this.sortReplies.bind(this))}sortReplies(z,J){if(z instanceof S0&&J instanceof S0)if(z.author.did==this.author.did&&J.author.did!=this.author.did)return-1;else if(z.author.did!=this.author.did&&J.author.did==this.author.did)return 1;else if(z.text!="\uD83D\uDCCC"&&J.text=="\uD83D\uDCCC")return-1;else if(z.text=="\uD83D\uDCCC"&&J.text!="\uD83D\uDCCC")return 1;else if(z.createdAt.getTime()<J.createdAt.getTime())return-1;else if(z.createdAt.getTime()>J.createdAt.getTime())return 1;else return 0;else if(z instanceof S0)return-1;else if(J instanceof S0)return 1;else return 0}get isPostView(){return!this.isEmbed}get isFediPost(){return this.author?.handle.endsWith(".ap.brid.gy")}get originalFediContent(){return this.record.bridgyOriginalText}get originalFediURL(){return this.record.bridgyOriginalUrl}get isPageRoot(){return this.pageRoot===this}get authorFediHandle(){if(this.isFediPost)return this.author.handle.replace(/\.ap\.brid\.gy$/,"").replace(".","@");else throw"Not a Fedi post"}get hasValidHandle(){return this.author.handle!="handle.invalid"}get authorDisplayName(){if(this.author.displayName)return this.author.displayName.trim();else if(this.author.handle.endsWith(".bsky.social"))return this.author.handle.replace(/\.bsky\.social$/,"");else return this.author.handle}get linkToAuthor(){return"https://bsky.app/profile/"+(this.hasValidHandle?this.author.handle:this.author.did)}get linkToPost(){return this.linkToAuthor+"/post/"+this.rkey}get text(){return this.record.text}get lowercaseText(){if(!this._lowercaseText)this._lowercaseText=this.record.text.toLowerCase();return this._lowercaseText}get facets(){return this.record.facets}get tags(){return this.record.tags}get createdAt(){return new Date(this.record.createdAt)}get likeCount(){return y6(this.data.likeCount)}get replyCount(){return y6(this.data.replyCount)}get quoteCount(){return y6(this.data.quoteCount)}get hasMoreReplies(){return this.replyCount!==void 0&&this.replyCount>this.replies.length&&this.replies.length===0&&(this.level!==void 0&&this.level>4)}get hasHiddenReplies(){return this.replyCount!==void 0&&this.replyCount>this.replies.length&&(this.replies.length>0||this.level!==void 0&&this.level<=4)}get isRestrictingReplies(){return!!(this.data.threadgate&&this.data.threadgate.record.allow)}get repostCount(){return y6(this.data.repostCount)}get liked(){return this.viewerLike!==void 0}get muted(){return this.author.viewer?.muted}get muteList(){return this.author.viewer?.mutedByList?.name}get hasViewerInfo(){return this.viewerData!==void 0}get parentReference(){return this.record.reply?.parent&&new d1(this.record.reply?.parent)}get rootReference(){return this.record.reply?.root&&new d1(this.record.reply?.root)}}class E5 extends v6{constructor(z){super(z);this.author=z.author}get blocksUser(){return!!this.author.viewer?.blocking}get blockedByUser(){return this.author.viewer?.blockedBy}}class C5 extends v6{}class Cz extends v6{}class p9 extends Error{}class o5 extends Error{constructor(z){super(z)}}class i1 extends cz{handleCache;profiles;constructor(z,J,Q){super(z,J,Q);this.handleCache=new k9,this.profiles={}}cacheProfile(z){this.profiles[z.did]=z,this.profiles[z.handle]=z,this.handleCache.setHandleDid(z.handle,z.did)}async fetchHandleForDid(z){let J=this.handleCache.findHandleByDid(z);if(J)return J;else return(await this.loadUserProfile(z)).handle}async resolveHandle(z){let J=this.handleCache.getHandleDid(z);if(J)return J;else{let Q=await this.getRequest("com.atproto.identity.resolveHandle",{handle:z},{auth:!1}),K=Q.did;if(K)return this.handleCache.setHandleDid(z,K),K;else throw new p9("Missing DID in response: "+JSON.stringify(Q))}}async loadThreadByURL(z){let{user:J,post:Q}=J8(z);return await this.loadThreadById(J,Q)}async loadThreadById(z,J){let K=`at://${z.startsWith("did:")?z:await this.resolveHandle(z)}/app.bsky.feed.post/${J}`;return await this.loadThreadByAtURI(K)}async loadThreadByAtURI(z){return await this.getRequest("app.bsky.feed.getPostThread",{uri:z,depth:10})}async loadUserProfile(z){if(this.profiles[z])return this.profiles[z];else{let J=await this.getRequest("app.bsky.actor.getProfile",{actor:z});return this.cacheProfile(J),J}}async autocompleteUsers(z){return(await this.getRequest("app.bsky.actor.searchActorsTypeahead",{q:z})).actors}async getReplies(z){return(await this.fetchAll("blue.microcosm.links.getBacklinks",{field:"records",params:{subject:z,source:"app.bsky.feed.post:reply.parent.uri",limit:100}})).map((Q)=>`at://${Q.did}/${Q.collection}/${Q.rkey}`)}async getQuoteCount(z){return(await this.getRequest("blue.feeds.post.getQuoteCount",{uri:z})).quoteCount}async getQuotes(z,J){let Q;if(z.startsWith("at://"))Q=z;else{let{user:Z,post:X}=J8(z);Q=`at://${Z.startsWith("did:")?Z:await U6.resolveHandle(Z)}/app.bsky.feed.post/${X}`}let K={uri:Q};if(J)K.cursor=J;return await this.getRequest("blue.feeds.post.getQuotes",K)}async getHashtagFeed(z,J){let Q={q:"#"+z,limit:50,sort:"latest"};if(J)Q.cursor=J;return await this.getRequest("app.bsky.feed.searchPosts",Q)}async loadHiddenReplies(z){let Q=(await d9.getReplies(z.uri)).filter((X)=>!z.replies.some((W)=>W.uri===X));Q.sort((X,W)=>{let w=X.split("/").at(-1),H=W.split("/").at(-1);return w.localeCompare(H)});let K=Q.map((X)=>this.loadThreadByAtURI(X));return(await Promise.allSettled(K)).map((X)=>X.status=="fulfilled"?X.value:null)}async loadUserTimeline(z,J,Q){let Z=new Date().getTime()-J*86400*1000,{filter:X,...W}=Q;return await this.fetchAll("app.bsky.feed.getAuthorFeed",{params:{actor:z,filter:X,limit:100},field:"feed",breakWhen:(w)=>p1(w)<Z,...W})}async loadListTimeline(z,J,Q={}){let Z=new Date().getTime()-J*86400*1000;return await this.fetchAll("app.bsky.feed.getListFeed",{params:{list:z,limit:100},field:"feed",breakWhen:(X)=>p1(X)<Z,...Q})}async loadPost(z){let J=await this.loadPosts([z]);if(J.length==1)return J[0];else throw new p9("Post not found")}async loadPostIfExists(z){return(await this.loadPosts([z]))[0]}async loadPosts(z){if(z.length>0)return(await this.getRequest("app.bsky.feed.getPosts",{uris:z})).posts;else return[]}async loadPostViewerInfo(z){let J=await this.loadPostIfExists(z.uri);if(J)z.author=J.author,z.viewerData=J.viewer,z.viewerLike=J.viewer?.like;return J}async reloadBlockedPost(z){let{repo:J}=f0(z),Q=U6.loadPostIfExists(z),K=this.getRequest("app.bsky.actor.getProfile",{actor:J}),Z=await Q;if(!Z)return null;let X=await K;return new S0(Z,{author:X})}}class QK{user;constructor(){let z=localStorage.getItem("userData");this.user=z?JSON.parse(z):{}}save(){if(this.user)localStorage.setItem("userData",JSON.stringify(this.user));else localStorage.removeItem("userData")}}class X7 extends i1{user;constructor(){let z=new QK,J=z.user.pdsEndpoint||null;super(J,z);this.user=z.user}async getCurrentUserAvatar(){return(await this.getRequest("com.atproto.repo.getRecord",{repo:this.user.did,collection:"app.bsky.actor.profile",rkey:"self"})).value.avatar}async loadCurrentUserAvatar(){if(!this.config||!this.config.user)throw new w6("User isn't logged in");let z=await this.getCurrentUserAvatar();if(z){let J=`https://cdn.bsky.app/img/avatar/plain/${this.user.did}/${z.ref.$link}@jpeg`;return this.config.user.avatar=J,this.config.save(),J}else return null}async loadNotifications(z){return await this.getRequest("app.bsky.notification.listNotifications",z||{})}async loadMentions(z){let J=await this.loadNotifications({cursor:z??"",limit:100,reasons:["reply","mention"]}),Q=J.notifications.map((X)=>X.uri),K=[];for(let X=0;X<Q.length;X+=25){let W=this.loadPosts(Q.slice(X,X+25));K.push(W)}let Z=await Promise.all(K);return{cursor:J.cursor,posts:Z.flat()}}async loadHomeTimeline(z,J={}){let K=new Date().getTime()-z*86400*1000;return await this.fetchAll("app.bsky.feed.getTimeline",{params:{limit:100},field:"feed",breakWhen:(Z)=>p1(Z)<K,...J})}async loadUserLists(){return(await this.fetchAll("app.bsky.graph.getLists",{params:{actor:this.user.did,limit:100},field:"lists"})).filter((J)=>J.purpose=="app.bsky.graph.defs#curatelist")}async likePost(z){return await this.postRequest("com.atproto.repo.createRecord",{repo:this.user.did,collection:"app.bsky.feed.like",record:{subject:{uri:z.uri,cid:z.cid},createdAt:new Date().toISOString()}})}async removeLike(z){let{rkey:J}=f0(z);await this.postRequest("com.atproto.repo.deleteRecord",{repo:this.user.did,collection:"app.bsky.feed.like",rkey:J})}resetTokens(){delete this.user.avatar,super.resetTokens()}}class KK{#z;get data(){return Y(this.#z)}set data(z){D(this.#z,z,!0)}constructor(){let z=localStorage.getItem("settings");this.#z=m(C0(z?JSON.parse(z):{}))}save(){localStorage.setItem("settings",JSON.stringify(this.data))}logOut(){delete this.data.incognito,this.save()}get dateLocale(){return this.data.dateLocale}set dateLocale(z){this.data.dateLocale=z,this.save()}get incognitoMode(){return this.data.incognito}set incognitoMode(z){this.data.incognito=z,this.save()}get biohazardsEnabled(){return this.data.biohazard}set biohazardsEnabled(z){this.data.biohazard=z,this.save()}}var T0=new KK;window.settings=T0;var U6=new i1("api.bsky.app"),Q8=new i1("blue.mackuba.eu"),d9=new i1("constellation.microcosm.blue"),M0=new X7,N0;function i9(){N0=M0.isLoggedIn&&!T0.incognitoMode?M0:U6,window.api=N0}i9();window.AuthenticatedAPI=X7;window.BlueskyAPI=i1;window.Minisky=cz;window.appView=U6;window.blueAPI=Q8;window.accountAPI=M0;window.constellationAPI=d9;function g6(){return location.origin+location.pathname}function Oz(z){let J=new URL(g6());return J.searchParams.set("hash",z),J.toString()}function _9(z){let J=new URL(g6());return J.searchParams.set("quotes",z),J.toString()}function y5(z){return W5(z.author.handle,z.rkey)}function W5(z,J){let Q=new URL(g6());return Q.searchParams.set("author",z),Q.searchParams.set("post",J),Q.toString()}function J8(z){let J;try{J=new URL(z)}catch(X){throw new o5(`${X}`)}if(J.protocol!="https:"&&J.protocol!="http:")throw new o5("URL must start with http(s)://");let Q=J.pathname.split("/");if(Q.length<5||Q[1]!="profile"||Q[3]!="post")throw new o5("This is not a valid thread URL");let K=Q[2],Z=Q[4];return{user:K,post:Z}}function ZK(z){return Object.fromEntries(new URLSearchParams(z))}var XK="5";if(typeof window<"u")((window.__svelte??={}).v??=new Set).add(XK);class c9 extends Error{}class YK extends Error{}async function WK(z){let J;if(z.startsWith("did:plc:"))J=new URL(`https://plc.directory/${z}`);else if(z.startsWith("did:web:")){let X=z.replace(/^did:web:/,"");J=new URL(`https://${X}/.well-known/did.json`)}else throw new c9(`Unknown DID type: ${z}`);let Q=await fetch(J),K=await Q.text(),Z=K.trim().length>0?JSON.parse(K):void 0;if(Q.status==200){let X=(Z.service||[]).find((W)=>W.id=="#atproto_pds");if(X)return X.serviceEndpoint.replace("https://","");else throw new c9("Missing #atproto_pds service definition")}else throw new G6(Q.status,Z)}async function wK(z){if(z.match(/^did:/))return await WK(z);else if(z.match(/^[^@]+@[^@]+$/))return"bsky.social";else if(z.match(/^@?[\w\-]+(\.[\w\-]+)+$/)){z=z.replace(/^@/,"");let J=await U6.resolveHandle(z);return await WK(J)}else throw new YK("Please enter your handle or DID.")}class GK{#z;#J;#Q;constructor(){this.#z=m(C0(M0.isLoggedIn)),this.#J=m(C0(M0.isLoggedIn?M0.user.avatar:void 0)),this.#Q=m(!1)}get isIncognito(){return!!T0.incognitoMode}toggleIncognitoMode(){T0.incognitoMode=!this.isIncognito,location.reload()}get loggedIn(){return Y(this.#z)}get avatarURL(){return Y(this.#J)}get avatarIsLoading(){return Y(this.#Q)}async logIn(z,J){let Q=await wK(z);M0.host=Q,await M0.logIn(z,J),D(this.#z,!0),D(this.#Q,!0),i9(),M0.loadCurrentUserAvatar().then((K)=>{D(this.#J,K||void 0,!0)}).catch((K)=>{console.log(K)}).finally(()=>{D(this.#Q,!1)})}logOut(){M0.resetTokens(),T0.logOut(),location.reload()}}var W1=new GK;var pZ=P("<div><!></div>");function K8(z,J){c(J,!0);let Q=j0(J,"onClose",3,void 0),K=j0(J,"id",3,void 0),Z=s5(J,["$$slots","$$events","$$legacy","children","onClose","id"]);function X(H){if(H.target===H.currentTarget)Q()?.()}var W=pZ();W.__click=X;var w=C(W);Y6(w,()=>J.children),x(W),g(()=>{_(W,"id",K()),Z1(W,1,`dialog ${J.class??""}`,"svelte-39p02pfp7x05g")}),V(z,W),s()}I0(["click"]);var dZ=P(`<form method="get" class="svelte-1dbou6z4h1v2"><i class="close fa-circle-xmark fa-regular"></i> <h2>☣️ Infohazard Warning</h2> <p>&ldquo;<em>This thread is not a place of honor... no highly esteemed post is commemorated here... nothing valued is here.</em>&rdquo;</p> <p>This feature allows access to comments in a thread which were hidden because one of the commenters has blocked another. Bluesky currently hides such comments to avoid escalating conflicts.</p> <p>Are you sure you want to enter?<br/>(You can toggle this in the menu in top-left corner.)</p> <p class="submit svelte-1dbou6z4h1v2"><input type="submit" value="Show me the drama \uD83D\uDE08" class="svelte-1dbou6z4h1v2"/> <input type="submit" value="Nope, I'd rather not \uD83D\uDE48" class="svelte-1dbou6z4h1v2"/></p></form>`);function s9(z,J){c(J,!0);let Q=j0(J,"onConfirm",3,void 0),K=j0(J,"onReject",3,void 0),Z=j0(J,"onClose",3,void 0);function X(w){w.preventDefault(),T0.biohazardsEnabled=!0,Q()?.(),Z()?.()}function W(w){w.preventDefault(),T0.biohazardsEnabled=!1,K()?.(),Z()?.()}K8(z,{onClose:()=>Z()?.(),children:(w,H)=>{var B=dZ(),F=C(B);F.__click=function(...M){Z()?.apply(this,M)};var q=S(F,10),G=C(q);G.__click=X;var U=S(G,2);U.__click=W,x(q),x(B),V(w,B)},$$slots:{default:!0}}),s()}I0(["click"]);var iZ=P('<i class="close fa-circle-xmark fa-regular svelte-nwvgqytdmqdc"></i>'),_Z=P(`<div class="info-box svelte-nwvgqytdmqdc"><p class="svelte-nwvgqytdmqdc">Skythread doesn't support OAuth yet. For now, you need to use an "app password" here, which you can generate in the Bluesky app settings.</p> <p class="svelte-nwvgqytdmqdc">The password you enter here is only passed to the Bluesky API (PDS) and isn't saved anywhere. The returned access token is only stored in your browser's local storage. You can see the complete source code of this app <a href="http://tangled.org/mackuba.eu/skythread" target="_blank" class="svelte-nwvgqytdmqdc">on Tangled</a>.</p></div>`),cZ=P('<input type="submit" value="Log in" class="svelte-nwvgqytdmqdc"/>'),sZ=P('<i class="cloudy fa-solid fa-cloud fa-beat fa-xl svelte-nwvgqytdmqdc"></i>'),oZ=P('<form method="get" class="svelte-nwvgqytdmqdc"><!> <h2>\uD83C\uDF24 Skythread</h2> <p><input type="text" id="login_handle" required placeholder="name.bsky.social" class="svelte-nwvgqytdmqdc"/></p> <p><input type="password" id="login_password" required placeholder="✱✱✱✱✱✱✱✱" class="svelte-nwvgqytdmqdc"/></p> <p class="info svelte-nwvgqytdmqdc"><a href="#" class="svelte-nwvgqytdmqdc"><i class="fa-regular fa-circle-question"></i> Use an "app password" here</a></p> <!> <p class="submit"><!></p></form>');function o9(z,J){c(J,!0);let Q=j0(J,"onClose",3,void 0),K=j0(J,"onLogin",3,void 0),Z=m(""),X=m(""),W=m(!1),w=m(!1),H,B;function F(){if(J.showClose&&Q())Q()()}function q(M){M.preventDefault(),D(W,!Y(W))}async function G(M){M.preventDefault(),D(w,!0),H.blur(),B.blur();try{await W1.logIn(Y(Z).trim(),Y(X).trim()),K()?.(),Q()?.()}catch(I){D(w,!1),U(I)}}function U(M){if(console.log(M),M instanceof G6&&M.code==401&&M.json.error=="AuthFactorTokenRequired")alert('Please log in using an "app password" if you have 2FA enabled.');else window.setTimeout(()=>alert(M),10)}{let M=x0(()=>Y(W)?"expanded":"");K8(z,{id:"login",get class(){return Y(M)},onClose:F,children:(I,O)=>{var A=oZ(),T=C(A);{var y=(Q0)=>{var q0=iZ();q0.__click=function(...a){Q()?.apply(this,a)},V(Q0,q0)};j(T,(Q0)=>{if(J.showClose)Q0(y)})}var N=S(T,4),E=C(N);m0(E),N6(E,!0),n1(E,(Q0)=>H=Q0,()=>H),x(N);var b=S(N,2),R=C(b);m0(R),n1(R,(Q0)=>B=Q0,()=>B),x(b);var k=S(b,2),$=C(k);$.__click=q,x(k);var v=S(k,2);{var u=(Q0)=>{var q0=_Z();V(Q0,q0)};j(v,(Q0)=>{if(Y(W))Q0(u)})}var n=S(v,2),o=C(n);{var i=(Q0)=>{var q0=cZ();V(Q0,q0)},X0=(Q0)=>{var q0=sZ();V(Q0,q0)};j(o,(Q0)=>{if(!Y(w))Q0(i);else Q0(X0,!1)})}x(n),x(A),C1("submit",A,G),O1(E,()=>Y(Z),(Q0)=>D(Z,Q0)),O1(R,()=>Y(X),(Q0)=>D(X,Q0)),V(I,A)},$$slots:{default:!0}})}s()}I0(["click"]);var W7=m(!1),BK=m(!1),Y7=m(!1),HK=m(void 0);function Pz(z){if(!Y(W7))D(W7,!0),D(BK,z.showClose,!0)}function UK(z){if(!Y(Y7))D(Y7,!0),D(HK,z,!0)}function a9(z){var J=d(),Q=h(J);{var K=(X)=>{o9(X,{onClose:()=>D(W7,!1),get showClose(){return Y(BK)}})},Z=(X)=>{var W=d(),w=h(W);{var H=(B)=>{s9(B,{onClose:()=>D(Y7,!1),onConfirm:()=>Y(HK)?.()})};j(w,(B)=>{if(Y(Y7))B(H)},!0)}V(X,W)};j(Q,(X)=>{if(Y(W7))X(K);else X(Z,!1)})}V(z,J)}var aZ=P('<span class="check">✓</span>'),rZ=P('<li class="svelte-2l3xtqf39s5xz"><a class="button svelte-2l3xtqf39s5xz" href="#"><!> </a></li>');function Lz(z,J){let Q=j0(J,"title",3,void 0),K=j0(J,"showCheckmark",3,!1);var Z=rZ(),X=C(Z);X.__click=function(...B){J.onclick?.apply(this,B)};var W=C(X);{var w=(B)=>{var F=aZ();V(B,F)};j(W,(B)=>{if(K())B(w)})}var H=S(W);x(X),x(Z),g(()=>{_(X,"title",Q()),l(H,` ${J.label??""}`)}),V(z,Z)}I0(["click"]);var nZ=P("<!> <img/>",1),tZ=P("<img/>");function r9(z,J){let Q=s5(J,["$$slots","$$events","$$legacy","loading","error"]),K=m(void 0);function Z(){D(K,"loaded")}function X(){D(K,"error")}var W=d(),w=h(W);{var H=(F)=>{var q=nZ(),G=h(q);Y6(G,()=>J.loading);var U=S(G,2);c8(U,()=>({...Q,style:"display: none",onload:Z,onerror:X})),Xz(U),V(F,q)},B=(F)=>{var q=d(),G=h(q);{var U=(I)=>{var O=tZ();c8(O,()=>({...Q})),Xz(O),V(I,O)},M=(I)=>{var O=d(),A=h(O);Y6(A,()=>J.error),V(I,O)};j(G,(I)=>{if(Y(K)=="loaded")I(U);else I(M,!1)},!0)}V(F,q)};j(w,(F)=>{if(!Y(K))F(H);else F(B,!1)})}V(z,W)}var eZ=P('<i class="fa-solid fa-user-secret fa-lg svelte-37q3bo06zz82t"></i>'),zX=P('<i class="fa-regular fa-user-circle fa-xl svelte-37q3bo06zz82t"></i>'),JX=P('<i class="fa-regular fa-user-circle fa-xl svelte-37q3bo06zz82t"></i>'),QX=P('<i class="fa-solid fa-user-circle fa-xl svelte-37q3bo06zz82t"></i>'),KX=P('<i class="fa-solid fa-user-circle fa-xl svelte-37q3bo06zz82t"></i>'),ZX=P('<div id="account"><!></div> <div id="account_menu" class="svelte-37q3bo06zz82t"><ul class="svelte-37q3bo06zz82t"><!> <!> <!> <li class="link svelte-37q3bo06zz82t"><a class="svelte-37q3bo06zz82t">Home</a></li> <li class="link svelte-37q3bo06zz82t"><a href="?page=posting_stats" class="svelte-37q3bo06zz82t">Posting stats</a></li> <li class="link svelte-37q3bo06zz82t"><a href="?page=like_stats" class="svelte-37q3bo06zz82t">Like stats</a></li> <li class="link svelte-37q3bo06zz82t"><a href="?page=search" class="svelte-37q3bo06zz82t">Timeline search</a></li> <li class="link svelte-37q3bo06zz82t"><a href="?page=search&amp;mode=likes" class="svelte-37q3bo06zz82t">Archive search</a></li></ul></div>',1);function n9(z,J){c(J,!0);let Q=m(!1);K1(()=>{let k=document.body.parentNode;return k.addEventListener("click",K),()=>{k.removeEventListener("click",K)}});function K(){D(Q,!1)}function Z(k){k.stopPropagation(),D(Q,!Y(Q))}function X(k){if(k.preventDefault(),T0.biohazardsEnabled===!1)T0.biohazardsEnabled=!0;else T0.biohazardsEnabled=!1}function W(k){k.preventDefault(),W1.toggleIncognitoMode()}function w(k){k.preventDefault(),Pz({showClose:!0}),D(Q,!1)}function H(k){k.preventDefault(),W1.logOut()}var B=ZX(),F=h(B);F.__click=Z;var q=C(F);{var G=(k)=>{var $=eZ();V(k,$)},U=(k)=>{var $=d(),v=h($);{var u=(o)=>{var i=zX();V(o,i)},n=(o)=>{var i=d(),X0=h(i);{var Q0=(a)=>{r9(a,{class:"avatar",get src(){return W1.avatarURL},loading:(V0)=>{var k0=JX();V(V0,k0)},error:(V0)=>{var k0=QX();V(V0,k0)},$$slots:{loading:!0,error:!0}})},q0=(a)=>{var e=KX();V(a,e)};j(X0,(a)=>{if(W1.loggedIn&&W1.avatarURL)a(Q0);else a(q0,!1)},!0)}V(o,i)};j(v,(o)=>{if(!W1.loggedIn||W1.avatarIsLoading)o(u);else o(n,!1)},!0)}V(k,$)};j(q,(k)=>{if(W1.isIncognito)k(G);else k(U,!1)})}x(F);var M=S(F,2);M.__click=(k)=>k.stopPropagation();var I=C(M),O=C(I);{var A=(k)=>{Lz(k,{onclick:W,label:"Incognito mode",title:"Temporarily load threads as a logged-out user",get showCheckmark(){return W1.isIncognito}})};j(O,(k)=>{if(W1.loggedIn)k(A)})}var T=S(O,2);{let k=x0(()=>T0.biohazardsEnabled!==!1);Lz(T,{onclick:X,label:"Show infohazards",title:"Show links to blocked and hidden comments",get showCheckmark(){return Y(k)}})}var y=S(T,2);{var N=(k)=>{Lz(k,{onclick:w,label:"Log in"})},E=(k)=>{Lz(k,{onclick:H,label:"Log out"})};j(y,(k)=>{if(!W1.loggedIn)k(N);else k(E,!1)})}var b=S(y,2),R=C(b);x(b),J1(8),x(I),x(M),g((k)=>{Z1(F,1,T6({active:Y(Q)}),"svelte-37q3bo06zz82t"),c5(M,`visibility: ${Y(Q)?"visible":"hidden"}`),_(R,"href",k)},[g6]),V(z,B),s()}I0(["click"]);var h6,t9;function V6(z){if(h6)document.removeEventListener("scroll",h6);t9?.disconnect(),h6=()=>{if(window.pageYOffset+window.innerHeight>document.body.offsetHeight-500)z(h6)},z(h6),document.addEventListener("scroll",h6),t9=new ResizeObserver(h6),t9.observe(document.body)}gQ();var XX=P('<div id="loader" class="svelte-1sl84wlrv68d4"><img src="icons/sunny.png" alt="Loading..." class="svelte-1sl84wlrv68d4"/></div>');function a5(z){var J=XX();V(z,J)}var WX=P('<div class="margin svelte-2ac5zurqv2ncl"><div class="edge svelte-2ac5zurqv2ncl"><div class="line svelte-2ac5zurqv2ncl"></div></div> <img class="plus svelte-2ac5zurqv2ncl"/></div>');function e9(z,J){c(J,!0);let Q=j0(J,"collapsed",15,!1);function K(){Q(!Q())}var Z=WX(),X=C(Z);X.__click=K;var W=S(X,2);W.__click=K,x(Z),g(()=>{_(W,"alt",Q()?"+":"-"),_(W,"src",`icons/${Q()?"add-square.png":"subtract-square.png"}`)}),V(z,Z),s()}I0(["click"]);var YX=P('<a class="fedi-link svelte-1ssytx46btagw" target="_blank"><div class="svelte-1ssytx46btagw"><i class="fa-solid fa-arrow-up-right-from-square fa-sm svelte-1ssytx46btagw"></i> </div></a>');function zJ(z,J){c(J,!0);let Q=x0(()=>new URL(J.url).hostname);var K=YX(),Z=C(K),X=S(C(Z));x(Z),x(K),g(()=>{_(K,"href",J.url),l(X,` View on ${Y(Q)??""}`)}),V(z,K),s()}var wX=P('☣️ <a class="svelte-2zqs77smgmod7">Load hidden replies…</a>',1),GX=P('<img class="loader" src="icons/sunny.png" alt="Loading..."/>'),BX=P('<p class="hidden-replies svelte-2zqs77smgmod7"><!></p>');function JJ(z,J){c(J,!0);let{post:Q}=n0(),K=m(!1);function Z(F){if(F.preventDefault(),T0.biohazardsEnabled===!0)X();else UK(()=>{X()})}async function X(){D(K,!0);try{let q=(await N0.loadHiddenReplies(Q)).map((G)=>G&&H6(G.thread,Q.pageRoot,1,Q.absoluteLevel+1));D(K,!1),J.onLoad(q)}catch(F){D(K,!1),J.onError(F)}}var W=BX(),w=C(W);{var H=(F)=>{var q=wX(),G=S(h(q));G.__click=Z,g((U)=>_(G,"href",U),[()=>y5(Q)]),V(F,q)},B=(F)=>{var q=GX();V(F,q)};j(w,(F)=>{if(!Y(K))F(H);else F(B,!1)})}x(W),V(z,W),s()}I0(["click"]);var HX=P("<a>Load more replies…</a>"),UX=P('<img class="loader" src="icons/sunny.png" alt="Loading..."/>'),VX=P("<p><!></p>");function QJ(z,J){c(J,!0);let{post:Q}=n0(),K=m(!1);async function Z(B){B.preventDefault(),D(K,!0);try{let F=await N0.loadThreadByAtURI(Q.uri),q=H6(F.thread,Q.pageRoot,0,Q.absoluteLevel);if(D(K,!1),q instanceof S0)window.subtreeRoot=q,J.onLoad(q);else J.onError(Error("Post is not available"))}catch(F){D(K,!1),J.onError(F)}}var X=VX(),W=C(X);{var w=(B)=>{var F=HX();F.__click=Z,g((q)=>_(F,"href",q),[()=>y5(Q)]),V(B,F)},H=(B)=>{var F=UX();V(B,F)};j(W,(B)=>{if(!Y(K))B(w);else B(H,!1)})}x(X),V(z,X),s()}I0(["click"]);class Iz{text;facet;constructor(z,J){this.text=z;this.facet=J}get link(){return this.facet?.features.find((z)=>z.$type==="app.bsky.richtext.facet#link")}isLink(){return!!this.link}get mention(){return this.facet?.features.find((z)=>z.$type==="app.bsky.richtext.facet#mention")}isMention(){return!!this.mention}get tag(){return this.facet?.features.find((z)=>z.$type==="app.bsky.richtext.facet#tag")}isTag(){return!!this.tag}}class KJ{unicodeText;facets;constructor(z){if(this.unicodeText=new VK(z.text),this.facets=z.facets,this.facets)this.facets=this.facets.filter(FX).sort(qX)}get text(){return this.unicodeText.toString()}get length(){return this.unicodeText.length}get graphemeLength(){return this.unicodeText.graphemeLength}*segments(){let z=this.facets||[];if(!z.length){yield new Iz(this.unicodeText.utf16);return}let J=0,Q=0;do{let K=z[Q];if(J<K.index.byteStart)yield new Iz(this.unicodeText.slice(J,K.index.byteStart));else if(J>K.index.byteStart){Q++;continue}if(K.index.byteStart<K.index.byteEnd){let Z=this.unicodeText.slice(K.index.byteStart,K.index.byteEnd);if(!Z.trim())yield new Iz(Z);else yield new Iz(Z,K)}J=K.index.byteEnd,Q++}while(Q<z.length);if(J<this.unicodeText.length)yield new Iz(this.unicodeText.slice(J,this.unicodeText.length))}}var qX=(z,J)=>z.index.byteStart-J.index.byteStart,FX=(z)=>z.index.byteStart<=z.index.byteEnd,MX=new TextEncoder,xX=new TextDecoder,CX=new Intl.Segmenter,OX=(z)=>{return Array.from(CX.segment(z)).length};class VK{utf16;utf8;_graphemeLen;constructor(z){this.utf16=z,this.utf8=MX.encode(z)}get length(){return this.utf8.byteLength}get graphemeLength(){if(!this._graphemeLen)this._graphemeLen=OX(this.utf16);return this._graphemeLen}slice(z,J){return xX.decode(this.utf8.slice(z,J))}toString(){return this.utf16}}var PX=P("<a> </a>"),LX=P("<a> </a>"),IX=P("<a> </a>"),SX=P("<br/>"),jX=P("<!> ",1);function ZJ(z,J){c(J,!0);let Q=x0(()=>new KJ({text:J.text,facets:J.facets})),K=x0(()=>Y(Q).segments());var Z=d(),X=h(Z);A0(X,17,()=>Y(K),x1,(W,w)=>{var H=d(),B=h(H);{var F=(G)=>{var U=PX(),M=C(U,!0);x(U),g(()=>{_(U,"href",`https://bsky.app/profile/${Y(w).mention.did??""}`),l(M,Y(w).text)}),V(G,U)},q=(G)=>{var U=d(),M=h(U);{var I=(A)=>{var T=d(),y=h(T);{var N=(b)=>{var R=LX(),k=C(R,!0);x(R),g(()=>{_(R,"href",Y(w).link.uri),l(k,Y(w).text)}),V(b,R)},E=(b)=>{var R=A1();g(()=>l(R,`[${Y(w).text??""}](${Y(w).link.uri??""})`)),V(b,R)};j(y,(b)=>{if(Uz(Y(w).link.uri))b(N);else b(E,!1)})}V(A,T)},O=(A)=>{var T=d(),y=h(T);{var N=(b)=>{var R=IX(),k=C(R,!0);x(R),g(($)=>{_(R,"href",$),l(k,Y(w).text)},[()=>Oz(Y(w).tag.tag)]),V(b,R)},E=(b)=>{let R=x0(()=>Y(w).text.split(` 50`));var k=d(),$=h(k);A0($,17,()=>Y(R),x1,(v,u,n)=>{var o=jX(),i=h(o);{var X0=(q0)=>{var a=SX();V(q0,a)};j(i,(q0)=>{if(n>0)q0(X0)})}var Q0=S(i,1,!0);g(()=>l(Q0,Y(u))),V(v,o)}),V(b,k)};j(y,(b)=>{if(Y(w).tag)b(N);else b(E,!1)},!0)}V(A,T)};j(M,(A)=>{if(Y(w).link)A(I);else A(O,!1)},!0)}V(G,U)};j(B,(G)=>{if(Y(w).mention)G(F);else G(q,!1)})}V(W,H)}),V(z,Z),s()}var DX=P('<div class="bridged-body svelte-2d3jfo6dimkdp"><!></div>'),RX=P('<p class="body svelte-2d3jfo6dimkdp"><!></p>');function Z8(z,J){c(J,!0);let Q="search-results",{post:K}=n0(),Z=j0(J,"highlightedMatches",3,void 0),X=m(void 0);function W(q){let G=new RegExp(`\\b(${q.join("|")})\\b`,"gi"),U=document.createTreeWalker(Y(X),NodeFilter.SHOW_TEXT),M=[];while(U.nextNode()){let O=U.currentNode;if(!O.textContent)continue;G.lastIndex=0;for(;;){let A=G.exec(O.textContent);if(A===null)break;let T=new Range;T.setStart(O,A.index),T.setEnd(O,A.index+A[0].length),M.push(T)}}let I=CSS.highlights.get(Q)||new Highlight;M.forEach((O)=>I.add(O)),CSS.highlights.set(Q,I)}K1(()=>{if(Z()&&Z().length>0)return W(Z()),()=>{CSS.highlights.delete(Q)};else return});var w=d(),H=h(w);{var B=(q)=>{var G=DX(),U=C(G);V9(U,()=>n4(K.originalFediContent)),x(G),n1(G,(M)=>D(X,M),()=>Y(X)),V(q,G)},F=(q)=>{var G=RX(),U=C(G);ZJ(U,{get text(){return K.text},get facets(){return K.facets}}),x(G),n1(G,(M)=>D(X,M),()=>Y(X)),V(q,G)};j(H,(q)=>{if(K.originalFediContent)q(B);else q(F,!1)})}V(z,w),s()}class XJ{post;placement;constructor(z,J){this.post=z,this.placement=J}get timeFormatForTimestamp(){if(this.placement=="quotes"||this.placement=="feed")return{weekday:"short",day:"numeric",month:"short",year:"numeric",hour:"numeric",minute:"numeric"};else if(this.post.isPageRoot||this.placement!="thread")return{day:"numeric",month:"short",year:"numeric",hour:"numeric",minute:"numeric"};else if(this.post.pageRoot&&!e4(this.post.createdAt,this.post.pageRoot.createdAt))return{day:"numeric",month:"short",hour:"numeric",minute:"numeric"};else return{hour:"numeric",minute:"numeric"}}get formattedTimestamp(){let z=this.timeFormatForTimestamp;return this.post.createdAt.toLocaleString(T0.dateLocale,z)}}var AX=P('<a class="action"><i class="fa-solid fa-arrows-split-up-and-left fa-rotate-180"></i></a>');function Sz(z,J){c(J,!0);let Q=j0(J,"title",3,"");var K=AX();g((Z)=>{_(K,"href",Z),_(K,"title",Q())},[()=>y5(J.post)]),V(z,K),s()}var NX=P('<i class="muted-avatar fa-regular fa-circle-user fa-2x svelte-19hm87t6mz7s5"></i>'),kX=P('<img class="avatar svelte-19hm87t6mz7s5" alt="Avatar" loading="lazy"/>'),bX=P('<i class="no-avatar fa-regular fa-face-smile fa-2x svelte-19hm87t6mz7s5"></i>'),TX=P('<a class="handle svelte-19hm87t6mz7s5" target="_blank"> </a> <img src="icons/mastodon.svg" class="mastodon svelte-19hm87t6mz7s5" alt="Mastodon logo"/>',1),EX=P('<a class="handle svelte-19hm87t6mz7s5" target="_blank"> </a>'),yX=P('<span class="separator svelte-19hm87t6mz7s5">&bull;</span> <!>',1),vX=P('<h2 class="svelte-19hm87t6mz7s5"><!> <!> <span class="separator svelte-19hm87t6mz7s5">&bull;</span> <a class="time svelte-19hm87t6mz7s5" target="_blank"> </a> <!></h2>');function WJ(z,J){c(J,!0);let{post:Q,placement:K}=n0(),Z=new XJ(Q,K),X=m(void 0);K1(()=>{if(Y(X))T9.observe(Y(X));return()=>{Y(X)&&T9.unobserve(Y(X))}});var W=vX(),w=C(W);{var H=(T)=>{var y=NX();V(T,y)},B=(T)=>{var y=d(),N=h(y);{var E=(R)=>{var k=kX();n1(k,($)=>D(X,$),()=>Y(X)),g(()=>_(k,"src",Q.author.avatar)),V(R,k)},b=(R)=>{var k=bX();V(R,k)};j(N,(R)=>{if(Q.author.avatar)R(E);else R(b,!1)},!0)}V(T,y)};j(w,(T)=>{if(Q.muted)T(H);else T(B,!1)})}var F=S(w),q=S(F);{var G=(T)=>{var y=TX(),N=h(y),E=C(N);x(N),J1(2),g(()=>{_(N,"href",Q.linkToAuthor),l(E,`@${Q.authorFediHandle??""}`)}),V(T,y)},U=(T)=>{var y=EX(),N=C(y,!0);x(y),g(()=>{_(y,"href",Q.linkToAuthor),l(N,Q.hasValidHandle?`@${Q.author.handle}`:"[invalid handle]")}),V(T,y)};j(q,(T)=>{if(Q.isFediPost)T(G);else T(U,!1)})}var M=S(q,4),I=C(M,!0);x(M);var O=S(M,2);{var A=(T)=>{var y=yX(),N=S(h(y),2);{var E=(R)=>{Sz(R,{get post(){return Q},title:"Load thread"})},b=(R)=>{Sz(R,{get post(){return Q},title:"Load this subtree"})};j(N,(R)=>{if(["quote","quotes","feed"].includes(K))R(E);else R(b,!1)})}V(T,y)};j(O,(T)=>{if(Q.replyCount>0&&!Q.isPageRoot||["quote","quotes","feed"].includes(K))T(A)})}x(W),g((T)=>{l(F,` ${Q.authorDisplayName??""} `),_(M,"href",Q.linkToPost),_(M,"title",T),l(I,Z.formattedTimestamp)},[()=>Q.createdAt.toISOString()]),V(z,W),s()}var gX=P('<a class="svelte-3d455ypfy1g8s"> </a>'),hX=P('<p class="tags"></p>');function YJ(z,J){c(J,!1);let{post:Q}=n0();D9();var K=hX();A0(K,5,()=>Q.tags,x1,(Z,X)=>{var W=gX(),w=C(W);x(W),g((H)=>{_(W,"href",H),l(w,`# ${Y(X)??""}`)},[()=>Oz(Y(X))]),V(Z,W)}),x(K),V(z,K),s()}var fX=P('<span class="svelte-1tsy42z5eauyq"><i class="fa-solid fa-retweet svelte-1tsy42z5eauyq"></i> </span>'),mX=P('<span class="svelte-1tsy42z5eauyq"><i class="fa-regular fa-message svelte-1tsy42z5eauyq"></i> <a class="svelte-1tsy42z5eauyq"> </a></span>'),$X=P('<span class="svelte-1tsy42z5eauyq"><i class="fa-regular fa-comments svelte-1tsy42z5eauyq"></i> <a class="svelte-1tsy42z5eauyq"> </a></span>'),uX=P('<a class="svelte-1tsy42z5eauyq"><i class="fa-regular fa-comments svelte-1tsy42z5eauyq"></i> </a>'),lX=P('<span class="svelte-1tsy42z5eauyq"><i class="fa-solid fa-ban svelte-1tsy42z5eauyq"></i> Limited replies</span>'),pX=P('<span class="svelte-1tsy42z5eauyq"><i class="fa-solid fa-ban svelte-1tsy42z5eauyq" title="Limited replies"></i></span>'),dX=P('<span class="blocked-info svelte-1tsy42z5eauyq">\uD83D\uDEAB Post unavailable</span>'),iX=P('<p class="stats svelte-1tsy42z5eauyq"><span class="svelte-1tsy42z5eauyq"><i></i> <output> </output></span> <!> <!> <!> <!> <!></p>');function wJ(z,J){c(J,!0);let{post:Q,placement:K}=n0(),Z=m(C0(Q.liked)),X=m(C0(Q.likeCount)),W=m(!1);async function w(){try{if(Q.hasViewerInfo)await B();else if(W1.loggedIn)await H();else Pz({showClose:!0})}catch($){B6($)}}async function H(){if(await M0.loadPostViewerInfo(Q))if(Q.liked)D(Z,!0);else await B();else D(W,!0)}async function B(){if(!Y(Z)){let $=await M0.likePost(Q);Q.viewerLike=$.uri,D(Z,!0),D(X,Y(X)+1)}else await M0.removeLike(Q.viewerLike),Q.viewerLike=void 0,D(Z,!1),D(X,Y(X)-1)}var F=iX(),q=C(F),G=C(q);G.__click=w;var U=S(G,2),M=C(U,!0);x(U),x(q);var I=S(q,2);{var O=($)=>{var v=fX(),u=S(C(v));x(v),g(()=>l(u,` ${Q.repostCount??""}`)),V($,v)};j(I,($)=>{if(Q.repostCount>0)$(O)})}var A=S(I,2);{var T=($)=>{var v=mX(),u=S(C(v),2),n=C(u,!0);x(u),x(v),g((o,i)=>{_(u,"href",o),l(n,i)},[()=>y5(Q),()=>t8(Q.replyCount,"reply","replies")]),V($,v)};j(A,($)=>{if(Q.replyCount>0&&(K=="quotes"||K=="feed"))$(T)})}var y=S(A,2);{var N=($)=>{var v=d(),u=h(v);{var n=(i)=>{var X0=$X(),Q0=S(C(X0),2),q0=C(Q0,!0);x(Q0),x(X0),g((a,e)=>{_(Q0,"href",a),l(q0,e)},[()=>_9(Q.linkToPost),()=>t8(J.quoteCount,"quote")]),V(i,X0)},o=(i)=>{var X0=uX(),Q0=S(C(X0));x(X0),g((q0)=>{_(X0,"href",q0),l(Q0,` ${J.quoteCount??""}`)},[()=>_9(Q.linkToPost)]),V(i,X0)};j(u,(i)=>{if(K=="quotes"||K=="feed"||Q.isPageRoot)i(n);else i(o,!1)})}V($,v)};j(y,($)=>{if(J.quoteCount&&K!="quote")$(N)})}var E=S(y,2);{var b=($)=>{var v=d(),u=h(v);{var n=(i)=>{var X0=lX();V(i,X0)},o=(i)=>{var X0=d(),Q0=h(X0);{var q0=(a)=>{var e=pX();V(a,e)};j(Q0,(a)=>{if(K=="quotes")a(q0)},!0)}V(i,X0)};j(u,(i)=>{if(K=="thread")i(n);else i(o,!1)})}V($,v)};j(E,($)=>{if(Q.isRestrictingReplies)$(b)})}var R=S(E,2);{var k=($)=>{var v=dX();V($,v)};j(R,($)=>{if(Y(W))$(k)})}x(F),g(()=>{Z1(G,1,`fa-solid fa-heart ${Y(Z)?"liked":""}`,"svelte-1tsy42z5eauyq"),l(M,Y(X))}),V(z,F),s()}I0(["click"]);var _X=P('<details class="image-alt svelte-3o2regxzbqbr0"><summary class="svelte-3o2regxzbqbr0">Show alt</summary> </details>'),cX=P("<p>[<a>Image</a>]</p> <!>",1),sX=P("<div></div>");function GJ(z,J){c(J,!0);let{post:Q}=n0();function K(X){if(X.fullsize)return X.fullsize;else{let W=X.image.ref.$link;return`https://cdn.bsky.app/img/feed_fullsize/plain/${Q.author.did}/${W}@jpeg`}}var Z=sX();A0(Z,21,()=>J.embed.images,x1,(X,W)=>{var w=cX(),H=h(w),B=S(C(H));J1(),x(H);var F=S(H,2);{var q=(G)=>{var U=_X(),M=S(C(U));x(U),g(()=>l(M,` ${Y(W).alt??""}`)),V(G,U)};j(F,(G)=>{if(Y(W).alt)G(q)})}g((G)=>_(B,"href",G),[()=>K(Y(W))]),V(X,w)}),x(Z),V(z,Z),s()}var oX=P('<div class="gif svelte-2dx58m87um1nk"><img/></div>');function BJ(z,J){let Q=m(!1),K=m(!1),Z=m(500),X=m(200);function W(q){let G=q.target;if(G.naturalWidth<G.naturalHeight)D(Z,200),D(X,400);D(Q,!0)}function w(){D(K,!Y(K))}var H=oX(),B=C(H);B.__click=w;let F;x(H),g(()=>{_(B,"src",Y(K)?J.staticURL:J.gifURL),Z1(B,1,T6(Y(K)?"static":""),"svelte-2dx58m87um1nk"),_(B,"alt",J.alt?`Gif: ${J.alt}`:"Gif animation"),F=c5(B,"",F,{opacity:Y(Q)?1:0,"max-width":`${Y(Z)??""}px`,"max-height":`${Y(X)??""}px`})}),C1("load",B,W),Xz(B),V(z,H)}I0(["click"]);var aX=P('<p class="description"> </p>'),rX=P('<a class="link-card" target="_blank"><div><p class="domain"> </p> <h2> </h2> <!></div></a>'),nX=P("<p> </p>");function HJ(z,J){c(J,!0);let{post:Q}=n0(),K=m(!1),Z=x0(()=>new URL(J.embed.url).hostname),X=x0(()=>Y(Z)=="media.tenor.com"),W=x0(()=>Y(X)?w:void 0);function w(U){U.preventDefault(),D(K,!0)}function H(){if(typeof J.embed.thumb=="string")return J.embed.thumb;else return`https://cdn.bsky.app/img/avatar/feed_thumbnail/${Q.author.did}/${J.embed.thumb.ref.$link}@jpeg`}var B=d(),F=h(B);{var q=(U)=>{{let M=x0(H);BJ(U,{get gifURL(){return J.embed.url},get staticURL(){return Y(M)},get alt(){return J.embed.title}})}},G=(U)=>{var M=d(),I=h(M);{var O=(T)=>{var y=rX();y.__click=function(...u){Y(W)?.apply(this,u)};var N=C(y),E=C(N),b=C(E,!0);x(E);var R=S(E,2),k=C(R,!0);x(R);var $=S(R,2);{var v=(u)=>{var n=aX(),o=C(n,!0);x(n),g((i)=>l(o,i),[()=>t4(J.embed.description,300)]),V(u,n)};j($,(u)=>{if(J.embed.description)u(v)})}x(N),x(y),g(()=>{_(y,"href",J.embed.url),l(b,Y(Z)),l(k,J.embed.title||J.embed.url)}),V(T,y)},A=(T)=>{var y=nX(),N=C(y);x(y),g(()=>l(N,`[Link: ${J.embed.url??""}]`)),V(T,y)};j(I,(T)=>{if(Uz(J.embed.url))T(O);else T(A,!1)})}V(U,M)};j(F,(U)=>{if(Y(K))U(q);else U(G,!1)})}V(z,B),s()}I0(["click"]);var tX=P('<img class="avatar" alt="Avatar"/>'),eX=P('<p class="description"> </p>'),zW=P('<a class="link-card record" target="_blank"><div><!> <h2> <span class="handle"> </span></h2> <!> <p class="stats"><i class="fa-solid fa-heart"></i> <output> </output></p></div></a>');function UJ(z,J){c(J,!0);function Q(O){let{repo:A,rkey:T}=f0(O.uri);return`https://bsky.app/profile/${A}/feed/${T}`}var K=zW(),Z=C(K),X=C(Z);{var W=(O)=>{var A=tX();g(()=>_(A,"src",J.feed.avatar)),V(O,A)};j(X,(O)=>{if(J.feed.avatar)O(W)})}var w=S(X,2),H=C(w),B=S(H),F=C(B);x(B),x(w);var q=S(w,2);{var G=(O)=>{var A=eX(),T=C(A,!0);x(A),g(()=>l(T,J.feed.description)),V(O,A)};j(q,(O)=>{if(J.feed.description)O(G)})}var U=S(q,2),M=S(C(U),2),I=C(M,!0);x(M),x(U),x(Z),x(K),g((O)=>{_(K,"href",O),l(H,`${J.feed.title??""} `),l(F,`• Feed by @${J.feed.author.handle??""}`),l(I,J.feed.likeCount)},[()=>Q(J.feed)]),V(z,K),s()}var JW=P('<p class="description"> </p>'),QW=P('<a class="link-card record" target="_blank"><div><h2> <span class="handle"> </span></h2> <!></div></a>');function VJ(z,J){c(J,!0);function Q(q){let{repo:G,rkey:U}=f0(q.uri);return`https://bsky.app/starter-pack/${G}/${U}`}var K=QW(),Z=C(K),X=C(Z),W=C(X),w=S(W),H=C(w);x(w),x(X);var B=S(X,2);{var F=(q)=>{var G=JW(),U=C(G,!0);x(G),g(()=>l(U,J.starterPack.description)),V(q,G)};j(B,(q)=>{if(J.starterPack.description)q(F)})}x(Z),x(K),g((q)=>{_(K,"href",q),l(W,`${J.starterPack.title??""} `),l(H,`• Starter pack by @${J.starterPack.author.handle??""}`)},[()=>Q(J.starterPack)]),V(z,K),s()}var KW=P('<img class="avatar" alt="Avatar"/>'),ZW=P('<p class="description"> </p>'),XW=P('<a class="link-card record" target="_blank"><div><!> <h2> <span class="handle"> </span></h2> <!></div></a>');function qJ(z,J){c(J,!0);function Q(M){let{repo:I,rkey:O}=f0(M.uri);return`https://bsky.app/profile/${I}/lists/${O}`}function K(M){switch(M.purpose){case"app.bsky.graph.defs#curatelist":return"User list";case"app.bsky.graph.defs#modlist":return"Mute list";default:return"List"}}var Z=XW(),X=C(Z),W=C(X);{var w=(M)=>{var I=KW();g(()=>_(I,"src",J.list.avatar)),V(M,I)};j(W,(M)=>{if(J.list.avatar)M(w)})}var H=S(W,2),B=C(H),F=S(B),q=C(F);x(F),x(H);var G=S(H,2);{var U=(M)=>{var I=ZW(),O=C(I,!0);x(I),g(()=>l(O,J.list.description)),V(M,I)};j(G,(M)=>{if(J.list.description)M(U)})}x(X),x(Z),g((M,I)=>{_(Z,"href",M),l(B,`${J.list.title??""} `),l(q,`${I??""} by @${J.list.author.handle??""}`)},[()=>Q(J.list),()=>K(J.list)]),V(z,Z),s()}var qK=(z,J=t1)=>{var Q=d(),K=h(Q);{var Z=(W)=>{var w=WW(),H=C(w);f6(H,{get post(){return J()},placement:"quote"}),x(w),V(W,w)},X=(W)=>{var w=d(),H=h(w);{var B=(q)=>{UJ(q,{get feed(){return J()}})},F=(q)=>{var G=d(),U=h(G);{var M=(O)=>{VJ(O,{get starterPack(){return J()}})},I=(O)=>{var A=d(),T=h(A);{var y=(E)=>{qJ(E,{get list(){return J()}})},N=(E)=>{var b=YW(),R=C(b),k=C(R);x(R),x(b),g(()=>l(k,`[${J().type??""}]`)),V(E,b)};j(T,(E)=>{if(J()instanceof ez)E(y);else E(N,!1)},!0)}V(O,A)};j(U,(O)=>{if(J()instanceof z8)O(M);else O(I,!1)},!0)}V(q,G)};j(H,(q)=>{if(J()instanceof tz)q(B);else q(F,!1)},!0)}V(W,w)};j(K,(W)=>{if(J()instanceof v6)W(Z);else W(X,!1)})}V(z,Q)},WW=P('<div class="quote-embed svelte-767shvs6ixvg"><!></div>'),YW=P('<div class="quote-embed svelte-767shvs6ixvg"><p> </p></div>'),wW=P('<div class="quote-embed svelte-767shvs6ixvg"><p class="post placeholder svelte-767shvs6ixvg">Error loading quoted post</p></div>'),GW=P('<div class="quote-embed svelte-767shvs6ixvg"><p class="post placeholder svelte-767shvs6ixvg">Loading quoted post...</p></div>');function G7(z,J){c(J,!0);let{post:Q}=n0();async function K(){let{collection:H}=f0(J.record.uri);if(H=="app.bsky.feed.post"){let B=await N0.loadPostIfExists(J.record.uri);if(B)return new S0(B);else return new C5(Q.data)}else{let F=(await N0.loadPostIfExists(Q.uri).then((q)=>q&&new S0(q)))?.embed;if(F instanceof qz||F instanceof Fz)return F.record;else return new C5(J.record)}}var Z=d(),X=h(Z);{var W=(H)=>{var B=d(),F=h(B);k6(F,K,(q)=>{var G=GW();V(q,G)},(q,G)=>{qK(q,()=>Y(G))},(q)=>{var G=wW();V(q,G)}),V(H,B)},w=(H)=>{qK(H,()=>J.record)};j(X,(H)=>{if(J.record.constructor===d1&&!J.record.type)H(W);else H(w,!1)})}V(z,Z),s()}var BW=P('<details class="image-alt"><summary>Show alt</summary> </details>'),HW=P("<div><p>[<a>Video</a>]</p> <!></div>");function FJ(z,J){c(J,!0);let{post:Q}=n0();function K(B){if(B instanceof xz)return B.playlistURL;else{let F=B.video.ref.$link;return`https://video.bsky.app/watch/${Q.author.did}/${F}/playlist.m3u8`}}var Z=HW(),X=C(Z),W=S(C(X));J1(),x(X);var w=S(X,2);{var H=(B)=>{var F=BW(),q=S(C(F));x(F),g(()=>l(q,` ${J.embed.alt??""}`)),V(B,F)};j(w,(B)=>{if(J.embed.alt)B(H)})}x(Z),g((B)=>_(W,"href",B),[()=>K(J.embed)]),V(z,Z),s()}var UW=P("<div><!> <!></div>"),VW=P("<p> </p>"),qW=P('<div class="embed svelte-1k40bdrlabc6f"><!></div>');function m6(z,J){c(J,!0);var Q=qW(),K=C(Q);{var Z=(W)=>{G7(W,{get record(){return J.embed.record}})},X=(W)=>{var w=d(),H=h(w);{var B=(q)=>{var G=UW(),U=C(G);m6(U,{get embed(){return J.embed.media}});var M=S(U,2);G7(M,{get record(){return J.embed.record}}),x(G),V(q,G)},F=(q)=>{var G=d(),U=h(G);{var M=(O)=>{GJ(O,{get embed(){return J.embed}})},I=(O)=>{var A=d(),T=h(A);{var y=(E)=>{HJ(E,{get embed(){return J.embed}})},N=(E)=>{var b=d(),R=h(b);{var k=(v)=>{FJ(v,{get embed(){return J.embed}})},$=(v)=>{var u=VW(),n=C(u);x(u),g(()=>l(n,`[${J.embed.type??""}]`)),V(v,u)};j(R,(v)=>{if(J.embed instanceof J7||J.embed instanceof xz)v(k);else v($,!1)},!0)}V(E,b)};j(T,(E)=>{if(J.embed instanceof z7||J.embed instanceof Mz)E(y);else E(N,!1)},!0)}V(O,A)};j(U,(O)=>{if(J.embed instanceof e8||J.embed instanceof Z7)O(M);else O(I,!1)},!0)}V(q,G)};j(H,(q)=>{if(J.embed instanceof K7||J.embed instanceof Fz)q(B);else q(F,!1)},!0)}V(W,w)};j(K,(W)=>{if(J.embed instanceof Q7||J.embed instanceof qz)W(Z);else W(X,!1)})}x(Q),V(z,Q),s()}var FW=P("<a> </a>"),MW=P("<a>See parent post</a>"),xW=P("<a>See parent post</a>"),CW=P('<p class="back"><i class="fa-solid fa-reply"></i> <!></p>');function X8(z,J){c(J,!0);let Q=x0(()=>f0(J.uri)),K=x0(()=>Y(Q).repo),Z=x0(()=>Y(Q).rkey);var X=CW(),W=S(C(X),2);k6(W,()=>N0.fetchHandleForDid(Y(K)),(w)=>{var H=xW();g((B)=>_(H,"href",B),[()=>W5(Y(K),Y(Z))]),V(w,H)},(w,H)=>{var B=FW(),F=C(B);x(B),g((q)=>{_(B,"href",q),l(F,`See parent post (@${Y(H)??""})`)},[()=>W5(Y(H),Y(Z))]),V(w,B)},(w)=>{var H=MW();g((B)=>_(H,"href",B),[()=>W5(Y(K),Y(Z))]),V(w,H)}),x(X),V(z,X),s()}var OW=P("<!> <!> <!>",1);function MJ(z,J){c(J,!0),xJ({post:J.post,placement:J.placement});var Q=OW(),K=h(Q);{var Z=(H)=>{X8(H,{get uri(){return J.post.parentReference.uri}})};j(K,(H)=>{if(J.post.isPageRoot&&J.post.parentReference)H(Z)})}var X=S(K,2);Z8(X,{});var W=S(X,2);{var w=(H)=>{m6(H,{get embed(){return J.post.embed}})};j(W,(H)=>{if(J.post.embed)H(w)})}V(z,Q),s()}var PW=P('(<a target="_blank"> </a> ',1),LW=P('(<a target="_blank"> </a>)',1);function jz(z,J){c(J,!0);let Q=j0(J,"status",3,void 0),K=m(void 0),Z=x0(()=>Y(K)?`@${Y(K)}`:"see author");K1(()=>{let B=f0(J.post.uri).repo;N0.fetchHandleForDid(B).then((F)=>{D(K,F,!0)})});var X=d(),W=h(X);{var w=(B)=>{var F=PW(),q=S(h(F)),G=C(q,!0);x(q);var U=S(q);g(()=>{_(q,"href",J.post.didLinkToAuthor),l(G,Y(Z)),l(U,`, ${Q()??""})`)}),V(B,F)},H=(B)=>{var F=LW(),q=S(h(F)),G=C(q,!0);x(q),J1(),g(()=>{_(q,"href",J.post.didLinkToAuthor),l(G,Y(Z))}),V(B,F)};j(W,(B)=>{if(Q())B(w);else B(H,!1)})}V(z,X),s()}var IW=P('<p class="blocked-header"><i class="fa-solid fa-ban"></i> <span>Deleted post</span> <!></p>');function W8(z,J){var Q=IW(),K=S(C(Q),4);jz(K,{get post(){return J.post}}),x(Q),V(z,Q)}var SW=P('<a href="#">Load post…</a>'),jW=P('<p class="load-post"><!></p>'),DW=P('<p class="blocked-header"><i class="fa-solid fa-ban"></i> <span> </span> <!></p> <!>',1),RW=P('<span class="separator">&bull;</span> <!>',1),AW=P('<p class="blocked-header"><i class="fa-solid fa-ban"></i> <span> </span> <!> <!></p> <!>',1);function Dz(z,J){c(J,!0);let Q=x0(()=>T0.biohazardsEnabled!==!1),K=m(!1),Z=m(!1),X=m(void 0);async function W(U){U.preventDefault(),D(K,!0);let M=await N0.reloadBlockedPost(J.post.uri);if(M)D(X,M,!0);else D(Z,!0)}function w(U){let M=U.author.viewer;if(M)return!(M.blockedBy||M.blocking);else return!0}function H(){if(J.post instanceof Cz)return;else if(J.post.blockedByUser)return"has blocked you";else if(J.post.blocksUser)return"you've blocked them";else return}var B=d(),F=h(B);{var q=(U)=>{var M=DW(),I=h(M),O=S(C(I),2),A=C(O,!0);x(O);var T=S(O,2);{var y=(b)=>{{let R=x0(H);jz(b,{get post(){return J.post},get status(){return Y(R)}})}};j(T,(b)=>{if(Y(Q))b(y)})}x(I);var N=S(I,2);{var E=(b)=>{var R=jW(),k=C(R);{var $=(u)=>{var n=SW();n.__click=W,V(u,n)},v=(u)=>{var n=A1(" ");V(u,n)};j(k,(u)=>{if(!Y(K))u($);else u(v,!1)})}x(R),V(b,R)};j(N,(b)=>{if(Y(Q))b(E)})}g(()=>l(A,J.reason)),V(U,M)},G=(U)=>{var M=d(),I=h(M);{var O=(T)=>{var y=AW(),N=h(y),E=S(C(N),2),b=C(E,!0);x(E);var R=S(E,2);{let u=x0(H);jz(R,{get post(){return J.post},get status(){return Y(u)}})}var k=S(R,2);{var $=(u)=>{var n=RW(),o=S(h(n),2);Sz(o,{get post(){return Y(X)},title:"Load thread"}),V(u,n)};j(k,(u)=>{if(w(Y(X)))u($)})}x(N);var v=S(N,2);MJ(v,{get post(){return Y(X)},get placement(){return J.placement}}),g(()=>l(b,J.reason)),V(T,y)},A=(T)=>{{let y=x0(()=>new C5(J.post.data));W8(T,{get post(){return Y(y)}})}};j(I,(T)=>{if(Y(X))T(O);else T(A,!1)},!0)}V(U,M)};j(F,(U)=>{if(!Y(Z)&&!Y(X))U(q);else U(G,!1)})}V(z,B),s()}I0(["click"]);var NW=P("<div><!></div>");function f6(z,J){var Q=d(),K=h(Q);{var Z=(W)=>{P1(W,{get post(){return J.post},get placement(){return J.placement}})},X=(W)=>{var w=NW(),H=C(w);{var B=(q)=>{Dz(q,{get post(){return J.post},get placement(){return J.placement},reason:"Blocked post"})},F=(q)=>{var G=d(),U=h(G);{var M=(O)=>{Dz(O,{get post(){return J.post},get placement(){return J.placement},reason:"Hidden quote"})},I=(O)=>{W8(O,{get post(){return J.post}})};j(U,(O)=>{if(J.post instanceof Cz)O(M);else O(I,!1)},!0)}V(q,G)};j(H,(q)=>{if(J.post instanceof E5)q(B);else q(F,!1)})}x(w),g(()=>Z1(w,1,`post post-${J.placement??""} blocked`,"svelte-15n9djnirzicp")),V(W,w)};j(K,(W)=>{if(J.post instanceof S0)W(Z);else W(X,!1)})}V(z,Q)}var[n0,xJ]=v7(),kW=P("<!> <!> <!> <!> <!>",1),bW=P('<details class="svelte-2k39y5eft77zk"><summary class="svelte-2k39y5eft77zk"> </summary> <!></details>'),TW=P('<p class="missing-replies-info svelte-2k39y5eft77zk"><i class="fa-solid fa-ban"></i> <!> (likely taken down by moderation)</p>'),EW=P('<div><!> <!> <div class="content svelte-2k39y5eft77zk"><!> <!> <!> <!></div></div>');function P1(z,J){c(J,!0);let Q=(a)=>{var e=kW(),P0=h(e);Z8(P0,{get highlightedMatches(){return Z()}});var V0=S(P0,2);{var k0=(G0)=>{YJ(G0,{})};j(V0,(G0)=>{if(K().tags)G0(k0)})}var w0=S(V0,2);{var z0=(G0)=>{m6(G0,{get embed(){return K().embed}})};j(w0,(G0)=>{if(K().embed&&U(K().embed))G0(z0)})}var t=S(w0,2);{var B0=(G0)=>{zJ(G0,{get url(){return K().originalFediURL}})};j(t,(G0)=>{if(K().originalFediURL&&Uz(K().originalFediURL))G0(B0)})}var D0=S(t,2);{var H0=(G0)=>{wJ(G0,{get quoteCount(){return Y(F)}})};j(D0,(G0)=>{if(K().likeCount!==void 0||K().repostCount!==void 0)G0(H0)})}V(a,e)},K=j0(J,"post",7),Z=j0(J,"highlightedMatches",3,void 0),X=s5(J,["$$slots","$$events","$$legacy","post","placement","highlightedMatches"]),W=m(!1),w=m(C0(K().replies)),H=m(!1),B=m(void 0);xJ({post:K(),placement:J.placement});let F=m(C0(K().quoteCount));function q(a){D(F,a,!0)}function G(a){if(a instanceof S0)return!0;else if(a instanceof E5)return T0.biohazardsEnabled!==!1;else return!1}function U(a){if(K().originalFediURL){if(a instanceof Mz&&a.title?.startsWith("Original post on "))return!1}return!0}function M(a){K().updateDataFromPost(a),D(w,K().replies,!0)}function I(a){let e=a.filter((P0)=>P0!==null);if(Y(w).push(...e),K().replies=Y(w),e.length===a.length&&e.length>0)D(B,void 0);else D(B,a.length-e.length);D(H,!0)}function O(a){B6(a)}var A={setQuoteCount:q},T=EW();let y;var N=C(T);WJ(N,{});var E=S(N,2);{var b=(a)=>{e9(a,{get collapsed(){return Y(W)},set collapsed(e){D(W,e,!0)}})};j(E,(a)=>{if(J.placement=="thread"&&!K().isPageRoot)a(b)})}var R=S(E,2),k=C(R);{var $=(a)=>{var e=bW(),P0=C(e),V0=C(P0,!0);x(P0);var k0=S(P0,2);Q(k0),x(e),g(()=>l(V0,K().muteList?`Muted (${K().muteList})`:"Muted - click to show")),V(a,e)},v=(a)=>{Q(a)};j(k,(a)=>{if(K().muted)a($);else a(v,!1)})}var u=S(k,2);{var n=(a)=>{P1(a,{get post(){return Y(w)[0]},placement:"thread",class:"flat"})},o=(a)=>{var e=d(),P0=h(e);A0(P0,17,()=>Y(w),(V0)=>V0.uri,(V0,k0)=>{var w0=d(),z0=h(w0);{var t=(B0)=>{f6(B0,{get post(){return Y(k0)},placement:"thread"})};j(z0,(B0)=>{if(G(Y(k0)))B0(t)})}V(V0,w0)}),V(a,e)};j(u,(a)=>{if(K().replyCount==1&&Y(w)[0]instanceof S0&&Y(w)[0].author.did==K().author.did)a(n);else a(o,!1)})}var i=S(u,2);{var X0=(a)=>{var e=d(),P0=h(e);U9(P0,()=>Y(w),(V0)=>{var k0=d(),w0=h(k0);{var z0=(B0)=>{QJ(B0,{onLoad:M,onError:O})},t=(B0)=>{var D0=d(),H0=h(D0);{var G0=(t0)=>{JJ(t0,{onLoad:I,onError:O})};j(H0,(t0)=>{if(K().hasHiddenReplies&&T0.biohazardsEnabled!==!1)t0(G0)},!0)}V(B0,D0)};j(w0,(B0)=>{if(K().hasMoreReplies)B0(z0);else B0(t,!1)})}V(V0,k0)}),V(a,e)};j(i,(a)=>{if(J.placement=="thread"&&!Y(H))a(X0)})}var Q0=S(i,2);{var q0=(a)=>{var e=TW(),P0=S(C(e),2);{var V0=(w0)=>{var z0=A1();g(()=>l(z0,`${Y(B)??""} replies are missing`)),V(w0,z0)},k0=(w0)=>{var z0=d(),t=h(z0);{var B0=(H0)=>{var G0=A1("1 reply is missing");V(H0,G0)},D0=(H0)=>{var G0=A1("Some replies are missing");V(H0,G0)};j(t,(H0)=>{if(Y(B)==1)H0(B0);else H0(D0,!1)},!0)}V(w0,z0)};j(P0,(w0)=>{if(Y(B)>1)w0(V0);else w0(k0,!1)})}J1(),x(e),V(a,e)};j(Q0,(a)=>{if(Y(B)!==void 0)a(q0)})}return x(R),x(T),g(()=>y=Z1(T,1,`post post-${J.placement??""} ${(J.class||"")??""}`,"svelte-2k39y5eft77zk",y,{muted:K().muted,collapsed:Y(W)})),V(z,T),s(A)}var yW=P('<main class="hashtag svelte-2cy8gir839nsk"><header><h2><!></h2></header> <!></main>');function CJ(z,J){c(J,!0);let Q=j0(J,"hashtag",7);Q(Q().replace(/^\#/,""));let K=C0([]),Z=m(!1),X=m(!1),W=!1,w=!1,H;V6(async()=>{if(W||w)return;W=!0;try{let U=await N0.getHashtagFeed(Q(),H),M=U.posts.map((I)=>new S0(I));if(D(Z,!0),K.push(...M),W=!1,H=U.cursor,!H||K.length==0)w=!0}catch(U){console.log(U),W=!1,D(X,!0)}});var B=d();b6("xlrj1v",(U)=>{uz(()=>{W6.title=`#${Q()??""} - Skythread`})});var F=h(B);{var q=(U)=>{var M=yW(),I=C(M),O=C(I),A=C(O);{var T=(E)=>{var b=A1();g(()=>l(b,`Posts tagged: #${Q()??""}`)),V(E,b)},y=(E)=>{var b=A1();g(()=>l(b,`No posts tagged #${Q()??""}.`)),V(E,b)};j(A,(E)=>{if(K.length>0)E(T);else E(y,!1)})}x(O),x(I);var N=S(I,2);A0(N,17,()=>K,(E)=>E.uri,(E,b)=>{P1(E,{get post(){return Y(b)},placement:"feed"})}),x(M),V(U,M)},G=(U)=>{var M=d(),I=h(M);{var O=(A)=>{a5(A,{})};j(I,(A)=>{if(!Y(X))A(O)},!0)}V(U,M)};j(F,(U)=>{if(Y(Z))U(q);else U(G,!1)})}V(z,B),s()}var vW=P('<div id="search" class="svelte-20y046s055ja6"><form method="get" class="svelte-20y046s055ja6">\uD83C\uDF24 <input type="text" placeholder="Paste a thread link or type a #hashtag" class="svelte-20y046s055ja6"/></form></div>');function B7(z,J){c(J,!0);let Q=m(""),K;K1(()=>{K.focus()});function Z(H){H.preventDefault();let B=Y(Q).trim();if(!B)return;if(B.startsWith("at://")){let F=new URL(g6());F.searchParams.set("q",B),location.assign(F.toString())}else if(B.match(/^#?((\p{Letter}|\p{Number})+)$/u)){let F=B.replace(/^#/,"");location.assign(Oz(F))}else try{let{user:F,post:q}=J8(B);location.assign(W5(F,q))}catch(F){console.log(F),alert(F.message||"This is not a valid URL or hashtag")}}var X=vW(),W=C(X),w=S(C(W));m0(w),n1(w,(H)=>K=H,()=>K),x(W),x(X),C1("submit",W,Z),O1(w,()=>Y(Q),(H)=>D(Q,H)),V(z,X),s()}var gW=P('<tr><td class="no svelte-3rl6pbqxjh5is"></td><td class="handle svelte-3rl6pbqxjh5is"><img class="avatar svelte-3rl6pbqxjh5is" alt="Avatar"/> <a target="_blank"> </a></td><td class="count svelte-3rl6pbqxjh5is"> </td></tr>'),hW=P('<table style="display: table;"><thead><tr><th colspan="3" class="svelte-3rl6pbqxjh5is"> </th></tr></thead><tbody></tbody></table>');function H7(z,J){var Q=hW(),K=C(Q),Z=C(K),X=C(Z),W=C(X,!0);x(X),x(Z),x(K);var w=S(K);A0(w,21,()=>J.users,x1,(H,B,F)=>{var q=gW(),G=C(q);G.textContent=F+1;var U=S(G),M=C(U),I=S(M,2),O=C(I,!0);x(I),x(U);var A=S(U),T=C(A,!0);x(A),x(q),g(()=>{_(M,"src",Y(B).avatar),_(I,"href",`https://bsky.app/profile/${Y(B).handle??""}`),l(O,Y(B).handle),l(T,Y(B).count)}),V(H,q)}),x(w),x(Q),g(()=>{Z1(Q,1,`scan-result ${J.cssClass??""}`,"svelte-3rl6pbqxjh5is"),l(W,J.header)}),V(z,Q)}class OJ{scanStartTime;appView;progressPosts;progressLikeRecords;progressPostLikes;onProgress;abortController;constructor(){this.appView=new i1("public.api.bsky.app"),this.progressPosts=0,this.progressLikeRecords=0,this.progressPostLikes=0}async findLikes(z,J){this.onProgress=J,this.resetProgress(),this.scanStartTime=new Date().getTime(),this.abortController=new AbortController;let Q=this.fetchGivenLikes(z),K=await this.fetchReceivedLikes(z),Z=this.sumUpReceivedLikes(K),X=this.getTopEntries(Z),W=await Q,w=this.sumUpGivenLikes(W),H=this.getTopEntries(w),B=await this.appView.getRequest("app.bsky.actor.getProfiles",{actors:H.map((F)=>F.did)},{abortSignal:this.abortController.signal});for(let F of B.profiles){let q=H.find((G)=>G.did==F.did);q.handle=F.handle,q.avatar=F.avatar}return this.scanStartTime=void 0,{givenLikes:H,receivedLikes:X}}async fetchGivenLikes(z){let J=this.scanStartTime;return await M0.fetchAll("com.atproto.repo.listRecords",{params:{repo:M0.user.did,collection:"app.bsky.feed.like",limit:100},field:"records",breakWhen:(Q)=>Date.parse(Q.value.createdAt)<J-86400*z*1000,onPageLoad:(Q)=>{let K=Q.at(-1);if(!K)return;let Z=Date.parse(K.value.createdAt),X=(J-Z)/86400/1000;this.updateProgress({likeRecords:Math.min(1,X/z)})},abortSignal:this.abortController.signal})}async fetchReceivedLikes(z){let J=this.scanStartTime,K=(await this.appView.loadUserTimeline(M0.user.did,z,{filter:"posts_with_replies",onPageLoad:(X)=>{let W=X.at(-1);if(!W)return;let w=p1(W),H=(J-w)/86400/1000;this.updateProgress({posts:Math.min(1,H/z)})},abortSignal:this.abortController.signal})).filter((X)=>!X.reason&&X.post.likeCount>0),Z=[];for(let X=0;X<K.length;X+=10){let W=K.slice(X,X+10);this.updateProgress({postLikes:X/K.length});let w=W.map((B)=>{return this.appView.fetchAll("app.bsky.feed.getLikes",{params:{uri:B.post.uri,limit:100},field:"likes",abortSignal:this.abortController.signal})}),H=await Promise.all(w);Z=Z.concat(H)}return this.updateProgress({postLikes:1}),Z.flat()}sumUpReceivedLikes(z){let J={};for(let Q of z){let K=Q.actor.handle;if(!J[K])J[K]={handle:K,count:0,avatar:Q.actor.avatar};J[K].count+=1}return J}sumUpGivenLikes(z){let J={};for(let Q of z){let K=f0(Q.value.subject.uri).repo;if(!J[K])J[K]={did:K,count:0};J[K].count+=1}return J}getTopEntries(z){return Object.entries(z).sort(this.sortResults).map((J)=>J[1]).slice(0,25)}resetProgress(){this.progressPosts=0,this.progressLikeRecords=0,this.progressPostLikes=0,this.onProgress?.(0)}updateProgress(z){if(z.posts)this.progressPosts=z.posts;if(z.likeRecords)this.progressLikeRecords=z.likeRecords;if(z.postLikes)this.progressPostLikes=z.postLikes;let J=0.1*this.progressPosts+0.65*this.progressLikeRecords+0.25*this.progressPostLikes;this.onProgress?.(J)}sortResults(z,J){if(z[1].count<J[1].count)return 1;else if(z[1].count>J[1].count)return-1;else return 0}abortScan(){this.scanStartTime=void 0,this.onProgress=void 0,this.abortController?.abort(),delete this.abortController}}var fW=P('<progress style="display: inline;" class="svelte-2hvcjaqoddeji"></progress>'),mW=P("<!> <!>",1),$W=P('<main><h2>Like statistics</h2> <form><p>Time range: <input id="like_stats_range" type="range" min="1" max="60" class="svelte-2hvcjaqoddeji"/> <label for="like_stats_range"> </label></p> <p><input type="submit" class="svelte-2hvcjaqoddeji"/> <!></p></form> <!></main>');function PJ(z,J){c(J,!0);let Q=m(7),K=m(void 0),Z=x0(()=>Y(K)!==void 0),X=m(void 0),W=m(void 0),w=new OJ;async function H(E){E.preventDefault();try{if(!Y(Z)){D(X,void 0),D(W,void 0);let b=await w.findLikes(Y(Q),(R)=>{D(K,R,!0)});D(X,b.givenLikes,!0),D(W,b.receivedLikes,!0),D(K,void 0)}else w.abortScan(),D(K,void 0)}catch(b){if(b.name!=="AbortError")throw b}}var B=$W(),F=S(C(B),2),q=C(F),G=S(C(q));m0(G);var U=S(G,2),M=C(U,!0);x(U),x(q);var I=S(q,2),O=C(I);m0(O);var A=S(O,2);{var T=(E)=>{var b=fW();g(()=>Z5(b,Y(K))),V(E,b)};j(A,(E)=>{if(Y(Z))E(T)})}x(I),x(F);var y=S(F,2);{var N=(E)=>{var b=mW(),R=h(b);H7(R,{cssClass:"given-likes",header:"❤️ Likes from you:",get users(){return Y(X)}});var k=S(R,2);H7(k,{cssClass:"received-likes",header:"\uD83D\uDC9B Likes on your posts:",get users(){return Y(W)}}),V(E,b)};j(y,(E)=>{if(Y(X)&&Y(W))E(N)})}x(B),g((E)=>{l(M,E),Z5(O,Y(Z)?"Cancel":"Start scan")},[()=>E6(Y(Q))]),C1("submit",F,H),O1(G,()=>Y(Q),(E)=>D(Q,E)),V(z,B),s()}var uW="did:web:lycan.feeds.blue#lycan";class Y8{lycanAddress;constructor(z){this.lycanAddress=z??uW}get proxyHeaders(){return{"atproto-proxy":this.lycanAddress}}async getImportStatus(){return await M0.getRequest("blue.feeds.lycan.getImportStatus",null,{headers:this.proxyHeaders})}async startImport(){await M0.postRequest("blue.feeds.lycan.startImport",null,{headers:this.proxyHeaders})}async makeQuery(z,J,Q){let K={collection:z,query:J};if(Q)K.cursor=Q;return await M0.getRequest("blue.feeds.lycan.searchPosts",K,{headers:this.proxyHeaders})}searchPosts(z,J,Q){let K=!1,Z=!1,X;V6(async()=>{if(K||Z)return;K=!0;let W=await this.makeQuery(z,J,X),H=(await M0.loadPosts(W.posts)).map((B)=>new S0(B));if(K=!1,Q.onPostsLoaded({posts:H,terms:W.terms}),X=W.cursor,!X)Z=!0,Q.onFinish?.()})}}class U7 extends Y8{localLycan;constructor(z){super();this.localLycan=new i1(z)}async getImportStatus(){return await this.localLycan.getRequest("blue.feeds.lycan.getImportStatus",{user:M0.user.did})}async startImport(){await this.localLycan.postRequest("blue.feeds.lycan.startImport",{user:M0.user.did})}async makeQuery(z,J,Q){let K={collection:z,query:J,user:M0.user.did};if(Q)K.cursor=Q;return await this.localLycan.getRequest("blue.feeds.lycan.searchPosts",K)}}var lW=P('<main class="search-page svelte-geig8bptdwj6"><!></main>');function w8(z,J){var Q=lW(),K=C(Q);Y6(K,()=>J.children),x(Q),V(z,Q)}var pW=P('<input type="radio" name="collection"/> <label class="svelte-1xaglya9rfxfs"> </label>',1),dW=P(`<form class="svelte-1xaglya9rfxfs"><h4>Data not imported yet</h4> <p class="svelte-1xaglya9rfxfs">In order to search within your likes and bookmarks, the posts you've liked or saved need to be imported into a database. 51 This is a one-time process, but it can take several minutes or more, depending on the age of your account.</p> <p class="svelte-1xaglya9rfxfs">To start the import, press the button below. You can then wait until it finishes, or close this tab and come back a bit later. 52 After the import is complete, the database will be kept up to date automatically going forward.</p> <p class="svelte-1xaglya9rfxfs"><input type="submit" value="Start import"/></p></form>`),iW=P('<p><progress class="svelte-1xaglya9rfxfs"></progress> <output class="svelte-1xaglya9rfxfs"> </output></p>'),_W=P('<div class="import-progress svelte-1xaglya9rfxfs"><h4>Import in progress</h4> <p class="import-status"> </p> <!></div>'),cW=P('<div class="lycan-import svelte-1xaglya9rfxfs"><!></div>'),sW=P("<p>...</p>"),oW=P('<p class="results-end"> </p>'),aW=P("<!> <!>",1),rW=P('<h2>Archive search</h2> <form class="search-form"><p class="search">Search: <input type="text" class="search-query" autocomplete="off"/></p> <div class="search-collections svelte-1xaglya9rfxfs"></div></form> <!> <div class="results"><!></div>',1);function LJ(z,J){c(J,!0);let Q=[],K=[{id:"likes",title:"Likes"},{id:"reposts",title:"Reposts"},{id:"quotes",title:"Quotes"},{id:"pins",title:"Pins"}],Z=x0(()=>A(J.lycan)),X=m(!1),W=m(void 0),w=m(void 0),H=m(0),B=m(!1),F,q=m(C0(K[0].id)),G=m(""),U=m(!1),M=m(!1),I=m(C0([])),O=m(C0([]));N();function A(v){if(!v)return new Y8;else if(v=="local"||v=="localhost")return new U7("http://localhost:3000");else if(v.startsWith("local:")||v.startsWith("localhost:")){let u=v.split(":")[1];return new U7(`http://localhost:${u}`)}else return new Y8(`did:web:${J.lycan}#lycan`)}function T(v){v.preventDefault(),E({status:"requested"}),D(B,!0),Y(Z).startImport().catch((u)=>{console.error("Failed to start Lycan import",u),R(`Import failed: ${u}`)})}function y(v){if(v.key=="Enter"){v.preventDefault();let u=Y(G).trim().toLowerCase();if(u.length==0||Y(W)!="finished")return;D(I,[],!0),D(B,!1),D(U,!0),D(M,!1),Y(Z).searchPosts(Y(q),u,{onPostsLoaded:({posts:n,terms:o})=>{D(U,!1),Y(I).push(...n),D(O,o,!0)},onFinish:()=>{D(M,!0)}})}}async function N(){if(Y(X))return;D(X,!0);try{let v=await Y(Z).getImportStatus();E(v)}catch(v){R(`Couldn't check import status: ${v}`)}finally{D(X,!1)}}function E(v){if(console.log(v),!v.status){R("Error checking import status");return}D(W,v.status,!0);let u=["in_progress","scheduled","requested"].includes(v.status);if(D(B,Y(B)||u,!0),v.status=="not_started");else if(u)b(v);else if(v.status=="finished")b({status:"finished",progress:1});else R("Error checking import status");u?k():$()}function b(v){if(D(H,Math.max(0,Math.min(v.progress||0,1)),!0),v.progress==1)D(w,"Import complete ✓");else if(v.position){let u=new Date(v.position).toLocaleString(T0.dateLocale,{day:"numeric",month:"short",year:"numeric"});D(w,`Downloaded data until: ${u}`)}else if(v.status=="requested")D(w,"Requesting import…");else D(w,"Import started…")}function R(v){D(W,"error"),D(B,!0),D(w,v,!0),$()}function k(){if(!F)F=setInterval(N,3000)}function $(){if(F)clearInterval(F),F=void 0}w8(z,{children:(v,u)=>{var n=rW(),o=S(h(n),2),i=C(o),X0=S(C(i));m0(X0),X0.__keydown=y,x(i);var Q0=S(i,2);A0(Q0,21,()=>K,x1,(w0,z0)=>{var t=pW(),B0=h(t);m0(B0);var D0,H0=S(B0,2),G0=C(H0,!0);x(H0),g(()=>{if(_(B0,"id",`collection-${Y(z0).id??""}`),D0!==(D0=Y(z0).id))B0.value=(B0.__value=Y(z0).id)??"";_(H0,"for",`collection-${Y(z0).id??""}`),l(G0,Y(z0).title)}),_z(Q,[],B0,()=>{return Y(z0).id,Y(q)},(t0)=>D(q,t0)),V(w0,t)}),x(Q0),x(o);var q0=S(o,2);{var a=(w0)=>{var z0=cW(),t=C(z0);{var B0=(H0)=>{var G0=dW();C1("submit",G0,T),V(H0,G0)},D0=(H0)=>{var G0=_W(),t0=S(C(G0),2),v5=C(t0,!0);x(t0);var B8=S(t0,2);{var r5=(n5)=>{var Y5=iW(),$6=C(Y5),u6=S($6,2),t5=C(u6);x(u6),x(Y5),g((l6)=>{Z5($6,Y(H)),l(t5,`${l6??""}%`)},[()=>Math.round(Y(H)*100)]),V(n5,Y5)};j(B8,(n5)=>{if(Y(W)!="error")n5(r5)})}x(G0),g(()=>l(v5,Y(w))),V(H0,G0)};j(t,(H0)=>{if(Y(W)=="not_started")H0(B0);else H0(D0,!1)})}x(z0),V(w0,z0)};j(q0,(w0)=>{if(Y(B)||Y(W)=="not_started")w0(a)})}var e=S(q0,2),P0=C(e);{var V0=(w0)=>{var z0=sW();V(w0,z0)},k0=(w0)=>{var z0=aW(),t=h(z0);A0(t,17,()=>Y(I),(H0)=>H0.uri,(H0,G0)=>{P1(H0,{get post(){return Y(G0)},placement:"feed",get highlightedMatches(){return Y(O)}})});var B0=S(t,2);{var D0=(H0)=>{var G0=oW(),t0=C(G0,!0);x(G0),g(()=>l(t0,Y(I).length>0?"No more results.":"No results.")),V(H0,G0)};j(B0,(H0)=>{if(Y(M))H0(D0)})}V(w0,z0)};j(P0,(w0)=>{if(Y(U))w0(V0);else w0(k0,!1)})}x(e),g(()=>X0.disabled=Y(W)!="finished"),O1(X0,()=>Y(G),(w0)=>D(G,w0)),V(v,n)},$$slots:{default:!0}}),s()}I0(["keydown"]);var nW=P("<a>Reply to you</a>"),tW=P("<a> </a>"),eW=P("<a> </a>"),z3=P("<a>Reply</a>"),J3=P('<p class="back"><i class="fa-solid fa-reply"></i> <!></p>');function G8(z,J){c(J,!0);let Q=x0(()=>f0(J.uri)),K=x0(()=>Y(Q).repo),Z=x0(()=>Y(Q).rkey);var X=J3(),W=S(C(X),2);{var w=(B)=>{var F=nW();g((q)=>_(F,"href",q),[()=>W5(Y(K),Y(Z))]),V(B,F)},H=(B)=>{var F=d(),q=h(F);k6(q,()=>N0.fetchHandleForDid(Y(K)),(G)=>{var U=z3();g((M)=>_(U,"href",M),[()=>W5(Y(K),Y(Z))]),V(G,U)},(G,U)=>{var M=tW(),I=C(M);x(M),g((O)=>{_(M,"href",O),l(I,`Reply to @${Y(U)??""}`)},[()=>W5(Y(U),Y(Z))]),V(G,M)},(G)=>{var U=eW(),M=C(U);x(U),g((I)=>{_(U,"href",I),l(M,`Reply to ${Y(K)??""}`)},[()=>W5(Y(K),Y(Z))]),V(G,U)}),V(B,F)};j(W,(B)=>{if(M0&&Y(K)==M0.user.did)B(w);else B(H,!1)})}x(X),V(z,X),s()}var Q3=P("<!> <!>",1),K3=P('<main class="notifications svelte-3q0ai2k4d1d8n"><header><h2>Replies & Mentions:</h2></header> <!></main>');function IJ(z,J){c(J,!0);let Q=C0([]),K=m(!1),Z=m(!1),X=!1,W=!1,w;V6(async(G)=>{if(X||W)return;X=!0;try{let U=await M0.loadMentions(w),M=U.posts.map((I)=>new S0(I));if(!Y(K)&&M.length>0)D(K,!0);if(Q.push(...M),X=!1,w=U.cursor,!w)W=!0;else if(M.length==0)G()}catch(U){console.log(U),X=!1,D(Z,!0)}});var H=d();b6("387i67",(G)=>{H1(()=>{W6.title="Notifications - Skythread"})});var B=h(H);{var F=(G)=>{var U=K3(),M=S(C(U),2);A0(M,17,()=>Q,(I)=>I.uri,(I,O)=>{var A=Q3(),T=h(A);{var y=(E)=>{G8(E,{get uri(){return Y(O).parentReference.uri}})};j(T,(E)=>{if(Y(O).parentReference)E(y)})}var N=S(T,2);P1(N,{get post(){return Y(O)},placement:"feed"}),V(I,A)}),x(U),V(G,U)},q=(G)=>{var U=d(),M=h(U);{var I=(O)=>{a5(O,{})};j(M,(O)=>{if(!Y(Z))O(I)},!0)}V(G,U)};j(B,(G)=>{if(Y(K))G(F);else G(q,!1)})}V(z,H),s()}var FK=(z,J=t1)=>{var Q=Z3(),K=h(Q),Z=S(K,2),X=C(Z,!0);x(Z);var W=S(Z,2),w=C(W,!0);x(W),g(()=>{_(K,"src",J().avatar),l(X,J().displayName||"–"),l(w,J().handle)}),V(z,Q)},Z3=P('<img class="avatar svelte-2z5j67wda5rm6" alt="Avatar"/> <span class="name svelte-2z5j67wda5rm6"> </span> <span class="handle svelte-2z5j67wda5rm6"> </span>',1),X3=P("<div><!></div>"),W3=P('<div class="autocomplete svelte-2z5j67wda5rm6"></div>'),Y3=P('<div class="user-row svelte-2z5j67wda5rm6"><!> <a class="remove svelte-2z5j67wda5rm6" href="#">✕</a></div>'),w3=P('<div class="user-choice svelte-2z5j67wda5rm6"><input type="text" placeholder="Add user" autocomplete="off" class="svelte-2z5j67wda5rm6"/> <!> <div class="selected-users svelte-2z5j67wda5rm6"></div></div>');function SJ(z,J){c(J,!0);let Q=j0(J,"selectedUsers",27,()=>C0([])),K=m(""),Z=m(C0([])),X=m(-1),W=x0(()=>Q().map((R)=>R.did)),w=x0(()=>Y(Z).length>0),H=m(0),B;K1(()=>{let R=document.body.parentNode;return R.addEventListener("click",U),()=>{R.removeEventListener("click",U)}});function F(){if(B)clearTimeout(B);let R=Y(K).trim();if(R.length>0)B=setTimeout(()=>G(R),100);else U(),B=void 0}function q(R){if(R.key=="Enter"){if(R.preventDefault(),Y(X)>=0)O(Y(X))}else if(R.key=="Escape")U();else if(R.key=="ArrowDown"&&Y(Z).length>0)R.preventDefault(),M(1);else if(R.key=="ArrowUp"&&Y(Z).length>0)R.preventDefault(),M(-1)}async function G(R){let k=await N0.autocompleteUsers(R),$=new Set(Y(W));if(k=k.filter((v)=>!$.has(v.did)),k.length>0)D(Z,k,!0),D(X,0);else U()}function U(){D(Z,[],!0),D(X,-1)}function M(R){if(Y(Z).length==0)return;let k=Y(X)+R;if(k<0)k=Y(Z).length-1;else if(k>=Y(Z).length)k=0;D(X,k,!0)}function I(R,k){R.preventDefault(),O(k)}function O(R){let k=Y(Z)[R];if(!k)return;Q().push(k),D(K,""),U()}function A(R,k){R.preventDefault(),Q().splice(k,1)}var T=w3(),y=C(T);m0(y),N6(y,!0),y.__input=F,y.__keydown=q;var N=S(y,2);{var E=(R)=>{var k=W3();let $;A0(k,23,()=>Y(Z),(v)=>v.did,(v,u,n)=>{var o=X3();let i;o.__mousedown=(Q0)=>{I(Q0,Y(n))};var X0=C(o);FK(X0,()=>Y(u)),x(o),g(()=>i=Z1(o,1,"user-row svelte-2z5j67wda5rm6",null,i,{highlighted:Y(X)==Y(n)})),C1("mouseenter",o,()=>{D(X,Y(n),!0)}),V(v,o)}),x(k),g(()=>$=c5(k,"",$,{display:Y(w)?"block":"none",top:`${Y(H)??""}px`})),V(R,k)};j(N,(R)=>{if(Y(w))R(E)})}var b=S(N,2);A0(b,23,Q,(R)=>R.did,(R,k,$)=>{var v=Y3(),u=C(v);FK(u,()=>Y(k));var n=S(u,2);n.__click=(o)=>{A(o,Y($))},x(v),V(R,v)}),x(b),x(T),O1(y,()=>Y(K),(R)=>D(K,R)),j9(y,"offsetHeight",(R)=>D(H,R)),V(z,T),s()}I0(["input","keydown","mousedown","click"]);var G3=P('<th class="svelte-3u8wzgp5meuu">All posts /d</th> <th class="svelte-3u8wzgp5meuu">Own posts /d</th> <th class="svelte-3u8wzgp5meuu">Reposts /d</th>',1),B3=P('<th class="svelte-3u8wzgp5meuu">Posts /d</th>'),H3=P('<th class="svelte-3u8wzgp5meuu">% of timeline</th>'),U3=P('<td class="svelte-3u8wzgp5meuu"> </td>'),V3=P('<td class="svelte-3u8wzgp5meuu"> </td>'),q3=P('<td class="percent svelte-3u8wzgp5meuu"></td>'),F3=P('<tr class="total svelte-3u8wzgp5meuu"><td class="no svelte-3u8wzgp5meuu"></td><td class="handle svelte-3u8wzgp5meuu">Total:</td><!><td class="svelte-3u8wzgp5meuu"> </td><!><!></tr>'),M3=P('<td class="svelte-3u8wzgp5meuu"> </td>'),x3=P('<td class="svelte-3u8wzgp5meuu"> </td>'),C3=P('<td class="percent svelte-3u8wzgp5meuu"> </td>'),O3=P('<tr><td class="no svelte-3u8wzgp5meuu"></td><td class="handle svelte-3u8wzgp5meuu"><img class="avatar svelte-3u8wzgp5meuu" alt="Avatar"/> <a target="_blank"> </a></td><!><td class="svelte-3u8wzgp5meuu"> </td><!><!></tr>'),P3=P('<table class="scan-result svelte-3u8wzgp5meuu"><thead><tr><th class="svelte-3u8wzgp5meuu">#</th><th class="svelte-3u8wzgp5meuu">Handle</th><!><!></tr></thead><tbody><!><!></tbody></table>');function jJ(z,J){c(J,!0);let Q=j0(J,"showReposts",3,!0),K=j0(J,"showPercentages",3,!0),Z=j0(J,"showTotal",3,!0);function X(T){return T>0?T.toFixed(1):"–"}var W=P3(),w=C(W),H=C(w),B=S(C(H),2);{var F=(T)=>{var y=G3();J1(4),V(T,y)},q=(T)=>{var y=B3();V(T,y)};j(B,(T)=>{if(Q())T(F);else T(q,!1)})}var G=S(B);{var U=(T)=>{var y=H3();V(T,y)};j(G,(T)=>{if(K())T(U)})}x(H),x(w);var M=S(w),I=C(M);{var O=(T)=>{var y=F3(),N=S(C(y),2);{var E=(n)=>{var o=U3(),i=C(o,!0);x(o),g((X0)=>l(i,X0),[()=>X(J.sums.all/J.daysBack)]),V(n,o)};j(N,(n)=>{if(Q())n(E)})}var b=S(N),R=C(b,!0);x(b);var k=S(b);{var $=(n)=>{var o=V3(),i=C(o,!0);x(o),g((X0)=>l(i,X0),[()=>X(J.sums.reposts/J.daysBack)]),V(n,o)};j(k,(n)=>{if(Q())n($)})}var v=S(k);{var u=(n)=>{var o=q3();V(n,o)};j(v,(n)=>{if(K())n(u)})}x(y),g((n)=>l(R,n),[()=>X(J.sums.own/J.daysBack)]),V(T,y)};j(I,(T)=>{if(Z())T(O)})}var A=S(I);A0(A,17,()=>J.users,x1,(T,y,N)=>{var E=O3(),b=C(E);b.textContent=N+1;var R=S(b),k=C(R),$=S(k,2),v=C($,!0);x($),x(R);var u=S(R);{var n=(e)=>{var P0=M3(),V0=C(P0,!0);x(P0),g((k0)=>l(V0,k0),[()=>X(Y(y).all/J.daysBack)]),V(e,P0)};j(u,(e)=>{if(Q())e(n)})}var o=S(u),i=C(o,!0);x(o);var X0=S(o);{var Q0=(e)=>{var P0=x3(),V0=C(P0,!0);x(P0),g((k0)=>l(V0,k0),[()=>X(Y(y).reposts/J.daysBack)]),V(e,P0)};j(X0,(e)=>{if(Q())e(Q0)})}var q0=S(X0);{var a=(e)=>{var P0=C3(),V0=C(P0);x(P0),g((k0)=>l(V0,`${k0??""}%`),[()=>X(Y(y).all*100/J.sums.all)]),V(e,P0)};j(q0,(e)=>{if(K())e(a)})}x(E),g((e)=>{_(k,"src",Y(y).avatar),_($,"href",`https://bsky.app/profile/${Y(y).handle??""}`),l(v,Y(y).handle),l(i,e)},[()=>X(Y(y).own/J.daysBack)]),V(T,E)}),x(M),x(W),V(z,W),s()}class DJ{appView;userProgress;onProgress;abortController;constructor(z){this.onProgress=z,this.appView=new i1("public.api.bsky.app"),this.userProgress={}}async scanHomeTimeline(z){let J=new Date().getTime();this.abortController=new AbortController;let Q=await M0.loadHomeTimeline(z,{onPageLoad:(K)=>this.updateProgress(K,J),abortSignal:this.abortController.signal,keepLastPage:!0});return this.generateResults(Q,z,J)}async scanListTimeline(z,J){let Q=new Date().getTime();this.abortController=new AbortController;let K=await M0.loadListTimeline(z,J,{onPageLoad:(Z)=>this.updateProgress(Z,Q),abortSignal:this.abortController.signal,keepLastPage:!0});return this.generateResults(K,J,Q)}async scanUserTimelines(z,J){let Q=new Date().getTime(),K=z.map((H)=>H.did);this.resetUserProgress(K),this.abortController=new AbortController;let Z=this.abortController.signal,X=K.map((H)=>this.appView.loadUserTimeline(H,J,{filter:"posts_and_author_threads",onPageLoad:(B)=>this.updateUserProgress(H,B,Q,J),abortSignal:Z,keepLastPage:!0})),w=(await Promise.all(X)).flat();return this.generateResults(w,J,Q,{countFetchedDays:!1,users:z})}async scanYourTimeline(z){let J=new Date().getTime();this.abortController=new AbortController;let Q=await M0.loadUserTimeline(M0.user.did,z,{filter:"posts_no_replies",onPageLoad:(K)=>this.updateProgress(K,J),abortSignal:this.abortController.signal,keepLastPage:!0});return this.generateResults(Q,z,J)}generateResults(z,J,Q,K={}){let Z=z.at(-1);if(!Z)return null;let X={},W=p1(Z),w=(Q-W)/86400/1000,H;if(K.countFetchedDays!==!1)H=Math.min(J,w);else H=J;let B=Q-J*86400*1000;if(z=z.filter((U)=>p1(U)>B),z.reverse(),K.users)for(let U of K.users)X[U.handle]={handle:U.handle,own:0,reposts:0,avatar:U.avatar};let F=new Set,q={own:0,reposts:0,all:0};for(let U of z){if(U.reply){if(!F.has(U.reply.parent.uri))continue}let M=U.reason?U.reason.by:U.post.author,I=M.handle;if(X[I]=X[I]??{handle:I,own:0,reposts:0,avatar:M.avatar},U.reason)X[I].reposts+=1,q.reposts+=1;else X[I].own+=1,q.own+=1,F.add(U.post.uri)}let G=Object.values(X);return G.forEach((U)=>{U.all=U.own+U.reposts}),G.sort((U,M)=>M.all-U.all),q.all=q.own+q.reposts,{users:G,sums:q,fetchedDays:w,daysBack:H}}updateProgress(z,J){let Q=z.at(-1);if(!Q)return;let K=p1(Q),Z=(J-K)/86400/1000;this.onProgress?.(Z)}resetUserProgress(z){this.userProgress={};for(let J of z)this.userProgress[J]={pages:0,progress:0}}updateUserProgress(z,J,Q,K){let Z=J.at(-1);if(!Z)return;let X=p1(Z),W=(Q-X)/86400/1000;this.userProgress[z].pages+=1,this.userProgress[z].progress=Math.min(W/K,1);let w=Object.values(this.userProgress).map((G)=>G.pages/G.progress),H=w.filter((G)=>!isNaN(G)),B=H.reduce((G,U)=>G+U)/H.length*w.length,q=Object.values(this.userProgress).map((G)=>G.pages).reduce((G,U)=>G+U)/B*K;this.onProgress?.(q)}abortScan(){this.abortController?.abort(),delete this.abortController}}var L3=P('<input type="radio" name="scan_type" class="svelte-936eaahz55lf"/> <label class="svelte-936eaahz55lf"> </label>',1),I3=P("<option> </option>"),S3=P('<p class="list-choice"><label for="posting_stats_list">Select list:</label> <select id="posting_stats_list" name="scan_list" class="svelte-936eaahz55lf"></select></p>'),j3=P('<progress class="svelte-936eaahz55lf"></progress>'),D3=P('<p class="scan-info svelte-936eaahz55lf"> </p>'),R3=P('<main><h2>Bluesky posting statistics</h2> <form><p>Scan posts from: <!></p> <p>Time range: <input id="posting_stats_range" type="range" min="1" max="60" class="svelte-936eaahz55lf"/> <label for="posting_stats_range"> </label></p> <!> <!> <p><input type="submit" class="svelte-936eaahz55lf"/> <!></p></form> <!> <!></main>');function RJ(z,J){c(J,!0);let Q=[],K=[{id:"home",title:"Home timeline"},{id:"list",title:"List feed"},{id:"users",title:"Selected users"},{id:"you",title:"Your profile"}],Z=m(C0([])),X=m(7),W=m(C0(K[0].id)),w=m(C0([])),H=m(void 0),B=m(!1),F=m(void 0),q=m(void 0),G=m(void 0),U=m(C0({})),M=m(null),I=new DJ((z0)=>{D(q,Math.max(Y(q)||0,z0),!0)});K1(()=>{A()});function O(){D(M,null)}async function A(){let z0=await M0.loadUserLists();D(Z,z0.sort((t,B0)=>{let D0=t.name.toLocaleLowerCase(),H0=B0.name.toLocaleLowerCase();return D0.localeCompare(H0)}),!0),D(H,Y(Z)[0]?.uri,!0)}async function T(z0){z0.preventDefault();try{if(!Y(B))await y();else D(B,!1),I.abortScan()}catch(t){if(t.name!=="AbortError")throw t}}async function y(){if(Y(W)=="list"&&!Y(H)||Y(W)=="users"&&Y(w).length==0)return;D(G,void 0),D(M,null),D(F,Y(X),!0),D(q,0),D(B,!0);let z0=new Date().getTime(),t,B0;if(Y(W)=="home")B0={},t=await I.scanHomeTimeline(Y(F));else if(Y(W)=="list")B0={showReposts:!1},t=await I.scanListTimeline(Y(H),Y(F));else if(Y(W)=="users")B0={showTotal:!1,showPercentages:!1},t=await I.scanUserTimelines(Y(w),Y(F));else B0={showTotal:!1,showPercentages:!1},t=await I.scanYourTimeline(Y(F));if(new Date().getTime()-z0<150)await new Promise((H0)=>setTimeout(H0,150));D(U,B0,!0),D(M,t,!0),D(B,!1)}var N=R3(),E=S(C(N),2),b=C(E),R=S(C(b));A0(R,17,()=>K,x1,(z0,t)=>{var B0=L3(),D0=h(B0);m0(D0),D0.__click=O;var H0,G0=S(D0,2),t0=C(G0,!0);x(G0),g(()=>{if(_(D0,"id",`scan_type_${Y(t).id??""}`),H0!==(H0=Y(t).id))D0.value=(D0.__value=Y(t).id)??"";_(G0,"for",`scan_type_${Y(t).id??""}`),l(t0,Y(t).title)}),_z(Q,[],D0,()=>{return Y(t).id,Y(W)},(v5)=>D(W,v5)),V(z0,B0)}),x(b);var k=S(b,2),$=S(C(k));m0($);var v=S($,2),u=C(v,!0);x(v),x(k);var n=S(k,2);{var o=(z0)=>{var t=S3(),B0=S(C(t),2);A0(B0,21,()=>Y(Z),x1,(D0,H0)=>{var G0=I3(),t0=C(G0);x(G0);var v5={};g(()=>{if(l(t0,`${Y(H0).name??""} `),v5!==(v5=Y(H0).uri))G0.value=(G0.__value=Y(H0).uri)??""}),V(D0,G0)}),x(B0),x(t),x9(B0,()=>Y(H),(D0)=>D(H,D0)),V(z0,t)};j(n,(z0)=>{if(Y(W)=="list")z0(o)})}var i=S(n,2);{var X0=(z0)=>{SJ(z0,{get selectedUsers(){return Y(w)},set selectedUsers(t){D(w,t,!0)}})};j(i,(z0)=>{if(Y(W)=="users")z0(X0)})}var Q0=S(i,2),q0=C(Q0);m0(q0);var a=S(q0,2);{var e=(z0)=>{var t=j3();g(()=>{_(t,"max",Y(F)),Z5(t,Y(q))}),V(z0,t)};j(a,(z0)=>{if(Y(B))z0(e)})}x(Q0),x(E);var P0=S(E,2);{var V0=(z0)=>{var t=D3(),B0=C(t,!0);x(t),g(()=>l(B0,Y(G))),V(z0,t)};j(P0,(z0)=>{if(Y(G))z0(V0)})}var k0=S(P0,2);{var w0=(z0)=>{jJ(z0,A9(()=>Y(U),()=>Y(M)))};j(k0,(z0)=>{if(Y(M))z0(w0)})}x(N),g((z0)=>{l(u,z0),Z5(q0,!Y(B)?"Start scan":"Cancel")},[()=>E6(Y(X))]),C1("submit",E,T),O1($,()=>Y(X),(z0)=>D(X,z0)),V(z,N),s()}I0(["click"]);var A3=P("<!> <!>",1),N3=P('<main class="quotes svelte-3bl0i96onoebm"><header><h2><!></h2></header> <!></main>');function AJ(z,J){c(J,!0);let Q=!1,K,Z=!1,X=C0([]),W=m(void 0),w=m(!1);V6(async()=>{if(Q||Z)return;Q=!0;try{let G=await Q8.getQuotes(J.postURL,K),M=(await N0.loadPosts(G.posts)).map((I)=>new S0(I));if(Y(W)===void 0)D(W,G.quoteCount,!0);if(X.push(...M),Q=!1,K=G.cursor,!K||X.length==0)Z=!0}catch(G){console.log(G),Q=!1,D(w,!0),B6(G)}});var H=d(),B=h(H);{var F=(G)=>{var U=N3(),M=C(U),I=C(M),O=C(I);{var A=(N)=>{var E=A1();g(()=>l(E,`${Y(W)??""} quotes:`)),V(N,E)},T=(N)=>{var E=d(),b=h(E);{var R=($)=>{var v=A1("1 quote:");V($,v)},k=($)=>{var v=A1("No quotes found.");V($,v)};j(b,($)=>{if(Y(W)==1)$(R);else $(k,!1)},!0)}V(N,E)};j(O,(N)=>{if(Y(W)>1)N(A);else N(T,!1)})}x(I),x(M);var y=S(M,2);A0(y,17,()=>X,(N)=>N.uri,(N,E)=>{var b=A3(),R=h(b);{var k=(v)=>{G8(v,{get uri(){return Y(E).parentReference.uri}})};j(R,(v)=>{if(Y(E).parentReference)v(k)})}var $=S(R,2);P1($,{get post(){return Y(E)},placement:"quotes"}),V(N,b)}),x(U),V(G,U)},q=(G)=>{var U=d(),M=h(U);{var I=(O)=>{a5(O,{})};j(M,(O)=>{if(!Y(w))O(I)},!0)}V(G,U)};j(B,(G)=>{if(Y(W)!==void 0)G(F);else G(q,!1)})}V(z,H),s()}var k3=P('<div id="tangled" class="svelte-14j5zro1yllpd"><a href="https://tangled.org/mackuba.eu/skythread" target="_blank" class="svelte-14j5zro1yllpd"><img src="icons/tangled_dolly.svg" alt="Tangled" class="svelte-14j5zro1yllpd"/></a></div>');function NJ(z){var J=k3();V(z,J)}var b3=P('<p class="back"><i class="fa-solid fa-reply"></i> <a> </a></p>'),T3=P('<div class="back"><!></div>'),E3=P('<p class="back"><i class="fa-solid fa-ban"></i> parent post has been deleted</p>'),y3=P(`<p class="back"><i class="fa-solid fa-ban"></i> something went wrong, this shouldn't happen</p>`);function kJ(z,J){c(J,!0);var Q=d(),K=h(Q);{var Z=(W)=>{var w=b3(),H=S(C(w),2),B=C(H);x(H),x(w),g((F)=>{_(H,"href",F),l(B,`See parent post (@${J.post.author.handle??""})`)},[()=>y5(J.post)]),V(W,w)},X=(W)=>{var w=d(),H=h(w);{var B=(q)=>{var G=T3(),U=C(G);Dz(U,{get post(){return J.post},placement:"parent",reason:"Parent post blocked"}),x(G),V(q,G)},F=(q)=>{var G=d(),U=h(G);{var M=(O)=>{var A=E3();V(O,A)},I=(O)=>{var A=y3();V(O,A)};j(U,(O)=>{if(J.post instanceof C5)O(M);else O(I,!1)},!0)}V(q,G)};j(H,(q)=>{if(J.post instanceof E5)q(B);else q(F,!1)},!0)}V(W,w)};j(K,(W)=>{if(J.post instanceof S0)W(Z);else W(X,!1)})}V(z,Q),s()}var v3=P("<!> <!>",1),g3=P("<main><!></main>");function V7(z,J){c(J,!0);let Q=s5(J,["$$slots","$$events","$$legacy"]),K=m(void 0),Z=m(!1),X=m(void 0),W;if("url"in Q){let{url:q}=Q;if(q.startsWith("at://"))W=N0.loadThreadByAtURI(q);else W=N0.loadThreadByURL(q)}else{let{author:q,rkey:G}=Q;W=N0.loadThreadById(q,G)}W.then((q)=>{let G=H6(q.thread);if(window.root=G,window.subtreeRoot=G,D(K,G,!0),G instanceof S0)G.data.quoteCount=void 0,Q8.getQuoteCount(G.uri).then((U)=>{Y(X)?.setQuoteCount(U)}).catch((U)=>{console.warn("Couldn't load quote count: "+U)})}).catch((q)=>{B6(q),D(Z,!0)});var w=d();b6("64euhl",(q)=>{var G=d(),U=h(G);{var M=(I)=>{uz(()=>{W6.title=`${Y(K).author.displayName??""}: "${Y(K).text??""}" - Skythread`})};j(U,(I)=>{if(Y(K)instanceof S0)I(M)})}V(q,G)});var H=h(w);{var B=(q)=>{var G=g3(),U=C(G);{var M=(O)=>{var A=v3(),T=h(A);{var y=(b)=>{kJ(b,{get post(){return Y(K).parent}})},N=(b)=>{var R=d(),k=h(R);{var $=(v)=>{X8(v,{get uri(){return Y(K).parentReference.uri}})};j(k,(v)=>{if(Y(K).parentReference)v($)},!0)}V(b,R)};j(T,(b)=>{if(Y(K).parent)b(y);else b(N,!1)})}var E=S(T,2);n1(P1(E,{get post(){return Y(K)},placement:"thread"}),(b)=>D(X,b,!0),()=>Y(X)),V(O,A)},I=(O)=>{f6(O,{get post(){return Y(K)},placement:"thread"})};j(U,(O)=>{if(Y(K)instanceof S0)O(M);else O(I,!1)})}x(G),V(q,G)},F=(q)=>{var G=d(),U=h(G);{var M=(I)=>{a5(I,{})};j(U,(I)=>{if(!Y(Z))I(M)},!0)}V(q,G)};j(H,(q)=>{if(Y(K))q(B);else q(F,!1)})}V(z,w),s()}class bJ{timelinePosts;abortController;constructor(){this.timelinePosts=[]}async fetchTimeline(z,J){let Q=new Date().getTime();this.abortController=new AbortController;let K=await M0.loadHomeTimeline(z,{abortSignal:this.abortController.signal,onPageLoad:(Z)=>{let X=this.calculateProgress(Z,Q);if(X)J(X)}});this.timelinePosts=K}calculateProgress(z,J){let Q=z.at(-1);if(!Q)return null;let K=p1(Q);return(J-K)/86400/1000}searchPosts(z){if(z.length==0)return[];return this.timelinePosts.filter((Q)=>Q.post.record.text.toLowerCase().includes(z)).map((Q)=>JK(Q))}abortFetch(){this.abortController?.abort(),delete this.abortController}}var h3=P("<progress></progress>"),f3=P('<p class="archive-status"> </p>'),m3=P('<form class="search-form"><p class="search">Search: <input type="text" class="search-query" autocomplete="off"/></p></form> <div class="results"></div>',1),$3=P('<h2>Timeline search</h2> <div class="timeline-search"><form><p>Fetch timeline posts: <input id="timeline_search_range" type="range" min="1" max="60" class="svelte-27yj0b3y75jqg"/> <label for="timeline_search_range"> </label></p> <p><input type="submit"/> <!></p></form> <!> <hr/></div> <!>',1);function TJ(z,J){c(J,!0);let Q=m(7),K=m(void 0),Z=m(void 0),X=x0(()=>Y(Z)!==void 0),W=m(void 0),w=m(""),H=m(C0([])),B=new bJ;async function F(G){G.preventDefault();try{if(!Y(X))D(K,Y(Q),!0),D(Z,0),await B.fetchTimeline(Y(Q),(U)=>{D(Z,U,!0)}),D(W,Y(Z),!0),D(Z,void 0);else D(Z,void 0),B.abortFetch()}catch(U){if(U.name!=="AbortError")throw U}}function q(G){if(G.key=="Enter"){G.preventDefault();let U=Y(w).trim().toLowerCase();D(H,B.searchPosts(U),!0)}}w8(z,{children:(G,U)=>{var M=$3(),I=S(h(M),2),O=C(I),A=C(O),T=S(C(A));m0(T);var y=S(T,2),N=C(y,!0);x(y),x(A);var E=S(A,2),b=C(E);m0(b);var R=S(b,2);{var k=(o)=>{var i=h3();g(()=>{_(i,"max",Y(K)),Z5(i,Y(Z))}),V(o,i)};j(R,(o)=>{if(Y(X))o(k)})}x(E),x(O);var $=S(O,2);{var v=(o)=>{var i=f3(),X0=C(i);x(i),g((Q0)=>l(X0,`Timeline archive fetched: ${Q0??""}`),[()=>E6(Math.round(Y(W)))]),V(o,i)};j($,(o)=>{if(Y(W))o(v)})}J1(2),x(I);var u=S(I,2);{var n=(o)=>{var i=m3(),X0=h(i),Q0=C(X0),q0=S(C(Q0));m0(q0),q0.__keydown=q,x(Q0),x(X0);var a=S(X0,2);A0(a,21,()=>Y(H),(e)=>e.uri,(e,P0)=>{P1(e,{get post(){return Y(P0)},placement:"feed"})}),x(a),O1(q0,()=>Y(w),(e)=>D(w,e)),V(o,i)};j(u,(o)=>{if(Y(W))o(n)})}g((o)=>{l(N,o),Z5(b,Y(X)?"Cancel":"Fetch timeline")},[()=>E6(Y(Q))]),C1("submit",O,F),O1(T,()=>Y(Q),(o)=>D(Q,o)),V(G,M)},$$slots:{default:!0}}),s()}I0(["keydown"]);var u3=P("<!> <!> <!> <!>",1);function EJ(z,J){c(J,!0);let Q=(F)=>{var q=d(),G=h(q);{var U=(I)=>{IJ(I,{})},M=(I)=>{var O=d(),A=h(O);{var T=(N)=>{RJ(N,{})},y=(N)=>{var E=d(),b=h(E);{var R=($)=>{PJ($,{})},k=($)=>{var v=d(),u=h(v);{var n=(i)=>{var X0=d(),Q0=h(X0);{var q0=(e)=>{LJ(e,{get lycan(){return J.params.lycan}})},a=(e)=>{TJ(e,{})};j(Q0,(e)=>{if(J.params.mode=="likes")e(q0);else e(a,!1)})}V(i,X0)},o=(i)=>{B7(i,{})};j(u,(i)=>{if(J.params.page=="search")i(n);else i(o,!1)},!0)}V($,v)};j(b,($)=>{if(J.params.page=="like_stats")$(R);else $(k,!1)},!0)}V(N,E)};j(A,(N)=>{if(J.params.page=="posting_stats")N(T);else N(y,!1)},!0)}V(I,O)};j(G,(I)=>{if(J.params.page=="notif")I(U);else I(M,!1)})}V(F,q)};if(J.params.page&&!W1.loggedIn)Pz({showClose:!1});var K=u3(),Z=h(K);n9(Z,{});var X=S(Z,2);a9(X,{});var W=S(X,2);NJ(W,{});var w=S(W,2);{var H=(F)=>{V7(F,{get url(){return J.params.q}})},B=(F)=>{var q=d(),G=h(q);{var U=(I)=>{V7(I,{get author(){return J.params.author},get rkey(){return J.params.post}})},M=(I)=>{var O=d(),A=h(O);{var T=(N)=>{AJ(N,{get postURL(){return J.params.quotes}})},y=(N)=>{var E=d(),b=h(E);{var R=($)=>{CJ($,{get hashtag(){return J.params.hash}})},k=($)=>{var v=d(),u=h(v);{var n=(i)=>{var X0=d(),Q0=h(X0);{var q0=(a)=>{Q(a)};j(Q0,(a)=>{if(W1.loggedIn)a(q0)})}V(i,X0)},o=(i)=>{B7(i,{})};j(u,(i)=>{if(J.params.page)i(n);else i(o,!1)},!0)}V($,v)};j(b,($)=>{if(J.params.hash)$(R);else $(k,!1)},!0)}V(N,E)};j(A,(N)=>{if(J.params.quotes)N(T);else N(y,!1)},!0)}V(I,O)};j(G,(I)=>{if(J.params.author&&J.params.post)I(U);else I(M,!1)},!0)}V(F,q)};j(w,(F)=>{if(J.params.q)F(H);else F(B,!1)})}V(z,K),s()}function l3(){let z=ZK(location.search);wz(EJ,{target:document.body,props:{params:z}})}document.addEventListener("DOMContentLoaded",l3);})(); 53 54//# debugId=D1D02602A62A41DF64756E2164756E21 55//# sourceMappingURL=skythread.js.map