isorite 0.3.0 → 0.5.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.
Files changed (62) hide show
  1. package/README.md +3 -3
  2. package/dist/core.js +4 -2
  3. package/dist/embed-worker.js +9 -4
  4. package/dist/main.js +7707 -7203
  5. package/docs/setup-for-agents.md +27 -2
  6. package/docs/setup.md +28 -2
  7. package/docs/terminal.md +16 -4
  8. package/package.json +1 -1
  9. package/plugin/tui.tsx +3 -77
  10. package/web/_app/immutable/assets/{0.IOi79DXH.css → 0.DNvf5eFW.css} +1 -1
  11. package/web/_app/immutable/chunks/-7PsQOY4.js +3 -0
  12. package/web/_app/immutable/chunks/B9vLu37F.js +1 -0
  13. package/web/_app/immutable/chunks/BAVeNK5c.js +20 -0
  14. package/web/_app/immutable/chunks/C1xA2mdF.js +1 -0
  15. package/web/_app/immutable/chunks/CQqNkDRK.js +1 -0
  16. package/web/_app/immutable/chunks/Cs9sQ8Oa.js +1 -0
  17. package/web/_app/immutable/chunks/{BNCmWi9e.js → D4Jg9Smi.js} +1 -1
  18. package/web/_app/immutable/chunks/{BN1DRYj2.js → DG2llOXe.js} +21 -21
  19. package/web/_app/immutable/chunks/DqVFJWdL.js +1 -0
  20. package/web/_app/immutable/chunks/{BZeALCyJ.js → HCrXwzvD.js} +1 -1
  21. package/web/_app/immutable/chunks/MjV3DsQW.js +1 -0
  22. package/web/_app/immutable/chunks/uID4v_1K.js +1 -0
  23. package/web/_app/immutable/entry/app.CR9ubCCo.js +2 -0
  24. package/web/_app/immutable/entry/start.D4DOZCP6.js +1 -0
  25. package/web/_app/immutable/nodes/0.BYXv43VP.js +26 -0
  26. package/web/_app/immutable/nodes/1.DGP71l35.js +1 -0
  27. package/web/_app/immutable/nodes/2.CxspTYRG.js +1 -0
  28. package/web/_app/immutable/nodes/3.ZTzs6oEI.js +1 -0
  29. package/web/_app/immutable/nodes/4.CeIGu2c2.js +2 -0
  30. package/web/_app/immutable/nodes/5.k1DmYkGm.js +5 -0
  31. package/web/_app/immutable/nodes/6.Q0yGno8p.js +1 -0
  32. package/web/_app/immutable/nodes/7.BJRu312o.js +1 -0
  33. package/web/_app/version.json +1 -1
  34. package/web/index.html +17 -20
  35. package/dist/tutorial/barnes_hut.py +0 -46
  36. package/dist/tutorial/sim.py +0 -29
  37. package/plugin/tour.ts +0 -74
  38. package/web/_app/immutable/assets/8.CFA9_nYZ.css +0 -1
  39. package/web/_app/immutable/assets/Tutorial.DOfsM49T.css +0 -1
  40. package/web/_app/immutable/chunks/-XH9wLvF.js +0 -1
  41. package/web/_app/immutable/chunks/B_AYGp9o.js +0 -1
  42. package/web/_app/immutable/chunks/BavLcJN1.js +0 -1
  43. package/web/_app/immutable/chunks/BcrJkegU.js +0 -1
  44. package/web/_app/immutable/chunks/BqrPWk6N.js +0 -20
  45. package/web/_app/immutable/chunks/Bze-M_kr.js +0 -3
  46. package/web/_app/immutable/chunks/CRzLMJPS.js +0 -1
  47. package/web/_app/immutable/chunks/Cr4-_2Vw.js +0 -1
  48. package/web/_app/immutable/chunks/D25FgEb3.js +0 -43
  49. package/web/_app/immutable/chunks/D8jeeZa0.js +0 -1
  50. package/web/_app/immutable/chunks/DHMLhlug.js +0 -1
  51. package/web/_app/immutable/chunks/DsnHcTIO.js +0 -1
  52. package/web/_app/immutable/entry/app.B9MdwZzs.js +0 -2
  53. package/web/_app/immutable/entry/start.gtQcHKDR.js +0 -1
  54. package/web/_app/immutable/nodes/0.DSajjyn5.js +0 -15
  55. package/web/_app/immutable/nodes/1.hmQ_l8t-.js +0 -1
  56. package/web/_app/immutable/nodes/2.Bu6Zvx8F.js +0 -1
  57. package/web/_app/immutable/nodes/3.DcSG1nNk.js +0 -1
  58. package/web/_app/immutable/nodes/4.QUhLgH4i.js +0 -2
  59. package/web/_app/immutable/nodes/5.D3JSWVyR.js +0 -5
  60. package/web/_app/immutable/nodes/6.CWfUNDww.js +0 -1
  61. package/web/_app/immutable/nodes/7.DmPPLDvb.js +0 -1
  62. package/web/_app/immutable/nodes/8.CwMTBog4.js +0 -486
