isorite 0.10.0 → 0.12.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 (75) hide show
  1. package/README.md +2 -5
  2. package/dist/core.js +184 -13
  3. package/dist/main.js +1018 -200
  4. package/docs/setup-for-agents.md +11 -36
  5. package/docs/setup.md +20 -61
  6. package/docs/terminal.md +28 -80
  7. package/package.json +2 -1
  8. package/web/_app/immutable/assets/0.BXPxx6Q0.css +1 -0
  9. package/web/_app/immutable/assets/5.rBvyRuST.css +1 -0
  10. package/web/_app/immutable/assets/{7.ljiu9bn5.css → 7.C00vyVPo.css} +1 -1
  11. package/web/_app/immutable/assets/Drawing.Q7J9MyIo.css +1 -0
  12. package/web/_app/immutable/assets/NoteEditor.S3q5lmKq.css +1 -0
  13. package/web/_app/immutable/assets/{NoteList.F579Zvj_.css → NoteList.E6jC-AtZ.css} +1 -1
  14. package/web/_app/immutable/assets/Timeline.LsRXYIBv.css +1 -0
  15. package/web/_app/immutable/assets/ground.hxi5N5fC.css +1 -0
  16. package/web/_app/immutable/chunks/4kgFUGOH.js +1 -0
  17. package/web/_app/immutable/chunks/8SS1q0nk.js +7 -0
  18. package/web/_app/immutable/chunks/{C5MPRibb.js → BK6pLgdi.js} +1 -1
  19. package/web/_app/immutable/chunks/{CiU6tYJv.js → Bk_JinGf.js} +1 -1
  20. package/web/_app/immutable/chunks/CFEI5lV9.js +1 -0
  21. package/web/_app/immutable/chunks/{6RXH8WsD.js → CiMp12cC.js} +1 -1
  22. package/web/_app/immutable/chunks/{BcgO-fBX.js → D4YEq54N.js} +1 -1
  23. package/web/_app/immutable/chunks/{CsRPJjQS.js → DDCg82xL.js} +1 -1
  24. package/web/_app/immutable/chunks/DThNJvmp.js +1 -0
  25. package/web/_app/immutable/chunks/{DQjIi5Jv.js → D_jbSWJl.js} +1 -1
  26. package/web/_app/immutable/chunks/DbeMVOH4.js +1 -0
  27. package/web/_app/immutable/chunks/DsQj0LyB.js +523 -0
  28. package/web/_app/immutable/chunks/{CBkjDkEN.js → Uo6irDQW.js} +80 -79
  29. package/web/_app/immutable/chunks/{DCD8_jrW.js → jTXVas70.js} +1 -1
  30. package/web/_app/immutable/entry/app.CvK8zypr.js +2 -0
  31. package/web/_app/immutable/entry/start.Dcgm6sQd.js +1 -0
  32. package/web/_app/immutable/nodes/0.0TdRBEoR.js +26 -0
  33. package/web/_app/immutable/nodes/{1.rzuq9VRh.js → 1.Dchqgt4j.js} +1 -1
  34. package/web/_app/immutable/nodes/2.C0CMUdSu.js +1 -0
  35. package/web/_app/immutable/nodes/3.MjtWDMWd.js +1 -0
  36. package/web/_app/immutable/nodes/4.hhS0SQta.js +2 -0
  37. package/web/_app/immutable/nodes/5.C33_cw2J.js +9 -0
  38. package/web/_app/immutable/nodes/6.owNfwwRl.js +1 -0
  39. package/web/_app/immutable/nodes/7.BpxHVHoY.js +1 -0
  40. package/web/_app/version.json +1 -1
  41. package/web/index.html +20 -18
  42. package/web/kit/chart.js +55 -0
  43. package/web/kit/isorite.css +32 -0
  44. package/web/kit/kit.css +80 -0
  45. package/web/kit/kit.js +543 -0
  46. package/web/kit/licenses/d3.txt +13 -0
  47. package/web/kit/licenses/interval-tree-1d.txt +22 -0
  48. package/web/kit/licenses/isoformat.txt +13 -0
  49. package/web/kit/licenses/katex.txt +21 -0
  50. package/web/kit/licenses/observablehq-plot.txt +13 -0
  51. package/web/kit/licenses/three.txt +21 -0
  52. package/web/kit/math.css +1 -0
  53. package/web/kit/math.js +257 -0
  54. package/web/kit/model.js +4236 -0
  55. package/web/kit/plain.css +16 -0
  56. package/web/_app/immutable/assets/0.CPW9fjPu.css +0 -1
  57. package/web/_app/immutable/assets/5.TsqJFEFF.css +0 -1
  58. package/web/_app/immutable/assets/NoteEditor.Wt5vU9Tb.css +0 -1
  59. package/web/_app/immutable/assets/Timeline.KTc3LKuK.css +0 -1
  60. package/web/_app/immutable/chunks/B0A4Snxv.js +0 -6
  61. package/web/_app/immutable/chunks/B8Qvvm53.js +0 -1
  62. package/web/_app/immutable/chunks/BJo70SOc.js +0 -1
  63. package/web/_app/immutable/chunks/BYSDTLqw.js +0 -1
  64. package/web/_app/immutable/chunks/BimZp6R0.js +0 -523
  65. package/web/_app/immutable/chunks/DlKQFacy.js +0 -1
  66. package/web/_app/immutable/chunks/c7PFFMl4.js +0 -1
  67. package/web/_app/immutable/entry/app.iw6ZIOh2.js +0 -2
  68. package/web/_app/immutable/entry/start.CFnKMSWs.js +0 -1
  69. package/web/_app/immutable/nodes/0.BzEgwgsa.js +0 -26
  70. package/web/_app/immutable/nodes/2.D_jWsQLW.js +0 -1
  71. package/web/_app/immutable/nodes/3.BzRx3SiD.js +0 -1
  72. package/web/_app/immutable/nodes/4.DP2MGav1.js +0 -2
  73. package/web/_app/immutable/nodes/5.BPS-CCQT.js +0 -5
  74. package/web/_app/immutable/nodes/6.DQMCyNJ3.js +0 -1
  75. package/web/_app/immutable/nodes/7.MWEn-qPC.js +0 -1
