@inkandswitch/patchwork-pkg-base 0.0.131 → 0.0.132

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 (57) hide show
  1. package/module-settings-url +1 -1
  2. package/package.json +1 -1
  3. package/packages/account/dist/index.css +19 -0
  4. package/packages/account/dist/index.css.map +2 -2
  5. package/packages/add-doc-to-sidebar-button/button.js +6 -0
  6. package/packages/add-doc-to-sidebar-button/styles.css +8 -1
  7. package/packages/chat/dist/index.js +1 -1
  8. package/packages/codemirror-base/dist/tool.js +75 -59
  9. package/packages/codemirror-base/dist/tool.js.map +2 -2
  10. package/packages/codemirror-markdown/dist/extensions/markdown.js +25 -0
  11. package/packages/codemirror-markdown/dist/extensions/markdown.js.map +2 -2
  12. package/packages/comments-view/dist/assets/{main-DXYeEDFB.js → main-EQKeEvzx.js} +50 -3
  13. package/packages/comments-view/dist/assets/main-EQKeEvzx.js.map +1 -0
  14. package/packages/comments-view/dist/index.js +3 -3
  15. package/packages/doc-openwith/doc-openwith.js +15 -1
  16. package/packages/doc-presence/doc-presence.js +66 -23
  17. package/packages/drafts/dist/assets/{main-CG9HOCai.js → main-wz7oton3.js} +134 -80
  18. package/packages/drafts/dist/assets/main-wz7oton3.js.map +1 -0
  19. package/packages/drafts/dist/index.js +3 -3
  20. package/packages/file/dist/index.js +1 -1
  21. package/packages/file/dist/{tool-Bucjz6Ay.js → tool-CSiyzu4S.js} +51 -41
  22. package/packages/file/dist/tool-CSiyzu4S.js.map +1 -0
  23. package/packages/file/dist/{typescript-language-server-BId-R8tz.js → typescript-language-server-T-bVgxs5.js} +2 -2
  24. package/packages/file/dist/{typescript-language-server-BId-R8tz.js.map → typescript-language-server-T-bVgxs5.js.map} +1 -1
  25. package/packages/packages/dist/index.js +6 -1
  26. package/packages/patternwitch/tool.js +30 -3
  27. package/packages/providers/dist/assets/FocusProvider-CsJzhQWV.js +2 -0
  28. package/packages/providers/dist/assets/FocusProvider-CsJzhQWV.js.map +1 -0
  29. package/packages/providers/dist/index.js +1 -1
  30. package/packages/theming/dist/{active-theme-WA6XMDTP.js → active-theme-HEMDARRS.js} +3 -3
  31. package/packages/theming/dist/{chunk-4GOF67HA.js → chunk-2LCY4PP2.js} +2 -2
  32. package/packages/theming/dist/{chunk-L7WQSSFT.js → chunk-MJMDS3V5.js} +2 -2
  33. package/packages/theming/dist/{lychee-BMLMUNP6.css → lychee-BADZHTMJ.css} +1 -1
  34. package/packages/theming/dist/main.js +4 -4
  35. package/packages/theming/dist/{theme-titlebar-LG6PFBKR.js → theme-titlebar-JLYY4TZR.js} +3 -3
  36. package/packages/theming/dist/{theme-tray-R3PJDYCL.js → theme-tray-OZPNTCHA.js} +3 -3
  37. package/packages/theming/dist/tool.js +2 -2
  38. package/packages/threepane/dist/IsolatedDocumentArea-PIXYOA25.js +2 -0
  39. package/packages/threepane/dist/PatchworkFrame-O76GWRUL.js +2 -0
  40. package/packages/threepane/dist/{PatchworkFrame-HMA5KZLY.js.map → PatchworkFrame-O76GWRUL.js.map} +3 -3
  41. package/packages/threepane/dist/{chunk-UOTRB26X.js → chunk-Y2SEQB3F.js} +24 -8
  42. package/packages/threepane/dist/{chunk-UOTRB26X.js.map → chunk-Y2SEQB3F.js.map} +3 -3
  43. package/packages/threepane/dist/index.js +1 -1
  44. package/plugin-registry-url +1 -1
  45. package/packages/comments-view/dist/assets/main-DXYeEDFB.js.map +0 -1
  46. package/packages/drafts/dist/assets/main-CG9HOCai.js.map +0 -1
  47. package/packages/file/dist/tool-Bucjz6Ay.js.map +0 -1
  48. package/packages/providers/dist/assets/FocusProvider-AfpGH4B_.js +0 -2
  49. package/packages/providers/dist/assets/FocusProvider-AfpGH4B_.js.map +0 -1
  50. package/packages/threepane/dist/IsolatedDocumentArea-JJMLEL4O.js +0 -2
  51. package/packages/threepane/dist/PatchworkFrame-HMA5KZLY.js +0 -2
  52. /package/packages/theming/dist/{active-theme-WA6XMDTP.js.map → active-theme-HEMDARRS.js.map} +0 -0
  53. /package/packages/theming/dist/{chunk-4GOF67HA.js.map → chunk-2LCY4PP2.js.map} +0 -0
  54. /package/packages/theming/dist/{chunk-L7WQSSFT.js.map → chunk-MJMDS3V5.js.map} +0 -0
  55. /package/packages/theming/dist/{theme-titlebar-LG6PFBKR.js.map → theme-titlebar-JLYY4TZR.js.map} +0 -0
  56. /package/packages/theming/dist/{theme-tray-R3PJDYCL.js.map → theme-tray-OZPNTCHA.js.map} +0 -0
  57. /package/packages/threepane/dist/{IsolatedDocumentArea-JJMLEL4O.js.map → IsolatedDocumentArea-PIXYOA25.js.map} +0 -0