@@ -0,0 +1,26 @@
1
+ import{A as e,B as t,D as n,E as r,G as i,H as a,I as o,J as s,K as c,L as l,M as u,N as d,O as f,P as p,Q as m,R as h,S as g,U as _,W as v,X as y,Y as b,Z as x,_ as S,b as C,c as w,ct as T,et as E,f as D,ft as O,h as k,i as A,j,k as M,l as N,lt as P,m as F,n as I,nt as L,ot as ee,p as R,q as z,rt as B,s as te,st as V,u as H,ut as ne,v as U,w as W,x as re,y as G,z as K}from"../chunks/-7PsQOY4.js";import{o as ie,t as ae}from"../chunks/HCrXwzvD.js";import"../chunks/xihTtKlq.js";import{a as oe,b as se,c as ce,i as le,o as q,r as ue,s as de,t as fe}from"../chunks/DG2llOXe.js";import{i as pe,t as J}from"../chunks/uID4v_1K.js";import{r as me,t as Y}from"../chunks/MjV3DsQW.js";import{i as X,n as Z,r as he,t as ge}from"../chunks/C1xA2mdF.js";import{t as _e}from"../chunks/D4Jg9Smi.js";import{t as ve}from"../chunks/Cs9sQ8Oa.js";import{n as ye,t as be}from"../chunks/B9vLu37F.js";var xe={type:`string`};({...xe}),{...xe},{...xe},{...xe},{...xe};var Se={type:`string`};({...Se}),{...Se},{...Se},{...Se},{...Se},{...Se},{...Se},{...Se},{...Se},{...Se},{...Se},{...Se},{...Se};var Ce=`The change is written at once, under your name: the person sees your words marked in the note, and can undo it from the browser. Use this, never edit or write, for any note of the knowledge base.`;`${Ce}`,`${Ce}`;var we=`physics`,Te=`integrators`,Ee=`algorithms`,De=`simulation`,Oe=(e,t)=>`${e}/${t}`;Oe(we,`newtons-law-of-gravitation`),Oe(we,`the-n-body-problem`),Oe(we,`units`),Oe(we,`energy-conservation`),Oe(we,`softening`),Oe(Te,`eulers-method`),Oe(Te,`leapfrog`),Oe(Te,`symplectic-integrators`),Oe(Te,`choosing-the-timestep`),Oe(Ee,`direct-summation`),Oe(Ee,`centre-of-mass`),Oe(Ee,`the-quadtree`),Oe(Ee,`barnes-hut`),Oe(Ee,`cost-and-accuracy`),Oe(De,`the-main-loop`),Oe(De,`initial-conditions`),Oe(De,`diagnostics`),Oe(De,`two-galaxies-colliding`);var ke=`$F = G m_1 m_2 / d^2 = 1 \\cdot \\tfrac12 \\cdot \\tfrac12 / 1 = \\tfrac14$.
2
+
3
+ Each accelerates at $a = F/m = \\tfrac14 / \\tfrac12$.
4
+
5
+ So each accelerates at $\\tfrac12$, towards the other.`,Ae=`$M = 1 + 2 + 1 = 4$.
6
+
7
+ $\\mathbf{R} = (1 \\cdot (0,0) + 2 \\cdot (3,0) + 1 \\cdot (0,4)) / 4 = (6, 4)/4$.
8
+
9
+ So $\\mathbf{R} = (1.5, 1)$, with $M = 4$.`,je=`The drift falls as $\\Delta t^2$; at $T/100$ it is a few parts in a million.
10
+
11
+ So $\\Delta t = 2\\pi/100 \\approx 0.06$ is enough.
12
+
13
+ Check: record $E$ every 100 steps and plot the drift; halve $\\Delta t$ and it should fall by four.`;[20,17,12,5,2].map(e=>({day:e,working:ke})),[6,4,2,1].map(e=>({day:e,working:Ae})),[11,7].map(e=>({day:e,working:je}));var Me=`surfaces`,Ne=`curvature`,Q=`global`,Pe=(e,t)=>`${e}/${t}`;Pe(Me,`regular-surfaces`),Pe(Me,`first-ff`),Pe(Me,`second-ff`),Pe(Me,`orientable`),Pe(Ne,`gaussian-curvature`),Pe(Ne,`egregium`),Pe(Ne,`gauss-equation`),Pe(Ne,`geodesic-curvature`),Pe(Q,`euler`);var Fe=Pe(Q,`gauss-bonnet`);Pe(Q,`triangulations`);var Ie=Pe(Q,`where-is-compactness-used`);Pe(Me,`why-ii-changes-sign`),Pe(Ne,`derivatives-when-f-is-zero`),Pe(Q,`kg-at-the-corners`);var Le=Pe(Q,`total-curvature-of-the-torus`),Re=Pe(Q,`angles-of-a-geodesic-triangle`);Pe(Q,`gauss-bonnet-and-the-mobius-band`),Pe(Ne,`curvature-of-a-sphere`),Pe(Ne,`curvature-of-the-saddle`),Pe(Ne,`the-cylinder-and-the-plane`),Pe(Ne,`k-from-e-and-g-alone`),Pe(Ne,`catenoid-and-helicoid`),Pe(Q,`chi-of-a-surface-of-genus-g`),`${Fe}${Le}${Fe}${Ie}${Re}`;var ze=O({load:()=>Be});async function Be(){return await Y.load(),{}}var Ve=/\]\(\/([^)\s#]+)\.md(?:#[^)\s]*)?(?:\s+"[^"]*")?\)/g,He=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),Ue=e=>e.split(`/`).map(encodeURIComponent).join(`/`);function We(e){let t=[];for(let n of e.matchAll(Ve)){let e=decodeURIComponent(n[1]);t.includes(e)||t.push(e)}return t}function Ge(e,t,n){let r=e.replace(/\s+$/,``),i=RegExp(`^\\[[^\\]\\n]*\\]\\(/[^)\\n]*\\.md\\)$`);return`${r}${!r||r.endsWith(`---`)?`
14
+
15
+ `:i.test(r.split(`
16
+ `).at(-1))?`
17
+ `:`
18
+
19
+ `}[${n.replace(/[[\]]/g,``)}](/${Ue(t)}.md)\n`}function Ke(e,t){let n=`\\[[^\\]\\n]*\\]\\(/${He(Ue(t))}\\.md\\)`,r=e.split(`
20
+ `),i=r.filter(e=>!RegExp(`^${n}$`).test(e.trim()));return i.length===r.length||We(i.join(`
21
+ `)).includes(t)?null:i.join(`
22
+ `).replace(/\n{3,}/g,`
23
+
24
+ `).replace(/\s+$/,``)+`
25
+ `}function qe(e){return(/^title:[ \t]*(.*)$/m.exec(e.split(/^---\s*$/m)[1]??``)?.[1]??``).trim().replace(/^(["'])(.*)\1$/,`$2`)}var Je=e=>e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}k`:`${Math.round(e/1e3)}k`,Ye=`isorite.atlas.drafts`,Xe=()=>{try{return JSON.parse(localStorage.getItem(Ye)??`{}`)}catch{return{}}},Ze=e=>Xe()[e]??null;function Qe(e,t,n){for(let r=1;;r++){let i=r===1?t:`${t}-${r}`;if(n([e,i].filter(Boolean).join(`/`)))return{slug:i,n:r}}}async function $e(e,t){let n=Y.listing.notes.map(e=>e.id),r=t.split(`/`).slice(0,-1).join(`/`),i=Qe(r,`untitled-${e}`,e=>!n.includes(e)),a=[r,i.slug].filter(Boolean).join(`/`),o=`Untitled ${e}${i.n===1?``:` ${i.n}`}`;return await Y.api.createNote(a,`---\ntype: ${e===`question`?`Question`:`Problem`}\ntitle: ${JSON.stringify(o)}\n${e===`question`?`about`:`uses`}: [${t}]\n---\n\n`),await Y.refresh(),X.fresh=a,await X.open(a,!0),a}var et=f(`<li class="svelte-1a0w8ls"><b class="num svelte-1a0w8ls"> </b><span class="t svelte-1a0w8ls"> </span><span class="faint"> </span></li>`),tt=f(`<span class="label over svelte-1a0w8ls"> </span>`),nt=f(`<div class="dock svelte-1a0w8ls" role="region" aria-label="Notes linked to the note for Iso"><i class="dia open" aria-hidden="true"></i> <div class="what svelte-1a0w8ls"><span class="name svelte-1a0w8ls"> </span> <span class="label" role="status"> </span></div> <ol class="grow svelte-1a0w8ls"></ol> <!> <a class="btn primary tall svelte-1a0w8ls">back to it</a></div>`);function rt(e,t){B(t,!0);let n=A(t,`notice`,3,``),i=m(()=>t.picked.reduce((e,t)=>e+t.tokens,0)),a=m(()=>p(i)>t.budget),o=m(()=>[`${t.picked.length} linked`,t.picked.length?`${Je(p(i))} tokens`:``,p(a)?`over ${Je(t.budget)}`:``,n()].filter(Boolean).join(` · `));var s=nt(),l=z(v(s),2),u=v(l),d=c(u,!0),f=z(u,2),h=c(f,!0);V(l);var _=z(l,2);G(_,23,()=>t.picked,e=>e.id,(e,t,n)=>{var i=et(),a=v(i),o=c(a,!0),s=z(a),l=c(s,!0),u=z(s),d=c(u,!0);V(i),K(e=>{W(o,p(n)+1),W(l,p(t).title),W(d,e)},[()=>Je(p(t).tokens)]),r(e,i)}),V(_);var y=z(_,2),b=e=>{var n=tt(),i=c(n);K(e=>W(i,`over ${e??``}: the last are cut short, or left for Iso to read itself`),[()=>Je(t.budget)]),r(e,n)};g(y,e=>{p(a)&&e(b)});var x=z(y,2);V(s),K(()=>{W(d,t.title||`a new note`),W(h,p(o)),H(x,`href`,t.href)}),r(e,s),L()}var $=new class{#e=y(``);get id(){return p(this.#e)}set id(e){b(this.#e,e,!0)}#t=y([]);get turns(){return p(this.#t)}set turns(e){b(this.#t,e)}#n=y(``);get streaming(){return p(this.#n)}set streaming(e){b(this.#n,e,!0)}#r=y(null);get retrying(){return p(this.#r)}set retrying(e){b(this.#r,e)}#i=y(``);get problem(){return p(this.#i)}set problem(e){b(this.#i,e,!0)}#a=y(null);get report(){return p(this.#a)}set report(e){b(this.#a,e)}#o=y(`chat`);get view(){return p(this.#o)}set view(e){b(this.#o,e,!0)}#s=y([]);get off(){return p(this.#s)}set off(e){b(this.#s,e)}#c=y(!1);get summing(){return p(this.#c)}set summing(e){b(this.#c,e,!0)}async toggle(e){if(this.problem=``,/^[rtb]:/.test(e.key)){if(!this.id)return;try{await Y.api.setContext(this.id,e.key,!e.on)}catch(e){this.problem=e.message}}else this.off=this.off.includes(e.key)?this.off.filter(t=>t!==e.key):[...this.off,e.key];this.measure()}takeOut(e){let t=e.given;if(!t)return;let n=q.parts.find(e=>e.kind===t.kind&&e.id===t.id&&(t.kind!==`passage`||e.kind===`passage`&&e.text===t.text));n&&q.remove(n),this.off=this.off.filter(t=>t!==e.key)}async compact(){if(!(!this.id||this.running||this.summing)){this.problem=``,this.summing=!0;try{await Y.api.compact(this.id)}catch(e){this.problem=e.message}finally{this.summing=!1}this.measure()}}async branch(){if(!(!this.id||this.running||this.summing)){this.problem=``,this.summing=!0;try{let{conversation:e}=await Y.api.branch(this.id);this.id=e,this.turns=[],this.streaming=``,this.off=this.off.filter(e=>!/^[rtb]:/.test(e))}catch(e){this.problem=e.message}finally{this.summing=!1}this.measure()}}sizeOf(e){let t=this.report?.given?.find(t=>t.kind===e.kind&&t.id===e.id&&(e.kind!==`passage`||t.text===e.text));return t?t.tokens:null}started=!1;timer;get running(){let e=this.turns.at(-1);return e?.state===`running`?e:null}start(){!this.started&&Y.api&&(this.started=!0,Y.api.conversation().then(e=>{e&&!this.id&&this.show(e)},()=>void 0),Y.on(e=>this.follow(e)),this.measure())}async again(e){if(this.problem=``,this.running||e.state!==`failed`)return!1;this.off=this.off.includes(e.id)?this.off:[...this.off,e.id];try{let{conversation:t}=await Y.api.converse({conversation:e.conversation,mode:e.mode,asked:e.asked,given:e.given,tier:e.tier,off:this.off});return this.id=t,!0}catch(e){return this.problem=e.message,!1}}show(e){this.id=e.id,this.turns=e.turns}fresh(){this.running||(this.id=``,this.turns=[],this.streaming=``,this.off=[],this.measure())}async send(e){if(this.problem=``,!e.trim()||this.running)return!1;try{let t=q.sent.map(e=>e.kind===`passage`?{kind:e.kind,id:e.id,text:e.text}:{kind:e.kind,id:e.id}),{conversation:n}=await Y.api.converse({...this.id?{conversation:this.id}:{},mode:X.mode,asked:e.trim(),given:t,tier:oe.tier,...this.off.length?{off:this.off}:{}});return this.id=n,!0}catch(e){return this.problem=e.message,!1}}async stop(){let e=this.running;e&&await Y.api.stop(e.id)}async undo(e){this.problem=``;try{await Y.api.undoTurn(this.id,e)}catch(e){this.problem=e.message}}async take(e,t){this.problem=``;try{await Y.api.takeItem(this.id,e,t)}catch(e){this.problem=e.message}}async answer(e,t){let n=this.running;n&&await Y.api.answer(n.id,e,t)}follow(e){if(e.type===`iso-start`&&e.place.form===`turn`){if(this.id&&e.place.conversation!==this.id)return;this.id=e.place.conversation,this.streaming=``,this.turns=[...this.turns.filter(t=>t.id!==e.request),{id:e.request,conversation:e.place.conversation,at:new Date().toISOString(),mode:e.place.mode,asked:e.asked,given:e.place.given,tier:e.tier,items:[],state:`running`}];return}if(!(`request`in e)){(e.type===`note-changed`||e.type===`journal`||e.type===`context`&&e.conversation===this.id)&&this.measure();return}let t=this.turns.findIndex(t=>t.id===e.request);if(t<0)return;let n=this.turns[t],r=e=>{this.turns=this.turns.map((n,r)=>r===t?e:n)};e.type===`iso-retry`?this.retrying={retry:e.retry,of:e.of}:(this.retrying=null,e.type===`iso-text`?this.streaming=e.again?e.delta:this.streaming+e.delta:e.type===`iso-item`?(e.item.kind===`text`&&(this.streaming=``),r({...n,items:[...n.items,e.item]})):e.type===`iso-taken`?r({...n,items:n.items.map(t=>t.kind===`question`&&t.id===e.item?{...t,made:e.note}:t.kind===`offer`&&t.id===e.item?{...t,taken:!0}:t)}):e.type===`iso-answer`?r({...n,items:n.items.map(t=>t.kind===`permission`&&t.id===e.permission?{...t,answer:e.decision}:t)}):e.type===`iso-done`?(r({...n,state:`done`,cost:e.cost}),this.streaming=``,this.measure()):e.type===`iso-stopped`?(r({...n,state:`stopped`,...this.streaming?{items:[...n.items,{kind:`text`,text:this.streaming}]}:{}}),this.streaming=``):e.type===`iso-failed`&&(r({...n,state:`failed`,message:e.message}),this.streaming=``))}measure(){clearTimeout(this.timer),this.timer=setTimeout(()=>{if(!Y.api)return;let e=q.sent.map(e=>e.kind===`passage`?{kind:e.kind,id:e.id,text:e.text}:{kind:e.kind,id:e.id});Y.api.turnContext({...this.id?{conversation:this.id}:{},mode:X.mode,given:e,tier:oe.tier,...this.off.length?{off:this.off}:{}}).then(e=>this.report=e,()=>void 0)},250)}},it=4.5,at=.04;function ot(e){let t=e.items.map(t=>{let n=[];for(let r=t.parent;r>=0;r=e.items[r].parent)n.push(r);return n}),n=e.items.map(()=>0);e.items.forEach((e,r)=>{if(e.kind===`note`)for(let e of t[r])n[e]++});let r=(t,n)=>{for(;e.items[t].parent!==n;)t=e.items[t].parent;return t},i=new Map(e.trunks.map((e,t)=>[`${e.a}|${e.b}`,t])),a=e.links.some(e=>e.s>=3)?3:2,o=e.trunks.map(()=>!1);for(let t of e.links){let e=t.s>=a?i.get(`${r(t.a,t.level)}|${r(t.b,t.level)}`):void 0;e!==void 0&&(o[e]=!0)}return{up:t,noteCount:n,strong:o,at:new Map(e.items.flatMap((e,t)=>e.kind===`note`?[[e.ref,t]]:[])),trunkAt:i,feederAt:new Map(e.feeders.map((e,t)=>[`${e.trunk}|${e.folder}|${e.item}`,t])),ownPath:new Map(e.trunks.flatMap(e=>e.pts?[[`${e.a}|${e.b}`,e.pts]]:[]))}}var st=new WeakMap;function ct(e){let t=st.get(e);return t||st.set(e,t={...e,trunks:e.highways.trunks,feeders:e.highways.feeders}),t}function lt(e,t){let n=[];return e.items.forEach((r,i)=>{let a=r.parent<0||n[r.parent]===`o`;n[i]=a?r.kind===`folder`&&e.cell*t>=1.2&&Math.max(r.w,r.h)*e.cell*t>=53?`o`:`s`:`-`}),n.join(``)}function ut(e,t,n){let r=e.up[n];for(let e=r.length-1;e>=0;e--)if(t[r[e]]!==`o`)return r[e];return n}function dt(e,t,n=[],r=!1){let i=e=>t[e]!==`-`,a=[];return e.trunks.forEach((t,r)=>{let o=e.items[t.a].kind===`folder`&&e.items[t.b].kind===`folder`;t.pts&&!t.implied&&i(t.a)&&i(t.b)&&a.push({key:`t`+r,pts:t.pts,lane:0,count:t.count,feed:!o,strong:n[r]??!0})}),e.feeders.forEach((o,s)=>{let c=e.trunks[o.trunk];(r||!o.leaf)&&!c.implied&&t[o.folder]===`o`&&i(o.item)&&i(c.a)&&i(c.b)&&a.push({key:`f`+s,pts:o.pts,lane:o.lane,count:o.count,feed:!0,strong:n[o.trunk]??!0})}),a}var ft=(e,t)=>Math.abs(e[0]-t[0])<1e-6&&Math.abs(e[1]-t[1])<1e-6;function pt(e,t,n,r){let i=new Set(t.up[r]),a=t.up[n].find(e=>i.has(e))??-1,o=e=>{let n=[e];for(let r of t.up[e]){if(r===a)break;n.push(r)}return n},s=o(n),c=o(r),l=t.trunkAt.get(`${s.at(-1)}|${c.at(-1)}`);if(l===void 0||!e.trunks[l].pts||s.length<2&&c.length<2)return null;let u=(t,n=0)=>{let r=e.feeders[t];if(r.via<0||n>40)return r.pts;let i=u(r.via,n+1),a=i.findIndex(e=>ft(e,r.pts.at(-1)));return a<0?r.pts:[...r.pts,...i.slice(a+1)]},d=e=>{let n=[];for(let r=0;r+1<e.length;r++){let i=t.feederAt.get(`${l}|${e[r+1]}|${e[r]}`);if(i===void 0)return null;n=n.concat(u(i))}return n},f=d(c),p=d(s);if(!f||!p)return null;let m=[...f,...e.trunks[l].pts,...p.reverse()];return m.filter((e,t)=>!t||!ft(e,m[t-1]))}var mt=[`uses`,`builds`,`requires`,`iso`];function ht(e,t=!1){let n=e=>`${Math.round(e[0]*100)},${Math.round(e[1]*100)}`,r=new Map,i=new Map;for(let t of e){let e=mt.indexOf(t.kind??`requires`),a=new Set;for(let o=1;o<t.pts.length;o++){let[s,c]=t.pts[o-1],[l,u]=t.pts[o],d=Math.max(1,Math.round(Math.max(Math.abs(l-s),Math.abs(u-c))*2));for(let o=0;o<d;o++){let f=[s+(l-s)*o/d,c+(u-c)*o/d],p=[s+(l-s)*(o+1)/d,c+(u-c)*(o+1)/d],m=n(f),h=n(p),g=m<h?m+`|`+h:h+`|`+m;if(m===h||a.has(g))continue;a.add(g);let _=r.get(g);if(!_){_=m<h?{a:m,b:h,A:f,B:p,count:0,strong:!1,trunk:!1,kind:0,fwd:[0,0,0,0],back:[0,0,0,0]}:{a:h,b:m,A:p,B:f,count:0,strong:!1,trunk:!1,kind:0,fwd:[0,0,0,0],back:[0,0,0,0]},r.set(g,_);for(let e of[_.a,_.b]){let t=i.get(e);t?t.push(g):i.set(e,[g])}}_.count+=t.count??1,_.strong||=t.strong??!0,_.trunk||=t.feed===!1,_.kind=Math.max(_.kind,e),(m===_.a?_.fwd:_.back)[e]+=1}}}let a=e=>t?`${e.kind}|${e.count}`:`${e.count}|${e.strong}|${e.trunk}`,o=(e,n)=>{let r=e.fwd[e.kind],i=e.back[e.kind];return!t||r&&i?0:(r?1:-1)*(n===e.a?1:-1)},s=(e,t)=>t===e.a?e.b:e.a,c=(e,t)=>t===e.a?e.A:e.B,l=(e,t,n)=>{let r=s(e,t);return a(e)===a(n)&&o(e,t)===o(n,r)},u=new Set,d=[],f=new Set,p=(e,t)=>{let p=e,m=t,h=r.get(m),g=[c(h,p)],_=o(h,p);for(;;){u.add(m);let e=s(h,p);g.push(c(h,e));let t=i.get(e).filter(e=>e!==m);if(t.length!==1||u.has(t[0])||!l(h,p,r.get(t[0])))break;p=e,m=t[0],h=r.get(m)}_<0&&g.reverse();let v=`${n(g[0])}>${n(g.at(-1))}:${a(h)}`;for(let e=2;f.has(v);e++)v=`${v.split(`#`)[0]}#${e}`;f.add(v),d.push({key:v,pts:g,count:h.count,strong:h.strong,trunk:h.trunk,kind:mt[h.kind],flow:+!!_})};for(let[e,t]of i)if(t.length!==2||!l(r.get(t[0]),s(r.get(t[0]),e),r.get(t[1])))for(let n of t)u.has(n)||p(e,n);for(let[e,t]of r)u.has(e)||p(t.a,e);return d}function gt(e,t,n,r){let i=[],a=[],o=new Set;for(let{a:s,b:c,kind:l}of r){let r=ut(t,n,s),u=ut(t,n,c),d=`${l}:${r}|${u}`;if(r===u||o.has(d))continue;o.add(d);let f=(n,i)=>r===s&&u===c?t.ownPath.get(`${n}|${i}`)??pt(e,t,n,i):t.ownPath.get(`${n}|${i}`)??null,p=f(r,u)??f(u,r)?.slice().reverse()??null;p?i.push({key:d,kind:l,pts:p}):a.push({key:d,kind:l,a:r,b:u})}return{fixed:i,asks:a}}function _t(e,t){if(!t)return e;let n=(e,t)=>{let n=t[0]-e[0],r=t[1]-e[1],i=Math.hypot(n,r)||1;return n/=i,r/=i,(n<-1e-6||Math.abs(n)<1e-6&&r<0)&&(n=-n,r=-r),[-r,n]};return e.map((r,i)=>{let a=i>0?n(e[i-1],r):n(r,e[i+1]),o=i<e.length-1?n(r,e[i+1]):a,s=1+a[0]*o[0]+a[1]*o[1];return s<.2?[r[0]+a[0]*t,r[1]+a[1]*t]:[r[0]+(a[0]+o[0])/s*t,r[1]+(a[1]+o[1])/s*t]})}function vt(e,t=0,n=7){let r=_t(e.map(([e,t])=>[e*n,t*n]),t*2.2),i=Math.min(n,10.5)*.9,a=r.filter((e,t)=>t===0||t===r.length-1||Math.abs((e[0]-r[t-1][0])*(r[t+1][1]-e[1])-(e[1]-r[t-1][1])*(r[t+1][0]-e[0]))>.001),o=e=>String(Math.round(e*10)/10),s=`M${o(a[0][0])} ${o(a[0][1])}`;for(let e=1;e<a.length-1;e++){let t=a[e-1],n=a[e],r=a[e+1],c=Math.hypot(n[0]-t[0],n[1]-t[1])||1,l=Math.hypot(r[0]-n[0],r[1]-n[1])||1;if(!(Math.abs((n[0]-t[0])*(r[0]-n[0])+(n[1]-t[1])*(r[1]-n[1]))<.001*c*l)){s+=`L${o(n[0])} ${o(n[1])}`;continue}let u=Math.min(i,c/2,l/2);s+=`L${o(n[0]-(n[0]-t[0])/c*u)} ${o(n[1]-(n[1]-t[1])/c*u)}L${o(n[0]+(r[0]-n[0])/l*u)} ${o(n[1]+(r[1]-n[1])/l*u)}`}let c=a.at(-1);return s+`L${o(c[0])} ${o(c[1])}`}function yt(e,t,n){let r=n?t[0]-e[0]:t[1]-e[1],i=n?t[1]-e[1]:t[0]-e[0],a=Math.abs(r),o=Math.abs(i),s=Math.sign(r),c=Math.sign(i),l=(t,r)=>n?[e[0]+t,e[1]+r]:[e[0]+r,e[1]+t];if(a>=o){let e=(a-o)/2;return[l(0,0),l(s*e,0),l(s*(e+o),c*o),l(r,i)]}let u=a/2;return[l(0,0),l(s*u,c*u),l(s*u,c*(o-u)),l(r,i)]}function bt(e,t,n,r=3,i=7){let a=Math.max(at,Math.min(r,.96*Math.min(t/((e.w+4)*i),n/((e.h+4)*i))));return{k:a,x:t/2-a*(e.gx+e.w/2)*i,y:n/2-a*(e.gy+e.h/2)*i}}function xt(e,t,n,r){let i=Math.max(at,Math.min(3,e.k*t)),a=i/e.k;return{k:i,x:n-(n-e.x)*a,y:r-(r-e.y)*a}}function St(e,t){let n=new Set,r=e=>({...e,children:e.children.flatMap(e=>e.kind===`dir`?[r(e)]:t(e.ref)?(n.add(e.ref),[]):[e])}),i=r(e.root);return n.size?{root:i,edges:e.edges.filter(([e,t])=>!n.has(e)&&!n.has(t))}:e}var Ct=1;function wt(e,t,n){if(!n.web&&!n.code)return[];let r=[];for(let i of e){let e=(t[i.ref]?.links??[]).filter(e=>n[e.kind]),a=Math.max(1,Math.floor((i.h+Ct)/4));e.forEach((e,t)=>{let n=Math.floor(t/a),o=t%a;r.push({key:`${i.ref} ${e.href}`,kind:e.kind,href:e.href,text:e.text,broken:!!e.broken,gx:i.gx+i.w+Ct+n*4,gy:i.gy+o*4})})}return r}var Tt=2;function Et(e){let{W:t,H:n,items:r}=e,i=new Int8Array(t*n),a=new Uint8Array(t*n),o=new Int32Array(t*n).fill(-1),s=new Int32Array(t*n).fill(-1),c=r.map((e,t)=>t).filter(e=>r[e].kind===`folder`).sort((e,t)=>r[e].depth-r[t].depth||e-t);for(let e of c){let n=r[e];for(let r=n.gy;r<n.gy+n.h;r++)for(let a=n.gx;a<n.gx+n.w;a++)i[r*t+a]=n.depth,o[r*t+a]=e}r.forEach((e,n)=>{if(e.kind===`note`)for(let r=e.gy;r<e.gy+e.h;r++)for(let i=e.gx;i<e.gx+e.w;i++)a[r*t+i]=1,s[r*t+i]=n});let l=new Uint8Array(t*n),u=e.keep??Tt,d=(e,r,i,a)=>{for(let o=Math.max(0,r);o<Math.min(n,a);o++)for(let n=Math.max(0,e);n<Math.min(t,i);n++)l[o*t+n]=1};for(let e of r)e.kind===`note`?d(e.gx-u,e.gy-u,e.gx+e.w+u,e.gy+e.h+u):(d(e.gx-u,e.gy-u,e.gx+e.w+u,e.gy+u),d(e.gx-u,e.gy+e.h-u,e.gx+e.w+u,e.gy+e.h+u),d(e.gx-u,e.gy-u,e.gx+u,e.gy+e.h+u),d(e.gx+e.w-u,e.gy-u,e.gx+e.w+u,e.gy+e.h+u));return{W:t,H:n,elev:i,blocked:a,owner:o,noteAt:s,close:l}}function Dt(e,t){let n=e[t].kind===`folder`?[t]:[];for(let r=e[t].parent;r>=0;r=e[r].parent)n.push(r);return n}var Ot={bend:4,flow:1,area:.01,aspect:1,shape:1,effort:1e3,seed:0,cross:20,stay:5};function kt(e,t,n,r,i={}){let{bend:a,flow:o,area:s,aspect:c,shape:l,effort:u,seed:d,cross:f,stay:p}={...Ot,...i},m=e.length,h=e.map(e=>e[0]),g=e.map(e=>e[1]);if(!m)return{x:[],y:[],w:0,h:0};let _=Array.from({length:m},(e,t)=>Array.from({length:m},(e,r)=>n(t,r))),v=new Float64Array(m),y=new Float64Array(m),b=[...Array(m).keys()],x=[...b],S=new Int32Array(m),C=new Int32Array(m),w=0,T=0,E=()=>{b.forEach((e,t)=>{S[e]=t}),x.forEach((e,t)=>{C[e]=t}),w=0,T=0;for(let e=0;e<m;e++){let t=b[e],n=0,r=0;for(let i=0;i<e;i++){let e=b[i];C[e]<C[t]?n=Math.max(n,v[e]+h[e]+_[e][t]):r=Math.max(r,y[e]+g[e]+_[e][t])}v[t]=n,y[t]=r,w=Math.max(w,n+h[t]),T=Math.max(T,r+g[t])}},D=e=>[v[e]+h[e]/2,y[e]+g[e]/2],O=()=>{E();let e=0;for(let[n,i,s]of t){let t=Math.max(0,v[i]-v[n]-h[n],v[n]-v[i]-h[i]),c=Math.max(0,y[i]-y[n]-g[n],y[n]-y[i]-g[i]);e+=s*(Math.max(t,c)+.414*Math.min(t,c)+(t>0&&c>0?a:0));let l=r===`right`?v[n]+h[n]/2-(v[i]+h[i]/2):y[i]+g[i]/2-(y[n]+g[n]/2);l>0&&(e+=o*s*l)}if(f)for(let n=0;n<t.length;n++)for(let r=n+1;r<t.length;r++){let[i,a,o]=t[n],[s,c,l]=t[r];i!==s&&i!==c&&a!==s&&a!==c&&jt(D(i),D(a),D(s),D(c))&&(e+=f*Math.min(o,l))}if(A)for(let t=0;t<m;t++)for(let n=t+1;n<m;n++)(S[t]<S[n]!=A[0][t]<A[0][n]||C[t]<C[n]!=A[1][t]<A[1][n])&&(e+=p);let n=Math.log(w/T/l);return e+s*w*T*(1+c*n*n)},k=At(m,t);if(b.sort((e,t)=>k[e]-k[t]),x.splice(0,m,...b),r===`up`&&b.reverse(),i.pair)return b.splice(0,m,...i.pair[0]),x.splice(0,m,...i.pair[1]),E(),{x:[...v],y:[...y],w,h:T,pair:i.pair};let A=null;i.start&&(b.splice(0,m,...i.start[0]),x.splice(0,m,...i.start[1]),A=[new Int32Array(m),new Int32Array(m)],b.forEach((e,t)=>{A[0][e]=t}),x.forEach((e,t)=>{A[1][e]=t}));let j=O(),M=j,N=[...b],P=[...x];if(m<2)return E(),{x:[...v],y:[...y],w,h:T,pair:[[...b],[...x]]};let F=Nt(Mt(e,t)^d),I=u*m,L=i.start?Math.max(.5,j*.002):Math.max(1,j*.05),ee=.001**(1/I);for(let e=0;e<I;e++,L*=ee){let e=Math.floor(F()*m),t=(e+1+Math.floor(F()*(m-1)))%m,n=F(),r=n=>{let r=n[e];n[e]=n[t],n[t]=r};if(n<.4)r(b);else if(n<.8)r(x);else{let n=b.indexOf(x[e]),i=b.indexOf(x[t]);r(x);let a=b[n];b[n]=b[i],b[i]=a}let i=O();if(i<=j||F()<Math.exp((j-i)/L))j=i,j<M&&(M=j,N=[...b],P=[...x]);else if(n<.4)r(b);else if(n<.8)r(x);else{let n=b.indexOf(x[e]),i=b.indexOf(x[t]);r(x);let a=b[n];b[n]=b[i],b[i]=a}}return b.splice(0,m,...N),x.splice(0,m,...P),E(),{x:[...v],y:[...y],w,h:T,cost:M,pair:[N,P]}}function At(e,t){let n=Array(e).fill(0);for(let[e,r,i]of t)n[e]+=i,n[r]-=i;let r=[...Array(e).keys()].sort((e,t)=>n[t]-n[e]||e-t),i=Array(e);return r.forEach((e,t)=>{i[e]=t}),i}function jt(e,t,n,r){let i=(e,t,n)=>(t[0]-e[0])*(n[1]-e[1])-(t[1]-e[1])*(n[0]-e[0]);return i(e,t,n)*i(e,t,r)<0&&i(n,r,e)*i(n,r,t)<0}function Mt(e,t){let n=2166136261;for(let r of[...e.flat(),...t.flat()])n^=r|0,n=Math.imul(n,16777619);return n>>>0}function Nt(e){return()=>{e|=0,e=e+1831565813|0;let t=Math.imul(e^e>>>15,1|e);return t=t+Math.imul(t^t>>>7,61|t)^t,((t^t>>>14)>>>0)/4294967296}}var Pt={cell:7,note:[18,11],gap:6,gapFolders:8,channel:6,channelFolders:8,pad:6,head:2,margin:8,minFolder:12,slant:8,keep:2},Ft={fine:Pt,coarse:{cell:14,note:[9,6],gap:3,gapFolders:6,channel:3,channelFolders:6,pad:3,head:1,margin:6,minFolder:6,slant:4,keep:1},coarser:{cell:18,note:[7,4],gap:2,gapFolders:5,channel:2,channelFolders:5,pad:2,head:1,margin:5,minFolder:5,slant:3,keep:1}};Pt.pad;var It=1.4,Lt=8,Rt=12,zt=Pt.note,Bt=0,Vt=0,Ht=0,Ut=0,Wt=0,Gt=0,Kt=0,qt=0,Jt=0,Yt=2,Xt=0,Zt=0;function Qt(e){({note:zt,gap:Bt,gapFolders:Vt,channel:Ht,channelFolders:Ut,head:Wt,margin:Gt,minFolder:Kt,slant:qt,pad:Jt,keep:Yt}=e),Xt=zt[0]+Bt,Zt=3*Xt}function $t(e,{flow:t=`up`,grain:n=`fine`,plan:r=!1,planCosts:i={},planned:a=null,from:o=null}={}){let s=Ft[n]??Pt;Qt(s);let c=e=>e.kind===`dir`,l=new Map,u=new Map,d=[e.root];for(let e=0;e<d.length;e++)for(let t of d[e].children||[])l.set(t,d[e]),c(t)?d.push(t):u.set(t.ref,t);let f=e=>{let t=[];for(let n=e;n;n=l.get(n))t.push(n);return t.reverse()},p=new Map(d.map(e=>[e,new Map])),m=new Map;for(let e of d){m.set(e,m.size);for(let t of e.children||[])c(t)||m.set(t,m.size)}let h=new Map(u);if(e.code)for(let t of d)t!==e.root&&!h.has(t.ref)&&h.set(t.ref,t);for(let[t,n,r]of e.edges){if(r<2)continue;let e=h.get(t),i=h.get(n);if(!e||!i||e===i)continue;let a=f(e),o=f(i),s=0;for(;a[s+1]&&a[s+1]===o[s+1];)s++;if(!a[s+1]||!o[s+1])continue;let c=p.get(a[s]),l=o[s+1],u=a[s+1],d=m.get(l)+`|`+m.get(u),g=c.get(d)||{p:l,q:u,weight:0,count:0};g.weight+=r,g.count++,c.set(d,g)}let g=new Map,_=new Map,v={},y=new Map,b=e=>e===`up`?`right`:`up`,x=(t,n)=>{let r=t.children||[];for(let e of r)c(e)?x(e,b(n)):g.set(e,{w:zt[0],h:zt[1]});let i=r.length?S(t,r,n):{w:0,h:0};g.set(t,t===e.root?i:r.length?{w:Math.max(Kt,i.w+2*Jt),h:i.h+Jt+Wt+Jt}:{w:Kt,h:Wt+2*Jt})};function S(e,t,n){if(r&&t.some(c))return C(e,t,n);let i=new Map(t.map(e=>[e,e])),a=e=>{for(;i.get(e)!==e;)e=i.get(e);return e};for(let t of p.get(e).values()){let e=a(t.p),n=a(t.q);e!==n&&i.set(n,e)}let o=new Map,s=new Set([...p.get(e).values()].flatMap(e=>[e.p,e.q]));for(let e of t){let t=s.has(e)?a(e):null;o.set(t,[...o.get(t)||[],e])}if(o.size<2){let r=w(e,t,n);return y.set(e,r.out),{w:r.w,h:r.h}}let l=[...o].map(([t,r],i)=>({list:r,loose:t===null,k:i,...w(e,r,n)}));l.sort((e,t)=>e.loose-t.loose||t.w*t.h-e.w*e.h||e.k-t.k);let u=t.some(c)?Vt:Bt,d=l.reduce((e,t)=>e+(t.w+u)*(t.h+u),0),f=Math.max(Math.ceil(Math.sqrt(d*It)),...l.map(e=>e.w)),m=0,h=0,_=0,v=0,b=[];for(let e of l){m&&m+e.w>f&&(m=0,h+=_+u,_=0);for(let t of e.list){let e=g.get(t);e.x+=m,e.y+=h}for(let t of e.out)b.push({...t,pts:t.pts&&t.pts.map(([e,t])=>[e+m,t+h])});v=Math.max(v,m+e.w),_=Math.max(_,e.h),m+=e.w+u}return y.set(e,b),{w:v,h:h+_}}function C(t,n,r){let s=new Map(n.map((e,t)=>[e,t])),l=[...p.get(t).values()].filter(e=>s.has(e.p)&&s.has(e.q)),u=t===e.root?``:t.ref,d=a?.get(u),f=(e,t)=>d?.wider.get([n[e].ref,n[t].ref].sort().join(`|`))??0,m=(e,t)=>(c(n[e])||c(n[t])?Vt:Bt)+f(e,t),h=n.map(e=>[g.get(e).w,g.get(e).h]),b=t===e.root&&r===`up`?1/Ot.shape:Ot.shape,x,S=!d&&o?.[u];if(S){let e=new Map(n.map((e,t)=>[e.ref,t])),t=n.map((e,t)=>t).filter(e=>!S[0].includes(n[e].ref));x=S.map(n=>[...n.filter(t=>e.has(t)).map(t=>e.get(t)),...t])}let C=kt(h,l.map(e=>[s.get(e.p),s.get(e.q),e.count]),m,r,{shape:b,...i,pair:d?.pair,start:x});_.set(u,C.pair),v[u]=C.pair.map(e=>e.map(e=>n[e].ref)),n.forEach((e,t)=>Object.assign(g.get(e),{x:C.x[t],y:C.y[t]}));let w=e=>r===`right`?C.x[e]+h[e][0]/2:-(C.y[e]+h[e][1]/2),T=new Map;for(let e of l)T.set(e.p,[...T.get(e.p)||[],e.q]);let E=(e,t)=>{let n=new Set,r=(T.get(e)||[]).filter(e=>e!==t);for(;r.length;){let e=r.pop();if(e===t)return!0;n.has(e)||(n.add(e),r.push(...T.get(e)||[]))}return!1};return y.set(t,l.map(e=>({p:e.p,q:e.q,count:e.count,back:w(s.get(e.p))>w(s.get(e.q)),implied:!c(e.p)&&!c(e.q)&&E(e.p,e.q),pts:null}))),{w:C.w,h:C.h}}function w(e,t,n){let r=t.length,i=new Map(t.map((e,t)=>[e,t])),a=n===`up`,o=t.some(c)?Vt:Bt,s=t.map(e=>a?g.get(e).h:g.get(e).w),l=t.map(e=>a?g.get(e).w:g.get(e).h),u=[...p.get(e).values()].filter(e=>i.has(e.p)&&i.has(e.q)).map(e=>({...e,p:i.get(e.p),q:i.get(e.q)})),d=tn(r,u.map(e=>[e.p,e.q,e.weight]));for(let e of u)e.back=d[e.p]>d[e.q],e.u=e.back?e.q:e.p,e.v=e.back?e.p:e.q;let f=u.filter(e=>!e.back),m=Array(r).fill(0),h=t.map(()=>[]),_=t.map(()=>[]);for(let e of u)h[e.v].push(e.u),_[e.u].push(e.v);let v=t.map(()=>[]);for(let e of f)v[e.p].push(e.q);for(let e of[...Array(r).keys()].sort((e,t)=>d[e]-d[t]))for(let t of h[e])m[e]=Math.max(m[e],m[t]+1);for(let e=0;e<r;e++)!h[e].length&&_[e].length&&(m[e]=Math.min(..._[e].map(e=>m[e]))-1);let y=(e,t,n)=>{let r=new Set,i=v[e].filter(e=>e!==n);for(;i.length;){let e=i.pop();if(e===t)return!0;r.has(e)||(r.add(e),i.push(...v[e]))}return!1};for(let e of f)e.implied=!c(t[e.p])&&!c(t[e.q])&&y(e.p,e.q,e.q);let b=u.filter(e=>!e.implied).sort((e,t)=>t.weight-e.weight||e.p-t.p||e.q-t.q),x=t.reduce((e,t,n)=>e+(l[n]+o)*(s[n]+Ht),0),S=Math.max(Math.ceil(Math.sqrt(a?x*It:x/It)),...l),C=[],w=Array(r),T=Array(r).fill(!1);for(let e of u)T[e.p]=!0,T[e.q]=!0;let E=T.some(Boolean)&&T.some(e=>!e),D=e=>{let t=e.reduce((e,t)=>e+l[t]+o,0),n=Math.max(1,Math.ceil((t-o)/S)),r=t/n,i=null,a=0;for(let t of e)(!i||a+l[t]>S||C.length-O<n&&a>=r)&&(i=[],C.push(i),a=0),w[t]=C.length-1,i.push(t),a+=l[t]+o},O=0,k=e=>h[e].length?+!!_[e].length:2,A=e=>e.length?e.reduce((e,t)=>e+d[t],0)/e.length:0;for(let e=0;e<=Math.max(...m);e++){let t=[...Array(r).keys()].filter(t=>m[t]===e&&(T[t]||!E));t.reduce((e,t)=>e+l[t]+o,0)-o>S&&t.sort((e,t)=>k(e)-k(t)||A(h[e])-A(h[t])||e-t),O=C.length,D(t)}E&&(O=C.length,D([...Array(r).keys()].filter(e=>!T[e])));let j=[...l],M=t.map(()=>[]),N=t.map(()=>[]),P=new Map,F=new Map,I=[],L=new Set,ee=new Map;for(let e of b){let t=[e.u];for(let n=w[e.u]+1;n<w[e.v];n++){let r=e.u+`|`+n;P.has(r)||(P.set(r,j.length),F.set(j.length,e.u),j.push(1),M.push([]),N.push([]),w.push(n),C[n].push(j.length-1)),t.push(P.get(r))}t.push(e.v);for(let e=1;e<t.length;e++){let n=t[e-1],r=t[e];L.has(n+`|`+r)||(L.add(n+`|`+r),I.push([n,r]),N[n].push(r),M[r].push(n))}ee.set(e,t)}let R=e=>e>=r,z=Array(j.length);C.forEach(e=>e.forEach((e,t)=>{z[e]=t}));let B=(e,t)=>{let n=new Map(C[e].map(e=>[e,t[e].length?t[e].reduce((e,t)=>e+z[t],0)/t[e].length:z[e]]));C[e].sort((e,t)=>n.get(e)-n.get(t)||z[e]-z[t]),C[e].forEach((e,t)=>{z[e]=t})},te=()=>{let e=0;for(let t=0;t<C.length-1;t++){let n=[];for(let e of C[t])for(let t of N[e])n.push([z[e],z[t]]);for(let t=0;t<n.length;t++)for(let r=t+1;r<n.length;r++)(n[t][0]-n[r][0])*(n[t][1]-n[r][1])<0&&e++}return e},V=()=>{let e=(e,t,n)=>{let r=0;for(let i of n[e])for(let e of n[t])r+=z[i]>z[e]?1:z[i]<z[e]?-1:0;return r};for(let t=!0,n=0;t&&n<Lt;n++){t=!1;for(let n of C)for(let r=0;r+1<n.length;r++){let i=n[r],a=n[r+1];e(i,a,M)+e(i,a,N)>0&&(n[r]=a,n[r+1]=i,z[i]=r+1,z[a]=r,t=!0)}}},H=C.map(e=>[...e]),ne=(e,t)=>(R(e)?d[F.get(e)]:d[e])-(R(t)?d[F.get(t)]:d[t])||e-t,U=null,W=1/0;for(let e of[e=>e,e=>[...e].sort(ne),e=>[...e].reverse()]){C.forEach((t,n)=>{t.splice(0,t.length,...e(H[n])),t.forEach((e,t)=>{z[e]=t})});let t=1/0,n=0;for(let e=0;e<24&&n<4&&W>0;e++,n++){if(e%2==0)for(let e=1;e<C.length;e++)B(e,M);else for(let e=C.length-2;e>=0;e--)B(e,N);V();let r=te();r<t&&(t=r,n=0),r<W&&(W=r,U=C.map(e=>[...e]))}}U&&C.forEach((e,t)=>{e.splice(0,e.length,...U[t]),e.forEach((e,t)=>{z[e]=t})});let re=(e,t)=>R(e)&&R(t)?1:R(e)||R(t)?Yt:o,G=Array(j.length).fill(0);for(let e of C){let t=0;e.forEach((n,r)=>{r&&(t+=re(e[r-1],n)),G[n]=t,t+=j[n]})}let K=e=>e.length?G[e[e.length-1]]+j[e[e.length-1]]:0,ie=Math.max(...C.map(K));for(let e of C){let t=(ie-K(e))/2;for(let n of e)G[n]+=t}let ae=e=>G[e]+j[e]/2;for(let e=0;e<Rt;e++)for(let t of e%2?[...C].reverse():C){if(!t.length)continue;let e=t.map(e=>{let t=[...M[e],...N[e]];return(t.length?t.reduce((e,t)=>e+ae(t),0)/t.length:ae(e))-j[e]/2}),n=[],r=[];t.forEach((r,i)=>{n[i]=i?Math.max(e[i],n[i-1]+j[t[i-1]]+re(t[i-1],r)):e[i]});for(let n=t.length-1;n>=0;n--)r[n]=n<t.length-1?Math.min(e[n],r[n+1]-j[t[n]]-re(t[n],t[n+1])):e[n];t.forEach((e,t)=>{G[e]=(n[t]+r[t])/2})}let oe=e=>Math.floor((j[e]-1)/2),se=Array(j.length).fill(-1),ce=Array(j.length).fill(-1);for(let e of[!0,!1])for(let t=1;t<C.length;t++){let n=C[t].filter(e=>se[e]>=0).map(e=>[z[se[e]],z[e]]);for(let r of C[t]){if(se[r]>=0||!M[r].length)continue;let t=[...M[r]].sort((e,t)=>z[e]-z[t]),i=(t.length-1)/2,a=t.map((e,t)=>[e,Math.abs(t-i)]).filter(([t])=>ce[t]<0&&(!e||R(t)&&R(r))&&Math.abs(G[t]+oe(t)-G[r]-oe(r))<=(e?Zt:Xt)).sort((e,t)=>e[1]-t[1]||z[e[0]]-z[t[0]]);for(let[e]of a)if(!n.some(([t,n])=>t<z[e]!=n<z[r])){se[r]=e,ce[e]=r,n.push([z[e],z[r]]);break}}}let le=Array(j.length).fill(-1),q=0;for(let e=0;e<j.length;e++)if(se[e]<0){for(let t=e;t>=0;t=ce[t])le[t]=q;q++}let ue=Array.from({length:q},()=>[]);le.forEach((e,t)=>ue[e].push(t));let de=(e,t)=>j[e]-oe(e)+re(e,t)+oe(t),fe=Array(j.length).fill(-1),pe=Array(j.length).fill(-1);for(let e of C)e.forEach((t,n)=>{n&&(fe[t]=e[n-1],pe[e[n-1]]=t)});let J=Array(q).fill(0),me=!1;for(let e=0;e<=q&&!me;e++){me=!0;for(let e of C)for(let t=1;t<e.length;t++){let n=J[le[e[t-1]]]+de(e[t-1],e[t]);J[le[e[t]]]<n&&(J[le[e[t]]]=n,me=!1)}}if(me){let e=ue.map(e=>Math.round(e.reduce((e,t)=>e+G[t]+oe(t),0)/e.length)),t=Math.min(...e.map((e,t)=>e-J[t])),n=[...Array(q).keys()].sort((t,n)=>e[n]-e[t]||t-n);for(let r=0;r<24;r++){let i=!1;for(let a of r%2?[...n].reverse():n){let n=-1/0,r=1/0;for(let e of ue[a])fe[e]>=0&&(n=Math.max(n,J[le[fe[e]]]+de(fe[e],e))),pe[e]>=0&&(r=Math.min(r,J[le[pe[e]]]-de(e,pe[e])));let o=Math.max(n,Math.min(r,e[a]-t));o!==J[a]&&(J[a]=o,i=!0)}if(!i)break}for(let e=0;e<j.length;e++)G[e]=J[le[e]]-oe(e)}else for(let e of C)e.forEach((t,n)=>{G[t]=n?Math.max(Math.round(G[t]),G[e[n-1]]+j[e[n-1]]+re(e[n-1],t)):Math.round(G[t])});let Y=Math.min(...G);for(let e=0;e<G.length;e++)G[e]-=Y;let X=Math.max(...G.map((e,t)=>e+j[t])),Z=e=>G[e]+Math.floor((j[e]-1)/2)+.5,he=new Map;for(let e=0;e<j.length;e++){let t=[...M[e]].sort((e,t)=>Z(e)-Z(t)),n=G[e]+.5,r=G[e]+j[e]-.5;if(t.length>j[e]){t.forEach((r,i)=>he.set(r+`|`+e,n+Math.min(j[e]-1,Math.floor(i*j[e]/t.length))));continue}let i=t.map(e=>Math.max(n,Math.min(r,Z(e))));for(let e=1;e<i.length;e++)i[e]=Math.max(i[e],i[e-1]+1);for(let e=i.length-1;e>=0;e--)i[e]=Math.min(i[e],e===i.length-1?r:i[e+1]-1);t.forEach((t,n)=>he.set(t+`|`+e,i[n]))}let ge=(e,t)=>{let n=he.get(e+`|`+t);return n>=G[e]+.5&&n<=G[e]+j[e]-.5},_e=Array(j.length);for(let e=0;e<j.length;e++){let t=N[e].filter(t=>!ge(e,t)).map(t=>he.get(e+`|`+t)).sort((e,t)=>e-t);_e[e]=t.length?Math.max(G[e]+.5,Math.min(G[e]+j[e]-.5,t[t.length-1>>1])):Z(e)}let ve=(e,t)=>ge(e,t)?he.get(e+`|`+t):_e[e],ye=(e,t)=>{let n=ve(e,t),r=he.get(e+`|`+t);return[Math.min(n,r),Math.max(n,r)]},be=new Set,xe=C.map(()=>0);for(let[e,t]of I){if(ge(e,t))continue;let[n,r]=ye(e,t),i=he.get(e+`|`+t)>_e[e];r-n>qt||I.every(([a,o])=>{if(w[a]!==w[e]||a===e&&o===t)return!0;let[s,c]=ye(a,o);return a===e?i?c<=n:s>=r:c<n-1||s>r+1})&&(be.add(e+`|`+t),xe[w[e]]=Math.max(xe[w[e]],r-n))}let Se=new Map;for(let[e,t]of I){if(ge(e,t)||be.has(e+`|`+t))continue;let n=he.get(e+`|`+t),r=Se.get(e)||{u:e,lo:_e[e],hi:_e[e],track:0};r.lo=Math.min(r.lo,n),r.hi=Math.max(r.hi,n),Se.set(e,r)}let Ce=C.map(()=>0);C.forEach((e,t)=>{let n=[...Se.values()].filter(e=>w[e.u]===t&&e.hi>e.lo).sort((e,t)=>e.lo-t.lo||e.hi-t.hi||e.u-t.u),r=n.map(e=>N[e.u].filter(t=>!ge(e.u,t)&&!be.has(e.u+`|`+t)).map(t=>he.get(e.u+`|`+t))),i=(e,t)=>!(n[e].hi<n[t].lo-1||n[t].hi<n[e].lo-1),a=(e,t)=>+(_e[n[t].u]>n[e].lo&&_e[n[t].u]<n[e].hi)+r[e].filter(e=>e>n[t].lo&&e<n[t].hi).length,o=[];for(let e=0;e<n.length;e++)for(let t=e+1;t<n.length;t++){if(!i(e,t))continue;let n=a(t,e)-a(e,t);n>0?o.push([e,t,n]):n<0&&o.push([t,e,-n])}let s=tn(n.length,o),c=[];for(let e of[...n.keys()].sort((e,t)=>s[e]-s[t]))n[e].track=Math.max(0,...c.filter(t=>i(e,t)).map(e=>n[e].track+1)),c.push(e);Ce[t]=Math.max(0,...n.map(e=>e.track+1))});let we=C.map(e=>Math.max(0,...e.filter(e=>!R(e)).map(e=>s[e]))),Te=[],Ee=[],De=[],Oe=0;C.forEach((e,n)=>{Te[n]=Oe,Oe+=we[n];let r=Math.max(t.some(c)?Ut:Ht,Ce[n]+2*Yt,xe[n]+2);Ee[n]=Oe+Math.max(Yt,Math.floor((r-Ce[n])/2));let i=Oe;De[n]=e=>i+Math.floor((r-e)/2),n<C.length-1&&(Oe+=r)});let ke=Oe,Ae=e=>Te[w[e]]+Math.floor((we[w[e]]-s[e])/2),je=(e,t)=>a?[t,ke-e]:[e,t];t.forEach((e,t)=>Object.assign(g.get(e),a?{x:G[t],y:ke-Ae(t)-s[t]}:{x:Ae(t),y:G[t]}));let Me=[];for(let e of u){let n=ee.get(e),r=null;if(n){r=[je(Ae(e.u)+s[e.u],ve(e.u,n[1]))];for(let e=1;e<n.length;e++){let t=n[e-1],i=n[e],a=he.get(t+`|`+i);if(be.has(t+`|`+i)){let e=Math.abs(a-_e[t]),n=De[w[t]](e);r.push(je(n,_e[t]),je(n+e,a));continue}let o=Ee[w[t]]+(Se.get(t)?.track||0)+.5;r.push(je(o,ve(t,i)),je(o,a))}r.push(je(Ae(e.v),he.get(n[n.length-2]+`|`+e.v))),r=r.filter((e,t)=>!t||e[0]!==r[t-1][0]||e[1]!==r[t-1][1]),e.back&&r.reverse()}Me.push({p:t[e.p],q:t[e.q],count:e.count,back:e.back,implied:!!e.implied,pts:r})}return a?{w:X,h:ke,out:Me}:{w:ke,h:X,out:Me}}x(e.root,t);let T=[],E=new Map,D=new Map([[e.root,[Gt,Gt]]]);for(let t of d){let[n,r]=D.get(t),i=t===e.root?-1:E.get(t),a=f(t).length;for(let e of t.children||[]){let t=g.get(e);E.set(e,T.length),T.push({id:e.id,ref:e.ref,kind:c(e)?`folder`:`note`,parent:i,depth:a,gx:n+t.x,gy:r+t.y,w:t.w,h:t.h}),c(e)&&D.set(e,[n+t.x+Jt,r+t.y+Wt+Jt])}}let O=[],k=new Set;for(let e of d){let[t,n]=D.get(e);for(let r of y.get(e)||[]){let e=E.get(r.q),i=E.get(r.p);r.back&&k.add(e+`|`+i),O.push({a:e,b:i,count:r.count,back:r.back,implied:r.implied,pts:r.pts&&r.pts.map(([e,r])=>[e+t,r+n])})}}let A=en(T,e.edges,new Map([...u].map(([e,t])=>[e,E.get(t)]))),j=(e,t)=>{for(;T[e].parent!==t;)e=T[e].parent;return e};for(let e of A)e.placed=e.s>=2&&!k.has(j(e.a,e.level)+`|`+j(e.b,e.level));let M=g.get(e.root);return{W:M.w+2*Gt,H:M.h+2*Gt,flow:t,cell:s.cell,keep:s.keep,margin:Gt,items:T,links:A,trunks:O,pairs:_,orders:v}}function en(e,t,n){let r=t=>{let n=[];for(let r=e[t].parent;r>=0;r=e[r].parent)n.push(r);return n},i=[];for(let[e,a,o]of t){let t=n.get(e),s=n.get(a);if(t===void 0||s===void 0||t===s)continue;let c=new Set(r(s));i.push({a:t,b:s,s:o,level:r(t).find(e=>c.has(e))??-1,placed:!1})}return i}function tn(e,t){let n=Array.from({length:e},()=>new Map),r=Array.from({length:e},()=>new Map);for(let[e,i,a]of t)e!==i&&(n[e].set(i,(n[e].get(i)||0)+a),r[i].set(e,(r[i].get(e)||0)+a));let i=e=>{let t=0;for(let n of e.values())t+=n;return t},a=new Set([...Array(e).keys()]),o=[],s=[],c=(e,t)=>{a.delete(e),t.push(e);for(let t of n[e].keys())r[t].delete(e);for(let t of r[e].keys())n[t].delete(e)};for(;a.size;){let e=!0;for(;e;){e=!1;for(let t of[...a])r[t].size?n[t].size||(c(t,s),e=!0):(c(t,o),e=!0)}if(!a.size)break;let t=-1,l=-1/0;for(let e of a){let a=i(n[e])-i(r[e]);a>l&&(l=a,t=e)}c(t,o)}let l=Array(e);return[...o,...s.reverse()].forEach((e,t)=>{l[e]=t}),l}var nn={climb:5,turn45:1.5,turn90:3,foreign:2.5,crowd:.2,near:0,hug:2.5,haste:3.2},rn=[1,1,0,-1,-1,-1,0,1],an=[0,1,1,1,0,-1,-1,-1],on=3,sn=8;function cn(e,t,n={}){let{climb:r,turn45:i,turn90:a,foreign:o,crowd:s,near:c,hug:l,haste:u}={...nn,...n},{W:d,H:f,elev:p,blocked:m,owner:h}=t,g=t.close||new Uint8Array(d*f),_=d*f,v=e.items,y=new Uint16Array(_),b=new Uint16Array(_),x=new Float32Array(_*9),S=new Int32Array(_*9),C=new Uint32Array(_*9),w=new Uint32Array(v.length),T=_*9,E=0,D=new Float32Array(4096),O=new Float32Array(4096),k=new Int32Array(4096),A=0,j=(e,t,n)=>{if(A===D.length){let e=(e,t)=>{let n=new t(e.length*2);return n.set(e),n};D=e(D,Float32Array),O=e(O,Float32Array),k=e(k,Int32Array)}let r=A++;for(;r>0;){let t=r-1>>1;if(D[t]<=e)break;D[r]=D[t],O[r]=O[t],k[r]=k[t],r=t}D[r]=e,O[r]=t,k[r]=n},M=()=>{N=O[0],P=k[0];let e=D[--A],t=O[A],n=k[A],r=0;for(;;){let t=2*r+1;if(t>=A||(t+1<A&&D[t+1]<D[t]&&t++,D[t]>=e))break;D[r]=D[t],O[r]=O[t],k[r]=k[t],r=t}D[r]=e,O[r]=t,k[r]=n},N=0,P=0,F=(e,t)=>{y[e]+=t;let n=e%d,r=e/d|0;for(let e=Math.max(0,r-1);e<=Math.min(f-1,r+1);e++)for(let i=Math.max(0,n-1);i<=Math.min(d-1,n+1);i++)(i!==n||e!==r)&&(b[e*d+i]+=t)},I=e=>{let t=[],n=(e,n,r,i)=>{e>=0&&n>=0&&e<d&&n<f&&!m[n*d+e]&&t.push([n*d+e,r,i])};for(let t=e.gx;t<e.gx+e.w;t++)n(t,e.gy-1,t+.5,e.gy),n(t,e.gy+e.h,t+.5,e.gy+e.h);for(let t=e.gy;t<e.gy+e.h;t++)n(e.gx-1,t,e.gx,t+.5),n(e.gx+e.w,t,e.gx+e.w,t+.5);return t};function L(e,t,n,f,_,D,O=null){E++,A=0;for(let t of Dt(v,e))w[t]=E;if(O){w[O.folder]=E;for(let e of Dt(v,O.folder))w[e]=E}else for(let e of Dt(v,t))w[e]=E;let k=v[e],L=O?null:v[t],ee=O?O.ends:new Map(I(L).map(e=>[e[0],e])),R,z,B,te;if(O?.toward!==void 0)R=z=O.toward%d,B=te=O.toward/d|0;else if(O){R=B=1/0,z=te=-1/0;for(let e of ee.keys()){let t=e%d,n=e/d|0;R=Math.min(R,t),z=Math.max(z,t),B=Math.min(B,n),te=Math.max(te,n)}}else R=L.gx-1,z=L.gx+L.w,B=L.gy-1,te=L.gy+L.h;let V=(e,t)=>{let n=Math.max(R-e,e-z,0),r=Math.max(B-t,t-te,0);return u*(Math.max(n,r)+.414*Math.min(n,r))},H=new Map;for(let e of I(k)){let t=e[0],n=t*9+sn,r=Math.fround(1+s*Math.min(y[t],on));C[n]===E&&x[n]<=r||(C[n]=E,x[n]=r,S[n]=-1,j(r+V(t%d,t/d|0),r,n),H.set(t,e))}let ne=!!O?.strict,U=-1;for(;A;){M();let e=P,t=N;if(e>=T){U=e-T;break}if(t!==x[e])continue;let u=e/9|0,v=e%9,k=ee.get(u);if(k){if(!k[3]){U=e;break}j(Math.fround(t+k[3]),Math.fround(t+k[3]),T+e)}let A=u%d,F=u/d|0;for(let T=0;T<8;T++){let k=A+rn[T],M=F+an[T];if(k<n||M<f||k>_||M>D)continue;let N=M*d+k;if(m[N]||ne&&h[N]!==O.folder)continue;if(rn[T]&&an[T]){let e=F*d+k,t=M*d+A;if(m[e]||m[t]||p[e]!==p[u]||p[t]!==p[u]||p[N]!==p[u])continue}let P=(rn[T]&&an[T]?1.414:1)*(1+s*Math.min(y[N],on)+c*Math.min(b[N],on))+r*Math.abs(p[N]-p[u]);if(v!==sn&&v!==T){let e=Math.min((T-v+8)%8,(v-T+8)%8);P+=e===1?i:a*(e>=3?2:1)}h[N]>=0&&w[h[N]]!==E&&(P+=o),g[N]&&(P+=l);let I=N*9+T,L=Math.fround(t+P);C[I]===E&&x[I]<=L||(C[I]=E,x[I]=L,S[I]=e,j(L+V(k,M),L,I))}}if(U<0)return null;let W=[];for(let e=U;e!==-1;e=S[e])W.push(e/9|0);W.reverse();for(let e of W)F(e,1);let re=H.get(W[0]),G=ee.get(W[W.length-1]),K=[[re[1],re[2]]];for(let e of W)K.push([e%d+.5,(e/d|0)+.5]);return K.push([G[1],G[2]]),{cells:Int32Array.from(W),pts:K}}function ee(e,t){let n=v[e],r=v[t],i=Math.max(Math.abs(n.gx-r.gx),Math.abs(n.gy-r.gy)),a=Math.max(12,Math.ceil(i*.4)),o=Math.max(0,Math.min(n.gx,r.gx)-a),s=Math.max(0,Math.min(n.gy,r.gy)-a),c=Math.min(d-1,Math.max(n.gx+n.w,r.gx+r.w)+a),l=Math.min(f-1,Math.max(n.gy+n.h,r.gy+r.h)+a);return L(e,t,o,s,c,l)||(o||s||c<d-1||l<f-1?L(e,t,0,0,d-1,f-1):null)}function R(e,t){return v[e],v[t.folder],z(e,{...t,strict:!0})||z(e,t)}function z(e,t){let n=v[e],r=v[t.folder];return L(e,-1,Math.max(0,Math.min(n.gx,r.gx)-2),Math.max(0,Math.min(n.gy,r.gy)-2),Math.min(d-1,Math.max(n.gx+n.w,r.gx+r.w)+2),Math.min(f-1,Math.max(n.gy+n.h,r.gy+r.h)+2),t)}function B(e){let t=new Set;for(let n=1;n<e.length;n++){let[r,i]=e[n-1],[a,o]=e[n],s=Math.max(1,Math.ceil(Math.max(Math.abs(a-r),Math.abs(o-i))*2));for(let e=0;e<=s;e++){let n=Math.floor(r+(a-r)*e/s),c=Math.floor(i+(o-i)*e/s);n<0||c<0||n>=d||c>=f||m[c*d+n]||t.has(c*d+n)||(t.add(c*d+n),F(c*d+n,1))}}}return{route:ee,routeTo:R,occupy:B,release:e=>{for(let t of e.cells)F(t,-1)},hold:e=>{for(let t of e.cells)F(t,1)}}}var ln=[0,1,-1,2,-2,3,-3];function un(e,t){let n=new Map;e.forEach((e,r)=>{e.edges=new Set;for(let i=1;i<e.cells.length;i++){let a=e.cells[i-1],o=e.cells[i],s=a<o?a*t+o:o*t+a;e.edges.add(s),n.has(s)||n.set(s,[]),n.get(s).push(r)}}),e.forEach((t,r)=>{let i=new Set;for(let a of t.edges)for(let t of n.get(a))t<r&&i.add(e[t].lane);t.lane=ln.find(e=>!i.has(e))??0,delete t.edges})}var dn=(e,t,n,r)=>{let i=(e,t,n)=>(t[0]-e[0])*(n[1]-e[1])-(t[1]-e[1])*(n[0]-e[0]);return i(e,t,n)*i(e,t,r)<0&&i(n,r,e)*i(n,r,t)<0};function fn(e,t){let n=new Map;e.forEach((e,t)=>{for(let r of e.cells)n.has(r)||n.set(r,new Set),n.get(r).add(t)});let r=0,i=0;e.forEach((e,a)=>{for(let o of e.cells){r++;let e=!1,s=o%t;for(let r=-1;r<=1&&!e;r++)for(let i=-1;i<=1&&!e;i++){if(s+i<0||s+i>=t)continue;let c=n.get(o+r*t+i);if(c){for(let t of c)if(t!==a){e=!0;break}}}e||i++}});let a=e.map((e,t)=>{let n=[t*.618%1*.02-.01,t*.414%1*.02-.01],r=e.pts;return r.filter((e,t)=>t===0||t===r.length-1||Math.abs((e[0]-r[t-1][0])*(r[t+1][1]-e[1])-(e[1]-r[t-1][1])*(r[t+1][0]-e[0]))>1e-6).map(e=>[e[0]+n[0],e[1]+n[1]])}),o=0;for(let t=0;t<e.length;t++)for(let n=t+1;n<e.length;n++){let r=e[t],i=e[n];if(r.a!==i.a&&r.a!==i.b&&r.b!==i.a&&r.b!==i.b)for(let e=1;e<a[t].length;e++)for(let r=1;r<a[n].length;r++)dn(a[t][e-1],a[t][e],a[n][r-1],a[n][r])&&o++}return{routes:e.length,crossings:o,length:r,beside:r?1-i/r:0}}function pn(e,t,n,r,i=t.length<=100?2:+(t.length<=300)){let a=t.map(({a:t,b:n})=>{let r=e.route(t,n);return r&&{a:t,b:n,...r}});for(let t=0;t<i;t++)a.forEach((t,n)=>{if(!t)return;e.release(t);let r=e.route(t.a,t.b);r?Object.assign(t,r):e.hold(t)});let o=a.filter(Boolean);un(o,n*r);let s={...fn(o,n),lost:a.length-o.length};for(let t of o)e.release(t);return{routes:a.map(e=>e&&{pts:e.pts,lane:e.lane}),measures:s}}var mn=[1,1,0,-1,-1,-1,0,1],hn=[0,1,1,1,0,-1,-1,-1],gn=8,_n={turn45:1.5,turn90:3,diag:1.3,hug:1,share:.35,centre:.3,gather:224};function vn(e,t=Et(e),n={}){let{turn45:r,turn90:i,diag:a,hug:o,share:s,centre:c,gather:l}={..._n,...n},{items:u,trunks:d}=e,{W:f,H:p,blocked:m,owner:h}=t,g=f*p,_=Math.max(2,Math.round(28/(e.cell??7))),v=On(t,_),y=_,b=new Uint8Array(g),x=10/(e.cell??7),S=(e,t)=>e>=0&&t>=0&&e<f&&t<p,C=(e,t,n)=>S(e,t)&&!m[t*f+e]&&h[t*f+e]===n;function w(e,t,n){let[r,i]=e,[a,o]=t,s=n?a-r:o-i,c=n?o-i:a-r,l=Math.sign(s),u=Math.sign(c),d=Math.abs(s),f=Math.abs(c),p=[];if(d>=f){let e=Math.floor((d-f)/2);for(let t=0;t<e;t++)p.push([l,0]);for(let e=0;e<f;e++)p.push([l,u]);for(let t=0;t<d-f-e;t++)p.push([l,0])}else{let e=Math.floor(d/2);for(let t=0;t<e;t++)p.push([l,u]);for(let e=0;e<f-d;e++)p.push([0,u]);for(let t=0;t<d-e;t++)p.push([l,u])}let m=[[r,i]],h=r,g=i;for(let[e,t]of p)n?(h+=e,g+=t):(h+=t,g+=e),m.push([h,g]);return m}function T(e,t,n,r,i){let a=Math.max(e.gx-(t.gx+t.w),t.gx-(e.gx+e.w)),o=Math.max(e.gy-(t.gy+t.h),t.gy-(e.gy+e.h)),s=a>=o;if((s?a:o)<1)return null;let[c,l]=s?t.gx<e.gx?[3,2]:[2,3]:t.gy<e.gy?[1,0]:[0,1];if(i&&i.side!==c||r&&r.side!==l)return null;let u=Dn(t)[c],d=Dn(e)[l],p=s?Math.max(e.gy,t.gy):Math.max(e.gx,t.gx),m=s?Math.min(e.gy+e.h,t.gy+t.h):Math.min(e.gx+e.w,t.gx+t.w),h=e=>Math.floor(e.mid-.5+1e-9),g=e=>e>=p&&e<m,b=r||i?[[i?i.t:g(r.t)?r.t:h(u),r?r.t:g(i.t)?i.t:h(d),0]]:m-p>=1?kn(p,m).map(e=>[e,e,Math.abs(e+.5-(p+m)/2)]):[[h(u),h(d),0]],S=null;for(let[r,i,a]of b){if(yn(t,c,r,x)||yn(e,l,i,x))continue;let o=w(s?[c===3?t.gx+t.w:t.gx-1,r]:[r,c===1?t.gy+t.h:t.gy-1],s?[l===2?e.gx-1:e.gx+e.w,i]:[i,l===0?e.gy-1:e.gy+e.h],s);if(!o.every(([e,t])=>C(e,t,n)))continue;let u=o.slice(_,o.length-_),d=u.length?Math.min(...u.map(([e,t])=>v[t*f+e])):_;d<y||(!S||d>S.least||d===S.least&&a<S.off)&&(S={least:d,off:a,tb:r,ta:i,way:o})}return S?[u.wall(S.tb),...S.way.map(([e,t])=>[e+.5,t+.5]),d.wall(S.ta)]:null}let E=new Float32Array(g+1),D=new Int32Array(g+1),O=new Uint8Array(g+1),k=new Uint32Array(g+1),A=0,j=[],M=(e,t)=>{j.push([e,t]);let n=j.length-1;for(;n>0;){let t=n-1>>1;if(j[t][0]<=e)break;[j[t],j[n]]=[j[n],j[t]],n=t}},N=()=>{let e=j[0],t=j.pop();if(j.length){j[0]=t;let e=0;for(;;){let t=2*e+1;if(t>=j.length||(t+1<j.length&&j[t+1][0]<j[t][0]&&t++,j[t][0]>=j[e][0]))break;[j[t],j[e]]=[j[e],j[t]],e=t}}return e},P=(e,t)=>{if(e===gn||e===t)return 0;let n=Math.min((t-e+8)%8,(e-t+8)%8);return n===1?r:i*(n>=3?2:1)};function F(e,t,n,r,i){A++,j.length=0;let l=g,u=new Map,d=(e,t,n)=>!e||e.side===t&&e.t===n;if(Dn(e).forEach((t,i)=>t.cells.forEach(([a,o])=>{let s=t.dir===6||t.dir===2?a:o;C(a,o,n)&&d(r,i,s)&&!yn(e,i,s,x)&&u.set(o*f+a,[(t.dir+4)%8,c*Math.abs(s+.5-t.mid),t.wall(s)])})),!r)for(let t of bn(e,x))C(...t.out,n)&&u.set(t.out[1]*f+t.out[0],[(t.dir+4)%8,c*Math.min(e.w,e.h)/2,t.pt]);if(!u.size)return null;let p=e.gx-1,m=e.gx+e.w,h=e.gy-1,y=e.gy+e.h,S=(e,t)=>{let n=Math.max(p-e,e-m,0),r=Math.max(h-t,t-y,0);return Math.max(n,r)+.414*Math.min(n,r)},w=new Map,T=(e,t,n,r)=>{k[e]===A&&E[e]<=t||(k[e]=A,E[e]=t,D[e]=-1,O[e]=n,w.set(e,r),M(t+S(e%f,e/f|0),e))};if(Dn(t).forEach((e,r)=>e.cells.forEach(([a,o])=>{let s=e.dir===6||e.dir===2?a:o;C(a,o,n)&&d(i,r,s)&&!yn(t,r,s,x)&&T(o*f+a,c*Math.abs(s+.5-e.mid),e.dir,e.wall(s))})),!i)for(let e of bn(t,x))C(...e.out,n)&&T(e.out[1]*f+e.out[0],c*Math.min(t.w,t.h)/2,e.dir,e.pt);for(;j.length;){let[e,t]=N();if(t===l)break;let r=E[t];if(e-S(t%f,t/f|0)>r+1e-4)continue;let i=u.get(t);if(i){let e=r+i[1]+P(O[t],i[0]);(k[l]!==A||e<E[l])&&(k[l]=A,E[l]=e,D[l]=t,M(e,l))}let c=t%f,d=t/f|0;for(let e=0;e<8;e++){let i=c+mn[e],l=d+hn[e];if(!C(i,l,n)||mn[e]&&hn[e]&&(!C(i,d,n)||!C(c,l,n)))continue;let u=l*f+i,p=r+(mn[e]&&hn[e]?Math.SQRT2*a:1)*(b[u]?1-s:1)+o*(_-v[u])+P(O[t],e);k[u]===A&&E[u]<=p||(k[u]=A,E[u]=p,D[u]=t,O[u]=e,M(p+S(i,l),u))}}if(k[l]!==A)return null;let F=[];for(let e=D[l];e!==-1;e=D[e])F.push(e);return F.reverse(),[w.get(F[0]),...F.map(e=>[e%f+.5,Math.floor(e/f)+.5]),u.get(F.at(-1))[2]]}let I=d.map((e,t)=>t).sort((e,t)=>d[t].count-d[e].count||e-t),L=d.map(e=>({a:e.a,b:e.b,count:e.count,back:e.back,implied:e.implied})),ee=e=>Cn(e,(e,t)=>{S(e,t)&&!m[t*f+e]&&(b[t*f+e]=1)}),R=(e,t,n)=>{let r=d[e],i=u[r.a],a=u[r.b];return T(i,a,i.parent,t,n)??F(i,a,i.parent,t,n)};for(let e of I){let t=R(e);t&&(L[e].pts=t,ee(t))}let z=l/(e.cell??7),B=new Map;L.forEach((e,t)=>{if(e.pts)for(let[n,r,i]of[[`b`,e.b,e.pts[0]],[`a`,e.a,e.pts.at(-1)]]){let a=u[r];if(a.kind!==`folder`||!xn(a,i))continue;let o=Sn(a,i),s=`${r}|${o}`;B.set(s,[...B.get(s)||[],{k:t,end:n,t:Math.floor(o<2?i[0]:i[1]),count:e.count}])}});let te=new Map;for(let[e,t]of B){let[n,r]=e.split(`|`).map(Number),i=u[n];Dn(i)[r],r<2?i.gx:i.gy,t.sort((e,t)=>e.t-t.t);for(let e=0;e<t.length;){let n=e+1;for(;n<t.length&&t[n].t-t[n-1].t<=z;)n++;let a=t.slice(e,n);if(e=n,a.length<2||a.every(e=>e.t===a[0].t))continue;let o=new Map;for(let e of a)o.set(e.t,(o.get(e.t)||0)+e.count);let s=(a[0].t+a.at(-1).t)/2,c=[...o].filter(([e])=>!yn(i,r,e,x)).reduce((e,t)=>t[1]>e[1]||t[1]===e[1]&&Math.abs(t[0]-s)<Math.abs(e[0]-s)?t:e)[0];for(let e of a)e.t!==c&&te.set(e.k,{...te.get(e.k),[e.end]:{side:r,t:c}})}}if(te.size){b.fill(0),L.forEach((e,t)=>{e.pts&&!te.has(t)&&ee(e.pts)});for(let e of I){let t=te.get(e);if(!t)continue;let n=L[e],r=(e,t)=>{if(!xn(u[e],t))return;let n=Sn(u[e],t);return{side:n,t:Math.floor(n<2?t[0]:t[1])}},i=R(e,t.a??r(n.a,n.pts.at(-1)),t.b??r(n.b,n.pts[0]));i&&(L[e].pts=i),ee(L[e].pts)}}return L}function yn(e,t,n,r){if(e.kind!==`folder`)return!1;let i=t<2?e.gx:e.gy,a=i+(t<2?e.w:e.h);return n+.5-i<r||a-(n+.5)<r}function bn(e,t){return e.kind===`folder`?[[e.gx,e.gy,1,1,5],[e.gx+e.w,e.gy,-1,1,7],[e.gx+e.w,e.gy+e.h,-1,-1,1],[e.gx,e.gy+e.h,1,-1,3]].map(([e,n,r,i,a])=>({out:[Math.floor(e-r*.5),Math.floor(n-i*.5)],in:[Math.floor(e+r*.5),Math.floor(n+i*.5)],dir:a,pt:[e+r*t/2,n+i*t/2]})):[]}function xn(e,[t,n]){let r=(e,t)=>Math.abs(e-t)<1e-6;return(r(t,e.gx)||r(t,e.gx+e.w))&&n>=e.gy-1e-6&&n<=e.gy+e.h+1e-6||(r(n,e.gy)||r(n,e.gy+e.h))&&t>=e.gx-1e-6&&t<=e.gx+e.w+1e-6}function Sn(e,[t,n]){let r=(e,t)=>Math.abs(e-t)<1e-6;return r(n,e.gy)?0:r(n,e.gy+e.h)?1:r(t,e.gx)?2:3}function Cn(e,t){for(let n=1;n<e.length;n++){let[r,i]=e[n-1],[a,o]=e[n],s=Math.max(1,Math.ceil(Math.max(Math.abs(a-r),Math.abs(o-i))*2));for(let e=0;e<=s;e++)t(Math.floor(r+(a-r)*e/s),Math.floor(i+(o-i)*e/s))}}var wn={turn45:1.5,turn90:3,diag:1.3,hug:1,centre:1,join:.5,cross:1,haste:1.5,hasteNote:4};function Tn(e,t,n=Et(e),r={}){let{turn45:i,turn90:a,diag:o,hug:s,centre:c,join:l,cross:u,haste:d,hasteNote:f}={...wn,...r},{items:p,links:m}=e,{W:h,H:g,blocked:_,owner:v}=n,y=h*g,b=Math.max(2,Math.round(28/(e.cell??7))),x=On(n,b),S=10/(e.cell??7),C=new Uint8Array(y);for(let e of t)e.pts&&Cn(e.pts,(e,t)=>{e>=0&&t>=0&&e<h&&t<g&&(C[t*h+e]=1)});let w=(e,t)=>e>=0&&t>=0&&e<h&&t<g,T=(e,t)=>{for(;p[e].parent!==t;)e=p[e].parent;return e},E=(e,[t,n])=>{let r=(e,t)=>Math.abs(e-t)<1e-6;if(!xn(e,[t,n])){let i=bn(e,S).find(e=>r(e.pt[0],t)&&r(e.pt[1],n));if(i)return[...i.in,i.dir]}return r(t,e.gx)?[e.gx,Math.floor(n),4]:r(t,e.gx+e.w)?[e.gx+e.w-1,Math.floor(n),0]:r(n,e.gy)?[Math.floor(t),e.gy,6]:[Math.floor(t),e.gy+e.h-1,2]},D=(e,t)=>(mn[e]&&hn[e]?Math.SQRT2*o:1)+s*(b-x[t]),O=(e,t)=>{if(e===gn||e===t)return 0;let n=Math.min((t-e+8)%8,(e-t+8)%8);return n===1?i:a*(n>=3?2:1)},k=new Float32Array(y*9+1),A=new Int32Array(y*9+1),j=new Uint32Array(y*9+1),M=y*9,N=0,P=new Float64Array(4096),F=new Float64Array(4096),I=new Int32Array(4096),L=0,ee=0,R=0,z=(e,t,n)=>{if(L===P.length){let e=(e,t)=>{let n=new t(e.length*2);return n.set(e),n};P=e(P,Float64Array),F=e(F,Float64Array),I=e(I,Int32Array)}let r=L++;for(;r>0;){let t=r-1>>1;if(P[t]<=e)break;P[r]=P[t],F[r]=F[t],I[r]=I[t],r=t}P[r]=e,F[r]=t,I[r]=n},B=()=>{P[0],ee=F[0],R=I[0];let e=P[--L],t=F[L],n=I[L],r=0;for(;;){let t=2*r+1;if(t>=L||(t+1<L&&P[t+1]<P[t]&&t++,P[t]>=e))break;P[r]=P[t],F[r]=F[t],I[r]=I[t],r=t}P[r]=e,F[r]=t,I[r]=n};function te(e,t,n,r,i){N++,L=0;let a=(e,t)=>w(e,t)&&!_[t*h+e]&&v[t*h+e]===n,o=r%h,d=r/h|0,f=(e,t)=>{let n=Math.abs(e-o),r=Math.abs(t-d);return i*(1-l)*(Math.max(n,r)+.414*Math.min(n,r))},p=new Map;if(e.kind===`folder`)for(let t of bn(e,S)){let[n,r]=t.out;if(!a(n,r))continue;let i=r*h+n,o=i*9+t.dir,l=Math.fround(c*Math.min(e.w,e.h)/2+s*(b-x[i]));j[o]===N&&k[o]<=l||(j[o]=N,k[o]=l,A[o]=-1,p.set(i,t.pt),z(l+f(n,r),l,o))}for(Dn(e).forEach((t,n)=>t.cells.forEach(([r,i])=>{if(!a(r,i)||yn(e,n,t.dir===6||t.dir===2?r:i,S))return;let o=t.dir===6||t.dir===2?r:i,l=i*h+r,u=l*9+t.dir,d=Math.fround(c*Math.abs(o+.5-t.mid)+s*(b-x[l]));j[u]===N&&k[u]<=d||(j[u]=N,k[u]=d,A[u]=-1,p.set(l,t.wall(o)),z(d+f(r,i),d,u))}));L;){B();let e=R,n=ee;if(e===M)break;if(n!==k[e])continue;let r=e/9|0,i=e%9,o=r%h,s=r/h|0,c=t.get(r);if(c){let t=n+c.rest+O(i,c.dir);(j[M]!==N||t<k[M])&&(j[M]=N,k[M]=t,A[M]=e,z(t,t,M))}for(let t=0;t<8;t++){let r=o+mn[t],c=s+hn[t];if(!a(r,c)||mn[t]&&hn[t]&&(!a(r,s)||!a(o,c)))continue;let l=c*h+r,d=l*9+t,p=Math.fround(n+D(t,l)+(C[l]?u:0)+O(i,t));j[d]===N&&k[d]<=p||(j[d]=N,k[d]=p,A[d]=e,z(p+f(r,c),p,d))}}if(j[M]!==N)return null;let m=[];for(let e=A[M];e!==-1;e=A[e])m.push(e/9|0);return m.reverse(),{cells:m,pts:[p.get(m[0]),...m.map(e=>[e%h+.5,Math.floor(e/h)+.5]),t.get(m.at(-1)).pt]}}let V=[];t.forEach((e,t)=>{if(!e.pts)return;let n=p[e.a].parent,r=m.filter(t=>t.s>=2&&t.level===n&&T(t.a,n)===e.a&&T(t.b,n)===e.b);p[e.a].kind===`folder`&&V.push({folder:e.a,at:e.pts[e.pts.length-1],notes:r.map(e=>e.a),trunk:t}),p[e.b].kind===`folder`&&V.push({folder:e.b,at:e.pts[0],notes:r.map(e=>e.b),trunk:t})});let H=[],ne=e=>p[e].kind===`note`,U=new Map;for(let e=0;e<V.length;e++){let{folder:t,at:n,notes:r,trunk:i}=V[e],[a,c,u]=E(p[t],n);if(!w(a,c)||_[c*h+a])continue;let m=c*h+a,g={dir:u,rest:0,pt:n};U.has(m)||U.set(m,{ends:new Map([[m,g]]),endsAny:new Map([[m,g]]),owners:new Map([[m,-1]]),exits:new Map});let{ends:v,endsAny:y,owners:S,exits:C}=U.get(m),D=new Map;for(let e of r){let n=T(e,t);D.set(n,[...D.get(n)||[],e])}for(let[e,n]of[...D].sort((e,t)=>ne(e[0])-ne(t[0])||t[1].length-e[1].length||e[0]-t[0])){let r=ne(e),a=C.get(e),c=r?y:v,u=a&&c.has(a.cell)?{cells:[a.cell],pts:[a.wall,c.get(a.cell).pt,c.get(a.cell).pt]}:te(p[e],c,t,m,r?f:d);if(!u)continue;a||C.set(e,{cell:u.cells[0],wall:u.pts[0]});let g=H.length,_=u.cells.at(-1);H.push({item:e,folder:t,trunk:i,count:n.length,pts:u.pts,cells:u.cells,leaf:r,via:S.get(_)??-1});let w=new Float32Array(u.cells.length);w[w.length-1]=y.get(_).rest;for(let e=u.cells.length-2;e>=0;e--){let t=u.cells[e],n=u.cells[e+1],r=t%h!==n%h&&Math.floor(t/h)!==Math.floor(n/h);w[e]=w[e+1]+(1-l)*((r?Math.SQRT2*o:1)+s*(b-x[n]))}for(let[e,t]of u.cells.entries()){if(y.has(t))continue;let n=u.cells[e+1],i={dir:n===void 0?y.get(_).dir:En(n%h-t%h,Math.floor(n/h)-Math.floor(t/h)),rest:w[e],pt:[t%h+.5,Math.floor(t/h)+.5]};y.set(t,i),S.set(t,g),r||v.set(t,i)}r||V.push({folder:e,at:u.pts[0],notes:n,trunk:i})}}return un(H,y),H.map(({item:e,folder:t,trunk:n,count:r,pts:i,lane:a,leaf:o,via:s})=>({item:e,folder:t,trunk:n,count:r,pts:i,lane:a,leaf:o,via:s}))}var En=(e,t)=>mn.findIndex((n,r)=>n===Math.sign(e)&&hn[r]===Math.sign(t));function Dn(e){return[{dir:6,cells:kn(e.gx,e.gx+e.w).map(t=>[t,e.gy-1]),mid:e.gx+e.w/2,wall:t=>[t+.5,e.gy]},{dir:2,cells:kn(e.gx,e.gx+e.w).map(t=>[t,e.gy+e.h]),mid:e.gx+e.w/2,wall:t=>[t+.5,e.gy+e.h]},{dir:4,cells:kn(e.gy,e.gy+e.h).map(t=>[e.gx-1,t]),mid:e.gy+e.h/2,wall:t=>[e.gx,t+.5]},{dir:0,cells:kn(e.gy,e.gy+e.h).map(t=>[e.gx+e.w,t]),mid:e.gy+e.h/2,wall:t=>[e.gx+e.w,t+.5]}]}function On({W:e,H:t,blocked:n,owner:r},i){let a=e*t,o=new Uint8Array(a).fill(i),s=new Int32Array(a),c=0,l=0;for(let i=0;i<a;i++){if(n[i]){o[i]=0;continue}let a=i%e,c=i/e|0;for(let u=0;u<8;u++){let d=a+mn[u],f=c+hn[u];if(d<0||f<0||d>=e||f>=t)continue;let p=f*e+d;if(n[p]||r[p]!==r[i]){o[i]=1,s[l++]=i;break}}}for(;c<l;){let a=s[c++],u=a%e,d=a/e|0;if(!(o[a]+1>=i))for(let i=0;i<8;i++){let c=u+mn[i],f=d+hn[i];if(c<0||f<0||c>=e||f>=t)continue;let p=f*e+c;o[p]>o[a]+1&&!n[p]&&r[p]===r[a]&&(o[p]=o[a]+1,s[l++]=p)}}return o}var kn=(e,t)=>Array.from({length:Math.max(0,t-e)},(t,n)=>e+n);function An(e,t){let n=10/(e.cell??7),r=e.items.filter(e=>e.kind===`folder`),i=(e,t)=>Math.abs(e-t)<1e-6,a=(e,t)=>{for(let a of r){let r=i(e[0],a.gx)||i(e[0],a.gx+a.w),o=i(e[1],a.gy)||i(e[1],a.gy+a.h);if(!(r&&e[1]>=a.gy-1e-6&&e[1]<=a.gy+a.h+1e-6)&&!(o&&e[0]>=a.gx-1e-6&&e[0]<=a.gx+a.w+1e-6))continue;let s=e[0]-a.gx<a.w/2?1:-1,c=e[1]-a.gy<a.h/2?1:-1,l=s>0?a.gx:a.gx+a.w,u=c>0?a.gy:a.gy+a.h;if(Math.abs(e[0]-l)+Math.abs(e[1]-u)>=n-1e-6)return null;let d=[l+s*n/2,u+c*n/2],f=t[0]>a.gx&&t[0]<a.gx+a.w&&t[1]>a.gy&&t[1]<a.gy+a.h?[s,c]:[-s,-c],p=t[0]-d[0],m=t[1]-d[1];if(Math.abs(Math.abs(p)-Math.abs(m))<1e-6&&p*f[0]>0)return[d];let h=[p/f[0],m/f[1]].filter(e=>e>1e-6).sort((e,t)=>e-t);return h.length?[d,[d[0]+f[0]*h[0],d[1]+f[1]*h[0]]]:null}return null};for(let e of t){if(!e.pts||e.pts.length<2)continue;let t=a(e.pts[0],e.pts[1]);t&&(e.pts=[...t,...e.pts.slice(1)]);let n=a(e.pts.at(-1),e.pts.at(-2));n&&(e.pts=[...e.pts.slice(0,-1),...n.reverse()])}return t}function jn(e,t=!1){let n=e=>e.kind===`dir`?{kind:`dir`,id:e.id,ref:e.ref,children:e.children.map(n)}:{kind:e.kind,id:e.id,ref:e.ref,weight:e.weight,rank:e.rank||0};if(t){let t=[],r=e=>{e.kind===`dir`?e.children.forEach(r):t.push(n(e))};return r(e.root),{root:{kind:`dir`,id:e.root.id,ref:e.root.ref,children:t},edges:e.edges,code:!1}}return{root:n(e.root),edges:e.edges,code:!!e.code}}function Mn(e,t){let n={flow:t.gridFlow===`right`?`right`:`up`,grain:Ln(t),plan:!!t.blocks,from:t.from??null},r=$t(e,n);if(t.blocks){let t=Nn(r,vn(r,Et(r)));[...t.values()].some(e=>e.wider.size)&&(r=$t(e,{...n,planned:t}))}r.feeders=Pn(r);let i=Et(r),a=vn(r,i),o=Tn(r,a,i);return An(r,[...a,...o]),r.highways={trunks:a,feeders:o},r}function Nn(e,t){let{items:n}=e,r=e.cell>7?2:3,i=new Map;for(let[a,o]of e.pairs??[]){let e=a===``?-1:n.findIndex(e=>e.kind===`folder`&&e.ref===a),s=n.map((e,t)=>t).filter(t=>n[t].parent===e),c=t.filter(t=>t.pts&&n[t.a].parent===e),l=new Map;for(let e of s)for(let t of s){if(e>=t)continue;let i=n[e],a=n[t],[o,s]=i.gx<=a.gx?[i,a]:[a,i],[u,d]=i.gy<=a.gy?[i,a]:[a,i],f=s.gx-(o.gx+o.w),p=d.gy-(u.gy+u.h),m=null,h=!1;if(f>0&&f<=16&&Math.min(i.gy+i.h,a.gy+a.h)-Math.max(i.gy,a.gy)>=4?(m=[o.gx+o.w,Math.max(i.gy,a.gy),s.gx,Math.min(i.gy+i.h,a.gy+a.h)],h=!0):p>0&&p<=16&&Math.min(i.gx+i.w,a.gx+a.w)-Math.max(i.gx,a.gx)>=4&&(m=[Math.max(i.gx,a.gx),u.gy+u.h,Math.min(i.gx+i.w,a.gx+a.w),d.gy]),!m)continue;let g=new Map;for(let e of c)for(let t=1;t<e.pts.length;t++){let[n,r]=e.pts[t-1],[i,a]=e.pts[t],o=Math.max(1,Math.ceil(Math.max(Math.abs(i-n),Math.abs(a-r))));for(let e=0;e<=o;e++){let t=Math.floor(n+(i-n)*e/o),s=Math.floor(r+(a-r)*e/o);if(t<m[0]||t>=m[2]||s<m[1]||s>=m[3])continue;let c=h?t:s;g.has(c)||g.set(c,new Set),g.get(c).add(h?s:t)}}let _=[...g.values()].filter(e=>e.size>=4).length;_>1&&l.set([i.ref,a.ref].sort().join(`|`),r*(_-1))}i.set(a,{pair:o,wider:l})}return i}function Pn(e,t=e.trunks){let{items:n,links:r,W:i}=e;if(!t.some(e=>e.pts&&(n[e.a].kind===`folder`||n[e.b].kind===`folder`)))return[];let a=Et(e),o=cn(e,a,{crowd:1,haste:1.5});for(let e of t)e.pts&&o.occupy(e.pts);let s=(e,t)=>{for(;n[e].parent!==t;)e=n[e].parent;return e},c=(e,[t,r])=>{let i=n[e],a=(e,t)=>Math.abs(e-t)<1e-6;return a(t,i.gx)?[i.gx,Math.floor(r)]:a(t,i.gx+i.w)?[i.gx+i.w-1,Math.floor(r)]:a(r,i.gy)?[Math.floor(t),i.gy]:[Math.floor(t),i.gy+i.h-1]},l=[];t.forEach((e,t)=>{if(!e.pts)return;let i=n[e.a].parent,a=r.filter(t=>t.s>=2&&t.level===i&&s(t.a,i)===e.a&&s(t.b,i)===e.b);n[e.a].kind===`folder`&&l.push({folder:e.a,at:e.pts[e.pts.length-1],notes:a.map(e=>e.a),trunk:t}),n[e.b].kind===`folder`&&l.push({folder:e.b,at:e.pts[0],notes:a.map(e=>e.b),trunk:t})});let u=[];for(let e=0;e<l.length;e++){let{folder:t,at:r,notes:d,trunk:f}=l[e],[p,m]=c(t,r);if(p<0||m<0||p>=i||a.blocked[m*i+p])continue;let h=new Map;for(let e of d){let n=s(e,t);h.set(n,[...h.get(n)||[],e])}let g=m*i+p,_=e=>n[e].kind===`note`,v=new Map([[g,[g,r[0],r[1]]]]),y=new Map(v),b=new Map([[g,-1]]);for(let[e,n]of[...h].sort((e,t)=>_(e[0])-_(t[0])||t[1].length-e[1].length||e[0]-t[0])){let r=_(e),s=o.routeTo(e,{ends:r?y:v,folder:t,toward:g});if(!s)continue;let c=u.length;u.push({item:e,folder:t,trunk:f,count:n.length,pts:s.pts,cells:s.cells,leaf:r,via:b.get(s.cells[s.cells.length-1])??-1});let d=new Float32Array(s.cells.length);d[d.length-1]=y.get(s.cells[s.cells.length-1])?.[3]??0;for(let e=s.cells.length-2;e>=0;e--){let t=s.cells[e],n=s.cells[e+1];d[e]=d[e+1]+(t%i!==n%i&&Math.floor(t/i)!==Math.floor(n/i)?Math.SQRT2:1)+(a.close[n]?nn.hug:0)}for(let[e,t]of s.cells.entries()){if(y.has(t))continue;let n=[t,t%i+.5,Math.floor(t/i)+.5,d[e]];y.set(t,n),b.set(t,c),r||v.set(t,n)}r||l.push({folder:e,at:s.pts[0],notes:n,trunk:f})}}return un(u,a.W*a.H),u.map(({item:e,folder:t,trunk:n,count:r,pts:i,lane:a,leaf:o,via:s})=>({item:e,folder:t,trunk:n,count:r,pts:i,lane:a,leaf:o,via:s}))}function Fn(e){let t=Et(e),n=cn(e,t);return e=>pn(n,e,t.W,t.H)}function In(e){let t=3735928559,n=1103547991;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,2654435761),n=Math.imul(n^i,1597334677)}return t=Math.imul(t^t>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),(4294967296*(2097151&n)+(t>>>0)).toString(36)}var Ln=e=>e.grain===`coarse`||e.grain===`coarser`?e.grain:`fine`;function Rn(e,t={}){return In(JSON.stringify([14,t.gridFlow===`right`?`right`:`up`,Ln(t),!!t.blocks,e]))}var zn,Bn=1,Vn=new Map;function Hn(e){if(zn===void 0)try{zn=new Worker(new URL(new URL(`../workers/worker-CWkpeSVG.js`,import.meta.url).href,``+import.meta.url),{type:`module`}),zn.onmessage=({data:e})=>{let t=Vn.get(e.id);Vn.delete(e.id),e.error===void 0?t?.resolve(e.result):t?.reject(Error(e.error))},zn.onerror=()=>{for(let e of Vn.values())e.reject(Error(`the layout worker stopped`));Vn.clear(),zn=null}}catch{zn=null}if(!zn)return Promise.reject(Error(`no worker`));let t=Bn++;return new Promise((n,r)=>{Vn.set(t,{resolve:n,reject:r}),zn.postMessage({id:t,...e})})}var Un=new Map,Wn=new Map,Gn=``;async function Kn(e,t){let n=jn(e),r=Rn(n,t),i=Un.get(r);return i||(i=await Hn({layout:{model:n,o:t}}).catch(()=>Mn(n,t)),Un.size>=6&&Un.delete(Un.keys().next().value),Un.set(r,i)),{key:r,layout:i}}async function qn(e,t,n){if(!n.length)return[];let r=()=>{let r=Wn.get(e);return r||(Wn.clear(),Wn.set(e,r=Fn(t))),r(n)},i=Gn!==e;return Gn=e,(await Hn({routes:{key:e,layout:i?t:null,asks:n}}).catch(()=>Hn({routes:{key:e,layout:t,asks:n}})).catch(r)).routes.map(e=>e?.pts??null)}var Jn=M(`<path d="M5.6 5.6a2.4 2.4 0 1 1 3.4 2.2c-.6.3-1 .8-1 1.5v.9" class="svelte-m50bdg"></path><path d="M8 12v1.2" class="svelte-m50bdg"></path>`,1),Yn=M(`<path d="M8 2.5l5.8 10.5H2.2z" class="svelte-m50bdg"></path>`),Xn=M(`<svg class="notch svelte-m50bdg" viewBox="0 0 16 16" aria-hidden="true"><!></svg>`),Zn=f(`<b class="num svelte-m50bdg"> </b>`),Qn=f(`<b class="order svelte-m50bdg" aria-hidden="true"> </b>`),$n=f(`<i class="dia svelte-m50bdg" aria-hidden="true"></i>`),er=f(`<a><!><span class="t svelte-m50bdg"> </span><!><!><!></a>`);function tr(e,t){B(t,!0);let n=A(t,`kind`,3,``),i=A(t,`done`,3,!1),a=A(t,`behind`,3,`var(--ground-0)`),o=A(t,`mark`,3,``),s=A(t,`far`,3,0),l=A(t,`num`,3,0),f=A(t,`iso`,3,``),p=A(t,`linked`,3,!1),m=A(t,`dim`,3,!1),h=A(t,`moment`,3,``),_=A(t,`given`,3,!1),y=A(t,`held`,3,``),b=A(t,`changed`,3,!1),x=A(t,`pointed`,3,``),S=A(t,`order`,3,0),C=A(t,`here`,3,!1);var w=er();let T;var E=v(w),O=e=>{var t=Xn(),a=v(t),o=e=>{var t=Jn();ee(),r(e,t)},s=e=>{var t=Yn();K(()=>H(t,`fill`,i()?`currentColor`:`none`)),r(e,t)};g(a,e=>{n()===`question`?e(o):e(s,-1)}),V(t),r(e,t)};g(E,e=>{n()&&e(O)});var k=z(E),j=c(k,!0),M=z(k),N=e=>{var t=Zn(),n=c(t,!0);K(()=>W(n,l())),r(e,t)};g(M,e=>{l()&&e(N)});var P=z(M),F=e=>{var t=Qn(),n=c(t,!0);K(()=>W(n,S())),r(e,t)};g(P,e=>{S()&&e(F)});var I=z(P),te=e=>{var t=$n();r(e,t)};g(I,e=>{b()&&e(te)}),V(w),K(e=>{T=R(w,1,`n ${h()?`mo-${h()}`:``} ${f()?`p-${f()}`:``} ${o()??``} ${n()??``}`,`svelte-m50bdg`,T,{done:i(),linked:p(),dim:m()&&!l()&&!f()&&!p()&&!_(),far:s()>1,pick:l()>0,given:_(),held:y()===`on`,aside:y()===`aside`,changed:b(),pointed:!!x(),here:C()}),H(w,`aria-current`,C()?`page`:void 0),H(w,`href`,t.href),H(w,`aria-label`,l()?`${t.title}: linked, number ${l()}`:`${n()===`question`?`Question: `:n()===`problem`?`Problem${i()?`, solved`:``}: `:``}${t.title}${_()?`: in Iso's context`:y()===`on`?`: read by Iso, in hand`:y()===`aside`?`: read by Iso, set aside`:``}${b()?`, changed by Iso`:``}${x()?`, Iso points to it: ${x()}`:``}`),H(w,`title`,x()||(_()?`In Iso's context: shift+click takes it back`:y()===`on`?`Read by Iso, in hand: shift+click sets it aside`:y()===`aside`?`Read by Iso, set aside: shift+click puts it in hand again`:void 0)),H(w,`data-note`,t.item.ref),D(w,`--x:${t.item.gx??``};--y:${t.item.gy??``};--w:${t.item.w??``};--h:${t.item.h??``};--lit:${e??``}%;--behind:${a()??``}`),W(j,t.title)},[()=>Math.max(34,100-(s()-1)*20)]),u(`click`,w,function(...e){t.onpick?.apply(this,e)}),d(`pointerenter`,w,e=>{e.pointerType===`mouse`&&t.onpoint(!0)}),d(`pointerleave`,w,e=>{e.pointerType===`mouse`&&t.onpoint(!1)}),d(`focus`,w,()=>t.onpoint(!0)),d(`blur`,w,()=>t.onpoint(!1)),r(e,w),L()}j([`click`]);var nr=f(`<button class="frame-title svelte-ywp27z" type="button"> </button>`),rr=f(`<span class="frame-title held svelte-ywp27z"> </span>`),ir=f(`<div><!> <!></div>`),ar=f(`<button type="button"><span class="inner svelte-ywp27z"><span class="name svelte-ywp27z"> </span><span class="label svelte-ywp27z"> </span></span></button>`);function or(e,t){B(t,!0);let a=A(t,`titled`,3,!0),o=A(t,`held`,19,()=>({req:0,bld:0})),s=A(t,`dim`,3,!1),l=A(t,`given`,3,!1),d=A(t,`here`,3,!1),f=A(t,`moment`,3,``),h=m(()=>t.item.depth%2?`var(--ground-1)`:`var(--ground-0)`),_=m(()=>t.item.depth%2?`var(--ground-0)`:`var(--ground-1)`),y=m(()=>o().req?`req`:o().bld?`bld`:``),b=m(()=>[o().req?`${o().req} required here`:``,o().bld?`${o().bld} ${o().bld===1?`builds`:`build`} on it`:``].filter(Boolean).join(` · `)),x=m(()=>`--x:${t.item.gx};--y:${t.item.gy};--w:${t.item.w};--h:${t.item.h}`);var S=n(),C=i(S),w=e=>{var n=ir();let i;var o=v(n),s=e=>{var n=nr(),i=c(n,!0);K(()=>{H(n,`title`,l()?`In Iso's context: shift+click takes it back`:void 0),W(i,t.name)}),u(`click`,n,function(...e){t.onpick?.apply(this,e)}),r(e,n)};g(o,e=>{a()&&e(s)});var d=z(o,2),m=e=>{var t=rr(),n=c(t,!0);K(()=>W(n,p(b))),r(e,t)};g(d,e=>{p(b)&&e(m)}),V(n),K(()=>{i=R(n,1,`folder frame ${p(y)??``} ${f()?`mo-${f()}`:``}`,`svelte-ywp27z`,i,{given:l()}),H(n,`data-folder`,t.item.ref),D(n,`${p(x)??``};--inside:${p(h)??``};--behind:${p(_)??``};--ground-here:${p(h)??``}`)}),r(e,n)},T=e=>{var n=ar();let i;var a=v(n),o=v(a),m=c(o,!0),h=z(o),g=c(h,!0);V(a),V(n),K(()=>{i=R(n,1,`folder frame closed ${p(y)??``} ${f()?`mo-${f()}`:``}`,`svelte-ywp27z`,i,{dim:s(),given:l(),here:d()}),H(n,`aria-current`,d()?`page`:void 0),H(n,`data-folder`,t.item.ref),D(n,p(x)),H(n,`title`,l()?`In Iso's context: shift+click takes it back`:void 0),W(m,t.name),W(g,p(b)||`${t.count} ${t.count===1?`note`:`notes`}`)}),u(`click`,n,function(...e){t.onpick?.apply(this,e)}),r(e,n)};g(C,e=>{t.open?e(w):e(T,-1)}),r(e,S),L()}j([`click`]);var sr=M(`<path pathLength="1"></path>`),cr=M(`<path></path>`),lr=M(`<path class="sent svelte-k96fgh"></path>`),ur=M(`<!><!><!>`,1),dr=M(`<path class="grown svelte-k96fgh" pathLength="1"></path>`),fr=M(`<svg class="routes svelte-k96fgh" aria-hidden="true"><g class="svelte-k96fgh"><!><!></g></svg>`);function pr(e,t){B(t,!0);let a=A(t,`sent`,19,()=>[]),o=A(t,`grown`,19,()=>[]),s=A(t,`beat`,3,``),c=A(t,`retracting`,19,()=>[]),l=e=>`${(e.strong?e.trunk?3:1.5:e.trunk?2:1)/t.k}px`;var u=fr(),d=v(u),f=v(d),m=e=>{var t=n(),a=i(t);G(a,17,c,e=>e.key,(e,t)=>{var n=sr();let i,a;K(e=>{i=R(n,0,`along retract ${p(t).strong?`base`:`base weak`}`,`svelte-k96fgh`,i,{trunk:p(t).trunk}),H(n,`d`,p(t).d),a=D(n,``,a,{"stroke-width":e})},[()=>l(p(t))]),r(e,n)}),r(e,t)},h=e=>{var a=n(),o=i(a);G(o,17,()=>t.rest,e=>e.key,(e,t)=>{var n=sr();let i,a;K(e=>{i=R(n,0,`along draw ${p(t).strong?`base`:`base weak`}`,`svelte-k96fgh`,i,{trunk:p(t).trunk}),H(n,`d`,p(t).d),a=D(n,``,a,{"stroke-width":e})},[()=>l(p(t))]),r(e,n)}),r(e,a)},_=e=>{var n=ur(),o=i(n);G(o,17,()=>t.rest,e=>e.key,(e,t)=>{var n=cr();let i;K(()=>{i=R(n,0,F(p(t).strong?`base`:`base weak`),`svelte-k96fgh`,i,{trunk:p(t).trunk}),H(n,`d`,p(t).d)}),r(e,n)});var s=z(o);G(s,17,a,e=>e.key,(e,t)=>{var n=lr();K(()=>H(n,`d`,p(t).d)),r(e,n)});var c=z(s);G(c,17,()=>t.hot,e=>e.key,(e,t)=>{var n=cr();let i;K(()=>{i=R(n,0,`lit ${p(t).kind??``}`,`svelte-k96fgh`,i,{still:p(t).still}),H(n,`d`,p(t).d)}),r(e,n)}),r(e,n)};g(f,e=>{s()===`retract`?e(m):s()===`draw`?e(h,1):s()===``&&e(_,2)});var y=z(f);G(y,17,o,e=>e.key,(e,n)=>{var i=dr();let a;K(()=>{H(i,`d`,p(n).d),a=D(i,``,a,{"stroke-width":`${3/t.k}px`})}),r(e,i)}),V(d),V(u),K(()=>{H(u,`data-requires`,t.counts.requires),H(u,`data-builds`,t.counts.builds),H(u,`data-uses`,t.counts.uses),H(d,`transform`,`scale(${t.k??``})`)}),r(e,u),L()}var mr=f(`<p class="said svelte-14y1y1z"> </p>`),hr=f(`<p class="said faint svelte-14y1y1z">There are no notes yet. The map draws itself as you write them.</p>`),gr=f(`<span> </span>`),_r=f(`<a class="sat web svelte-14y1y1z" target="_blank" rel="noopener noreferrer"><svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-14y1y1z"><circle cx="8" cy="8" r="5.5"></circle><path d="M2.5 8h11M8 2.5c-2 2.8-2 8.2 0 11M8 2.5c2 2.8 2 8.2 0 11"></path></svg></a>`),vr=f(`<span role="img"><svg viewBox="0 0 16 16" aria-hidden="true" class="svelte-14y1y1z"><path d="M5.5 4.5L2 8l3.5 3.5M10.5 4.5L14 8l-3.5 3.5M9 3l-2 10"></path></svg></span>`),yr=f(`<a class="eph svelte-14y1y1z"><span class="t svelte-14y1y1z"> </span></a>`),br=f(`Iso is reading <span class="c-gold svelte-14y1y1z"> </span>`,1),xr=f(`<svg class="loader svelte-14y1y1z" aria-hidden="true"><path d="M0 1H1000" class="svelte-14y1y1z"></path></svg> <p class="doing svelte-14y1y1z" role="status"><i class="dia svelte-14y1y1z" aria-hidden="true"></i><!></p>`,1),Sr=f(`<div><!> <!></div>`),Cr=M(`<path d="M1.5 5.5h6l2 2.5h9v12.5h-17z" class="svelte-14y1y1z"></path>`),wr=M(`<path d="M3.5 1.5h9l4.5 4.5v16.5h-13.5z M12.5 1.5v4.5h4.5" class="svelte-14y1y1z"></path><path class="ln svelte-14y1y1z" d="M6.5 11h7.5M6.5 14.5h7.5M6.5 18h5"></path>`,1),Tr=f(`<div><svg viewBox="0 0 20 24" width="20" height="24" aria-hidden="true" class="svelte-14y1y1z"><!></svg> <span class="svelte-14y1y1z"> </span></div>`),Er=f(`<button type="button"><svg viewBox="0 0 12 12" width="12" height="12" aria-hidden="true" class="svelte-14y1y1z"><path d="M2 2l8 4-8 4z" class="svelte-14y1y1z"></path></svg></button>`),Dr=f(`<p class="notice svelte-14y1y1z" role="alert"> </p>`),Or=f(`<p class="given svelte-14y1y1z" role="status"> </p>`),kr=f(`<p class="legend svelte-14y1y1z" aria-hidden="true"><span class="svelte-14y1y1z"><i class="k g svelte-14y1y1z"></i>you gave it</span><span class="svelte-14y1y1z"><i class="k h svelte-14y1y1z"></i>Iso read it</span><span class="svelte-14y1y1z"><i class="k d svelte-14y1y1z"></i>Iso changed it</span><span class="svelte-14y1y1z"><i class="k p svelte-14y1y1z"></i>Iso points to it</span><span class="svelte-14y1y1z"><i class="k n svelte-14y1y1z">1</i>read, in order</span></p>`),Ar=f(`<button type="button" role="menuitem" class="svelte-14y1y1z"><i aria-hidden="true" class="svelte-14y1y1z">◇</i>Take back from Iso</button>`),jr=f(`<button type="button" role="menuitem" class="svelte-14y1y1z"><i aria-hidden="true" class="svelte-14y1y1z">◆</i>Give to Iso</button>`),Mr=f(`<div class="offer frame svelte-14y1y1z" role="menu"><!> <button type="button" role="menuitem" class="svelte-14y1y1z"><i aria-hidden="true" class="svelte-14y1y1z">▣</i>Open</button> <button type="button" role="menuitem" class="svelte-14y1y1z"><i class="q svelte-14y1y1z" aria-hidden="true">?</i>A question about it</button> <button type="button" role="menuitem" class="svelte-14y1y1z"><i aria-hidden="true" class="svelte-14y1y1z">△</i>A problem using it</button></div>`),Nr=f(`<div aria-hidden="true"> </div>`),Pr=f(`<!> <div><div class="scaled svelte-14y1y1z"></div> <!> <!> <div class="scaled svelte-14y1y1z"><!> <!></div> <!> <!></div> <!> <!> <!> <!> <!> <!>`,1),Fr=f(`<div role="application" aria-label="The atlas: the map of the base" tabindex="0"><div class="ground dots svelte-14y1y1z" aria-hidden="true"></div> <!></div>`);function Ir(a,f){B(f,!0);let h=A(f,`pick`,3,``),_=y(null),x=y(null),S=``,C=y(``),w=y({x:0,y:0,k:1}),T=y(1),E;t(()=>{let e=p(w).k;clearTimeout(E),Math.abs(Math.log(e/p(T)))>.35?b(T,e,!0):e!==p(T)&&(E=setTimeout(()=>b(T,e,!0),150))});let O=e=>{b(w,e),b(T,e.k,!0)},k=y({w:0,h:0}),j=y(``),M=y([]),N=m(()=>p(M).at(-1)??``),P=y(void 0),F=[`fine`,`coarse`,`coarser`],I=y(s(F.find(e=>e===oe(`isorite.atlas.grain`))??`fine`)),ne=y(oe(`isorite.atlas.leaves`)===`on`),U=!1,re=window.innerWidth>=window.innerHeight?`right`:`up`;function oe(e){try{return localStorage.getItem(e)}catch{return null}}function ue(){b(I,F[(F.indexOf(p(I))+1)%F.length],!0),U=!1;try{localStorage.setItem(`isorite.atlas.grain`,p(I))}catch{}fe()}function de(e){b(ne,e,!0);try{localStorage.setItem(`isorite.atlas.leaves`,e?`on`:`off`)}catch{}}async function fe(){try{let e=await Y.api.map(),t={...e,model:St(e.model,t=>{let n=e.notes[t];return n?.kind===`question`?!X.on.questions||!!n.done:n?.kind===`problem`&&!X.on.problems})},n=`${re}|${p(I)}`,r=p(x)&&S===n?p(x).layout.orders??null:null,i=await Kn(t.model,{gridFlow:re,grain:p(I),blocks:!0,from:r});S=n;let a=!!p(x)&&p(x).key!==i.key,o=p(x)&&p(J)?{refs:new Set(p(J).items.map(e=>e.ref)),edges:new Set(p(_).model.edges.map(([e,t])=>`${e}>${t}`))}:null,s=!p(x)||p(x).key!==i.key&&!U,c=++we,l=matchMedia(`(prefers-reduced-motion: reduce)`).matches,u=!!o&&a&&!l;if(u){if(b(Ce,p(je)),b(Se,`retract`),await xe(ve),c!==we)return;b(Ce,[]),b(Se,`move`)}if(b(_,t),b(x,i),b(C,``),o&&a&&De(o),s&&p(k).w&&O(ge()),u){if(await xe(ye),c!==we)return;b(Se,`draw`),await xe(be),c===we&&b(Se,``)}}catch(e){b(C,e.message,!0)}}let pe=``;t(()=>{let e=`${X.on.questions}|${X.on.problems}`;pe&&pe!==e&&fe(),pe=e}),t(()=>{fe();let e,t=Y.on(t=>{(t.type===`note-changed`||t.type===`record`)&&(clearTimeout(e),e=setTimeout(()=>{fe()},400))});return()=>{t(),clearTimeout(e)}});let J=m(()=>p(x)?ct(p(x).layout):null),Z=m(()=>p(J)?ot(p(J)):null),he=m(()=>p(J)?lt(p(J),p(T)):``),ge=()=>{let e=(p(J)?.margin??0)/2,t={gx:e,gy:e,w:(p(J)?.W??1)-2*e,h:(p(J)?.H??1)-2*e},n=p(Lt)?.draft?p(Lt):null;if(n&&p(J)){let e=Math.max(t.gx+t.w,n.gx+Math.max(n.w,240/p(J).cell)+2),r=Math.max(t.gy+t.h,n.gy+n.h+70/p(J).cell);t.gx=Math.min(t.gx,n.gx-2),t.gy=Math.min(t.gy,n.gy-2),t.w=e-t.gx,t.h=r-t.gy}return bt(t,p(k).w,p(k).h,1,p(J)?.cell)},ve=220,ye=520,be=340,xe=e=>new Promise(t=>setTimeout(t,e)),Se=y(``),Ce=y([]),we=0,Te=y(!1),Ee=y([]);async function De(e){if(b(Te,!0),setTimeout(()=>b(Te,!1),700),await o(),!p(J)||!p(Z)||!p(_))return;let t=matchMedia(`(prefers-reduced-motion: reduce)`).matches;for(let n of p(J).items)e.refs.has(n.ref)||n.ref.startsWith(`@`)||(p(P)?.querySelector(n.kind===`folder`?`[data-folder="${CSS.escape(n.ref)}"]`:`[data-note="${CSS.escape(n.ref)}"]`))?.animate([{opacity:0},{opacity:0,offset:t?0:.45},{opacity:1}],{duration:t?200:1e3,easing:`ease-out`});let n=p(_).model.edges.filter(([t,n])=>!e.edges.has(`${t}>${n}`)&&!t.startsWith(`@`)&&!n.startsWith(`@`)&&e.refs.has(t)&&e.refs.has(n));b(Ee,n.flatMap(([e,t])=>{let n=p(Z).at.get(e),r=p(Z).at.get(t);return n===void 0||r===void 0?[]:[{key:`${e}>${t}`,d:Oe(p(J).items[ut(p(Z),p(he),n)],p(J).items[ut(p(Z),p(he),r)])}]})),p(Ee).length&&setTimeout(()=>b(Ee,[]),5600)}function Oe(e,t){let n=t.gx+t.w/2-(e.gx+e.w/2),r=t.gy+t.h/2-(e.gy+e.h/2),i=11/18*Math.abs(n)>=Math.abs(r);return vt(yt(i?[n<0?e.gx:e.gx+e.w,e.gy+e.h/2]:[e.gx+e.w/2,r<0?e.gy:e.gy+e.h],i?[n<0?t.gx+t.w:t.gx,t.gy+t.h/2]:[t.gx+t.w/2,r<0?t.gy+t.h:t.gy],i),0,p(J).cell)}t(()=>{if(!p(P))return;let e=new ResizeObserver(([e])=>{let{width:t,height:n}=e.contentRect,r=!p(k).w,i=p(k);b(k,{w:t,h:n}),r&&p(J)?O(ge()):!r&&t&&n&&b(w,{...p(w),x:p(w).x+(t-i.w)/2,y:p(w).y+(n-i.h)/2})});return e.observe(p(P)),()=>e.disconnect()});let ke=m(()=>p(J)?p(J).items.flatMap((e,t)=>e.kind===`folder`&&p(he)[t]!==`-`?[{item:e,i:t,open:p(he)[t]===`o`}]:[]):[]),Ae=m(()=>p(J)?p(J).items.flatMap((e,t)=>e.kind===`note`&&p(he)[t]===`s`?[{item:e,i:t}]:[]):[]),je=m(()=>p(J)?ht(dt(p(J),p(he),p(Z).strong,p(ne))).map(e=>({key:e.key,pts:e.pts,d:vt(e.pts,0,p(J).cell),count:e.count,strong:e.strong,trunk:e.trunk,...Me(e)})).map((e,t,n)=>({...e,label:e.label&&!n.some((n,r)=>r!==t&&n.label&&n.count===e.count&&Math.hypot(n.mid[0]-e.mid[0],n.mid[1]-e.mid[1])<10&&(n.length>e.length||n.length===e.length&&r<t))})):[]);function Me(e){let t=e.pts[0],n=t,r=0;for(let i=1,a=0;i<e.pts.length;i++){let o=e.pts[i-1],s=e.pts[i],c=e.pts[i+1];if(c&&Math.abs((s[0]-o[0])*(c[1]-s[1])-(s[1]-o[1])*(c[0]-s[0]))<1e-6&&(s[0]-o[0])*(c[0]-s[0])+(s[1]-o[1])*(c[1]-s[1])>0)continue;let l=e.pts[a],u=Math.hypot(s[0]-l[0],s[1]-l[1]);u>r&&(r=u,t=l,n=s),a=i}return{label:e.trunk&&e.count>1&&r>=3,mid:[(t[0]+n[0])/2,(t[1]+n[1])/2],side:Math.abs(t[0]-n[0])<1e-6?`right`:`above`,length:r}}let Ne=m(()=>h()?``:p(N)||p(j)),Q=m(()=>p(Ne)&&p(_)&&p(Z)?.at.has(p(Ne))?ce(p(_).model,p(Ne)):null),Pe=m(()=>{let e=new Map;if(!p(Q))return e;for(let t of p(Q).also)e.set(t,{mark:`also`,far:0});for(let t of p(Q).uses)e.set(t,{mark:`use`,far:0});for(let t of p(Q).builds)e.set(t,{mark:`bld`,far:0});for(let t of p(Q).requires)e.set(t,{mark:`req`,far:p(Q).depth[t]??1});for(let t of p(M))e.set(t,{mark:`req`,far:1});return e.set(p(Ne),{mark:`at`,far:0}),e}),Fe=m(()=>{if(!p(Q))return[];let e=p(M).slice(1).map((e,t)=>({from:p(M)[t],to:e,kind:`requires`})),t=p(M).at(-2);return[...e,...p(Q).links.filter(e=>e.kind===`requires`?e.from===p(Ne):e.kind!==`builds`||e.from!==t)]}),Ie=m(()=>{let e=new Map;if(!p(Q)||!p(Z))return e;let t=new Set(p(Z).up[p(Z).at.get(p(Ne))]),n=(n,r)=>{for(let i of n)for(let n of p(Z).up[p(Z).at.get(i)??-1]??[]){if(t.has(n))break;let i=e.get(n)??{req:0,bld:0};i[r]++,e.set(n,i)}};return n(p(Q).requires,`req`),n(p(Q).builds,`bld`),e}),Le=(e,t)=>{let n=p(Ie).get(e),r=p(J).items[e].parent;return n&&(!t||r<0||!p(Ie).has(r))?n:{req:0,bld:0}},Re=y([]),ze=y({requires:0,builds:0,uses:0});function Be(e,t){if(!e.length||!p(J)||!p(Z)||!p(x)){t([],[]);return}let n=e.flatMap(e=>{let t=p(Z).at.get(e.from),n=p(Z).at.get(e.to);return t===void 0||n===void 0?[]:[{a:t,b:n,kind:e.kind}]}),{fixed:r,asks:i}=gt(p(J),p(Z),p(he),n),a=e=>t(ht(e,!0).map(e=>({key:e.key,kind:e.kind,d:vt(e.pts,0,p(J).cell),count:e.count,still:!e.flow})),e);if(a(r),!i.length)return;let o=!1;return qn(p(x).key,p(J),i.map(({a:e,b:t})=>({a:e,b:t}))).then(e=>{o||a([...r,...i.flatMap((t,n)=>e[n]?[{key:t.key,kind:t.kind,pts:[...e[n]].reverse()}]:[])])}).catch(()=>void 0),()=>{o=!0}}t(()=>Be(p(Fe),(e,t)=>{b(Re,e),b(ze,{requires:t.filter(e=>e.kind===`requires`).length,builds:t.filter(e=>e.kind===`builds`).length,uses:t.filter(e=>e.kind===`uses`).length})}));let Ve=m(()=>_e.route.id===`/n/[...id]`?_e.params.id??``:``);function He(e,t=!1){if(!p(J)||!p(Z)||!e)return-1;let n=t?p(J).items.findIndex(t=>t.kind===`folder`&&t.ref.replace(/\/$/,``)===e):p(Z).at.get(e)??-1;return n<0?-1:ut(p(Z),p(he),n)}let Ue=m(()=>He(p(Ve))),Je=m(()=>le.elsewhere),Ye=m(()=>p(Je)?He(p(Je).id,p(Je).folder):-1),Xe=m(()=>{if(!p(Je)||p(Je).folder||!p(Ve)||p(Je).id===p(Ve)||!p(_))return[];let e=p(_).model.edges.find(([e,t])=>e===p(Ve)&&t===p(Je).id||e===p(Je).id&&t===p(Ve));return e?[{from:e[0],to:e[1],kind:e[2]>=se.requires?`requires`:`uses`}]:[]}),et=y([]);t(()=>Be(p(Xe),e=>{b(et,e.map(e=>({...e,key:`there:${e.key}`})))}));let tt=``;t(()=>{let e=p(Ve);l(()=>{if(e&&e!==tt&&p(N)&&p(N)===tt&&p(Z)?.at.has(e)){let t=[];if(p(Q)&&p(Q).depth[e])for(let n=e;n&&n!==p(N);n=p(Q).via[n])t.unshift(n);b(M,p(M).includes(e)?p(M).slice(0,p(M).indexOf(e)+1):t.length?[...p(M),...t]:[e])}tt=e})});function nt(e){if(!p(J)||e<0||!p(k).w)return null;let t=p(J).items[e],n=p(J).cell*p(w).k,r=p(w).x+t.gx*n,i=p(w).y+t.gy*n,a=r+t.w*n,o=i+t.h*n;if(a>0&&r<p(k).w&&o>0&&i<p(k).h)return null;let s=p(k).w/2,c=p(k).h/2,l=(r+a)/2-s,u=(i+o)/2-c,d=Math.min((s-14)/Math.max(Math.abs(l),1e-6),(c-14)/Math.max(Math.abs(u),1e-6));return{x:s+l*d,y:c+u*d,angle:Math.atan2(u,l)}}let st=m(()=>h()?null:nt(p(Ue))),ft=m(()=>h()||p(Ye)===p(Ue)?null:nt(p(Ye)));function pt(e){if(!p(J))return;let t=p(J).items[e],n=p(J).cell*p(w).k;U=!0,mn({k:p(w).k,x:p(k).w/2-(t.gx+t.w/2)*n,y:p(k).h/2-(t.gy+t.h/2)*n})}let mt=m(()=>h()?null:Y.iso),_t=m(()=>p(mt)?.state===`reading`||p(mt)?.state===`writing`),Ct=m(()=>{let e=new Map;for(let t of p(mt)?.steps??[])t.opened&&!t.failed&&!e.has(t.opened)&&e.set(t.opened,t.how);return e}),Tt=m(()=>X.on.context||!!h()),Et=m(()=>new Set(q.parts.filter(e=>e.kind===`note`).map(e=>e.id))),Dt=m(()=>new Set(q.parts.filter(e=>e.kind===`folder`).map(e=>e.id))),Ot=m(()=>new Map(($.report?.rows??[]).filter(e=>e.kind===`read`).map(e=>[e.key.slice(2),e]))),kt=m(()=>$.turns.at(-1)),At=m(()=>new Set($.turns.filter(e=>!e.items.some(e=>e.kind===`undone`)).flatMap(e=>e.items.flatMap(e=>e.kind===`change`&&e.why!==`delete`?[e.why===`move`?e.to:e.note]:[])))),jt=m(()=>new Map((p(kt)?.items??[]).flatMap(e=>e.kind===`point`?[[e.note,e.why]]:[]))),Mt=m(()=>{let e=new Map;for(let t of p(kt)?.items??[])t.kind===`look`&&t.step.opened&&!t.step.failed&&!e.has(t.step.opened)&&e.set(t.step.opened,e.size+1);return e}),Nt=m(()=>p(_t)?p(mt).steps.findLast(e=>e.opened&&!e.failed)?.opened??``:``),Pt=m(()=>(p(mt)?.steps??[]).flatMap(e=>e.how===`link`&&e.from&&e.opened&&!e.failed?[{from:e.from,to:e.opened,kind:`iso`}]:[])),Ft=y([]);t(()=>Be(p(Pt),e=>{b(Ft,e.map(e=>({...e,key:`iso:${e.key}`})))}));let It=y(null);t(()=>{let e=p(mt)?.note??``;if(b(It,null),!e.startsWith(`@draft/`))return;let t=!1;return Y.api.readNote(e).then(e=>{t||b(It,e)},()=>void 0),()=>{t=!0}});let Lt=m(()=>{if(!p(mt)||!p(J)||!p(Z))return null;if(!p(mt).note.startsWith(`@draft/`)){let e=p(Z).at.get(p(mt).note);if(e===void 0)return null;let t=p(J).items[ut(p(Z),p(he),e)];return{gx:t.gx,gy:t.gy,w:t.w,h:t.h,draft:!1,title:dn(p(mt).note)}}let e=Math.round(126/p(J).cell),t=Math.round(77/p(J).cell),n=p(It)?qe(p(It).text)||`a new note`:``,r=Ze(p(mt).note),i=r?{gx:Math.round(r.gx*7/p(J).cell),gy:Math.round(r.gy*7/p(J).cell)}:null;if(i&&!p(J).items.some(n=>n.kind===`note`&&i.gx<n.gx+n.w+1&&n.gx<i.gx+e+1&&i.gy<n.gy+n.h+1&&n.gy<i.gy+t+1))return{...i,w:e,h:t,draft:!0,title:n};let a=p(J).items.filter(e=>e.parent<0),o=Math.max(...a.map(e=>e.gx+e.w)),s=Math.max(...a.map(e=>e.gy+e.h)),c=Math.round(84/p(J).cell);return re===`right`?{gx:o+c,gy:Math.round((p(J).H-t)/2),w:e,h:t,draft:!0,title:n}:{gx:Math.round((p(J).W-e)/2),gy:s+c,w:e,h:t,draft:!0,title:n}}),Rt=m(()=>p(It)?We(p(It).text).filter(e=>p(_)?.notes[e]):[]),zt=m(()=>!p(Lt)?.draft||!p(J)||!p(Z)?[]:p(Rt).flatMap(e=>{let t=p(Z).at.get(e);return t===void 0?[]:[{key:e,d:Oe(p(Lt),p(J).items[ut(p(Z),p(he),t)])}]})),Bt=e=>{if(!p(Tt))return``;if(e===p(Nt))return`used`;let t=p(Ct).get(e);return t===`keyword`?`key`:t===`meaning`?`sem`:t?`link`:``};t(()=>{let e=p(mt);e&&e.request===Y.watching&&e.state!==`reading`&&e.state!==`writing`&&(Y.watching=``,e.state===`done`&&ae(ie(`/draft/[id]`,{id:e.note.slice(7)})))});let Vt=``;t(()=>{p(Lt)?.draft&&p(mt)&&Vt!==p(mt).request&&p(k).w&&(Vt=p(mt).request,U||b(w,ge()))});let Ht=y(null),Ut=y(``);t(()=>{if(b(Ht,null),b(Ut,``),!h())return;let e=!1;return Y.api.readNote(h()).then(t=>{e||b(Ht,t)},()=>{e||b(Ut,`that note for Iso is not here any more`)}),()=>{e=!0}});let Wt=m(()=>p(Ht)?We(p(Ht).text).filter(e=>p(_)?.notes[e]&&!e.startsWith(`@`)):[]),Gt=Promise.resolve();function Kt(e){Gt=Gt.then(async()=>{if(!p(Ht)||e.startsWith(`@`))return;let t=t=>We(t).includes(e)?Ke(t,e):Ge(t,e,dn(e)),n=t(p(Ht).text);if(n===null)b(Ut,`linked in what you wrote: take it out there`);else{b(Ut,``);try{b(Ht,await Y.api.saveNote(h(),{base:p(Ht).version,text:n}))}catch{try{let e=await Y.api.readNote(h()),n=t(e.text);b(Ht,n===null?e:await Y.api.saveNote(h(),{base:e.version,text:n}))}catch(e){b(Ut,`not linked: ${e.message}`)}}}})}let qt=y(null),Jt=null,Yt=!1,Xt,Zt;function Qt(){clearTimeout(Xt),clearTimeout(Zt),Xt=Zt=void 0,Jt=null,Yt||b(qt,null)}function $t(e,t){let n=null;for(let r of p(J).items)r.kind===`folder`&&!r.ref.startsWith(`@`)&&e>=r.gx&&e<r.gx+r.w&&t>=r.gy&&t<r.gy+r.h&&(!n||r.depth>n.depth)&&(n={ref:r.ref,depth:r.depth});return n?.ref??``}function en(e,t){if(Qt(),p(nn)&&!(e.target instanceof Element&&e.target.closest(`.offer`))&&b(nn,null),h()||Yt||!p(J)||!p(Z)||!(e.target instanceof Element)||e.target.closest(`button, .dock`))return;let n=e.target.closest(`[data-note]`)?.dataset.note??``;if(n.startsWith(`@`))return;if(n){let r=e.pointerType!==`mouse`;Zt=setTimeout(()=>{Zt=void 0,hn=!0,r?b(nn,{ref:n,x:t.x,y:t.y}):on(n)},650);return}let r=p(J).cell*p(w).k,i=Math.round((t.x-p(w).x)/r),a=Math.round((t.y-p(w).y)/r),o={dir:$t(i,a),gx:i,gy:a,w:0,h:0,folder:!1};Xt=setTimeout(()=>{b(qt,o)},180),Zt=setTimeout(()=>{Zt=void 0,hn=!0,Jt=t,b(qt,o),p(P)?.setPointerCapture(e.pointerId)},650)}function tn(e){Jt&&p(qt)&&!p(qt).folder&&Math.hypot(e.x-Jt.x,e.y-Jt.y)>=24&&b(qt,{...p(qt),folder:!0})}let nn=y(null),rn=y(``),an;function on(e,t=`note`){let n=q.add({kind:t,id:e,title:t===`note`?dn(e):fn(e)});b(rn,n?`${t===`note`?dn(e):fn(e)} is in Iso's context`:`${t===`note`?dn(e):fn(e)} is in Iso's context already`,!0),clearTimeout(an),an=setTimeout(()=>b(rn,``),2200)}function sn(e,t=`note`){let n=t===`note`&&!q.has(`note`,e)?p(Ot).get(e):void 0;if(n){$.toggle(n),b(rn,`${dn(e)} is ${n.on?`set aside`:`in Iso's hand again`}`),clearTimeout(an),an=setTimeout(()=>b(rn,``),2200);return}if(!q.has(t,e)){on(e,t);return}let r=t===`note`?dn(e):fn(e);q.remove({kind:t,id:e,title:r}),b(rn,`${r} is out of Iso's context`),clearTimeout(an),an=setTimeout(()=>b(rn,``),2200)}function cn(){Jt&&p(qt)&&(Jt=null,ln(p(qt)))}async function ln(e){Yt=!0;let t=Y.listing.notes.map(e=>e.id),n=e.dir;if(e.folder){let r=Qe(e.dir,`untitled-folder`,e=>!t.some(t=>t.startsWith(`${e}/`)));n=[e.dir,r.slug].filter(Boolean).join(`/`)}let r=Qe(n,`untitled-note`,e=>!t.includes(e)),i=[n,r.slug].filter(Boolean).join(`/`),a=r.n===1?`Untitled note`:`Untitled note ${r.n}`;try{await Y.api.createNote(i,`---\ntype: Concept\ntitle: ${JSON.stringify(a)}\n---\n\n`),await Y.refresh(),X.fresh=i,await X.open(i)}catch(e){b(Ut,e.message,!0)}finally{Yt=!1,b(qt,null)}}async function un(e,t){try{await $e(e,t)}catch(e){b(Ut,e.message,!0)}}let dn=e=>p(_)?.notes[e]?.title??e.split(`/`).at(-1)??e,fn=e=>e.split(`/`).at(-1)||Y.session?.name||`the base`,pn=0;function mn(e){if(cancelAnimationFrame(pn),jn(),matchMedia(`(prefers-reduced-motion: reduce)`).matches){b(w,e);return}let t=p(w),n=performance.now(),r=i=>{let a=Math.min(1,(i-n)/320),o=1-(1-a)**3,s=t.k*(e.k/t.k)**o,c=p(k).w/2,l=p(k).h/2,u=(c-t.x)/t.k*(1-o)+(c-e.x)/e.k*o,d=(l-t.y)/t.k*(1-o)+(l-e.y)/e.k*o;b(w,a===1?e:{k:s,x:c-u*s,y:l-d*s}),a<1&&(pn=requestAnimationFrame(r))};pn=requestAnimationFrame(r)}let hn=!1,gn=new Map,_n=null;function vn(){let e=[...gn.values()];if(!e.length){_n=null;return}let t=e.reduce((e,t)=>e+t.x,0)/e.length,n=e.reduce((e,t)=>e+t.y,0)/e.length;_n={view:p(w),x:t,y:n,span:e.length>1?Math.hypot(e[0].x-e[1].x,e[0].y-e[1].y):0}}let yn=e=>{let t=p(P).getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},bn=null,xn=y(s({x:0,y:0}));function Sn(e){if(h()||!(e.target instanceof Element))return null;let t=e.target.closest(`[data-note]`)?.dataset.note;if(t)return t.startsWith(`@`)?null:{kind:`note`,id:t,title:dn(t)};let n=(e.target.closest(`.frame-title`)?.closest(`[data-folder]`)??e.target.closest(`button[data-folder]`))?.dataset.folder;return n&&!n.startsWith(`@`)?{kind:`folder`,id:n,title:fn(n)}:null}function Cn(e){if(!bn||e.pointerType!==`mouse`)return;b(xn,{x:e.clientX,y:e.clientY},!0);let t=document.elementFromPoint(e.clientX,e.clientY)?.closest(`[data-pane="iso"]`)!=null;q.carrying={part:bn,over:t}}function wn(e){(e.pointerType!==`mouse`||e.button===0)&&(cancelAnimationFrame(pn),jn(),gn.size||(hn=!1,bn=Sn(e)),gn.set(e.pointerId,yn(e)),vn(),gn.size===1?en(e,yn(e)):Qt())}function Tn(e){if(!gn.has(e.pointerId)||!_n)return;if(gn.set(e.pointerId,yn(e)),Jt){tn(yn(e));return}let t=[...gn.values()],n=t.reduce((e,t)=>e+t.x,0)/t.length,r=t.reduce((e,t)=>e+t.y,0)/t.length;if(!hn&&t.length===1&&Math.hypot(n-_n.x,r-_n.y)<5)return;if(hn||(hn=!0,Qt(),p(P).setPointerCapture(e.pointerId)),t.length===1&&bn){Cn(e);return}U=!0;let i=t.length>1?Math.hypot(t[0].x-t[1].x,t[0].y-t[1].y):0,a=_n.span&&i?xt(_n.view,i/_n.span,_n.x,_n.y):_n.view;b(w,{k:a.k,x:a.x+n-_n.x,y:a.y+r-_n.y})}function En(e){if(gn.delete(e.pointerId)){if(q.carrying){let{part:e,over:t}=q.carrying;q.carrying=null,t&&(e.kind===`note`||e.kind===`folder`)&&on(e.id,e.kind)}bn=null,Jt?cn():Zt!==void 0&&Qt(),vn()}}let Dn=null,On=0;function kn(e){e.preventDefault(),cancelAnimationFrame(pn),U=!0;let t=yn(e),n=e.deltaMode===1?16:1,r=Math.exp(-e.deltaY*n*(e.ctrlKey?.01:.0015)),i=Math.min(3,Math.max(at,(Dn?.k??p(w).k)*r));matchMedia(`(prefers-reduced-motion: reduce)`).matches?b(w,xt(p(w),i/p(w).k,t.x,t.y)):(Dn={k:i,x:t.x,y:t.y},On||=requestAnimationFrame(An))}function An(){if(On=0,!Dn)return;let e=Dn.k/p(w).k;Math.abs(Math.log(e))<.004?(b(w,xt(p(w),e,Dn.x,Dn.y)),Dn=null):(b(w,xt(p(w),e**.3,Dn.x,Dn.y)),On=requestAnimationFrame(An))}function jn(){cancelAnimationFrame(On),On=0,Dn=null}t(()=>{if(!p(P))return;let e=p(P);return e.addEventListener(`wheel`,kn,{passive:!1}),()=>e.removeEventListener(`wheel`,kn)});function Mn(e,t){if(e.metaKey||e.ctrlKey||(e.preventDefault(),e.stopPropagation(),hn))return;if(h()){Kt(t);return}if(e.shiftKey){t.startsWith(`@`)||sn(t);return}if(p(N)===t){X.open(t);return}let n=[];if(p(Q)&&p(Ne)===p(N)&&p(Q).depth[t])for(let e=t;e&&e!==p(N);e=p(Q).via[e])n.unshift(e);b(M,p(M).includes(t)?p(M).slice(0,p(M).indexOf(t)+1):n.length?[...p(M),...n]:[t])}function Nn(e,t){if(hn||!p(J))return;let n=p(J).items[e].ref;if(t?.shiftKey){n.startsWith(`@`)||sn(n,`folder`);return}U=!0;let r=bt(p(J).items[e],p(k).w,p(k).h,1.5,p(J).cell),i=Math.abs(r.k-p(w).k)<.01*r.k&&Math.hypot(r.x-p(w).x,r.y-p(w).y)<4,a=p(J).items[e].parent;mn(i?a<0?ge():bt(p(J).items[a],p(k).w,p(k).h,1.5,p(J).cell):r)}function Pn(e){if(hn||!(e.target instanceof Element)||e.target.closest(`.dock, .key`))return;let t=e.target.closest(`[data-folder]`);e.target.closest(`a, button`)||(p(N)?b(M,[]):p(mt)&&!p(_t)?Y.iso=null:t&&p(J)?Nn(p(J).items.findIndex(e=>e.kind===`folder`&&e.ref===t.dataset.folder),e):mn(ge()))}function Fn(e){if(e.key===`Escape`){b(M,[]),b(j,``);return}if(e.key===`c`&&!e.metaKey&&!e.ctrlKey&&!e.altKey){ue();return}if(e.key===`l`&&!e.metaKey&&!e.ctrlKey&&!e.altKey){de(!p(ne));return}if(e.target!==p(P))return;let t={x:p(k).w/2,y:p(k).h/2};if(e.key===`+`||e.key===`=`)b(w,xt(p(w),1.25,t.x,t.y));else if(e.key===`-`)b(w,xt(p(w),.8,t.x,t.y));else if(e.key===`0`)mn(ge());else if(e.key===`ArrowLeft`)b(w,{...p(w),x:p(w).x+80});else if(e.key===`ArrowRight`)b(w,{...p(w),x:p(w).x-80});else if(e.key===`ArrowUp`)b(w,{...p(w),y:p(w).y+80});else if(e.key===`ArrowDown`)b(w,{...p(w),y:p(w).y-80});else return;e.preventDefault(),U=!0}let In=m(()=>{if(!p(J)||!p(k).w||p(w).k<=ge().k*1.05)return-1;let e=p(J).cell*p(w).k,t=(p(k).w/2-p(w).x)/e,n=(p(k).h/2-p(w).y)/e,r=-1;return p(J).items.forEach((i,a)=>{i.kind!==`folder`||p(he)[a]!==`o`||t<i.gx||t>i.gx+i.w||n<i.gy||n>i.gy+i.h||(i.w*e>=.6*p(k).w||i.h*e>=.6*p(k).h)&&(r<0||p(J).items[r].depth<i.depth)&&(r=a)}),r});function Ln(){if(!p(J))return;U=!0;let e=p(In)<0?-1:p(J).items[p(In)].parent;mn(e<0?ge():bt(p(J).items[e],p(k).w,p(k).h,1.5,p(J).cell))}let Rn=m(()=>12*p(T)>=it),zn=m(()=>p(J)&&p(_)?wt(p(Ae).map(e=>e.item),p(_).notes,{web:X.on.web,code:X.on.code}):[]),Bn=e=>e>=0&&p(J).items[e].depth%2?`var(--ground-1)`:`var(--ground-0)`;t(()=>(Y.atlas={chosen:p(N)?dn(p(N)):``,chosenId:p(N),steps:p(M).length-1,pick:!!h(),here:p(In)<0?``:fn(p(J).items[p(In)].ref),out:Ln,fit:()=>{U=!1,mn(ge())}},()=>{Y.atlas=null}));var Vn=Fr();let Hn;var Un=v(Vn),Wn=z(Un,2),Gn=e=>{var t=mr(),n=c(t);K(()=>W(n,`The map could not be drawn: ${p(C)??``}`)),r(e,t)},Jn=t=>{var a=Pr(),o=i(a),s=e=>{var t=hr();r(e,t)};g(o,e=>{p(J).items.length||e(s)});var l=z(o,2);let d;var f=v(l);G(f,21,()=>p(ke),e=>e.item.id,(e,t)=>{{let n=m(()=>fn(p(t).item.ref)),r=m(()=>p(t).item.parent<0||(p(t).item.gy-p(J).items[p(t).item.parent].gy)*p(J).cell*p(T)>=18),i=m(()=>Le(p(t).i,p(t).open)),a=m(()=>!!p(Q)&&!p(t).open&&!p(Ie).has(p(t).i)),o=m(()=>p(Tt)&&p(Dt).has(p(t).item.ref)),s=m(()=>!p(t).open&&p(Ue)===p(t).i),c=m(()=>p(Ye)===p(t).i?p(Je).who:``);or(e,{get item(){return p(t).item},get name(){return p(n)},get count(){return p(Z).noteCount[p(t).i]},get open(){return p(t).open},get titled(){return p(r)},get held(){return p(i)},get dim(){return p(a)},get given(){return p(o)},get here(){return p(s)},get moment(){return p(c)},onpick:e=>Nn(p(t).i,e)})}}),V(f);var y=z(f,2);{let e=m(()=>[...p(Tt)?p(Ft):[],...p(Re),...p(et)]);pr(y,{get k(){return p(T)},get rest(){return p(je)},get hot(){return p(e)},get counts(){return p(ze)},get sent(){return p(zt)},get grown(){return p(Ee)},get beat(){return p(Se)},get retracting(){return p(Ce)}})}var x=z(y,2),S=e=>{var t=n(),a=i(t);G(a,17,()=>p(je),e=>e.key,(e,t)=>{var a=n(),o=i(a),s=e=>{var n=gr(),i=c(n,!0);K(()=>{R(n,1,`count ${p(t).side??``}`,`svelte-14y1y1z`),D(n,`--x:${p(t).mid[0]??``};--y:${p(t).mid[1]??``}`),W(i,p(t).count)}),r(e,n)};g(o,e=>{p(t).label&&e(s)}),r(e,a)}),r(e,t)};g(x,e=>{p(Rn)&&!p(Se)&&e(S)});var C=z(x,2),E=v(C);G(E,17,()=>p(Ae),e=>e.item.id,(e,t)=>{let n=m(()=>p(Pe).get(p(t).item.ref)),r=m(()=>p(n)?.mark??``);{let i=m(()=>dn(p(t).item.ref)),a=m(()=>p(_).notes[p(t).item.ref]?.kind??``),o=m(()=>!!p(_).notes[p(t).item.ref]?.done),s=m(()=>Bn(p(t).item.parent)),c=m(()=>p(n)?.far??0),l=m(()=>p(Wt).indexOf(p(t).item.ref)+1),u=m(()=>Bt(p(t).item.ref)),d=m(()=>p(Rt).includes(p(t).item.ref)),f=m(()=>p(Tt)&&p(Et).has(p(t).item.ref)),h=m(()=>p(Tt)&&!p(Et).has(p(t).item.ref)?p(Ot).get(p(t).item.ref)?.on?`on`:p(Ot).has(p(t).item.ref)?`aside`:``:``),g=m(()=>p(Tt)&&p(At).has(p(t).item.ref)),v=m(()=>p(Tt)?p(jt).get(p(t).item.ref)??``:``),y=m(()=>p(Tt)?p(Mt).get(p(t).item.ref)??0:0),x=m(()=>p(Ye)===p(t).i?p(Je).who:``),S=m(()=>p(Ue)===p(t).i),C=m(()=>!!p(Q)&&!p(r)),w=m(()=>me(p(t).item.ref));tr(e,{get item(){return p(t).item},get title(){return p(i)},get kind(){return p(a)},get done(){return p(o)},get behind(){return p(s)},get mark(){return p(r)},get far(){return p(c)},get num(){return p(l)},get iso(){return p(u)},get linked(){return p(d)},get given(){return p(f)},get held(){return p(h)},get changed(){return p(g)},get pointed(){return p(v)},get order(){return p(y)},get moment(){return p(x)},get here(){return p(S)},get dim(){return p(C)},get href(){return p(w)},onpick:e=>Mn(e,p(t).item.ref),onpoint:e=>{b(j,e?p(t).item.ref:p(j)===p(t).item.ref?``:p(j),!0),le.onAtlas=p(j)}})}});var O=z(E,2);G(O,17,()=>p(zn),e=>e.key,(e,t)=>{var a=n(),o=i(a),s=e=>{var n=_r();K(()=>{H(n,`href`,p(t).href),H(n,`title`,`${p(t).text} · ${p(t).href}`),H(n,`aria-label`,p(t).text),H(n,`data-sat`,p(t).key),D(n,`--x:${p(t).gx??``};--y:${p(t).gy??``}`)}),u(`click`,n,e=>{hn&&e.preventDefault(),e.stopPropagation()}),r(e,n)},c=e=>{var n=vr();let i;K(e=>{i=R(n,1,`sat code svelte-14y1y1z`,null,i,{broken:p(t).broken}),H(n,`title`,e),H(n,`aria-label`,`${p(t).text}${p(t).broken?`, not in the repository`:``}`),H(n,`data-sat`,p(t).key),D(n,`--x:${p(t).gx??``};--y:${p(t).gy??``}`)},[()=>`${p(t).text} · ${p(t).href.slice(5)}${p(t).broken?` · not in the repository`:``}`]),r(e,n)};g(o,e=>{p(t).kind===`web`?e(s):e(c,-1)}),r(e,a)}),V(C);var A=z(C,2),M=t=>{var n=Sr();let a;var o=v(n),s=e=>{var t=yr(),n=v(t),i=c(n,!0);V(t),K(e=>{H(t,`href`,e),H(t,`aria-label`,`${p(Lt).title??``}: your note for Iso`),W(i,p(Lt).title)},[()=>ie(`/draft/[id]`,{id:p(mt).note.slice(7)})]),r(e,t)};g(o,e=>{p(Lt).draft&&e(s)});var l=z(o,2),u=t=>{var n=xr(),a=z(i(n),2),o=z(v(a)),s=t=>{var n=e(`Iso is writing`);r(t,n)},l=e=>{var t=br(),n=z(i(t)),a=c(n,!0);K(e=>W(a,e),[()=>dn(p(Nt))]),r(e,t)},u=t=>{var n=e(`Iso is thinking`);r(t,n)};g(o,e=>{p(mt).state===`writing`?e(s):p(Nt)?e(l,1):e(u,-1)}),V(a),r(t,n)};g(l,e=>{p(_t)&&e(u)}),V(n),K(()=>{a=R(n,1,`asker svelte-14y1y1z`,null,a,{draft:p(Lt).draft}),D(n,`--x:${p(Lt).gx??``};--y:${p(Lt).gy??``};--w:${p(Lt).w??``};--h:${p(Lt).h??``}`)}),r(t,n)};g(A,e=>{p(Lt)&&e(M)});var N=z(A,2),P=e=>{var t=Tr();let n;var i=v(t),a=v(i),o=e=>{var t=Cr();r(e,t)},s=e=>{var t=wr();ee(),r(e,t)};g(a,e=>{p(qt).folder?e(o):e(s,-1)}),V(i);var l=z(i,2),u=c(l);V(t),K(()=>{n=R(t,1,`grasp svelte-14y1y1z`,null,n,{folder:p(qt).folder}),D(t,`--x:${p(qt).gx??``};--y:${p(qt).gy??``}`),W(u,`${p(qt).folder?`a new folder`:`a new note`}${p(qt).dir?` in ${p(qt).dir}`:``}`)}),r(e,t)};g(N,e=>{p(qt)&&e(P)}),V(l);var F=z(l,2);G(F,17,()=>[{p:p(st),i:p(Ue),who:`here`},{p:p(ft),i:p(Ye),who:p(Je)?.who??`you`}],e=>e.who===`here`?`here`:`there`,(e,t)=>{var a=n(),o=i(a),s=e=>{var n=Er();K((e,r)=>{R(n,1,`pip ${p(t).who??``}`,`svelte-14y1y1z`),D(n,`left:${p(t).p.x??``}px;top:${p(t).p.y??``}px;--a:${p(t).p.angle??``}rad`),H(n,`data-pip`,p(t).who===`here`?`here`:`there`),H(n,`aria-label`,`Bring ${e??``} into view`),H(n,`title`,`${r??``}${p(t).who===`here`?`: open in the Note pane`:``}`)},[()=>dn(p(J).items[p(t).i].ref),()=>dn(p(J).items[p(t).i].ref)]),u(`click`,n,e=>{e.stopPropagation(),pt(p(t).i)}),r(e,n)};g(o,e=>{p(t).p&&e(s)}),r(e,a)});var I=z(F,2),L=e=>{{let t=m(()=>p(Ht)?qe(p(Ht).text):``),n=m(()=>p(Wt).map(e=>({id:e,title:dn(e),tokens:p(_).notes[e]?.tokens??0}))),r=m(()=>ie(`/draft/[id]`,{id:h().slice(7)}));rt(e,{get title(){return p(t)},get picked(){return p(n)},budget:8e3,get notice(){return p(Ut)},get href(){return p(r)}})}},B=e=>{var t=Dr(),n=c(t,!0);K(()=>W(n,p(Ut))),r(e,t)};g(I,e=>{h()?e(L):p(Ut)&&e(B,1)});var te=z(I,2),ne=e=>{var t=Or(),n=c(t);K(()=>W(n,`◆ ${p(rn)??``}`)),r(e,t)};g(te,e=>{p(rn)&&e(ne)});var U=z(te,2),re=e=>{var t=kr();r(e,t)};g(U,e=>{X.on.context&&!h()&&!p(rn)&&X.settings===`atlas`&&e(re)});var ae=z(U,2),oe=e=>{let t=m(()=>p(nn));var n=Mr(),i=v(n),a=e=>{var n=Ar();u(`click`,n,e=>{e.stopPropagation(),sn(p(t).ref),b(nn,null)}),r(e,n)},o=m(()=>q.has(`note`,p(t).ref)),s=e=>{var n=jr();u(`click`,n,e=>{e.stopPropagation(),on(p(t).ref),b(nn,null)}),r(e,n)};g(i,e=>{p(o)?e(a):e(s,-1)});var c=z(i,2),l=z(c,2),d=z(l,2);V(n),K((e,r)=>{H(n,`aria-label`,e),D(n,`left:${r??``}px;top:${p(t).y+14}px`)},[()=>dn(p(t).ref),()=>Math.min(p(t).x,p(k).w-170)]),u(`click`,c,e=>{e.stopPropagation(),b(nn,null),X.open(p(t).ref,!0)}),u(`click`,l,e=>{e.stopPropagation(),b(nn,null),un(`question`,p(t).ref)}),u(`click`,d,e=>{e.stopPropagation(),b(nn,null),un(`problem`,p(t).ref)}),r(e,n)};g(ae,e=>{p(nn)&&e(oe)});var se=z(ae,2),ce=e=>{var t=Nr();let n;var i=c(t);K(()=>{n=R(t,1,`carried svelte-14y1y1z`,null,n,{over:q.carrying.over}),D(t,`left:${p(xn).x??``}px;top:${p(xn).y??``}px`),W(i,`${q.carrying.part.kind===`folder`?`▭`:`▣`} ${q.carrying.part.title??``}`)}),r(e,t)};g(se,e=>{q.carrying&&e(ce)}),K(()=>{d=R(l,1,`atlas-world svelte-14y1y1z`,null,d,{labels:p(Rn),shifting:p(Te)}),H(l,`data-open`,p(he)),D(l,`transform: translate(${p(w).x??``}px, ${p(w).y??``}px) scale(${p(w).k/p(T)}); --u: ${(p(J)?.cell??7)*p(T)}px; --k: ${p(T)??``}`),D(f,`transform: scale(${p(T)??``}); --u: ${p(J).cell??``}px; --px: ${1/p(T)}px; --ik: ${1/p(T)}`),D(C,`transform: scale(${p(T)??``}); --u: ${p(J).cell??``}px; --px: ${1/p(T)}px; --ik: ${1/p(T)}`)}),r(t,a)};g(Wn,e=>{p(C)?e(Gn):p(J)&&p(_)&&e(Jn,1)}),V(Vn),te(Vn,e=>b(P,e),()=>p(P)),K(()=>{Hn=R(Vn,1,`atlas svelte-14y1y1z`,null,Hn,{lit:!!p(Q)}),D(Un,`transform: translate(${(p(w).x%24+24)%24}px, ${(p(w).y%24+24)%24}px)`)}),u(`pointerdown`,Vn,wn),u(`pointermove`,Vn,Tn),u(`pointerup`,Vn,En),d(`pointercancel`,Vn,En),u(`click`,Vn,Pn),u(`keydown`,Vn,Fn),d(`dragstart`,Vn,e=>e.preventDefault()),u(`contextmenu`,Vn,e=>{(p(qt)||Xt!==void 0||Zt!==void 0||p(nn))&&e.preventDefault()}),r(a,Vn),L()}j([`pointerdown`,`pointermove`,`pointerup`,`click`,`keydown`,`contextmenu`]);var Lr=f(`<div class="side svelte-nwxyyl"><button class="icon svelte-nwxyyl" type="button" aria-label="this session's timeline" title="this session's timeline"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true"><path d="M8 1v14" stroke="currentColor" stroke-width="1.2" fill="none"></path><rect x="5.5" y="2" width="5" height="3.2" fill="currentColor"></rect><path d="M8 6.3l2.3 2.3L8 10.9 5.7 8.6z" fill="currentColor"></path><rect x="5.5" y="12" width="5" height="3" fill="none" stroke="currentColor" stroke-width="1.2"></rect></svg></button> <!></div>`),Rr=f(`<div class="map svelte-nwxyyl"><!> <!></div>`);function zr(e,n){B(n,!0);let i=m(()=>_e.url.searchParams.get(`pick`)??new URLSearchParams(_e.url.hash.split(`?`)[1]??``).get(`pick`)??``),a=y(s((()=>{try{return localStorage.getItem(`isorite.timeline`)===`1`}catch{return!1}})())),o=y([]),c=y(null),l=e=>Y.listing.notes.find(t=>t.id===e)?.title??e.split(`/`).at(-1),d=e=>e.who.startsWith(`iso:`)||e.who.startsWith(`agent:`);async function f(){try{b(o,(await Y.api.timeline()).filter(e=>!e.note.startsWith(`@draft/`)))}catch{}}t(()=>{if(!p(a))return;f();let e,t=Y.on(t=>{t.type===`journal`&&(clearTimeout(e),e=setTimeout(()=>{f()},300))});return()=>{t(),clearTimeout(e)}});function h(e){ae(`${me(e.note)}?at=${encodeURIComponent(pe(e))}`)}t(()=>{let e=p(c);le.set(`timeline`,e?{id:e.note,folder:!1,who:d(e)?`iso`:`you`}:null)});function _(){b(a,!p(a)),b(c,null);try{localStorage.setItem(`isorite.timeline`,p(a)?`1`:`0`)}catch{}}var x=Rr(),S=v(x);{let e=m(()=>p(i)?`@draft/${p(i)}`:``);Ir(S,{get pick(){return p(e)}})}var C=z(S,2),w=e=>{var t=Lr(),n=v(t),i=z(n,2),s=e=>{J(e,{get moments(){return p(o)},at:null,get pointed(){return p(c)},leftward:!0,name:`This session's timeline`,label:e=>l(e.note),point:e=>b(c,e),pick:e=>h(e)})};g(i,e=>{p(a)&&e(s)}),V(t),K(()=>H(n,`aria-pressed`,p(a))),u(`click`,n,_),r(e,t)};g(C,e=>{p(i)||e(w)}),V(x),r(e,x),L()}j([`click`]);var Br=new class{#e=y(null);get value(){return p(this.#e)}set value(e){b(this.#e,e)}started=!1;start(){!this.started&&Y.api&&(this.started=!0,this.refresh(),Y.on(e=>{(e.type===`iso-done`||e.type===`record`)&&this.refresh()}))}async refresh(){try{this.value=await Y.api.spend()}catch{}}},Vr=new class{#e=y(null);get view(){return p(this.#e)}set view(e){b(this.#e,e)}#t=y(``);get problem(){return p(this.#t)}set problem(e){b(this.#t,e,!0)}started=!1;get connected(){return!!this.view?.connected}get running(){return!!this.view?.busy||this.view?.turns.at(-1)?.state===`running`}get api(){return Y.api?.terminal??null}start(){!this.started&&Y.api&&(this.started=!0,this.api?(this.api.view().then(e=>this.show(e),()=>X.setTerminal(!1)),Y.on(e=>{e.type===`terminal`&&this.show(e.terminal)})):X.setTerminal(!1))}show(e){let t=this.connected;this.view=e,X.setTerminal(e.connected);for(let t of e.asking)this.refused.has(t.id)||(/^(shell|bash)$/.test(t.action)?!X.on.run:/^(edit|write|patch)$/.test(t.action)&&!X.on.files)&&(this.refused.add(t.id),this.reply(t.id,`reject`));t&&e.connected&&X.focus!==`iso`&&e.turns.length>(this.seen??e.turns.length)&&X.unseen++,this.seen=e.turns.length}seen=null;refused=new Set;async send(e){if(this.problem=``,!e.trim()||!this.api)return!1;try{let t=q.sent.map(e=>e.kind===`passage`?{kind:e.kind,id:e.id,text:e.text}:{kind:e.kind,id:e.id});return await this.api.prompt(e.trim(),t),!0}catch(e){return this.problem=e.message,!1}}async stop(){try{await this.api?.stop()}catch(e){this.problem=e.message}}async reply(e,t){try{await this.api?.reply(e,t)}catch(e){this.problem=e.message}}},Hr=f(`<span class="d svelte-po8nwq"> </span>`),Ur=f(`<button type="button" class="x svelte-po8nwq" aria-label="The turns it sums up" title="The turns it sums up"><svg viewBox="0 0 16 16" width="12" height="12" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><path></path></svg></button>`),Wr=f(`<button type="button" class="x svelte-po8nwq" title="Take it out"><svg viewBox="0 0 16 16" width="12" height="12" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><path d="M4 4l8 8M12 4l-8 8"></path></svg></button>`),Gr=f(`<li><button type="button" class="r svelte-po8nwq" role="switch"><span aria-hidden="true"> </span> <span class="t svelte-po8nwq"> </span> <!> <span class="num svelte-po8nwq"> </span> <i class="bar svelte-po8nwq"></i></button> <!></li>`),Kr=f(`<li class="row svelte-po8nwq"><span class="r svelte-po8nwq"><span class="mk svelte-po8nwq" aria-hidden="true">◆</span><span class="t svelte-po8nwq"> </span></span> <button type="button" class="x svelte-po8nwq"><svg viewBox="0 0 16 16" width="12" height="12" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><path d="M4 4l8 8M12 4l-8 8"></path></svg></button></li>`),qr=f(`<h2 class="label svelte-po8nwq">notes</h2> <ul class="rows svelte-po8nwq" aria-label="What you gave Iso" title="Sent with your next message to the terminal's agent: notes and folders by name, passages as they are"></ul>`,1),Jr=f(`<span class="acts svelte-po8nwq"><button class="icon svelte-po8nwq" type="button" aria-label="Sum up the earlier turns" title="Sum up the earlier turns, all but the last, into a briefing sent instead of them"><svg viewBox="0 0 16 16" width="14" height="14" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><path d="M3 3.5h10M3 6.5h10M5 10l3 3 3-3"></path></svg></button> <button class="icon svelte-po8nwq" type="button" aria-label="A new conversation from here" title="A new conversation that starts from a briefing of this one"><svg viewBox="0 0 16 16" width="14" height="14" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><path d="M4 2.5v6a3 3 0 0 0 3 3h5"></path><path d="M9.5 9l2.5 2.5L9.5 14"></path></svg></button></span>`),Yr=f(`<!> <!>`,1),Xr=f(`<h2 class="label svelte-po8nwq"><span> </span> <!></h2> <ul class="rows svelte-po8nwq"></ul>`,1),Zr=f(`<p class="total svelte-po8nwq"><span> </span><span class="faint"> </span></p> <!>`,1),Qr=f(`<p class="bad svelte-po8nwq" role="alert"> </p>`),$r=f(`<div class="context svelte-po8nwq" role="region" aria-label="What Iso is sent"><!> <!></div>`);function ei(e,t){B(t,!0);let a=(e,t=P,n)=>{let i=x(()=>T(n?.(),!1)),a=m(()=>p(f)?Math.min(1,t().tokens/p(f).limit):0);var s=Gr();let l;var h=v(s),y=v(h);let w;var E=c(y,!0),O=z(y,2),k=c(O,!0),A=z(O,2),j=e=>{var n=Hr(),i=c(n,!0);K(()=>W(i,t().detail)),r(e,n)};g(A,e=>{t().detail&&e(j)});var M=z(A,2),N=c(M,!0),F=z(M,2);let I;V(h);var L=z(h,2),ee=e=>{var n=Ur(),i=v(n),a=c(i);V(n),K((e,t)=>{H(n,`aria-expanded`,e),H(a,`d`,t)},[()=>p(_).includes(t().key),()=>p(_).includes(t().key)?`M4 10l4-4 4 4`:`M4 6l4 4 4-4`]),u(`click`,n,()=>b(_,p(_).includes(t().key)?p(_).filter(e=>e!==t().key):[...p(_),t().key],!0)),r(e,n)},B=e=>{var n=Wr();K(()=>H(n,`aria-label`,`Take ${t().title??``} out of Iso's context`)),u(`click`,n,()=>$.takeOut(t())),r(e,n)};g(L,e=>{t().kind===`briefing`?e(ee):t().given&&e(B,1)}),V(s),K((e,n,r,a)=>{l=R(s,1,`row svelte-po8nwq`,null,l,{off:!t().on,under:p(i)}),H(s,`data-key`,t().key),H(h,`aria-checked`,t().on),H(h,`aria-label`,`Send: ${t().title??``}`),H(h,`title`,e),h.disabled=n,w=R(y,1,`mk svelte-po8nwq`,null,w,{iso:t().by===`iso`,q:t().kind===`question`}),W(E,d[t().kind]),W(k,t().kind===`passage`?`“${t().given?.kind===`passage`?t().given.text:t().title}”`:t().title),W(N,r),I=D(F,``,I,{"--w":a})},[()=>C(t()),()=>S(t()),()=>o(t().tokens),()=>`${(p(a)*100).toFixed(2)??``}%`]),u(`click`,h,()=>void $.toggle(t())),r(e,s)},o=e=>e>=1e3?`${(e/1e3).toFixed(e>=1e5?0:1)}k`:String(e),l=[`notes`,`conversation`,`fixed`],d={note:`◆`,folder:`▭`,passage:`“`,understanding:`◇`,read:`◇`,question:`?`,turn:`›`,briefing:`≡`,instructions:``,agents:``,message:``},f=m(()=>$.report),h=m(()=>X.mode===`build`),_=y(s([])),S=e=>e.kind===`instructions`||e.kind===`message`,C=e=>e.kind===`read`?e.aged?`Read by Iso, and set aside: not used for 3 turns. Iso is told it can read it again. Click to send it again.`:e.on?`Read by Iso, and kept in hand so it is not read again. Click to set it aside.`:`Read by Iso, and set aside. Click to send it again.`:e.kind===`turn`?e.on?`An earlier turn, sent whole. Click to leave it out.`:e.under?`Summed up in the briefing above. Click to send it whole as well.`:`Left out. Click to send it again.`:e.kind===`briefing`?e.on?`Earlier turns, summed up: sent instead of them. Click to send the turns instead.`:`Not sent: the turns it sums up are sent instead. Click to send it again.`:e.kind===`agents`?`AGENTS.md: your instructions for this base, sent with every turn. Click to leave it out.`:e.kind===`question`?`An open question about a note you gave. Click to leave it out.`:S(e)?e.kind===`instructions`?`What Iso is told, and its tools`:`What you are writing`:e.on?`You gave it. Click to leave it out for now; ✕ takes it out.`:`Left out for now. Click to send it again.`;var w=$r(),E=v(w),O=e=>{var t=qr(),n=z(i(t),2);G(n,21,()=>q.sent,e=>q.keyOf(e),(e,t)=>{var n=Kr(),i=v(n),a=z(v(i)),o=c(a,!0);V(i);var s=z(i,2);V(n),K(()=>{W(o,p(t).kind===`passage`?`“${p(t).text}”`:p(t).title),H(s,`aria-label`,`Take ${p(t).title??``} out of Iso's context`)}),u(`click`,s,()=>q.remove(p(t))),r(e,n)}),V(n),r(e,t)},k=e=>{var t=Zr(),s=i(t),d=v(s),h=c(d,!0),y=z(d),b=c(y);V(s);var x=z(s,2);G(x,16,()=>l,e=>e,(e,t)=>{let o=m(()=>p(f).rows.filter(e=>e.group===t&&!e.under));var s=n(),l=i(s),d=e=>{var s=Xr(),l=i(s),d=v(l),h=c(d,!0),y=z(d,2),b=e=>{var t=Jr(),n=v(t),i=z(n,2);V(t),K(e=>{n.disabled=e,i.disabled=$.summing||!!$.running||!$.turns.length},[()=>$.summing||!!$.running||p(f).rows.filter(e=>e.kind===`turn`&&e.on).length<2]),u(`click`,n,()=>void $.compact()),u(`click`,i,()=>void $.branch()),r(e,t)};g(y,e=>{t===`conversation`&&e(b)}),V(l);var x=z(l,2);G(x,21,()=>p(o),e=>e.key,(e,t)=>{var o=Yr(),s=i(o);a(s,()=>p(t));var c=z(s,2),l=e=>{var o=n(),s=i(o);G(s,17,()=>p(f).rows.filter(e=>e.under===p(t).key),e=>e.key,(e,t)=>{a(e,()=>p(t),()=>!0)}),r(e,o)},u=m(()=>p(t).kind===`briefing`&&p(_).includes(p(t).key));g(c,e=>{p(u)&&e(l)}),r(e,o)}),V(x),K(()=>{W(h,t),H(x,`aria-label`,t===`notes`?`The notes Iso has`:t===`conversation`?`The conversation`:`Always sent`)}),r(e,s)};g(l,e=>{(p(o).length||t===`notes`)&&e(d)}),r(e,s)}),K((e,t)=>{H(s,`title`,p(f).counted?`As the provider counted the last turn`:`Estimated: counted after the first turn`),W(h,e),W(b,`of ${t??``}${p(f).counted?``:` ~`}`)},[()=>o(p(f).tokens),()=>o(p(f).limit)]),r(e,t)};g(E,e=>{p(h)?e(O):p(f)?.rows&&e(k,1)});var A=z(E,2),j=e=>{var t=Qr(),n=c(t,!0);K(()=>W(n,$.problem)),r(e,t)};g(A,e=>{$.problem&&e(j)}),V(w),r(e,w),L()}j([`click`]);var ti=f(`<div class="permit svelte-17377q0" role="group" aria-label="The terminal's agent asks before it does this"><p>OpenCode wants to <code class="svelte-17377q0"> </code>.</p> <p class="acts svelte-17377q0"><button type="button" class="svelte-17377q0">Allow once</button><button type="button" class="svelte-17377q0">Always allow this</button><button type="button" class="no svelte-17377q0">Don't allow</button></p></div>`),ni=f(`<div class="said prose svelte-17377q0"></div>`),ri=f(`<button type="button" class="note-link svelte-17377q0"> </button>`),ii=f(`<code class="q svelte-17377q0"> </code>`),ai=f(`<span class="n svelte-17377q0"><span class="add svelte-17377q0"> </span> <span class="del svelte-17377q0"> </span></span>`),oi=f(`<span> </span>`),si=f(`<pre class="diff svelte-17377q0"></pre>`),ci=f(`<pre class="out svelte-17377q0"> </pre>`),li=f(`<details><summary class="svelte-17377q0"><span class="v svelte-17377q0"> </span><!><!></summary> <!></details>`),ui=f(`<p class="line svelte-17377q0"><span class="v svelte-17377q0"> </span><!></p>`),di=f(`<div class="tool svelte-17377q0"><!> <!></div>`),fi=f(`<p class="doing svelte-17377q0" role="status"><i class="spin svelte-17377q0" aria-hidden="true"></i>OpenCode is at work</p>`),pi=f(`<p class="faint end svelte-17377q0">stopped</p>`),mi=f(`<p class="bad svelte-17377q0" role="alert">The turn failed; the terminal says why.</p>`),hi=f(`<article class="turn svelte-17377q0"><div class="you svelte-17377q0"><p class="asked svelte-17377q0"> </p><span class="from svelte-17377q0"> </span></div> <!> <!></article>`),gi=f(`<p class="title faint svelte-17377q0"> </p>`),_i=f(`<p class="faint">The terminal's session shows here: what is asked there or here, what OpenCode does, and what it asks before doing.</p>`),vi=f(`<div class="chat svelte-17377q0" role="log" aria-label="The terminal's session" aria-live="polite"><!> <!> <!> <!></div>`);function yi(e,a){B(a,!0);let s=(e,t=P)=>{var n=ti(),i=v(n),a=z(v(i)),o=c(a,!0);ee(),V(i);var s=z(i,2),l=v(s),d=z(l),f=z(d);V(s),V(n),K(e=>W(o,e),[()=>D(t())]),u(`click`,l,()=>void Vr.reply(t().id,`once`)),u(`click`,d,()=>void Vr.reply(t().id,`always`)),u(`click`,f,()=>void Vr.reply(t().id,`reject`)),r(e,n)},l=(e,t=P)=>{var a=n(),o=i(a),l=e=>{var n=ni();U(n,()=>fe(t().text),!0),V(n),r(e,n)},d=e=>{var n=di(),i=v(n),a=e=>{var n=li(),i=v(n),a=v(i),o=c(a,!0),s=z(a),l=e=>{var n=ri(),i=c(n,!0);K(e=>W(i,e),[()=>_(t().note)]),u(`click`,n,e=>{e.preventDefault(),w(t().name,t().note)}),r(e,n)},d=e=>{var n=ii(),i=c(n,!0);K(()=>W(i,t().title)),r(e,n)};g(s,e=>{t().note?e(l):e(d,-1)});var f=z(s),m=e=>{var n=ai(),i=v(n),a=c(i),o=z(i,2),s=c(o);V(n),K((e,t)=>{W(a,`+${e??``}`),W(s,`−${t??``}`)},[()=>t().diff.filter(e=>e.startsWith(`+`)).length,()=>t().diff.filter(e=>e.startsWith(`-`)).length]),r(e,n)};g(f,e=>{t().diff&&e(m)}),V(i);var h=z(i,2),y=e=>{var n=si();G(n,21,()=>t().diff,C,(e,t)=>{var n=oi();let i;var a=c(n,!0);K((e,r)=>{i=R(n,1,`svelte-17377q0`,null,i,{add:e,del:r}),W(a,p(t))},[()=>p(t).startsWith(`+`),()=>p(t).startsWith(`-`)]),r(e,n)}),V(n),r(e,n)},b=e=>{var n=ci(),i=c(n,!0);K(()=>W(i,t().output)),r(e,n)};g(h,e=>{t().diff?e(y):e(b,-1)}),V(n),K(e=>W(o,e),[()=>T(t().name)]),r(e,n)},o=e=>{var n=ui(),i=v(n),a=c(i,!0),o=z(i),s=e=>{var n=ri(),i=c(n,!0);K(e=>W(i,e),[()=>_(t().note)]),u(`click`,n,()=>w(t().name,t().note)),r(e,n)},l=e=>{var n=ii(),i=c(n,!0);K(()=>W(i,t().title)),r(e,n)};g(o,e=>{t().note?e(s):e(l,-1)}),V(n),K(e=>W(a,e),[()=>T(t().name)]),r(e,n)};g(i,e=>{t().output||t().diff?e(a):e(o,-1)});var l=z(i,2);G(l,17,()=>O(t().id),e=>e.id,(e,t)=>{s(e,()=>p(t))}),V(n),K(()=>H(n,`data-status`,t().status)),r(e,n)};g(o,e=>{t().kind===`text`?e(l):e(d,-1)}),r(e,a)},d=(e,t=P)=>{var n=hi(),i=v(n),a=v(i),o=c(a,!0),s=z(a),u=c(s,!0);V(i);var d=z(i,2);G(d,17,()=>t().items,C,(e,t)=>{l(e,()=>p(t))});var f=z(d,2),m=e=>{var t=fi();r(e,t)},h=e=>{var t=pi();r(e,t)},_=e=>{var t=mi();r(e,t)};g(f,e=>{t().state===`running`?e(m):t().state===`stopped`?e(h,1):t().state===`failed`&&e(_,2)}),V(n),K(()=>{H(n,`data-state`,t().state),W(o,t().asked),W(u,t().from===`here`?`from here`:`in the terminal`)}),r(e,n)},f=y(void 0),h=m(()=>Vr.view),_=e=>Y.listing.notes.find(t=>t.id===e)?.title??e.split(`/`).at(-1)??e,x={shell:`ran`,bash:`ran`,read:`read`,write:`wrote`,edit:`edited`,glob:`found`,grep:`searched`,webfetch:`fetched`,websearch:`searched the web`,search_notes:`searched`,find_similar:`by meaning`,outline_note:`outlined`,read_note:`read`,brief_base:`looked over`,edit_note:`changed`,write_note:`wrote`},S=new Set([`edit_note`,`write_note`]);function w(e,t){S.has(e)&&X.flip(`provenance`,!0),X.open(t,!0)}let T=e=>x[e]??e.replaceAll(`_`,` `),E={shell:`run`,edit:`edit`,write:`write`,read:`read`,webfetch:`fetch`,external_directory:`reach outside the project`},D=e=>`${E[e.action]??e.action} ${e.resources.join(`, `)}`.trim(),O=e=>p(h)?.asking.filter(t=>t.tool===e)??[],k=m(()=>p(h)?.asking.filter(e=>!e.tool||!p(h).turns.some(t=>t.items.some(t=>t.kind===`tool`&&t.id===e.tool)))??[]);t(()=>{p(h),o().then(()=>{p(f)&&(p(f).scrollTop=p(f).scrollHeight)})});var A=vi(),j=v(A),M=e=>{var t=gi(),n=c(t,!0);K(()=>W(n,p(h).title)),r(e,t)};g(j,e=>{p(h)?.title&&e(M)});var N=z(j,2);G(N,17,()=>p(h)?.turns??[],e=>e.id,(e,t)=>{d(e,()=>p(t))});var F=z(N,2);G(F,17,()=>p(k),e=>e.id,(e,t)=>{s(e,()=>p(t))});var I=z(F,2),ne=e=>{var t=_i();r(e,t)};g(I,e=>{p(h)?.turns.length||e(ne)}),V(A),te(A,e=>b(f,e),()=>p(f)),r(e,A),L()}j([`click`]);var bi=e=>{var t=Ci();r(e,t)},xi=f(`<span><span class="k svelte-d2jxoz" aria-hidden="true"> </span><span class="t svelte-d2jxoz"> </span></span>`),Si=f(`<span class="gave svelte-d2jxoz"></span>`),Ci=M(`<svg class="qm svelte-d2jxoz" viewBox="0 0 16 16" width="13" height="13" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><path d="M5.6 5.6a2.4 2.4 0 1 1 3.4 2.2c-.6.3-1 .8-1 1.5v.9"></path><path d="M8 12v1.2"></path></svg>`),wi=f(`<div class="said prose svelte-d2jxoz"></div>`),Ti=f(`<button type="button" class="note-link svelte-d2jxoz"> </button>`),Ei=f(`<span class="n svelte-d2jxoz"> </span>`),Di=f(`<span class="q svelte-d2jxoz"> </span><!>`,1),Oi=f(`<p><span class="v svelte-d2jxoz"> </span> <!></p>`),ki=f(`<span class="q"> </span>`),Ai=f(`<span class="n"><span class="add svelte-d2jxoz"> </span> <span class="del svelte-d2jxoz"> </span></span>`),ji=f(`<p class="change svelte-d2jxoz"><span class="v svelte-d2jxoz"> </span> <!> <!></p>`),Mi=f(`<p class="faint"> </p>`),Ni=f(`<p class="acts svelte-d2jxoz"><button type="button" class="svelte-d2jxoz">Allow once</button><button type="button" class="svelte-d2jxoz">Always allow this</button><button type="button" class="no svelte-d2jxoz">Don't allow</button></p>`),Pi=f(`<div class="permit svelte-d2jxoz" role="group" aria-label="Iso asks before it does this"><p> </p> <!></div>`),Fi=f(`<p class="faint undone svelte-d2jxoz"> </p>`),Ii=f(`<span class="why svelte-d2jxoz"> </span>`),Li=f(`<p class="point svelte-d2jxoz"><span class="dia svelte-d2jxoz" aria-hidden="true">◆</span><span class="v svelte-d2jxoz">look at</span><button type="button" class="note-link svelte-d2jxoz"> </button><!></p>`),Ri=f(`<span class="qt svelte-d2jxoz"> </span> <button class="icon plus svelte-d2jxoz" type="button"><svg viewBox="0 0 16 16" width="14" height="14" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M8 3v10M3 8h10"></path></svg></button>`,1),zi=f(`<p class="qb svelte-d2jxoz"> </p>`),Bi=f(`<div class="asks svelte-d2jxoz"><p class="svelte-d2jxoz"><!><!></p> <!></div>`),Vi=f(`<span title="Your instructions for this base, in Iso's settings">AGENTS.md</span>`),Hi=M(`<svg class="in svelte-d2jxoz" viewBox="0 0 16 16" width="14" height="14" role="img" aria-label="Inserted" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M3 8.5l3 3 7-7"></path></svg>`),Ui=f(`<button class="icon svelte-d2jxoz" type="button"><svg viewBox="0 0 16 16" width="15" height="15" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><path d="M13 3v6H4"></path><path d="M7 6L4 9l3 3"></path></svg></button>`),Wi=f(`<div class="offer svelte-d2jxoz"><div class="prose yours svelte-d2jxoz"></div> <p class="for svelte-d2jxoz"><!> <!></p></div>`),Gi=f(`<span class="tmode svelte-d2jxoz" title="Iso could edit the notes"><svg viewBox="0 0 16 16" width="12" height="12" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"><path d="M2.5 13.5l2.5-2.5M5 11c.6-4.2 3.6-7.4 8.5-8.5C12.6 7.2 9.4 10.4 5 11zM7.2 8.8l2.6-.3M8.8 6.6l2.4-.4"></path></svg><span class="hidden-label">write</span></span>`),Ki=f(`<!> <p class="doing svelte-d2jxoz" role="status"><i class="spin svelte-d2jxoz" aria-hidden="true"></i> </p>`,1),qi=f(`<p class="undo svelte-d2jxoz"><button class="icon svelte-d2jxoz" type="button" aria-label="Undo this turn's changes" title="Put back every note this turn changed"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><path d="M3.2 9.5A5 5 0 1 0 4.6 4.3"></path><path d="M3 1.8v3.4h3.4"></path></svg></button></p>`),Ji=f(`<p class="undo svelte-d2jxoz"><button class="icon svelte-d2jxoz" type="button" aria-label="Send it again" title="Send it again, with what was given"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><path d="M12.8 9.5A5 5 0 1 1 11.4 4.3"></path><path d="M13 1.8v3.4H9.6"></path></svg></button></p>`),Yi=f(`<p class="bad svelte-d2jxoz" role="alert"> </p> <!>`,1),Xi=f(`<p class="faint end svelte-d2jxoz">stopped</p>`),Zi=f(`<article class="turn svelte-d2jxoz"><div class="you svelte-d2jxoz"><p class="asked svelte-d2jxoz"> </p><!><!></div> <!> <!> <!></article>`),Qi=f(`<div class="chat svelte-d2jxoz" role="log" aria-label="The conversation with Iso" aria-live="polite"></div>`),$i=f(`<button class="corner stop svelte-d2jxoz" type="button" title="Stop (Escape)"><svg viewBox="0 0 16 16" width="12" height="12" aria-hidden="true"><rect x="4" y="4" width="8" height="8" fill="currentColor"></rect></svg></button>`),ea=f(`<button class="corner send svelte-d2jxoz" type="button" aria-label="Send" title="Send (Enter)"><svg viewBox="0 0 16 16" width="14" height="14" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.6"><path d="M3 8h10M9 4l4 4-4 4"></path></svg></button>`),ta=f(`<p class="bad svelte-d2jxoz" role="alert"> </p>`),na=f(`<div><!> <div class="composer svelte-d2jxoz"><div class="box svelte-d2jxoz"><label class="hidden-label" for="iso-box">Message Iso</label> <textarea id="iso-box" rows="2" class="svelte-d2jxoz"></textarea> <!></div> <!></div></div>`);function ra(e,a){B(a,!0);let s=(e,t=P)=>{var a=n(),o=i(a),s=e=>{var n=Si();G(n,21,()=>t().given,C,(e,t)=>{var n=xi();let i;var a=v(n),o=c(a,!0),s=z(a),l=c(s,!0);V(n),K(e=>{i=R(n,1,`chip svelte-d2jxoz`,null,i,{u:p(t).kind===`understanding`}),W(o,f[p(t).kind]),W(l,e)},[()=>p(t).kind===`passage`?p(t).text:p(t).kind===`folder`?p(t).id||`the base`:h(p(t).id)]),r(e,n)}),V(n),r(e,n)};g(o,e=>{t().given.length&&e(s)}),r(e,a)},l=(e,t=P,a=P)=>{var o=n(),s=i(o),l=e=>{var t=wi();U(t,()=>fe(a().text),!0),V(t),r(e,t)},d=e=>{var t=Oi();let n;var o=v(t),s=c(o,!0),l=z(o,2),d=e=>{var t=Ti(),n=c(t);K(e=>{H(t,`data-to`,a().step.opened),W(n,`${e??``}${a().step.section?` · ${a().step.section}`:``}`)},[()=>h(a().step.opened)]),u(`click`,t,()=>F(a().step.opened)),r(e,t)},f=e=>{var t=Di(),n=i(t),o=c(n,!0),s=z(n),l=e=>{var t=Ei(),n=c(t);K(()=>W(n,`${a().step.notes.length??``} found`)),r(e,t)};g(s,e=>{a().step.notes.length&&e(l)}),K(()=>W(o,a().step.query?`“${a().step.query}”`:a().step.said)),r(e,t)};g(l,e=>{a().step.opened?e(d):e(f,-1)}),V(t),K(()=>{n=R(t,1,`look svelte-d2jxoz`,null,n,{failed:a().step.failed}),W(s,_[a().step.how])}),r(e,t)},f=e=>{var t=ji(),n=v(t),i=c(n,!0),o=z(n,2),s=e=>{var t=ki(),n=c(t,!0);K(()=>W(n,a().title)),r(e,t)},l=e=>{var t=Ti(),n=c(t,!0);K(e=>{H(t,`data-to`,a().why===`move`?a().to:a().note),W(n,e)},[()=>a().why===`move`?`${a().title} → ${a().to}`:a().note.startsWith(`@`)?a().title:h(a().note)]),u(`click`,t,()=>ee(a().why===`move`?a().to:a().note)),r(e,t)};g(o,e=>{a().why===`delete`?e(s):e(l,-1)});var d=z(o,2),f=e=>{var t=Ai(),n=v(t),i=c(n),o=z(n,2),s=c(o);V(t),K(()=>{W(i,`+${a().added??``}`),W(s,`−${a().removed??``}`)}),r(e,t)};g(d,e=>{(a().added||a().removed)&&e(f)}),V(t),K(e=>W(i,e),[()=>a().note.startsWith(`@understanding/`)?`wrote`:a().why===`create`?`made`:a().why===`delete`?`deleted`:a().why===`move`?`moved`:`changed`]),r(e,t)},p=e=>{var t=Pi(),n=v(t),i=c(n),o=z(n,2),s=e=>{var t=Mi(),n=c(t,!0);K(()=>W(n,a().answer===`reject`?`Not allowed.`:a().answer===`always`?`Allowed, and from now on in this conversation.`:`Allowed once.`)),r(e,t)},l=e=>{var t=Ni(),n=v(t),i=z(n),o=z(i);V(t),u(`click`,n,()=>void $.answer(a().id,`once`)),u(`click`,i,()=>void $.answer(a().id,`always`)),u(`click`,o,()=>void $.answer(a().id,`reject`)),r(e,t)};g(o,e=>{a().answer?e(s):e(l,-1)}),V(t),K(()=>W(i,`Iso wants to ${a().what??``}.`)),r(e,t)},m=e=>{var t=Fi(),n=c(t);K((e,t)=>W(n,`${e??``}${t??``}`),[()=>a().notes.length?`Undone: ${a().notes.map(h).join(`, `)} put back.`:`Nothing was put back.`,()=>a().left.length?` Left as they are, changed since: ${a().left.map(h).join(`, `)}.`:``]),r(e,t)},y=e=>{var t=Li(),n=z(v(t),2),i=c(n,!0),o=z(n),s=e=>{var t=Ii(),n=c(t,!0);K(()=>W(n,a().why)),r(e,t)};g(o,e=>{a().why&&e(s)}),V(t),K(e=>{H(n,`data-to`,a().note),W(i,e)},[()=>h(a().note)]),u(`click`,n,()=>F(a().note)),r(e,t)},b=e=>{var n=Bi(),o=v(n),s=v(o);bi(s);var l=z(s),d=e=>{var t=Ti(),n=c(t,!0);K(()=>{H(t,`data-to`,a().made),W(n,a().title)}),u(`click`,t,()=>F(a().made)),r(e,t)},f=e=>{var n=Ri(),o=i(n),s=c(o,!0),l=z(o,2);K(e=>{W(s,a().title),H(l,`aria-label`,`Keep “${a().title??``}” as an open question`),H(l,`title`,`Keep as an open question about ${e??``}`)},[()=>a().about.map(h).join(`, `)]),u(`click`,l,()=>void $.take(t().id,a().id)),r(e,n)};g(l,e=>{a().made?e(d):e(f,-1)}),V(o);var p=z(o,2),m=e=>{var t=zi(),n=c(t,!0);K(()=>W(n,a().text)),r(e,t)};g(p,e=>{a().text&&e(m)}),V(n),K(()=>H(n,`data-question`,a().id)),r(e,n)},x=e=>{var n=Wi(),i=v(n);U(i,()=>fe(a().text),!0),V(i);var o=z(i,2),s=v(o),l=e=>{var t=Vi();r(e,t)},d=e=>{var t=Ti(),n=c(t,!0);K(e=>{H(t,`data-to`,a().note),W(n,e)},[()=>h(a().note)]),u(`click`,t,()=>F(a().note)),r(e,t)};g(s,e=>{a().note===`AGENTS.md`?e(l):e(d,-1)});var f=z(s,2),p=e=>{var t=Hi();r(e,t)},m=e=>{var n=Ui();K((e,t)=>{H(n,`aria-label`,`Insert into ${e??``} as yours`),H(n,`title`,`Insert at the end of ${t??``}, as yours`)},[()=>h(a().note),()=>h(a().note)]),u(`click`,n,()=>void $.take(t().id,a().id)),r(e,n)};g(f,e=>{a().taken?e(p):e(m,-1)}),V(o),V(n),K(()=>H(n,`data-offer`,a().id)),r(e,n)};g(s,e=>{a().kind===`text`?e(l):a().kind===`look`?e(d,1):a().kind===`change`?e(f,2):a().kind===`permission`?e(p,3):a().kind===`undone`?e(m,4):a().kind===`point`?e(y,5):a().kind===`question`?e(b,6):a().kind===`offer`&&e(x,7)}),r(e,o)},f={note:`▣`,folder:`▭`,passage:`“`,understanding:`◇`},h=e=>Y.listing.notes.find(t=>t.id===e)?.title??e.split(`/`).at(-1)??e,_={keyword:`searched`,meaning:`by meaning`,link:`followed`,read:`read`};function x(e){if(e.pointerType!==`mouse`||!(e.target instanceof Element))return;let t=e.target.closest(`[data-to], a[href]`),n=t?.dataset.to?{id:t.dataset.to,folder:!1}:t instanceof HTMLAnchorElement?ue(t.getAttribute(`href`)??``):null;le.set(`iso`,n?{...n,who:`you`}:null)}let S=y(``),T=y(void 0),D=m(()=>X.mode===`build`),O=m(()=>$.running),k=m(()=>p(D)?Vr.running:!!p(O)),A=m(()=>{if(!p(O))return``;if($.retrying)return`Iso's provider did not answer: asking again (${$.retrying.retry} of ${$.retrying.of})`;if($.streaming)return`Iso is writing`;let e=p(O).items.findLast(e=>e.kind===`look`);return e?.step.opened?`Iso is reading ${h(e.step.opened)}`:`Iso is thinking`});I(()=>{$.start(),Vr.start(),Br.start()}),t(()=>{q.sent,X.mode,oe.tier,$.measure()}),t(()=>{$.turns,$.streaming,o().then(()=>{p(T)&&(p(T).scrollTop=p(T).scrollHeight)})});async function j(){let e=p(S);await(p(D)?Vr.send(e):$.send(e))&&b(S,``)}let M=()=>p(D)?Vr.stop():$.stop();function N(e){e.key===`Enter`&&!e.shiftKey&&!e.isComposing?(e.preventDefault(),j()):e.key===`Escape`&&p(k)&&(e.preventDefault(),M())}function F(e){X.open(e,!0)}function ee(e){e.startsWith(`@understanding/`)?ne(e.slice(15)):(X.flip(`provenance`,!0),X.showUnderstanding(!1),X.open(e,!0))}function ne(e){X.showUnderstanding(!0),X.open(e,!0)}let re=e=>e.items.some(e=>e.kind===`change`)&&!e.items.some(e=>e.kind===`undone`);var ie=na();let ae;var se=v(ie),ce=e=>{ei(e,{})},de=e=>{yi(e,{})},pe=e=>{var t=Qi();G(t,21,()=>$.turns,e=>e.id,(e,t)=>{var n=Zi(),a=v(n),o=v(a),d=c(o,!0),f=z(o);s(f,()=>p(t));var h=z(f),_=e=>{var t=Gi();r(e,t)};g(h,e=>{p(t).mode===`write`&&e(_)}),V(a);var y=z(a,2);G(y,17,()=>p(t).items,C,(e,n)=>{l(e,()=>p(t),()=>p(n))});var b=z(y,2),x=e=>{var t=Ki(),n=i(t),a=e=>{var t=wi();U(t,()=>fe($.streaming),!0),V(t),r(e,t)};g(n,e=>{$.streaming&&e(a)});var o=z(n,2),s=z(v(o),1,!0);V(o),K(()=>W(s,p(A))),r(e,t)},S=e=>{var n=qi(),i=c(n);u(`click`,i,()=>void $.undo(p(t).id)),r(e,n)},w=m(()=>re(p(t)));g(b,e=>{p(t).state===`running`?e(x):p(w)&&e(S,1)});var T=z(b,2),E=e=>{var n=Yi(),a=i(n),o=c(a),s=z(a,2),l=e=>{var n=Ji(),i=c(n);u(`click`,i,()=>void $.again(p(t))),r(e,n)},d=m(()=>p(t)===$.turns.at(-1));g(s,e=>{p(d)&&e(l)}),K(()=>W(o,`Iso could not answer: ${p(t).message??``}`)),r(e,n)},D=e=>{var t=Xi();r(e,t)};g(T,e=>{p(t).state===`failed`?e(E):p(t).state===`stopped`&&e(D,1)}),V(n),K(()=>{H(n,`data-state`,p(t).state),W(d,p(t).asked)}),r(e,n)}),V(t),te(t,e=>b(T,e),()=>p(T)),u(`pointerover`,t,x),d(`pointerleave`,t,()=>le.set(`iso`,null)),r(e,t)};g(se,e=>{$.view===`context`?e(ce):p(D)?e(de,1):e(pe,-1)});var J=z(se,2),me=v(J),Z=z(v(me),2);E(Z);var he=z(Z,2),ge=e=>{var t=$i();K(()=>H(t,`aria-label`,p(D)?`Stop the terminal's agent`:`Stop Iso`)),u(`click`,t,()=>void M()),r(e,t)},_e=e=>{var t=ea();u(`click`,t,()=>void j()),r(e,t)},ve=m(()=>p(S).trim());g(he,e=>{p(k)?e(ge):p(ve)&&e(_e,1)}),V(me);var ye=z(me,2),be=e=>{var t=ta(),n=c(t,!0);K(()=>W(n,p(D)?Vr.problem:$.problem)),r(e,t)};g(ye,e=>{(p(D)?Vr.problem:$.problem)&&e(be)}),V(J),V(ie),K(()=>{ae=R(ie,1,`iso svelte-d2jxoz`,null,ae,{drop:q.carrying?.over}),H(Z,`placeholder`,p(D)?`Ask in the terminal's session`:`Ask Iso`)}),u(`keydown`,Z,N),w(Z,()=>p(S),e=>b(S,e)),r(e,ie),L()}j([`click`,`pointerover`,`keydown`]);var ia=M(`<rect x="2.5" y="2.5" width="11" height="11"></rect><path d="M8 2.5v11"></path><rect x="8.6" y="3.1" width="4.3" height="9.8" fill="currentColor" stroke="none"></rect>`,1),aa=M(`<path d="M8 1v14" stroke-width="1.2"></path><rect x="5.5" y="2" width="5" height="3.2" fill="currentColor" stroke="none"></rect><path d="M8 6.3l2.3 2.3L8 10.9 5.7 8.6z" fill="currentColor" stroke="none"></path><rect x="5.5" y="12" width="5" height="3" stroke-width="1.2"></rect>`,1),oa=M(`<path d="M5.6 5.6a2.4 2.4 0 1 1 3.4 2.2c-.6.3-1 .8-1 1.5v.9"></path><path d="M8 12v1.2"></path>`,1),sa=M(`<path d="M8 2.5l5.8 10.5H2.2z"></path>`),ca=M(`<circle cx="8" cy="8" r="5.5"></circle><path d="M2.5 8h11M8 2.5c-2 2.8-2 8.2 0 11M8 2.5c2 2.8 2 8.2 0 11"></path>`,1),la=M(`<path d="M5.5 4.5L2 8l3.5 3.5M10.5 4.5L14 8l-3.5 3.5M9 3l-2 10"></path>`),ua=M(`<path d="M8 2.5l5.5 5.5L8 13.5 2.5 8z"></path><path d="M8 5.5l2.5 2.5L8 10.5 5.5 8z" fill="currentColor" stroke="none"></path>`,1),da=M(`<path d="M2.5 13.5l2.5-2.5M5 11c.6-4.2 3.6-7.4 8.5-8.5C12.6 7.2 9.4 10.4 5 11zM7.2 8.8l2.6-.3M8.8 6.6l2.4-.4"></path>`),fa=M(`<path d="M3.5 2.5h5.5l3.5 3.5v7.5h-9z"></path><path d="M9 2.5V6h3.5"></path>`,1),pa=M(`<path d="M3 4.5l3 3.5-3 3.5M7.5 12h5.5"></path>`),ma=f(`<button type="button" class="sw svelte-ubc5lw"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"><!></svg></button>`),ha=f(`<button class="icon gear svelte-ubc5lw" type="button"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><path d="M2.5 4.5h11M2.5 8h11M2.5 11.5h11"></path><rect x="9" y="3" width="2.5" height="3" fill="var(--ground-0)" class="svelte-ubc5lw"></rect><rect x="4.5" y="6.5" width="2.5" height="3" fill="var(--ground-0)" class="svelte-ubc5lw"></rect><rect x="10" y="10" width="2.5" height="3" fill="var(--ground-0)" class="svelte-ubc5lw"></rect></svg></button>`),ga=f(`<div class="frame settings svelte-ubc5lw" role="dialog" tabindex="-1"><span class="frame-title"> </span> <div class="inner svelte-ubc5lw"><!></div></div>`),_a=f(`<header class="phead svelte-ubc5lw"><span class="pname svelte-ubc5lw"> </span> <span class="switches svelte-ubc5lw" role="group"></span> <span class="grow svelte-ubc5lw"></span> <!> <!></header> <!>`,1);function va(e,n){B(n,!0);let a={provenance:`Provenance: whose words are whose (Alt+P)`,timeline:`Timeline (Alt+T)`,context:`Iso's context: what it is sent, what it read and changed (Alt+C)`,questions:`Open questions (Alt+Q)`,problems:`Problems (Alt+B)`,web:`Links to the web (Alt+W)`,code:`Links to code (Alt+K)`,notes:`Iso may edit the notes (Alt+N)`,files:`Iso may edit the project's files (Alt+F)`,run:`Iso may run commands (Alt+R)`},o={provenance:`growth`,timeline:`lattice`,questions:`rose`,problems:`text`,web:`lattice`,code:`lattice`,context:`growth`,notes:`growth`,files:`growth`,run:`growth`},s=m(()=>he[n.pane].filter(e=>e!==`files`&&e!==`run`||X.terminal)),l=m(()=>X.settings===n.pane),f=y(void 0);t(()=>{p(l)&&p(f)?.focus()});function h(e){p(l)&&e.target instanceof Element&&(p(f)?.contains(e.target)||e.target.closest(`[data-settings="${n.pane}"]`)||(X.settings=null))}var x=_a();d(`pointerdown`,_,h),d(`keydown`,_,e=>{p(l)&&e.key===`Escape`&&(X.settings=null)});var C=i(x),w=v(C),T=c(w,!0),E=z(w,2);G(E,20,()=>p(s),e=>e,(e,t)=>{var n=ma();let i;var s=v(n),c=v(s),l=e=>{var t=ia();ee(2),r(e,t)},d=e=>{var t=aa();ee(3),r(e,t)},f=e=>{var t=oa();ee(),r(e,t)},p=e=>{var t=sa();r(e,t)},m=e=>{var t=ca();ee(),r(e,t)},h=e=>{var t=la();r(e,t)},_=e=>{var t=ua();ee(),r(e,t)},y=e=>{var t=da();r(e,t)},b=e=>{var t=fa();ee(),r(e,t)},x=e=>{var t=pa();r(e,t)};g(c,e=>{t===`provenance`?e(l):t===`timeline`?e(d,1):t===`questions`?e(f,2):t===`problems`?e(p,3):t===`web`?e(m,4):t===`code`?e(h,5):t===`context`?e(_,6):t===`notes`?e(y,7):t===`files`?e(b,8):e(x,-1)}),V(s),V(n),K(e=>{H(n,`data-switch`,t),H(n,`aria-pressed`,X.on[t]),H(n,`aria-label`,e),H(n,`title`,a[t]),i=D(n,``,i,{"--c":`var(--${o[t]??``})`})},[()=>a[t].replace(/ \(Alt\+.\)$/,``)]),u(`click`,n,()=>X.flip(t)),r(e,n)}),V(E);var O=z(E,4);S(O,()=>n.tools??P);var k=z(O,2),A=e=>{var t=ha();K(()=>{H(t,`data-settings`,n.pane),H(t,`aria-label`,`${n.name??``} settings`),H(t,`aria-expanded`,p(l)),H(t,`title`,`${n.name??``} settings`)}),u(`click`,t,()=>X.settings=p(l)?null:n.pane),r(e,t)};g(k,e=>{n.settings&&e(A)}),V(C);var j=z(C,2),M=e=>{var t=ga(),i=v(t),a=c(i,!0),o=z(i,2),s=v(o);S(s,()=>n.settings),V(o),V(t),te(t,e=>b(f,e),()=>p(f)),K(e=>{H(t,`aria-label`,`${n.name??``} settings`),W(a,e)},[()=>n.name.toLowerCase()]),r(e,t)};g(j,e=>{n.settings&&p(l)&&e(M)}),K(()=>{W(T,n.name),H(E,`aria-label`,`${n.name??``}'s switches`)}),r(e,x),L()}j([`click`]);var ya=f(`<button type="button" class="gauge svelte-1cyuk5c"><i></i> <i></i></button>`);function ba(e,t){B(t,!0);let n=e=>e>=1e3?`${(e/1e3).toFixed(e>=1e5?0:1)}k`:String(e),i=e=>`$${e.toFixed(e>0&&e<.1?3:2)}`,a={day:`today`,week:`this week`,month:`this month`,total:`in all`},o=m(()=>$.report),s=m(()=>X.mode===`build`),c=m(()=>Vr.view),l=m(()=>!p(s)&&p(o)?Math.min(1,p(o).tokens/p(o).limit):0),d=m(()=>!p(s)&&!!p(o)&&p(o).tokens>=Math.min(1e5,p(o).limit/2)),f=m(()=>!p(s)&&!!p(o)&&p(o).tokens>p(o).limit),h=m(()=>Br.value),g=m(()=>p(h)&&p(h).cap?Math.min(1,p(h).usd/p(h).cap):0),_=m(()=>p(g)>.8),y=m(()=>p(s)?`${p(c)?.model||`OpenCode`}${p(c)?`, ${n(p(c).tokens.input+p(c).tokens.output)} tokens`:``}${p(c)?.cost?`, ${i(p(c).cost)}`:``}`:p(o)?`Context: ${n(p(o).tokens)} of ${n(p(o).limit)} tokens${p(f)?`: more than the model takes; switch parts off in the Context view`:p(d)?`: long enough to drift; summing up the earlier turns may help`:``}`:`Context: not measured yet`),b=m(()=>p(h)?p(h).source===`key`?`Spend: ${i(p(h).usd)} of the key's ${i(p(h).cap)} limit, ${a[p(h).per]}`:p(h).source===`setting`?`Spend: ${i(p(h).usd)} of ${i(p(h).cap)} this month (the cap set in settings)`:p(h).cap?`Spend: ${i(p(h).usd)} this month; the most in any month is ${i(p(h).cap)}`:`Spend: ${i(p(h).usd)} this month; no cap is set`:`Spend: not known yet`);var x=ya(),S=v(x);let C,w;var T=z(S,2);let E,O;V(x),K(()=>{H(x,`aria-label`,`${p(y)??``}. ${p(b)??``}`),H(x,`title`,`${p(y)??``}
26
+ ${p(b)??``}`),C=R(S,1,`bar ctx svelte-1cyuk5c`,null,C,{long:p(d),full:p(f)}),w=D(S,``,w,{"--fill":p(l)}),E=R(T,1,`bar usd svelte-1cyuk5c`,null,E,{over:p(_)}),O=D(T,``,O,{"--fill":p(g)})}),u(`click`,x,()=>$.view=$.view===`context`?`chat`:`context`),r(e,x),L()}j([`click`]);var xa=f(`<button type="button" role="radio" class="svelte-xdo8"> </button>`),Sa=f(`<span class="tiers wide svelte-xdo8" role="radiogroup" aria-label="How able a model"></span> <button type="button" class="tiers narrow svelte-xdo8"> </button>`,1);function Ca(e,n){B(n,!0);let a=[`low`,`mid`,`max`],o={low:`quick`,mid:`Iso's default`,max:`the most able`},s=y(null);t(()=>{Y.api&&!p(s)&&Y.api.settings().then(e=>b(s,e.tiers),()=>void 0)});let l=e=>p(s)?.[e]??``,d=e=>`${e}: ${o[e]}${l(e)?`, ${l(e)}`:``}`,f=()=>oe.setTier(a[(a.indexOf(oe.tier)+1)%a.length]);var m=Sa(),h=i(m);G(h,20,()=>a,e=>e,(e,t)=>{var n=xa(),i=c(n,!0);K(e=>{H(n,`aria-checked`,oe.tier===t),H(n,`title`,e),W(i,t)},[()=>d(t)]),u(`click`,n,()=>oe.setTier(t)),r(e,n)}),V(h);var g=z(h,2),_=c(g,!0);K(e=>{H(g,`aria-label`,`How able a model: ${oe.tier??``}`),H(g,`title`,`${e??``}: click for the next`),W(_,oe.tier[0])},[()=>d(oe.tier)]),u(`click`,g,f),r(e,m),L()}j([`click`]);var wa=f(`<button class="btn" type="button">forget it</button>`),Ta=f(`<div class="row svelte-1c4xnzk"><span class="faint">or</span> <button class="btn" type="button"> </button></div> <p class="faint">You sign in there, and the key it makes comes straight here. A spending limit for it is set on the provider's page of keys.</p>`,1),Ea=f(`<p role="status"> </p>`),Da=f(`<button class="btn" type="button">no cap</button>`),Oa=f(`<dt> </dt><dd class="faint svelte-1c4xnzk"> </dd>`,1),ka=f(`<p class="soft"> </p> <form class="row svelte-1c4xnzk"><label class="hidden-label" for="key">Provider key</label> <input id="key" class="field grow" type="password" autocomplete="off" spellcheck="false"/> <button class="btn primary" type="submit">hold it</button> <!></form> <!> <!> <p class="faint">The key is kept in this device's configuration, never in a base, and is not shown again.</p> <form class="row svelte-1c4xnzk"><label class="hidden-label" for="cap">Monthly spend cap in dollars</label> <input id="cap" class="field grow" type="number" min="0.01" step="any" autocomplete="off"/> <button class="btn" type="submit">set it</button> <!></form> <p class="faint"> </p> <dl class="tiers svelte-1c4xnzk"></dl>`,1),Aa=f(`<h2 class="label svelte-1c4xnzk">AGENTS.md</h2> <label class="hidden-label" for="agents">AGENTS.md: your instructions for this base</label> <textarea id="agents" class="agents svelte-1c4xnzk" rows="6" spellcheck="true" placeholder="notation, level, language, how notes are named" title="Your instructions for this base: sent with every turn, to Iso and to the terminal's agent. Kept at the top of your notes, as AGENTS.md."></textarea>`,1),ja=f(`<p class="bad svelte-1c4xnzk" role="alert"> </p>`),Ma=f(`<section class="svelte-1c4xnzk"><h2 class="label svelte-1c4xnzk">the provider</h2> <!> <!> <!></section>`);function Na(e,n){B(n,!0);let a=y(null),o=y(``),s=y(``),l=y(``),f=y(null),m=``;t(()=>{Y.api.agents().then(e=>{b(f,e.text??``,!0),m=p(f)},()=>void 0)});async function h(){if(p(f)!==null&&p(f)!==m){b(s,``);try{await Y.api.saveAgents(p(f)),m=p(f),$.measure()}catch(e){b(s,e.message,!0)}}}t(()=>{Y.api.settings().then(e=>b(a,e),e=>b(s,e.message,!0))}),t(()=>()=>{Y.signIn=null});async function _(e){b(s,``),Y.signIn=null;try{b(a,await Y.api.setKey(e)),b(o,``)}catch(e){b(s,e.message,!0)}}async function x(e){b(s,``);try{b(a,await Y.api.setSpendCap(e)),b(l,``),Br.refresh()}catch(e){b(s,e.message,!0)}}async function S(){b(s,``),Y.signIn=null;try{await Y.startSignIn()}catch(e){b(s,e.message,!0)}}var C=Ma(),T=z(v(C),2),D=e=>{var t=ka(),n=i(t),s=c(n),f=z(n,2),m=z(v(f),2);N(m);var h=z(m,2),y=z(h,2),C=e=>{var t=wa();u(`click`,t,()=>_(null)),r(e,t)};g(y,e=>{p(a).key&&e(C)}),V(f);var T=z(f,2),E=e=>{var t=Ta(),n=i(t),o=z(v(n),2),s=c(o);V(n),ee(2),K(()=>W(s,`sign in at ${p(a).provider??``} for a new key`)),u(`click`,o,S),r(e,t)};g(T,e=>{p(a).connect&&e(E)});var D=z(T,2),O=e=>{var t=Ea(),n=c(t,!0);K(()=>{R(t,1,F(Y.signIn.ok?`soft`:`bad`),`svelte-1c4xnzk`),W(n,Y.signIn.message)}),r(e,t)};g(D,e=>{Y.signIn&&e(O)});var k=z(D,4),A=z(v(k),2);N(A);var j=z(A,2),M=z(j,2),P=e=>{var t=Da();u(`click`,t,()=>x(null)),r(e,t)};g(M,e=>{p(a).spendCap&&e(P)}),V(k);var I=z(k,2),L=c(I),B=z(I,2);G(B,20,()=>[`low`,`mid`,`max`],e=>e,(e,t)=>{var n=Oa(),o=i(n),s=c(o,!0),l=z(o),u=c(l,!0);K(()=>{W(s,t),W(u,p(a).tiers[t])}),r(e,n)}),V(B),K((e,t)=>{W(s,`Asked through ${p(a).provider??``}. ${p(a).key?`A key is held on this device.`:`No key is held yet, so Iso cannot be asked.`}`),H(m,`placeholder`,p(a).key?`paste another key to replace it`:`paste a key`),h.disabled=e,H(A,`placeholder`,p(a).spendCap?`$${p(a).spendCap} a month; another amount replaces it`:`a monthly cap in dollars`),j.disabled=t,W(L,`The lower bar in Iso's header fills toward this, over a calendar month. A key with a limit of its own at ${p(a).provider??``} is measured by that instead.`)},[()=>!p(o).trim(),()=>!(Number(p(l))>0)]),d(`submit`,f,e=>{e.preventDefault(),p(o).trim()&&_(p(o))}),w(m,()=>p(o),e=>b(o,e)),d(`submit`,k,e=>{e.preventDefault();let t=Number(p(l));t>0&&x(t)}),w(A,()=>p(l),e=>b(l,e)),r(e,t)};g(T,e=>{p(a)&&e(D)});var O=z(T,2),k=e=>{var t=Aa(),n=z(i(t),4);E(n),d(`blur`,n,()=>void h()),w(n,()=>p(f),e=>b(f,e)),r(e,t)};g(O,e=>{p(f)!==null&&e(k)});var A=z(O,2),j=e=>{var t=ja(),n=c(t,!0);K(()=>W(n,p(s))),r(e,t)};g(A,e=>{p(s)&&e(j)}),V(C),r(e,C),L()}j([`click`]);var Pa=f(`<section class="svelte-1h9x2hz"><h2 class="label svelte-1h9x2hz">this note</h2> <div class="row svelte-1h9x2hz"><button class="btn" type="button">A question about it</button> <button class="btn" type="button">A problem using it</button></div></section>`),Fa=f(`<section class="svelte-1h9x2hz"><h2 class="label svelte-1h9x2hz">the base</h2> <p><span class="name svelte-1h9x2hz"> </span> <span class="faint"> </span></p> <!></section>`),Ia=f(`<button type="button" role="radio"> </button>`),La=f(`<button type="button">fullscreen</button>`),Ra=M(`<path d="M5.8 2.5v11M10.2 2.5v11"></path>`),za=M(`<path d="M8 2.5v11M8 8h6.5"></path>`),Ba=f(`<button class="icon svelte-1h9x2hz" type="button"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><rect x="1.5" y="2.5" width="13" height="11"></rect><!></svg></button>`),Va=M(`<path d="M4 2.5h6l2.5 2.5v8.5H4zM6 7h5M6 9.5h5"></path>`),Ha=M(`<rect x="2" y="2.5" width="5" height="4"></rect><rect x="9" y="9.5" width="5" height="4"></rect><path d="M4.5 6.5v5H9"></path>`,1),Ua=M(`<path d="M8 2.5l5.5 5.5L8 13.5 2.5 8z"></path>`),Wa=f(`<button type="button"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3"><!></svg></button>`),Ga=f(`<span class="icons svelte-1h9x2hz" role="group" aria-label="Layout"></span> <span class="icons svelte-1h9x2hz" role="group" aria-label="Panes shown"></span>`,1),Ka=f(`<section class="svelte-1h9x2hz"><h2 class="label svelte-1h9x2hz">the screen</h2> <div class="row svelte-1h9x2hz"><!> <!></div></section>`),qa=f(`<!> <!> <section class="svelte-1h9x2hz"><h2 class="label svelte-1h9x2hz">the ground</h2> <div class="row svelte-1h9x2hz" role="radiogroup" aria-label="Ground"></div></section> <!> <p class="foot svelte-1h9x2hz"><a>the parts</a></p>`,1);function Ja(e,t){B(t,!0);let n={note:`Note`,atlas:`Atlas`,iso:`Iso`},a={cols:`Three columns`,stack:`The note beside the Atlas over Iso`,one:`One pane: the one in focus`},o=y(!1),s=y(!1);I(()=>{b(o,!!document.fullscreenEnabled&&!matchMedia(`(display-mode: standalone)`).matches,!0);let e=()=>{b(s,document.fullscreenElement!==null)};return e(),document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)}),y(!1);function l(){document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen().catch(()=>void 0)}var d=qa(),f=i(d),h=e=>{let t=m(()=>Y.open);var n=Pa(),i=z(v(n),2),a=v(i),o=z(a,2);V(i),V(n),u(`click`,a,()=>{X.settings=null,$e(`question`,p(t))}),u(`click`,o,()=>{X.settings=null,$e(`problem`,p(t))}),r(e,n)},_=m(()=>Y.open&&!Y.open.startsWith(`@`));g(f,e=>{p(_)&&e(h)});var x=z(f,2),S=e=>{var t=Fa(),n=z(v(t),2),i=v(n),a=c(i,!0),o=z(i,2),s=c(o);V(n);var l=z(n,2);g(l,e=>{}),V(t),K(()=>{W(a,Y.session.name),W(s,`· ${Y.listing.notes.length??``} ${Y.listing.notes.length===1?`note`:`notes`}`)}),r(e,t)};g(x,e=>{Y.session&&e(S)});var C=z(x,2),w=z(v(C),2);G(w,21,()=>be,([e,t])=>e,(e,t)=>{var n=m(()=>ne(p(t),2));let i=()=>p(n)[0],a=()=>p(n)[1];var o=Ia();let s;var l=c(o,!0);K(()=>{s=R(o,1,`btn svelte-1h9x2hz`,null,s,{on:ye.chosen===i()}),H(o,`aria-checked`,ye.chosen===i()),W(l,a())}),u(`click`,o,()=>ye.choose(i())),r(e,o)}),V(w),V(C);var T=z(C,2),E=e=>{var t=Ka(),c=z(v(t),2),d=v(c),f=e=>{var t=La();let n;K(()=>{n=R(t,1,`btn svelte-1h9x2hz`,null,n,{on:p(s)}),H(t,`aria-pressed`,p(s))}),u(`click`,t,l),r(e,t)};g(d,e=>{p(o)&&e(f)});var m=z(d,2),h=e=>{var t=Ga(),o=i(t);G(o,20,()=>ge,e=>e,(e,t)=>{var n=Ba(),i=v(n),o=z(v(i)),s=e=>{var t=Ra();r(e,t)},c=e=>{var t=za();r(e,t)};g(o,e=>{t===`cols`?e(s):t===`stack`&&e(c,1)}),V(i),V(n),K(()=>{H(n,`aria-pressed`,X.layout===t),H(n,`aria-label`,a[t]),H(n,`title`,`${a[t]??``} (Alt+L)`)}),u(`click`,n,()=>X.setLayout(t)),r(e,n)}),V(o);var s=z(o,2);G(s,20,()=>Z,e=>e,(e,t)=>{var i=Wa();let a;var o=v(i),s=v(o),c=e=>{var t=Va();r(e,t)},l=e=>{var t=Ha();ee(2),r(e,t)},d=e=>{var t=Ua();r(e,t)};g(s,e=>{t===`note`?e(c):t===`atlas`?e(l,1):e(d,-1)}),V(o),V(i),K(e=>{a=R(i,1,`icon svelte-1h9x2hz`,null,a,{off:!X.show[t]}),H(i,`aria-pressed`,X.show[t]),H(i,`aria-label`,`Show ${n[t]??``}`),H(i,`title`,`Show or hide ${n[t]??``} (Alt+${e??``} brings it back)${t===`iso`?` · hide it when your terminal has the session`:``}`)},[()=>Z.indexOf(t)+1]),u(`click`,i,()=>X.toggle(t)),r(e,i)}),V(s),r(e,t)};g(m,e=>{X.narrow||e(h)}),V(c),V(t),r(e,t)};g(T,e=>{(p(o)||!X.narrow)&&e(E)});var D=z(T,2),O=c(D);K(e=>H(O,`href`,e),[()=>ie(`/parts`)]),u(`click`,O,()=>X.settings=null),r(e,d),L()}j([`click`]);var Ya=e=>{Ja(e,{})},Xa=e=>{Na(e,{})},Za=e=>{var t=$a(),n=z(v(t),2),i=e=>{var t=Qa(),n=c(t);K(()=>W(n,`${Y.listing.notes.length??``} ${Y.listing.notes.length===1?`note`:`notes`}`)),r(e,t)};g(n,e=>{Y.atlas&&e(i)}),V(t),r(e,t)},Qa=f(`<p class="soft svelte-12qhfyh"> </p>`),$a=f(`<section class="set svelte-12qhfyh"><h2 class="label svelte-12qhfyh">the map</h2> <!></section>`),eo=f(`<p class="stopped svelte-12qhfyh"> </p>`),to=f(`<div class="divider svelte-12qhfyh" role="separator" aria-orientation="vertical" tabindex="0"></div>`),no=f(`<button class="icon svelte-12qhfyh" type="button" data-tour="understanding" aria-label="Understanding note" title="Understanding note"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round" class="svelte-12qhfyh"><path d="M8 14.5V7.5M8 7.5L4.6 4.4M8 7.5l3.4-3.1M8 7.5V2.5M4.6 4.4L2.8 4.6M4.6 4.4L4.5 2.4M11.4 4.4l1.8.2M11.4 4.4l.1-2M8 11L5.8 9.6M8 11l2.2-1.4" class="svelte-12qhfyh"></path></svg></button>`),ro=f(`<span role="status"><i aria-hidden="true" class="svelte-12qhfyh"></i><span class="hidden-label svelte-12qhfyh"> </span></span>`),io=f(`<!> <!> <button class="icon svelte-12qhfyh" type="button" aria-label="All notes" title="All notes, and search"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" class="svelte-12qhfyh"><path d="M2.5 3h4M4.5 3v9.5h3M4.5 7.5h3" class="svelte-12qhfyh"></path><rect x="8" y="5.5" width="5.5" height="3.5" class="svelte-12qhfyh"></rect><rect x="8" y="10.5" width="5.5" height="3.5" class="svelte-12qhfyh"></rect></svg></button>`,1),ao=f(`<div class="tree svelte-12qhfyh"><!></div>`),oo=f(`<!> <div class="pbody note-body svelte-12qhfyh"><!></div> <!>`,1),so=f(`<span class="says svelte-12qhfyh"> </span> <button class="link svelte-12qhfyh" type="button">stop</button>`,1),co=f(`<span title="click open ground to let its path go"> </span>`),lo=f(`<span class="says svelte-12qhfyh">click a note to link it, again to take it away</span>`),uo=f(`<span class="says svelte-12qhfyh"> </span>`),fo=f(`<span class="where soft svelte-12qhfyh"> </span><button class="btn out svelte-12qhfyh" type="button">↑ out</button>`,1),po=f(`<button class="icon svelte-12qhfyh" type="button" aria-label="The whole map" title="The whole map (0)"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" class="svelte-12qhfyh"><path d="M2.5 6V2.5H6M10 2.5h3.5V6M13.5 10v3.5H10M6 13.5H2.5V10" class="svelte-12qhfyh"></path></svg></button>`),mo=f(`<!> <!> <!>`,1),ho=f(`<!> <div class="pbody atlas-body svelte-12qhfyh"><!></div>`,1),go=f(`<span> </span>`),_o=f(`<!> <!> <!> <button class="icon ctx svelte-12qhfyh" type="button" aria-label="Context" title="What Iso is sent, part by part"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" class="svelte-12qhfyh"><path d="M3 3.5h10M3 6.5h10M3 9.5h6M3 12.5h6" class="svelte-12qhfyh"></path></svg> <!></button> <button class="icon svelte-12qhfyh" type="button" aria-label="A new conversation" title="A new conversation: nothing earlier is sent"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.3" class="svelte-12qhfyh"><path d="M8 3.5v9M3.5 8h9" class="svelte-12qhfyh"></path></svg></button>`,1),vo=f(`<!> <div class="pbody iso-body svelte-12qhfyh"><!></div>`,1),yo=f(`<section><!> <!></section>`),bo=f(`<span class="badge svelte-12qhfyh"> </span>`),xo=f(`<button type="button" class="svelte-12qhfyh"> <!></button>`),So=f(`<div class="shell svelte-12qhfyh"><main class="panes svelte-12qhfyh"><!></main> <nav class="tabs svelte-12qhfyh" aria-label="Panes"></nav></div>`);function Co(e,o){B(o,!0),Y.signIn!==null&&(X.settings=`iso`);let s=m(()=>X.standing);t(()=>{_e.route.id===`/n/[...id]`&&_e.params.id&&X.setLast(_e.params.id)}),t(()=>{_e.url.href,X.tree=!1}),I(()=>{let e=matchMedia(`(max-width: 760px)`);X.narrow=e.matches;let t=()=>{X.narrow=e.matches,X.narrow&&requestAnimationFrame(()=>X.scroll?.(X.focus))};return e.addEventListener(`change`,t),X.scroll=e=>{if(!X.narrow||!p(l))return;let t=p(l).querySelector(`[data-pane="${e}"]`);t&&p(l).scrollTo({left:t.offsetLeft,behavior:matchMedia(`(prefers-reduced-motion: reduce)`).matches?`auto`:`smooth`})},()=>{e.removeEventListener(`change`,t),X.scroll=null}});let l=y(void 0),f=m(()=>{if(X.layout===`stack`&&p(s).length===3){let[e,t]=p(s);return{template:`"a b" minmax(0, 1fr) "a c" minmax(0, 1fr) / minmax(0, ${X.widths[e]}fr) minmax(0, ${X.widths[t]}fr)`,areas:Object.fromEntries(p(s).map((e,t)=>[e,`abc`[t]]))}}return{template:`minmax(0, 1fr) / ${p(s).map(e=>`minmax(0, ${X.widths[e]}fr)`).join(` `)}`,areas:{}}});function x(e,t){let n=e.currentTarget,r=p(s)[p(s).indexOf(t)-1];if(!r||!p(l))return;n.setPointerCapture(e.pointerId);let i=p(s).reduce((e,t)=>e+(X.layout===`stack`&&t===p(s)[2]?0:X.widths[t]),0),a=p(l).getBoundingClientRect().width/i,o=e.clientX,c=e=>{let n=(e.clientX-o)/a,i=X.widths[r]+n,s=X.widths[t]-n;i<.4||s<.4||(X.setWidth(r,i),X.setWidth(t,s),o=e.clientX)},u=()=>{n.removeEventListener(`pointermove`,c),n.removeEventListener(`pointerup`,u)};n.addEventListener(`pointermove`,c),n.addEventListener(`pointerup`,u)}function C(e,t){let n=p(s)[p(s).indexOf(t)-1];if(!n||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return;let r=e.key===`ArrowLeft`?-.1:.1;X.widths[n]+r>=.4&&X.widths[t]-r>=.4&&(X.setWidth(n,X.widths[n]+r),X.setWidth(t,X.widths[t]-r)),e.preventDefault()}function w(){X.narrow&&p(l)&&(clearTimeout(T),T=setTimeout(()=>{let e=Z[Math.round(p(l).scrollLeft/p(l).clientWidth)];e&&e!==X.focus&&(X.focus=e,e===`iso`&&(X.unseen=0))},60))}let T;function E(e){if(e.key===`Escape`&&X.tree){X.tree=!1;return}if(!e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented)return;let t=e.target?.closest?.(`.cm-editor, input, textarea`)!=null,n=e.key;if(n===`1`||n===`2`||n===`3`)X.to(Z[n-1]);else if(n.toLowerCase()===`l`&&!X.narrow)X.nextLayout();else if(t)return;else if(n===`ArrowLeft`||n===`ArrowRight`)X.step(n===`ArrowRight`?1:-1);else if(A[n.toLowerCase()])X.flip(A[n.toLowerCase()]);else return;e.preventDefault()}let O={note:`Note`,atlas:`Atlas`,iso:`Iso`},A={p:`provenance`,t:`timeline`,q:`questions`,b:`problems`,w:`web`,k:`code`,c:`context`,n:`notes`,f:`files`,r:`run`},j=m(()=>_e.route.id===`/n/[...id]`||_e.route.id===`/draft/[id]`),M=m(()=>Y.atlas&&!Y.atlas.pick&&Y.iso?.start?.place.form!==`turn`?Y.iso:null),N=m(()=>p(M)?.state===`reading`||p(M)?.state===`writing`),P=m(()=>p(M)?Y.listing.notes.find(e=>e.id===p(M).note)?.title??`your note`:``),F=()=>{p(M)&&Y.api.stop(p(M).request)},ee=m(()=>de(p(M)?.agent)),ne=m(()=>{let e=p(M)?.steps.findLast(e=>e.opened&&!e.failed)?.opened;return e?Y.listing.notes.find(t=>t.id===e)?.title??e:``});var U=So();k(`12qhfyh`,e=>{h(()=>{a.title=p(j)&&Y.here?`${Y.here} · isorite`:`isorite`})}),d(`keydown`,_,E);var ie=v(U);let ae;var oe=v(ie),se=e=>{var t=eo(),n=c(t);K(()=>W(n,`isorite could not open the base: ${Y.error??``}`)),r(e,t)},ce=e=>{var t=n(),a=i(t);G(a,16,()=>Z,e=>e,(e,t)=>{var a=yo();let l,h;var _=v(a),y=e=>{var n=to();K(()=>H(n,`aria-label`,`Resize ${O[t]??``}`)),u(`pointerdown`,n,e=>x(e,t)),u(`keydown`,n,e=>C(e,t)),r(e,n)};g(_,e=>{!X.narrow&&p(s)[0]!==t&&(X.layout!==`stack`||p(s)[2]!==t)&&e(y)});var b=z(_,2),w=e=>{var t=oo(),n=i(t);va(n,{pane:`note`,name:`Note`,get settings(){return Ya},tools:e=>{var t=io(),n=i(t),a=e=>{var t=no();K(()=>H(t,`aria-pressed`,X.understanding)),u(`click`,t,()=>X.showUnderstanding()),r(e,t)},o=m(()=>_e.route.id===`/n/[...id]`&&!(_e.params.id??``).startsWith(`@`));g(n,e=>{p(o)&&e(a)});var s=z(n,2),l=e=>{var t=ro();let n;var i=z(v(t)),a=c(i,!0);V(t),K(e=>{n=R(t,1,`saved svelte-12qhfyh`,null,n,{bad:Y.saving.bad,busy:e}),H(t,`title`,Y.saving.text),W(a,Y.saving.text)},[()=>!Y.saving.text.startsWith(`saved`)]),r(e,t)};g(s,e=>{p(j)&&Y.saving&&e(l)});var d=z(s,2);K(()=>H(d,`aria-pressed`,_e.route.id===`/notes`||X.tree)),u(`click`,d,()=>{_e.route.id!==`/notes`&&(X.tree=!X.tree)}),r(e,t)},$$slots:{tools:!0}});var a=z(n,2),s=v(a);S(s,()=>o.children),V(a);var l=z(a,2),d=e=>{var t=ao(),n=v(t);ve(n,{}),V(t),r(e,t)};g(l,e=>{X.tree&&_e.route.id!==`/notes`&&e(d)}),r(e,t)},T=e=>{var t=ho(),a=i(t);va(a,{pane:`atlas`,name:`Atlas`,get settings(){return Za},tools:e=>{var t=mo(),a=i(t),o=e=>{var t=n(),a=i(t),o=e=>{var t=so(),n=i(t),a=c(n,!0),o=z(n,2);K(e=>W(a,e),[()=>p(M).note.startsWith(`@draft/`)?`your note opens when Iso is done`:`Iso is answering in ${p(P)}`]),u(`click`,o,F),r(e,t)},s=e=>{var t=co();let n;var i=c(t,!0);K(()=>{n=R(t,1,`says svelte-12qhfyh`,null,n,{bad:p(M).state===`failed`}),W(i,p(M).state===`done`?`Iso is done in ${p(P)}`:p(M).state===`stopped`?`Iso was stopped`:`Iso could not answer: ${p(M).message}`)}),r(e,t)};g(a,e=>{p(N)?e(o):e(s,-1)}),r(e,t)},s=e=>{var t=lo();r(e,t)},l=e=>{var t=uo(),n=c(t);K(()=>W(n,`${Y.atlas.steps??``} ${Y.atlas.steps===1?`step`:`steps`} back`)),r(e,t)};g(a,e=>{p(M)&&!p(M).agent&&(!Y.open||p(M).note!==Y.open)&&(p(N)||!Y.atlas?.chosen)?e(o):Y.atlas?.pick?e(s,1):Y.atlas?.chosen&&Y.atlas.steps&&e(l,2)});var d=z(a,2),f=e=>{var t=fo(),n=i(t),a=c(n,!0),o=z(n);K(()=>W(a,Y.atlas.here)),u(`click`,o,function(...e){Y.atlas.out?.apply(this,e)}),r(e,t)};g(d,e=>{Y.atlas?.here&&e(f)});var m=z(d,2),h=e=>{var t=po();u(`click`,t,function(...e){Y.atlas.fit?.apply(this,e)}),r(e,t)};g(m,e=>{Y.atlas&&e(h)}),r(e,t)},$$slots:{tools:!0}});var o=z(a,2);zr(v(o),{}),V(o),r(e,t)},E=e=>{var t=vo(),a=i(t);va(a,{pane:`iso`,name:`Iso`,get settings(){return Xa},tools:e=>{var t=_o(),a=i(t),o=e=>{var t=uo(),n=c(t,!0);K(()=>{H(t,`title`,p(N)?``:`click open ground on the Atlas to let its path go`),W(n,p(N)?`${p(ee)} is ${p(ne)?`reading ${p(ne)}`:`at work`} in the terminal`:`${p(ee)}'s turn is done`)}),r(e,t)};g(a,e=>{p(M)?.agent&&e(o)});var s=z(a,2),l=e=>{Ca(e,{})};g(s,e=>{X.mode!==`build`&&e(l)});var d=z(s,2);ba(d,{});var f=z(d,2),m=z(v(f),2),h=e=>{var t=n(),a=i(t);re(a,()=>q.fresh,e=>{var t=go();let n;var i=c(t,!0);K(()=>{n=R(t,1,`n svelte-12qhfyh`,null,n,{pulse:$.view===`chat`&&q.fresh!==``}),W(i,q.sent.length)}),r(e,t)}),r(e,t)};g(m,e=>{q.sent.length&&e(h)}),V(f);var _=z(f,2);K(()=>{H(f,`aria-pressed`,$.view===`context`),_.disabled=X.mode===`build`||!!$.running||!$.turns.length}),u(`click`,f,()=>$.view=$.view===`context`?`chat`:`context`),u(`click`,_,()=>{$.fresh(),$.view=`chat`}),r(e,t)},$$slots:{tools:!0}});var o=z(a,2);ra(v(o),{}),V(o),r(e,t)};g(b,e=>{t===`note`?e(w):t===`atlas`?e(T,1):e(E,-1)}),V(a),K(e=>{l=R(a,1,`pane svelte-12qhfyh`,null,l,{focus:X.focus===t,first:p(s)[0]===t,top:X.layout===`stack`&&p(s)[1]===t&&p(s).length===3}),H(a,`data-pane`,t),H(a,`aria-label`,O[t]),H(a,`hidden`,e),h=D(a,``,h,{"grid-area":p(f).areas[t]})},[()=>!p(s).includes(t)]),d(`pointerdown`,a,()=>{X.narrow||(X.focus=t)},!0),r(e,a)}),r(e,t)};g(oe,e=>{Y.error?e(se):e(ce,-1)}),V(ie),te(ie,e=>b(l,e),()=>p(l));var le=z(ie,2);G(le,20,()=>Z,e=>e,(e,t)=>{var n=xo(),i=v(n),a=z(i),o=e=>{var t=bo(),n=c(t,!0);K(()=>W(n,X.unseen)),r(e,t)};g(a,e=>{t===`iso`&&X.unseen&&e(o)}),V(n),K(()=>{H(n,`aria-current`,X.focus===t),H(n,`aria-label`,O[t]),W(i,`${O[t]??``} `)}),u(`click`,n,()=>X.to(t)),r(e,n)}),V(le),V(U),K(()=>{H(ie,`data-layout`,X.layout),ae=D(ie,``,ae,{"grid-template":p(f).template})}),d(`scroll`,ie,w),r(e,U),L()}j([`pointerdown`,`keydown`,`click`]);export{Co as component,ze as universal};
@@ -0,0 +1 @@
1
+ import{E as e,G as t,K as n,O as r,nt as i,q as a,rt as o,w as s,z as c}from"../chunks/-7PsQOY4.js";import"../chunks/xihTtKlq.js";import{t as l}from"../chunks/D4Jg9Smi.js";var u=r(`<h1> </h1> <p> </p>`,1);function d(r,d){o(d,!0);var f=u(),p=t(f),m=n(p,!0),h=a(p,2),g=n(h,!0);c(()=>{s(m,l.status),s(g,l.error?.message)}),e(r,f),i()}export{d as component};
@@ -0,0 +1 @@
1
+ import{n as e,nt as t,o as n,rt as r}from"../chunks/-7PsQOY4.js";import{o as i,t as a}from"../chunks/HCrXwzvD.js";import"../chunks/xihTtKlq.js";import{r as o,t as s}from"../chunks/MjV3DsQW.js";import{i as c}from"../chunks/C1xA2mdF.js";import"../chunks/DqVFJWdL.js";function l(l,u){r(u,!1),e(()=>{let e=s.listing.notes.some(e=>e.id===c.last)?c.last:``;a(e?o(e):i(`/notes`),{replaceState:!0})}),n(),t()}export{l as component};
@@ -0,0 +1 @@
1
+ import{n as e,nt as t,o as n,rt as r}from"../chunks/-7PsQOY4.js";import{o as i,t as a}from"../chunks/HCrXwzvD.js";import"../chunks/xihTtKlq.js";import{r as o,t as s}from"../chunks/MjV3DsQW.js";import{i as c}from"../chunks/C1xA2mdF.js";import{t as l}from"../chunks/D4Jg9Smi.js";import"../chunks/DqVFJWdL.js";function u(u,d){r(d,!1),e(()=>{let e=s.listing.notes.some(e=>e.id===c.last)?c.last:``;a((e?o(e):i(`/notes`))+l.url.search,{replaceState:!0}).then(()=>c.to(`atlas`))}),n(),t()}export{u as component};
@@ -0,0 +1,2 @@
1
+ import{B as e,D as t,E as n,G as r,K as i,M as a,O as o,P as s,Q as c,S as l,W as u,X as d,Y as f,Z as p,c as m,d as h,et as g,j as _,l as v,n as y,nt as b,o as x,ot as S,p as C,q as w,rt as T,st as E,u as D,v as O,w as k,x as A,y as j,z as M}from"../chunks/-7PsQOY4.js";import{o as N,t as P}from"../chunks/HCrXwzvD.js";import"../chunks/xihTtKlq.js";import{t as F}from"../chunks/DG2llOXe.js";import{r as I,t as L}from"../chunks/MjV3DsQW.js";import{i as R}from"../chunks/C1xA2mdF.js";import{t as z}from"../chunks/D4Jg9Smi.js";import"../chunks/DqVFJWdL.js";import{a as B,o as V,t as ee}from"../chunks/BAVeNK5c.js";var H=o(`<p class="faint col svelte-nq8rms">opening…</p>`),U=o(`<div class="col svelte-nq8rms"><p class="soft">This note for Iso is not here any more. It was kept as a note, or discarded.</p><p><a>all notes</a></p></div>`),W=o(`<div class="prompt svelte-nq8rms"><p> </p> <button class="link svelte-nq8rms" type="button"> </button></div>`),G=o(`<div class="prose said svelte-nq8rms"></div>`),te=o(`<span class="faint"> </span>`),ne=o(`<!> <div class="foot svelte-nq8rms"><i class="dia svelte-nq8rms" aria-hidden="true"></i> <span class="soft"> <!></span> <span class="grow"></span> <button class="link svelte-nq8rms" type="button">[ stop ]</button></div>`,1),re=o(`<textarea class="revision svelte-nq8rms" aria-label="Iso's text, to edit"></textarea>`),ie=o(`<!> <div aria-live="polite"><!></div>`,1),K=o(`<p class="bad svelte-nq8rms" role="alert"> </p>`),ae=o(`<span class="chip lattice svelte-nq8rms"> </span>`),oe=o(`<span class="faint">no notes yet: type [[ in what you write, or</span>`),se=o(`<button type="button" role="radio" class="svelte-nq8rms"> </button>`),ce=o(`<div class="row svelte-nq8rms"><span class="label">linked</span> <!> <button class="link svelte-nq8rms" type="button">[ + pick on the atlas ]</button></div> <div class="row svelte-nq8rms"><button class="btn primary tall" type="button"><i class="dia inverse svelte-nq8rms" aria-hidden="true"></i>send to Iso</button> <span class="tiers svelte-nq8rms" role="radiogroup" aria-label="Tier"></span> <span class="grow"></span> <button class="link faint svelte-nq8rms" type="button">[ discard ]</button></div>`,1),le=o(`<option></option>`),ue=o(`<button class="btn edit" type="button">done</button>`),de=o(`<button class="btn edit" type="button">edit</button>`),fe=o(`<div class="row svelte-nq8rms"><button class="btn primary tall" type="button">keep as a note</button> <label class="in soft svelte-nq8rms"><span>in</span><input class="field svelte-nq8rms" placeholder="the top of the base" list="folders" autocomplete="off" aria-label="Folder"/><span class="faint">/</span></label> <datalist id="folders"></datalist> <span class="grow"></span> <!> <button class="btn danger tall" type="button">discard</button></div> <div class="row svelte-nq8rms"><span class="label"> </span> <span class="grow"></span> <button class="link svelte-nq8rms" type="button">[ back to what I wrote ]</button></div>`,1),pe=o(`<div class="col svelte-nq8rms"><div class="mark svelte-nq8rms"><i class="dia open svelte-nq8rms" aria-hidden="true"></i><span class="label">for Iso · not in your base yet</span></div> <label class="hidden-label" for="title">Title</label> <textarea id="title" class="serif title svelte-nq8rms" rows="1" placeholder="a title for the note" autocomplete="off"></textarea> <!> <!> <!></div> <div class="deck svelte-nq8rms"><!></div>`,1),me=o(`<article class="draft svelte-nq8rms"><!></article>`);function q(t,o){T(o,!0);let p=new B(o.id),_=new V(p),x=d(``),A=d(!1),z=d(``),q=d(!1),J=c(()=>_.proposals.at(-1)),he=c(()=>s(J)?.text??``),Y=c(()=>s(J)&&_.editing?.id===s(J).id?_.editing:null),X=c(()=>!s(J)&&!_.asking),ge=c(()=>{let e=[...p.body.matchAll(/\]\(\/([^)\s#]+)\.md/g)].map(e=>decodeURIComponent(e[1]));return[...new Set(e)].flatMap(e=>{let t=L.listing.notes.find(t=>t.id===e);return t?[t]:[]})}),Z=c(()=>_.asking?.steps.at(-1)?.said??``);y(()=>{L.open=o.id,p.open().then(()=>_.open());let e=()=>{p.save()};return addEventListener(`pagehide`,e),()=>{removeEventListener(`pagehide`,e),_.close(),p.close(),L.here=L.open=``,L.saving=null}}),e(()=>{L.here=p.loaded===`ready`?p.fields.title||`a new note`:``,L.saving=p.loaded===`ready`&&s(X)?{text:p.saving===`saved`?`saved, outside your base`:p.saving===`failed`?`not saved: ${p.message}`:`saving`,bad:p.saving===`failed`}:null});async function _e(){if(s(J)){f(z,``),f(q,!0);try{await p.save(),s(Y)&&await _.done(s(J));let e=await L.api.keepDraft(o.id,s(J).id,s(x));await L.refresh(),await P(I(e.id))}catch(e){f(z,e.message,!0)}finally{f(q,!1)}}}async function ve(){await p.save();let e=o.id.slice(7);await P(`${N(`/draft/[id]`,{id:e})}?pick=${encodeURIComponent(e)}`),R.to(`atlas`)}async function ye(){let e=await _.send();e&&(L.watching=e,R.to(`atlas`))}async function Q(){f(q,!0);try{await L.api.discardDraft(o.id),await P(N(`/notes`))}catch(e){f(z,e.message,!0),f(q,!1)}}var $=me(),be=u($),xe=e=>{var t=H();n(e,t)},Se=e=>{var t=U(),r=w(u(t)),a=i(r);E(t),M(e=>D(a,`href`,e),[()=>N(`/notes`)]),n(e,t)},Ce=e=>{var t=pe(),o=r(t),d=w(u(o),4);g(d);var y=w(d,2),b=e=>{ee(e,{get note(){return p},source:!1})},T=e=>{var t=ie(),o=r(t),d=e=>{var t=W(),r=u(t);let o;var c=i(r,!0),l=w(r,2),d=i(l,!0);E(t),M(e=>{o=C(r,1,`serif soft svelte-nq8rms`,null,o,{fold:!s(A)}),k(c,e),k(d,s(A)?`[ fold ]`:`[ show all ]`)},[()=>p.body.trim()]),a(`click`,l,()=>f(A,!s(A))),n(e,t)},h=c(()=>p.body.trim());l(o,e=>{s(h)&&e(d)});var v=w(o,2);let y;var b=u(v),x=e=>{var t=ne(),o=r(t),c=e=>{var t=G();O(t,()=>F(_.asking.text),!0),E(t),n(e,t)};l(o,e=>{_.asking.text&&e(c)});var d=w(o,2),f=w(u(d),2),p=u(f,!0),m=w(p),h=e=>{var t=te(),r=i(t);M(()=>k(r,`· ${s(Z)??``}`)),n(e,t)};l(m,e=>{s(Z)&&e(h)}),E(f);var g=w(f,4);E(d),M(()=>k(p,_.asking.text?`Iso is writing`:`Iso is thinking`)),a(`click`,g,()=>_.halt()),n(e,t)},S=e=>{var t=re();g(t),M(e=>D(t,`rows`,e),[()=>Math.max(6,s(Y).text.split(`
2
+ `).length+1)]),m(t,()=>s(Y).text,e=>s(Y).text=e),n(e,t)},T=e=>{var t=G();O(t,()=>F(s(he)),!0),E(t),n(e,t)};l(b,e=>{_.asking?e(x):s(Y)?e(S,1):e(T,-1)}),E(v),M(e=>y=C(v,1,`between svelte-nq8rms`,null,y,{working:e}),[()=>!!_.asking]),n(e,t)};l(y,e=>{s(X)?e(b):e(T,-1)});var N=w(y,2),P=e=>{var t=K(),r=i(t,!0);M(()=>k(r,_.failed.message)),n(e,t)};l(N,e=>{_.failed&&e(P)});var I=w(N,2),R=e=>{var t=K(),r=i(t,!0);M(()=>k(r,s(z))),n(e,t)};l(I,e=>{s(z)&&e(R)}),E(o);var B=w(o,2),V=u(B),H=e=>{var t=ce(),o=r(t),c=w(u(o),2);j(c,17,()=>s(ge),e=>e.id,(e,t)=>{var r=ae(),a=i(r,!0);M(()=>k(a,s(t).title)),n(e,r)},e=>{var t=oe();n(e,t)});var l=w(c,2);E(o);var d=w(o,2),f=u(d),m=w(f,2);j(m,20,()=>[`low`,`mid`,`max`],e=>e,(e,t)=>{var r=se(),o=i(r,!0);M(()=>{D(r,`aria-checked`,_.tier===t),k(o,t)}),a(`click`,r,()=>_.setTier(t)),n(e,r)}),E(m);var h=w(m,4);E(d),M(e=>{f.disabled=e,h.disabled=s(q)},[()=>!p.body.trim()]),a(`click`,l,ve),a(`click`,f,ye),a(`click`,h,Q),n(e,t)},U=e=>{var t=fe(),o=r(t),c=u(o),d=w(c,2),p=w(u(d));v(p),S(),E(d);var h=w(d,2);j(h,20,()=>L.listing.dirs,e=>e,(e,t)=>{var r=le(),i={};M(()=>{i!==(i=t)&&(r.value=(r.__value=i)??``)}),n(e,r)}),E(h);var g=w(h,4),y=e=>{var t=ue();a(`click`,t,()=>_.done(s(J))),n(e,t)},b=e=>{var t=de();a(`click`,t,()=>_.edit(s(J))),n(e,t)};l(g,e=>{s(Y)?e(y):e(b,-1)});var C=w(g,2);E(o);var T=w(o,2),D=u(T),O=i(D),A=w(D,4);E(T),M(e=>{c.disabled=s(q),C.disabled=s(q),k(O,`${e??``}${s(J).notice?` · ${s(J).notice}`:``}`),A.disabled=s(q)},[()=>s(J).cost?`${s(J).cost.tier} · $${s(J).cost.usd.toFixed(3)}`:``]),a(`click`,c,_e),m(p,()=>s(x),e=>f(x,e)),a(`click`,C,Q),a(`click`,A,()=>_.discard(s(J))),n(e,t)};l(V,e=>{s(X)?e(H):s(J)&&e(U,1)}),E(B),M(()=>{h(d,p.fields.title),d.readOnly=!s(X)}),a(`input`,d,e=>p.setFields({title:e.currentTarget.value.replace(/\s*\n\s*/g,` `)})),a(`keydown`,d,e=>{e.key===`Enter`&&e.preventDefault()}),n(e,t)};l(be,e=>{p.loaded===`loading`?e(xe):p.loaded===`ready`?e(Ce,-1):e(Se,1)}),E($),n(t,$),b()}_([`input`,`keydown`,`click`]);function J(e,i){T(i,!1),x();var a=t(),o=r(a);A(o,()=>z.params.id,e=>{{let t=p(()=>`@draft/${z.params.id??``}`);q(e,{get id(){return s(t)}})}}),n(e,a),b()}export{J as component};
@@ -0,0 +1,5 @@
1
+ import{A as e,B as t,D as n,E as r,G as i,I as a,J as o,K as s,M as c,N as l,O as u,P as d,Q as f,S as p,U as m,W as h,X as g,Y as _,d as v,et as y,f as b,j as x,k as S,l as C,lt as w,n as T,nt as E,ot as D,p as O,q as k,rt as A,s as j,st as M,u as N,v as P,w as F,x as I,y as ee,z as L}from"../chunks/-7PsQOY4.js";import{o as te,t as R}from"../chunks/HCrXwzvD.js";import"../chunks/xihTtKlq.js";import{C as z,E as B,S as V,T as ne,_ as H,g as re,o as ie,p as ae,s as oe,t as se,v as ce,w as le}from"../chunks/DG2llOXe.js";import{i as ue,n as de,r as fe,t as pe}from"../chunks/uID4v_1K.js";import{i as U,r as W,t as G}from"../chunks/MjV3DsQW.js";import{i as K}from"../chunks/C1xA2mdF.js";import{t as me}from"../chunks/D4Jg9Smi.js";import{t as he}from"../chunks/CQqNkDRK.js";import{a as ge,i as q,n as _e,o as ve,r as J,t as ye}from"../chunks/BAVeNK5c.js";var Y=u(`<button class="link svelte-1khbtcu" type="button">delete</button>`),be=u(`<label class="wide svelte-1khbtcu" for="note-folder"><span>folder</span></label> <span class="wide svelte-1khbtcu"><!></span> <label class="svelte-1khbtcu"><span>name</span><input class="mono svelte-1khbtcu" spellcheck="false" autocomplete="off" aria-label="name: change it to rename the file"/></label> <!>`,1),xe=u(`<div class="full ask svelte-1khbtcu" role="alertdialog" aria-label="delete this note"><span class="svelte-1khbtcu">Delete this note? <!> Its history stays.</span> <button class="btn danger svelte-1khbtcu" type="button">delete</button> <button class="btn quiet svelte-1khbtcu" type="button">keep it</button></div>`),Se=u(`<p class="full problem svelte-1khbtcu" role="alert"> </p>`),X=u(`<option></option>`),Ce=u(`<div class="details svelte-1khbtcu"><label class="svelte-1khbtcu"><span>type</span><input list="types" autocomplete="off" class="svelte-1khbtcu"/></label> <label class="wide svelte-1khbtcu"><span>tags</span><input placeholder="none" autocomplete="off" class="svelte-1khbtcu"/></label> <label class="full svelte-1khbtcu"><span>description</span><input placeholder="one line on what this note says" autocomplete="off" class="svelte-1khbtcu"/></label> <!> <!> <!> <datalist id="types"></datalist></div>`);function we(t,n){A(n,!0);let a=f(()=>[...new Set(G.listing.notes.map(e=>e.type).filter(Boolean))].sort()),o=f(()=>!n.note.id.startsWith(`@`)),l=g(``),u=g(null),m=e=>e.split(`/`).slice(0,-1).join(`/`),y=e=>e.split(`/`).at(-1),b=f(()=>m(n.note.id));async function x(e,t){let r=e=>e.trim().replace(/^\/+|\/+$/g,``).replace(/\.md$/,``),i=[r(e),r(t)].filter(Boolean).join(`/`);if(!r(t)||i===n.note.id)_(b,m(n.note.id));else{_(l,``);try{let e=await n.note.move(i);await G.refresh(),await R(W(e),{replaceState:!0})}catch(e){_(l,e.message,!0),_(b,m(n.note.id))}}}async function S(){_(l,``);try{let e=await G.api.map();_(u,[...new Set(e.model.edges.filter(([e,t])=>t===n.note.id&&e!==n.note.id&&!e.startsWith(`@`)).map(([t])=>e.notes[t]?.title||t))],!0)}catch(e){_(l,e.message,!0)}}async function w(){try{await n.note.remove(),await G.refresh(),await R(te(`/notes`),{replaceState:!0})}catch(e){_(l,e.message,!0),_(u,null)}}var T=Ce(),O=h(T),j=k(h(O));C(j),M(O);var P=k(O,2),I=k(h(P));C(I),M(P);var z=k(P,2),B=k(h(z));C(B),M(z);var V=k(z,2),ne=e=>{var t=be(),a=k(i(t),2),o=h(a);he(o,{id:`note-folder`,quiet:!0,label:`folder: change it to move the note`,placeholder:`the top of the base`,onpick:e=>void x(e,y(n.note.id)),onkeydown:e=>{e.key===`Escape`&&(_(b,m(n.note.id)),e.currentTarget.blur())},get value(){return d(b)},set value(e){_(b,e)}}),M(a);var s=k(a,2),l=k(h(s));C(l),M(s);var f=k(s,2),g=e=>{var t=Y();c(`click`,t,()=>void S()),r(e,t)};p(f,e=>{d(u)===null&&e(g)}),L((e,t)=>{v(l,e),N(l,`size`,t)},[()=>y(n.note.id),()=>Math.max(8,y(n.note.id).length)]),c(`change`,l,e=>void x(d(b),e.currentTarget.value)),c(`keydown`,l,e=>{e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(e.currentTarget.value=y(n.note.id),e.currentTarget.blur())}),r(e,t)};p(V,e=>{d(o)&&e(ne)});var H=k(V,2),re=t=>{var n=xe(),i=h(n),a=k(h(i)),o=t=>{var n=e();L(e=>F(n,`${d(u).length===1?`One note links`:`${d(u).length} notes link`} to it (${e??``}); ${d(u).length===1?`its link is`:`their links are`} left broken.`),[()=>d(u).join(`, `)]),r(t,n)},s=t=>{var n=e(`No note links to it.`);r(t,n)};p(a,e=>{d(u).length?e(o):e(s,-1)}),D(),M(i);var l=k(i,2),f=k(l,2);M(n),c(`click`,l,()=>void w()),c(`click`,f,()=>{_(u,null)}),r(t,n)};p(H,e=>{d(u)!==null&&e(re)});var ie=k(H,2),ae=e=>{var t=Se(),n=s(t,!0);L(()=>F(n,d(l))),r(e,t)};p(ie,e=>{d(l)&&e(ae)});var oe=k(ie,2);ee(oe,20,()=>d(a),e=>e,(e,t)=>{var n=X(),i={};L(()=>{i!==(i=t)&&(n.value=(n.__value=i)??``)}),r(e,n)}),M(oe),M(T),L(e=>{v(j,n.note.fields.type),N(j,`size`,e),v(I,n.note.fields.tags),v(B,n.note.fields.description)},[()=>Math.max(7,n.note.fields.type.length)]),c(`input`,j,e=>n.note.setFields({type:e.currentTarget.value})),c(`change`,I,e=>n.note.setFields({tags:e.currentTarget.value})),c(`input`,B,e=>n.note.setFields({description:e.currentTarget.value})),r(t,T),E()}x([`input`,`change`,`keydown`,`click`]);var Te=u(`<h1 class="serif title svelte-130pv1o"> </h1>`),Ee=u(`<p class="asked svelte-130pv1o"><i class="dia svelte-130pv1o" aria-hidden="true"></i><span> </span></p>`),De=u(`<div class="offered svelte-130pv1o" aria-label="What Iso offered"><p class="serif svelte-130pv1o"> </p></div>`),Oe=u(`<div class="version svelte-130pv1o"><!> <!> <div class="text svelte-130pv1o"></div> <!></div>`);function ke(e,n){A(n,!0);let i=f(()=>{try{let[e,t,r]=V(n.text);return{title:/^title:\s*(.*)$/m.exec(t??``)?.[1]?.trim().replace(/^["']|["']$/g,``)??``,body:r,lines:e.split(`
2
+ `).length-1}}catch{return{title:``,body:n.text,lines:0}}}),a,o=g(void 0);T(()=>(_(o,_e(a,{doc:d(i).body,onChange:()=>void 0,onSave:()=>void 0,label:`The note as it was`,notes:()=>[],readOnly:!0})),()=>d(o)?.destroy())),t(()=>{let e=n.touched,t=d(i).lines;d(o)?.dispatch({effects:q.of(e?{who:e.who,lines:e.lines.map(e=>e-t)}:null)})});var c=Oe(),l=h(c),u=e=>{var t=Te(),n=s(t,!0);L(()=>F(n,d(i).title)),r(e,t)};p(l,e=>{d(i).title&&d(i).title!==n.title&&e(u)});var m=k(l,2),v=e=>{var t=Ee(),i=k(h(t)),a=s(i,!0);M(t),L(()=>F(a,n.asked)),r(e,t)};p(m,e=>{n.asked!==void 0&&e(v)});var y=k(m,2);j(y,e=>a=e,()=>a);var b=k(y,2),x=e=>{var t=De(),i=h(t),a=s(i,!0);M(t),L(()=>F(a,n.offered)),r(e,t)};p(b,e=>{n.offered!==void 0&&e(x)}),M(c),r(e,c),E()}var Ae=(e,t=w,n=w)=>{var i=Ne();let a;var o=h(i),s=e=>{var t=je();D(),r(e,t)},c=e=>{var t=Me();L(()=>N(t,`fill`,n()?`currentColor`:`none`)),r(e,t)};p(o,e=>{t()===`question`?e(s):e(c,-1)}),M(i),L(()=>a=O(i,0,`glyph ${t()??``}`,`svelte-18ltlst`,a,{solved:n()})),r(e,i)},je=S(`<path d="M5.6 5.6a2.4 2.4 0 1 1 3.4 2.2c-.6.3-1 .8-1 1.5v.9"></path><path d="M8 12v1.2"></path>`,1),Me=S(`<path d="M8 2.5l5.8 10.5H2.2z"></path>`),Ne=S(`<svg viewBox="0 0 16 16" width="18" height="18" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><!></svg>`),Pe=u(`<p class="faint">opening…</p>`),Fe=u(`<p class="soft">There is no note at <span class="faint"> </span>.</p> <p><a>all notes</a></p>`,1),Ie=u(`<p class="bad svelte-18ltlst"> </p>`),Le=u(`<button class="btn" type="button">take theirs</button>`),Re=u(`<div class="frame choice svelte-18ltlst" role="alert"><span class="frame-title">changed elsewhere</span> <p> </p> <div class="row svelte-18ltlst"><button class="btn primary" type="button">keep mine</button> <!></div> <p class="faint">Whichever you keep, the other stays in the note's journal.</p></div>`),ze=u(`<button class="done-tg svelte-18ltlst" type="button"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M3 8.5l3 3 7-7"></path></svg></button>`),Be=u(`<div class="titlerow svelte-18ltlst"><!> <label class="hidden-label" for="title">Title</label> <textarea id="title" class="serif title svelte-18ltlst" rows="1" autocomplete="off"></textarea> <!></div>`),Ve=u(`<span class="grow faint"> </span>`),He=u(`<button class="btn quiet svelte-18ltlst" type="button">details</button>`),Ue=u(` <a class="svelte-18ltlst"> </a>`,1),We=u(`<p class="about svelte-18ltlst"></p>`),Ge=u(`<div class="tl-col svelte-18ltlst"><!></div>`),Ke=u(`<span class="bad svelte-18ltlst" role="alert"> </span>`),qe=u(`<div class="atbar svelte-18ltlst" role="status"><span class="label"> </span> <span class="grow"></span> <!> <button class="icon svelte-18ltlst" type="button" aria-label="restore to here" title="restore to here"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true"><path d="M3.2 9.5A5 5 0 1 0 4.6 4.3" stroke="currentColor" stroke-width="1.3" fill="none"></path><path d="M3 1.8v3.4h3.4" stroke="currentColor" stroke-width="1.3" fill="none"></path></svg></button> <button class="icon svelte-18ltlst" type="button" aria-label="back to now" title="back to now"><svg viewBox="0 0 16 16" width="16" height="16" aria-hidden="true"><path d="M2 8h9M8 4.8 11.2 8 8 11.2" stroke="currentColor" stroke-width="1.3" fill="none"></path><path d="M13.5 3v10" stroke="currentColor" stroke-width="1.3"></path></svg></button></div> <!>`,1),Je=u(`<button class="toiso svelte-18ltlst" type="button"><i class="dia svelte-18ltlst" aria-hidden="true">◆</i>send to Iso</button>`),Ye=S(`<svg class="ok svelte-18ltlst" viewBox="0 0 16 16" width="14" height="14" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.5"><path d="M3 8.5l3 3 7-7"></path></svg>`),Xe=u(`<li><a><!><span class="svelte-18ltlst"> </span><!></a></li>`),Ze=u(`<ul class="attached svelte-18ltlst"></ul>`),Qe=u(`<div class="changes svelte-18ltlst" role="status"><i class="dia svelte-18ltlst" aria-hidden="true"></i> <span class="soft"> </span> <span class="grow"></span> <button class="link svelte-18ltlst" type="button">keep all</button> <button class="link svelte-18ltlst" type="button">remove all</button></div>`),$e=u(`<!> <div class="head svelte-18ltlst"><!> <div class="side svelte-18ltlst"><div class="tools svelte-18ltlst"><!> <button class="btn quiet svelte-18ltlst" type="button">source</button></div></div></div> <!> <!> <!> <!> <!> <div class="live"><!></div> <!> <!>`,1),et=u(`<article><!></article>`);function tt(e,n){A(n,!0);let u=new ge(n.id),x=new ve(u),S=e=>{try{return localStorage.getItem(e)===`1`}catch{return!1}},C=(e,t)=>{try{localStorage.setItem(e,t?`1`:`0`)}catch{}},w=g(o(S(`isorite.details`))),P=g(!1),V=f(()=>d(P)||u.meta===null),se=f(()=>K.on.timeline),he=g(null),q=g(null),_e=g(!1),J=g(``),Y=f(()=>ae(x.entries)),be=e=>e.who.startsWith(`iso:`)||e.who.startsWith(`agent:`),xe=e=>e.flatMap(e=>Array.from({length:e.to-e.from},(t,n)=>e.from+n)),Se=f(()=>{if(!d(se)||d(q)||d(V))return null;let e=d(he)??(d(Ee)?void 0:d(Y).findLast(e=>be(e)&&(e.what===`kept`||e.what===`edited`)));if(!e)return null;let t=xe(H(x.entries,e.ids).runs);return t.length?{who:be(e)?`iso`:`you`,lines:t}:null}),X=f(()=>{if(!d(q))return null;let e=ue(d(q)),t=re(x.entries,e);if(t===null)return null;let n=x.entries.filter(t=>t.id<=e),r=x.entries.find(e=>e.id===d(q).ids[0]),i=(d(q).what===`offered`||d(q).what===`discarded`)&&r?.kind===`proposal`?r.form===`insert`?r.text:r.regions.map(e=>e.new).join(`
3
+
4
+ `):void 0;return{text:t,touched:{who:be(d(q))?`iso`:`you`,lines:xe(H(n,d(q).ids).runs)},asked:d(q).asked,offered:i}}),Ce=()=>me.url.searchParams.get(`at`)??new URLSearchParams(location.hash.split(`?`)[1]??``).get(`at`),Te=g(o(Ce()));t(()=>{let e=Ce();e&&_(Te,e,!0)}),t(()=>{if(!d(Te))return;let e=d(Y).find(e=>e.ids.includes(d(Te)));e&&(_(Te,null),K.flip(`timeline`,!0),_(q,e))});let Ee=f(()=>K.on.provenance);t(()=>{d(se)||(_(q,null),_(he,null))});let De=f(()=>{if(!d(Ee)||u.loaded!==`ready`)return[];let e=[],t=ce(x.entries),r=u.text.split(`
5
+ `);if(t&&t.length===r.length){let n=0;for(let[i,a]of r.entries()){for(let r of t[i])(r.who.startsWith(`iso:`)||r.who.startsWith(`agent:`))&&r.to<=a.length&&a.slice(r.from,r.to).trim()&&e.push({kind:`by-iso`,from:n+r.from,to:n+r.to});n+=a.length+1}}for(let t of ie.parts){if(t.kind!==`passage`||t.id!==n.id)continue;let r=u.text.indexOf(t.text);r>=0&&e.push({kind:`given`,from:r,to:r+t.text.length})}return e});function Oe(e){_(J,``),_(q,d(q)===e?null:e)}function je(e){if(!d(q))return;let t=d(Y).indexOf(d(q))+e;t>=0&&t<d(Y).length&&_(q,d(Y)[t])}async function Me(){if(d(q)){_(_e,!0),_(J,``);try{await u.restore(ue(d(q))),_(q,null)}catch(e){_(J,e.message,!0)}finally{_(_e,!1)}}}function Ne(e){!d(q)||e.altKey||e.ctrlKey||e.metaKey||e.target instanceof HTMLElement&&(e.target.isContentEditable||/^(INPUT|TEXTAREA|SELECT)$/.test(e.target.tagName))||(e.key===`ArrowLeft`||e.key===`ArrowUp`?(e.preventDefault(),je(-1)):e.key===`ArrowRight`||e.key===`ArrowDown`?(e.preventDefault(),je(1)):e.key===`Escape`&&(e.preventDefault(),_(q,null)))}T(()=>{G.open=n.id,u.open().then(()=>x.open());let e=()=>{u.save()};return addEventListener(`pagehide`,e),document.addEventListener(`visibilitychange`,e),()=>{removeEventListener(`pagehide`,e),document.removeEventListener(`visibilitychange`,e),x.close(),u.close(),G.here=``,G.open=``,G.saving=null}});async function tt(){let e=n.id.split(`/`).at(-1),t=u.fields.title.trim();if(!/^untitled-(note|question|problem)(-\d+)?$/.test(e)||!t||/^untitled (note|question|problem)( \d+)?$/i.test(t))return;let r=[...n.id.split(`/`).slice(0,-1),U(t)].filter(Boolean).join(`/`);if(U(t)&&!G.listing.notes.some(e=>e.id===r))try{let e=await u.move(r);await G.refresh(),await R(W(e),{replaceState:!0})}catch{}}t(()=>{u.loaded===`ready`&&K.fresh===n.id&&(K.fresh=``,a().then(()=>{let e=document.getElementById(`title`);e?.focus(),e?.select()}))});let nt={saved:`saved`,unsaved:`not saved yet`,saving:`saving`,conflict:`changed elsewhere: choose below`,failed:`not saved`};t(()=>{G.here=u.loaded===`ready`?u.fields.title||n.id.split(`/`).at(-1):``,G.saving=u.loaded===`ready`?{text:u.saving===`failed`?`not saved: ${u.message}`:nt[u.saving],bad:u.saving===`failed`||u.saving===`conflict`}:null});let rt=f(()=>[...new Set(x.changes.map(e=>oe(e.proposal.who)||`Iso`))].join(` and `)),Z=f(()=>B(String(u.meta?.type??``))),Q=f(()=>d(Z)===`note`?null:le(u.meta??{},d(Z))),it=f(()=>d(Z)===`note`?[]:G.listing.notes.find(e=>e.id===n.id)?.attached??ne(u.meta?.[z[d(Z)]])),at=f(()=>G.listing.notes.filter(e=>e.kind&&e.id!==n.id&&e.attached?.includes(n.id)).sort((e,t)=>e.kind===t.kind?0:e.kind===`question`?-1:1)),ot=e=>G.listing.notes.find(t=>t.id===e)?.title??e.split(`/`).at(-1),st=g(!1);async function ct(){_(st,!0);try{await u.setDone(!d(Q))}catch{}finally{_(st,!1)}}let lt=f(()=>x.cursor&&x.cursor.to>x.cursor.from?u.text.slice(x.cursor.from,x.cursor.to).trim():``),ut=g(void 0),$=g(null);t(()=>{if(x.cursor,!d(lt)||!d(ut)||d(V)||d(q)){_($,null);return}let e=requestAnimationFrame(()=>{let e=getSelection(),t=d(ut).getBoundingClientRect(),n=e?.rangeCount?e.getRangeAt(0).getBoundingClientRect():null;!n||!n.width&&!n.height?_($,{top:8,left:t.width-140},!0):_($,{top:K.narrow?n.bottom-t.top+30:n.top-t.top-36,left:Math.max(8,Math.min(n.left-t.left,t.width-140))},!0)});return()=>cancelAnimationFrame(e)});function dt(){d(lt)&&(ie.add({kind:`passage`,id:n.id,title:u.fields.title||n.id,text:d(lt)}),_($,null))}var ft=et();l(`keydown`,m,Ne);let pt;var mt=h(ft),ht=e=>{var t=Pe();r(e,t)},gt=e=>{var t=Fe(),a=i(t),o=k(h(a)),c=s(o,!0);D(),M(a);var l=k(a,2),u=s(l);L(e=>{F(c,n.id),N(u,`href`,e)},[()=>te(`/notes`)]),r(e,t)},_t=e=>{var t=Ie(),n=s(t,!0);L(()=>F(n,u.message)),r(e,t)},vt=e=>{var t=$e(),a=i(t),o=e=>{var t=Re(),n=k(h(t),2),i=s(n,!0),a=k(n,2),o=h(a),l=k(o,2),d=e=>{var t=Le();c(`click`,t,()=>u.keepTheirs()),r(e,t)};p(l,e=>{u.theirs&&e(d)}),M(a),D(2),M(t),L(()=>F(i,u.theirs===null?`This note was deleted or moved while you were writing.`:`This note was changed somewhere else while you were writing. Nothing here has been saved over it.`)),c(`click`,o,()=>u.keepMine()),r(e,t)};p(a,e=>{u.saving===`conflict`&&e(o)});var m=k(a,2),g=h(m),S=e=>{var t=Be(),i=h(t),a=e=>{Ae(e,()=>d(Z),()=>!!d(Q))};p(i,e=>{d(Z)!==`note`&&e(a)});var o=k(i,4);y(o);var s=k(o,2),m=e=>{let t=f(()=>d(Z)===`question`?d(Q)?`Resolved`:`Resolve`:d(Q)?`Solved`:`Mark solved`);var n=ze();L(()=>{N(n,`aria-pressed`,!!d(Q)),n.disabled=d(st),N(n,`aria-label`,d(Z)===`question`?`Resolved`:`Solved`),N(n,`title`,d(Q)?`${d(t)} ${d(Q)} · press to open it again`:d(t))}),c(`click`,n,()=>void ct()),r(e,n)};p(s,e=>{d(Z)!==`note`&&e(m)}),M(t),L(e=>{v(o,u.fields.title),N(o,`placeholder`,e)},[()=>n.id.split(`/`).at(-1)]),c(`input`,o,e=>u.setFields({title:e.currentTarget.value.replace(/\s*\n\s*/g,` `)})),c(`keydown`,o,e=>{e.key===`Enter`&&(e.preventDefault(),e.currentTarget.blur())}),l(`blur`,o,()=>void tt()),r(e,t)},T=e=>{var t=Ve(),i=s(t);L(()=>F(i,`${n.id??``}.md${u.meta===null?`: the frontmatter cannot be read, so the file is shown as it is`:``}`)),r(e,t)};p(g,e=>{d(V)?e(T,-1):e(S)});var E=k(g,2),A=h(E),j=h(A),te=e=>{var t=He();L(()=>N(t,`aria-pressed`,d(w))),c(`click`,t,()=>{_(w,!d(w)),C(`isorite.details`,d(w))}),r(e,t)};p(j,e=>{d(V)||e(te)});var R=k(j,2);M(A),M(E),M(m);var z=k(m,2),B=e=>{var t=We();ee(t,22,()=>d(it),e=>e,(e,t,n)=>{D();var a=Ue(),o=i(a,!0),c=k(o),l=s(c,!0);L((e,t)=>{F(o,d(n)?` · `:``),N(c,`href`,e),F(l,t)},[()=>W(t),()=>ot(t)]),r(e,a)}),M(t),r(e,t)};p(z,e=>{d(it).length&&!d(V)&&e(B)});var ne=k(z,2),H=e=>{we(e,{get note(){return u}})};p(ne,e=>{d(w)&&!d(V)&&e(H)});var re=k(ne,2),ie=e=>{var t=Ge(),n=h(t);{let e=f(()=>d(q)?ue(d(q)):null);pe(n,{get moments(){return d(Y)},get at(){return d(e)},get pointed(){return d(he)},point:e=>_(he,e),pick:Oe})}M(t),r(e,t)};p(re,e=>{d(se)&&!d(V)&&e(ie)});var ae=k(re,2),oe=e=>{var t=qe(),n=i(t),a=h(n),o=s(a),l=k(a,4),f=e=>{var t=Ke(),n=s(t,!0);L(()=>F(n,d(J))),r(e,t)};p(l,e=>{d(J)&&e(f)});var m=k(l,2),g=k(m,2);M(n);var v=k(n,2);I(v,()=>ue(d(q)),e=>{ke(e,{get text(){return d(X).text},get title(){return u.fields.title},get touched(){return d(X).touched},get asked(){return d(X).asked},get offered(){return d(X).offered}})}),L((e,t)=>{F(o,`${e??``} · ${t??``}`),m.disabled=d(_e)||d(X).text===u.text},[()=>fe(d(q)),()=>de(d(q).at)]),c(`click`,m,Me),c(`click`,g,()=>_(q,null)),r(e,t)};p(ae,e=>{d(q)&&d(X)&&e(oe)});var ce=k(ae,2),le=e=>{var t=Je();let n;L(()=>n=b(t,``,n,{top:`${d($).top??``}px`,left:`${d($).left??``}px`})),c(`pointerdown`,t,e=>{e.preventDefault(),dt()}),c(`click`,t,e=>{e.detail===0&&dt()}),r(e,t)};p(ce,e=>{d($)&&e(le)});var U=k(ce,2),G=h(U);I(G,()=>d(V),e=>{ye(e,{get note(){return u},get iso(){return x},get source(){return d(V)},get touched(){return d(Se)},get lens(){return d(De)}})}),M(U);var K=k(U,2),me=e=>{var t=Ze();ee(t,21,()=>d(at),e=>e.id,(e,t)=>{var n=Xe(),i=h(n);let a;var o=h(i);Ae(o,()=>d(t).kind??`question`,()=>!!d(t).done);var c=k(o),l=s(c,!0),u=k(c),f=e=>{var t=Ye();r(e,t)};p(u,e=>{d(t).done&&e(f)}),M(i),M(n),L(e=>{N(i,`href`,e),a=O(i,1,`svelte-18ltlst`,null,a,{done:!!d(t).done&&d(t).kind===`question`}),F(l,d(t).title)},[()=>W(d(t).id)]),r(e,n)}),M(t),r(e,t)};p(K,e=>{d(at).length&&!d(V)&&!d(q)&&e(me)});var ge=k(K,2),ve=e=>{var t=Qe(),n=k(h(t),2),i=s(n),a=k(n,4),o=k(a,2);M(t),L(()=>{F(i,`${x.changes.length??``} ${x.changes.length===1?`change`:`changes`} from ${d(rt)??``} waiting`),a.disabled=x.busy===`all`,o.disabled=x.busy===`all`}),c(`click`,a,()=>x.settleAll(!0)),c(`click`,o,()=>x.settleAll(!1)),r(e,t)};p(ge,e=>{x.changes.length&&e(ve)}),L(e=>{N(R,`aria-pressed`,d(V)),R.disabled=u.meta===null,N(U,`hidden`,e)},[()=>!!(d(q)&&d(X))]),c(`click`,R,()=>_(P,!d(P))),r(e,t)};p(mt,e=>{u.loaded===`loading`?e(ht):u.loaded===`missing`?e(gt,1):u.loaded===`error`?e(_t,2):e(vt,-1)}),M(ft),j(ft,e=>_(ut,e),()=>d(ut)),L(()=>pt=O(ft,1,`note svelte-18ltlst`,null,pt,{timed:d(se)&&u.loaded===`ready`&&!d(V)})),r(e,ft),E()}x([`click`,`input`,`keydown`,`pointerdown`]);var nt=u(`<p class="bad svelte-1b6mil3" role="alert"> </p>`),rt=u(`<div class="reading prose svelte-1b6mil3"></div>`),Z=u(`<p class="faint">No reading yet.</p>`),Q=u(`<span role="status"> </span>`),it=u(`<article class="u svelte-1b6mil3"><p class="eyebrow svelte-1b6mil3">Understanding</p> <h1 class="serif svelte-1b6mil3"> </h1> <!> <section><h2 class="svelte-1b6mil3">Iso's reading</h2> <!></section> <section><h2 class="svelte-1b6mil3"><span>Yours</span><!></h2> <div class="pad svelte-1b6mil3"></div></section></article>`);function at(e,t){A(t,!0);let n=g(null),i=g(``),a=g(``),o=g(``),l=!1,u,f,m;async function v(){try{let e=await G.api.understanding(t.id);_(n,e),l||(_(a,e.scratchpad,!0),m&&J(m,d(a)))}catch(e){_(i,e.message,!0)}}T(()=>{m=_e(f,{doc:d(a),label:`Scratchpad`,placeholder:`…`,notes:()=>G.listing.notes.filter(e=>e.id!==t.id).map(e=>({id:e.id,title:e.title,folder:e.dir})),onChange:e=>{_(a,e,!0),y()},onSave:()=>{l&&b()},onFollow:e=>{R(W(e))}}),v();let e=G.on(e=>{e.type===`note-changed`&&(e.id===`@understanding/${t.id}`||e.id===t.id)&&v()});return()=>{e(),clearTimeout(u),l&&b(),m?.destroy()}});function y(){l=!0,_(o,``),clearTimeout(u),u=setTimeout(()=>void b(),1200)}async function b(){if(d(n)){_(o,`saving`);try{_(n,await G.api.saveScratchpad(t.id,d(a),d(n).version)),l=!1,_(o,`saved`)}catch(e){_(o,`failed`),_(i,e.message,!0)}}}var x=it(),S=k(h(x),2),C=s(S,!0),w=k(S,2),D=e=>{var t=nt(),n=s(t,!0);L(()=>F(n,d(i))),r(e,t)};p(w,e=>{d(i)&&e(D)});var N=k(w,2),I=k(h(N),2),ee=e=>{var t=rt();P(t,()=>se(d(n).reading),!0),M(t),r(e,t)},te=e=>{var t=Z();r(e,t)};p(I,e=>{d(n)?.reading?e(ee):e(te,-1)}),M(N);var z=k(N,2),B=h(z),V=k(h(B)),ne=e=>{var t=Q();let n;var i=s(t,!0);L(()=>{n=O(t,1,`state svelte-1b6mil3`,null,n,{bad:d(o)===`failed`}),F(i,d(o)===`failed`?`not saved`:d(o))}),r(e,t)};p(V,e=>{d(o)&&e(ne)}),M(B);var H=k(B,2);j(H,e=>f=e,()=>f),M(z),M(x),L(()=>F(C,t.title)),c(`focusout`,H,()=>{l&&b()}),r(e,x),E()}x([`focusout`]);var ot=u(`<div><!></div> <!>`,1);function st(e,t){A(t,!0);let a=f(()=>me.params.id??``),o=f(()=>K.understanding&&!d(a).startsWith(`@`)),s=f(()=>G.listing.notes.find(e=>e.id===d(a))?.title??d(a).split(`/`).at(-1)??d(a));var c=n(),l=i(c);I(l,()=>d(a),e=>{var t=ot(),n=i(t);tt(h(n),{get id(){return d(a)}}),M(n);var c=k(n,2),l=e=>{at(e,{get id(){return d(a)},get title(){return d(s)}})};p(c,e=>{d(o)&&e(l)}),L(()=>N(n,`hidden`,d(o))),r(e,t)}),r(e,c),E()}export{st as component};
@@ -0,0 +1 @@
1
+ import"../chunks/-7PsQOY4.js";import"../chunks/xihTtKlq.js";import{t as e}from"../chunks/Cs9sQ8Oa.js";import"../chunks/DqVFJWdL.js";function t(t){e(t,{})}export{t as component};
@@ -0,0 +1 @@
1
+ import{E as e,G as t,K as n,M as r,O as i,P as a,Q as o,W as s,f as c,i as l,j as u,k as d,nt as f,o as p,ot as m,p as h,q as g,rt as _,st as v,u as y,ut as b,w as x,y as S,z as C}from"../chunks/-7PsQOY4.js";import"../chunks/xihTtKlq.js";import{n as w,t as T}from"../chunks/B9vLu37F.js";import"../chunks/DqVFJWdL.js";var E=d(`<svg class="logo" viewBox="-0.4 -9.5 32.4 9.9" role="img" aria-label="isorite"><path d="M2 0L2 -2L0 -4M2 -2L2 -4L4 -6M5.6 0L6.6 0L7.6 -1L5.6 -3L6.6 -4L7.6 -4M11.2 0L13.2 -2L11.2 -4L9.2 -2ZM14.8 0L14.8 -2L15.8 -3L16.8 -4M14.8 -2L14.8 -4M20.4 0L20.4 -2L18.4 -4M20.4 -2L20.4 -4L22.4 -6M26 0L25 -1L25 -4L24 -4M25 -4L26 -4M25 -4L25 -5M30.6 0L29.6 0L27.6 -2L29.6 -4L31.6 -2L27.6 -2"></path><path class="iso" d="M2 -9.05l1.2 1.2l-1.2 1.2l-1.2 -1.2z"></path><path class="right" d="M20.4 -9.05l1.2 1.2l-1.2 1.2l-1.2 -1.2z"></path></svg>`);function D(t,n){let r=l(n,`width`,3,72);var i=E();C(()=>{y(i,`width`,r()),y(i,`height`,r()*9.9/32.4)}),e(t,i)}var O=i(`<button type="button" role="radio"> </button>`),k=i(`<div class="swatch svelte-h119xx"><i class="svelte-h119xx"></i><span> </span></div>`),A=i(`<div class="swatch svelte-h119xx"><i class="svelte-h119xx"></i><span> </span></div> <div class="swatch svelte-h119xx"><i class="svelte-h119xx"></i><span> </span></div>`,1),j=i(`<div class="parts svelte-h119xx"><section class="svelte-h119xx"><h2 class="label svelte-h119xx">the ground</h2> <div class="row svelte-h119xx" role="radiogroup" aria-label="Ground"></div></section> <section class="svelte-h119xx"><h2 class="label svelte-h119xx">the name</h2> <div class="row svelte-h119xx"><!><!></div></section> <section class="svelte-h119xx"><h2 class="label svelte-h119xx">colour</h2> <div class="swatches svelte-h119xx"></div> <div class="swatches svelte-h119xx"></div> <div class="swatches svelte-h119xx"></div></section> <section class="svelte-h119xx"><h2 class="label svelte-h119xx">type</h2> <p class="pixel">Departure Mono, for display</p> <p>Ioskeley Mono, for the interface. <b>Bold.</b> <i>Italic.</i> 0123456789</p> <p class="serif">Charter, for what is read: the entropy of a source is the average surprise of its symbols. <b>Bold</b>, <i>italic</i>.</p></section> <section class="svelte-h119xx"><h2 class="label svelte-h119xx">buttons and chips</h2> <div class="row svelte-h119xx"><button class="btn" type="button">plain</button> <button class="btn primary" type="button">primary</button> <button class="btn danger" type="button">delete</button> <button class="btn quiet" type="button">quiet</button> <button class="btn" type="button" disabled="">off</button> <button class="btn tall primary" type="button">tall</button></div> <div class="row svelte-h119xx"><button class="btn keep" type="button">keep</button> <button class="btn edit" type="button">edit</button> <button class="btn remove" type="button">remove</button></div> <div class="row svelte-h119xx"><span class="chip">plain</span><span class="chip lattice">lattice</span><span class="chip growth">growth</span> <span class="chip malachite">malachite</span><span class="chip rose">rose</span></div></section> <section class="svelte-h119xx"><h2 class="label svelte-h119xx">a frame, a field, the marks</h2> <div class="frame box svelte-h119xx"><span class="frame-title">a frame</span> <input class="field" placeholder="a field" aria-label="A field"/> <div class="row svelte-h119xx"><i class="sq"></i><span>you</span><i class="sq empty"></i><span>not yet</span><i class="dia"></i><span>Iso</span><i class="dia open"></i><span>Iso, unkept</span></div></div> <div class="dots ground svelte-h119xx"></div></section></div>`);function M(i,l){_(l,!1);let u=[`ground-0`,`ground-1`,`ground-2`,`ground-3`,`line`,`line-strong`],d=[`text`,`text-soft`,`text-faint`],E=[`lattice`,`growth`,`malachite`,`rose`];p();var M=j(),N=s(M),P=g(s(N),2);S(P,5,()=>T,([e,t])=>e,(t,i)=>{var s=o(()=>b(a(i),2));let c=()=>a(s)[0],l=()=>a(s)[1];var u=O();let d;var f=n(u,!0);C(()=>{d=h(u,1,`btn`,null,d,{primary:w.chosen===c()}),y(u,`aria-checked`,w.chosen===c()),x(f,l())}),r(`click`,u,()=>w.choose(c())),e(t,u)}),v(P),v(N);var F=g(N,2),I=g(s(F),2),L=s(I);D(L,{width:216}),D(g(L),{}),v(I),v(F);var R=g(F,2),z=g(s(R),2);S(z,5,()=>u,e=>e,(t,r)=>{var i=k(),o=s(i);let l;var u=g(o),d=n(u,!0);v(i),C(()=>{l=c(o,``,l,{background:`var(--${a(r)})`}),x(d,a(r))}),e(t,i)}),v(z);var B=g(z,2);S(B,5,()=>d,e=>e,(t,r)=>{var i=k(),o=s(i);let l;var u=g(o),d=n(u,!0);v(i),C(()=>{l=c(o,``,l,{background:`var(--${a(r)})`}),x(d,a(r))}),e(t,i)}),v(B);var V=g(B,2);S(V,5,()=>E,e=>e,(r,i)=>{var o=A(),l=t(o),u=s(l);let d;var f=g(u),p=n(f,!0);v(l);var m=g(l,2),h=s(m);let _;var y=g(h),b=n(y);v(m),C(()=>{d=c(u,``,d,{background:`var(--${a(i)})`}),x(p,a(i)),_=c(h,``,_,{background:`var(--${a(i)}-soft)`}),x(b,`${a(i)??``}-soft`)}),e(r,o)}),v(V),v(R);var H=g(R,2),U=g(s(H),2);c(U,``,{},{"font-size":`22px`});var W=g(U,4);c(W,``,{},{"font-size":`18px`}),v(H),m(4),v(M),e(i,M),f()}u([`click`]);export{M as component};
@@ -1 +1 @@
1
- {"version":"1792974176523"}
1
+ {"version":"1792994804642"}