@@ -1,5 +0,0 @@
1
- import{$ as e,A as t,C as n,E as r,F as i,G as a,I as o,J as s,L as c,M as l,N as u,O as d,P as f,Q as p,S as m,T as h,V as g,W as _,X as v,Y as y,Z as b,at as x,c as ee,ct as S,et as C,f as w,ft as T,g as E,h as te,ht as D,j as O,m as k,n as A,p as j,pt as M,rt as N,st as P,tt as F,v as I,z as L}from"../chunks/Iqr2CudW.js";import{o as ne,t as R}from"../chunks/c7PFFMl4.js";import"../chunks/xihTtKlq.js";import{E as z,O as B,S as V,_ as H,g as re,i as U,k as ie,p as ae,r as oe,t as W,v as se,w as ce}from"../chunks/CBkjDkEN.js";import{_ as le,b as ue,i as G,m as de,t as fe,v as K}from"../chunks/BimZp6R0.js";import{i as pe,n as me,r as he,t as ge}from"../chunks/BJo70SOc.js";import{a as _e,i as q,n as J,o as ve,r as ye,t as be}from"../chunks/B0A4Snxv.js";import{i as Y}from"../chunks/DlKQFacy.js";import{t as xe}from"../chunks/DQjIi5Jv.js";import{t as Se}from"../chunks/CiU6tYJv.js";var X=l(`<button class="link svelte-1khbtcu" type="button">delete</button>`),Ce=l(`<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),we=l(`<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>`),Te=l(`<p class="full problem svelte-1khbtcu" role="alert"> </p>`),Ee=l(`<option></option>`),De=l(`<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 Oe(e,i){S(i,!0);let a=N(()=>[...new Set(W.listing.notes.map(e=>e.type).filter(Boolean))].sort()),s=N(()=>!i.note.id.startsWith(`@`)),c=F(``),l=F(null),u=e=>e.split(`/`).slice(0,-1).join(`/`),m=e=>e.split(`/`).at(-1),h=N(()=>u(i.note.id));async function g(e,t){let n=e=>e.trim().replace(/^\/+|\/+$/g,``).replace(/\.md$/,``),r=[n(e),n(t)].filter(Boolean).join(`/`);if(!n(t)||r===i.note.id)C(h,u(i.note.id));else{C(c,``);try{let e=await i.note.move(r);await W.refresh(),await R(oe(e),{replaceState:!0})}catch(e){C(c,e.message,!0),C(h,u(i.note.id))}}}async function x(){C(c,``);try{let e=await W.api.map();C(l,[...new Set(e.model.edges.filter(([e,t])=>t===i.note.id&&e!==i.note.id&&!e.startsWith(`@`)).map(([t])=>e.notes[t]?.title||t))],!0)}catch(e){C(c,e.message,!0)}}async function ee(){try{await i.note.remove(),await W.refresh(),await R(ne(`/notes`),{replaceState:!0})}catch(e){C(c,e.message,!0),C(l,null)}}var E=De(),te=y(E),D=p(y(te));w(D),M(te);var O=p(te,2),A=p(y(O));w(A),M(O);var I=p(O,2),z=p(y(I));w(z),M(I);var B=p(I,2),V=e=>{var n=Ce(),a=p(v(n),2),s=y(a);Se(s,{id:`note-folder`,quiet:!0,label:`folder: change it to move the note`,placeholder:`the top of the base`,onpick:e=>void g(e,m(i.note.id)),onkeydown:e=>{e.key===`Escape`&&(C(h,u(i.note.id)),e.currentTarget.blur())},get value(){return L(h)},set value(e){C(h,e)}}),M(a);var c=p(a,2),d=p(y(c));w(d),M(c);var f=p(c,2),b=e=>{var n=X();o(`click`,n,()=>void x()),t(e,n)};r(f,e=>{L(l)===null&&e(b)}),_((e,t)=>{k(d,e),j(d,`size`,t)},[()=>m(i.note.id),()=>Math.max(8,m(i.note.id).length)]),o(`change`,d,e=>void g(L(h),e.currentTarget.value)),o(`keydown`,d,e=>{e.key===`Enter`?e.currentTarget.blur():e.key===`Escape`&&(e.currentTarget.value=m(i.note.id),e.currentTarget.blur())}),t(e,n)};r(B,e=>{L(s)&&e(V)});var H=p(B,2),re=e=>{var n=we(),i=y(n),a=p(y(i)),s=e=>{var n=f();_(e=>d(n,`${L(l).length===1?`One note links`:`${L(l).length} notes link`} to it (${e??``}); ${L(l).length===1?`its link is`:`their links are`} left broken.`),[()=>L(l).join(`, `)]),t(e,n)},c=e=>{var n=f(`No note links to it.`);t(e,n)};r(a,e=>{L(l).length?e(s):e(c,-1)}),T(),M(i);var u=p(i,2),m=p(u,2);M(n),o(`click`,u,()=>void ee()),o(`click`,m,()=>{C(l,null)}),t(e,n)};r(H,e=>{L(l)!==null&&e(re)});var U=p(H,2),ie=e=>{var n=Te(),r=b(n,!0);_(()=>d(r,L(c))),t(e,n)};r(U,e=>{L(c)&&e(ie)});var ae=p(U,2);n(ae,20,()=>L(a),e=>e,(e,n)=>{var r=Ee(),i={};_(()=>{i!==(i=n)&&(r.value=(r.__value=i)??``)}),t(e,r)}),M(ae),M(E),_(e=>{k(D,i.note.fields.type),j(D,`size`,e),k(A,i.note.fields.tags),k(z,i.note.fields.description)},[()=>Math.max(7,i.note.fields.type.length)]),o(`input`,D,e=>i.note.setFields({type:e.currentTarget.value})),o(`change`,A,e=>i.note.setFields({tags:e.currentTarget.value})),o(`input`,z,e=>i.note.setFields({description:e.currentTarget.value})),t(e,E),P()}i([`input`,`change`,`keydown`,`click`]);var ke=l(`<h1 class="serif title svelte-130pv1o"> </h1>`),Ae=l(`<p class="asked svelte-130pv1o"><i class="dia svelte-130pv1o" aria-hidden="true"></i><span> </span></p>`),je=l(`<div class="offered svelte-130pv1o" aria-label="What Iso offered"><p class="serif svelte-130pv1o"> </p></div>`),Me=l(`<div class="version svelte-130pv1o"><!> <!> <div class="text svelte-130pv1o"></div> <!></div>`);function Ne(e,n){S(n,!0);let i=N(()=>{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}}}),o,s=F(void 0);A(()=>(C(s,J(o,{doc:L(i).body,onChange:()=>void 0,onSave:()=>void 0,label:`The note as it was`,notes:()=>[],readOnly:!0,pictures:e=>{let t=le(e,n.id);return t?{key:`${t.from}:${t.path}`,src:K(W.api,t)}:null}})),()=>L(s)?.destroy())),a(()=>{let e=n.touched,t=L(i).lines;L(s)?.dispatch({effects:q.of(e?{who:e.who,lines:e.lines.map(e=>e-t)}:null)})});var c=Me(),l=y(c),u=e=>{var n=ke(),r=b(n,!0);_(()=>d(r,L(i).title)),t(e,n)};r(l,e=>{L(i).title&&L(i).title!==n.title&&e(u)});var f=p(l,2),m=e=>{var r=Ae(),i=p(y(r)),a=b(i,!0);M(r),_(()=>d(a,n.asked)),t(e,r)};r(f,e=>{n.asked!==void 0&&e(m)});var h=p(f,2);ee(h,e=>o=e,()=>o);var g=p(h,2),v=e=>{var r=je(),i=y(r),a=b(i,!0);M(r),_(()=>d(a,n.offered)),t(e,r)};r(g,e=>{n.offered!==void 0&&e(v)}),M(c),t(e,c),P()}var Pe=(e,n=D,i=D)=>{var a=Z();let o;var s=y(a),c=e=>{var n=Fe();T(),t(e,n)},l=e=>{var n=Ie();_(()=>j(n,`fill`,i()?`currentColor`:`none`)),t(e,n)};r(s,e=>{n()===`question`?e(c):e(l,-1)}),M(a),_(()=>o=E(a,0,`glyph ${n()??``}`,`svelte-18ltlst`,o,{solved:i()})),t(e,a)},Fe=u(`<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),Ie=u(`<path d="M8 2.5l5.8 10.5H2.2z"></path>`),Z=u(`<svg viewBox="0 0 16 16" width="18" height="18" aria-hidden="true" fill="none" stroke="currentColor" stroke-width="1.4"><!></svg>`),Le=l(`<p class="faint">opening…</p>`),Re=l(`<p class="soft">There is no note at <span class="faint"> </span>.</p> <p><a>all notes</a></p>`,1),ze=l(`<p class="bad svelte-18ltlst"> </p>`),Be=l(`<button class="btn" type="button">take theirs</button>`),Ve=l(`<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>`),He=l(`<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>`),Ue=l(`<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>`),We=l(`<span class="grow faint"> </span>`),Ge=l(`<button class="btn quiet svelte-18ltlst" type="button">details</button>`),Ke=l(` <a class="svelte-18ltlst"> </a>`,1),qe=l(`<p class="about svelte-18ltlst"></p>`),Je=l(`<div class="tl-col svelte-18ltlst"><!></div>`),Ye=l(`<span class="bad svelte-18ltlst" role="alert"> </span>`),Xe=l(`<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),Ze=l(`<button class="toiso svelte-18ltlst" type="button"><i class="dia svelte-18ltlst" aria-hidden="true">◆</i>send to Iso</button>`),Qe=u(`<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>`),$e=l(`<li><a><!><span class="svelte-18ltlst"> </span><!></a></li>`),et=l(`<ul class="attached svelte-18ltlst"></ul>`),tt=l(`<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>`),nt=l(`<!> <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),rt=l(`<article><!></article>`);function Q(i,l){S(l,!0);let u=new _e(l.id),f=new ve(u),m=e=>{try{return localStorage.getItem(e)===`1`}catch{return!1}},w=(e,t)=>{try{localStorage.setItem(e,t?`1`:`0`)}catch{}},D=F(e(m(`isorite.details`))),O=F(!1),I=N(()=>L(O)||u.meta===null),V=N(()=>Y.on.timeline),le=F(null),G=F(null),fe=F(!1),K=F(``),q=N(()=>ae(f.entries)),J=e=>e.who.startsWith(`iso:`)||e.who.startsWith(`agent:`),ye=e=>e.flatMap(e=>Array.from({length:e.to-e.from},(t,n)=>e.from+n)),Se=N(()=>{if(!L(V)||L(G)||L(I))return null;let e=L(le)??(L(Te)?void 0:L(q).findLast(e=>J(e)&&(e.what===`kept`||e.what===`edited`)));if(!e)return null;let t=ye(H(f.entries,e.ids).runs);return t.length?{who:J(e)?`iso`:`you`,lines:t}:null}),X=N(()=>{if(!L(G))return null;let e=pe(L(G)),t=re(f.entries,e);if(t===null)return null;let n=f.entries.filter(t=>t.id<=e),r=f.entries.find(e=>e.id===L(G).ids[0]),i=(L(G).what===`offered`||L(G).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:J(L(G))?`iso`:`you`,lines:ye(H(n,L(G).ids).runs)},asked:L(G).asked,offered:i}}),Ce=()=>xe.url.searchParams.get(`at`)??new URLSearchParams(location.hash.split(`?`)[1]??``).get(`at`),we=F(e(Ce()));a(()=>{let e=Ce();e&&C(we,e,!0)}),a(()=>{if(!L(we))return;let e=L(q).find(e=>e.ids.includes(L(we)));e&&(C(we,null),Y.flip(`timeline`,!0),C(G,e))});let Te=N(()=>Y.on.provenance);a(()=>{L(V)||(C(G,null),C(le,null))});let Ee=N(()=>{if(!L(Te)||u.loaded!==`ready`)return[];let e=[],t=se(f.entries),n=u.text.split(`
5
- `);if(t&&t.length===n.length){let r=0;for(let[i,a]of n.entries()){for(let n of t[i])(n.who.startsWith(`iso:`)||n.who.startsWith(`agent:`))&&n.to<=a.length&&a.slice(n.from,n.to).trim()&&e.push({kind:`by-iso`,from:r+n.from,to:r+n.to});r+=a.length+1}}for(let t of de.parts){if(t.kind!==`passage`||t.id!==l.id)continue;let n=u.text.indexOf(t.text);n>=0&&e.push({kind:`given`,from:n,to:n+t.text.length})}return e});function De(e){C(K,``),C(G,L(G)===e?null:e)}function ke(e){if(!L(G))return;let t=L(q).indexOf(L(G))+e;t>=0&&t<L(q).length&&C(G,L(q)[t])}async function Ae(){if(L(G)){C(fe,!0),C(K,``);try{await u.restore(pe(L(G))),C(G,null)}catch(e){C(K,e.message,!0)}finally{C(fe,!1)}}}function je(e){!L(G)||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(),ke(-1)):e.key===`ArrowRight`||e.key===`ArrowDown`?(e.preventDefault(),ke(1)):e.key===`Escape`&&(e.preventDefault(),C(G,null)))}A(()=>{W.open=l.id,u.open().then(()=>f.open());let e=()=>{u.save()};return addEventListener(`pagehide`,e),document.addEventListener(`visibilitychange`,e),()=>{removeEventListener(`pagehide`,e),document.removeEventListener(`visibilitychange`,e),f.close(),u.close(),W.here=``,W.open=``,W.saving=null}});async function Me(){let e=l.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 n=[...l.id.split(`/`).slice(0,-1),U(t)].filter(Boolean).join(`/`);if(U(t)&&!W.listing.notes.some(e=>e.id===n))try{let e=await u.move(n);await W.refresh(),await R(oe(e),{replaceState:!0})}catch{}}a(()=>{u.loaded===`ready`&&Y.fresh===l.id&&(Y.fresh=``,g().then(()=>{let e=document.getElementById(`title`);e?.focus(),e?.select()}))});let Fe={saved:`saved`,unsaved:`not saved yet`,saving:`saving`,conflict:`changed elsewhere: choose below`,failed:`not saved`};a(()=>{W.here=u.loaded===`ready`?u.fields.title||l.id.split(`/`).at(-1):``,W.saving=u.loaded===`ready`?{text:u.saving===`failed`?`not saved: ${u.message}`:Fe[u.saving],bad:u.saving===`failed`||u.saving===`conflict`}:null});let Ie=N(()=>[...new Set(f.changes.map(e=>ue(e.proposal.who)||`Iso`))].join(` and `)),Z=N(()=>ie(String(u.meta?.type??``))),Q=N(()=>L(Z)===`note`?null:z(u.meta??{},L(Z))),it=N(()=>L(Z)===`note`?[]:W.listing.notes.find(e=>e.id===l.id)?.attached??B(u.meta?.[ce[L(Z)]])),at=N(()=>W.listing.notes.filter(e=>e.kind&&e.id!==l.id&&e.attached?.includes(l.id)).sort((e,t)=>e.kind===t.kind?0:e.kind===`question`?-1:1)),ot=e=>W.listing.notes.find(t=>t.id===e)?.title??e.split(`/`).at(-1),st=F(!1);async function ct(){C(st,!0);try{await u.setDone(!L(Q))}catch{}finally{C(st,!1)}}let lt=N(()=>f.cursor&&f.cursor.to>f.cursor.from?u.text.slice(f.cursor.from,f.cursor.to).trim():``),ut=F(void 0),$=F(null);a(()=>{if(f.cursor,!L(lt)||!L(ut)||L(I)||L(G)){C($,null);return}let e=requestAnimationFrame(()=>{let e=getSelection(),t=L(ut).getBoundingClientRect(),n=e?.rangeCount?e.getRangeAt(0).getBoundingClientRect():null;!n||!n.width&&!n.height?C($,{top:8,left:t.width-140},!0):C($,{top:Y.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(){L(lt)&&(de.add({kind:`passage`,id:l.id,title:u.fields.title||l.id,text:L(lt)}),C($,null))}var ft=rt();c(`keydown`,s,je);let pt;var mt=y(ft),ht=e=>{var n=Le();t(e,n)},gt=e=>{var n=Re(),r=v(n),i=p(y(r)),a=b(i,!0);T(),M(r);var o=p(r,2),s=b(o);_(e=>{d(a,l.id),j(s,`href`,e)},[()=>ne(`/notes`)]),t(e,n)},_t=e=>{var n=ze(),r=b(n,!0);_(()=>d(r,u.message)),t(e,n)},vt=e=>{var i=nt(),a=v(i),s=e=>{var n=Ve(),i=p(y(n),2),a=b(i,!0),s=p(i,2),c=y(s),l=p(c,2),f=e=>{var n=Be();o(`click`,n,()=>u.keepTheirs()),t(e,n)};r(l,e=>{u.theirs&&e(f)}),M(s),T(2),M(n),_(()=>d(a,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.`)),o(`click`,c,()=>u.keepMine()),t(e,n)};r(a,e=>{u.saving===`conflict`&&e(s)});var m=p(a,2),g=y(m),ee=e=>{var n=Ue(),i=y(n),a=e=>{Pe(e,()=>L(Z),()=>!!L(Q))};r(i,e=>{L(Z)!==`note`&&e(a)});var s=p(i,4);x(s);var d=p(s,2),f=e=>{let n=N(()=>L(Z)===`question`?L(Q)?`Resolved`:`Resolve`:L(Q)?`Solved`:`Mark solved`);var r=He();_(()=>{j(r,`aria-pressed`,!!L(Q)),r.disabled=L(st),j(r,`aria-label`,L(Z)===`question`?`Resolved`:`Solved`),j(r,`title`,L(Q)?`${L(n)} ${L(Q)} · press to open it again`:L(n))}),o(`click`,r,()=>void ct()),t(e,r)};r(d,e=>{L(Z)!==`note`&&e(f)}),M(n),_(e=>{k(s,u.fields.title),j(s,`placeholder`,e)},[()=>l.id.split(`/`).at(-1)]),o(`input`,s,e=>u.setFields({title:e.currentTarget.value.replace(/\s*\n\s*/g,` `)})),o(`keydown`,s,e=>{e.key===`Enter`&&(e.preventDefault(),e.currentTarget.blur())}),c(`blur`,s,()=>void Me()),t(e,n)},S=e=>{var n=We(),r=b(n);_(()=>d(r,`${l.id??``}.md${u.meta===null?`: the frontmatter cannot be read, so the file is shown as it is`:``}`)),t(e,n)};r(g,e=>{L(I)?e(S,-1):e(ee)});var A=p(g,2),P=y(A),F=y(P),ne=e=>{var n=Ge();_(()=>j(n,`aria-pressed`,L(D))),o(`click`,n,()=>{C(D,!L(D)),w(`isorite.details`,L(D))}),t(e,n)};r(F,e=>{L(I)||e(ne)});var R=p(F,2);M(P),M(A),M(m);var z=p(m,2),B=e=>{var r=qe();n(r,22,()=>L(it),e=>e,(e,n,r)=>{T();var i=Ke(),a=v(i,!0),o=p(a),s=b(o,!0);_((e,t)=>{d(a,L(r)?` · `:``),j(o,`href`,e),d(s,t)},[()=>oe(n),()=>ot(n)]),t(e,i)}),M(r),t(e,r)};r(z,e=>{L(it).length&&!L(I)&&e(B)});var H=p(z,2),re=e=>{Oe(e,{get note(){return u}})};r(H,e=>{L(D)&&!L(I)&&e(re)});var U=p(H,2),ie=e=>{var n=Je(),r=y(n);{let e=N(()=>L(G)?pe(L(G)):null);ge(r,{get moments(){return L(q)},get at(){return L(e)},get pointed(){return L(le)},point:e=>C(le,e),pick:De})}M(n),t(e,n)};r(U,e=>{L(V)&&!L(I)&&e(ie)});var ae=p(U,2),W=e=>{var n=Xe(),i=v(n),a=y(i),s=b(a),c=p(a,4),l=e=>{var n=Ye(),r=b(n,!0);_(()=>d(r,L(K))),t(e,n)};r(c,e=>{L(K)&&e(l)});var f=p(c,2),m=p(f,2);M(i);var g=p(i,2);h(g,()=>pe(L(G)),e=>{Ne(e,{get id(){return u.id},get text(){return L(X).text},get title(){return u.fields.title},get touched(){return L(X).touched},get asked(){return L(X).asked},get offered(){return L(X).offered}})}),_((e,t)=>{d(s,`${e??``} · ${t??``}`),f.disabled=L(fe)||L(X).text===u.text},[()=>he(L(G)),()=>me(L(G).at)]),o(`click`,f,Ae),o(`click`,m,()=>C(G,null)),t(e,n)};r(ae,e=>{L(G)&&L(X)&&e(W)});var se=p(ae,2),ce=e=>{var n=Ze();let r;_(()=>r=te(n,``,r,{top:`${L($).top??``}px`,left:`${L($).left??``}px`})),o(`pointerdown`,n,e=>{e.preventDefault(),dt()}),o(`click`,n,e=>{e.detail===0&&dt()}),t(e,n)};r(se,e=>{L($)&&e(ce)});var ue=p(se,2),de=y(ue);h(de,()=>L(I),e=>{be(e,{get note(){return u},get iso(){return f},get source(){return L(I)},get touched(){return L(Se)},get lens(){return L(Ee)}})}),M(ue);var _e=p(ue,2),J=e=>{var i=et();n(i,21,()=>L(at),e=>e.id,(e,n)=>{var i=$e(),a=y(i);let o;var s=y(a);Pe(s,()=>L(n).kind??`question`,()=>!!L(n).done);var c=p(s),l=b(c,!0),u=p(c),f=e=>{var n=Qe();t(e,n)};r(u,e=>{L(n).done&&e(f)}),M(a),M(i),_(e=>{j(a,`href`,e),o=E(a,1,`svelte-18ltlst`,null,o,{done:!!L(n).done&&L(n).kind===`question`}),d(l,L(n).title)},[()=>oe(L(n).id)]),t(e,i)}),M(i),t(e,i)};r(_e,e=>{L(at).length&&!L(I)&&!L(G)&&e(J)});var ve=p(_e,2),ye=e=>{var n=tt(),r=p(y(n),2),i=b(r),a=p(r,4),s=p(a,2);M(n),_(()=>{d(i,`${f.changes.length??``} ${f.changes.length===1?`change`:`changes`} from ${L(Ie)??``} waiting`),a.disabled=f.busy===`all`,s.disabled=f.busy===`all`}),o(`click`,a,()=>f.settleAll(!0)),o(`click`,s,()=>f.settleAll(!1)),t(e,n)};r(ve,e=>{f.changes.length&&e(ye)}),_(e=>{j(R,`aria-pressed`,L(I)),R.disabled=u.meta===null,j(ue,`hidden`,e)},[()=>!!(L(G)&&L(X))]),o(`click`,R,()=>C(O,!L(O))),t(e,i)};r(mt,e=>{u.loaded===`loading`?e(ht):u.loaded===`missing`?e(gt,1):u.loaded===`error`?e(_t,2):e(vt,-1)}),M(ft),ee(ft,e=>C(ut,e),()=>L(ut)),_(()=>pt=E(ft,1,`note svelte-18ltlst`,null,pt,{timed:L(V)&&u.loaded===`ready`&&!L(I)})),t(i,ft),P()}i([`click`,`input`,`keydown`,`pointerdown`]);var it=l(`<p class="bad svelte-1b6mil3" role="alert"> </p>`),at=l(`<div class="reading prose svelte-1b6mil3"></div>`),ot=l(`<p class="faint">No reading yet.</p>`),st=l(`<span role="status"> </span>`),ct=l(`<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 lt(e,n){S(n,!0);let i=F(null),a=F(``),s=F(``),c=F(``),l=!1,u,f,h;async function g(){try{let e=await W.api.understanding(n.id);C(i,e),l||(C(s,e.scratchpad,!0),h&&ye(h,L(s)))}catch(e){C(a,e.message,!0)}}A(()=>{h=J(f,{doc:L(s),label:`Scratchpad`,placeholder:`…`,notes:()=>W.listing.notes.filter(e=>e.id!==n.id).map(e=>({id:e.id,title:e.title,folder:e.dir})),onChange:e=>{C(s,e,!0),v()},onSave:()=>{l&&x()},onFollow:e=>{R(oe(e))}}),g();let e=W.on(e=>{e.type===`note-changed`&&(e.id===`@understanding/${n.id}`||e.id===n.id)&&g()});return()=>{e(),clearTimeout(u),l&&x(),h?.destroy()}});function v(){l=!0,C(c,``),clearTimeout(u),u=setTimeout(()=>void x(),1200)}async function x(){if(L(i)){C(c,`saving`);try{C(i,await W.api.saveScratchpad(n.id,L(s),L(i).version)),l=!1,C(c,`saved`)}catch(e){C(c,`failed`),C(a,e.message,!0)}}}var w=ct(),T=p(y(w),2),te=b(T,!0),D=p(T,2),O=e=>{var n=it(),r=b(n,!0);_(()=>d(r,L(a))),t(e,n)};r(D,e=>{L(a)&&e(O)});var k=p(D,2),j=p(y(k),2),N=e=>{var n=at();m(n,()=>G(L(i).reading),!0),M(n),I(n,(e,t)=>fe?.(e,t),()=>L(i).reading),t(e,n)},ne=e=>{var n=ot();t(e,n)};r(j,e=>{L(i)?.reading?e(N):e(ne,-1)}),M(k);var z=p(k,2),B=y(z),V=p(y(B)),H=e=>{var n=st();let r;var i=b(n,!0);_(()=>{r=E(n,1,`state svelte-1b6mil3`,null,r,{bad:L(c)===`failed`}),d(i,L(c)===`failed`?`not saved`:L(c))}),t(e,n)};r(V,e=>{L(c)&&e(H)}),M(B);var re=p(B,2);ee(re,e=>f=e,()=>f),M(z),M(w),_(()=>d(te,n.title)),o(`focusout`,re,()=>{l&&x()}),t(e,w),P()}i([`focusout`]);var ut=l(`<div><!></div> <!>`,1);function $(e,n){S(n,!0);let i=N(()=>xe.params.id??``),a=N(()=>Y.understanding&&!L(i).startsWith(`@`)),o=N(()=>W.listing.notes.find(e=>e.id===L(i))?.title??L(i).split(`/`).at(-1)??L(i));var s=O(),c=v(s);h(c,()=>L(i),e=>{var n=ut(),s=v(n);Q(y(s),{get id(){return L(i)}}),M(s);var c=p(s,2),l=e=>{lt(e,{get id(){return L(i)},get title(){return L(o)}})};r(c,e=>{L(a)&&e(l)}),_(()=>j(s,`hidden`,L(a))),t(e,n)}),t(e,s),P()}export{$ as component};
@@ -1 +0,0 @@
1
- import"../chunks/Iqr2CudW.js";import"../chunks/xihTtKlq.js";import{t as e}from"../chunks/B8Qvvm53.js";import"../chunks/BqrMZ9MX.js";function t(t){e(t,{})}export{t as component};
@@ -1 +0,0 @@
1
- import{A as e,C as t,F as n,I as r,M as i,N as a,O as o,Q as s,W as c,X as l,Y as u,Z as d,ct as f,ft as p,g as m,gt as h,h as g,i as _,p as v,pt as y,rt as b,s as x,st as S,z as C}from"../chunks/Iqr2CudW.js";import"../chunks/xihTtKlq.js";import{i as w,n as T}from"../chunks/BYSDTLqw.js";import"../chunks/BqrMZ9MX.js";var E=a(`<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=_(n,`width`,3,72);var i=E();c(()=>{v(i,`width`,r()),v(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(n,i){f(i,!1);let a=[`ground-0`,`ground-1`,`ground-2`,`ground-3`,`line`,`line-strong`],_=[`text`,`text-soft`,`text-faint`],E=[`lattice`,`growth`,`malachite`,`rose`];x();var M=j(),N=u(M),P=s(u(N),2);t(P,5,()=>T,([e,t])=>e,(t,n)=>{var i=b(()=>h(C(n),2));let a=()=>C(i)[0],s=()=>C(i)[1];var l=O();let u;var f=d(l,!0);c(()=>{u=m(l,1,`btn`,null,u,{primary:w.chosen===a()}),v(l,`aria-checked`,w.chosen===a()),o(f,s())}),r(`click`,l,()=>w.choose(a())),e(t,l)}),y(P),y(N);var F=s(N,2),I=s(u(F),2),L=u(I);D(L,{width:216}),D(s(L),{}),y(I),y(F);var R=s(F,2),z=s(u(R),2);t(z,5,()=>a,e=>e,(t,n)=>{var r=k(),i=u(r);let a;var l=s(i),f=d(l,!0);y(r),c(()=>{a=g(i,``,a,{background:`var(--${C(n)})`}),o(f,C(n))}),e(t,r)}),y(z);var B=s(z,2);t(B,5,()=>_,e=>e,(t,n)=>{var r=k(),i=u(r);let a;var l=s(i),f=d(l,!0);y(r),c(()=>{a=g(i,``,a,{background:`var(--${C(n)})`}),o(f,C(n))}),e(t,r)}),y(B);var V=s(B,2);t(V,5,()=>E,e=>e,(t,n)=>{var r=A(),i=l(r),a=u(i);let f;var p=s(a),m=d(p,!0);y(i);var h=s(i,2),_=u(h);let v;var b=s(_),x=d(b);y(h),c(()=>{f=g(a,``,f,{background:`var(--${C(n)})`}),o(m,C(n)),v=g(_,``,v,{background:`var(--${C(n)}-soft)`}),o(x,`${C(n)??``}-soft`)}),e(t,r)}),y(V),y(R);var H=s(R,2),U=s(u(H),2);g(U,``,{},{"font-size":`22px`});var W=s(U,4);g(W,``,{},{"font-size":`18px`}),y(H),p(4),y(M),e(n,M),S()}n([`click`]);export{M as component};