@@ -1,8 +1,15 @@
1
- import{a as se,b as _t}from"./chunk-FW4363Y4.js";var Ie=se((tn,Ae)=>{var I=1e3,F=I*60,R=F*60,E=R*24,Ht=E*7,qt=E*365.25;Ae.exports=function(e,r){r=r||{};var t=typeof e;if(t==="string"&&e.length>0)return Bt(e);if(t==="number"&&isFinite(e))return r.long?Vt(e):Jt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Bt(e){if(e=String(e),!(e.length>100)){var r=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(r){var t=parseFloat(r[1]),o=(r[2]||"ms").toLowerCase();switch(o){case"years":case"year":case"yrs":case"yr":case"y":return t*qt;case"weeks":case"week":case"w":return t*Ht;case"days":case"day":case"d":return t*E;case"hours":case"hour":case"hrs":case"hr":case"h":return t*R;case"minutes":case"minute":case"mins":case"min":case"m":return t*F;case"seconds":case"second":case"secs":case"sec":case"s":return t*I;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function Jt(e){var r=Math.abs(e);return r>=E?Math.round(e/E)+"d":r>=R?Math.round(e/R)+"h":r>=F?Math.round(e/F)+"m":r>=I?Math.round(e/I)+"s":e+"ms"}function Vt(e){var r=Math.abs(e);return r>=E?K(e,r,E,"day"):r>=R?K(e,r,R,"hour"):r>=F?K(e,r,F,"minute"):r>=I?K(e,r,I,"second"):e+" ms"}function K(e,r,t,o){var n=r>=t*1.5;return Math.round(e/t)+" "+o+(n?"s":"")}});var Re=se((rn,Fe)=>{function Yt(e){t.debug=t,t.default=t,t.coerce=h,t.disable=a,t.enable=n,t.enabled=u,t.humanize=Ie(),t.destroy=p,Object.keys(e).forEach(s=>{t[s]=e[s]}),t.names=[],t.skips=[],t.formatters={};function r(s){let c=0;for(let f=0;f<s.length;f++)c=(c<<5)-c+s.charCodeAt(f),c|=0;return t.colors[Math.abs(c)%t.colors.length]}t.selectColor=r;function t(s){let c,f=null,g,v;function b(...l){if(!b.enabled)return;let d=b,m=Number(new Date),w=m-(c||m);d.diff=w,d.prev=c,d.curr=m,c=m,l[0]=t.coerce(l[0]),typeof l[0]!="string"&&l.unshift("%O");let y=0;l[0]=l[0].replace(/%([a-zA-Z%])/g,(S,xt)=>{if(S==="%%")return"%";y++;let xe=t.formatters[xt];if(typeof xe=="function"){let yt=l[y];S=xe.call(d,yt),l.splice(y,1),y--}return S}),t.formatArgs.call(d,l),(d.log||t.log).apply(d,l)}return b.namespace=s,b.useColors=t.useColors(),b.color=t.selectColor(s),b.extend=o,b.destroy=t.destroy,Object.defineProperty(b,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(g!==t.namespaces&&(g=t.namespaces,v=t.enabled(s)),v),set:l=>{f=l}}),typeof t.init=="function"&&t.init(b),b}function o(s,c){let f=t(this.namespace+(typeof c>"u"?":":c)+s);return f.log=this.log,f}function n(s){t.save(s),t.namespaces=s,t.names=[],t.skips=[];let c=(typeof s=="string"?s:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of c)f[0]==="-"?t.skips.push(f.slice(1)):t.names.push(f)}function i(s,c){let f=0,g=0,v=-1,b=0;for(;f<s.length;)if(g<c.length&&(c[g]===s[f]||c[g]==="*"))c[g]==="*"?(v=g,b=f,g++):(f++,g++);else if(v!==-1)g=v+1,b++,f=b;else return!1;for(;g<c.length&&c[g]==="*";)g++;return g===c.length}function a(){let s=[...t.names,...t.skips.map(c=>"-"+c)].join(",");return t.enable(""),s}function u(s){for(let c of t.skips)if(i(s,c))return!1;for(let c of t.names)if(i(s,c))return!0;return!1}function h(s){return s instanceof Error?s.stack||s.message:s}function p(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}Fe.exports=Yt});var Oe=se((x,G)=>{x.formatArgs=Kt;x.save=Gt;x.load=Zt;x.useColors=Xt;x.storage=Qt();x.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();x.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Xt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Kt(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+G.exports.humanize(this.diff),!this.useColors)return;let r="color: "+this.color;e.splice(1,0,r,"color: inherit");let t=0,o=0;e[0].replace(/%[a-zA-Z%]/g,n=>{n!=="%%"&&(t++,n==="%c"&&(o=t))}),e.splice(o,0,r)}x.log=console.debug||console.log||(()=>{});function Gt(e){try{e?x.storage.setItem("debug",e):x.storage.removeItem("debug")}catch{}}function Zt(){let e;try{e=x.storage.getItem("debug")||x.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function Qt(){try{return localStorage}catch{}}G.exports=Re()(x);var{formatters:er}=G.exports;er.j=function(e){try{return JSON.stringify(e)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}});import{template as vt}from"solid-js/web";import{createComponent as wo}from"solid-js/web";import{setAttribute as xo}from"solid-js/web";import{effect as yo}from"solid-js/web";import{insert as wt}from"solid-js/web";import{getOwner as _o}from"solid-js/web";import{createMemo as gt}from"solid-js";import{createStore as So,reconcile as $o}from"solid-js/store";import{render as Eo}from"solid-js/web";import{template as V}from"solid-js/web";import{insert as T}from"solid-js/web";import{getOwner as B}from"solid-js/web";import{use as J}from"solid-js/web";import{createComponent as _}from"solid-js/web";import{createUniqueId as Ct,untrack as ye}from"solid-js";import{isServer as kt,isDev as _e}from"solid-js/web";import{reconcile as St}from"solid-js/store";function le(e,r={}){let t=r.storage||globalThis.localStorage,o=r.name||`storage-${Ct()}`;if(!t)return Object.assign(e,{2:null});let n=r.storageOptions,i=r.serialize||JSON.stringify.bind(JSON),a=r.deserialize||JSON.parse.bind(JSON),u=t.getItem(o,n),h=typeof e[0]=="function"?s=>{try{let c=a(s);e[1](()=>c)}catch(c){_e&&console.warn(c)}}:s=>{try{let c=a(s);e[1](St(c))}catch(c){_e&&console.warn(c)}},p=!0;if(u instanceof Promise?u.then(s=>p&&s&&h(s)):u&&h(u),typeof r.sync?.[0]=="function"){let s=typeof e[0]=="function"?e[0]:()=>e[0];r.sync[0](c=>{c.key!==o||!kt&&(c.url||globalThis.location.href)!==globalThis.location.href||c.newValue===i(ye(s))||h(c.newValue)})}return Object.assign([],e,{1:typeof e[0]=="function"?s=>{let c=e[1](s),f=s!=null?i(c):s;return r.sync?.[1](o,f),f!=null?t.setItem(o,f,n):t.removeItem(o,n),p=!1,c}:(...s)=>{e[1](...s);let c=ye(()=>i(e[0]));r.sync?.[1](o,c),t.setItem(o,c,n),p=!1},2:u})}import{createEffect as ut,createMemo as we,createSignal as k,on as ft,onCleanup as mo,onMount as go,Show as P}from"solid-js";import{createEffect as Ce,createSignal as ke,on as Se}from"solid-js";var C={leftCollapsed:"patchwork:leftSidebarCollapsed",rightCollapsed:"patchwork:rightSidebarCollapsed",leftWidth:"patchwork:leftSidebarWidth",rightWidth:"patchwork:rightSidebarWidth",contextToolId:"patchwork:contextSidebarToolId"},Y="patchwork:collapse-context-sidebar",X=400;function $e(e,r){let t=localStorage.getItem(e);return t?parseInt(t,10):r}function Ee(e){return localStorage.getItem(e)==="true"}function $t(){let[e,r]=ke(Ee(C.leftCollapsed)),[t,o]=ke($e(C.leftWidth,X));return Ce(Se(e,n=>{localStorage.setItem(C.leftCollapsed,String(n))})),Ce(Se(t,n=>{localStorage.setItem(C.leftWidth,String(n))})),{isSidebarCollapsed:e,setIsSidebarCollapsed:r,leftSidebarWidth:t,setLeftSidebarWidth:o}}import{onCleanup as Et,onMount as Tt}from"solid-js";var Te=180,Dt=720,At=120,De=3;function de(e,{isCollapsed:r,setCollapsed:t,setWidth:o}){let n=!1,i=null,a=!1,u=null,h=d=>{if(d<At){r()||t(!0),u=null;return}r()&&t(!1);let m=Math.min(Dt,d);o(m),u=m},p=()=>{r()||u!==null&&u<Te&&o(Te)},s=null,c=()=>{document.body.setAttribute("data-sidebar-resizing",e),s=document.createElement("div"),s.style.cssText="position:fixed;inset:0;z-index:2147483647;cursor:col-resize;",document.body.appendChild(s)},f=()=>{n=!1,i=null,document.body.style.userSelect="",document.body.removeAttribute("data-sidebar-resizing"),s?.remove(),s=null},g=d=>{d.preventDefault(),i={x:d.clientX,y:d.clientY},a=!1,u=null,n=!0,document.body.style.userSelect="none"},v=()=>{let d=n,m=a;f(),d&&m&&p()},b=d=>{if(!n||!i)return;let m=Math.abs(d.clientX-i.x),w=Math.abs(d.clientY-i.y);!a&&(m>De||w>De)&&(a=!0,c()),h(e==="left"?d.clientX:window.innerWidth-d.clientX)},l=d=>{if(a){d.preventDefault(),d.stopPropagation(),a=!1;return}t(m=>!m)};return Tt(()=>{document.addEventListener("mousemove",b),document.addEventListener("mouseup",v),Et(()=>{document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",v),n&&f()})}),{handleMouseDown:g,handleToggleClick:l}}import{createEffect as It,createSignal as Ft,onCleanup as Rt}from"solid-js";var $=(e,r)=>{let[t,o]=Ft(!1);return It(()=>{let n=r();if(!n)return;o(!1);let i=a=>{a.detail?.componentId===e&&o(!0)};n.addEventListener("patchwork:mounted",i),Rt(()=>n.removeEventListener("patchwork:mounted",i))}),t};import{createEffect as Ot,createSignal as Lt,onCleanup as Mt}from"solid-js";var zt=5e3,Pt=(e,r)=>{let[t,o]=Lt(!1);return Ot(()=>{if(t())return;let n=e(),i=r();if(!n||!i)return;let a=h=>{let p=h.detail;p?.url&&p.url!==i||o(!0)};n.addEventListener("patchwork:mounted",a),n.addEventListener("patchwork:no-tool",a);let u=setTimeout(()=>o(!0),zt);Mt(()=>{n.removeEventListener("patchwork:mounted",a),n.removeEventListener("patchwork:no-tool",a),clearTimeout(u)})}),t};import{getRegistry as Ut}from"@inkandswitch/patchwork-plugins";import{createMemo as Nt,createSignal as jt,onCleanup as Wt}from"solid-js";function A(e){let r=Ut("patchwork:component"),[t,o]=jt(0),n=r.on("changed",()=>o(i=>i+1));return Wt(n),Nt(()=>(t(),(r.all?.()??[]).filter(i=>(i.tags??[]).includes(e)).map(i=>({id:i.id,name:i.name||i.id,icon:i.icon})).sort((i,a)=>i.name.localeCompare(a.name))))}import{template as q}from"solid-js/web";import{delegateEvents as Br}from"solid-js/web";import{getOwner as Jr}from"solid-js/web";import{effect as it}from"solid-js/web";import{setAttribute as Vr}from"solid-js/web";import{memo as st}from"solid-js/web";import{insert as M}from"solid-js/web";import{createComponent as z}from"solid-js/web";import{For as Qr,Show as be}from"solid-js";import{template as We}from"solid-js/web";import{delegateEvents as pr}from"solid-js/web";import{insert as hr}from"solid-js/web";import"solid-js/web";import{setAttribute as Ne}from"solid-js/web";import{effect as je}from"solid-js/web";import{use as He}from"solid-js/web";import{createComponent as fe}from"solid-js/web";var Me=_t(Oe(),1),ce=(0,Me.default)("cabbages");function ue(e){return typeof e=="object"&&e!=null&&Object.getPrototypeOf(e)==Object.prototype}function Z(e){if(Array.isArray(e))return e.map(Z);if(ue(e)){let r={};for(let t of Object.keys(e))r[t]=Z(e[t]);return r}return e instanceof Date?new Date(e):ArrayBuffer.isView(e)?e.slice():e}var tr="\uFFFC";function ze(e,...r){if(r.length==0){ce("empty patch");return}let[t,o,n]=r,i=[...t];for(;;){let a=i.shift();if(!i.length){let h=Array.isArray(o);if(ue(e)&&h&&typeof a>"u"&&typeof o[0]=="string"){delete e[o[0]];return}if(h||typeof o=="number"){if(typeof a>"u")throw new Error("cant treat top level as a seq");a=a;let[p,s]=Array.isArray(o)?o:[o,o+1],c=Array.isArray(o)&&o.length==0;if(!c&&(p==null||s==null))throw new RangeError("it's all or nothing, no half measures");let f=typeof n>"u",g=p===s&&!f,v=c&&!f,b=!g&&!f&&!v;if(typeof e[a]>"u"){if(typeof e=="string")return;typeof n=="string"?e[a]="":e[a]=[]}let l=e[a];if(Array.isArray(l)){if(v){Array.isArray(n)?l.push(...n):l.push(n);return}if(g||b){Array.isArray(n)?l.splice(p,s-p,...n):l.splice(p,s-p,n);return}if(f){l.splice(p,s-p);return}throw new Error("i don't know what happened")}if(typeof l=="string"){if(v){e[a]=l+n;return}if(b||g){e[a]=l.slice(0,p)+(typeof n=="string"?n:n.map(d=>typeof d=="string"?d:tr).join(""))+l.slice(s);return}if(f){e[a]=l.slice(0,p)+l.slice(s);return}throw new Error("i don't know what happened")}if(ue(l)&&h&&typeof o[0]=="string"){delete l[o[0]];return}throw new Error("not implemented")}if(typeof a>"u"){if(typeof o!="string")throw new Error(`can't index top-level map with ${o}`);typeof n>"u"?delete e[o]:e[o]=n;return}if(typeof e[a]>"u"&&(e[a]={}),h){let[p,s]=o;p!=null&&s!=null&&(typeof n>"u"&&p!=null&&s!=null?delete e[a][p||s]:e[a][p||s]=n)}else if(typeof n>"u")delete e[a][o];else{if(typeof e[a]=="string")return;e[a][o]=n}return}if(typeof a>"u")throw new Error("cant treat top level as a seq");a=a;let u=i[0];if(typeof e[a]>"u")if(typeof u=="string")e[a]={};else if(typeof u=="number")e[a]=[];else throw new Error(`can't go down this road ${e}.${a}.${u}`);if(e=e[a],typeof e=="string"){ce("ignoring patch to a block marker in a string",t,o);return}if(e==null||typeof e!="object"&&typeof e!="function")throw new TypeError(`invalid path ${JSON.stringify(t)}: ${String(a)} is ${e}`)}}function Le(e,r){for(let t=0;t<r.length;t++)e=e?e[r[t]]:void 0;return e}function Pe(e,r){let t=e.path.slice(0,-1),o=e.path[e.path.length-1];switch(e.action){case"mark":case"unmark":return ce(`skipping ${e.action} because it doesn't affect material reality`),[];case"inc":if(r)return[t,o,Le(r.patchInfo.after,e.path)];throw new Error(`can't apply ${e.action} without payload argument`);case"conflict":if(r)return[t,o,Le(r.patchInfo.after,e.path)];throw new Error(`can't apply ${e.action} without payload argument`);case"del":return typeof o=="string"?[t,o]:[t,[o,o+(e.length||1)]];case"insert":return[t,[o,o],Z(e.values)];case"splice":return[t,[o,o],[e.value]];case"put":return[t,o,Z(e.value)]}}function Q(e){return r=>{for(let t of e.patches)ze(r,...Pe(t,e))}}import{createMemo as ar}from"solid-js";import{onCleanup as rr}from"solid-js";import{createStore as or,produce as nr,reconcile as Ue}from"solid-js/store";var U=new WeakMap;function ee(e){if(rr(()=>{let i=U.get(e);i&&(i.refs--||i.cleanup())}),U.has(e)){let i=U.get(e);return i.refs++,i.store}let[r,t]=or(structuredClone(e.doc()));U.set(e,{refs:0,store:r,cleanup(){e.off("change",o),e.off("delete",n),U.delete(e)}});function o(i){if(i.scopeReplaced){t(Ue(i.doc??{}));return}t(nr(Q(i)))}function n(){t(Ue({}))}return e.on("change",o),e.on("delete",n),r}import{getOwner as fn,onCleanup as pn,createSignal as hn,untrack as mn,sharedConfig as gn,onMount as bn,DEV as vn,equalFn as wn}from"solid-js";import{isServer as yn}from"solid-js/web";var O=e=>typeof e=="function"&&!e.length?e():e;function te(e){return ar(()=>O(e)&&ee(O(e)))}import{createEffect as sr,createResource as lr,useContext as dr}from"solid-js";import{createContext as ir}from"solid-js";var re=ir(null);function N(e,r){let t=dr(re);if(!r?.repo&&!t)throw new Error("use outside <RepoContext> requires options.repo");let o=r?.repo||t;function n(){if(r?.["~skipInitialValue"])return;let u=O(e);if(u)return ur(o,u)}let[i,{mutate:a}]=lr(e,u=>o.find(u),{initialValue:n()});return sr(()=>{O(e)||a()}),i}function cr(e){return typeof e.query=="function"}function ur(e,r){if(cr(e)){let o=e.query(r).state();return o.status=="ready"?o.handle:void 0}let t=e.findWithProgress(r).peek();return t.state=="ready"?t.handle:void 0}function oe(e,r){let t=N(e,r);return[te(t),t]}import{onCleanup as Pn}from"solid-js";import{createSignal as Nn}from"solid-js";import{createEffect as Hn,onCleanup as qn}from"solid-js";import{createSignal as Jn}from"solid-js";import{useContext as Qn}from"solid-js";import{getType as gr}from"@inkandswitch/patchwork-filesystem";import{getRegistry as br,isLoadedPlugin as vr}from"@inkandswitch/patchwork-plugins";import{createEffect as wr,createMemo as ne,createSignal as pe,onCleanup as xr,onMount as Be,Show as Je}from"solid-js";var qe=We("<span class=threepane__title-text>"),mr=We("<input class=threepane__title-input type=text>");function Ve(e){let r,[t,o]=pe();return Be(()=>{o(r.closest("repo-provider")?.repo)}),fe(Je,{get when(){return t()},get fallback(){return(()=>{var n=qe(),i=r;return typeof i=="function"?He(i,n):r=n,n})()},children:n=>fe(yr,{get docUrl(){return e.docUrl},get repo(){return n()}})})}function yr(e){let[r,t]=oe(()=>e.docUrl(),{repo:e.repo}),o=br("patchwork:datatype"),[n,i]=pe(0);Be(()=>{let l=o.on("changed",()=>i(d=>d+1));xr(l)});let a=ne(()=>{let l=r();return l?gr(l):void 0});wr(()=>{let l=a();l&&o.load(l)});let u=ne(()=>{n();let l=a();if(!l)return;let d=o.get(l);return d&&vr(d)?d:void 0}),h=ne(()=>{let l=r(),d=u();if(!(!l||!d))return d.module.getTitle(l)}),p=ne(()=>!!t()&&typeof u()?.module.setTitle=="function"),[s,c]=pe(!1),f;function g(){p()&&(c(!0),queueMicrotask(()=>{f?.focus(),f?.select()}))}function v(l){if(!s()||(c(!1),!l))return;let d=f?.value.trim();if(!d||d===h())return;let m=t(),w=u()?.module.setTitle;!m||!w||m.change(y=>{w(y,d);let D=y["@patchwork"];D&&(D.title=d)})}function b(l){let d=e.docUrl(),m=l.dataTransfer;if(!d||!m)return;let w=h()??"Untitled",y=a();m.effectAllowed="copyLink",m.setData("text/x-patchwork-dnd",JSON.stringify({source:"threepane",items:[{url:d,name:w,type:y}]})),m.setData("text/x-patchwork-urls",JSON.stringify([d])),m.setData("text/uri-list",`${location.origin}${location.pathname}#doc=${d}\r
2
- `),m.setData("text/plain",d)}return fe(Je,{get when(){return s()},get fallback(){return(()=>{var l=qe();return l.$$click=g,l.addEventListener("dragstart",b),Ne(l,"draggable",!0),hr(l,()=>h()??"Untitled"),je(d=>{var m=!!p(),w=p()?"Rename":void 0;return m!==d.e&&l.classList.toggle("threepane__title-text--editable",d.e=m),w!==d.t&&Ne(l,"title",d.t=w),d},{e:void 0,t:void 0}),l})()},get children(){var l=mr();l.$$keydown=m=>{m.key==="Enter"?(m.preventDefault(),v(!0)):m.key==="Escape"&&(m.preventDefault(),v(!1))},l.addEventListener("blur",()=>v(!0));var d=f;return typeof d=="function"?He(d,l):f=l,je(()=>l.value=h()??""),l}})}pr(["keydown","click"]);import{template as H}from"solid-js/web";import{delegateEvents as Or}from"solid-js/web";import{getOwner as Lr}from"solid-js/web";import{insert as W}from"solid-js/web";import{createComponent as L}from"solid-js/web";import{Show as he}from"solid-js";import{template as Ge}from"solid-js/web";import{delegateEvents as _r}from"solid-js/web";import{setStyleProperty as Cr}from"solid-js/web";import{insert as kr}from"solid-js/web";import{setAttribute as ae}from"solid-js/web";import{effect as Ye}from"solid-js/web";import{memo as j}from"solid-js/web";import{createComponent as Xe}from"solid-js/web";import{Show as Ke}from"solid-js";var Sr=Ge('<button class="sidebar-toggle sidebar-toggle--resizable">'),$r=Ge("<div class=sidebar>");function Ze(e){let r=()=>`${e.isCollapsed()?0:e.width()}px`,t=()=>e.canExpand?.()??!0,o=()=>Xe(Ke,{get when(){return!e.isCollapsed()},get children(){return e.children}}),n=()=>Xe(Ke,{get when(){return!e.isCollapsed()||t()},get children(){var i=Sr();return i.$$mousedown=a=>e.onMouseDown(a),i.$$click=a=>e.onToggleClick(a),Ye(a=>{var u=e.isCollapsed()?"Expand sidebar":"Toggle or resize sidebar",h=e.isCollapsed()?"Click to expand, drag to resize":"Click to toggle, drag to resize";return u!==a.e&&ae(i,"aria-label",a.e=u),h!==a.t&&ae(i,"title",a.t=h),a},{e:void 0,t:void 0}),i}});return(()=>{var i=$r();return kr(i,(()=>{var a=j(()=>e.side==="left");return()=>a()?[j(o),j(n)]:[j(n),j(o)]})()),Ye(a=>{var u=e.side,h=e.isCollapsed()?"":void 0,p=r();return u!==a.e&&ae(i,"data-side",a.e=u),h!==a.t&&ae(i,"data-collapsed",a.t=h),p!==a.a&&Cr(i,"width",a.a=p),a},{e:void 0,t:void 0,a:void 0}),i})()}_r(["click","mousedown"]);import{template as et}from"solid-js/web";import{delegateEvents as Er}from"solid-js/web";import{setAttribute as Tr}from"solid-js/web";import{effect as Dr}from"solid-js/web";import{insert as Qe}from"solid-js/web";import{createComponent as Ar}from"solid-js/web";import{For as Rr}from"solid-js";var Ir=et("<div role=tablist class=context-sidebar__tablist>"),Fr=et("<button type=button role=tab class=context-sidebar__tab>");function tt(e){let r=()=>{let t=e.items().map(n=>n.id),o=e.selectedToolId();return o&&t.includes(o)?o:t[0]};return(()=>{var t=Ir();return Qe(t,Ar(Rr,{get each(){return e.items()},children:o=>(()=>{var n=Fr();return n.$$click=()=>e.setSelectedToolId(o.id),Qe(n,()=>o.name),Dr(()=>Tr(n,"data-active",r()===o.id?"":void 0)),n})()})),t})()}Er(["click"]);var Mr=H('<div class=context-sidebar__tabs><button type=button class=context-sidebar__close title="Hide context sidebar"aria-label="Hide context sidebar">'),zr=H("<div class=context-sidebar__content>"),Pr=H("<div class=context-sidebar>"),Ur=H("<patchwork-view>",!0,!1,!1),Nr=H('<svg xmlns=http://www.w3.org/2000/svg width=18 height=18 viewBox="0 0 24 24"fill=none stroke=var(--studio-chrome-line) stroke-width=1.75 stroke-linecap=round stroke-linejoin=round><rect width=18 height=18 x=3 y=3 rx=2></rect><path d="M15 3v18">');function rt(e){let r=A("context-tool"),t=()=>{let o=r().map(i=>i.id),n=e.selectedToolId();return n&&o.includes(n)?n:o[0]};return L(Ze,{side:"right",get isCollapsed(){return e.isCollapsed},get width(){return e.width},get onMouseDown(){return e.onMouseDown},get onToggleClick(){return e.onToggleClick},get canExpand(){return e.canExpand},get children(){var o=Pr();return W(o,L(he,{get when(){return r().length},get children(){var n=Mr(),i=n.firstChild;return W(n,L(tt,{items:r,get selectedToolId(){return e.selectedToolId},get setSelectedToolId(){return e.setSelectedToolId}}),i),i.$$click=()=>e.onCollapse(),W(i,L(me,{})),n}}),null),W(o,L(he,{get when(){return!e.isCollapsed()},get children(){var n=zr();return W(n,L(he,{get when(){return t()},keyed:!0,children:i=>(()=>{var a=Ur();return a.component=i,a._$owner=Lr(),a})()})),n}}),null),o}})}function me(){return Nr()}Or(["click"]);import{template as jr}from"solid-js/web";import{effect as ot}from"solid-js/web";import{getOwner as nt}from"solid-js/web";import{createComponent as Wr}from"solid-js/web";import{memo as Hr}from"solid-js/web";import{Show as qr}from"solid-js";var at=jr("<patchwork-view>",!0,!1,!1),ge=e=>Array.isArray(e)?String(e[0]):String(e);function di(e){let r=new Set;return e.filter(t=>{let o=ge(t);return r.has(o)?!1:(r.add(o),!0)})}function ci(e){return Wr(qr,{get when(){return Hr(()=>!!Array.isArray(e.slot))()?e.slot:!1},get fallback(){return(()=>{var r=at();return r._$owner=nt(),ot(()=>r.component=String(e.slot)),r})()},children:r=>(()=>{var t=at();return t._$owner=nt(),ot(o=>{var n=r()[1],i=r()[0];return n!==o.e&&(t.docUrl=o.e=n),i!==o.t&&(t.toolId=o.t=i),o},{e:void 0,t:void 0}),t})()})}var Yr=q("<div class=threepane__title>"),Xr=q("<div class=threepane__doctitle-tools>"),Kr=q('<button type=button class=frame__sidebar-toggle title="Show context sidebar"aria-label="Show context sidebar">'),Gr=q("<div class=frame__topbar><div class=threepane__spacer>"),Zr=q("<patchwork-view>",!0,!1,!1);function lt(e){let r=()=>e.toolSlots()??[];return(()=>{var t=Gr(),o=t.firstChild;return M(t,z(be,{get when(){return e.docUrl()},get children(){var n=Yr();return M(n,z(Ve,{get docUrl(){return e.docUrl}})),n}}),o),M(t,z(be,{get when(){return st(()=>!!e.docUrl())()&&r().length},get children(){var n=Xr();return M(n,z(Qr,{get each(){return r()},children:i=>(()=>{var a=Zr();return a._$owner=Jr(),it(u=>{var h=ge(i),p=e.docUrl();return h!==u.e&&(a.toolId=u.e=h),p!==u.t&&(a.docUrl=u.t=p),u},{e:void 0,t:void 0}),a})()})),n}}),null),M(t,z(be,{get when(){return st(()=>!!e.hasContext())()&&e.isRightCollapsed()},get children(){var n=Kr();return n.$$click=()=>e.onToggleRight(),Vr(n,"aria-pressed",!1),M(n,z(me,{})),n}}),null),it(()=>t.classList.toggle("frame__topbar--left-collapsed",!!e.isLeftCollapsed())),t})()}Br(["click"]);import{template as ve}from"solid-js/web";import{effect as eo}from"solid-js/web";import{getOwner as to}from"solid-js/web";import{insert as dt}from"solid-js/web";import{memo as ro}from"solid-js/web";import{createComponent as oo}from"solid-js/web";import{use as no}from"solid-js/web";import{Show as lo}from"solid-js";var ao=ve("<div class=document-view>"),io=ve("<patchwork-view>",!0,!1,!1),so=ve("<div class=placeholder>Select a document in the sidebar");function ct({viewKey:e,selectedDocUrl:r,toolId:t,ref:o}){return(()=>{var n=ao(),i=o;return typeof i=="function"?no(i,n):o=n,dt(n,oo(lo,{get when(){return e()},keyed:!0,children:a=>(()=>{var u=io();return u._$owner=to(),eo(h=>{var p=r(),s=t();return p!==h.e&&(u.docUrl=h.e=p),s!==h.t&&(u.toolId=h.t=s),h},{e:void 0,t:void 0}),u})()}),null),dt(n,(()=>{var a=ro(()=>!r());return()=>a()&&so()})(),null),n})()}var co=V("<patchwork-view component=patchwork-draft-state-provider>",!0,!1,!1),uo=V("<patchwork-view component=patchwork-draft-overlay-provider>",!0,!1,!1),fo=V("<div class=frame__main-column><div class=frame__doc-column><div class=main-area>"),po=V("<patchwork-view component=patchwork-comments-provider><patchwork-view component=patchwork-focus-provider>",!0,!1,!1),ho=V("<patchwork-view>",!0,!1,!1);function pt(e){let[r,t]=k(e.initialRightCollapsed()),[o,n]=k(e.initialRightWidth());ut(ft(r,f=>{try{localStorage.setItem(C.rightCollapsed,String(f))}catch{}},{defer:!0})),ut(ft(o,f=>{try{localStorage.setItem(C.rightWidth,String(f))}catch{}},{defer:!0}));let i=de("right",{isCollapsed:r,setCollapsed:t,setWidth:n});go(()=>{let f=()=>t(!0);window.addEventListener(Y,f),mo(()=>window.removeEventListener(Y,f))});let[a,u]=le(k(),{name:C.contextToolId}),[h,p]=k(),s=$("patchwork-draft-state-provider",h),c=()=>s()?h():void 0;return _(P,{get when(){return e.selectedDocUrl()},keyed:!0,children:f=>(()=>{var g=co();return J(p,g),g.docUrl=f,g._$owner=B(),T(g,_(P,{get when(){return c()},children:v=>_(bo,{get host(){return v()},get setMainDocElement(){return e.setMainDocElement},get selectedDocUrl(){return e.selectedDocUrl},get selectedToolId(){return e.selectedToolId},get doctitleSlots(){return e.doctitleSlots},get isLeftCollapsed(){return e.isLeftCollapsed},isRightSidebarCollapsed:r,setIsRightSidebarCollapsed:t,rightSidebarWidth:o,get handleMouseDown(){return i.handleMouseDown},get handleToggleClick(){return i.handleToggleClick},selectedContextToolId:a,setSelectedContextToolId:u})})),g})()})}function bo(e){let r=A("context-tool"),t=()=>r().length>0,o=we(()=>e.selectedDocUrl()),[n,i]=k(),a=$("patchwork-draft-overlay-provider",n),[u,h]=k(),p=$("patchwork-comments-provider",u),[s,c]=k(),f=$("patchwork-focus-provider",s),g=we(()=>a()&&p()&&f()),v=A("document-provider"),b=we(()=>v().map(l=>l.id),[],{equals:(l,d)=>l.length===d.length&&l.every((m,w)=>m===d[w])});return(()=>{var l=uo();return J(i,l),l._$owner=B(),T(l,_(ht,{get ids(){return b()},render:()=>(()=>{var d=po(),m=d.firstChild;return J(h,d),d._$owner=B(),J(c,m),m._$owner=B(),T(m,_(P,{get when(){return g()},get children(){var w=fo(),y=w.firstChild,D=y.firstChild;return T(y,_(lt,{get docUrl(){return e.selectedDocUrl},get toolSlots(){return e.doctitleSlots},get isLeftCollapsed(){return e.isLeftCollapsed},hasContext:t,get isRightCollapsed(){return e.isRightSidebarCollapsed},onToggleRight:()=>e.setIsRightSidebarCollapsed(S=>!S)}),D),T(D,_(ct,{viewKey:o,get selectedDocUrl(){return e.selectedDocUrl},get toolId(){return e.selectedToolId},ref:S=>e.setMainDocElement?.(S)})),T(w,_(P,{get when(){return t()},get children(){return _(rt,{get selectedToolId(){return e.selectedContextToolId},get setSelectedToolId(){return e.setSelectedContextToolId},get isCollapsed(){return e.isRightSidebarCollapsed},get width(){return e.rightSidebarWidth},get onMouseDown(){return e.handleMouseDown},get onToggleClick(){return e.handleToggleClick},onCollapse:()=>e.setIsRightSidebarCollapsed(!0)})}}),null),w}})),d})()})),l})()}function ht(e){return _(P,{get when(){return e.ids[0]},keyed:!0,get fallback(){return e.render()},children:r=>{let[t,o]=k(),n=$(r,t);return(()=>{var i=ho();return J(o,i),i.component=r,i._$owner=B(),T(i,_(P,{get when(){return n()},get children(){return _(ht,{get ids(){return e.ids.slice(1)},get render(){return e.render}})}})),i})()}})}var ie=`:root,
1
+ import{a as se,b as Ct}from"./chunk-FW4363Y4.js";var Ae=se((sn,De)=>{var I=1e3,F=I*60,R=F*60,E=R*24,qt=E*7,Bt=E*365.25;De.exports=function(e,r){r=r||{};var t=typeof e;if(t==="string"&&e.length>0)return Jt(e);if(t==="number"&&isFinite(e))return r.long?Yt(e):Vt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Jt(e){if(e=String(e),!(e.length>100)){var r=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(r){var t=parseFloat(r[1]),o=(r[2]||"ms").toLowerCase();switch(o){case"years":case"year":case"yrs":case"yr":case"y":return t*Bt;case"weeks":case"week":case"w":return t*qt;case"days":case"day":case"d":return t*E;case"hours":case"hour":case"hrs":case"hr":case"h":return t*R;case"minutes":case"minute":case"mins":case"min":case"m":return t*F;case"seconds":case"second":case"secs":case"sec":case"s":return t*I;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function Vt(e){var r=Math.abs(e);return r>=E?Math.round(e/E)+"d":r>=R?Math.round(e/R)+"h":r>=F?Math.round(e/F)+"m":r>=I?Math.round(e/I)+"s":e+"ms"}function Yt(e){var r=Math.abs(e);return r>=E?X(e,r,E,"day"):r>=R?X(e,r,R,"hour"):r>=F?X(e,r,F,"minute"):r>=I?X(e,r,I,"second"):e+" ms"}function X(e,r,t,o){var n=r>=t*1.5;return Math.round(e/t)+" "+o+(n?"s":"")}});var Fe=se((ln,Ie)=>{function Xt(e){t.debug=t,t.default=t,t.coerce=m,t.disable=i,t.enable=n,t.enabled=f,t.humanize=Ae(),t.destroy=p,Object.keys(e).forEach(l=>{t[l]=e[l]}),t.names=[],t.skips=[],t.formatters={};function r(l){let s=0;for(let u=0;u<l.length;u++)s=(s<<5)-s+l.charCodeAt(u),s|=0;return t.colors[Math.abs(s)%t.colors.length]}t.selectColor=r;function t(l){let s,u=null,h,b;function v(...d){if(!v.enabled)return;let c=v,g=Number(new Date),w=g-(s||g);c.diff=w,c.prev=s,c.curr=g,s=g,d[0]=t.coerce(d[0]),typeof d[0]!="string"&&d.unshift("%O");let y=0;d[0]=d[0].replace(/%([a-zA-Z%])/g,(S,yt)=>{if(S==="%%")return"%";y++;let we=t.formatters[yt];if(typeof we=="function"){let _t=d[y];S=we.call(c,_t),d.splice(y,1),y--}return S}),t.formatArgs.call(c,d),(c.log||t.log).apply(c,d)}return v.namespace=l,v.useColors=t.useColors(),v.color=t.selectColor(l),v.extend=o,v.destroy=t.destroy,Object.defineProperty(v,"enabled",{enumerable:!0,configurable:!1,get:()=>u!==null?u:(h!==t.namespaces&&(h=t.namespaces,b=t.enabled(l)),b),set:d=>{u=d}}),typeof t.init=="function"&&t.init(v),v}function o(l,s){let u=t(this.namespace+(typeof s>"u"?":":s)+l);return u.log=this.log,u}function n(l){t.save(l),t.namespaces=l,t.names=[],t.skips=[];let s=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let u of s)u[0]==="-"?t.skips.push(u.slice(1)):t.names.push(u)}function a(l,s){let u=0,h=0,b=-1,v=0;for(;u<l.length;)if(h<s.length&&(s[h]===l[u]||s[h]==="*"))s[h]==="*"?(b=h,v=u,h++):(u++,h++);else if(b!==-1)h=b+1,v++,u=v;else return!1;for(;h<s.length&&s[h]==="*";)h++;return h===s.length}function i(){let l=[...t.names,...t.skips.map(s=>"-"+s)].join(",");return t.enable(""),l}function f(l){for(let s of t.skips)if(a(l,s))return!1;for(let s of t.names)if(a(l,s))return!0;return!1}function m(l){return l instanceof Error?l.stack||l.message:l}function p(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return t.enable(t.load()),t}Ie.exports=Xt});var Re=se((x,K)=>{x.formatArgs=Gt;x.save=Zt;x.load=Qt;x.useColors=Kt;x.storage=er();x.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();x.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function Kt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let e;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function Gt(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+K.exports.humanize(this.diff),!this.useColors)return;let r="color: "+this.color;e.splice(1,0,r,"color: inherit");let t=0,o=0;e[0].replace(/%[a-zA-Z%]/g,n=>{n!=="%%"&&(t++,n==="%c"&&(o=t))}),e.splice(o,0,r)}x.log=console.debug||console.log||(()=>{});function Zt(e){try{e?x.storage.setItem("debug",e):x.storage.removeItem("debug")}catch{}}function Qt(){let e;try{e=x.storage.getItem("debug")||x.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function er(){try{return localStorage}catch{}}K.exports=Fe()(x);var{formatters:tr}=K.exports;tr.j=function(e){try{return JSON.stringify(e)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}});import{template as wt}from"solid-js/web";import{createComponent as ko}from"solid-js/web";import{setAttribute as So}from"solid-js/web";import{effect as $o}from"solid-js/web";import{insert as xt}from"solid-js/web";import{getOwner as Eo}from"solid-js/web";import{createMemo as bt}from"solid-js";import{createStore as Ao,reconcile as Io}from"solid-js/store";import{render as Fo}from"solid-js/web";import{template as J}from"solid-js/web";import{insert as T}from"solid-js/web";import{getOwner as q}from"solid-js/web";import{use as B}from"solid-js/web";import{createComponent as _}from"solid-js/web";import{createUniqueId as kt,untrack as xe}from"solid-js";import{isServer as St,isDev as ye}from"solid-js/web";import{reconcile as $t}from"solid-js/store";function le(e,r={}){let t=r.storage||globalThis.localStorage,o=r.name||`storage-${kt()}`;if(!t)return Object.assign(e,{2:null});let n=r.storageOptions,a=r.serialize||JSON.stringify.bind(JSON),i=r.deserialize||JSON.parse.bind(JSON),f=t.getItem(o,n),m=typeof e[0]=="function"?l=>{try{let s=i(l);e[1](()=>s)}catch(s){ye&&console.warn(s)}}:l=>{try{let s=i(l);e[1]($t(s))}catch(s){ye&&console.warn(s)}},p=!0;if(f instanceof Promise?f.then(l=>p&&l&&m(l)):f&&m(f),typeof r.sync?.[0]=="function"){let l=typeof e[0]=="function"?e[0]:()=>e[0];r.sync[0](s=>{s.key!==o||!St&&(s.url||globalThis.location.href)!==globalThis.location.href||s.newValue===a(xe(l))||m(s.newValue)})}return Object.assign([],e,{1:typeof e[0]=="function"?l=>{let s=e[1](l),u=l!=null?a(s):l;return r.sync?.[1](o,u),u!=null?t.setItem(o,u,n):t.removeItem(o,n),p=!1,s}:(...l)=>{e[1](...l);let s=xe(()=>a(e[0]));r.sync?.[1](o,s),t.setItem(o,s,n),p=!1},2:f})}import{createEffect as ft,createMemo as ve,createSignal as k,on as ht,onCleanup as xo,onMount as yo,Show as z}from"solid-js";import{createEffect as _e,createSignal as Ce,on as ke}from"solid-js";var C={leftCollapsed:"patchwork:leftSidebarCollapsed",rightCollapsed:"patchwork:rightSidebarCollapsed",leftWidth:"patchwork:leftSidebarWidth",rightWidth:"patchwork:rightSidebarWidth",contextToolId:"patchwork:contextSidebarToolId"},V="patchwork:collapse-context-sidebar",Y=400;function Se(e,r){let t=localStorage.getItem(e);return t?parseInt(t,10):r}function $e(e){return localStorage.getItem(e)==="true"}function Et(){let[e,r]=Ce($e(C.leftCollapsed)),[t,o]=Ce(Se(C.leftWidth,Y));return _e(ke(e,n=>{localStorage.setItem(C.leftCollapsed,String(n))})),_e(ke(t,n=>{localStorage.setItem(C.leftWidth,String(n))})),{isSidebarCollapsed:e,setIsSidebarCollapsed:r,leftSidebarWidth:t,setLeftSidebarWidth:o}}import{onCleanup as Tt,onMount as Dt}from"solid-js";var Ee=180,At=720,It=120,Te=3;function de(e,{isCollapsed:r,setCollapsed:t,setWidth:o}){let n=!1,a=null,i=!1,f=null,m=c=>{if(c<It){r()||t(!0),f=null;return}r()&&t(!1);let g=Math.min(At,c);o(g),f=g},p=()=>{r()||f!==null&&f<Ee&&o(Ee)},l=null,s=()=>{document.body.setAttribute("data-sidebar-resizing",e),l=document.createElement("div"),l.style.cssText="position:fixed;inset:0;z-index:2147483647;cursor:col-resize;",document.body.appendChild(l)},u=()=>{n=!1,a=null,document.body.style.userSelect="",document.body.removeAttribute("data-sidebar-resizing"),l?.remove(),l=null},h=c=>{c.preventDefault(),a={x:c.clientX,y:c.clientY},i=!1,f=null,n=!0,document.body.style.userSelect="none"},b=()=>{let c=n,g=i;u(),c&&g&&p()},v=c=>{if(!n||!a)return;let g=Math.abs(c.clientX-a.x),w=Math.abs(c.clientY-a.y);!i&&(g>Te||w>Te)&&(i=!0,s()),m(e==="left"?c.clientX:window.innerWidth-c.clientX)},d=c=>{if(i){c.preventDefault(),c.stopPropagation(),i=!1;return}t(g=>!g)};return Dt(()=>{document.addEventListener("mousemove",v),document.addEventListener("mouseup",b),Tt(()=>{document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",b),n&&u()})}),{handleMouseDown:h,handleToggleClick:d}}import{createEffect as Ft,createSignal as Rt,onCleanup as Ot}from"solid-js";var $=(e,r)=>{let[t,o]=Rt(!1);return Ft(()=>{let n=r();if(!n)return;o(!1);let a=i=>{i.detail?.componentId===e&&o(!0)};n.addEventListener("patchwork:mounted",a),Ot(()=>n.removeEventListener("patchwork:mounted",a))}),t};import{createEffect as Mt,createSignal as Lt,onCleanup as zt}from"solid-js";var Pt=5e3,Ut=(e,r)=>{let[t,o]=Lt(!1);return Mt(()=>{if(t())return;let n=e(),a=r();if(!n||!a)return;let i=m=>{let p=m.detail;p?.url&&p.url!==a||o(!0)};n.addEventListener("patchwork:mounted",i),n.addEventListener("patchwork:no-tool",i);let f=setTimeout(()=>o(!0),Pt);zt(()=>{n.removeEventListener("patchwork:mounted",i),n.removeEventListener("patchwork:no-tool",i),clearTimeout(f)})}),t};import{getRegistry as Nt}from"@inkandswitch/patchwork-plugins";import{createMemo as jt,createSignal as Wt,onCleanup as Ht}from"solid-js";function A(e){let r=Nt("patchwork:component"),[t,o]=Wt(0),n=r.on("changed",()=>o(a=>a+1));return Ht(n),jt(()=>(t(),(r.all?.()??[]).filter(a=>(a.tags??[]).includes(e)).map(a=>({id:a.id,name:a.name||a.id,icon:a.icon})).sort((a,i)=>a.name.localeCompare(i.name))))}import{template as H}from"solid-js/web";import{delegateEvents as Kr}from"solid-js/web";import{getOwner as Gr}from"solid-js/web";import{effect as st}from"solid-js/web";import{setAttribute as Zr}from"solid-js/web";import{memo as lt}from"solid-js/web";import{insert as M}from"solid-js/web";import{createComponent as L}from"solid-js/web";import{For as no,Show as ge}from"solid-js";import{template as je}from"solid-js/web";import{delegateEvents as pr}from"solid-js/web";import{insert as mr}from"solid-js/web";import"solid-js/web";import{setAttribute as Ue}from"solid-js/web";import{effect as Ne}from"solid-js/web";import{use as We}from"solid-js/web";import{createComponent as fe}from"solid-js/web";var Me=Ct(Re(),1),ce=(0,Me.default)("cabbages");function ue(e){return typeof e=="object"&&e!=null&&Object.getPrototypeOf(e)==Object.prototype}function G(e){if(Array.isArray(e))return e.map(G);if(ue(e)){let r={};for(let t of Object.keys(e))r[t]=G(e[t]);return r}return e instanceof Date?new Date(e):ArrayBuffer.isView(e)?e.slice():e}var rr="\uFFFC";function Le(e,...r){if(r.length==0){ce("empty patch");return}let[t,o,n]=r,a=[...t];for(;;){let i=a.shift();if(!a.length){let m=Array.isArray(o);if(ue(e)&&m&&typeof i>"u"&&typeof o[0]=="string"){delete e[o[0]];return}if(m||typeof o=="number"){if(typeof i>"u")throw new Error("cant treat top level as a seq");i=i;let[p,l]=Array.isArray(o)?o:[o,o+1],s=Array.isArray(o)&&o.length==0;if(!s&&(p==null||l==null))throw new RangeError("it's all or nothing, no half measures");let u=typeof n>"u",h=p===l&&!u,b=s&&!u,v=!h&&!u&&!b;if(typeof e[i]>"u"){if(typeof e=="string")return;typeof n=="string"?e[i]="":e[i]=[]}let d=e[i];if(Array.isArray(d)){if(b){Array.isArray(n)?d.push(...n):d.push(n);return}if(h||v){Array.isArray(n)?d.splice(p,l-p,...n):d.splice(p,l-p,n);return}if(u){d.splice(p,l-p);return}throw new Error("i don't know what happened")}if(typeof d=="string"){if(b){e[i]=d+n;return}if(v||h){e[i]=d.slice(0,p)+(typeof n=="string"?n:n.map(c=>typeof c=="string"?c:rr).join(""))+d.slice(l);return}if(u){e[i]=d.slice(0,p)+d.slice(l);return}throw new Error("i don't know what happened")}if(ue(d)&&m&&typeof o[0]=="string"){delete d[o[0]];return}throw new Error("not implemented")}if(typeof i>"u"){if(typeof o!="string")throw new Error(`can't index top-level map with ${o}`);typeof n>"u"?delete e[o]:e[o]=n;return}if(typeof e[i]>"u"&&(e[i]={}),m){let[p,l]=o;p!=null&&l!=null&&(typeof n>"u"&&p!=null&&l!=null?delete e[i][p||l]:e[i][p||l]=n)}else if(typeof n>"u")delete e[i][o];else{if(typeof e[i]=="string")return;e[i][o]=n}return}if(typeof i>"u")throw new Error("cant treat top level as a seq");i=i;let f=a[0];if(typeof e[i]>"u")if(typeof f=="string")e[i]={};else if(typeof f=="number")e[i]=[];else throw new Error(`can't go down this road ${e}.${i}.${f}`);if(e=e[i],typeof e=="string"){ce("ignoring patch to a block marker in a string",t,o);return}if(e==null||typeof e!="object"&&typeof e!="function")throw new TypeError(`invalid path ${JSON.stringify(t)}: ${String(i)} is ${e}`)}}function Oe(e,r){for(let t=0;t<r.length;t++)e=e?e[r[t]]:void 0;return e}function ze(e,r){let t=e.path.slice(0,-1),o=e.path[e.path.length-1];switch(e.action){case"mark":case"unmark":return ce(`skipping ${e.action} because it doesn't affect material reality`),[];case"inc":if(r)return[t,o,Oe(r.patchInfo.after,e.path)];throw new Error(`can't apply ${e.action} without payload argument`);case"conflict":if(r)return[t,o,Oe(r.patchInfo.after,e.path)];throw new Error(`can't apply ${e.action} without payload argument`);case"del":return typeof o=="string"?[t,o]:[t,[o,o+(e.length||1)]];case"insert":return[t,[o,o],G(e.values)];case"splice":return[t,[o,o],[e.value]];case"put":return[t,o,G(e.value)]}}function Z(e){return r=>{for(let t of e.patches)Le(r,...ze(t,e))}}import{createMemo as ir}from"solid-js";import{onCleanup as or}from"solid-js";import{createStore as nr,produce as ar,reconcile as Pe}from"solid-js/store";var P=new WeakMap;function Q(e){if(or(()=>{let a=P.get(e);a&&(a.refs--||a.cleanup())}),P.has(e)){let a=P.get(e);return a.refs++,a.store}let[r,t]=nr(structuredClone(e.doc()));P.set(e,{refs:0,store:r,cleanup(){e.off("change",o),e.off("delete",n),P.delete(e)}});function o(a){if(a.scopeReplaced){t(Pe(a.doc??{}));return}t(ar(Z(a)))}function n(){t(Pe({}))}return e.on("change",o),e.on("delete",n),r}import{getOwner as bn,onCleanup as vn,createSignal as wn,untrack as xn,sharedConfig as yn,onMount as _n,DEV as Cn,equalFn as kn}from"solid-js";import{isServer as $n}from"solid-js/web";var O=e=>typeof e=="function"&&!e.length?e():e;function ee(e){return ir(()=>O(e)&&Q(O(e)))}import{createEffect as lr,createResource as dr,useContext as cr}from"solid-js";import{createContext as sr}from"solid-js";var te=sr(null);function U(e,r){let t=cr(te);if(!r?.repo&&!t)throw new Error("use outside <RepoContext> requires options.repo");let o=r?.repo||t;function n(){if(r?.["~skipInitialValue"])return;let f=O(e);if(f)return fr(o,f)}let[a,{mutate:i}]=dr(e,f=>o.find(f),{initialValue:n()});return lr(()=>{O(e)||i()}),a}function ur(e){return typeof e.query=="function"}function fr(e,r){if(ur(e)){let o=e.query(r).state();return o.status=="ready"?o.handle:void 0}let t=e.findWithProgress(r).peek();return t.state=="ready"?t.handle:void 0}function re(e,r){let t=U(e,r);return[ee(t),t]}import{onCleanup as Hn}from"solid-js";import{createSignal as Bn}from"solid-js";import{createEffect as Yn,onCleanup as Xn}from"solid-js";import{createSignal as Gn}from"solid-js";import{useContext as na}from"solid-js";import{getType as br}from"@inkandswitch/patchwork-filesystem";import{getRegistry as vr,isLoadedPlugin as wr}from"@inkandswitch/patchwork-plugins";import{createEffect as xr,createMemo as oe,createSignal as he,onCleanup as yr,onMount as qe,Show as Be}from"solid-js";var He=je("<span class=threepane__title-text>"),gr=je("<input class=threepane__title-input type=text>");function Je(e){let r,[t,o]=he();return qe(()=>{o(r.closest("repo-provider")?.repo)}),fe(Be,{get when(){return t()},get fallback(){return(()=>{var n=He(),a=r;return typeof a=="function"?We(a,n):r=n,n})()},children:n=>fe(_r,{get docUrl(){return e.docUrl},get repo(){return n()}})})}function _r(e){let[r,t]=re(()=>e.docUrl(),{repo:e.repo}),o=vr("patchwork:datatype"),[n,a]=he(0);qe(()=>{let d=o.on("changed",()=>a(c=>c+1));yr(d)});let i=oe(()=>{let d=r();return d?br(d):void 0});xr(()=>{let d=i();d&&o.load(d)});let f=oe(()=>{n();let d=i();if(!d)return;let c=o.get(d);return c&&wr(c)?c:void 0}),m=oe(()=>{let d=r(),c=f();if(!(!d||!c))return c.module.getTitle(d)}),p=oe(()=>!!t()&&typeof f()?.module.setTitle=="function"),[l,s]=he(!1),u;function h(){p()&&(s(!0),queueMicrotask(()=>{u?.focus(),u?.select()}))}function b(d){if(!l()||(s(!1),!d))return;let c=u?.value.trim();if(!c||c===m())return;let g=t(),w=f()?.module.setTitle;!g||!w||g.change(y=>{w(y,c);let D=y["@patchwork"];D&&(D.title=c)})}function v(d){let c=e.docUrl(),g=d.dataTransfer;if(!c||!g)return;let w=m()??"Untitled",y=i();g.effectAllowed="copyLink",g.setData("text/x-patchwork-dnd",JSON.stringify({source:"threepane",items:[{url:c,name:w,type:y}]})),g.setData("text/x-patchwork-urls",JSON.stringify([c])),g.setData("text/uri-list",`${location.origin}${location.pathname}#doc=${c}\r
2
+ `),g.setData("text/plain",c)}return fe(Be,{get when(){return l()},get fallback(){return(()=>{var d=He();return d.$$click=h,d.addEventListener("dragstart",v),Ue(d,"draggable",!0),mr(d,()=>m()??"Untitled"),Ne(c=>{var g=!!p(),w=p()?"Rename":void 0;return g!==c.e&&d.classList.toggle("threepane__title-text--editable",c.e=g),w!==c.t&&Ue(d,"title",c.t=w),c},{e:void 0,t:void 0}),d})()},get children(){var d=gr();d.$$keydown=g=>{g.key==="Enter"?(g.preventDefault(),b(!0)):g.key==="Escape"&&(g.preventDefault(),b(!1))},d.addEventListener("blur",()=>b(!0));var c=u;return typeof c=="function"?We(c,d):u=d,Ne(()=>d.value=m()??""),d}})}pr(["keydown","click"]);import{template as ae}from"solid-js/web";import{delegateEvents as Nr}from"solid-js/web";import{getOwner as jr}from"solid-js/web";import{insert as ne}from"solid-js/web";import{createComponent as W}from"solid-js/web";import{Show as rt}from"solid-js";import{template as Ge}from"solid-js/web";import{delegateEvents as Cr}from"solid-js/web";import{setStyleProperty as kr}from"solid-js/web";import{insert as Sr}from"solid-js/web";import{use as $r}from"solid-js/web";import{setAttribute as N}from"solid-js/web";import{effect as Ve}from"solid-js/web";import{memo as j}from"solid-js/web";import{createComponent as Ye}from"solid-js/web";import{Show as Xe,createEffect as Dr,createSignal as Ke,on as Ar,onCleanup as Ir}from"solid-js";var Er=Ge('<button class="sidebar-toggle sidebar-toggle--resizable">'),Tr=Ge("<div class=sidebar>");function Fr(e){let r=parseFloat(getComputedStyle(e).transitionDuration);return Number.isFinite(r)?r*1e3:0}function Ze(e){let r=()=>`${e.isCollapsed()?0:e.width()}px`,t=()=>e.canExpand?.()??!0,o,[n,a]=Ke(!e.isCollapsed()),[i,f]=Ke(!1),m;Dr(Ar(e.isCollapsed,s=>{clearTimeout(m),s||a(!0);let u=o?Fr(o):0;if(u<5){f(!1),s&&a(!1);return}f(!0),m=setTimeout(()=>{f(!1),s&&a(!1)},u)},{defer:!0})),Ir(()=>clearTimeout(m));let p=()=>Ye(Xe,{get when(){return n()},get children(){return e.children}}),l=()=>Ye(Xe,{get when(){return!e.isCollapsed()||t()},get children(){var s=Er();return s.$$mousedown=u=>e.onMouseDown(u),s.$$click=u=>e.onToggleClick(u),Ve(u=>{var h=e.isCollapsed()?"Expand sidebar":"Toggle or resize sidebar",b=e.isCollapsed()?"Click to expand, drag to resize":"Click to toggle, drag to resize";return h!==u.e&&N(s,"aria-label",u.e=h),b!==u.t&&N(s,"title",u.t=b),u},{e:void 0,t:void 0}),s}});return(()=>{var s=Tr(),u=o;return typeof u=="function"?$r(u,s):o=s,Sr(s,(()=>{var h=j(()=>e.side==="left");return()=>h()?[j(p),j(l)]:[j(l),j(p)]})()),Ve(h=>{var b=e.side,v=i()?"":void 0,d=e.isCollapsed()?"":void 0,c=r();return b!==h.e&&N(s,"data-side",h.e=b),v!==h.t&&N(s,"data-moving",h.t=v),d!==h.a&&N(s,"data-collapsed",h.a=d),c!==h.o&&kr(s,"width",h.o=c),h},{e:void 0,t:void 0,a:void 0,o:void 0}),s})()}Cr(["click","mousedown"]);import{template as et}from"solid-js/web";import{delegateEvents as Rr}from"solid-js/web";import{setAttribute as Or}from"solid-js/web";import{effect as Mr}from"solid-js/web";import{insert as Qe}from"solid-js/web";import{createComponent as Lr}from"solid-js/web";import{For as Ur}from"solid-js";var zr=et("<div role=tablist class=context-sidebar__tablist>"),Pr=et("<button type=button role=tab class=context-sidebar__tab>");function tt(e){let r=()=>{let t=e.items().map(n=>n.id),o=e.selectedToolId();return o&&t.includes(o)?o:t[0]};return(()=>{var t=zr();return Qe(t,Lr(Ur,{get each(){return e.items()},children:o=>(()=>{var n=Pr();return n.$$click=()=>e.setSelectedToolId(o.id),Qe(n,()=>o.name),Mr(()=>Or(n,"data-active",r()===o.id?"":void 0)),n})()})),t})()}Rr(["click"]);var Wr=ae('<div class=context-sidebar__tabs><button type=button class=context-sidebar__close title="Hide context sidebar"aria-label="Hide context sidebar">'),Hr=ae("<div class=context-sidebar><div class=context-sidebar__content>"),qr=ae("<patchwork-view>",!0,!1,!1),Br=ae('<svg xmlns=http://www.w3.org/2000/svg width=18 height=18 viewBox="0 0 24 24"fill=none stroke=var(--studio-chrome-line) stroke-width=1.75 stroke-linecap=round stroke-linejoin=round><rect width=18 height=18 x=3 y=3 rx=2></rect><path d="M15 3v18">');function ot(e){let r=A("context-tool"),t=()=>{let o=r().map(a=>a.id),n=e.selectedToolId();return n&&o.includes(n)?n:o[0]};return W(Ze,{side:"right",get isCollapsed(){return e.isCollapsed},get width(){return e.width},get onMouseDown(){return e.onMouseDown},get onToggleClick(){return e.onToggleClick},get canExpand(){return e.canExpand},get children(){var o=Hr(),n=o.firstChild;return ne(o,W(rt,{get when(){return r().length},get children(){var a=Wr(),i=a.firstChild;return ne(a,W(tt,{items:r,get selectedToolId(){return e.selectedToolId},get setSelectedToolId(){return e.setSelectedToolId}}),i),i.$$click=()=>e.onCollapse(),ne(i,W(pe,{})),a}}),n),ne(n,W(rt,{get when(){return t()},keyed:!0,children:a=>(()=>{var i=qr();return i.component=a,i._$owner=jr(),i})()})),o}})}function pe(){return Br()}Nr(["click"]);import{template as Jr}from"solid-js/web";import{effect as nt}from"solid-js/web";import{getOwner as at}from"solid-js/web";import{createComponent as Vr}from"solid-js/web";import{memo as Yr}from"solid-js/web";import{Show as Xr}from"solid-js";var it=Jr("<patchwork-view>",!0,!1,!1),me=e=>Array.isArray(e)?String(e[0]):String(e);function mi(e){let r=new Set;return e.filter(t=>{let o=me(t);return r.has(o)?!1:(r.add(o),!0)})}function gi(e){return Vr(Xr,{get when(){return Yr(()=>!!Array.isArray(e.slot))()?e.slot:!1},get fallback(){return(()=>{var r=it();return r._$owner=at(),nt(()=>r.component=String(e.slot)),r})()},children:r=>(()=>{var t=it();return t._$owner=at(),nt(o=>{var n=r()[1],a=r()[0];return n!==o.e&&(t.docUrl=o.e=n),a!==o.t&&(t.toolId=o.t=a),o},{e:void 0,t:void 0}),t})()})}var Qr=H("<div class=threepane__title>"),eo=H("<div class=threepane__doctitle-tools>"),to=H('<button type=button class=frame__sidebar-toggle title="Show context sidebar"aria-label="Show context sidebar">'),ro=H("<div class=frame__topbar><div class=threepane__spacer>"),oo=H("<patchwork-view>",!0,!1,!1);function dt(e){let r=()=>e.toolSlots()??[];return(()=>{var t=ro(),o=t.firstChild;return M(t,L(ge,{get when(){return e.docUrl()},get children(){var n=Qr();return M(n,L(Je,{get docUrl(){return e.docUrl}})),n}}),o),M(t,L(ge,{get when(){return lt(()=>!!e.docUrl())()&&r().length},get children(){var n=eo();return M(n,L(no,{get each(){return r()},children:a=>(()=>{var i=oo();return i._$owner=Gr(),st(f=>{var m=me(a),p=e.docUrl();return m!==f.e&&(i.toolId=f.e=m),p!==f.t&&(i.docUrl=f.t=p),f},{e:void 0,t:void 0}),i})()})),n}}),null),M(t,L(ge,{get when(){return lt(()=>!!e.hasContext())()&&e.isRightCollapsed()},get children(){var n=to();return n.$$click=()=>e.onToggleRight(),Zr(n,"aria-pressed",!1),M(n,L(pe,{})),n}}),null),st(()=>t.classList.toggle("frame__topbar--left-collapsed",!!e.isLeftCollapsed())),t})()}Kr(["click"]);import{template as be}from"solid-js/web";import{effect as ao}from"solid-js/web";import{getOwner as io}from"solid-js/web";import{insert as ct}from"solid-js/web";import{memo as so}from"solid-js/web";import{createComponent as lo}from"solid-js/web";import{use as co}from"solid-js/web";import{Show as po}from"solid-js";var uo=be("<div class=document-view>"),fo=be("<patchwork-view>",!0,!1,!1),ho=be("<div class=placeholder>Select a document in the sidebar");function ut({viewKey:e,selectedDocUrl:r,toolId:t,ref:o}){return(()=>{var n=uo(),a=o;return typeof a=="function"?co(a,n):o=n,ct(n,lo(po,{get when(){return e()},keyed:!0,children:i=>(()=>{var f=fo();return f._$owner=io(),ao(m=>{var p=r(),l=t();return p!==m.e&&(f.docUrl=m.e=p),l!==m.t&&(f.toolId=m.t=l),m},{e:void 0,t:void 0}),f})()}),null),ct(n,(()=>{var i=so(()=>!r());return()=>i()&&ho()})(),null),n})()}var mo=J("<patchwork-view component=patchwork-draft-state-provider>",!0,!1,!1),go=J("<patchwork-view component=patchwork-draft-overlay-provider>",!0,!1,!1),bo=J("<div class=frame__main-column><div class=frame__doc-column><div class=main-area>"),vo=J("<patchwork-view component=patchwork-comments-provider><patchwork-view component=patchwork-focus-provider>",!0,!1,!1),wo=J("<patchwork-view>",!0,!1,!1);function pt(e){let[r,t]=k(e.initialRightCollapsed()),[o,n]=k(e.initialRightWidth());ft(ht(r,u=>{try{localStorage.setItem(C.rightCollapsed,String(u))}catch{}},{defer:!0})),ft(ht(o,u=>{try{localStorage.setItem(C.rightWidth,String(u))}catch{}},{defer:!0}));let a=de("right",{isCollapsed:r,setCollapsed:t,setWidth:n});yo(()=>{let u=()=>t(!0);window.addEventListener(V,u),xo(()=>window.removeEventListener(V,u))});let[i,f]=le(k(),{name:C.contextToolId}),[m,p]=k(),l=$("patchwork-draft-state-provider",m),s=()=>l()?m():void 0;return _(z,{get when(){return e.selectedDocUrl()},keyed:!0,children:u=>(()=>{var h=mo();return B(p,h),h.docUrl=u,h._$owner=q(),T(h,_(z,{get when(){return s()},children:b=>_(_o,{get host(){return b()},get setMainDocElement(){return e.setMainDocElement},get selectedDocUrl(){return e.selectedDocUrl},get selectedToolId(){return e.selectedToolId},get doctitleSlots(){return e.doctitleSlots},get isLeftCollapsed(){return e.isLeftCollapsed},isRightSidebarCollapsed:r,setIsRightSidebarCollapsed:t,rightSidebarWidth:o,get handleMouseDown(){return a.handleMouseDown},get handleToggleClick(){return a.handleToggleClick},selectedContextToolId:i,setSelectedContextToolId:f})})),h})()})}function _o(e){let r=A("context-tool"),t=()=>r().length>0,o=ve(()=>e.selectedDocUrl()),[n,a]=k(),i=$("patchwork-draft-overlay-provider",n),[f,m]=k(),p=$("patchwork-comments-provider",f),[l,s]=k(),u=$("patchwork-focus-provider",l),h=ve(()=>i()&&p()&&u()),b=A("document-provider"),v=ve(()=>b().map(d=>d.id),[],{equals:(d,c)=>d.length===c.length&&d.every((g,w)=>g===c[w])});return(()=>{var d=go();return B(a,d),d._$owner=q(),T(d,_(mt,{get ids(){return v()},render:()=>(()=>{var c=vo(),g=c.firstChild;return B(m,c),c._$owner=q(),B(s,g),g._$owner=q(),T(g,_(z,{get when(){return h()},get children(){var w=bo(),y=w.firstChild,D=y.firstChild;return T(y,_(dt,{get docUrl(){return e.selectedDocUrl},get toolSlots(){return e.doctitleSlots},get isLeftCollapsed(){return e.isLeftCollapsed},hasContext:t,get isRightCollapsed(){return e.isRightSidebarCollapsed},onToggleRight:()=>e.setIsRightSidebarCollapsed(S=>!S)}),D),T(D,_(ut,{viewKey:o,get selectedDocUrl(){return e.selectedDocUrl},get toolId(){return e.selectedToolId},ref:S=>e.setMainDocElement?.(S)})),T(w,_(z,{get when(){return t()},get children(){return _(ot,{get selectedToolId(){return e.selectedContextToolId},get setSelectedToolId(){return e.setSelectedContextToolId},get isCollapsed(){return e.isRightSidebarCollapsed},get width(){return e.rightSidebarWidth},get onMouseDown(){return e.handleMouseDown},get onToggleClick(){return e.handleToggleClick},onCollapse:()=>e.setIsRightSidebarCollapsed(!0)})}}),null),w}})),c})()})),d})()}function mt(e){return _(z,{get when(){return e.ids[0]},keyed:!0,get fallback(){return e.render()},children:r=>{let[t,o]=k(),n=$(r,t);return(()=>{var a=wo();return B(o,a),a.component=r,a._$owner=q(),T(a,_(z,{get when(){return n()},get children(){return _(mt,{get ids(){return e.ids.slice(1)},get render(){return e.render}})}})),a})()}})}var ie=`:root,
3
3
  :host,
4
4
  [theme] {
5
5
  --threepane-bg: var(--studio-fill, white);
6
+ /* How long a sidebar takes to open or close. Short, and eased out, so the
7
+ panel is out of the way almost as soon as it is asked to be. The top bar's
8
+ slot and the tray dock's fade keep time with it. */
9
+ --threepane-sidebar-duration: max(
10
+ 1ms,
11
+ calc(140ms * var(--studio-motion-scale, 1) * var(--studio-motion-preference, 1))
12
+ );
6
13
  --threepane-sidebar-fill: var(--studio-chrome, var(--studio-fill, white));
7
14
  --threepane-fg: var(--studio-line, black);
8
15
  /* ink for text sitting ON the sidebar/account-bar chrome surface. mirrors the
@@ -208,7 +215,7 @@ import{a as se,b as _t}from"./chunk-FW4363Y4.js";var Ie=se((tn,Ae)=>{var I=1e3,F
208
215
  border-bottom: var(--studio-border-width, 1px) var(--studio-border-style, solid) var(--threepane-toolbar-border);
209
216
  /* Animate the collapsed left-slot in step with the sidebar's width transition
210
217
  so the title glides up against the pinned toggle instead of jumping. */
211
- transition: padding-left var(--studio-transition-slow, 0.25s ease);
218
+ transition: padding-left var(--threepane-sidebar-duration) ease-out;
212
219
  }
213
220
 
214
221
  /* When the left sidebar is collapsed the bar's left edge reaches the frame edge,
@@ -640,7 +647,8 @@ import{a as se,b as _t}from"./chunk-FW4363Y4.js";var Ie=se((tn,Ae)=>{var I=1e3,F
640
647
  doesn't flash at full size over the still-expanding sidebar. The delay equals
641
648
  the sidebar's transition duration; collapsing overrides this to hide at once. */
642
649
  opacity: 1;
643
- transition: opacity var(--studio-transition-fast, 0.1s ease) 0.25s;
650
+ transition: opacity var(--studio-transition-fast, 0.1s ease)
651
+ var(--threepane-sidebar-duration);
644
652
  }
645
653
 
646
654
  .frame__tray-dock--collapsed {
@@ -837,10 +845,18 @@ import{a as se,b as _t}from"./chunk-FW4363Y4.js";var Ie=se((tn,Ae)=>{var I=1e3,F
837
845
  actively dragged - the width must track the pointer 1:1 with no easing lag.
838
846
  The body flag is set for the duration of a drag by \`useSidebarResize\`. */
839
847
  .sidebar {
840
- transition: width var(--studio-transition-slow, 0.25s ease);
848
+ transition: width var(--threepane-sidebar-duration) ease-out;
841
849
  }
842
- body[data-sidebar-resizing] .sidebar {
850
+ /* A sidebar that snaps shut mid-drag takes the top bar's slot with it. */
851
+ body[data-sidebar-resizing] .sidebar,
852
+ body[data-sidebar-resizing] .frame__topbar {
843
853
  transition: none;
844
854
  }
845
- `;function mt(){let e="patchwork-frame-styles",r=document.getElementById(e);if(r){r.textContent!==ie&&(r.textContent=ie);return}let t=document.createElement("style");t.id=e,t.textContent=ie,document.head.append(t)}var Co=vt("<patchwork-view component=patchwork-isolation root-component=threepane-isolation-root shared-providers=patchwork:contact,patchwork:selected-doc,patchwork:worker-channel shared-tools=llm-config-tray style=display:contents><script type=application/json data-root-component-data>",!0,!1,!1),ko=vt("<div class=frame>");function ls(e){let r=gt(()=>{let o=new Set,n=e.selectedDocUrl();return n&&o.add(n),e.contactUrl&&o.add(e.contactUrl),[...o]}),t=gt(()=>JSON.stringify({selectedDocUrl:e.selectedDocUrl(),selectedToolId:e.selectedToolId(),doctitleSlots:e.doctitleSlots(),isLeftCollapsed:e.isLeftCollapsed(),initialRightWidth:e.initialRightWidth(),initialRightCollapsed:e.initialRightCollapsed()}));return(()=>{var o=Co(),n=o.firstChild;return o._$owner=_o(),wt(n,t),yo(()=>xo(o,"automerge-allowlist",r().join(","))),o})()}function bt(e){if(!e?.textContent)return{};try{return JSON.parse(e.textContent)}catch(r){return console.error("[threepane-isolation-root] bad props JSON:",r),{}}}function ds(e){mt();let r=e.querySelector('script[type="application/json"]'),[t,o]=So(bt(r)),n=new MutationObserver(()=>{o($o(bt(r)))});r&&n.observe(r,{characterData:!0,childList:!0,subtree:!0});let i=Eo(()=>(()=>{var a=ko();return wt(a,wo(pt,{selectedDocUrl:()=>t.selectedDocUrl,selectedToolId:()=>t.selectedToolId,doctitleSlots:()=>t.doctitleSlots,isLeftCollapsed:()=>t.isLeftCollapsed??!1,initialRightWidth:()=>t.initialRightWidth??X,initialRightCollapsed:()=>t.initialRightCollapsed??!1})),a})(),e);return()=>{n.disconnect(),i()}}export{Oe as a,N as b,C as c,Y as d,X as e,$e as f,Ee as g,$t as h,de as i,Pt as j,Ze as k,ge as l,di as m,ci as n,ct as o,pt as p,mt as q,ls as r,ds as s};
846
- //# sourceMappingURL=chunk-UOTRB26X.js.map
855
+ /* While the width animates, the content is squeezed with the panel and clipped
856
+ to it (\`Sidebar\` keeps it mounted until the panel has closed). */
857
+ .sidebar[data-moving] > :not(.sidebar-toggle) {
858
+ min-width: 0;
859
+ overflow: hidden;
860
+ }
861
+ `;function gt(){let e="patchwork-frame-styles",r=document.getElementById(e);if(r){r.textContent!==ie&&(r.textContent=ie);return}let t=document.createElement("style");t.id=e,t.textContent=ie,document.head.append(t)}var To=wt("<patchwork-view component=patchwork-isolation root-component=threepane-isolation-root shared-providers=patchwork:contact,patchwork:selected-doc,patchwork:worker-channel shared-tools=llm-config-tray style=display:contents><script type=application/json data-root-component-data>",!0,!1,!1),Do=wt("<div class=frame>");function ps(e){let r=bt(()=>{let o=new Set,n=e.selectedDocUrl();return n&&o.add(n),e.contactUrl&&o.add(e.contactUrl),[...o]}),t=bt(()=>JSON.stringify({selectedDocUrl:e.selectedDocUrl(),selectedToolId:e.selectedToolId(),doctitleSlots:e.doctitleSlots(),isLeftCollapsed:e.isLeftCollapsed(),initialRightWidth:e.initialRightWidth(),initialRightCollapsed:e.initialRightCollapsed()}));return(()=>{var o=To(),n=o.firstChild;return o._$owner=Eo(),xt(n,t),$o(()=>So(o,"automerge-allowlist",r().join(","))),o})()}function vt(e){if(!e?.textContent)return{};try{return JSON.parse(e.textContent)}catch(r){return console.error("[threepane-isolation-root] bad props JSON:",r),{}}}function ms(e){gt();let r=e.querySelector('script[type="application/json"]'),[t,o]=Ao(vt(r)),n=new MutationObserver(()=>{o(Io(vt(r)))});r&&n.observe(r,{characterData:!0,childList:!0,subtree:!0});let a=Fo(()=>(()=>{var i=Do();return xt(i,ko(pt,{selectedDocUrl:()=>t.selectedDocUrl,selectedToolId:()=>t.selectedToolId,doctitleSlots:()=>t.doctitleSlots,isLeftCollapsed:()=>t.isLeftCollapsed??!1,initialRightWidth:()=>t.initialRightWidth??Y,initialRightCollapsed:()=>t.initialRightCollapsed??!1})),i})(),e);return()=>{n.disconnect(),a()}}export{Re as a,U as b,C as c,V as d,Y as e,Se as f,$e as g,Et as h,de as i,Ut as j,Ze as k,me as l,mi as m,gi as n,ut as o,pt as p,gt as q,ps as r,ms as s};
862
+ //# sourceMappingURL=chunk-Y2SEQB3F.js.map