@pie-element/venn-classification 0.1.1-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,88 @@
1
+ /**
2
+ * 2-set Venn layout + hit-testing helpers.
3
+ *
4
+ * Geometry lives in SVG viewBox coordinates so the delivery component can
5
+ * render on any responsive size; the layout returns per-region descriptors
6
+ * (label, hitRect for the rectangular drop-zone highlight, `pointInRegion`
7
+ * for pointer hit-testing, and a `gridSlot` function for neatly placing
8
+ * multiple tiles in the same region).
9
+ *
10
+ * The diagram rectangle IS the universal set: circles live in the upper
11
+ * portion, and the "outside" region is everything inside the rect that
12
+ * doesn't fall inside a circle. Outside-region tiles land in the bottom
13
+ * strip (below the circles, still inside the rect) where there's room for
14
+ * a horizontal row of tiles — that strip is what `hitRect` for the outside
15
+ * region describes (used for the drop-highlight overlay and the 120×120
16
+ * a11y minimum from the PRD). `pointInRegion` for outside is the broader
17
+ * "inside rect, not in any circle" check, so the learner can drop anywhere
18
+ * around the circles naturally.
19
+ */
20
+ import type { Region, VennCircle, VennModel } from '../types.js';
21
+ import { enumerateRegions, getRegionLabel, regionKey } from '../controller/region.js';
22
+ export interface DiagramGeometry {
23
+ width: number;
24
+ height: number;
25
+ /** Vertical gap between the bottom of the circles and the outside landing strip. */
26
+ outsideGap: number;
27
+ /** Minimum height reserved below the circles for outside tiles. */
28
+ outsideStripHeight: number;
29
+ circles: Array<{
30
+ cx: number;
31
+ cy: number;
32
+ r: number;
33
+ }>;
34
+ }
35
+ export interface RegionLayout {
36
+ region: Region;
37
+ key: string;
38
+ label: string;
39
+ /** Rectangular drop-zone bounds in viewBox coords. Used for highlight + keyboard focus rect. */
40
+ hitRect: {
41
+ x: number;
42
+ y: number;
43
+ w: number;
44
+ h: number;
45
+ };
46
+ /** True iff `(x, y)` falls in this region, given the geometry. */
47
+ pointInRegion: (x: number, y: number) => boolean;
48
+ /** Return the (x, y) center where tile `index` should land within this region. */
49
+ gridSlot: (index: number, tileWidth: number, tileHeight: number) => {
50
+ x: number;
51
+ y: number;
52
+ };
53
+ }
54
+ export interface DiagramLayout {
55
+ geometry: DiagramGeometry;
56
+ regions: RegionLayout[];
57
+ regionByKey: Record<string, RegionLayout>;
58
+ /**
59
+ * Y-coordinate in viewBox space where the outside strip (and its divider
60
+ * hint) begins. The strip extends from here to `geometry.height`.
61
+ */
62
+ outsideStripTop: number;
63
+ }
64
+ /**
65
+ * Default 2-set geometry. The entire rectangle is the "universal set":
66
+ * circles occupy the top portion, and the outside strip beneath them is
67
+ * where outside-region tiles land. Tuned so each region's `hitRect` clears
68
+ * the 120×120 minimum hit-target from the PRD:
69
+ * left-only ≈ 230 × 340
70
+ * right-only ≈ 230 × 340
71
+ * overlap ≈ 120 × 340
72
+ * outside = 900 × 140 strip at the bottom of the rect
73
+ */
74
+ export declare function defaultGeometry2Set(): DiagramGeometry;
75
+ /**
76
+ * Build the 2-set layout for a concrete model (uses model circle labels to
77
+ * compose accessible names, and `model.regionLabels` for overrides).
78
+ */
79
+ export declare function buildLayout2Set(model: Pick<VennModel, 'circles' | 'regionLabels'>, geometry?: DiagramGeometry): DiagramLayout;
80
+ /**
81
+ * Resolve a pointer hit to its region. `pointer` is in viewBox coords.
82
+ * Returns the matched region's descriptor, or `null` for "no region".
83
+ * Regions are tested in an order that prefers overlap > single-circle > outside.
84
+ */
85
+ export declare function hitTest(layout: DiagramLayout, x: number, y: number): RegionLayout | null;
86
+ /** Re-export for convenience so consumers can import everything from layout.ts. */
87
+ export { enumerateRegions, regionKey, getRegionLabel };
88
+ export type { VennCircle };
@@ -0,0 +1,4 @@
1
+ import type { VennTile } from '../types.js';
2
+ export declare function stripHtml(s: string): string;
3
+ /** Accessible name for a tile (button aria-label, live-region announcements). */
4
+ export declare function tileAccessibleName(tile: Pick<VennTile, 'label' | 'imageUrl' | 'imageAlt'>): string;
@@ -0,0 +1 @@
1
+ export { default } from './delivery/index.js';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * IIFE entry point for venn-classification element.
3
+ * Exports the delivery component for host/player registration.
4
+ */
5
+ import Element from './delivery/index.js';
6
+ export default Element;
@@ -0,0 +1,20 @@
1
+ this.VennClassificationElement=(function(){typeof window<`u`&&((window.__svelte??={}).v??=new Set).add(`5`);var e={},t=Symbol(`uninitialized`),n=`http://www.w3.org/1999/xhtml`,r=`http://www.w3.org/2000/svg`,i=`http://www.w3.org/1998/Math/MathML`,a=Array.isArray,o=Array.prototype.indexOf,s=Array.prototype.includes,c=Array.from,l=Object.keys,u=Object.defineProperty,d=Object.getOwnPropertyDescriptor,f=Object.getOwnPropertyDescriptors,p=Object.prototype,m=Array.prototype,h=Object.getPrototypeOf,g=Object.isExtensible,_=()=>{};function v(e){for(var t=0;t<e.length;t++)e[t]()}function y(){var e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}function b(e,t){if(Array.isArray(e))return e;if(t===void 0||!(Symbol.iterator in e))return Array.from(e);let n=[];for(let r of e)if(n.push(r),n.length===t)break;return n}var x=1024,S=2048,C=4096,w=8192,ee=16384,te=32768,ne=1<<25,re=65536,ie=1<<19,ae=1<<20,oe=1<<25,se=65536,ce=1<<21,le=1<<22,ue=1<<23,de=Symbol(`$state`),fe=Symbol(`legacy props`),pe=Symbol(``),me=Symbol(`attributes`),he=Symbol(`class`),ge=Symbol(`style`),_e=Symbol(`text`),ve=new class extends Error{name=`StaleReactionError`;message="The reaction that called `getAbortSignal()` was re-run or destroyed"},ye=!!globalThis.document?.contentType&&globalThis.document.contentType.includes(`xml`);function be(e){throw Error(`https://svelte.dev/e/lifecycle_outside_component`)}function xe(){throw Error(`https://svelte.dev/e/async_derived_orphan`)}function Se(e,t,n){throw Error(`https://svelte.dev/e/each_key_duplicate`)}function Ce(e){throw Error(`https://svelte.dev/e/effect_in_teardown`)}function we(){throw Error(`https://svelte.dev/e/effect_in_unowned_derived`)}function Te(e){throw Error(`https://svelte.dev/e/effect_orphan`)}function Ee(){throw Error(`https://svelte.dev/e/effect_update_depth_exceeded`)}function De(){throw Error(`https://svelte.dev/e/hydration_failed`)}function Oe(e){throw Error(`https://svelte.dev/e/props_invalid_value`)}function ke(){throw Error(`https://svelte.dev/e/state_descriptors_fixed`)}function Ae(){throw Error(`https://svelte.dev/e/state_prototype_fixed`)}function je(){throw Error(`https://svelte.dev/e/state_unsafe_mutation`)}function Me(){throw Error(`https://svelte.dev/e/svelte_boundary_reset_onerror`)}function Ne(){console.warn(`https://svelte.dev/e/derived_inert`)}function Pe(e){console.warn(`https://svelte.dev/e/hydration_mismatch`)}function Fe(){console.warn(`https://svelte.dev/e/svelte_boundary_reset_noop`)}var T=!1;function E(e){T=e}var D;function O(t){if(t===null)throw Pe(),e;return D=t}function Ie(){return O(on(D))}function k(t){if(T){if(on(D)!==null)throw Pe(),e;D=t}}function Le(e=1){if(T){for(var t=e,n=D;t--;)n=on(n);D=n}}function Re(e=!0){for(var t=0,n=D;;){if(n.nodeType===8){var r=n.data;if(r===`]`){if(t===0)return n;--t}else (r===`[`||r===`[!`||r[0]===`[`&&!isNaN(Number(r.slice(1))))&&(t+=1)}var i=on(n);e&&n.remove(),n=i}}function ze(t){if(!t||t.nodeType!==8)throw Pe(),e;return t.data}function Be(e){return e===this.v}function Ve(e,t){return e==e?e!==t||typeof e==`object`&&!!e||typeof e==`function`:t==t}function He(e){return!Ve(e,this.v)}var Ue=!1,We=!1,A=null;function Ge(e){A=e}function Ke(e,t=!1,n){A={p:A,i:!1,c:null,e:null,s:e,x:null,r:G,l:We&&!t?{s:null,u:null,$:[]}:null}}function qe(e){var t=A,n=t.e;if(n!==null){t.e=null;for(var r of n)yn(r)}return e!==void 0&&(t.x=e),t.i=!0,A=t.p,e??{}}function Je(){return!We||A!==null&&A.l===null}var Ye=[];function Xe(){var e=Ye;Ye=[],v(e)}function Ze(e){if(Ye.length===0&&!ft){var t=Ye;queueMicrotask(()=>{t===Ye&&Xe()})}Ye.push(e)}function Qe(){for(;Ye.length>0;)Xe()}function $e(e){var t=G;if(t===null)return W.f|=ue,e;if(!(t.f&32768)&&!(t.f&4))throw e;et(e,t)}function et(e,t){for(;t!==null;){if(t.f&128){if(!(t.f&32768))throw e;try{t.b.error(e);return}catch(t){e=t}}t=t.parent}throw e}var tt=~(S|C|x);function j(e,t){e.f=e.f&tt|t}function nt(e){e.f&512||e.deps===null?j(e,x):j(e,C)}function rt(e){if(e!==null)for(let t of e)!(t.f&2)||!(t.f&65536)||(t.f^=se,rt(t.deps))}function it(e,t,n){e.f&2048?t.add(e):e.f&4096&&n.add(e),rt(e.deps),j(e,x)}var at=!1,ot=!1;function st(e){var t=ot;try{return ot=!1,[e(),ot]}finally{ot=t}}var ct=null,lt=null,M=null,ut=null,N=null,dt=null,ft=!1,pt=!1,mt=null,ht=null,gt=0,_t=1,vt=class e{id=_t++;#e=!1;linked=!0;#t=null;#n=null;async_deriveds=new Map;current=new Map;previous=new Map;#r=new Set;#i=new Set;#a=0;#o=new Map;#s=null;#c=[];#l=[];#u=new Set;#d=new Set;#f=new Map;#p=new Set;is_fork=!1;#m=!1;constructor(){lt===null?ct=lt=this:(lt.#n=this,this.#t=lt),lt=this}#h(){if(this.is_fork)return!0;for(let n of this.#o.keys()){for(var e=n,t=!1;e.parent!==null;){if(this.#f.has(e)){t=!0;break}e=e.parent}if(!t)return!0}return!1}skip_effect(e){this.#f.has(e)||this.#f.set(e,{d:[],m:[]}),this.#p.delete(e)}unskip_effect(e,t=e=>this.schedule(e)){var n=this.#f.get(e);if(n){this.#f.delete(e);for(var r of n.d)j(r,S),t(r);for(r of n.m)j(r,C),t(r)}this.#p.add(e)}#g(){this.#e=!0,gt++>1e3&&(this.#S(),yt());for(let e of this.#u)this.#d.delete(e),j(e,S),this.schedule(e);for(let e of this.#d)j(e,C),this.schedule(e);let t=this.#c;this.#c=[],this.apply();var n=mt=[],r=[],i=ht=[];for(let e of t)try{this.#_(e,n,r)}catch(t){throw Et(e),this.#h()||this.discard(),t}if(M=null,i.length>0){var a=e.ensure();for(let e of i)a.schedule(e)}if(mt=null,ht=null,this.#h()){this.#b(r),this.#b(n);for(let[e,t]of this.#f)Tt(e,t);i.length>0&&M.#g();return}let o=this.#v();if(o){this.#b(r),this.#b(n),o.#y(this);return}this.#u.clear(),this.#d.clear();for(let e of this.#r)e(this);this.#r.clear(),ut=this,xt(r),xt(n),ut=null,this.#s?.resolve();var s=M;if(this.#a===0&&(this.#c.length===0||s!==null)&&(this.#S(),Ue&&(this.#x(),M=s)),this.#c.length>0)if(s!==null){let e=s;e.#c.push(...this.#c.filter(t=>!e.#c.includes(t)))}else s=this;s!==null&&s.#g()}#_(e,t,n){e.f^=x;for(var r=e.first;r!==null;){var i=r.f,a=(i&96)!=0;if(!(a&&i&1024||i&8192||this.#f.has(r))&&r.fn!==null){a?r.f^=x:i&4?t.push(r):Ue&&i&16777224?n.push(r):$n(r)&&(i&16&&this.#d.add(r),ir(r));var o=r.first;if(o!==null){r=o;continue}}for(;r!==null;){var s=r.next;if(s!==null){r=s;break}r=r.parent}}}#v(){for(var e=this.#t;e!==null;){if(!e.is_fork){for(let[t,[,n]]of this.current)if(e.current.has(t)&&!n)return e}e=e.#t}return null}#y(e){for(let[t,n]of e.current)!this.previous.has(t)&&e.previous.has(t)&&this.previous.set(t,e.previous.get(t)),this.current.set(t,n);for(let[t,n]of e.async_deriveds){let e=this.async_deriveds.get(t);e&&n.promise.then(e.resolve).catch(e.reject)}this.transfer_effects(e.#u,e.#d);let t=e=>{var n=e.reactions;if(n!==null)for(let e of n){var r=e.f;if(r&2)t(e);else{var i=e;r&4194320&&!this.async_deriveds.has(i)&&(this.#d.delete(i),j(i,S),this.schedule(i))}}};for(let e of this.current.keys())t(e);this.oncommit(()=>e.discard()),e.#S(),M=this,this.#g()}#b(e){for(var t=0;t<e.length;t+=1)it(e[t],this.#u,this.#d)}capture(e,n,r=!1){e.v!==t&&!this.previous.has(e)&&this.previous.set(e,e.v),e.f&8388608||(this.current.set(e,[n,r]),N?.set(e,n)),this.is_fork||(e.v=n)}activate(){M=this}deactivate(){M=null,N=null}flush(){try{pt=!0,M=this,this.#g()}finally{gt=0,dt=null,mt=null,ht=null,pt=!1,M=null,N=null,Gt.clear()}}discard(){for(let e of this.#i)e(this);this.#i.clear(),this.#S(),this.#s?.resolve()}register_created_effect(e){this.#l.push(e)}#x(){for(let l=ct;l!==null;l=l.#n){var e=l.id<this.id,t=[];for(let[r,[i,a]]of this.current){if(l.current.has(r)){var n=l.current.get(r)[0];if(e&&i!==n)l.current.set(r,[i,a]);else continue}t.push(r)}if(e)for(let[e,t]of this.async_deriveds){let n=l.async_deriveds.get(e);n&&t.promise.then(n.resolve).catch(n.reject)}if(l.#e){var r=[...l.current.keys()].filter(e=>!l.current.get(e)[1]&&!this.current.has(e));if(r.length===0)e&&l.discard();else if(t.length>0){if(e)for(let e of this.#p)l.unskip_effect(e,e=>{e.f&4194320?l.schedule(e):l.#b([e])});l.activate();var i=new Set,a=new Map;for(var o of t)St(o,r,i,a);a=new Map;var s=[...l.current].filter(([e,t])=>{let n=this.current.get(e);return n?n[0]!==t[0]||n[1]!==t[1]:!0}).map(([e])=>e);if(s.length>0)for(let e of this.#l)!(e.f&155648)&&Ct(e,s,a)&&(e.f&4194320?(j(e,S),l.schedule(e)):l.#u.add(e));if(l.#c.length>0&&!l.#m){l.apply();for(var c of l.#c)l.#_(c,[],[]);l.#c=[]}l.deactivate()}}}}increment(e,t){if(this.#a+=1,e){let e=this.#o.get(t)??0;this.#o.set(t,e+1)}}decrement(e,t){if(--this.#a,e){let e=this.#o.get(t)??0;e===1?this.#o.delete(t):this.#o.set(t,e-1)}this.#m||(this.#m=!0,Ze(()=>{this.#m=!1,this.linked&&this.flush()}))}transfer_effects(e,t){for(let t of e)this.#u.add(t);for(let e of t)this.#d.add(e);e.clear(),t.clear()}oncommit(e){this.#r.add(e)}ondiscard(e){this.#i.add(e)}settled(){return(this.#s??=y()).promise}static ensure(){if(M===null){let t=M=new e;!pt&&!ft&&Ze(()=>{t.#e||t.flush()})}return M}apply(){if(!Ue||!this.is_fork&&this.#t===null&&this.#n===null){N=null;return}N=new Map;for(let[e,[t]]of this.current)N.set(e,t);for(let t=ct;t!==null;t=t.#n)if(!(t===this||t.is_fork)){var e=!1;if(t.id<this.id){for(let[n,[,r]]of t.current)if(!r&&this.current.has(n)){e=!0;break}}if(!e)for(let[e,n]of t.previous)N.has(e)||N.set(e,n)}}schedule(e){if(dt=e,e.b?.is_pending&&e.f&16777228&&!(e.f&32768)){e.b.defer_effect(e);return}for(var t=e;t.parent!==null;){t=t.parent;var n=t.f;if(mt!==null&&t===G&&(Ue||(W===null||!(W.f&2))&&!at))return;if(n&96){if(!(n&1024))return;t.f^=x}}this.#c.push(t)}#S(){if(this.linked){var e=this.#t,t=this.#n;e===null?ct=t:e.#n=t,t===null?lt=e:t.#t=e,this.linked=!1}}};function P(e){var t=ft;ft=!0;try{var n;for(e&&(M!==null&&!M.is_fork&&M.flush(),n=e());;){if(Qe(),M===null)return n;M.flush()}}finally{ft=t}}function yt(){try{Ee()}catch(e){et(e,dt)}}var bt=null;function xt(e){var t=e.length;if(t!==0){for(var n=0;n<t;){var r=e[n++];if(!(r.f&24576)&&$n(r)&&(bt=new Set,ir(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&jn(r),bt?.size>0)){Gt.clear();for(let e of bt){if(e.f&24576)continue;let t=[e],n=e.parent;for(;n!==null;)bt.has(n)&&(bt.delete(n),t.push(n)),n=n.parent;for(let e=t.length-1;e>=0;e--){let n=t[e];n.f&24576||ir(n)}}bt.clear()}}bt=null}}function St(e,t,n,r){if(!n.has(e)&&(n.add(e),e.reactions!==null))for(let i of e.reactions){let e=i.f;e&2?St(i,t,n,r):e&4194320&&!(e&2048)&&Ct(i,t,r)&&(j(i,S),wt(i))}}function Ct(e,t,n){let r=n.get(e);if(r!==void 0)return r;if(e.deps!==null)for(let r of e.deps){if(s.call(t,r))return!0;if(r.f&2&&Ct(r,t,n))return n.set(r,!0),!0}return n.set(e,!1),!1}function wt(e){M.schedule(e)}function Tt(e,t){if(!(e.f&32&&e.f&1024)){e.f&2048?t.d.push(e):e.f&4096&&t.m.push(e),j(e,x);for(var n=e.first;n!==null;)Tt(n,t),n=n.next}}function Et(e){j(e,x);for(var t=e.first;t!==null;)Et(t),t=t.next}function Dt(e){let t=0,n=qt(0),r;return()=>{gn()&&(J(n),wn(()=>(t===0&&(r=cr(()=>e(()=>Zt(n)))),t+=1,()=>{Ze(()=>{--t,t===0&&(r?.(),r=void 0,Zt(n))})})))}}var Ot=re|ie;function kt(e,t,n,r){new At(e,t,n,r)}var At=class{parent;is_pending=!1;transform_error;#e;#t=T?D:null;#n;#r;#i;#a=null;#o=null;#s=null;#c=null;#l=0;#u=0;#d=!1;#f=new Set;#p=new Set;#m=null;#h=Dt(()=>(this.#m=qt(this.#l),()=>{this.#m=null}));constructor(e,t,n,r){this.#e=e,this.#n=t,this.#r=e=>{var t=G;t.b=this,t.f|=128,n(e)},this.parent=G.b,this.transform_error=r??this.parent?.transform_error??(e=>e),this.#i=Tn(()=>{if(T){let e=this.#t;Ie();let t=e.data===`[!`;if(e.data.startsWith(`[?`)){let t=JSON.parse(e.data.slice(2));this.#_(t)}else t?this.#v():this.#g()}else this.#y()},Ot),T&&(this.#e=D)}#g(){try{this.#a=En(()=>this.#r(this.#e))}catch(e){this.error(e)}}#_(e){let t=this.#n.failed;t&&(this.#s=En(()=>{t(this.#e,()=>e,()=>()=>{})}))}#v(){let e=this.#n.pending;e&&(this.is_pending=!0,this.#o=En(()=>e(this.#e)),Ze(()=>{var e=this.#c=document.createDocumentFragment(),t=R();e.append(t),this.#a=this.#x(()=>En(()=>this.#r(t))),this.#u===0&&(this.#e.before(e),this.#c=null,Mn(this.#o,()=>{this.#o=null}),this.#b(M))}))}#y(){try{if(this.is_pending=this.has_pending_snippet(),this.#u=0,this.#l=0,this.#a=En(()=>{this.#r(this.#e)}),this.#u>0){var e=this.#c=document.createDocumentFragment();In(this.#a,e);let t=this.#n.pending;this.#o=En(()=>t(this.#e))}else this.#b(M)}catch(e){this.error(e)}}#b(e){this.is_pending=!1,e.transfer_effects(this.#f,this.#p)}defer_effect(e){it(e,this.#f,this.#p)}is_rendered(){return!this.is_pending&&(!this.parent||this.parent.is_rendered())}has_pending_snippet(){return!!this.#n.pending}#x(e){var t=G,n=W,r=A;Un(this.#i),Hn(this.#i),Ge(this.#i.ctx);try{return vt.ensure(),e()}catch(e){return $e(e),null}finally{Un(t),Hn(n),Ge(r)}}#S(e,t){if(!this.has_pending_snippet()){this.parent&&this.parent.#S(e,t);return}this.#u+=e,this.#u===0&&(this.#b(t),this.#o&&Mn(this.#o,()=>{this.#o=null}),this.#c&&=(this.#e.before(this.#c),null))}update_pending_count(e,t){this.#S(e,t),this.#l+=e,!(!this.#m||this.#d)&&(this.#d=!0,Ze(()=>{this.#d=!1,this.#m&&Yt(this.#m,this.#l)}))}get_effect_pending(){return this.#h(),J(this.#m)}error(e){if(!this.#n.onerror&&!this.#n.failed)throw e;M?.is_fork?(this.#a&&M.skip_effect(this.#a),this.#o&&M.skip_effect(this.#o),this.#s&&M.skip_effect(this.#s),M.oncommit(()=>{this.#C(e)})):this.#C(e)}#C(e){this.#a&&=(U(this.#a),null),this.#o&&=(U(this.#o),null),this.#s&&=(U(this.#s),null),T&&(O(this.#t),Le(),O(Re()));var t=this.#n.onerror;let n=this.#n.failed;var r=!1,i=!1;let a=()=>{if(r){Fe();return}r=!0,i&&Me(),this.#s!==null&&Mn(this.#s,()=>{this.#s=null}),this.#x(()=>{this.#y()})},o=e=>{try{i=!0,t?.(e,a),i=!1}catch(e){et(e,this.#i&&this.#i.parent)}n&&(this.#s=this.#x(()=>{try{return En(()=>{var t=G;t.b=this,t.f|=128,n(this.#e,()=>e,()=>a)})}catch(e){return et(e,this.#i.parent),null}}))};Ze(()=>{var t;try{t=this.transform_error(e)}catch(e){et(e,this.#i&&this.#i.parent);return}typeof t==`object`&&t&&typeof t.then==`function`?t.then(o,e=>et(e,this.#i&&this.#i.parent)):o(t)})}};function jt(e,t,n,r){let i=Je()?Ft:Rt;var a=e.filter(e=>!e.settled),o=t.map(i);if(n.length===0&&a.length===0){r(o);return}var s=G,c=Mt(),l=a.length===1?a[0].promise:a.length>1?Promise.all(a.map(e=>e.promise)):null;function u(e){if(!(s.f&16384)){c();try{r([...o,...e])}catch(e){et(e,s)}Nt()}}var d=Pt();if(n.length===0){l.then(()=>u([])).finally(d);return}function f(){Promise.all(n.map(e=>Lt(e))).then(u).catch(e=>et(e,s)).finally(d)}l?l.then(()=>{c(),f(),Nt()}):f()}function Mt(){var e=G,t=W,n=A,r=M;return function(i=!0){Un(e),Hn(t),Ge(n),i&&!(e.f&16384)&&(r?.activate(),r?.apply())}}function Nt(e=!0){Un(null),Hn(null),Ge(null),e&&M?.deactivate()}function Pt(){var e=G,t=e.b,n=M,r=!!t?.is_rendered();return t?.update_pending_count(1,n),n.increment(r,e),()=>{t?.update_pending_count(-1,n),n.decrement(r,e)}}function Ft(e){var n=2|S;return G!==null&&(G.f|=ie),{ctx:A,deps:null,effects:null,equals:Be,f:n,fn:e,reactions:null,rv:0,v:t,wv:0,parent:G,ac:null}}var It=Symbol(`obsolete`);function Lt(e,n,r){let i=G;i===null&&xe();var a=void 0,o=qt(t),s=!W,c=new Set;return Cn(()=>{var t=G,n=y();a=n.promise;try{Promise.resolve(e()).then(n.resolve,e=>{e!==ve&&n.reject(e)}).finally(Nt)}catch(e){n.reject(e),Nt()}var r=M;if(s){if(t.f&32768)var l=Pt();if(i.b?.is_rendered())r.async_deriveds.get(t)?.reject(It);else for(let e of c.values())e.reject(It);c.add(n),r.async_deriveds.set(t,n)}let u=(e,t=void 0)=>{l?.(),c.delete(n),t!==It&&(r.activate(),t?(o.f|=ue,Yt(o,t)):(o.f&8388608&&(o.f^=ue),Yt(o,e)),r.deactivate())};n.promise.then(u,e=>u(null,e||`unknown`))}),_n(()=>{for(let e of c)e.reject(It)}),new Promise(e=>{function t(n){function r(){n===a?e(o):t(a)}n.then(r,r)}t(a)})}function F(e){let t=Ft(e);return Ue||Gn(t),t}function Rt(e){let t=Ft(e);return t.equals=He,t}function zt(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)U(t[n])}}function Bt(e){var n,r=G,i=e.parent;if(!zn&&i!==null&&e.v!==t&&i.f&24576)return Ne(),e.v;Un(i);try{e.f&=~se,zt(e),n=tr(e)}finally{Un(r)}return n}function Vt(e){var t=Bt(e);if(!e.equals(t)&&(e.wv=Qn(),(!M?.is_fork||e.deps===null)&&(M===null?e.v=t:(M.capture(e,t,!0),ut?.capture(e,t,!0)),e.deps===null))){j(e,x);return}zn||(N===null?nt(e):(gn()||M?.is_fork)&&N.set(e,t))}function Ht(e){if(e.effects!==null)for(let t of e.effects)(t.teardown||t.ac)&&(t.teardown?.(),t.ac?.abort(ve),t.fn!==null&&(t.teardown=_),t.ac=null,rr(t,0),On(t))}function Ut(e){if(e.effects!==null)for(let t of e.effects)t.teardown&&t.fn!==null&&ir(t)}var Wt=new Set,Gt=new Map,Kt=!1;function qt(e,t){return{f:0,v:e,reactions:null,equals:Be,rv:0,wv:0}}function I(e,t){let n=qt(e,t);return Gn(n),n}function Jt(e,t=!1,n=!0){let r=qt(e);return t||(r.equals=He),We&&n&&A!==null&&A.l!==null&&(A.l.s??=[]).push(r),r}function L(e,t,n=!1){return W!==null&&(!Vn||W.f&131072)&&Je()&&W.f&4325394&&(Wn===null||!Wn.has(e))&&je(),Yt(e,n?$t(t):t,ht)}function Yt(e,t,n=null){if(!e.equals(t)){Gt.set(e,zn?t:e.v);var r=vt.ensure();if(r.capture(e,t),e.f&2){let t=e;e.f&2048&&Bt(t),N===null&&nt(t)}e.wv=Qn(),Qt(e,S,n),Je()&&G!==null&&G.f&1024&&!(G.f&96)&&(Kn===null?qn([e]):Kn.push(e)),!r.is_fork&&Wt.size>0&&!Kt&&Xt()}return t}function Xt(){Kt=!1;for(let e of Wt){e.f&1024&&j(e,C);let t;try{t=$n(e)}catch{t=!0}t&&ir(e)}Wt.clear()}function Zt(e){L(e,e.v+1)}function Qt(e,t,n){var r=e.reactions;if(r!==null)for(var i=Je(),a=r.length,o=0;o<a;o++){var s=r[o],c=s.f;if(!(!i&&s===G)){var l=(c&S)===0;if(l&&j(s,t),c&131072)Wt.add(s);else if(c&2){var u=s;N?.delete(u),c&65536||(c&512&&(G===null||!(G.f&2097152))&&(s.f|=se),Qt(u,C,n))}else if(l){var d=s;c&16&&bt!==null&&bt.add(d),n===null?wt(d):n.push(d)}}}}function $t(e){if(typeof e!=`object`||!e||de in e)return e;let n=h(e);if(n!==p&&n!==m)return e;var r=new Map,i=a(e),o=I(0),s=null,c=Xn,l=e=>{if(Xn===c)return e();var t=W,n=Xn;Hn(null),Zn(c);var r=e();return Hn(t),Zn(n),r};return i&&r.set(`length`,I(e.length,s)),new Proxy(e,{defineProperty(e,t,n){(!(`value`in n)||n.configurable===!1||n.enumerable===!1||n.writable===!1)&&ke();var i=r.get(t);return i===void 0?l(()=>{var e=I(n.value,s);return r.set(t,e),e}):L(i,n.value,!0),!0},deleteProperty(e,n){var i=r.get(n);if(i===void 0){if(n in e){let e=l(()=>I(t,s));r.set(n,e),Zt(o)}}else L(i,t),Zt(o);return!0},get(n,i,a){if(i===de)return e;var o=r.get(i),c=i in n;if(o===void 0&&(!c||d(n,i)?.writable)&&(o=l(()=>I($t(c?n[i]:t),s)),r.set(i,o)),o!==void 0){var u=J(o);return u===t?void 0:u}return Reflect.get(n,i,a)},getOwnPropertyDescriptor(e,n){var i=Reflect.getOwnPropertyDescriptor(e,n);if(i&&`value`in i){var a=r.get(n);a&&(i.value=J(a))}else if(i===void 0){var o=r.get(n),s=o?.v;if(o!==void 0&&s!==t)return{enumerable:!0,configurable:!0,value:s,writable:!0}}return i},has(e,n){if(n===de)return!0;var i=r.get(n),a=i!==void 0&&i.v!==t||Reflect.has(e,n);return(i!==void 0||G!==null&&(!a||d(e,n)?.writable))&&(i===void 0&&(i=l(()=>I(a?$t(e[n]):t,s)),r.set(n,i)),J(i)===t)?!1:a},set(e,n,a,c){var u=r.get(n),f=n in e;if(i&&n===`length`)for(var p=a;p<u.v;p+=1){var m=r.get(p+``);m===void 0?p in e&&(m=l(()=>I(t,s)),r.set(p+``,m)):L(m,t)}if(u===void 0)(!f||d(e,n)?.writable)&&(u=l(()=>I(void 0,s)),L(u,$t(a)),r.set(n,u));else{f=u.v!==t;var h=l(()=>$t(a));L(u,h)}var g=Reflect.getOwnPropertyDescriptor(e,n);if(g?.set&&g.set.call(c,a),!f){if(i&&typeof n==`string`){var _=r.get(`length`),v=Number(n);Number.isInteger(v)&&v>=_.v&&L(_,v+1)}Zt(o)}return!0},ownKeys(e){J(o);var n=Reflect.ownKeys(e).filter(e=>{var n=r.get(e);return n===void 0||n.v!==t});for(var[i,a]of r)a.v!==t&&!(i in e)&&n.push(i);return n},setPrototypeOf(){Ae()}})}new Set([`copyWithin`,`fill`,`pop`,`push`,`reverse`,`shift`,`sort`,`splice`,`unshift`]);var en,tn,nn,rn;function an(){if(en===void 0){en=window,tn=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;nn=d(t,`firstChild`).get,rn=d(t,`nextSibling`).get,g(e)&&(e[he]=void 0,e[me]=null,e[ge]=void 0,e.__e=void 0),g(n)&&(n[_e]=void 0)}}function R(e=``){return document.createTextNode(e)}function z(e){return nn.call(e)}function on(e){return rn.call(e)}function B(e,t){if(!T)return z(e);var n=z(D);if(n===null)n=D.appendChild(R());else if(t&&n.nodeType!==3){var r=R();return n?.before(r),O(r),r}return t&&dn(n),O(n),n}function sn(e,t=!1){if(!T){var n=z(e);return n instanceof Comment&&n.data===``?on(n):n}if(t){if(D?.nodeType!==3){var r=R();return D?.before(r),O(r),r}dn(D)}return D}function V(e,t=1,n=!1){let r=T?D:e;for(var i;t--;)i=r,r=on(r);if(!T)return r;if(n){if(r?.nodeType!==3){var a=R();return r===null?i?.after(a):r.before(a),O(a),a}dn(r)}return O(r),r}function cn(e){e.textContent=``}function ln(){return!Ue||bt!==null?!1:(G.f&te)!==0}function un(e,t,n){return t==null||t===`http://www.w3.org/1999/xhtml`?n?document.createElement(e,{is:n}):document.createElement(e):n?document.createElementNS(t,e,{is:n}):document.createElementNS(t,e)}function dn(e){if(e.nodeValue.length<65536)return;let t=e.nextSibling;for(;t!==null&&t.nodeType===3;)t.remove(),e.nodeValue+=t.nodeValue,t=e.nextSibling}function fn(e){var t=W,n=G;Hn(null),Un(null);try{return e()}finally{Hn(t),Un(n)}}function pn(e){G===null&&(W===null&&Te(e),we()),zn&&Ce(e)}function mn(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function hn(e,t){var n=G;n!==null&&n.f&8192&&(e|=w);var r={ctx:A,deps:null,nodes:null,f:e|S|512,first:null,fn:t,last:null,next:null,parent:n,b:n&&n.b,prev:null,teardown:null,wv:0,ac:null};M?.register_created_effect(r);var i=r;if(e&4)mt===null?vt.ensure().schedule(r):mt.push(r);else if(t!==null){try{ir(r)}catch(e){throw U(r),e}i.deps===null&&i.teardown===null&&i.nodes===null&&i.first===i.last&&!(i.f&524288)&&(i=i.first,e&16&&e&65536&&i!==null&&(i.f|=re))}if(i!==null&&(i.parent=n,n!==null&&mn(i,n),W!==null&&W.f&2&&!(e&64))){var a=W;(a.effects??=[]).push(i)}return r}function gn(){return W!==null&&!Vn}function _n(e){let t=hn(8,null);return j(t,x),t.teardown=e,t}function vn(e){pn(`$effect`);var t=G.f;if(!W&&t&32&&A!==null&&!A.i){var n=A;(n.e??=[]).push(e)}else return yn(e)}function yn(e){return hn(4|ae,e)}function bn(e){vt.ensure();let t=hn(64|ie,e);return()=>{U(t)}}function xn(e){vt.ensure();let t=hn(64|ie,e);return(e={})=>new Promise(n=>{e.outro?Mn(t,()=>{U(t),n(void 0)}):(U(t),n(void 0))})}function Sn(e){return hn(4,e)}function Cn(e){return hn(le|ie,e)}function wn(e,t=0){return hn(8|t,e)}function H(e,t=[],n=[],r=[]){jt(r,t,n,t=>{hn(8,()=>{e(...t.map(J))})})}function Tn(e,t=0){return hn(16|t,e)}function En(e){return hn(32|ie,e)}function Dn(e){var t=e.teardown;if(t!==null){let e=zn,n=W;Bn(!0),Hn(null);try{t.call(null)}finally{Bn(e),Hn(n)}}}function On(e,t=!1){var n=e.first;for(e.first=e.last=null;n!==null;){let e=n.ac;e!==null&&fn(()=>{e.abort(ve)});var r=n.next;n.f&64?n.parent=null:U(n,t),n=r}}function kn(e){for(var t=e.first;t!==null;){var n=t.next;t.f&32||U(t),t=n}}function U(e,t=!0){var n=!1;(t||e.f&262144)&&e.nodes!==null&&e.nodes.end!==null&&(An(e.nodes.start,e.nodes.end),n=!0),e.f|=ne,On(e,t&&!n),rr(e,0);var r=e.nodes&&e.nodes.t;if(r!==null)for(let e of r)e.stop();Dn(e),e.f^=ne,e.f|=ee;var i=e.parent;i!==null&&i.first!==null&&jn(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=e.b=null}function An(e,t){for(;e!==null;){var n=e===t?null:on(e);e.remove(),e=n}}function jn(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function Mn(e,t,n=!0){var r=[];Nn(e,r,!0);var i=()=>{n&&U(e),t&&t()},a=r.length;if(a>0){var o=()=>--a||i();for(var s of r)s.out(o)}else i()}function Nn(e,t,n){if(!(e.f&8192)){e.f^=w;var r=e.nodes&&e.nodes.t;if(r!==null)for(let e of r)(e.is_global||n)&&t.push(e);for(var i=e.first;i!==null;){var a=i.next;if(!(i.f&64)){var o=(i.f&65536)!=0||(i.f&32)!=0&&(e.f&16)!=0;Nn(i,t,o?n:!1)}i=a}}}function Pn(e){Fn(e,!0)}function Fn(e,t){if(e.f&8192){e.f^=w,e.f&1024||(j(e,S),vt.ensure().schedule(e));for(var n=e.first;n!==null;){var r=n.next,i=(n.f&65536)!=0||(n.f&32)!=0;Fn(n,i?t:!1),n=r}var a=e.nodes&&e.nodes.t;if(a!==null)for(let e of a)(e.is_global||t)&&e.in()}}function In(e,t){if(e.nodes)for(var n=e.nodes.start,r=e.nodes.end;n!==null;){var i=n===r?null:on(n);t.append(n),n=i}}var Ln=null,Rn=!1,zn=!1;function Bn(e){zn=e}var W=null,Vn=!1;function Hn(e){W=e}var G=null;function Un(e){G=e}var Wn=null;function Gn(e){W!==null&&(!Ue||W.f&2)&&(Wn??=new Set).add(e)}var K=null,q=0,Kn=null;function qn(e){Kn=e}var Jn=1,Yn=0,Xn=Yn;function Zn(e){Xn=e}function Qn(){return++Jn}function $n(e){var t=e.f;if(t&2048)return!0;if(t&2&&(e.f&=~se),t&4096){for(var n=e.deps,r=n.length,i=0;i<r;i++){var a=n[i];if($n(a)&&Vt(a),a.wv>e.wv)return!0}t&512&&N===null&&j(e,x)}return!1}function er(e,t,n=!0){var r=e.reactions;if(r!==null&&!(!Ue&&Wn!==null&&Wn.has(e)))for(var i=0;i<r.length;i++){var a=r[i];a.f&2?er(a,t,!1):t===a&&(n?j(a,S):a.f&1024&&j(a,C),wt(a))}}function tr(e){var t=K,n=q,r=Kn,i=W,a=Wn,o=A,s=Vn,c=Xn,l=e.f;K=null,q=0,Kn=null,W=l&96?null:e,Wn=null,Ge(e.ctx),Vn=!1,Xn=++Yn,e.ac!==null&&(fn(()=>{e.ac.abort(ve)}),e.ac=null);try{e.f|=ce;var u=e.fn,d=u();e.f|=te;var f=e.deps,p=M?.is_fork;if(K!==null){var m;if(p||rr(e,q),f!==null&&q>0)for(f.length=q+K.length,m=0;m<K.length;m++)f[q+m]=K[m];else e.deps=f=K;if(gn()&&e.f&512)for(m=q;m<f.length;m++)(f[m].reactions??=[]).push(e)}else !p&&f!==null&&q<f.length&&(rr(e,q),f.length=q);if(Je()&&Kn!==null&&!Vn&&f!==null&&!(e.f&6146))for(m=0;m<Kn.length;m++)er(Kn[m],e);if(i!==null&&i!==e){if(Yn++,i.deps!==null)for(let e=0;e<n;e+=1)i.deps[e].rv=Yn;if(t!==null)for(let e of t)e.rv=Yn;Kn!==null&&(r===null?r=Kn:r.push(...Kn))}return e.f&8388608&&(e.f^=ue),d}catch(e){return $e(e)}finally{e.f^=ce,K=t,q=n,Kn=r,W=i,Wn=a,Ge(o),Vn=s,Xn=c}}function nr(e,n){let r=n.reactions;if(r!==null){var i=o.call(r,e);if(i!==-1){var a=r.length-1;a===0?r=n.reactions=null:(r[i]=r[a],r.pop())}}if(r===null&&n.f&2&&(K===null||!s.call(K,n))){var c=n;c.f&512&&(c.f^=512,c.f&=~se),c.v!==t&&nt(c),Ht(c),rr(c,0)}}function rr(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)nr(e,n[r])}function ir(e){var t=e.f;if(!(t&16384)){j(e,x);var n=G,r=Rn;G=e,Rn=!0;try{t&16777232?kn(e):On(e),Dn(e);var i=tr(e);e.teardown=typeof i==`function`?i:null,e.wv=Jn}finally{Rn=r,G=n}}}async function ar(){if(Ue)return new Promise(e=>{requestAnimationFrame(()=>e()),setTimeout(()=>e())});await Promise.resolve(),P()}function J(e){var t=(e.f&2)!=0;if(Ln?.add(e),W!==null&&!Vn&&!(G!==null&&G.f&16384)&&(Wn===null||!Wn.has(e))){var n=W.deps;if(W.f&2097152)e.rv<Yn&&(e.rv=Yn,K===null&&n!==null&&n[q]===e?q++:K===null?K=[e]:K.push(e));else{W.deps??=[],s.call(W.deps,e)||W.deps.push(e);var r=e.reactions;r===null?e.reactions=[W]:s.call(r,W)||r.push(W)}}if(zn&&Gt.has(e))return Gt.get(e);if(t){var i=e;if(zn){var a=i.v;return(!(i.f&1024)&&i.reactions!==null||sr(i))&&(a=Bt(i)),Gt.set(i,a),a}var o=(i.f&512)==0&&!Vn&&W!==null&&(Rn||(W.f&512)!=0),c=(i.f&te)===0;$n(i)&&(o&&(i.f|=512),Vt(i)),o&&!c&&(Ut(i),or(i))}if(N?.has(e))return N.get(e);if(e.f&8388608)throw e.v;return e.v}function or(e){if(e.f|=512,e.deps!==null)for(let t of e.deps)(t.reactions??=[]).push(e),t.f&2&&!(t.f&512)&&(Ut(t),or(t))}function sr(e){if(e.v===t)return!0;if(e.deps===null)return!1;for(let t of e.deps)if(Gt.has(t)||t.f&2&&sr(t))return!0;return!1}function cr(e){var t=Vn;try{return Vn=!0,e()}finally{Vn=t}}var lr=Symbol(`events`),ur=new Set,dr=new Set;function fr(e,t,n,r={}){function i(e){if(r.capture||_r.call(t,e),!e.cancelBubble)return fn(()=>n?.call(this,e))}return e.startsWith(`pointer`)||e.startsWith(`touch`)||e===`wheel`?Ze(()=>{t.addEventListener(e,i,r)}):t.addEventListener(e,i,r),i}function pr(e,t,n,r,i){var a={capture:r,passive:i},o=fr(e,t,n,a);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&_n(()=>{t.removeEventListener(e,o,a)})}function mr(e,t,n){(t[lr]??={})[e]=n}function hr(e){for(var t=0;t<e.length;t++)ur.add(e[t]);for(var n of dr)n(e)}var gr=null;function _r(e){var t=this,n=t.ownerDocument,r=e.type,i=e.composedPath?.()||[],a=i[0]||e.target;gr=e;var o=0,s=gr===e&&e[lr];if(s){var c=i.indexOf(s);if(c!==-1&&(t===document||t===window)){e[lr]=t;return}var l=i.indexOf(t);if(l===-1)return;c<=l&&(o=c)}if(a=i[o]||e.target,a!==t){u(e,`currentTarget`,{configurable:!0,get(){return a||n}});var d=W,f=G;Hn(null),Un(null);try{for(var p,m=[];a!==null&&a!==t;){try{var h=a[lr]?.[r];h!=null&&(!a.disabled||e.target===a)&&h.call(a,e)}catch(e){p?m.push(e):p=e}if(e.cancelBubble)break;o++,a=o<i.length?i[o]:null}if(p){for(let e of m)queueMicrotask(()=>{throw e});throw p}}finally{e[lr]=t,delete e.currentTarget,Hn(d),Un(f)}}}var vr=globalThis?.window?.trustedTypes&&globalThis.window.trustedTypes.createPolicy(`svelte-trusted-html`,{createHTML:e=>e});function yr(e){return vr?.createHTML(e)??e}function br(e){var t=un(`template`);return t.innerHTML=yr(e.replaceAll(`<!>`,`<!---->`)),t.content}function xr(e,t){var n=G;n.nodes===null&&(n.nodes={start:e,end:t,a:null,t:null})}function Y(e,t){var n=(t&1)!=0,r=(t&2)!=0,i,a=!e.startsWith(`<!>`);return()=>{if(T)return xr(D,null),D;i===void 0&&(i=br(a?e:`<!>`+e),n||(i=z(i)));var t=r||tn?document.importNode(i,!0):i.cloneNode(!0);if(n){var o=z(t),s=t.lastChild;xr(o,s)}else xr(t,t);return t}}function Sr(e,t,n=`svg`){var r=!e.startsWith(`<!>`),i=(t&1)!=0,a=`<${n}>${r?e:`<!>`+e}</${n}>`,o;return()=>{if(T)return xr(D,null),D;if(!o){var e=z(br(a));if(i)for(o=document.createDocumentFragment();z(e);)o.appendChild(z(e));else o=z(e)}var t=o.cloneNode(!0);if(i){var n=z(t),r=t.lastChild;xr(n,r)}else xr(t,t);return t}}function Cr(e,t){return Sr(e,t,`svg`)}function wr(){if(T)return xr(D,null),D;var e=document.createDocumentFragment(),t=document.createComment(``),n=R();return e.append(t,n),xr(t,n),e}function X(e,t){if(T){var n=G;(!(n.f&32768)||n.nodes.end===null)&&(n.nodes.end=D),Ie();return}e!==null&&e.before(t)}[...`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`.split(`.`)];var Tr=[`touchstart`,`touchmove`];function Er(e){return Tr.includes(e)}function Dr(e,t){var n=t==null?``:typeof t==`object`?`${t}`:t;n!==(e[_e]??=e.nodeValue)&&(e[_e]=n,e.nodeValue=`${n}`)}function Or(e,t){return jr(e,t)}function kr(t,n){an(),n.intro=n.intro??!1;let r=n.target,i=T,a=D;try{for(var o=z(r);o&&(o.nodeType!==8||o.data!==`[`);)o=on(o);if(!o)throw e;E(!0),O(o);let i=jr(t,{...n,anchor:o});return E(!1),i}catch(i){if(i instanceof Error&&i.message.split(`
2
+ `).some(e=>e.startsWith(`https://svelte.dev/e/`)))throw i;return i!==e&&console.warn(`Failed to hydrate: `,i),n.recover===!1&&De(),an(),cn(r),E(!1),Or(t,n)}finally{E(i),O(a)}}var Ar=new Map;function jr(t,{target:n,anchor:r,props:i={},events:a,context:o,intro:s=!0,transformError:l}){an();var u=void 0,d=xn(()=>{var s=r??n.appendChild(R());kt(s,{pending:()=>{}},n=>{Ke({});var r=A;if(o&&(r.c=o),a&&(i.$$events=a),T&&xr(n,null),u=t(n,i)||{},T&&(G.nodes.end=D,D===null||D.nodeType!==8||D.data!==`]`))throw Pe(),e;qe()},l);var d=new Set,f=e=>{for(var t=0;t<e.length;t++){var r=e[t];if(!d.has(r)){d.add(r);var i=Er(r);for(let e of[n,document]){var a=Ar.get(e);a===void 0&&(a=new Map,Ar.set(e,a));var o=a.get(r);o===void 0?(e.addEventListener(r,_r,{passive:i}),a.set(r,1)):a.set(r,o+1)}}}};return f(c(ur)),dr.add(f),()=>{for(var e of d)for(let r of[n,document]){var t=Ar.get(r),i=t.get(e);--i==0?(r.removeEventListener(e,_r),t.delete(e),t.size===0&&Ar.delete(r)):t.set(e,i)}dr.delete(f),s!==r&&s.parentNode?.removeChild(s)}});return Mr.set(u,d),u}var Mr=new WeakMap;function Nr(e,t){let n=Mr.get(e);return n?(Mr.delete(e),n(t)):Promise.resolve()}var Pr=class{anchor;#e=new Map;#t=new Map;#n=new Map;#r=new Set;#i=!0;constructor(e,t=!0){this.anchor=e,this.#i=t}#a=e=>{if(this.#e.has(e)){var t=this.#e.get(e),n=this.#t.get(t);if(n)Pn(n),this.#r.delete(t);else{var r=this.#n.get(t);r&&(Pn(r.effect),this.#t.set(t,r.effect),this.#n.delete(t),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),n=r.effect)}for(let[t,n]of this.#e){if(this.#e.delete(t),t===e)break;let r=this.#n.get(n);r&&(U(r.effect),this.#n.delete(n))}for(let[e,r]of this.#t){if(e===t||this.#r.has(e))continue;let i=()=>{if(Array.from(this.#e.values()).includes(e)){var t=document.createDocumentFragment();In(r,t),t.append(R()),this.#n.set(e,{effect:r,fragment:t})}else U(r);this.#r.delete(e),this.#t.delete(e)};this.#i||!n?(this.#r.add(e),Mn(r,i,!1)):i()}}};#o=e=>{this.#e.delete(e);let t=Array.from(this.#e.values());for(let[e,n]of this.#n)t.includes(e)||(U(n.effect),this.#n.delete(e))};ensure(e,t){var n=M,r=ln();if(t&&!this.#t.has(e)&&!this.#n.has(e))if(r){var i=document.createDocumentFragment(),a=R();i.append(a),this.#n.set(e,{effect:En(()=>t(a)),fragment:i})}else this.#t.set(e,En(()=>t(this.anchor)));if(this.#e.set(n,e),r){for(let[t,r]of this.#t)t===e?n.unskip_effect(r):n.skip_effect(r);for(let[t,r]of this.#n)t===e?n.unskip_effect(r.effect):n.skip_effect(r.effect);n.oncommit(this.#a),n.ondiscard(this.#o)}else T&&(this.anchor=D),this.#a(n)}};function Fr(e,t,...n){var r=new Pr(e);Tn(()=>{let e=t()??null;r.ensure(e,e&&(t=>e(t,...n)))},re)}function Ir(e){A===null&&be(`onMount`),We&&A.l!==null?Lr(A).m.push(e):vn(()=>{let t=cr(e);if(typeof t==`function`)return t})}function Lr(e){var t=e.l;return t.u??={a:[],b:[],m:[]}}function Z(e,t,n=!1){var r;T&&(r=D,Ie());var i=new Pr(e),a=n?re:0;function o(e,t){if(T){var n=ze(r);if(e!==parseInt(n.substring(1))){var a=Re();O(a),i.anchor=a,E(!1),i.ensure(e,t),E(!0);return}}i.ensure(e,t)}Tn(()=>{var e=!1;t((t,n=0)=>{e=!0,o(n,t)}),e||o(-1,null)},a)}function Rr(e,t){return t}function zr(e,t,n){for(var r=[],i=t.length,a,o=t.length,s=0;s<i;s++){let n=t[s];Mn(n,()=>{if(a){if(a.pending.delete(n),a.done.add(n),a.pending.size===0){var t=e.outrogroups;Br(e,c(a.done)),t.delete(a),t.size===0&&(e.outrogroups=null)}}else --o},!1)}if(o===0){var l=r.length===0&&n!==null;if(l){var u=n,d=u.parentNode;cn(d),d.append(u),e.items.clear()}Br(e,t,!l)}else a={pending:new Set(t),done:new Set},(e.outrogroups??=new Set).add(a)}function Br(e,t,n=!0){var r;if(e.pending.size>0){r=new Set;for(let t of e.pending.values())for(let n of t)r.add(e.items.get(n).e)}for(var i=0;i<t.length;i++){var a=t[i];r?.has(a)?(a.f|=oe,In(a,document.createDocumentFragment())):U(t[i],n)}}var Vr;function Hr(e,t,n,r,i,o=null){var s=e,l=new Map;if(t&4){var u=e;s=T?O(z(u)):u.appendChild(R())}T&&Ie();var d=null,f=Rt(()=>{var e=n();return a(e)?e:e==null?[]:c(e)}),p,m=new Map,h=!0;function g(e){v.effect.f&16384||(v.pending.delete(e),v.fallback=d,Wr(v,p,s,t,r),d!==null&&(p.length===0?d.f&33554432?(d.f^=oe,Kr(d,null,s)):Pn(d):Mn(d,()=>{d=null})))}function _(e){v.pending.delete(e)}var v={effect:Tn(()=>{p=J(f);var e=p.length;let a=!1;T&&ze(s)===`[!`!=(e===0)&&(s=Re(),O(s),E(!1),a=!0);for(var c=new Set,u=M,v=ln(),y=0;y<e;y+=1){T&&D.nodeType===8&&D.data===`]`&&(s=D,a=!0,E(!1));var b=p[y],x=r(b,y),S=h?null:l.get(x);S?(S.v&&Yt(S.v,b),S.i&&Yt(S.i,y),v&&u.unskip_effect(S.e)):(S=Gr(l,h?s:Vr??=R(),b,x,y,i,t,n),h||(S.e.f|=oe),l.set(x,S)),c.add(x)}if(e===0&&o&&!d&&(h?d=En(()=>o(s)):(d=En(()=>o(Vr??=R())),d.f|=oe)),e>c.size&&Se(``,``,``),T&&e>0&&O(Re()),!h)if(m.set(u,c),v){for(let[e,t]of l)c.has(e)||u.skip_effect(t.e);u.oncommit(g),u.ondiscard(_)}else g(u);a&&E(!0),J(f)}),flags:t,items:l,pending:m,outrogroups:null,fallback:d};h=!1,T&&(s=D)}function Ur(e){for(;e!==null&&!(e.f&32);)e=e.next;return e}function Wr(e,t,n,r,i){var a=(r&8)!=0,o=t.length,s=e.items,l=Ur(e.effect.first),u,d=null,f,p=[],m=[],h,g,_,v;if(a)for(v=0;v<o;v+=1)h=t[v],g=i(h,v),_=s.get(g).e,_.f&33554432||(_.nodes?.a?.measure(),(f??=new Set).add(_));for(v=0;v<o;v+=1){if(h=t[v],g=i(h,v),_=s.get(g).e,e.outrogroups!==null)for(let t of e.outrogroups)t.pending.delete(_),t.done.delete(_);if(_.f&8192&&(Pn(_),a&&(_.nodes?.a?.unfix(),(f??=new Set).delete(_))),_.f&33554432)if(_.f^=oe,_===l)Kr(_,null,n);else{var y=d?d.next:l;_===e.effect.last&&(e.effect.last=_.prev),_.prev&&(_.prev.next=_.next),_.next&&(_.next.prev=_.prev),qr(e,d,_),qr(e,_,y),Kr(_,y,n),d=_,p=[],m=[],l=Ur(d.next);continue}if(_!==l){if(u!==void 0&&u.has(_)){if(p.length<m.length){var b=m[0],x;d=b.prev;var S=p[0],C=p[p.length-1];for(x=0;x<p.length;x+=1)Kr(p[x],b,n);for(x=0;x<m.length;x+=1)u.delete(m[x]);qr(e,S.prev,C.next),qr(e,d,S),qr(e,C,b),l=b,d=C,--v,p=[],m=[]}else u.delete(_),Kr(_,l,n),qr(e,_.prev,_.next),qr(e,_,d===null?e.effect.first:d.next),qr(e,d,_),d=_;continue}for(p=[],m=[];l!==null&&l!==_;)(u??=new Set).add(l),m.push(l),l=Ur(l.next);if(l===null)continue}_.f&33554432||p.push(_),d=_,l=Ur(_.next)}if(e.outrogroups!==null){for(let t of e.outrogroups)t.pending.size===0&&(Br(e,c(t.done)),e.outrogroups?.delete(t));e.outrogroups.size===0&&(e.outrogroups=null)}if(l!==null||u!==void 0){var w=[];if(u!==void 0)for(_ of u)_.f&8192||w.push(_);for(;l!==null;)!(l.f&8192)&&l!==e.fallback&&w.push(l),l=Ur(l.next);var ee=w.length;if(ee>0){var te=r&4&&o===0?n:null;if(a){for(v=0;v<ee;v+=1)w[v].nodes?.a?.measure();for(v=0;v<ee;v+=1)w[v].nodes?.a?.fix()}zr(e,w,te)}}a&&Ze(()=>{if(f!==void 0)for(_ of f)_.nodes?.a?.apply()})}function Gr(e,t,n,r,i,a,o,s){var c=o&1?o&16?qt(n):Jt(n,!1,!1):null,l=o&2?qt(i):null;return{v:c,i:l,e:En(()=>(a(t,c??n,l??i,s),()=>{e.delete(r)}))}}function Kr(e,t,n){if(e.nodes)for(var r=e.nodes.start,i=e.nodes.end,a=t&&!(t.f&33554432)?t.nodes.start:n;r!==null;){var o=on(r);if(a.before(r),r===i)return;r=o}}function qr(e,t,n){t===null?e.effect.first=n:t.next=n,n===null?e.effect.last=t:n.prev=t}function Jr(t,n,a=!1,o=!1,s=!1,c=!1){var l=t,u=``;if(a){var d=t;T&&(l=O(z(d)))}H(()=>{var t=G;if(u===(u=n()??``)){T&&Ie();return}if(a&&!T){t.nodes=null,d.innerHTML=u,u!==``&&xr(z(d),d.lastChild);return}if(t.nodes!==null&&(An(t.nodes.start,t.nodes.end),t.nodes=null),u!==``){if(T){for(var c=D.data,f=Ie(),p=f;f!==null&&(f.nodeType!==8||f.data!==``);)p=f,f=on(f);if(f===null)throw Pe(),e;xr(D,p),l=O(f);return}var m=un(o?`svg`:s?`math`:`template`,o?r:s?i:void 0);m.innerHTML=u;var h=o||s?m:m.content;if(xr(z(h),h.lastChild),o||s)for(;z(h);)l.before(z(h));else l.before(h)}})}function Yr(e,t){Sn(()=>{var n=e.getRootNode(),r=n.host?n:n.head??n.ownerDocument.head;if(!r.querySelector(`#`+t.hash)){let e=un(`style`);e.id=t.hash,e.textContent=t.code,r.appendChild(e)}})}var Xr=[...`
3
+ \r\f\xA0\v`];function Zr(e,t,n){var r=e==null?``:``+e;if(t&&(r=r?r+` `+t:t),n){for(var i of Object.keys(n))if(n[i])r=r?r+` `+i:i;else if(r.length)for(var a=i.length,o=0;(o=r.indexOf(i,o))>=0;){var s=o+a;(o===0||Xr.includes(r[o-1]))&&(s===r.length||Xr.includes(r[s]))?r=(o===0?``:r.substring(0,o))+r.substring(s+1):o=s}}return r===``?null:r}function Qr(e,t=!1){var n=t?` !important;`:`;`,r=``;for(var i of Object.keys(e)){var a=e[i];a!=null&&a!==``&&(r+=` `+i+`: `+a+n)}return r}function $r(e){return e[0]!==`-`||e[1]!==`-`?e.toLowerCase():e}function ei(e,t){if(t){var n=``,r,i;if(Array.isArray(t)?(r=t[0],i=t[1]):r=t,e){e=String(e).replaceAll(/\s*\/\*.*?\*\/\s*/g,``).trim();var a=!1,o=0,s=!1,c=[];r&&c.push(...Object.keys(r).map($r)),i&&c.push(...Object.keys(i).map($r));var l=0,u=-1;let t=e.length;for(var d=0;d<t;d++){var f=e[d];if(s?f===`/`&&e[d-1]===`*`&&(s=!1):a?a===f&&(a=!1):f===`/`&&e[d+1]===`*`?s=!0:f===`"`||f===`'`?a=f:f===`(`?o++:f===`)`&&o--,!s&&a===!1&&o===0){if(f===`:`&&u===-1)u=d;else if(f===`;`||d===t-1){if(u!==-1){var p=$r(e.substring(l,u).trim());if(!c.includes(p)){f!==`;`&&d++;var m=e.substring(l,d).trim();n+=` `+m+`;`}}l=d+1,u=-1}}}}return r&&(n+=Qr(r)),i&&(n+=Qr(i,!0)),n=n.trim(),n===``?null:n}return e==null?null:String(e)}function ti(e,t,n,r,i,a){var o=e[he];if(T||o!==n||o===void 0){var s=Zr(n,r,a);(!T||s!==e.getAttribute(`class`))&&(s==null?e.removeAttribute(`class`):t?e.className=s:e.setAttribute(`class`,s)),e[he]=n}else if(a&&i!==a)for(var c in a){var l=!!a[c];(i==null||l!==!!i[c])&&e.classList.toggle(c,l)}return a}function ni(e,t={},n,r){for(var i in n){var a=n[i];t[i]!==a&&(n[i]==null?e.style.removeProperty(i):e.style.setProperty(i,a,r))}}function ri(e,t,n,r){var i=e[ge];if(T||i!==t){var a=ei(t,r);(!T||a!==e.getAttribute(`style`))&&(a==null?e.removeAttribute(`style`):e.style.cssText=a),e[ge]=t}else r&&(Array.isArray(r)?(ni(e,n?.[0],r[0]),ni(e,n?.[1],r[1],`important`)):ni(e,n,r));return r}var ii=Symbol(`is custom element`),ai=Symbol(`is html`),oi=ye?`link`:`LINK`;function Q(e,t,n,r){var i=si(e);T&&(i[t]=e.getAttribute(t),t===`src`||t===`srcset`||t===`href`&&e.nodeName===oi)||i[t]!==(i[t]=n)&&(t===`loading`&&(e[pe]=n),n==null?e.removeAttribute(t):typeof n!=`string`&&li(e).includes(t)?e[t]=n:e.setAttribute(t,n))}function si(e){return e[me]??={[ii]:e.nodeName.includes(`-`),[ai]:e.namespaceURI===n}}var ci=new Map;function li(e){var t=e.getAttribute(`is`)||e.nodeName,n=ci.get(t);if(n)return n;ci.set(t,n=[]);for(var r,i=e,a=Element.prototype;a!==i;){for(var o in r=f(i),r)r[o].set&&o!==`innerHTML`&&o!==`textContent`&&o!==`innerText`&&n.push(o);i=h(i)}return n}function ui(e,t){return e===t||e?.[de]===t}function di(e={},t,n,r){var i=A.r,a=G;return Sn(()=>{var o,s;return wn(()=>{o=s,s=r?.()||[],cr(()=>{ui(n(...s),e)||(t(e,...s),o&&ui(n(...o),e)&&t(null,...o))})}),()=>{let r=a;for(;r!==i&&r.parent!==null&&r.parent.f&33554432;)r=r.parent;let o=()=>{s&&ui(n(...s),e)&&t(null,...s)},c=r.teardown;r.teardown=()=>{o(),c?.()}}}),e}function $(e,t,n,r){var i=!We||(n&2)!=0,a=(n&8)!=0,o=(n&16)!=0,s=r,c=!0,l=void 0,u=()=>o&&i?(l??=Ft(r),J(l)):(c&&(c=!1,s=o?cr(r):r),s);let f;if(a){var p=de in e||fe in e;f=d(e,t)?.set??(p&&t in e?n=>e[t]=n:void 0)}var m,h=!1;a?[m,h]=st(()=>e[t]):m=e[t],m===void 0&&r!==void 0&&(m=u(),f&&(i&&Oe(t),f(m)));var g=i?()=>{var n=e[t];return n===void 0?u():(c=!0,n)}:()=>{var n=e[t];return n!==void 0&&(s=void 0),n===void 0?s:n};if(i&&!(n&4))return g;if(f){var _=e.$$legacy;return(function(e,t){return arguments.length>0?((!i||!t||_||h)&&f(t?g():e),e):g()})}var v=!1,y=(n&1?Ft:Rt)(()=>(v=!1,g()));a&&J(y);var b=G;return(function(e,t){if(arguments.length>0){let n=t?J(y):i&&a?$t(e):e;return L(y,n),v=!0,s!==void 0&&(s=n),e}return zn&&v||b.f&16384?y.v:J(y)})}function fi(e){return new pi(e)}var pi=class{#e;#t;constructor(e){var t=new Map,n=(e,n)=>{var r=Jt(n,!1,!1);return t.set(e,r),r};let r=new Proxy({...e.props||{},$$events:{}},{get(e,r){return J(t.get(r)??n(r,Reflect.get(e,r)))},has(e,r){return r===fe?!0:(J(t.get(r)??n(r,Reflect.get(e,r))),Reflect.has(e,r))},set(e,r,i){return L(t.get(r)??n(r,i),i),Reflect.set(e,r,i)}});this.#t=(e.hydrate?kr:Or)(e.component,{target:e.target,anchor:e.anchor,props:r,context:e.context,intro:e.intro??!1,recover:e.recover,transformError:e.transformError}),!Ue&&(!e?.props?.$$host||e.sync===!1)&&P(),this.#e=r.$$events;for(let e of Object.keys(this.#t))e===`$set`||e===`$destroy`||e===`$on`||u(this,e,{get(){return this.#t[e]},set(t){this.#t[e]=t},enumerable:!0});this.#t.$set=e=>{Object.assign(r,e)},this.#t.$destroy=()=>{Nr(this.#t)}}$set(e){this.#t.$set(e)}$on(e,t){this.#e[e]=this.#e[e]||[];let n=(...e)=>t.call(this,...e);return this.#e[e].push(n),()=>{this.#e[e]=this.#e[e].filter(e=>e!==n)}}$destroy(){this.#t.$destroy()}},mi;typeof HTMLElement==`function`&&(mi=class extends HTMLElement{$$ctor;$$s;$$c;$$cn=!1;$$d={};$$r=!1;$$p_d={};$$l={};$$l_u=new Map;$$me;$$shadowRoot=null;constructor(e,t,n){super(),this.$$ctor=e,this.$$s=t,n&&(this.$$shadowRoot=this.attachShadow(n))}addEventListener(e,t,n){if(this.$$l[e]=this.$$l[e]||[],this.$$l[e].push(t),this.$$c){let n=this.$$c.$on(e,t);this.$$l_u.set(t,n)}super.addEventListener(e,t,n)}removeEventListener(e,t,n){if(super.removeEventListener(e,t,n),this.$$c){let e=this.$$l_u.get(t);e&&(e(),this.$$l_u.delete(t))}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){if(await Promise.resolve(),!this.$$cn||this.$$c)return;function e(e){return t=>{let n=un(`slot`);e!=="default"&&(n.name=e),X(t,n)}}let t={},n=gi(this);for(let r of this.$$s)r in n&&(r==="default"&&!this.$$d.children?(this.$$d.children=e(r),t.default=!0):t[r]=e(r));for(let e of this.attributes){let t=this.$$g_p(e.name);t in this.$$d||(this.$$d[t]=hi(t,e.value,this.$$p_d,`toProp`))}for(let e in this.$$p_d)!(e in this.$$d)&&this[e]!==void 0&&(this.$$d[e]=this[e],delete this[e]);this.$$c=fi({component:this.$$ctor,target:this.$$shadowRoot||this,props:{...this.$$d,$$slots:t,$$host:this}}),this.$$me=bn(()=>{wn(()=>{this.$$r=!0;for(let e of l(this.$$c)){if(!this.$$p_d[e]?.reflect)continue;this.$$d[e]=this.$$c[e];let t=hi(e,this.$$d[e],this.$$p_d,`toAttribute`);t==null?this.removeAttribute(this.$$p_d[e].attribute||e):this.setAttribute(this.$$p_d[e].attribute||e,t)}this.$$r=!1})});for(let e in this.$$l)for(let t of this.$$l[e]){let n=this.$$c.$on(e,t);this.$$l_u.set(t,n)}this.$$l={}}}attributeChangedCallback(e,t,n){this.$$r||(e=this.$$g_p(e),this.$$d[e]=hi(e,n,this.$$p_d,`toProp`),this.$$c?.$set({[e]:this.$$d[e]}))}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{!this.$$cn&&this.$$c&&(this.$$c.$destroy(),this.$$me(),this.$$c=void 0)})}$$g_p(e){return l(this.$$p_d).find(t=>this.$$p_d[t].attribute===e||!this.$$p_d[t].attribute&&t.toLowerCase()===e)||e}});function hi(e,t,n,r){let i=n[e]?.type;if(t=i===`Boolean`&&typeof t!=`boolean`?t!=null:t,!r||!n[e])return t;if(r===`toAttribute`)switch(i){case`Object`:case`Array`:return t==null?null:JSON.stringify(t);case`Boolean`:return t?``:null;case`Number`:return t??null;default:return t}else switch(i){case`Object`:case`Array`:return t&&JSON.parse(t);case`Boolean`:return t;case`Number`:return t==null?t:+t;default:return t}}function gi(e){let t={};return e.childNodes.forEach(e=>{t[e.slot||`default`]=!0}),t}function _i(e,t,n,r,i,a){let o=class extends mi{constructor(){super(e,n,i),this.$$p_d=t}static get observedAttributes(){return l(t).map(e=>(t[e].attribute||e).toLowerCase())}};return l(t).forEach(e=>{u(o.prototype,e,{get(){return this.$$c&&e in this.$$c?this.$$c[e]:this.$$d[e]},set(n){n=hi(e,n,t),this.$$d[e]=n;var r=this.$$c;r&&(d(r,e)?.get?r[e]=n:r.$set({[e]:n}))}})}),r.forEach(e=>{u(o.prototype,e,{get(){return this.$$c?.[e]}})}),a&&(o=a(o)),e.element=o,o}var vi=class e extends CustomEvent{static{this.TYPE=`model-set`}constructor(t,n,r){super(e.TYPE,{bubbles:!0,composed:!0,detail:{complete:n,component:t,hasModel:r}}),this.component=t,this.complete=n}},yi=class e extends CustomEvent{static{this.TYPE=`session-changed`}constructor(t,n){super(e.TYPE,{bubbles:!0,composed:!0,detail:{complete:n,component:t}}),this.component=t,this.complete=n}},bi=e=>{let t=e;return t?typeof t.onSessionChange==`function`||typeof t.onAudioStarted==`function`||typeof t.onAudioEnded==`function`:!1};function xi(e,t={}){let n=t.hostPredicate??bi,r=e;for(;r;){if(n(r))return r;r=r.parentElement}if(typeof document<`u`&&t.fallbackSelector){let e=document.querySelector(t.fallbackSelector);if(n(e))return e}return null}function Si({sourceEl:e,fallbackSelector:t,component:n,complete:r,session:i}){let a=xi(e,{fallbackSelector:t});return a?typeof a.onSessionChange==`function`?(a.onSessionChange(i),a):(a.dispatchEvent(new yi(n,r)),a):null}var Ci=`https://cdn.jsdelivr.net/npm/mathjax@4/tex-chtml.js`,wi=null;function Ti(e){return typeof window>`u`||window.MathJax?.version?Promise.resolve():wi||(wi=new Promise((t,n)=>{let{useSingleDollar:r=!1,accessibility:i=!0,loadFonts:a=!0,srcUrl:o}=e,s={loader:{load:i?[`a11y/assistive-mml`]:[]},tex:{packages:[`base`,`ams`,`autoload`],macros:{parallelogram:`\\lower.2em{\\Huge\\unicode{x25B1}}`,overarc:`\\overparen`,napprox:`\\not\\approx`,longdiv:`\\enclose{longdiv}`}},options:{enableMenu:i,enableExplorer:i,enableAssistiveMml:i},startup:{ready:()=>{window.MathJax?.startup.defaultReady&&(window.MathJax.startup.defaultReady(),t())},defaultReady:()=>{}}};r&&s.tex&&(s.tex.inlineMath=[[`$`,`$`],[`\\(`,`\\)`]],s.tex.processEscapes=!0),a||(s.chtml={fontURL:``}),window.MathJax=s;let c=document.createElement(`script`);c.src=o||Ci,c.async=!0,c.onload=()=>{setTimeout(t,100)},c.onerror=()=>{n(Error(`Failed to load MathJax`))},document.head.appendChild(c)}),wi)}function Ei(){let e=window.MathJax?.startup?.document;if(typeof e?.assistiveMml==`function`)try{e.assistiveMml().updateDocument?.()}catch(e){console.warn(`[mathjax-renderer] Failed to attach assistive MathML:`,e)}}function Di(e={}){return async t=>{if(await Ti(e),!window.MathJax?.typesetPromise){console.warn(`[mathjax-renderer] MathJax not loaded or missing typesetPromise.`);return}await window.MathJax.typesetPromise([t]),Ei()}}var Oi=null;function ki(){return Oi||=Di({accessibility:!0,useSingleDollar:!0}),Oi}var Ai=async e=>{if(typeof window>`u`)return;let t=typeof e==`string`,n;return t?(n=document.createElement(`div`),n.innerHTML=e):n=e||document.body,await ki()(n),t?n.innerHTML:void 0};function ji(e){return(e||``).replace(/<[^>]+>/g,` `).replace(/\s+/g,` `).trim()}function Mi(e){let t=(e.imageAlt??``).trim();return(e.imageUrl??``).trim()&&t?t:ji(e.label??``)||`Tile`}var Ni=Y(`<img alt="" class="tile-img svelte-1hgaksk" aria-hidden="true" draggable="false"/>`),Pi=Y(`<span></span>`),Fi=Y(`<span class="badge badge-correct svelte-1hgaksk" aria-hidden="true"><svg viewBox="0 0 24 24" width="14" height="14" fill="currentColor"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"></path></svg></span>`),Ii=Y(`<span class="badge badge-incorrect svelte-1hgaksk" aria-hidden="true"><svg viewBox="0 0 24 24" width="14" height="14" fill="currentColor"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"></path></svg></span>`),Li=Y(`<button type="button"><span><!> <!></span> <!></button>`),Ri={hash:`svelte-1hgaksk`,code:`.venn-tile.svelte-1hgaksk {position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:44px;padding:8px 14px;border:1.5px solid #334155;border-radius:10px;background:#ffffff;color:#0f172a;font-size:14px;font-weight:500;box-shadow:0 1px 2px rgba(15, 23, 42, 0.06);cursor:grab;touch-action:none;user-select:none;transition:box-shadow 120ms ease, transform 120ms ease, background 120ms ease;}.venn-tile.svelte-1hgaksk:focus-visible,
4
+ .venn-tile.focused.svelte-1hgaksk {outline:2px solid #2563eb;outline-offset:2px;}.venn-tile.svelte-1hgaksk:hover:not(:disabled) {background:#f8fafc;}.venn-tile.held.svelte-1hgaksk {cursor:grabbing;box-shadow:0 6px 18px rgba(15, 23, 42, 0.18);transform:translateY(-1px);background:#eef2ff;}.venn-tile.invisible.svelte-1hgaksk {visibility:hidden;}.venn-tile.ghost.svelte-1hgaksk {pointer-events:none;cursor:grabbing;box-shadow:0 10px 24px rgba(15, 23, 42, 0.22);transform:rotate(-1.5deg);background:#ffffff;opacity:0.96;}.venn-tile.correct.svelte-1hgaksk {border-color:#0ea449;}.venn-tile.incorrect.svelte-1hgaksk {border-color:#bf0d00;}.venn-tile.svelte-1hgaksk:disabled {cursor:default;}.tile-body.svelte-1hgaksk {display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;pointer-events:none;max-width:220px;}.tile-body-image.svelte-1hgaksk {flex-direction:column;gap:4px;}.tile-img.svelte-1hgaksk {width:40px;height:40px;object-fit:contain;flex-shrink:0;}.tile-label.svelte-1hgaksk {pointer-events:none;text-align:center;line-height:1.25;word-break:break-word;}.tile-label-below.svelte-1hgaksk {font-size:12px;font-weight:600;}.badge.svelte-1hgaksk {position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#ffffff;}.badge-correct.svelte-1hgaksk {background:#0ea449;}.badge-incorrect.svelte-1hgaksk {background:#bf0d00;}
5
+ @media (prefers-reduced-motion: reduce) {.venn-tile.svelte-1hgaksk {transition:none;}
6
+ }`};function zi(e,t){Ke(t,!0),Yr(e,Ri);let n=$(t,`id`,7),r=$(t,`label`,7),i=$(t,`imageUrl`,7),a=$(t,`imageAlt`,7),o=$(t,`correctness`,7,`neutral`),s=$(t,`held`,7,!1),c=$(t,`invisible`,7,!1),l=$(t,`ghost`,7,!1),u=$(t,`disabled`,7,!1),d=$(t,`focused`,7,!1),f=$(t,`onpointerdown`,7),p=$(t,`onkeydown`,7),m=$(t,`onfocus`,7),h=$(t,`onclick`,7),g=F(()=>Mi({label:r(),imageUrl:i(),imageAlt:a()})),_=F(()=>!!(i()??``).trim()),v=F(()=>!!(r()??``).replace(/<[^>]*>/g,``).trim());var y={get id(){return n()},set id(e){n(e),P()},get label(){return r()},set label(e){r(e),P()},get imageUrl(){return i()},set imageUrl(e){i(e),P()},get imageAlt(){return a()},set imageAlt(e){a(e),P()},get correctness(){return o()},set correctness(e=`neutral`){o(e),P()},get held(){return s()},set held(e=!1){s(e),P()},get invisible(){return c()},set invisible(e=!1){c(e),P()},get ghost(){return l()},set ghost(e=!1){l(e),P()},get disabled(){return u()},set disabled(e=!1){u(e),P()},get focused(){return d()},set focused(e=!1){d(e),P()},get onpointerdown(){return f()},set onpointerdown(e){f(e),P()},get onkeydown(){return p()},set onkeydown(e){p(e),P()},get onfocus(){return m()},set onfocus(e){m(e),P()},get onclick(){return h()},set onclick(e){h(e),P()}},b=Li();let x;var S=B(b);let C;var w=B(S),ee=e=>{var t=Ni();H(()=>Q(t,`src`,i())),X(e,t)};Z(w,e=>{J(_)&&e(ee)});var te=V(w,2),ne=e=>{var t=Pi();let n;Jr(t,r,!0),k(t),H(()=>n=ti(t,1,`tile-label svelte-1hgaksk`,null,n,{"tile-label-below":J(_)})),X(e,t)};Z(te,e=>{J(v)&&e(ne)}),k(S);var re=V(S,2),ie=e=>{X(e,Fi())},ae=e=>{X(e,Ii())};return Z(re,e=>{o()===`correct`?e(ie):o()===`incorrect`&&e(ae,1)}),k(b),H(()=>{x=ti(b,1,`venn-tile svelte-1hgaksk`,null,x,{held:s(),focused:d(),invisible:c(),ghost:l(),correct:o()===`correct`,incorrect:o()===`incorrect`}),Q(b,`data-tile-id`,n()),Q(b,`aria-label`,J(g)),Q(b,`aria-pressed`,s()),Q(b,`aria-hidden`,l()),b.disabled=u(),Q(b,`tabindex`,l()||u()?-1:0),C=ti(S,1,`tile-body svelte-1hgaksk`,null,C,{"tile-body-image":J(_)})}),mr(`pointerdown`,b,function(...e){f()?.apply(this,e)}),mr(`keydown`,b,function(...e){p()?.apply(this,e)}),pr(`focus`,b,function(...e){m()?.apply(this,e)}),mr(`click`,b,function(...e){h()?.apply(this,e)}),X(e,b),qe(y)}hr([`pointerdown`,`keydown`,`click`]),_i(zi,{id:{},label:{},imageUrl:{},imageAlt:{},correctness:{},held:{},invisible:{},ghost:{},disabled:{},focused:{},onpointerdown:{},onkeydown:{},onfocus:{},onclick:{}},[],[],{mode:`open`});var Bi=Y(`<div role="region" data-region-key="tray"><div class="tray-label svelte-1ogsh8s"> </div> <div class="tray-items svelte-1ogsh8s"><!></div></div>`),Vi={hash:`svelte-1ogsh8s`,code:`.venn-tray.svelte-1ogsh8s {border:1.5px dashed #94a3b8;border-radius:12px;padding:14px 16px;background:#f8fafc;min-height:120px;transition:background 120ms ease, border-color 120ms ease;}.venn-tray.drop-target.svelte-1ogsh8s {background:#e0f2fe;border-color:#0ea5e9;}.venn-tray.focused.svelte-1ogsh8s {outline:2px solid #2563eb;outline-offset:2px;}.tray-label.svelte-1ogsh8s {font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px;}.tray-items.svelte-1ogsh8s {display:flex;flex-wrap:wrap;gap:10px;}
7
+ @media (prefers-reduced-motion: reduce) {.venn-tray.svelte-1ogsh8s {transition:none;}
8
+ }`};function Hi(e,t){Ke(t,!0),Yr(e,Vi);let n=$(t,`isDropTarget`,7,!1),r=$(t,`focused`,7,!1),i=$(t,`label`,7,`Tiles to classify`),a=$(t,`onpointerenter`,7),o=$(t,`onpointerleave`,7),s=$(t,`children`,7);var c={get isDropTarget(){return n()},set isDropTarget(e=!1){n(e),P()},get focused(){return r()},set focused(e=!1){r(e),P()},get label(){return i()},set label(e=`Tiles to classify`){i(e),P()},get onpointerenter(){return a()},set onpointerenter(e){a(e),P()},get onpointerleave(){return o()},set onpointerleave(e){o(e),P()},get children(){return s()},set children(e){s(e),P()}},l=Bi();let u;var d=B(l),f=B(d,!0);k(d);var p=V(d,2),m=B(p),h=e=>{var t=wr();Fr(sn(t),s),X(e,t)};return Z(m,e=>{s()&&e(h)}),k(p),k(l),H(()=>{u=ti(l,1,`venn-tray svelte-1ogsh8s`,null,u,{"drop-target":n(),focused:r()}),Q(l,`aria-label`,i()),Dr(f,i())}),pr(`pointerenter`,l,function(...e){a()?.apply(this,e)}),pr(`pointerleave`,l,function(...e){o()?.apply(this,e)}),X(e,l),qe(c)}_i(Hi,{isDropTarget:{},focused:{},label:{},onpointerenter:{},onpointerleave:{},children:{}},[],[],{mode:`open`});function Ui(e){return!e||e.length===0?``:[...e].sort((e,t)=>e-t).join(`,`)}function Wi(e){return!e||e.length===0?[]:[...e].sort((e,t)=>e-t)}function Gi(e){let t=[],n=1<<e;for(let r=0;r<n;r++){let n=[];for(let t=0;t<e;t++)r&1<<t&&n.push(t);t.push(n)}return t}function Ki(e,t){let n=Wi(t),r=n.map(t=>e[t]?.label??`Set ${t+1}`),i=e.length;return n.length===0?i===2?`Neither ${e[0]?.label??`Set 1`} nor ${e[1]?.label??`Set 2`}`:`None of ${e.map((e,t)=>e?.label??`Set ${t+1}`).join(`, `)}`:n.length===1?`${r[0]} only`:r.join(` and `)}function qi(e,t){let n=Ui(t),r=e.regionLabels?.[n];return typeof r==`string`&&r.trim().length>0?r:Ki(e.circles??[],t)}function Ji(){return{width:900,height:540,outsideGap:20,outsideStripHeight:140,circles:[{cx:340,cy:210,r:170},{cx:560,cy:210,r:170}]}}function Yi(e,t){return(n,r,i)=>{let a=n%t,o=Math.floor(n/t),s=t*r+(t-1)*8;return{x:e.x-s/2+r/2+a*(r+8),y:e.y+o*(i+8)}}}function Xi(e,t=Ji()){if(!e.circles||e.circles.length!==2)throw Error(`buildLayout2Set requires exactly 2 circles (got ${e.circles?.length??0})`);let[n,r]=t.circles,i=Gi(2),a=Math.max(n.cy+n.r,r.cy+r.r),o=Math.min(t.height-t.outsideStripHeight,a+t.outsideGap),s=(e,t,n)=>(r,i)=>{let a=r-e,o=i-t;return a*a+o*o<=n*n},c=s(n.cx,n.cy,n.r),l=s(r.cx,r.cy,r.r),u=r.cx-r.r,d=n.cx+n.r,f=(u+d)/2,p={x:Math.max(0,n.cx-n.r-10),y:Math.max(0,n.cy-n.r),w:u-Math.max(0,n.cx-n.r-10),h:2*n.r},m={x:d,y:Math.max(0,r.cy-r.r),w:Math.min(t.width,r.cx+r.r+10)-d,h:2*r.r},h={x:u,y:Math.max(0,Math.min(n.cy,r.cy)-Math.min(n.r,r.r)),w:d-u,h:2*Math.min(n.r,r.r)},g={x:0,y:o,w:t.width,h:t.height-o},_={};return{geometry:t,regions:i.map(i=>{let a=Ui(i),s=qi(e,i),u,d,v,y;a===``?(u=(e,n)=>e>=0&&e<=t.width&&n>=0&&n<=t.height&&!c(e,n)&&!l(e,n),d=g,v={x:t.width/2,y:o+g.h/2},y=6):a===`0`?(u=(e,t)=>c(e,t)&&!l(e,t),d=p,v={x:n.cx-n.r/3,y:n.cy},y=1):a===`1`?(u=(e,t)=>l(e,t)&&!c(e,t),d=m,v={x:r.cx+r.r/3,y:r.cy},y=1):a===`0,1`?(u=(e,t)=>c(e,t)&&l(e,t),d=h,v={x:f,y:(n.cy+r.cy)/2},y=1):(u=()=>!1,d={x:0,y:0,w:0,h:0},v={x:0,y:0},y=1);let b={region:i,key:a,label:s,hitRect:d,pointInRegion:u,gridSlot:Yi(v,y)};return _[a]=b,b}),regionByKey:_,outsideStripTop:o}}function Zi(e,t,n){for(let r of[`0,1`,`0`,`1`,``]){let i=e.regionByKey[r];if(i?.pointInRegion(t,n))return i}return null}function Qi(e,t){if(!e||!Array.isArray(e.tiles)||e.tiles.length===0)return!1;let n=t?.placements??{};for(let t of e.tiles)if(n[t.id]==null)return!1;return!0}function $i({model:e,session:t,tileId:n,placement:r}){let i=t||{},a=i.placements??{},o=r===null?null:Wi(r),s={...a,[n]:o},c={...i,placements:s};return c.completed=Qi(e,c),c}function ea(e,t){let n=t?.placements??{};return(e.tiles||[]).filter(e=>n[e.id]==null)}function ta(e,t){let n=t?.placements??{},r={};for(let t of e.tiles||[]){let e=n[t.id];if(e==null)continue;let i=Wi(e).join(`,`);r[i]||(r[i]=[]),r[i].push(t)}return r}new Set([`$$slots`,`$$events`,`$$legacy`,`$$host`]);var na=Y(`<div class="venn-prompt prose svelte-gkcqor"></div>`),ra=Cr(`<svg class="toggle-icon svelte-gkcqor" preserveAspectRatio="xMinYMin meet" version="1.1" viewBox="-283 359 34 35" aria-hidden="true"><circle cx="-266" cy="375.9" r="14" fill="#bce2ff"></circle><path d="M-280.5,375.9c0-8,6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5s-6.5,14.5-14.5,14.5S-280.5,383.9-280.5,375.9z M-279.5,375.9c0,7.4,6.1,13.5,13.5,13.5c7.4,0,13.5-6.1,13.5-13.5s-6.1-13.5-13.5-13.5C-273.4,362.4-279.5,368.5-279.5,375.9z" fill="#bce2ff"></path><polygon points="-265.4,383.1 -258.6,377.2 -261.2,374.2 -264.3,376.9 -268.9,368.7 -272.4,370.6" fill="#1a9cff"></polygon></svg>`),ia=Cr(`<svg class="toggle-icon svelte-gkcqor" preserveAspectRatio="xMinYMin meet" version="1.1" viewBox="-129.5 127 34 35" aria-hidden="true"><path style="fill: #D0CAC5; stroke: #E6E3E0; stroke-width: 0.75; stroke-miterlimit: 10;" d="M-112.9,160.4c-8.5,0-15.5-6.9-15.5-15.5c0-8.5,6.9-15.5,15.5-15.5s15.5,6.9,15.5,15.5 C-97.4,153.5-104.3,160.4-112.9,160.4z"></path><path style="fill: #B3ABA4; stroke: #CDC7C2; stroke-width: 0.5; stroke-miterlimit: 10;" d="M-113.2,159c-8,0-14.5-6.5-14.5-14.5s6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5S-105.2,159-113.2,159z"></path><circle cx="-114.2" cy="143.5" r="14" fill="white"></circle><path d="M-114.2,158c-8,0-14.5-6.5-14.5-14.5s6.5-14.5,14.5-14.5s14.5,6.5,14.5,14.5S-106.2,158-114.2,158z M-114.2,130c-7.4,0-13.5,6.1-13.5,13.5s6.1,13.5,13.5,13.5s13.5-6.1,13.5-13.5S-106.8,130-114.2,130z" fill="#bce2ff"></path><polygon points="-114.8,150.7 -121.6,144.8 -119,141.8 -115.9,144.5 -111.3,136.3 -107.8,138.2" fill="#1a9cff"></polygon></svg>`),aa=Y(`<button type="button" class="toggle-correct svelte-gkcqor"><!> <span class="toggle-label svelte-gkcqor"> </span></button>`),oa=Cr(`<circle fill="rgba(14, 165, 233, 0.12)"></circle>`),sa=Cr(`<rect x="0" y="0" mask="url(#venn-mask-left-only)"></rect>`),ca=Cr(`<rect x="0" y="0" mask="url(#venn-mask-right-only)"></rect>`),la=Cr(`<circle clip-path="url(#venn-clip-left)"></circle>`),ua=Cr(`<rect x="0" y="0" mask="url(#venn-mask-outside)"></rect>`),da=Cr(`<circle fill="none" stroke="#1e293b" stroke-width="2.5"></circle>`),fa=Cr(`<text font-size="22" font-weight="600" fill="#0f172a"> </text>`),pa=Y(`<div class="region-aria svelte-gkcqor" role="region"></div>`),ma=Y(`<div class="tile-wrapper svelte-gkcqor"><!></div>`),ha=Y(`<div class="drag-ghost svelte-gkcqor"><!></div>`),ga=Y(`<div class="venn-root svelte-gkcqor"><!> <!> <div class="venn-diagram svelte-gkcqor"><svg preserveAspectRatio="xMidYMid meet" aria-hidden="true" class="svelte-gkcqor"><defs><mask id="venn-mask-left-only" maskUnits="userSpaceOnUse" x="0" y="0"><rect x="0" y="0" fill="black"></rect><circle fill="white"></circle><circle fill="black"></circle></mask><mask id="venn-mask-right-only" maskUnits="userSpaceOnUse" x="0" y="0"><rect x="0" y="0" fill="black"></rect><circle fill="white"></circle><circle fill="black"></circle></mask><clipPath id="venn-clip-left" clipPathUnits="userSpaceOnUse"><circle></circle></clipPath><mask id="venn-mask-outside" maskUnits="userSpaceOnUse" x="0" y="0"><rect x="0" y="0" fill="white"></rect><circle fill="black"></circle><circle fill="black"></circle></mask></defs><rect x="1" y="1" fill="#ffffff" stroke="#cbd5e1" stroke-width="1.5" rx="12"></rect><!><!><!><!><!><!><!><line x1="16" stroke="#cbd5e1" stroke-width="1" stroke-dasharray="4 6"></line></svg> <div class="region-labels svelte-gkcqor" aria-hidden="false"></div> <div class="placed-tiles svelte-gkcqor"></div></div> <!> <!> <div class="sr-only svelte-gkcqor" aria-live="polite" aria-atomic="true"></div></div>`),_a={hash:`svelte-gkcqor`,code:`.venn-root.svelte-gkcqor {display:flex;flex-direction:column;gap:16px;padding:16px;color:#0f172a;font-family:system-ui, -apple-system, Segoe UI, Roboto, sans-serif;}.venn-prompt.svelte-gkcqor {font-size:16px;line-height:1.5;}.venn-prompt.svelte-gkcqor p {margin:0 0 8px 0;}.toggle-correct.svelte-gkcqor {align-self:center;display:inline-flex;align-items:center;gap:8px;margin:0 0 4px 0;padding:0;background:transparent;border:0;color:inherit;font:inherit;font-size:14px;cursor:pointer;user-select:none;}.toggle-correct.svelte-gkcqor:focus-visible {outline:2px solid #2563eb;outline-offset:2px;border-radius:2px;}.toggle-icon.svelte-gkcqor {width:25px;height:25px;flex-shrink:0;}.toggle-label.svelte-gkcqor {line-height:1.2;}.toggle-correct.svelte-gkcqor:hover .toggle-label:where(.svelte-gkcqor),
9
+ .toggle-correct.svelte-gkcqor:focus-visible .toggle-label:where(.svelte-gkcqor) {text-decoration:underline;}.venn-diagram.svelte-gkcqor {position:relative;width:100%;
10
+ /*
11
+ * Keep the diagram "smart" about vertical space: it should not monopolise
12
+ * the viewport and force the tray below the fold.
13
+ * - aspect-ratio preserves the 3:2 geometry the SVG is tuned for
14
+ * - max-width keeps the diagram from dominating wide layouts
15
+ * - max-height (viewport-relative) shrinks it further in short windows
16
+ * so the prompt, toggle, and tray remain in view without scrolling
17
+ * whenever possible. The SVG uses preserveAspectRatio="xMidYMid meet",
18
+ * so when max-height wins the width reduces in lockstep.
19
+ */max-width:720px;aspect-ratio:900 / 540;max-height:min(60vh, 430px);margin:0 auto;}.venn-diagram.svelte-gkcqor svg:where(.svelte-gkcqor) {width:100%;height:100%;display:block;}.placed-tiles.svelte-gkcqor,
20
+ .region-labels.svelte-gkcqor {position:absolute;inset:0;pointer-events:none;}.tile-wrapper.svelte-gkcqor {position:absolute;transform:translate(-50%, -50%);pointer-events:auto;}.region-aria.svelte-gkcqor {position:absolute;width:1px;height:1px;transform:translate(-50%, -50%);opacity:0;pointer-events:none;}.sr-only.svelte-gkcqor {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;}.drag-ghost.svelte-gkcqor {position:fixed;top:0;left:0;transform:translate(-50%, -50%);pointer-events:none;z-index:1000;}`};function va(e,t){Ke(t,!0),Yr(e,_a);let n=null,r=null,i=null,a=null,o=I(!1),s=I(null),c=I(null),l=I(null),u=I(null),d=Ji(),f=F(()=>({circles:t?.model?.circles??[{label:`Set A`},{label:`Set B`}],tiles:t?.model?.tiles??[],regionLabels:t?.model?.regionLabels??{},scoringPolicy:`partialPerTile`,promptEnabled:!0})),p=F(()=>Xi(J(f),d)),m=F(()=>t?.model?.env?.mode===`evaluate`),h=F(()=>t?.model?.disabled===!0),g=F(()=>t?.model?.prompt??null),_=F(()=>C(t?.session,t?.model,J(o))),v=F(()=>({placements:J(_)})),y=F(()=>ta(J(f),J(v))),x=F(()=>ea(J(f),J(v))),S=F(()=>[`0`,`0,1`,`1`,``,`tray`]);function C(e,t,n){let r={...e?.placements??{}};if(n&&t?.correctRegionsById)for(let[e,n]of Object.entries(t.correctRegionsById))r[e]=n;return r}function w(e){a&&(a.textContent=``,requestAnimationFrame(()=>{a&&(a.textContent=e)}))}function ee(e,t){return{left:e/d.width*100,top:t/d.height*100}}function te(e,t){if(!r)return null;let n=r.getBoundingClientRect();if(n.width===0||n.height===0)return null;let i=(e-n.left)/n.width,a=(t-n.top)/n.height;return{x:i*d.width,y:a*d.height}}function ne(e,r){let i=$i({model:J(f),session:t?.session,tileId:e,placement:r});Si({sourceEl:n,fallbackSelector:`venn-classification`,component:`venn-classification`,session:i,complete:i.completed===!0})}function re(e){return e?(J(f).tiles||[]).find(t=>t.id===e)??null:null}function ie(e){return J(p).regionByKey[e]}function ae(e,t){if(J(h))return;t.preventDefault(),t.currentTarget.setPointerCapture?.(t.pointerId),L(s,e.id,!0),L(u,{x:t.clientX,y:t.clientY},!0),L(c,oe(t.clientX,t.clientY),!0),w(`Picked up ${Mi(e)}`);let n=e=>{L(u,{x:e.clientX,y:e.clientY},!0),L(c,oe(e.clientX,e.clientY),!0)},r=t=>{window.removeEventListener(`pointermove`,n),window.removeEventListener(`pointerup`,r),window.removeEventListener(`pointercancel`,r);let i=oe(t.clientX,t.clientY);L(s,null),L(u,null);let a=J(c);L(c,null);let o=i??a;if(o===null){w(`Cancelled`);return}if(o===`tray`){ne(e.id,null),w(`${Mi(e)} returned to tray`);return}let l=ie(o);if(!l){w(`Cancelled`);return}ne(e.id,l.region),w(`${Mi(e)} placed in ${l.label}`)};window.addEventListener(`pointermove`,n),window.addEventListener(`pointerup`,r),window.addEventListener(`pointercancel`,r)}function oe(e,t){if(se(e,t))return`tray`;let n=te(e,t);if(!n)return null;let r=Zi(J(p),n.x,n.y);return r?r.key:null}function se(e,t){let r=n?.querySelector(`[data-region-key="tray"]`);if(!r)return!1;let i=r.getBoundingClientRect();return e>=i.left&&e<=i.right&&t>=i.top&&t<=i.bottom}function ce(e,t){if(!J(h)){if(t.key===` `||t.key===`Enter`){if(t.preventDefault(),J(s)===e.id){let t=J(l);if(L(s,null),!t){w(`Cancelled`);return}if(t===`tray`){ne(e.id,null),w(`${Mi(e)} returned to tray`);return}let n=ie(t);if(!n)return;ne(e.id,n.region),w(`${Mi(e)} placed in ${n.label}`)}else L(s,e.id,!0),L(l,J(S)[0]??null,!0),w(`Picked up ${Mi(e)}. Use arrow keys to choose a region, then press Enter to commit.`);return}if(t.key===`Escape`&&J(s)===e.id){t.preventDefault(),L(s,null),L(l,null),w(`Cancelled`);return}if(J(s)===e.id&&(t.key===`ArrowLeft`||t.key===`ArrowRight`||t.key===`ArrowUp`||t.key===`ArrowDown`||t.key===`Tab`)){t.preventDefault();let e=J(l)??J(S)[0]??`0`,n=J(S).indexOf(e);n<0&&(n=0);let r=t.key===`ArrowLeft`||t.key===`ArrowUp`||t.key===`Tab`&&t.shiftKey?-1:1;n=(n+r+J(S).length)%J(S).length,L(l,J(S)[n],!0),w(`Drop target: ${(J(l)===`tray`?{label:`Tiles tray`}:ie(J(l)))?.label??`unknown`}`)}}}function le(e){if(!J(m)||J(o))return`neutral`;let n=t?.model?.correctness?.[e];return n===`correct`||n===`incorrect`||n===`unanswered`?n:`neutral`}function ue(){if(n)try{Ai(n)}catch(e){console.warn(`venn-classification: MathJax render failed`,e)}}Ir(()=>{ar().then(ue)}),vn(()=>{J(_),J(f).tiles?.length,ar().then(ue)});let de=F(()=>J(m)?Object.values(t?.model?.correctness??{}).filter(e=>e===`incorrect`||e===`unanswered`).length:0),fe=F(()=>J(s)===null?J(c)??null:J(c)??J(l)??null),pe=F(()=>J(fe)===`0`),me=F(()=>J(fe)===`1`),he=F(()=>J(fe)===`0,1`),ge=F(()=>J(fe)===``),_e=`rgba(37, 99, 235, 0.18)`,ve=F(()=>J(s)!==null&&J(u)!==null?re(J(s)):null);var ye=ga(),be=B(ye),xe=e=>{var t=na();Jr(t,()=>J(g),!0),k(t),X(e,t)};Z(be,e=>{J(g)&&e(xe)});var Se=V(be,2),Ce=e=>{var t=aa(),n=B(t),r=e=>{X(e,ra())},i=e=>{X(e,ia())};Z(n,e=>{J(o)?e(r):e(i,-1)});var a=V(n,2),s=B(a);k(a),k(t),H(()=>{Q(t,`aria-pressed`,J(o)),Dr(s,`${J(o)?`Hide`:`Show`} correct answer`)}),mr(`click`,t,()=>L(o,!J(o))),X(e,t)};Z(Se,e=>{J(m)&&J(de)>0&&e(Ce)});var we=V(Se,2),Te=B(we),Ee=B(Te),De=B(Ee),Oe=B(De),ke=V(Oe),Ae=V(ke);k(De);var je=V(De),Me=B(je),Ne=V(Me),Pe=V(Ne);k(je);var Fe=V(je),T=B(Fe);k(Fe);var E=V(Fe),D=B(E),O=V(D),Ie=V(O);k(E),k(Ee);var Le=V(Ee),Re=V(Le);Hr(Re,17,()=>d.circles,Rr,(e,t)=>{var n=oa();H(()=>{Q(n,`cx`,J(t).cx),Q(n,`cy`,J(t).cy),Q(n,`r`,J(t).r)}),X(e,n)});var ze=V(Re),Be=e=>{var t=sa();Q(t,`fill`,_e),H(()=>{Q(t,`width`,d.width),Q(t,`height`,d.height)}),X(e,t)};Z(ze,e=>{J(pe)&&e(Be)});var Ve=V(ze),He=e=>{var t=ca();Q(t,`fill`,_e),H(()=>{Q(t,`width`,d.width),Q(t,`height`,d.height)}),X(e,t)};Z(Ve,e=>{J(me)&&e(He)});var Ue=V(Ve),We=e=>{var t=la();Q(t,`fill`,_e),H(()=>{Q(t,`cx`,d.circles[1].cx),Q(t,`cy`,d.circles[1].cy),Q(t,`r`,d.circles[1].r)}),X(e,t)};Z(Ue,e=>{J(he)&&e(We)});var A=V(Ue),Ge=e=>{var t=ua();Q(t,`fill`,_e),H(()=>{Q(t,`width`,d.width),Q(t,`height`,d.height)}),X(e,t)};Z(A,e=>{J(ge)&&e(Ge)});var Je=V(A);Hr(Je,17,()=>d.circles,Rr,(e,t)=>{var n=da();H(()=>{Q(n,`cx`,J(t).cx),Q(n,`cy`,J(t).cy),Q(n,`r`,J(t).r)}),X(e,n)});var Ye=V(Je);Hr(Ye,17,()=>d.circles,Rr,(e,t,n)=>{var r=fa();Q(r,`text-anchor`,n===0?`start`:`end`);var i=B(r,!0);k(r),H((e,t)=>{Q(r,`x`,e),Q(r,`y`,t),Dr(i,J(f).circles[n]?.label??``)},[()=>n===0?Math.max(20,J(t).cx-J(t).r):Math.min(d.width-20,J(t).cx+J(t).r),()=>Math.max(26,J(t).cy-J(t).r-12)]),X(e,r)});var Xe=V(Ye);k(Te),di(Te,e=>i=e,()=>i);var Ze=V(Te,2);Hr(Ze,21,()=>J(p).regions,Rr,(e,t)=>{let n=F(()=>ee(J(t).hitRect.x+J(t).hitRect.w/2,J(t).hitRect.y+J(t).hitRect.h/2));var r=pa();H(()=>{Q(r,`aria-label`,J(t).label),Q(r,`data-region-key`,J(t).key),ri(r,`left: ${J(n).left??``}%; top: ${J(n).top??``}%;`)}),X(e,r)}),k(Ze);var Qe=V(Ze,2);Hr(Qe,21,()=>Object.entries(J(y)),Rr,(e,t)=>{var n=F(()=>b(J(t),2));let r=()=>J(n)[0],i=()=>J(n)[1],a=F(()=>J(p).regionByKey[r()]);var o=wr(),c=sn(o),l=e=>{var t=wr();Hr(sn(t),19,i,e=>e.id,(e,t,n)=>{let r=F(()=>J(a).gridSlot(J(n),132,68)),i=F(()=>ee(J(r).x,J(r).y));var o=ma(),c=B(o);{let e=F(()=>le(J(t).id)),n=F(()=>J(s)===J(t).id),r=F(()=>J(s)===J(t).id&&J(u)!==null);zi(c,{get id(){return J(t).id},get label(){return J(t).label},get imageUrl(){return J(t).imageUrl},get imageAlt(){return J(t).imageAlt},get correctness(){return J(e)},get held(){return J(n)},get invisible(){return J(r)},get disabled(){return J(h)},onpointerdown:e=>ae(J(t),e),onkeydown:e=>ce(J(t),e)})}k(o),H(()=>ri(o,`left: ${J(i).left??``}%; top: ${J(i).top??``}%;`)),X(e,o)}),X(e,t)};Z(c,e=>{J(a)&&e(l)}),X(e,o)}),k(Qe),k(we),di(we,e=>r=e,()=>r);var $e=V(we,2);{let e=F(()=>J(c)===`tray`||J(s)!==null&&J(l)===`tray`);Hi($e,{get isDropTarget(){return J(e)},label:`Tiles to classify`,children:(e,t)=>{var n=wr();Hr(sn(n),17,()=>J(x),e=>e.id,(e,t)=>{{let n=F(()=>J(s)===J(t).id),r=F(()=>J(s)===J(t).id&&J(u)!==null);zi(e,{get id(){return J(t).id},get label(){return J(t).label},get imageUrl(){return J(t).imageUrl},get imageAlt(){return J(t).imageAlt},correctness:`neutral`,get held(){return J(n)},get invisible(){return J(r)},get disabled(){return J(h)},onpointerdown:e=>ae(J(t),e),onkeydown:e=>ce(J(t),e)})}}),X(e,n)},$$slots:{default:!0}})}var et=V($e,2),tt=e=>{var t=ha();zi(B(t),{get id(){return J(ve).id},get label(){return J(ve).label},get imageUrl(){return J(ve).imageUrl},get imageAlt(){return J(ve).imageAlt},correctness:`neutral`,ghost:!0}),k(t),H(()=>ri(t,`left: ${J(u).x??``}px; top: ${J(u).y??``}px;`)),X(e,t)};Z(et,e=>{J(ve)&&J(u)&&e(tt)}),di(V(et,2),e=>a=e,()=>a),k(ye),di(ye,e=>n=e,()=>n),H(()=>{Q(Te,`viewBox`,`0 0 ${d.width??``} ${d.height??``}`),Q(De,`width`,d.width),Q(De,`height`,d.height),Q(Oe,`width`,d.width),Q(Oe,`height`,d.height),Q(ke,`cx`,d.circles[0].cx),Q(ke,`cy`,d.circles[0].cy),Q(ke,`r`,d.circles[0].r),Q(Ae,`cx`,d.circles[1].cx),Q(Ae,`cy`,d.circles[1].cy),Q(Ae,`r`,d.circles[1].r),Q(je,`width`,d.width),Q(je,`height`,d.height),Q(Me,`width`,d.width),Q(Me,`height`,d.height),Q(Ne,`cx`,d.circles[1].cx),Q(Ne,`cy`,d.circles[1].cy),Q(Ne,`r`,d.circles[1].r),Q(Pe,`cx`,d.circles[0].cx),Q(Pe,`cy`,d.circles[0].cy),Q(Pe,`r`,d.circles[0].r),Q(T,`cx`,d.circles[0].cx),Q(T,`cy`,d.circles[0].cy),Q(T,`r`,d.circles[0].r),Q(E,`width`,d.width),Q(E,`height`,d.height),Q(D,`width`,d.width),Q(D,`height`,d.height),Q(O,`cx`,d.circles[0].cx),Q(O,`cy`,d.circles[0].cy),Q(O,`r`,d.circles[0].r),Q(Ie,`cx`,d.circles[1].cx),Q(Ie,`cy`,d.circles[1].cy),Q(Ie,`r`,d.circles[1].r),Q(Le,`width`,d.width-2),Q(Le,`height`,d.height-2),Q(Xe,`x2`,d.width-16),Q(Xe,`y1`,J(p).outsideStripTop),Q(Xe,`y2`,J(p).outsideStripTop)}),X(e,ye),qe()}hr([`click`]),_i(va,{model:{type:`Object`},session:{type:`Object`}},[],[]);var ya=va.element;return class extends ya{_internalSession=null;_model=null;_isComplete=()=>Qi(this._model,this._internalSession);_dispatchModelSet=()=>{this.dispatchEvent(new vi(this.tagName.toLowerCase(),this._isComplete(),this._model!==void 0))};_dispatchSessionChanged=()=>{this.dispatchEvent(new yi(this.tagName.toLowerCase(),this._isComplete()))};set model(e){this._model=e,super.model=e,this._dispatchModelSet()}get model(){return this._model}set session(e){e!==this._internalSession&&(this._internalSession=e,super.session=e,this._dispatchSessionChanged())}get session(){return this._internalSession}onSessionChange=e=>{this._internalSession=e,super.session=e,this._dispatchSessionChanged()};connectedCallback(){super.connectedCallback(),this.onSessionChange=this.onSessionChange}}})();