@inkandswitch/patchwork-pkg-base 0.0.106 → 0.0.107
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.
- package/module-settings-url +1 -1
- package/package.json +1 -1
- package/packages/llm-host/dist/{LlmConfigTray-CjW04jeT.js → LlmConfigTray-CsVpZoou.js} +160 -150
- package/packages/llm-host/dist/index.js +1 -1
- package/packages/sideboard/dist/{chunk-RZPTJTVZ.js → chunk-3A65VAIS.js} +2 -2
- package/packages/sideboard/dist/chunk-B2O2X2JP.js +13 -0
- package/packages/sideboard/dist/chunk-B2O2X2JP.js.map +7 -0
- package/packages/sideboard/dist/chunk-PVIUDN4Q.js +2 -0
- package/packages/sideboard/dist/chunk-PVIUDN4Q.js.map +7 -0
- package/packages/sideboard/dist/chunk-WIFOKAHN.js +2 -0
- package/packages/sideboard/dist/chunk-WIFOKAHN.js.map +7 -0
- package/packages/sideboard/dist/chunk-WPHECYLJ.js +15 -0
- package/packages/sideboard/dist/chunk-WPHECYLJ.js.map +7 -0
- package/packages/sideboard/dist/{create-new-menu-4VNS2UFI.js → create-new-menu-JPICLPWM.js} +2 -2
- package/packages/sideboard/dist/document-list-panel-VFY2RV33.js +2 -0
- package/packages/sideboard/dist/index.css +1 -1
- package/packages/sideboard/dist/index.css.map +2 -2
- package/packages/sideboard/dist/index.js +1 -1
- package/packages/sideboard/dist/item-menu-C37UJBFI.js +2 -0
- package/packages/sideboard/dist/{item-menu-3JUJN3MS.js.map → item-menu-C37UJBFI.js.map} +1 -1
- package/packages/sideboard/dist/sideboard/sideboard.js +1 -1
- package/packages/threepane/dist/IsolatedDocumentArea-RT2UPRAG.js +2 -0
- package/packages/threepane/dist/{PatchworkFrame-X4GBBC46.js → PatchworkFrame-FEFTB5UT.js} +2 -2
- package/packages/threepane/dist/{chunk-MWFQHDD3.js → chunk-2TJAL7D5.js} +5 -5
- package/packages/threepane/dist/{chunk-MWFQHDD3.js.map → chunk-2TJAL7D5.js.map} +3 -3
- package/packages/threepane/dist/index.js +1 -1
- package/plugin-registry-url +1 -1
- package/packages/sideboard/dist/chunk-73XN2I2U.js +0 -15
- package/packages/sideboard/dist/chunk-73XN2I2U.js.map +0 -7
- package/packages/sideboard/dist/chunk-NS3ADG2Z.js +0 -2
- package/packages/sideboard/dist/chunk-NS3ADG2Z.js.map +0 -7
- package/packages/sideboard/dist/chunk-OFWMAVKQ.js +0 -13
- package/packages/sideboard/dist/chunk-OFWMAVKQ.js.map +0 -7
- package/packages/sideboard/dist/chunk-YZ573CYO.js +0 -2
- package/packages/sideboard/dist/chunk-YZ573CYO.js.map +0 -7
- package/packages/sideboard/dist/document-list-panel-SCICIJCF.js +0 -2
- package/packages/sideboard/dist/item-menu-3JUJN3MS.js +0 -2
- package/packages/threepane/dist/IsolatedDocumentArea-W7IBHNIS.js +0 -2
- /package/packages/sideboard/dist/{chunk-RZPTJTVZ.js.map → chunk-3A65VAIS.js.map} +0 -0
- /package/packages/sideboard/dist/{create-new-menu-4VNS2UFI.js.map → create-new-menu-JPICLPWM.js.map} +0 -0
- /package/packages/sideboard/dist/{document-list-panel-SCICIJCF.js.map → document-list-panel-VFY2RV33.js.map} +0 -0
- /package/packages/threepane/dist/{IsolatedDocumentArea-W7IBHNIS.js.map → IsolatedDocumentArea-RT2UPRAG.js.map} +0 -0
- /package/packages/threepane/dist/{PatchworkFrame-X4GBBC46.js.map → PatchworkFrame-FEFTB5UT.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./chunk-FW4363Y4.js";async function r(){let e=new URL("./index.css",import.meta.url);return(await fetch(e)).text()}function n(e){let t="sideboard-styles",o=document.head.querySelector(`#${t}`)??document.createElement("style");Object.assign(o,{textContent:e,id:t}),document.head.append(o)}var a={id:"chee/document-list",type:"patchwork:tool",name:"Document List",supportedDatatypes:["folder"],icon:"FolderOpen",unlisted:!0,async load(){let[{renderDocumentListPanel:e},t]=await Promise.all([import("./document-list-panel-
|
|
1
|
+
import"./chunk-FW4363Y4.js";async function r(){let e=new URL("./index.css",import.meta.url);return(await fetch(e)).text()}function n(e){let t="sideboard-styles",o=document.head.querySelector(`#${t}`)??document.createElement("style");Object.assign(o,{textContent:e,id:t}),document.head.append(o)}var a={id:"chee/document-list",type:"patchwork:tool",name:"Document List",supportedDatatypes:["folder"],icon:"FolderOpen",unlisted:!0,async load(){let[{renderDocumentListPanel:e},t]=await Promise.all([import("./document-list-panel-VFY2RV33.js"),r()]);return(o,i)=>(n(t),e(o.url,i))}},c=[a,Object.assign({},a,{id:"folder-tree-view",name:"Folder Tree View",icon:"Tree",unlisted:!1}),{id:"chee/account-bar",type:"patchwork:tool",name:"Account Bar",supportedDatatypes:["account"],icon:"UserCircle",unlisted:!0,async load(){let[{renderAccountBar:e},t]=await Promise.all([import("./account-bar-JHI3FZZT.js"),r()]);return(o,i)=>(n(t),e(o,i))}},{id:"chee/sideboard",type:"patchwork:tool",tags:["sidebar-account"],name:"Sideboard",supportedDatatypes:["account"],icon:"FolderOpen",unlisted:!0,async load(){let[{renderSideboard:e},t]=await Promise.all([import("./sideboard/sideboard.js"),r()]);return(o,i)=>(n(t),e(o,i))}}];export{c as plugins};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as f,b as w,c as v,d as o,e as a}from"./chunk-WIFOKAHN.js";import{h as m,i as g,o as S}from"./chunk-3A65VAIS.js";import{p as c,s as p}from"./chunk-PVIUDN4Q.js";import"./chunk-TCL6SLDB.js";import"./chunk-FW4363Y4.js";import{memo as $}from"solid-js/web";import{createComponent as e}from"solid-js/web";import{For as d,Show as u}from"solid-js";import{parseAutomergeUrl as I}from"@automerge/automerge-repo/slim";function A(l){let n=()=>{let r=m();return r&&l.element.contains(r.element)?r:null};function i(r){m()===r&&g(null),r.element.isConnected&&r.element.focus({preventScroll:!0})}return e(u,{get when(){return n()},keyed:!0,children:r=>e(v,{get anchor(){return{x:r.x,y:r.y}},placement:"right-start",onClose:()=>i(r),get children(){return e(T,{target:r,get repo(){return l.repo},get rootFolderHandle(){return l.rootFolderHandle}})}})})}function T(l){let n=l.target,i=w(n.type),r=f(t=>!t.unlisted),h=()=>c.has(n.id)&&c.size>1,s=()=>`${location.protocol}//${location.host}/#doc=${I(n.url).documentId}`;async function b(){if(!h()){n.remove();return}let t=[...c.values()].map(y=>y.url);confirm(`Remove ${t.length} items from the sidebar?`)&&(p(),await S(l.repo,l.rootFolderHandle,t))}return[e(u,{get when(){return n.createInside},get children(){return e(a,{label:"Create",get children(){return e(d,{each:r,children:t=>e(o,{onSelect:()=>n.createInside(t),get children(){return t.name}})})}})}}),e(u,{get when(){return i.length},get children(){return e(a,{label:"Open with...",get children(){return e(d,{each:i,children:t=>e(o,{onSelect:()=>n.openWith(t.id),get children(){return t.name}})})}})}}),e(a,{label:"Copy",get children(){return[e(o,{onSelect:()=>navigator.clipboard.writeText(n.url),children:"Automerge url"}),e(o,{onSelect:()=>navigator.clipboard.writeText(s()),children:"Patchwork url"}),e(u,{get when(){return i.length},get children(){return e(a,{label:"Patchwork url with...",get children(){return e(d,{each:i,children:t=>e(o,{onSelect:()=>navigator.clipboard.writeText(`${s()}&tool=${t.id}`),get children(){return t.name}})})}})}})]}}),e(o,{onSelect:()=>n.startRenaming(),children:"Rename"}),e(o,{onSelect:b,get children(){return $(()=>!!h())()?`Remove ${c.size} items`:"Remove"}})]}export{A as ItemMenu};
|
|
2
|
+
//# sourceMappingURL=item-menu-C37UJBFI.js.map
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/sideboard/document-list/item-menu.tsx"],
|
|
4
4
|
"sourcesContent": ["import { memo as _$memo } from \"solid-js/web\";\nimport { createComponent as _$createComponent } from \"solid-js/web\";\nimport { Menu, MenuItem, SubMenu } from \"../popmenu.tsx\";\nimport { For, Show } from \"solid-js\";\nimport { parseAutomergeUrl } from \"@automerge/automerge-repo/slim\";\nimport { useSupportedToolsForType, useFilteredDatatypes } from \"../lib/solid-plugins\";\nimport { dragstack, clearDragstack } from \"../dnd/dnd.ts\";\nimport { removeItemsByUrl } from \"../dnd/operations.ts\";\nimport { menuTarget, setMenuTarget } from \"../state.ts\";\nexport function ItemMenu(props) {\n const target = () => {\n const t = menuTarget();\n return t && props.element.contains(t.element) ? t : null;\n };\n function close(t) {\n if (menuTarget() === t) setMenuTarget(null);\n if (t.element.isConnected) t.element.focus({\n preventScroll: true\n });\n }\n return _$createComponent(Show, {\n get when() {\n return target();\n },\n keyed: true,\n children: t => _$createComponent(Menu, {\n get anchor() {\n return {\n x: t.x,\n y: t.y\n };\n },\n placement: \"right-start\",\n onClose: () => close(t),\n get children() {\n return _$createComponent(MenuItems, {\n target: t,\n get repo() {\n return props.repo;\n },\n get rootFolderHandle() {\n return props.rootFolderHandle;\n }\n });\n }\n })\n });\n}\nfunction MenuItems(props) {\n const t = props.target;\n const tools = useSupportedToolsForType(t.type);\n const datatypes = useFilteredDatatypes(item => !item.unlisted);\n const multi = () => dragstack.has(t.id) && dragstack.size > 1;\n const patchworkUrl = () => `${location.protocol}//${location.host}/#doc=${parseAutomergeUrl(t.url).documentId}`;\n async function handleRemove() {\n if (!multi()) {\n t.remove();\n return;\n }\n const urls = [...dragstack.values()].map(item => item.url);\n if (!confirm(`Remove ${urls.length} items from the sidebar?`)) return;\n clearDragstack();\n await removeItemsByUrl(props.repo, props.rootFolderHandle, urls);\n }\n return [_$createComponent(Show, {\n get when() {\n return t.createInside;\n },\n get children() {\n return _$createComponent(SubMenu, {\n label: \"Create\",\n get children() {\n return _$createComponent(For, {\n each: datatypes,\n children: datatype => _$createComponent(MenuItem, {\n onSelect: () => t.createInside(datatype),\n get children() {\n return datatype.name;\n }\n })\n });\n }\n });\n }\n }), _$createComponent(Show, {\n get when() {\n return tools.length;\n },\n get children() {\n return _$createComponent(SubMenu, {\n label: \"Open with...\",\n get children() {\n return _$createComponent(For, {\n each: tools,\n children: tool => _$createComponent(MenuItem, {\n onSelect: () => t.openWith(tool.id),\n get children() {\n return tool.name;\n }\n })\n });\n }\n });\n }\n }), _$createComponent(SubMenu, {\n label: \"Copy\",\n get children() {\n return [_$createComponent(MenuItem, {\n onSelect: () => navigator.clipboard.writeText(t.url),\n children: \"Automerge url\"\n }), _$createComponent(MenuItem, {\n onSelect: () => navigator.clipboard.writeText(patchworkUrl()),\n children: \"Patchwork url\"\n }), _$createComponent(Show, {\n get when() {\n return tools.length;\n },\n get children() {\n return _$createComponent(SubMenu, {\n label: \"Patchwork url with...\",\n get children() {\n return _$createComponent(For, {\n each: tools,\n children: tool => _$createComponent(MenuItem, {\n onSelect: () => navigator.clipboard.writeText(`${patchworkUrl()}&tool=${tool.id}`),\n get children() {\n return tool.name;\n }\n })\n });\n }\n });\n }\n })];\n }\n }), _$createComponent(MenuItem, {\n onSelect: () => t.startRenaming(),\n children: \"Rename\"\n }), _$createComponent(MenuItem, {\n onSelect: handleRemove,\n get children() {\n return _$memo(() => !!multi())() ? `Remove ${dragstack.size} items` : \"Remove\";\n }\n })];\n}"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "iOAAA,OAAS,QAAQA,MAAc,eAC/B,OAAS,mBAAmBC,MAAyB,eAErD,OAAS,OAAAC,EAAK,QAAAC,MAAY,WAC1B,OAAS,qBAAAC,MAAyB,iCAK3B,SAASC,EAASC,EAAO,CAC9B,IAAMC,EAAS,IAAM,CACnB,IAAMC,EAAIC,EAAW,EACrB,OAAOD,GAAKF,EAAM,QAAQ,SAASE,EAAE,OAAO,EAAIA,EAAI,IACtD,EACA,SAASE,EAAMF,EAAG,CACZC,EAAW,IAAMD,GAAGG,EAAc,IAAI,EACtCH,EAAE,QAAQ,aAAaA,EAAE,QAAQ,MAAM,CACzC,cAAe,EACjB,CAAC,CACH,CACA,OAAOI,EAAkBC,EAAM,CAC7B,IAAI,MAAO,CACT,OAAON,EAAO,CAChB,EACA,MAAO,GACP,SAAUC,GAAKI,EAAkBE,EAAM,CACrC,IAAI,QAAS,CACX,MAAO,CACL,EAAGN,EAAE,EACL,EAAGA,EAAE,CACP,CACF,EACA,UAAW,cACX,QAAS,IAAME,EAAMF,CAAC,EACtB,IAAI,UAAW,CACb,OAAOI,EAAkBG,EAAW,CAClC,OAAQP,EACR,IAAI,MAAO,CACT,OAAOF,EAAM,IACf,EACA,IAAI,kBAAmB,CACrB,OAAOA,EAAM,gBACf,CACF,CAAC,CACH,CACF,CAAC,CACH,CAAC,CACH,CACA,SAASS,EAAUT,EAAO,CACxB,IAAME,EAAIF,EAAM,OACVU,EAAQC,EAAyBT,EAAE,IAAI,EACvCU,EAAYC,EAAqBC,GAAQ,CAACA,EAAK,QAAQ,EACvDC,EAAQ,IAAMC,EAAU,IAAId,EAAE,EAAE,GAAKc,EAAU,KAAO,EACtDC,EAAe,IAAM,GAAG,SAAS,QAAQ,KAAK,SAAS,IAAI,SAASC,EAAkBhB,EAAE,GAAG,EAAE,UAAU,GAC7G,eAAeiB,GAAe,CAC5B,GAAI,CAACJ,EAAM,EAAG,CACZb,EAAE,OAAO,EACT,MACF,CACA,IAAMkB,EAAO,CAAC,GAAGJ,EAAU,OAAO,CAAC,EAAE,IAAIF,GAAQA,EAAK,GAAG,EACpD,QAAQ,UAAUM,EAAK,MAAM,0BAA0B,IAC5DC,EAAe,EACf,MAAMC,EAAiBtB,EAAM,KAAMA,EAAM,iBAAkBoB,CAAI,EACjE,CACA,MAAO,CAACd,EAAkBC,EAAM,CAC9B,IAAI,MAAO,CACT,OAAOL,EAAE,YACX,EACA,IAAI,UAAW,CACb,OAAOI,EAAkBiB,EAAS,CAChC,MAAO,SACP,IAAI,UAAW,CACb,OAAOjB,EAAkBkB,EAAK,CAC5B,KAAMZ,EACN,SAAUa,GAAYnB,EAAkBoB,EAAU,CAChD,SAAU,IAAMxB,EAAE,aAAauB,CAAQ,EACvC,IAAI,UAAW,CACb,OAAOA,EAAS,IAClB,CACF,CAAC,CACH,CAAC,CACH,CACF,CAAC,CACH,CACF,CAAC,EAAGnB,EAAkBC,EAAM,CAC1B,IAAI,MAAO,CACT,OAAOG,EAAM,MACf,EACA,IAAI,UAAW,CACb,OAAOJ,EAAkBiB,EAAS,CAChC,MAAO,eACP,IAAI,UAAW,CACb,OAAOjB,EAAkBkB,EAAK,CAC5B,KAAMd,EACN,SAAUiB,GAAQrB,EAAkBoB,EAAU,CAC5C,SAAU,IAAMxB,EAAE,SAASyB,EAAK,EAAE,EAClC,IAAI,UAAW,CACb,OAAOA,EAAK,IACd,CACF,CAAC,CACH,CAAC,CACH,CACF,CAAC,CACH,CACF,CAAC,EAAGrB,EAAkBiB,EAAS,CAC7B,MAAO,OACP,IAAI,UAAW,CACb,MAAO,CAACjB,EAAkBoB,EAAU,CAClC,SAAU,IAAM,UAAU,UAAU,UAAUxB,EAAE,GAAG,EACnD,SAAU,eACZ,CAAC,EAAGI,EAAkBoB,EAAU,CAC9B,SAAU,IAAM,UAAU,UAAU,UAAUT,EAAa,CAAC,EAC5D,SAAU,eACZ,CAAC,EAAGX,EAAkBC,EAAM,CAC1B,IAAI,MAAO,CACT,OAAOG,EAAM,MACf,EACA,IAAI,UAAW,CACb,OAAOJ,EAAkBiB,EAAS,CAChC,MAAO,wBACP,IAAI,UAAW,CACb,OAAOjB,EAAkBkB,EAAK,CAC5B,KAAMd,EACN,SAAUiB,GAAQrB,EAAkBoB,EAAU,CAC5C,SAAU,IAAM,UAAU,UAAU,UAAU,GAAGT,EAAa,CAAC,SAASU,EAAK,EAAE,EAAE,EACjF,IAAI,UAAW,CACb,OAAOA,EAAK,IACd,CACF,CAAC,CACH,CAAC,CACH,CACF,CAAC,CACH,CACF,CAAC,CAAC,CACJ,CACF,CAAC,EAAGrB,EAAkBoB,EAAU,CAC9B,SAAU,IAAMxB,EAAE,cAAc,EAChC,SAAU,QACZ,CAAC,EAAGI,EAAkBoB,EAAU,CAC9B,SAAUP,EACV,IAAI,UAAW,CACb,OAAOS,EAAO,IAAM,CAAC,CAACb,EAAM,CAAC,EAAE,EAAI,UAAUC,EAAU,IAAI,SAAW,QACxE,CACF,CAAC,CAAC,CACJ",
|
|
6
6
|
"names": ["_$memo", "_$createComponent", "For", "Show", "parseAutomergeUrl", "ItemMenu", "props", "target", "t", "menuTarget", "close", "setMenuTarget", "_$createComponent", "Show", "Menu", "MenuItems", "tools", "useSupportedToolsForType", "datatypes", "useFilteredDatatypes", "item", "multi", "dragstack", "patchworkUrl", "parseAutomergeUrl", "handleRemove", "urls", "clearDragstack", "removeItemsByUrl", "SubMenu", "For", "datatype", "MenuItem", "tool", "_$memo"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i,b as a}from"../chunk-
|
|
1
|
+
import{a as i,b as a}from"../chunk-WPHECYLJ.js";import"../chunk-B2O2X2JP.js";import"../chunk-3A65VAIS.js";import"../chunk-PVIUDN4Q.js";import{a as d}from"../chunk-25X3B3RC.js";import{a as m}from"../chunk-FEMULUBJ.js";import"../chunk-TCL6SLDB.js";import"../chunk-FW4363Y4.js";import{template as u}from"solid-js/web";import{insert as n}from"solid-js/web";import{createComponent as t}from"solid-js/web";import{Show as p}from"solid-js";import{render as g}from"solid-js/web";var s=u("<div class=sideboard>"),f=u('<aside class=document-list><nav class="document-list__doclist document-list-widget">');function _(e){let r=m(e.handle);return(()=>{var o=s();return n(o,t(p,{get when(){return r.rootFolderUrl},get fallback(){return(()=>{var l=f(),c=l.firstChild;return n(c,t(i,{depth:0})),l})()},get children(){return t(a,{get folderUrl(){return r.rootFolderUrl},get repo(){return e.repo},get element(){return e.element}})}}),null),n(o,t(d,{get handle(){return e.handle},get repo(){return e.repo},get element(){return e.element}}),null),o})()}function x(e,r){return g(()=>t(_,{handle:e,get repo(){return r.repo},element:r}),r)}export{_ as Sideboard,x as renderSideboard};
|
|
2
2
|
//# sourceMappingURL=sideboard.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as M,b as ce,c as H,d as U}from"./chunk-YERFWP5I.js";import{a as Ie,b as B,c as j,d as te,e as re,f as oe,g as ne,h as ie,i as ae,j as le,k as se,l as P,m as F,n as W,o as de,p as ue,q as me,r as fe}from"./chunk-MWFQHDD3.js";import{b as Ue}from"./chunk-FW4363Y4.js";import{template as _}from"solid-js/web";import{delegateEvents as et}from"solid-js/web";import{memo as tt}from"solid-js/web";import{setStyleProperty as rt}from"solid-js/web";import{setAttribute as Y}from"solid-js/web";import{effect as R}from"solid-js/web";import{getOwner as k}from"solid-js/web";import{use as C}from"solid-js/web";import{insert as v}from"solid-js/web";import{createComponent as m}from"solid-js/web";import"@inkandswitch/patchwork-elements";import{subscribe as ft}from"@inkandswitch/patchwork-providers";import{template as q}from"solid-js/web";import{delegateEvents as Re}from"solid-js/web";import{memo as Le}from"solid-js/web";import{insert as pe}from"solid-js/web";import{createComponent as I}from"solid-js/web";import{For as Pe,Show as z}from"solid-js";var Ae=q("<div class=threepane-widgets>"),xe=q("<div class=threepane-widgets__empty><button type=button class=threepane-widgets__add>\uFF0B Add document list"),Oe=q("<div class=threepane-widget>");function he(e){let l=()=>{let o=e.rootFolderUrl(),a=e.configHandle();!o||!a||a.change(r=>{r.sidebar.widgets.push([H,o])})};return(()=>{var o=Ae();return pe(o,I(z,{get when(){return e.ready()},get children(){return I(z,{get when(){return e.widgets().length},get fallback(){return I(z,{get when(){return Le(()=>!!e.rootFolderUrl())()&&e.configHandle()},get children(){var a=xe(),r=a.firstChild;return r.$$click=l,a}})},get children(){return I(Pe,{get each(){return e.widgets()},children:a=>(()=>{var r=Oe();return pe(r,I(W,{slot:a})),r})()})}})}})),o})()}Re(["click"]);import{template as we}from"solid-js/web";import{setAttribute as Fe}from"solid-js/web";import{effect as We}from"solid-js/web";import{insert as ge}from"solid-js/web";import{createComponent as K}from"solid-js/web";import{For as Ne,Show as Ve}from"solid-js";var Me=we("<div class=frame-tray>"),He=we("<div class=frame-tray__item>");function ve(e){return K(Ve,{get when(){return e.slots().length},get children(){var l=Me();return ge(l,K(Ne,{get each(){return F(e.slots())},children:o=>(()=>{var a=He();return ge(a,K(W,{slot:o})),We(()=>Fe(a,"data-tray-id",P(o))),a})()})),l}})}import{createEffect as V,createMemo as pt,createSignal as b,onCleanup as L,onMount as ke,Show as S}from"solid-js";import{render as ht}from"solid-js/web";import{createDocOfDatatype2 as je}from"@inkandswitch/patchwork-plugins";import{getRegistry as Be}from"@inkandswitch/patchwork-plugins";function N(e){return Be("patchwork:datatype").loadWhenReady(e)}var ze=new Set(["document-title","spacer"]);function _e(e){return e?[[H,e]]:[]}function qe(e,l){if(!((e.version??0)>=1)){if(e.sidebar||(e.sidebar={widgets:[]}),l&&!e.sidebar.widgets?.length&&(e.sidebar.widgets=_e(l)),!e.tray)e.tray=M.slice();else{let o=F(e.tray);o.length!==e.tray.length&&(e.tray=o);let a=new Set(e.tray.map(r=>P(r)));for(let r of M)a.has(r)||(e.tray.push(r),a.add(r))}e.doctitle?.tools?.length||(e.doctitle={...e.doctitle,tools:ce.slice()}),!(!e.sidebar.widgets?.length&&!l)&&(e.version=1)}}async function ye(e,l){let o=e.doc()?.rootFolderUrl,a=e.doc()?.tools?.threepane;if(a){let i=await l.find(a);if((i.doc()?.version??0)>=1)return;i.change(u=>qe(u,o));return}let r=await N("threepane:config");if(!r){console.warn("frame: threepane:config datatype never registered");return}if(e.doc()?.tools?.threepane)return;let t=e.doc(),n=(t?.documentToolbarToolIds??[]).filter(i=>!ze.has(i)),s=await je(r,l);s.change(i=>{n.length&&(i.doctitle.tools=n),i.sidebar.widgets=_e(t?.rootFolderUrl),i.tray||(i.tray=M.slice()),t?.rootFolderUrl?i.version=1:delete i.version}),e.change(i=>{i.tools||(i.tools={}),i.tools.threepane||(i.tools.threepane=s.url)})}var Se=Ue(Ie(),1);import{createDocOfDatatype2 as Ke}from"@inkandswitch/patchwork-plugins";var g=(0,Se.default)("patchwork:threepane:examples");async function $e(e,l){let o=e.doc();if(!o?.rootFolderUrl){g("skipped \u2014 account has no rootFolderUrl");return}if(o.exampleDocsSeededAt){g("skipped \u2014 already ran for this account at",new Date(o.exampleDocsSeededAt).toISOString());return}g("claiming marker on account",e.url),e.change(d=>{d.exampleDocsSeededAt||(d.exampleDocsSeededAt=Date.now())});let a=await l.find(o.rootFolderUrl),r=a.doc()?.docs?.length??0;if(r){g(`skipped \u2014 root folder already has ${r} doc(s); only fresh accounts are seeded`);return}let t=window.location.hostname.includes("gaios"),n=t?[]:await Ye();if(g(t?"gaios examples":"bundle init scripts:",n),!t&&!n.length){g("skipped \u2014 no static module bundles to ask");return}let s=await N("folder");if(!s){g("folder datatype never registered; giving up");return}let i=await Ke(s,l,d=>{d.title="Examples"});if(t){let{seedGaiosExamples:d}=await import("./gaiosExamples-YDNQB35L.js");await d(l,i)}for(let d of n)try{await(await import(d)).default?.(l,i),g("ran init script",d)}catch(c){g("init script unavailable or failed",d,c)}let u=i.doc()?.docs?.length??0;if(!u){g("no bundle contributed any documents");return}a.change(d=>{d.docs.unshift({name:"Examples",type:"folder",url:i.url})}),g(`seeded ${u} document(s) into Examples folder`,i.url)}var be="https://patchwork-tools.netlify.app/init.js",De="https://patchwork-base.netlify.app/init.js";function Ge(){return document.documentElement.getAttribute("data-examples")==="site"}async function Ye(){let e=Ge(),l=window.patchwork?.packages;if(!l?.urls)return e?[]:[De,be];await l.doneLoading;let o=Object.values(l.urls).filter(r=>typeof r=="string"&&!r.startsWith("automerge:")).map(r=>new URL("init.js",new URL(r,document.baseURI)).href);if(e)return[...new Set(o)];let a=o.length?[]:[De];return[...new Set([...o,...a,be])]}import{createEffect as Xe,createMemo as Je,createSignal as Qe,onCleanup as Ze}from"solid-js";function G(e){let[l,o]=Qe(0);return Xe(()=>{let a=e();if(!a)return;let r=()=>o(t=>t+1);a.on("change",r),Ze(()=>a.off("change",r))}),Je(()=>(l(),e()?.doc()))}var ot=_("<div class=frame-shell><aside class=frame-warning-banner>research grade software. do not share links. sharing a doc is sharing your account.</aside><div class=frame><patchwork-view component=patchwork-selected-doc-provider><patchwork-view component=patchwork-account-provider><patchwork-view component=patchwork-tool-storage-provider><patchwork-view component=patchwork-worker-provider>",!0,!1,!1),nt=_("<div style=display:contents>"),it=_("<div class=main-area>"),at=_("<div class=frame__popover-backdrop><div class=frame__popover role=dialog aria-modal=true><div class=frame__popover-toolbar><patchwork-view tool-id=doc-openwith></patchwork-view></div><div class=frame__popover-body><patchwork-view>",!0,!1,!1),lt=_('<button type=button class="frame__sidebar-toggle frame__left-toggle">'),st=_("<div class=threepane-sidebar><div class=threepane-sidebar__footer><footer class=threepane-account-bar><button type=button class=threepane-account-bar__button>Settings"),ct=_("<div class=frame__tray-dock>"),dt=_('<button type=button class="threepane-account-bar__button threepane-account-bar__avatar"title=Account aria-label=Account><patchwork-view tool-id=contact-avatar>',!0,!1,!1),ut=_("<button type=button class=threepane-account-bar__button>Packages"),mt=_('<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="M9 3v18">'),X=(e,l)=>{let[o,a]=b(!1);return V(()=>{let r=l();if(!r)return;a(!1);let t=n=>{n.detail?.componentId===e&&a(!0)};r.addEventListener("patchwork:mounted",t),L(()=>r.removeEventListener("patchwork:mounted",t))}),o};function J(e,l){e.dispatchEvent(new CustomEvent("patchwork:open-document",{detail:l,bubbles:!0,composed:!0}))}function gt({handle:e,repo:l,...o}){me();let a=e.url,[r,t]=b(),n=X("patchwork-account-provider",r),[s,i]=b(),u=X("patchwork-tool-storage-provider",s),[d,c]=b(),f=X("patchwork-selected-doc-provider",d),p=pt(()=>f()&&n()&&u());return(()=>{var w=ot(),E=w.firstChild,Q=E.firstChild,A=E.nextSibling,h=A.firstChild,D=h.firstChild,$=D.firstChild,T=$.firstChild;return v(E,m(S,{get when(){return o.isolation},get children(){return[" ","isolation is highly experimental. if things are broken, switch back to wild west."]}}),null),C(c,h),h._$owner=k(),C(t,D),D.docUrl=a,D._$owner=k(),C(i,$),$.docUrl=a,$._$owner=k(),T._$owner=k(),v(T,m(S,{get when(){return p()},get children(){return m(wt,{handle:e,repo:l,get isolation(){return o.isolation}})}})),w})()}function wt(e){let l=B(()=>e.handle.url,{repo:e.repo});(async()=>{await ye(e.handle,e.repo),await $e(e.handle,e.repo)})().catch(y=>{console.error("frame: account bootstrap failed",y)});let o=G(l),a=e.handle.url,r=()=>o()?.tools?.threepane,t=B(()=>r(),{repo:e.repo}),n=G(t),s=()=>n()?.doctitle?.tools,i=()=>n()?.sidebar?.widgets??[],u=()=>n()?.tray??[],d=()=>o()?.rootFolderUrl,c=ie(),f=ae("left",{isCollapsed:c.isSidebarCollapsed,setCollapsed:c.setIsSidebarCollapsed,setWidth:c.setLeftSidebarWidth}),p,[w,E]=b(null),[Q,A]=b(null);ke(()=>{let y=ft(p,{type:"patchwork:selected-view"},x=>E(x));L(y)});let h=()=>w()?.url,D=()=>w()?.toolId??void 0,$=()=>oe(j.rightWidth,re),T=()=>ne(j.rightCollapsed),[Ce,Z]=b(),Ee=le(Ce,h),[ee,Te]=b(!1);return V(()=>{ee()||(e.isolation||!h()||Ee())&&Te(!0)}),(()=>{var y=nt(),x=p;return typeof x=="function"?C(x,y):p=y,v(y,m(_t,{accountDocUrl:a,sidebarState:c,sidebarResize:f,sidebarWidgets:i,traySlots:u,configHandle:t,rootFolderUrl:d,widgetsReady:ee,contactUrl:()=>o()?.contactUrl,moduleSettingsUrl:()=>o()?.moduleSettingsUrl,get isolation(){return e.isolation},onInterceptOpen:A,get children(){return m(S,{get when(){return h()},get fallback(){return(()=>{var O=it();return v(O,m(de,{viewKey:h,selectedDocUrl:h,toolId:D,ref:Z})),O})()},get children(){return m(S,{get when(){return e.isolation},get fallback(){return m(ue,{setMainDocElement:Z,selectedDocUrl:h,selectedToolId:D,doctitleSlots:s,get isLeftCollapsed(){return c.isSidebarCollapsed},initialRightWidth:$,initialRightCollapsed:T})},get children(){return m(fe,{get contactUrl(){return o()?.contactUrl},selectedDocUrl:h,selectedToolId:D,doctitleSlots:s,get isLeftCollapsed(){return c.isSidebarCollapsed},initialRightWidth:$,initialRightCollapsed:T})}})}})}}),null),v(y,m(S,{get when(){return Q()},children:O=>m(vt,{get view(){return O()},onClose:()=>A(null)})}),null),y})()}function vt(e){let[l,o]=b(e.view.toolId??void 0);V(()=>o(e.view.toolId??void 0));let a;return ke(()=>{let r=s=>{s.key==="Escape"&&e.onClose()};window.addEventListener("keydown",r),L(()=>window.removeEventListener("keydown",r));let t=a;if(!t)return;let n=s=>{let{url:i,toolId:u}=s.detail;i&&(s.stopPropagation(),o(u??void 0))};t.addEventListener("patchwork:open-document",n),L(()=>t.removeEventListener("patchwork:open-document",n))}),(()=>{var r=at(),t=r.firstChild,n=t.firstChild,s=n.firstChild,i=n.nextSibling,u=i.firstChild;r.$$click=()=>e.onClose(),t.$$click=c=>c.stopPropagation();var d=a;return typeof d=="function"?C(d,t):a=t,s._$owner=k(),u._$owner=k(),R(c=>{var f=e.view.url,p=e.view.url,w=l();return f!==c.e&&(s.docUrl=c.e=f),p!==c.t&&(u.docUrl=c.t=p),w!==c.a&&(u.toolId=c.a=w),c},{e:void 0,t:void 0,a:void 0}),r})()}function _t(e){let l=e.sidebarState.isSidebarCollapsed,o=()=>e.traySlots().length>0,a,r;return V(()=>{if(l())return;let t=a;if(!t)return;let n=r,s=i=>{let{url:u,toolId:d}=i.detail;if(e.isolation&&u&&n&&i.composedPath().includes(n)){i.stopPropagation(),e.onInterceptOpen?.({url:u,toolId:d??null});return}t.getBoundingClientRect().width<=window.innerWidth*.75||(e.sidebarState.setIsSidebarCollapsed(!0),window.dispatchEvent(new CustomEvent(te)))};t.addEventListener("patchwork:open-document",s),L(()=>t.removeEventListener("patchwork:open-document",s))}),[(()=>{var t=lt();return t.$$click=()=>e.sidebarState.setIsSidebarCollapsed(n=>!n),v(t,m(yt,{})),R(n=>{var s=l()?"Show sidebar":"Hide sidebar",i=l()?"Show sidebar":"Hide sidebar",u=!l();return s!==n.e&&Y(t,"title",n.e=s),i!==n.t&&Y(t,"aria-label",n.t=i),u!==n.a&&Y(t,"aria-pressed",n.a=u),n},{e:void 0,t:void 0,a:void 0}),t})(),m(se,{side:"left",isCollapsed:l,get width(){return e.sidebarState.leftSidebarWidth},get onMouseDown(){return e.sidebarResize.handleMouseDown},get onToggleClick(){return e.sidebarResize.handleToggleClick},get children(){var t=st(),n=t.firstChild,s=n.firstChild,i=s.firstChild,u=a;typeof u=="function"?C(u,t):a=t,v(t,m(he,{get widgets(){return e.sidebarWidgets},get configHandle(){return e.configHandle},get rootFolderUrl(){return e.rootFolderUrl},get ready(){return e.widgetsReady}}),n);var d=r;return typeof d=="function"?C(d,n):r=n,v(s,m(S,{get when(){return e.contactUrl()},children:c=>(()=>{var f=dt(),p=f.firstChild;return f.$$click=w=>J(w.currentTarget,{url:e.accountDocUrl,toolId:"account-picker"}),p._$owner=k(),R(()=>p.docUrl=c()),f})()}),i),v(s,m(S,{get when(){return e.moduleSettingsUrl()},children:c=>(()=>{var f=ut();return f.$$click=p=>J(p.currentTarget,{url:c(),toolId:"packages"}),f})()}),i),i.$$click=c=>J(c.currentTarget,{url:e.accountDocUrl,toolId:"frame-configurator"}),R(()=>t.classList.toggle("threepane-sidebar--has-tray",!!o())),t}}),m(S,{get when(){return o()},get children(){var t=ct();return v(t,m(ve,{get slots(){return e.traySlots}})),R(n=>{var s=!!l(),i=`${e.sidebarState.leftSidebarWidth()}px`;return s!==n.e&&t.classList.toggle("frame__tray-dock--collapsed",n.e=s),i!==n.t&&rt(t,"width",n.t=i),n},{e:void 0,t:void 0}),t}}),tt(()=>e.children)]}function yt(){return mt()}function Dr(e){return(l,o)=>ht(()=>m(gt,{handle:l,get repo(){return o.repo},isolation:e}),o)}et(["click"]);export{_t as FrameLayout,gt as PatchworkFrame,Dr as renderPatchworkFrame};
|
|
2
|
-
//# sourceMappingURL=PatchworkFrame-
|
|
1
|
+
import{a as M,b as ce,c as H,d as U}from"./chunk-YERFWP5I.js";import{a as Ie,b as B,c as j,d as te,e as re,f as oe,g as ne,h as ie,i as ae,j as le,k as se,l as P,m as F,n as W,o as de,p as ue,q as me,r as fe}from"./chunk-2TJAL7D5.js";import{b as Ue}from"./chunk-FW4363Y4.js";import{template as _}from"solid-js/web";import{delegateEvents as et}from"solid-js/web";import{memo as tt}from"solid-js/web";import{setStyleProperty as rt}from"solid-js/web";import{setAttribute as Y}from"solid-js/web";import{effect as R}from"solid-js/web";import{getOwner as k}from"solid-js/web";import{use as C}from"solid-js/web";import{insert as v}from"solid-js/web";import{createComponent as m}from"solid-js/web";import"@inkandswitch/patchwork-elements";import{subscribe as ft}from"@inkandswitch/patchwork-providers";import{template as q}from"solid-js/web";import{delegateEvents as Re}from"solid-js/web";import{memo as Le}from"solid-js/web";import{insert as pe}from"solid-js/web";import{createComponent as I}from"solid-js/web";import{For as Pe,Show as z}from"solid-js";var Ae=q("<div class=threepane-widgets>"),xe=q("<div class=threepane-widgets__empty><button type=button class=threepane-widgets__add>\uFF0B Add document list"),Oe=q("<div class=threepane-widget>");function he(e){let l=()=>{let o=e.rootFolderUrl(),a=e.configHandle();!o||!a||a.change(r=>{r.sidebar.widgets.push([H,o])})};return(()=>{var o=Ae();return pe(o,I(z,{get when(){return e.ready()},get children(){return I(z,{get when(){return e.widgets().length},get fallback(){return I(z,{get when(){return Le(()=>!!e.rootFolderUrl())()&&e.configHandle()},get children(){var a=xe(),r=a.firstChild;return r.$$click=l,a}})},get children(){return I(Pe,{get each(){return e.widgets()},children:a=>(()=>{var r=Oe();return pe(r,I(W,{slot:a})),r})()})}})}})),o})()}Re(["click"]);import{template as we}from"solid-js/web";import{setAttribute as Fe}from"solid-js/web";import{effect as We}from"solid-js/web";import{insert as ge}from"solid-js/web";import{createComponent as K}from"solid-js/web";import{For as Ne,Show as Ve}from"solid-js";var Me=we("<div class=frame-tray>"),He=we("<div class=frame-tray__item>");function ve(e){return K(Ve,{get when(){return e.slots().length},get children(){var l=Me();return ge(l,K(Ne,{get each(){return F(e.slots())},children:o=>(()=>{var a=He();return ge(a,K(W,{slot:o})),We(()=>Fe(a,"data-tray-id",P(o))),a})()})),l}})}import{createEffect as V,createMemo as pt,createSignal as b,onCleanup as L,onMount as ke,Show as S}from"solid-js";import{render as ht}from"solid-js/web";import{createDocOfDatatype2 as je}from"@inkandswitch/patchwork-plugins";import{getRegistry as Be}from"@inkandswitch/patchwork-plugins";function N(e){return Be("patchwork:datatype").loadWhenReady(e)}var ze=new Set(["document-title","spacer"]);function _e(e){return e?[[H,e]]:[]}function qe(e,l){if(!((e.version??0)>=1)){if(e.sidebar||(e.sidebar={widgets:[]}),l&&!e.sidebar.widgets?.length&&(e.sidebar.widgets=_e(l)),!e.tray)e.tray=M.slice();else{let o=F(e.tray);o.length!==e.tray.length&&(e.tray=o);let a=new Set(e.tray.map(r=>P(r)));for(let r of M)a.has(r)||(e.tray.push(r),a.add(r))}e.doctitle?.tools?.length||(e.doctitle={...e.doctitle,tools:ce.slice()}),!(!e.sidebar.widgets?.length&&!l)&&(e.version=1)}}async function ye(e,l){let o=e.doc()?.rootFolderUrl,a=e.doc()?.tools?.threepane;if(a){let i=await l.find(a);if((i.doc()?.version??0)>=1)return;i.change(u=>qe(u,o));return}let r=await N("threepane:config");if(!r){console.warn("frame: threepane:config datatype never registered");return}if(e.doc()?.tools?.threepane)return;let t=e.doc(),n=(t?.documentToolbarToolIds??[]).filter(i=>!ze.has(i)),s=await je(r,l);s.change(i=>{n.length&&(i.doctitle.tools=n),i.sidebar.widgets=_e(t?.rootFolderUrl),i.tray||(i.tray=M.slice()),t?.rootFolderUrl?i.version=1:delete i.version}),e.change(i=>{i.tools||(i.tools={}),i.tools.threepane||(i.tools.threepane=s.url)})}var Se=Ue(Ie(),1);import{createDocOfDatatype2 as Ke}from"@inkandswitch/patchwork-plugins";var g=(0,Se.default)("patchwork:threepane:examples");async function $e(e,l){let o=e.doc();if(!o?.rootFolderUrl){g("skipped \u2014 account has no rootFolderUrl");return}if(o.exampleDocsSeededAt){g("skipped \u2014 already ran for this account at",new Date(o.exampleDocsSeededAt).toISOString());return}g("claiming marker on account",e.url),e.change(d=>{d.exampleDocsSeededAt||(d.exampleDocsSeededAt=Date.now())});let a=await l.find(o.rootFolderUrl),r=a.doc()?.docs?.length??0;if(r){g(`skipped \u2014 root folder already has ${r} doc(s); only fresh accounts are seeded`);return}let t=window.location.hostname.includes("gaios"),n=t?[]:await Ye();if(g(t?"gaios examples":"bundle init scripts:",n),!t&&!n.length){g("skipped \u2014 no static module bundles to ask");return}let s=await N("folder");if(!s){g("folder datatype never registered; giving up");return}let i=await Ke(s,l,d=>{d.title="Examples"});if(t){let{seedGaiosExamples:d}=await import("./gaiosExamples-YDNQB35L.js");await d(l,i)}for(let d of n)try{await(await import(d)).default?.(l,i),g("ran init script",d)}catch(c){g("init script unavailable or failed",d,c)}let u=i.doc()?.docs?.length??0;if(!u){g("no bundle contributed any documents");return}a.change(d=>{d.docs.unshift({name:"Examples",type:"folder",url:i.url})}),g(`seeded ${u} document(s) into Examples folder`,i.url)}var be="https://patchwork-tools.netlify.app/init.js",De="https://patchwork-base.netlify.app/init.js";function Ge(){return document.documentElement.getAttribute("data-examples")==="site"}async function Ye(){let e=Ge(),l=window.patchwork?.packages;if(!l?.urls)return e?[]:[De,be];await l.doneLoading;let o=Object.values(l.urls).filter(r=>typeof r=="string"&&!r.startsWith("automerge:")).map(r=>new URL("init.js",new URL(r,document.baseURI)).href);if(e)return[...new Set(o)];let a=o.length?[]:[De];return[...new Set([...o,...a,be])]}import{createEffect as Xe,createMemo as Je,createSignal as Qe,onCleanup as Ze}from"solid-js";function G(e){let[l,o]=Qe(0);return Xe(()=>{let a=e();if(!a)return;let r=()=>o(t=>t+1);a.on("change",r),Ze(()=>a.off("change",r))}),Je(()=>(l(),e()?.doc()))}var ot=_("<div class=frame-shell><aside class=frame-warning-banner>research grade software. do not share links. sharing a doc is sharing your account.</aside><div class=frame><patchwork-view component=patchwork-selected-doc-provider><patchwork-view component=patchwork-account-provider><patchwork-view component=patchwork-tool-storage-provider><patchwork-view component=patchwork-worker-provider>",!0,!1,!1),nt=_("<div style=display:contents>"),it=_("<div class=main-area>"),at=_("<div class=frame__popover-backdrop><div class=frame__popover role=dialog aria-modal=true><div class=frame__popover-toolbar><patchwork-view tool-id=doc-openwith></patchwork-view></div><div class=frame__popover-body><patchwork-view>",!0,!1,!1),lt=_('<button type=button class="frame__sidebar-toggle frame__left-toggle">'),st=_("<div class=threepane-sidebar><div class=threepane-sidebar__footer><footer class=threepane-account-bar><button type=button class=threepane-account-bar__button>Settings"),ct=_("<div class=frame__tray-dock>"),dt=_('<button type=button class="threepane-account-bar__button threepane-account-bar__avatar"title=Account aria-label=Account><patchwork-view tool-id=contact-avatar>',!0,!1,!1),ut=_("<button type=button class=threepane-account-bar__button>Packages"),mt=_('<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="M9 3v18">'),X=(e,l)=>{let[o,a]=b(!1);return V(()=>{let r=l();if(!r)return;a(!1);let t=n=>{n.detail?.componentId===e&&a(!0)};r.addEventListener("patchwork:mounted",t),L(()=>r.removeEventListener("patchwork:mounted",t))}),o};function J(e,l){e.dispatchEvent(new CustomEvent("patchwork:open-document",{detail:l,bubbles:!0,composed:!0}))}function gt({handle:e,repo:l,...o}){me();let a=e.url,[r,t]=b(),n=X("patchwork-account-provider",r),[s,i]=b(),u=X("patchwork-tool-storage-provider",s),[d,c]=b(),f=X("patchwork-selected-doc-provider",d),p=pt(()=>f()&&n()&&u());return(()=>{var w=ot(),E=w.firstChild,Q=E.firstChild,A=E.nextSibling,h=A.firstChild,D=h.firstChild,$=D.firstChild,T=$.firstChild;return v(E,m(S,{get when(){return o.isolation},get children(){return[" ","isolation is highly experimental. if things are broken, switch back to wild west."]}}),null),C(c,h),h._$owner=k(),C(t,D),D.docUrl=a,D._$owner=k(),C(i,$),$.docUrl=a,$._$owner=k(),T._$owner=k(),v(T,m(S,{get when(){return p()},get children(){return m(wt,{handle:e,repo:l,get isolation(){return o.isolation}})}})),w})()}function wt(e){let l=B(()=>e.handle.url,{repo:e.repo});(async()=>{await ye(e.handle,e.repo),await $e(e.handle,e.repo)})().catch(y=>{console.error("frame: account bootstrap failed",y)});let o=G(l),a=e.handle.url,r=()=>o()?.tools?.threepane,t=B(()=>r(),{repo:e.repo}),n=G(t),s=()=>n()?.doctitle?.tools,i=()=>n()?.sidebar?.widgets??[],u=()=>n()?.tray??[],d=()=>o()?.rootFolderUrl,c=ie(),f=ae("left",{isCollapsed:c.isSidebarCollapsed,setCollapsed:c.setIsSidebarCollapsed,setWidth:c.setLeftSidebarWidth}),p,[w,E]=b(null),[Q,A]=b(null);ke(()=>{let y=ft(p,{type:"patchwork:selected-view"},x=>E(x));L(y)});let h=()=>w()?.url,D=()=>w()?.toolId??void 0,$=()=>oe(j.rightWidth,re),T=()=>ne(j.rightCollapsed),[Ce,Z]=b(),Ee=le(Ce,h),[ee,Te]=b(!1);return V(()=>{ee()||(e.isolation||!h()||Ee())&&Te(!0)}),(()=>{var y=nt(),x=p;return typeof x=="function"?C(x,y):p=y,v(y,m(_t,{accountDocUrl:a,sidebarState:c,sidebarResize:f,sidebarWidgets:i,traySlots:u,configHandle:t,rootFolderUrl:d,widgetsReady:ee,contactUrl:()=>o()?.contactUrl,moduleSettingsUrl:()=>o()?.moduleSettingsUrl,get isolation(){return e.isolation},onInterceptOpen:A,get children(){return m(S,{get when(){return h()},get fallback(){return(()=>{var O=it();return v(O,m(de,{viewKey:h,selectedDocUrl:h,toolId:D,ref:Z})),O})()},get children(){return m(S,{get when(){return e.isolation},get fallback(){return m(ue,{setMainDocElement:Z,selectedDocUrl:h,selectedToolId:D,doctitleSlots:s,get isLeftCollapsed(){return c.isSidebarCollapsed},initialRightWidth:$,initialRightCollapsed:T})},get children(){return m(fe,{get contactUrl(){return o()?.contactUrl},selectedDocUrl:h,selectedToolId:D,doctitleSlots:s,get isLeftCollapsed(){return c.isSidebarCollapsed},initialRightWidth:$,initialRightCollapsed:T})}})}})}}),null),v(y,m(S,{get when(){return Q()},children:O=>m(vt,{get view(){return O()},onClose:()=>A(null)})}),null),y})()}function vt(e){let[l,o]=b(e.view.toolId??void 0);V(()=>o(e.view.toolId??void 0));let a;return ke(()=>{let r=s=>{s.key==="Escape"&&e.onClose()};window.addEventListener("keydown",r),L(()=>window.removeEventListener("keydown",r));let t=a;if(!t)return;let n=s=>{let{url:i,toolId:u}=s.detail;i&&(s.stopPropagation(),o(u??void 0))};t.addEventListener("patchwork:open-document",n),L(()=>t.removeEventListener("patchwork:open-document",n))}),(()=>{var r=at(),t=r.firstChild,n=t.firstChild,s=n.firstChild,i=n.nextSibling,u=i.firstChild;r.$$click=()=>e.onClose(),t.$$click=c=>c.stopPropagation();var d=a;return typeof d=="function"?C(d,t):a=t,s._$owner=k(),u._$owner=k(),R(c=>{var f=e.view.url,p=e.view.url,w=l();return f!==c.e&&(s.docUrl=c.e=f),p!==c.t&&(u.docUrl=c.t=p),w!==c.a&&(u.toolId=c.a=w),c},{e:void 0,t:void 0,a:void 0}),r})()}function _t(e){let l=e.sidebarState.isSidebarCollapsed,o=()=>e.traySlots().length>0,a,r;return V(()=>{if(l())return;let t=a;if(!t)return;let n=r,s=i=>{let{url:u,toolId:d}=i.detail;if(e.isolation&&u&&n&&i.composedPath().includes(n)){i.stopPropagation(),e.onInterceptOpen?.({url:u,toolId:d??null});return}t.getBoundingClientRect().width<=window.innerWidth*.75||(e.sidebarState.setIsSidebarCollapsed(!0),window.dispatchEvent(new CustomEvent(te)))};t.addEventListener("patchwork:open-document",s),L(()=>t.removeEventListener("patchwork:open-document",s))}),[(()=>{var t=lt();return t.$$click=()=>e.sidebarState.setIsSidebarCollapsed(n=>!n),v(t,m(yt,{})),R(n=>{var s=l()?"Show sidebar":"Hide sidebar",i=l()?"Show sidebar":"Hide sidebar",u=!l();return s!==n.e&&Y(t,"title",n.e=s),i!==n.t&&Y(t,"aria-label",n.t=i),u!==n.a&&Y(t,"aria-pressed",n.a=u),n},{e:void 0,t:void 0,a:void 0}),t})(),m(se,{side:"left",isCollapsed:l,get width(){return e.sidebarState.leftSidebarWidth},get onMouseDown(){return e.sidebarResize.handleMouseDown},get onToggleClick(){return e.sidebarResize.handleToggleClick},get children(){var t=st(),n=t.firstChild,s=n.firstChild,i=s.firstChild,u=a;typeof u=="function"?C(u,t):a=t,v(t,m(he,{get widgets(){return e.sidebarWidgets},get configHandle(){return e.configHandle},get rootFolderUrl(){return e.rootFolderUrl},get ready(){return e.widgetsReady}}),n);var d=r;return typeof d=="function"?C(d,n):r=n,v(s,m(S,{get when(){return e.contactUrl()},children:c=>(()=>{var f=dt(),p=f.firstChild;return f.$$click=w=>J(w.currentTarget,{url:e.accountDocUrl,toolId:"account-picker"}),p._$owner=k(),R(()=>p.docUrl=c()),f})()}),i),v(s,m(S,{get when(){return e.moduleSettingsUrl()},children:c=>(()=>{var f=ut();return f.$$click=p=>J(p.currentTarget,{url:c(),toolId:"packages"}),f})()}),i),i.$$click=c=>J(c.currentTarget,{url:e.accountDocUrl,toolId:"frame-configurator"}),R(()=>t.classList.toggle("threepane-sidebar--has-tray",!!o())),t}}),m(S,{get when(){return o()},get children(){var t=ct();return v(t,m(ve,{get slots(){return e.traySlots}})),R(n=>{var s=!!l(),i=`${e.sidebarState.leftSidebarWidth()}px`;return s!==n.e&&t.classList.toggle("frame__tray-dock--collapsed",n.e=s),i!==n.t&&rt(t,"width",n.t=i),n},{e:void 0,t:void 0}),t}}),tt(()=>e.children)]}function yt(){return mt()}function Dr(e){return(l,o)=>ht(()=>m(gt,{handle:l,get repo(){return o.repo},isolation:e}),o)}et(["click"]);export{_t as FrameLayout,gt as PatchworkFrame,Dr as renderPatchworkFrame};
|
|
2
|
+
//# sourceMappingURL=PatchworkFrame-FEFTB5UT.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import{a as Ke,b as Wr}from"./chunk-FW4363Y4.js";var xt=Ke((Oi,_t)=>{var ne=1e3,ae=ne*60,ie=ae*60,Q=ie*24,lo=Q*7,co=Q*365.25;_t.exports=function(e,r){r=r||{};var t=typeof e;if(t==="string"&&e.length>0)return uo(e);if(t==="number"&&isFinite(e))return r.long?ho(e):po(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function uo(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*co;case"weeks":case"week":case"w":return t*lo;case"days":case"day":case"d":return t*Q;case"hours":case"hour":case"hrs":case"hr":case"h":return t*ie;case"minutes":case"minute":case"mins":case"min":case"m":return t*ae;case"seconds":case"second":case"secs":case"sec":case"s":return t*ne;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function po(e){var r=Math.abs(e);return r>=Q?Math.round(e/Q)+"d":r>=ie?Math.round(e/ie)+"h":r>=ae?Math.round(e/ae)+"m":r>=ne?Math.round(e/ne)+"s":e+"ms"}function ho(e){var r=Math.abs(e);return r>=Q?Ae(e,r,Q,"day"):r>=ie?Ae(e,r,ie,"hour"):r>=ae?Ae(e,r,ae,"minute"):r>=ne?Ae(e,r,ne,"second"):e+" ms"}function Ae(e,r,t,o){var n=r>=t*1.5;return Math.round(e/t)+" "+o+(n?"s":"")}});var Ct=Ke((zi,kt)=>{function fo(e){t.debug=t,t.default=t,t.coerce=l,t.disable=a,t.enable=n,t.enabled=d,t.humanize=xt(),t.destroy=c,Object.keys(e).forEach(s=>{t[s]=e[s]}),t.names=[],t.skips=[],t.formatters={};function r(s){let u=0;for(let p=0;p<s.length;p++)u=(u<<5)-u+s.charCodeAt(p),u|=0;return t.colors[Math.abs(u)%t.colors.length]}t.selectColor=r;function t(s){let u,p=null,b,w;function m(...h){if(!m.enabled)return;let f=m,_=Number(new Date),R=_-(u||_);f.diff=R,f.prev=u,f.curr=_,u=_,h[0]=t.coerce(h[0]),typeof h[0]!="string"&&h.unshift("%O");let F=0;h[0]=h[0].replace(/%([a-zA-Z%])/g,(G,Z)=>{if(G==="%%")return"%";F++;let M=t.formatters[Z];if(typeof M=="function"){let H=h[F];G=M.call(f,H),h.splice(F,1),F--}return G}),t.formatArgs.call(f,h),(f.log||t.log).apply(f,h)}return m.namespace=s,m.useColors=t.useColors(),m.color=t.selectColor(s),m.extend=o,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(b!==t.namespaces&&(b=t.namespaces,w=t.enabled(s)),w),set:h=>{p=h}}),typeof t.init=="function"&&t.init(m),m}function o(s,u){let p=t(this.namespace+(typeof u>"u"?":":u)+s);return p.log=this.log,p}function n(s){t.save(s),t.namespaces=s,t.names=[],t.skips=[];let u=(typeof s=="string"?s:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let p of u)p[0]==="-"?t.skips.push(p.slice(1)):t.names.push(p)}function i(s,u){let p=0,b=0,w=-1,m=0;for(;p<s.length;)if(b<u.length&&(u[b]===s[p]||u[b]==="*"))u[b]==="*"?(w=b,m=p,b++):(p++,b++);else if(w!==-1)b=w+1,m++,p=m;else return!1;for(;b<u.length&&u[b]==="*";)b++;return b===u.length}function a(){let s=[...t.names,...t.skips.map(u=>"-"+u)].join(",");return t.enable(""),s}function d(s){for(let u of t.skips)if(i(s,u))return!1;for(let u of t.names)if(i(s,u))return!0;return!1}function l(s){return s instanceof Error?s.stack||s.message:s}function c(){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}kt.exports=fo});var $t=Ke((P,De)=>{P.formatArgs=go;P.save=bo;P.load=vo;P.useColors=mo;P.storage=wo();P.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`."))}})();P.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 mo(){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 go(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+De.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)}P.log=console.debug||console.log||(()=>{});function bo(e){try{e?P.storage.setItem("debug",e):P.storage.removeItem("debug")}catch{}}function vo(){let e;try{e=P.storage.getItem("debug")||P.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function wo(){try{return localStorage}catch{}}De.exports=Ct()(P);var{formatters:yo}=De.exports;yo.j=function(e){try{return JSON.stringify(e)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}});import{template as Ur}from"solid-js/web";import{createComponent as ti}from"solid-js/web";import{setAttribute as ri}from"solid-js/web";import{effect as oi}from"solid-js/web";import{insert as jr}from"solid-js/web";import{getOwner as ni}from"solid-js/web";import{createMemo as Or}from"solid-js";import{createStore as si,reconcile as li}from"solid-js/store";import{render as ci}from"solid-js/web";import{template as ut}from"solid-js/web";import{insert as $e}from"solid-js/web";import{getOwner as qe}from"solid-js/web";import{use as Be}from"solid-js/web";import{createComponent as X}from"solid-js/web";import{createUniqueId as Nr,untrack as pt}from"solid-js";import{isServer as Hr,isDev as ht}from"solid-js/web";import{reconcile as qr}from"solid-js/store";function Ye(e,r={}){let t=r.storage||globalThis.localStorage,o=r.name||`storage-${Nr()}`;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),d=t.getItem(o,n),l=typeof e[0]=="function"?s=>{try{let u=a(s);e[1](()=>u)}catch(u){ht&&console.warn(u)}}:s=>{try{let u=a(s);e[1](qr(u))}catch(u){ht&&console.warn(u)}},c=!0;if(d instanceof Promise?d.then(s=>c&&s&&l(s)):d&&l(d),typeof r.sync?.[0]=="function"){let s=typeof e[0]=="function"?e[0]:()=>e[0];r.sync[0](u=>{u.key!==o||!Hr&&(u.url||globalThis.location.href)!==globalThis.location.href||u.newValue===i(pt(s))||l(u.newValue)})}return Object.assign([],e,{1:typeof e[0]=="function"?s=>{let u=e[1](s),p=s!=null?i(u):s;return r.sync?.[1](o,p),p!=null?t.setItem(o,p,n):t.removeItem(o,n),c=!1,u}:(...s)=>{e[1](...s);let u=pt(()=>i(e[0]));r.sync?.[1](o,u),t.setItem(o,u,n),c=!1},2:d})}import{createEffect as Rr,createMemo as Fr,createSignal as re,on as Pr,onCleanup as Ga,onMount as Za,Show as Je}from"solid-js";import{createEffect as ft,createSignal as mt,on as gt}from"solid-js";var B={leftCollapsed:"patchwork:leftSidebarCollapsed",rightCollapsed:"patchwork:rightSidebarCollapsed",leftWidth:"patchwork:leftSidebarWidth",rightWidth:"patchwork:rightSidebarWidth",contextToolId:"patchwork:contextSidebarToolId"},Ee="patchwork:collapse-context-sidebar",Te=400;function bt(e,r){let t=localStorage.getItem(e);return t?parseInt(t,10):r}function vt(e){return localStorage.getItem(e)==="true"}function Br(){let[e,r]=mt(vt(B.leftCollapsed)),[t,o]=mt(bt(B.leftWidth,Te));return ft(gt(e,n=>{localStorage.setItem(B.leftCollapsed,String(n))})),ft(gt(t,n=>{localStorage.setItem(B.leftWidth,String(n))})),{isSidebarCollapsed:e,setIsSidebarCollapsed:r,leftSidebarWidth:t,setLeftSidebarWidth:o}}import{onCleanup as Jr,onMount as Vr}from"solid-js";var wt=180,Kr=720,Yr=120,yt=3;function Xe(e,{isCollapsed:r,setCollapsed:t,setWidth:o}){let n=!1,i=null,a=!1,d=null,l=f=>{if(f<Yr){r()||t(!0),d=null;return}r()&&t(!1);let _=Math.min(Kr,f);o(_),d=_},c=()=>{r()||d!==null&&d<wt&&o(wt)},s=null,u=()=>{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)},p=()=>{n=!1,i=null,document.body.style.userSelect="",document.body.removeAttribute("data-sidebar-resizing"),s?.remove(),s=null},b=f=>{f.preventDefault(),i={x:f.clientX,y:f.clientY},a=!1,d=null,n=!0,document.body.style.userSelect="none"},w=()=>{let f=n,_=a;p(),f&&_&&c()},m=f=>{if(!n||!i)return;let _=Math.abs(f.clientX-i.x),R=Math.abs(f.clientY-i.y);!a&&(_>yt||R>yt)&&(a=!0,u()),l(e==="left"?f.clientX:window.innerWidth-f.clientX)},h=f=>{if(a){f.preventDefault(),f.stopPropagation(),a=!1;return}t(_=>!_)};return Vr(()=>{document.addEventListener("mousemove",m),document.addEventListener("mouseup",w),Jr(()=>{document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",w),n&&p()})}),{handleMouseDown:b,handleToggleClick:h}}import{createEffect as Xr,createSignal as Gr,onCleanup as Zr}from"solid-js";var oe=(e,r)=>{let[t,o]=Gr(!1);return Xr(()=>{let n=r();if(!n)return;o(!1);let i=a=>{a.detail?.componentId===e&&o(!0)};n.addEventListener("patchwork:mounted",i),Zr(()=>n.removeEventListener("patchwork:mounted",i))}),t};import{createEffect as Qr,createSignal as eo,onCleanup as to}from"solid-js";var ro=5e3,oo=(e,r)=>{let[t,o]=eo(!1);return Qr(()=>{if(t())return;let n=e(),i=r();if(!n||!i)return;let a=l=>{let c=l.detail;c?.url&&c.url!==i||o(!0)};n.addEventListener("patchwork:mounted",a),n.addEventListener("patchwork:no-tool",a);let d=setTimeout(()=>o(!0),ro);to(()=>{n.removeEventListener("patchwork:mounted",a),n.removeEventListener("patchwork:no-tool",a),clearTimeout(d)})}),t};import{getRegistry as no}from"@inkandswitch/patchwork-plugins";import{createMemo as ao,createSignal as io,onCleanup as so}from"solid-js";function me(e){let r=no("patchwork:component"),[t,o]=io(0),n=r.on("changed",()=>o(i=>i+1));return so(n),ao(()=>(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 _e}from"solid-js/web";import{delegateEvents as un}from"solid-js/web";import{getOwner as pn}from"solid-js/web";import{effect as Zt}from"solid-js/web";import{setAttribute as hn}from"solid-js/web";import{memo as Qt}from"solid-js/web";import{insert as ce}from"solid-js/web";import{createComponent as de}from"solid-js/web";import{For as wn,Show as rt}from"solid-js";import{template as Pt}from"solid-js/web";import{delegateEvents as Io}from"solid-js/web";import{setAttribute as Ro}from"solid-js/web";import{insert as Fo}from"solid-js/web";import"solid-js/web";import{effect as Ft}from"solid-js/web";import{use as Lt}from"solid-js/web";import{createComponent as Ge}from"solid-js/web";var Tt=Wr($t(),1),At=(0,Tt.default)("cabbages");function St(e){return typeof e=="object"&&typeof e!=null&&Object.getPrototypeOf(e)==Object.prototype}var _o="\uFFFC";function Dt(e,...r){if(r.length==0){At("empty patch");return}let[t,o,n]=r,i=[...t];for(;;){let a=i.shift();if(!i.length){let l=Array.isArray(o);if(St(e)&&l&&typeof a>"u"&&typeof o[0]=="string"){delete e[o[0]];return}if(l||typeof o=="number"){if(typeof a>"u")throw new Error("cant treat top level as a seq");a=a;let[c,s]=Array.isArray(o)?o:[o,o+1],u=Array.isArray(o)&&o.length==0;if(!u&&(c==null||s==null))throw new RangeError("it's all or nothing, no half measures");let p=typeof n>"u",b=c===s&&!p,w=u&&!p,m=!b&&!p&&!w;if(typeof e[a]>"u"){if(typeof e=="string")return;typeof n=="string"?e[a]="":e[a]=[]}let h=e[a];if(Array.isArray(h)){if(w){Array.isArray(n)?h.push(...n):h.push(n);return}if(b||m){Array.isArray(n)?h.splice(c,s-c,...n):h.splice(c,s-c,n);return}if(p){h.splice(c,s-c);return}throw new Error("i don't know what happened")}if(typeof h=="string"){if(w){e[a]=h+n;return}if(m||b){e[a]=h.slice(0,c)+(typeof n=="string"?n:n.map(f=>typeof f=="string"?f:_o).join(""))+h.slice(s);return}if(p){e[a]=h.slice(0,c)+h.slice(s);return}throw new Error("i don't know what happened")}if(St(h)&&l&&typeof o[0]=="string"){delete h[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]={}),l){let[c,s]=o;c!=null&&s!=null&&(typeof n>"u"&&c!=null&&s!=null?delete e[a][c||s]:e[a][c||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 d=i[0];if(typeof e[a]>"u")if(typeof d=="string")e[a]={};else if(typeof d=="number")e[a]=[];else throw new Error(`can't go down this road ${e}.${a}.${d}`);e=e[a]}}function Et(e,r){for(let t=0;t<r.length;t++)e=e?e[r[t]]:void 0;return e}function It(e,r){let t=e.path.slice(0,-1),o=e.path[e.path.length-1];switch(e.action){case"mark":case"unmark":return At(`skipping ${e.action} because it doesn't affect material reality`),[];case"inc":if(r)return[t,o,Et(r.patchInfo.after,e.path)];throw new Error(`can't apply ${e.action} without payload argument`);case"conflict":if(r)return[t,o,Et(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],structuredClone(e.values)];case"splice":return[t,[o,o],[e.value]];case"put":return[t,o,structuredClone(e.value)]}}function Ie(e){return r=>{for(let t of e.patches)Dt(r,...It(t,e))}}import{createMemo as $o}from"solid-js";import{onCleanup as xo}from"solid-js";import{createStore as ko,produce as Co,reconcile as Rt}from"solid-js/store";var ge=new WeakMap;function Re(e){if(xo(()=>{let i=ge.get(e);i&&(i.refs--||i.cleanup())}),ge.has(e)){let i=ge.get(e);return i.refs++,i.store}let[r,t]=ko(structuredClone(e.doc()));ge.set(e,{refs:0,store:r,cleanup(){e.off("change",o),e.off("delete",n),ge.delete(e)}});function o(i){if(i.scopeReplaced){t(Rt(i.doc??{}));return}t(Co(Ie(i)))}function n(){t(Rt({}))}return e.on("change",o),e.on("delete",n),e.whenReady().then(()=>{t(structuredClone(e.doc()))}),r}import{getOwner as Vi,onCleanup as Ki,createSignal as Yi,untrack as Xi,sharedConfig as Gi,onMount as Zi,DEV as Qi,equalFn as es}from"solid-js";import{isServer as rs}from"solid-js/web";var se=e=>typeof e=="function"&&!e.length?e():e;function Fe(e){return $o(()=>se(e)&&Re(se(e)))}import{createEffect as Eo,createResource as To,useContext as Ao}from"solid-js";import{createContext as So}from"solid-js";var Pe=So(null);function be(e,r){let t=Ao(Pe);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 d=se(e);if(!d)return;let l=o.findWithProgress(d).peek();return l.state==="ready"?l.handle:void 0}let[i,{mutate:a}]=To(e,d=>o.findWithProgress(d).whenReady(),{initialValue:n()});return Eo(()=>{se(e)||a()}),i}function Le(e,r){let t=be(e,r);return[Fe(t),t]}import{onCleanup as ws}from"solid-js";import{createSignal as _s}from"solid-js";import{createEffect as Cs,onCleanup as $s}from"solid-js";import{createSignal as Es}from"solid-js";import{useContext as Ps}from"solid-js";import{getType as Lo}from"@inkandswitch/patchwork-filesystem";import{getRegistry as Mo,isLoadedPlugin as Oo}from"@inkandswitch/patchwork-plugins";import{createEffect as zo,createMemo as Me,createSignal as Ze,onCleanup as Uo,onMount as Ot,Show as zt}from"solid-js";var Mt=Pt("<span class=threepane__title-text>"),Po=Pt("<input class=threepane__title-input type=text>");function Ut(e){let r,[t,o]=Ze();return Ot(()=>{o(r.closest("repo-provider")?.repo)}),Ge(zt,{get when(){return t()},get fallback(){return(()=>{var n=Mt(),i=r;return typeof i=="function"?Lt(i,n):r=n,n})()},children:n=>Ge(jo,{get docUrl(){return e.docUrl},get repo(){return n()}})})}function jo(e){let[r,t]=Le(()=>e.docUrl(),{repo:e.repo}),o=Mo("patchwork:datatype"),[n,i]=Ze(0);Ot(()=>{let m=o.on("changed",()=>i(h=>h+1));Uo(m)});let a=Me(()=>{let m=r();return m?Lo(m):void 0});zo(()=>{let m=a();m&&o.load(m)});let d=Me(()=>{n();let m=a();if(!m)return;let h=o.get(m);return h&&Oo(h)?h:void 0}),l=Me(()=>{let m=r(),h=d();if(!(!m||!h))return h.module.getTitle(m)}),c=Me(()=>!!t()&&typeof d()?.module.setTitle=="function"),[s,u]=Ze(!1),p;function b(){c()&&(u(!0),queueMicrotask(()=>{p?.focus(),p?.select()}))}function w(m){if(!s()||(u(!1),!m))return;let h=p?.value.trim();if(!h||h===l())return;let f=t(),_=d()?.module.setTitle;!f||!_||f.change(R=>{_(R,h);let F=R["@patchwork"];F&&(F.title=h)})}return Ge(zt,{get when(){return s()},get fallback(){return(()=>{var m=Mt();return m.$$click=b,Fo(m,()=>l()??"Untitled"),Ft(h=>{var f=!!c(),_=c()?"Rename":void 0;return f!==h.e&&m.classList.toggle("threepane__title-text--editable",h.e=f),_!==h.t&&Ro(m,"title",h.t=_),h},{e:void 0,t:void 0}),m})()},get children(){var m=Po();m.$$keydown=f=>{f.key==="Enter"?(f.preventDefault(),w(!0)):f.key==="Escape"&&(f.preventDefault(),w(!1))},m.addEventListener("blur",()=>w(!0));var h=p;return typeof h=="function"?Lt(h,m):p=m,Ft(()=>m.value=l()??""),m}})}Io(["keydown","click"]);import{template as ye}from"solid-js/web";import{delegateEvents as Qo}from"solid-js/web";import{getOwner as en}from"solid-js/web";import{insert as we}from"solid-js/web";import{createComponent as le}from"solid-js/web";import{Show as Qe}from"solid-js";import{template as Ht}from"solid-js/web";import{delegateEvents as Wo}from"solid-js/web";import{setStyleProperty as No}from"solid-js/web";import{insert as Ho}from"solid-js/web";import{setAttribute as Oe}from"solid-js/web";import{effect as jt}from"solid-js/web";import{memo as ve}from"solid-js/web";import{createComponent as Wt}from"solid-js/web";import{Show as Nt}from"solid-js";var qo=Ht('<button class="sidebar-toggle sidebar-toggle--resizable">'),Bo=Ht("<div class=sidebar>");function qt(e){let r=()=>`${e.isCollapsed()?0:e.width()}px`,t=()=>e.canExpand?.()??!0,o=()=>Wt(Nt,{get when(){return!e.isCollapsed()},get children(){return e.children}}),n=()=>Wt(Nt,{get when(){return!e.isCollapsed()||t()},get children(){var i=qo();return i.$$mousedown=a=>e.onMouseDown(a),i.$$click=a=>e.onToggleClick(a),jt(a=>{var d=e.isCollapsed()?"Expand sidebar":"Toggle or resize sidebar",l=e.isCollapsed()?"Click to expand, drag to resize":"Click to toggle, drag to resize";return d!==a.e&&Oe(i,"aria-label",a.e=d),l!==a.t&&Oe(i,"title",a.t=l),a},{e:void 0,t:void 0}),i}});return(()=>{var i=Bo();return Ho(i,(()=>{var a=ve(()=>e.side==="left");return()=>a()?[ve(o),ve(n)]:[ve(n),ve(o)]})()),jt(a=>{var d=e.side,l=e.isCollapsed()?"":void 0,c=r();return d!==a.e&&Oe(i,"data-side",a.e=d),l!==a.t&&Oe(i,"data-collapsed",a.t=l),c!==a.a&&No(i,"width",a.a=c),a},{e:void 0,t:void 0,a:void 0}),i})()}Wo(["click","mousedown"]);import{template as Jt}from"solid-js/web";import{delegateEvents as Jo}from"solid-js/web";import{setAttribute as Vo}from"solid-js/web";import{effect as Ko}from"solid-js/web";import{insert as Bt}from"solid-js/web";import{createComponent as Yo}from"solid-js/web";import{For as Zo}from"solid-js";var Xo=Jt("<div role=tablist class=context-sidebar__tablist>"),Go=Jt("<button type=button role=tab class=context-sidebar__tab>");function Vt(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=Xo();return Bt(t,Yo(Zo,{get each(){return e.items()},children:o=>(()=>{var n=Go();return n.$$click=()=>e.setSelectedToolId(o.id),Bt(n,()=>o.name),Ko(()=>Vo(n,"data-active",r()===o.id?"":void 0)),n})()})),t})()}Jo(["click"]);var tn=ye('<div class=context-sidebar__tabs><button type=button class=context-sidebar__close title="Hide context sidebar"aria-label="Hide context sidebar">'),rn=ye("<div class=context-sidebar__content>"),on=ye("<div class=context-sidebar>"),nn=ye("<patchwork-view>",!0,!1,!1),an=ye('<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 Kt(e){let r=me("context-tool"),t=()=>{let o=r().map(i=>i.id),n=e.selectedToolId();return n&&o.includes(n)?n:o[0]};return le(qt,{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=on();return we(o,le(Qe,{get when(){return r().length},get children(){var n=tn(),i=n.firstChild;return we(n,le(Vt,{items:r,get selectedToolId(){return e.selectedToolId},get setSelectedToolId(){return e.setSelectedToolId}}),i),i.$$click=()=>e.onCollapse(),we(i,le(et,{})),n}}),null),we(o,le(Qe,{get when(){return!e.isCollapsed()},get children(){var n=rn();return we(n,le(Qe,{get when(){return t()},keyed:!0,children:i=>(()=>{var a=nn();return a.component=i,a._$owner=en(),a})()})),n}}),null),o}})}function et(){return an()}Qo(["click"]);import{template as sn}from"solid-js/web";import{effect as Yt}from"solid-js/web";import{getOwner as Xt}from"solid-js/web";import{createComponent as ln}from"solid-js/web";import{memo as cn}from"solid-js/web";import{Show as dn}from"solid-js";var Gt=sn("<patchwork-view>",!0,!1,!1),tt=e=>Array.isArray(e)?String(e[0]):String(e);function ql(e){let r=new Set;return e.filter(t=>{let o=tt(t);return r.has(o)?!1:(r.add(o),!0)})}function Bl(e){return ln(dn,{get when(){return cn(()=>!!Array.isArray(e.slot))()?e.slot:!1},get fallback(){return(()=>{var r=Gt();return r._$owner=Xt(),Yt(()=>r.component=String(e.slot)),r})()},children:r=>(()=>{var t=Gt();return t._$owner=Xt(),Yt(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 fn=_e("<div class=threepane__title>"),mn=_e("<div class=threepane__doctitle-tools>"),gn=_e('<button type=button class=frame__sidebar-toggle title="Show context sidebar"aria-label="Show context sidebar">'),bn=_e("<div class=frame__topbar><div class=threepane__spacer>"),vn=_e("<patchwork-view>",!0,!1,!1);function er(e){let r=()=>e.toolSlots()??[];return(()=>{var t=bn(),o=t.firstChild;return ce(t,de(rt,{get when(){return e.docUrl()},get children(){var n=fn();return ce(n,de(Ut,{get docUrl(){return e.docUrl}})),n}}),o),ce(t,de(rt,{get when(){return Qt(()=>!!e.docUrl())()&&r().length},get children(){var n=mn();return ce(n,de(wn,{get each(){return r()},children:i=>(()=>{var a=vn();return a._$owner=pn(),Zt(d=>{var l=tt(i),c=e.docUrl();return l!==d.e&&(a.toolId=d.e=l),c!==d.t&&(a.docUrl=d.t=c),d},{e:void 0,t:void 0}),a})()})),n}}),null),ce(t,de(rt,{get when(){return Qt(()=>!!e.hasContext())()&&e.isRightCollapsed()},get children(){var n=gn();return n.$$click=()=>e.onToggleRight(),hn(n,"aria-pressed",!1),ce(n,de(et,{})),n}}),null),Zt(()=>t.classList.toggle("frame__topbar--left-collapsed",!!e.isLeftCollapsed())),t})()}un(["click"]);import{template as He}from"solid-js/web";import{effect as Sr}from"solid-js/web";import{getOwner as Er}from"solid-js/web";import{insert as V}from"solid-js/web";import{createComponent as I}from"solid-js/web";import{memo as Ce}from"solid-js/web";import{use as Tr}from"solid-js/web";import{parseAutomergeUrl as za}from"@automerge/automerge-repo/slim";import{getSuggestedImportUrl as Ua,getType as ja}from"@inkandswitch/patchwork-filesystem";import{getFallbackTool as Wa,getRegistry as Na}from"@inkandswitch/patchwork-plugins";import{createEffect as dt,createMemo as Ne,createSignal as J,onCleanup as te,onMount as Ha,Show as W}from"solid-js";import{template as C}from"solid-js/web";import{delegateEvents as na}from"solid-js/web";import{setAttribute as We}from"solid-js/web";import{effect as lt}from"solid-js/web";import"solid-js/web";import{createComponent as A}from"solid-js/web";import{insert as D}from"solid-js/web";import{use as aa}from"solid-js/web";import{importPackage as Aa}from"@inkandswitch/patchwork-filesystem";import{registerPlugins as Da}from"@inkandswitch/patchwork-plugins";import{createResource as Ia,createSignal as pe,onCleanup as st,onMount as Ra,Show as j}from"solid-js";import{template as k}from"solid-js/web";import{delegateEvents as En}from"solid-js/web";import{effect as pr}from"solid-js/web";import{memo as Tn}from"solid-js/web";import{insert as v}from"solid-js/web";import{createComponent as x}from"solid-js/web";import{use as An}from"solid-js/web";import{setAttribute as xe}from"solid-js/web";import{createResource as Zn,createSignal as Ue,For as it,Match as ue,onMount as Qn,Show as O,Switch as lr}from"solid-js";import*as rr from"@automerge/automerge/slim";import{getImportableUrlFromAutomergeUrl as yn}from"@inkandswitch/patchwork-filesystem";var ot=e=>e.startsWith("automerge:");function _n(e){return e.replace(/[#?].*$/,"")}function or(e){let r=e.split("#")[1];return r?r.split("|").filter(Boolean):[]}var U=e=>typeof e=="string"&&e.trim()?e.trim():void 0;function xn(e){if(typeof e=="string")return U(e);if(e&&typeof e=="object"){let{name:r,email:t}=e,o=U(r),n=U(t);return o&&n?`${o} <${n}>`:o??n}}function nr(e){if(!e||typeof e!="object")return{};let r=e,t=r.supportedDatatypes;return{id:U(r.id),name:U(r.name),type:U(r.type),supportedDatatypes:typeof t=="string"?[t]:Array.isArray(t)?t.filter(o=>typeof o=="string"):void 0}}async function tr(e){try{let r=await fetch(e);return r.ok?await r.json():void 0}catch{return}}var kn=new Set(["dist","build","lib","out","esm","src","public"]);async function Cn(e){if(ot(e)){let o=yn(e);return tr(new URL("package.json",o).href)}let r;try{r=new URL(e)}catch{return}let t=r.pathname.split("/").filter(Boolean);for(/\.[a-z0-9]+$/i.test(t.at(-1)??"")&&t.pop();;){let o=`${r.origin}/${t.join("/")}${t.length?"/":""}`,n=await tr(new URL("package.json",o).href);if(n&&typeof n=="object")return n;if(!kn.has(t.at(-1)?.toLowerCase()??""))return;t.pop()}}async function ar(e){let r=await Cn(e);if(r)return{name:U(r.name),title:U(r.title),version:U(r.version),description:U(r.description),author:xn(r.author),plugins:Array.isArray(r.plugins)?r.plugins.map(nr):void 0}}var ze,$n=1,ee=new Map;function Sn(){if(ze)return ze;let e=new Worker("/module-loader-worker.js",{type:"module",name:"threepane-package-preview"});return e.addEventListener("message",r=>{let t=r.data,o=t&&ee.get(t.id);o&&(ee.delete(t.id),t.type==="descriptors"?o.resolve(t.descriptors.map(nr)):o.reject(new Error(t.error)))}),e.addEventListener("error",r=>{let t=new Error(`the background worker stopped: ${r.message??"no reason given"}`);for(let o of ee.values())o.reject(t);ee.clear(),ze=void 0}),ze=e,e}function ir(e,r=15e3){let t=$n++;return new Promise((o,n)=>{let i=setTimeout(()=>{ee.delete(t)&&n(new Error("it took too long to answer"))},r);ee.set(t,{resolve:a=>{clearTimeout(i),o(a)},reject:a=>{clearTimeout(i),n(a)}});try{Sn().postMessage({type:"discover",id:t,url:e})}catch(a){clearTimeout(i),ee.delete(t),n(a instanceof Error?a:new Error(String(a)))}})}async function sr(e,r){let t=await e.find(_n(r)),o=t.doc();await new Promise(a=>setTimeout(a,0));let n=rr.getChangesMetaSince(o,[]),i=new Map;for(let a of n){let d=a.time??0,l=i.get(a.actor);if(!l){i.set(a.actor,{actor:a.actor,changes:1,first:d,last:d});continue}l.changes++,d&&(!l.first||d<l.first)&&(l.first=d),d>l.last&&(l.last=d)}return{heads:[...t.heads()],changes:n.length,writers:[...i.values()].sort((a,d)=>d.changes-a.changes)}}var Dn=k("<button type=button class=doc-card__link>see package details"),In=k("<p class=pkg-about__quiet>reading\u2026"),Rn=k("<p class=pkg-about__quiet>no package.json."),Fn=k("<dl class=pkg-about__facts><dt>plugins</dt><dd>"),Pn=k("<dt>pinned"),at=k("<dd>"),nt=k("<dt>history"),Ln=k("<dd class=pkg-about__quiet>reading\u2026"),Mn=k("<dd class=pkg-about__quiet>couldn't get its folder."),On=k('<div class=pkg-about popover=auto><header class=pkg-about__header><h3 class=doc-card__rough></h3><button type=button class="doc-card__link pkg-about__close"popovertargetaction=hide aria-label=close>\xD7</button></header><section class="pkg-about__section pkg-about__section--claims"><h4>self-reported <span class=pkg-about__tag>unverified</span></h4></section><section class=pkg-about__section><h4>source</h4><dl class=pkg-about__facts><dt>url</dt><dd><code class="doc-card__code doc-card__url">'),zn=k("<span class=pkg-about__version> "),Un=k("<button type=button class=doc-card__link>"),jn=k("<span class=pkg-about__quiet>unknown until loaded"),Wn=k("<p class=doc-card__notice>"),Nn=k("<dt>heads"),Hn=k("<dd> <!>, <!> <p class=pkg-about__quiet>writers are devices, not people. folder only."),qn=k("<dt>"),hr=k("<ul class=pkg-about__list>"),Bn=k("<span>nothing"),Jn=k("<span class=pkg-about__quiet> for "),Vn=k("<li>"),fr=k("<span class=pkg-about__quiet> \xB7 "),Kn=k("<span class=pkg-about__heads>"),Yn=k("<code class=doc-card__code>"),Xn=k("<li class=pkg-about__quiet>and <!> more"),Gn=k("<li><code class=doc-card__code></code> <!> "),ea=0;function mr(e){let r=`pkg-about-${++ea}`,t=ot(e.url),o=or(e.url),[n,i]=Ue(!1),[a]=Zn(()=>n()&&t?e.url:void 0,f=>sr(e.repo,f)),[d,l]=Ue(!1),[c,s]=Ue(),[u,p]=Ue();async function b(){if(window.confirm(`Listing its plugins runs the package's code in a background worker.
|
|
1
|
+
import{a as Ke,b as Nr}from"./chunk-FW4363Y4.js";var xt=Ke((ji,_t)=>{var ne=1e3,ae=ne*60,ie=ae*60,Q=ie*24,uo=Q*7,po=Q*365.25;_t.exports=function(e,r){r=r||{};var t=typeof e;if(t==="string"&&e.length>0)return ho(e);if(t==="number"&&isFinite(e))return r.long?mo(e):fo(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function ho(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*po;case"weeks":case"week":case"w":return t*uo;case"days":case"day":case"d":return t*Q;case"hours":case"hour":case"hrs":case"hr":case"h":return t*ie;case"minutes":case"minute":case"mins":case"min":case"m":return t*ae;case"seconds":case"second":case"secs":case"sec":case"s":return t*ne;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}function fo(e){var r=Math.abs(e);return r>=Q?Math.round(e/Q)+"d":r>=ie?Math.round(e/ie)+"h":r>=ae?Math.round(e/ae)+"m":r>=ne?Math.round(e/ne)+"s":e+"ms"}function mo(e){var r=Math.abs(e);return r>=Q?Ae(e,r,Q,"day"):r>=ie?Ae(e,r,ie,"hour"):r>=ae?Ae(e,r,ae,"minute"):r>=ne?Ae(e,r,ne,"second"):e+" ms"}function Ae(e,r,t,o){var n=r>=t*1.5;return Math.round(e/t)+" "+o+(n?"s":"")}});var Ct=Ke((Wi,kt)=>{function go(e){t.debug=t,t.default=t,t.coerce=l,t.disable=a,t.enable=n,t.enabled=d,t.humanize=xt(),t.destroy=c,Object.keys(e).forEach(s=>{t[s]=e[s]}),t.names=[],t.skips=[],t.formatters={};function r(s){let u=0;for(let p=0;p<s.length;p++)u=(u<<5)-u+s.charCodeAt(p),u|=0;return t.colors[Math.abs(u)%t.colors.length]}t.selectColor=r;function t(s){let u,p=null,b,w;function m(...h){if(!m.enabled)return;let f=m,_=Number(new Date),R=_-(u||_);f.diff=R,f.prev=u,f.curr=_,u=_,h[0]=t.coerce(h[0]),typeof h[0]!="string"&&h.unshift("%O");let F=0;h[0]=h[0].replace(/%([a-zA-Z%])/g,(G,Z)=>{if(G==="%%")return"%";F++;let M=t.formatters[Z];if(typeof M=="function"){let q=h[F];G=M.call(f,q),h.splice(F,1),F--}return G}),t.formatArgs.call(f,h),(f.log||t.log).apply(f,h)}return m.namespace=s,m.useColors=t.useColors(),m.color=t.selectColor(s),m.extend=o,m.destroy=t.destroy,Object.defineProperty(m,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(b!==t.namespaces&&(b=t.namespaces,w=t.enabled(s)),w),set:h=>{p=h}}),typeof t.init=="function"&&t.init(m),m}function o(s,u){let p=t(this.namespace+(typeof u>"u"?":":u)+s);return p.log=this.log,p}function n(s){t.save(s),t.namespaces=s,t.names=[],t.skips=[];let u=(typeof s=="string"?s:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let p of u)p[0]==="-"?t.skips.push(p.slice(1)):t.names.push(p)}function i(s,u){let p=0,b=0,w=-1,m=0;for(;p<s.length;)if(b<u.length&&(u[b]===s[p]||u[b]==="*"))u[b]==="*"?(w=b,m=p,b++):(p++,b++);else if(w!==-1)b=w+1,m++,p=m;else return!1;for(;b<u.length&&u[b]==="*";)b++;return b===u.length}function a(){let s=[...t.names,...t.skips.map(u=>"-"+u)].join(",");return t.enable(""),s}function d(s){for(let u of t.skips)if(i(s,u))return!1;for(let u of t.names)if(i(s,u))return!0;return!1}function l(s){return s instanceof Error?s.stack||s.message:s}function c(){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}kt.exports=go});var $t=Ke((P,De)=>{P.formatArgs=vo;P.save=wo;P.load=yo;P.useColors=bo;P.storage=_o();P.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`."))}})();P.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 bo(){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 vo(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+De.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)}P.log=console.debug||console.log||(()=>{});function wo(e){try{e?P.storage.setItem("debug",e):P.storage.removeItem("debug")}catch{}}function yo(){let e;try{e=P.storage.getItem("debug")||P.storage.getItem("DEBUG")}catch{}return!e&&typeof process<"u"&&"env"in process&&(e=process.env.DEBUG),e}function _o(){try{return localStorage}catch{}}De.exports=Ct()(P);var{formatters:xo}=De.exports;xo.j=function(e){try{return JSON.stringify(e)}catch(r){return"[UnexpectedJSONParseError]: "+r.message}}});import{template as Wr}from"solid-js/web";import{createComponent as ni}from"solid-js/web";import{setAttribute as ai}from"solid-js/web";import{effect as ii}from"solid-js/web";import{insert as Hr}from"solid-js/web";import{getOwner as si}from"solid-js/web";import{createMemo as Ur}from"solid-js";import{createStore as di,reconcile as ui}from"solid-js/store";import{render as pi}from"solid-js/web";import{template as ut}from"solid-js/web";import{insert as $e}from"solid-js/web";import{getOwner as qe}from"solid-js/web";import{use as Be}from"solid-js/web";import{createComponent as X}from"solid-js/web";import{createUniqueId as qr,untrack as pt}from"solid-js";import{isServer as Br,isDev as ht}from"solid-js/web";import{reconcile as Jr}from"solid-js/store";function Ye(e,r={}){let t=r.storage||globalThis.localStorage,o=r.name||`storage-${qr()}`;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),d=t.getItem(o,n),l=typeof e[0]=="function"?s=>{try{let u=a(s);e[1](()=>u)}catch(u){ht&&console.warn(u)}}:s=>{try{let u=a(s);e[1](Jr(u))}catch(u){ht&&console.warn(u)}},c=!0;if(d instanceof Promise?d.then(s=>c&&s&&l(s)):d&&l(d),typeof r.sync?.[0]=="function"){let s=typeof e[0]=="function"?e[0]:()=>e[0];r.sync[0](u=>{u.key!==o||!Br&&(u.url||globalThis.location.href)!==globalThis.location.href||u.newValue===i(pt(s))||l(u.newValue)})}return Object.assign([],e,{1:typeof e[0]=="function"?s=>{let u=e[1](s),p=s!=null?i(u):s;return r.sync?.[1](o,p),p!=null?t.setItem(o,p,n):t.removeItem(o,n),c=!1,u}:(...s)=>{e[1](...s);let u=pt(()=>i(e[0]));r.sync?.[1](o,u),t.setItem(o,u,n),c=!1},2:d})}import{createEffect as Pr,createMemo as Lr,createSignal as re,on as Mr,onCleanup as ei,onMount as ti,Show as Je}from"solid-js";import{createEffect as ft,createSignal as mt,on as gt}from"solid-js";var B={leftCollapsed:"patchwork:leftSidebarCollapsed",rightCollapsed:"patchwork:rightSidebarCollapsed",leftWidth:"patchwork:leftSidebarWidth",rightWidth:"patchwork:rightSidebarWidth",contextToolId:"patchwork:contextSidebarToolId"},Ee="patchwork:collapse-context-sidebar",Te=400;function bt(e,r){let t=localStorage.getItem(e);return t?parseInt(t,10):r}function vt(e){return localStorage.getItem(e)==="true"}function Vr(){let[e,r]=mt(vt(B.leftCollapsed)),[t,o]=mt(bt(B.leftWidth,Te));return ft(gt(e,n=>{localStorage.setItem(B.leftCollapsed,String(n))})),ft(gt(t,n=>{localStorage.setItem(B.leftWidth,String(n))})),{isSidebarCollapsed:e,setIsSidebarCollapsed:r,leftSidebarWidth:t,setLeftSidebarWidth:o}}import{onCleanup as Kr,onMount as Yr}from"solid-js";var wt=180,Xr=720,Gr=120,yt=3;function Xe(e,{isCollapsed:r,setCollapsed:t,setWidth:o}){let n=!1,i=null,a=!1,d=null,l=f=>{if(f<Gr){r()||t(!0),d=null;return}r()&&t(!1);let _=Math.min(Xr,f);o(_),d=_},c=()=>{r()||d!==null&&d<wt&&o(wt)},s=null,u=()=>{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)},p=()=>{n=!1,i=null,document.body.style.userSelect="",document.body.removeAttribute("data-sidebar-resizing"),s?.remove(),s=null},b=f=>{f.preventDefault(),i={x:f.clientX,y:f.clientY},a=!1,d=null,n=!0,document.body.style.userSelect="none"},w=()=>{let f=n,_=a;p(),f&&_&&c()},m=f=>{if(!n||!i)return;let _=Math.abs(f.clientX-i.x),R=Math.abs(f.clientY-i.y);!a&&(_>yt||R>yt)&&(a=!0,u()),l(e==="left"?f.clientX:window.innerWidth-f.clientX)},h=f=>{if(a){f.preventDefault(),f.stopPropagation(),a=!1;return}t(_=>!_)};return Yr(()=>{document.addEventListener("mousemove",m),document.addEventListener("mouseup",w),Kr(()=>{document.removeEventListener("mousemove",m),document.removeEventListener("mouseup",w),n&&p()})}),{handleMouseDown:b,handleToggleClick:h}}import{createEffect as Zr,createSignal as Qr,onCleanup as eo}from"solid-js";var oe=(e,r)=>{let[t,o]=Qr(!1);return Zr(()=>{let n=r();if(!n)return;o(!1);let i=a=>{a.detail?.componentId===e&&o(!0)};n.addEventListener("patchwork:mounted",i),eo(()=>n.removeEventListener("patchwork:mounted",i))}),t};import{createEffect as to,createSignal as ro,onCleanup as oo}from"solid-js";var no=5e3,ao=(e,r)=>{let[t,o]=ro(!1);return to(()=>{if(t())return;let n=e(),i=r();if(!n||!i)return;let a=l=>{let c=l.detail;c?.url&&c.url!==i||o(!0)};n.addEventListener("patchwork:mounted",a),n.addEventListener("patchwork:no-tool",a);let d=setTimeout(()=>o(!0),no);oo(()=>{n.removeEventListener("patchwork:mounted",a),n.removeEventListener("patchwork:no-tool",a),clearTimeout(d)})}),t};import{getRegistry as io}from"@inkandswitch/patchwork-plugins";import{createMemo as so,createSignal as lo,onCleanup as co}from"solid-js";function me(e){let r=io("patchwork:component"),[t,o]=lo(0),n=r.on("changed",()=>o(i=>i+1));return co(n),so(()=>(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 _e}from"solid-js/web";import{delegateEvents as hn}from"solid-js/web";import{getOwner as fn}from"solid-js/web";import{effect as Zt}from"solid-js/web";import{setAttribute as mn}from"solid-js/web";import{memo as Qt}from"solid-js/web";import{insert as ce}from"solid-js/web";import{createComponent as de}from"solid-js/web";import{For as _n,Show as rt}from"solid-js";import{template as Pt}from"solid-js/web";import{delegateEvents as Fo}from"solid-js/web";import{setAttribute as Po}from"solid-js/web";import{insert as Lo}from"solid-js/web";import"solid-js/web";import{effect as Ft}from"solid-js/web";import{use as Lt}from"solid-js/web";import{createComponent as Ge}from"solid-js/web";var Tt=Nr($t(),1),At=(0,Tt.default)("cabbages");function St(e){return typeof e=="object"&&typeof e!=null&&Object.getPrototypeOf(e)==Object.prototype}var ko="\uFFFC";function Dt(e,...r){if(r.length==0){At("empty patch");return}let[t,o,n]=r,i=[...t];for(;;){let a=i.shift();if(!i.length){let l=Array.isArray(o);if(St(e)&&l&&typeof a>"u"&&typeof o[0]=="string"){delete e[o[0]];return}if(l||typeof o=="number"){if(typeof a>"u")throw new Error("cant treat top level as a seq");a=a;let[c,s]=Array.isArray(o)?o:[o,o+1],u=Array.isArray(o)&&o.length==0;if(!u&&(c==null||s==null))throw new RangeError("it's all or nothing, no half measures");let p=typeof n>"u",b=c===s&&!p,w=u&&!p,m=!b&&!p&&!w;if(typeof e[a]>"u"){if(typeof e=="string")return;typeof n=="string"?e[a]="":e[a]=[]}let h=e[a];if(Array.isArray(h)){if(w){Array.isArray(n)?h.push(...n):h.push(n);return}if(b||m){Array.isArray(n)?h.splice(c,s-c,...n):h.splice(c,s-c,n);return}if(p){h.splice(c,s-c);return}throw new Error("i don't know what happened")}if(typeof h=="string"){if(w){e[a]=h+n;return}if(m||b){e[a]=h.slice(0,c)+(typeof n=="string"?n:n.map(f=>typeof f=="string"?f:ko).join(""))+h.slice(s);return}if(p){e[a]=h.slice(0,c)+h.slice(s);return}throw new Error("i don't know what happened")}if(St(h)&&l&&typeof o[0]=="string"){delete h[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]={}),l){let[c,s]=o;c!=null&&s!=null&&(typeof n>"u"&&c!=null&&s!=null?delete e[a][c||s]:e[a][c||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 d=i[0];if(typeof e[a]>"u")if(typeof d=="string")e[a]={};else if(typeof d=="number")e[a]=[];else throw new Error(`can't go down this road ${e}.${a}.${d}`);e=e[a]}}function Et(e,r){for(let t=0;t<r.length;t++)e=e?e[r[t]]:void 0;return e}function It(e,r){let t=e.path.slice(0,-1),o=e.path[e.path.length-1];switch(e.action){case"mark":case"unmark":return At(`skipping ${e.action} because it doesn't affect material reality`),[];case"inc":if(r)return[t,o,Et(r.patchInfo.after,e.path)];throw new Error(`can't apply ${e.action} without payload argument`);case"conflict":if(r)return[t,o,Et(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],structuredClone(e.values)];case"splice":return[t,[o,o],[e.value]];case"put":return[t,o,structuredClone(e.value)]}}function Ie(e){return r=>{for(let t of e.patches)Dt(r,...It(t,e))}}import{createMemo as Eo}from"solid-js";import{onCleanup as Co}from"solid-js";import{createStore as $o,produce as So,reconcile as Rt}from"solid-js/store";var ge=new WeakMap;function Re(e){if(Co(()=>{let i=ge.get(e);i&&(i.refs--||i.cleanup())}),ge.has(e)){let i=ge.get(e);return i.refs++,i.store}let[r,t]=$o(structuredClone(e.doc()));ge.set(e,{refs:0,store:r,cleanup(){e.off("change",o),e.off("delete",n),ge.delete(e)}});function o(i){if(i.scopeReplaced){t(Rt(i.doc??{}));return}t(So(Ie(i)))}function n(){t(Rt({}))}return e.on("change",o),e.on("delete",n),e.whenReady().then(()=>{t(structuredClone(e.doc()))}),r}import{getOwner as Xi,onCleanup as Gi,createSignal as Zi,untrack as Qi,sharedConfig as es,onMount as ts,DEV as rs,equalFn as os}from"solid-js";import{isServer as as}from"solid-js/web";var se=e=>typeof e=="function"&&!e.length?e():e;function Fe(e){return Eo(()=>se(e)&&Re(se(e)))}import{createEffect as Ao,createResource as Do,useContext as Io}from"solid-js";import{createContext as To}from"solid-js";var Pe=To(null);function be(e,r){let t=Io(Pe);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 d=se(e);if(!d)return;let l=o.findWithProgress(d).peek();return l.state==="ready"?l.handle:void 0}let[i,{mutate:a}]=Do(e,d=>o.findWithProgress(d).whenReady(),{initialValue:n()});return Ao(()=>{se(e)||a()}),i}function Le(e,r){let t=be(e,r);return[Fe(t),t]}import{onCleanup as xs}from"solid-js";import{createSignal as Cs}from"solid-js";import{createEffect as Es,onCleanup as Ts}from"solid-js";import{createSignal as Ds}from"solid-js";import{useContext as Os}from"solid-js";import{getType as Oo}from"@inkandswitch/patchwork-filesystem";import{getRegistry as zo,isLoadedPlugin as Uo}from"@inkandswitch/patchwork-plugins";import{createEffect as jo,createMemo as Me,createSignal as Ze,onCleanup as Wo,onMount as Ot,Show as zt}from"solid-js";var Mt=Pt("<span class=threepane__title-text>"),Mo=Pt("<input class=threepane__title-input type=text>");function Ut(e){let r,[t,o]=Ze();return Ot(()=>{o(r.closest("repo-provider")?.repo)}),Ge(zt,{get when(){return t()},get fallback(){return(()=>{var n=Mt(),i=r;return typeof i=="function"?Lt(i,n):r=n,n})()},children:n=>Ge(Ho,{get docUrl(){return e.docUrl},get repo(){return n()}})})}function Ho(e){let[r,t]=Le(()=>e.docUrl(),{repo:e.repo}),o=zo("patchwork:datatype"),[n,i]=Ze(0);Ot(()=>{let m=o.on("changed",()=>i(h=>h+1));Wo(m)});let a=Me(()=>{let m=r();return m?Oo(m):void 0});jo(()=>{let m=a();m&&o.load(m)});let d=Me(()=>{n();let m=a();if(!m)return;let h=o.get(m);return h&&Uo(h)?h:void 0}),l=Me(()=>{let m=r(),h=d();if(!(!m||!h))return h.module.getTitle(m)}),c=Me(()=>!!t()&&typeof d()?.module.setTitle=="function"),[s,u]=Ze(!1),p;function b(){c()&&(u(!0),queueMicrotask(()=>{p?.focus(),p?.select()}))}function w(m){if(!s()||(u(!1),!m))return;let h=p?.value.trim();if(!h||h===l())return;let f=t(),_=d()?.module.setTitle;!f||!_||f.change(R=>{_(R,h);let F=R["@patchwork"];F&&(F.title=h)})}return Ge(zt,{get when(){return s()},get fallback(){return(()=>{var m=Mt();return m.$$click=b,Lo(m,()=>l()??"Untitled"),Ft(h=>{var f=!!c(),_=c()?"Rename":void 0;return f!==h.e&&m.classList.toggle("threepane__title-text--editable",h.e=f),_!==h.t&&Po(m,"title",h.t=_),h},{e:void 0,t:void 0}),m})()},get children(){var m=Mo();m.$$keydown=f=>{f.key==="Enter"?(f.preventDefault(),w(!0)):f.key==="Escape"&&(f.preventDefault(),w(!1))},m.addEventListener("blur",()=>w(!0));var h=p;return typeof h=="function"?Lt(h,m):p=m,Ft(()=>m.value=l()??""),m}})}Fo(["keydown","click"]);import{template as ye}from"solid-js/web";import{delegateEvents as tn}from"solid-js/web";import{getOwner as rn}from"solid-js/web";import{insert as we}from"solid-js/web";import{createComponent as le}from"solid-js/web";import{Show as Qe}from"solid-js";import{template as Nt}from"solid-js/web";import{delegateEvents as No}from"solid-js/web";import{setStyleProperty as qo}from"solid-js/web";import{insert as Bo}from"solid-js/web";import{setAttribute as Oe}from"solid-js/web";import{effect as jt}from"solid-js/web";import{memo as ve}from"solid-js/web";import{createComponent as Wt}from"solid-js/web";import{Show as Ht}from"solid-js";var Jo=Nt('<button class="sidebar-toggle sidebar-toggle--resizable">'),Vo=Nt("<div class=sidebar>");function qt(e){let r=()=>`${e.isCollapsed()?0:e.width()}px`,t=()=>e.canExpand?.()??!0,o=()=>Wt(Ht,{get when(){return!e.isCollapsed()},get children(){return e.children}}),n=()=>Wt(Ht,{get when(){return!e.isCollapsed()||t()},get children(){var i=Jo();return i.$$mousedown=a=>e.onMouseDown(a),i.$$click=a=>e.onToggleClick(a),jt(a=>{var d=e.isCollapsed()?"Expand sidebar":"Toggle or resize sidebar",l=e.isCollapsed()?"Click to expand, drag to resize":"Click to toggle, drag to resize";return d!==a.e&&Oe(i,"aria-label",a.e=d),l!==a.t&&Oe(i,"title",a.t=l),a},{e:void 0,t:void 0}),i}});return(()=>{var i=Vo();return Bo(i,(()=>{var a=ve(()=>e.side==="left");return()=>a()?[ve(o),ve(n)]:[ve(n),ve(o)]})()),jt(a=>{var d=e.side,l=e.isCollapsed()?"":void 0,c=r();return d!==a.e&&Oe(i,"data-side",a.e=d),l!==a.t&&Oe(i,"data-collapsed",a.t=l),c!==a.a&&qo(i,"width",a.a=c),a},{e:void 0,t:void 0,a:void 0}),i})()}No(["click","mousedown"]);import{template as Jt}from"solid-js/web";import{delegateEvents as Ko}from"solid-js/web";import{setAttribute as Yo}from"solid-js/web";import{effect as Xo}from"solid-js/web";import{insert as Bt}from"solid-js/web";import{createComponent as Go}from"solid-js/web";import{For as en}from"solid-js";var Zo=Jt("<div role=tablist class=context-sidebar__tablist>"),Qo=Jt("<button type=button role=tab class=context-sidebar__tab>");function Vt(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=Zo();return Bt(t,Go(en,{get each(){return e.items()},children:o=>(()=>{var n=Qo();return n.$$click=()=>e.setSelectedToolId(o.id),Bt(n,()=>o.name),Xo(()=>Yo(n,"data-active",r()===o.id?"":void 0)),n})()})),t})()}Ko(["click"]);var on=ye('<div class=context-sidebar__tabs><button type=button class=context-sidebar__close title="Hide context sidebar"aria-label="Hide context sidebar">'),nn=ye("<div class=context-sidebar__content>"),an=ye("<div class=context-sidebar>"),sn=ye("<patchwork-view>",!0,!1,!1),ln=ye('<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 Kt(e){let r=me("context-tool"),t=()=>{let o=r().map(i=>i.id),n=e.selectedToolId();return n&&o.includes(n)?n:o[0]};return le(qt,{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=an();return we(o,le(Qe,{get when(){return r().length},get children(){var n=on(),i=n.firstChild;return we(n,le(Vt,{items:r,get selectedToolId(){return e.selectedToolId},get setSelectedToolId(){return e.setSelectedToolId}}),i),i.$$click=()=>e.onCollapse(),we(i,le(et,{})),n}}),null),we(o,le(Qe,{get when(){return!e.isCollapsed()},get children(){var n=nn();return we(n,le(Qe,{get when(){return t()},keyed:!0,children:i=>(()=>{var a=sn();return a.component=i,a._$owner=rn(),a})()})),n}}),null),o}})}function et(){return ln()}tn(["click"]);import{template as cn}from"solid-js/web";import{effect as Yt}from"solid-js/web";import{getOwner as Xt}from"solid-js/web";import{createComponent as dn}from"solid-js/web";import{memo as un}from"solid-js/web";import{Show as pn}from"solid-js";var Gt=cn("<patchwork-view>",!0,!1,!1),tt=e=>Array.isArray(e)?String(e[0]):String(e);function Vl(e){let r=new Set;return e.filter(t=>{let o=tt(t);return r.has(o)?!1:(r.add(o),!0)})}function Kl(e){return dn(pn,{get when(){return un(()=>!!Array.isArray(e.slot))()?e.slot:!1},get fallback(){return(()=>{var r=Gt();return r._$owner=Xt(),Yt(()=>r.component=String(e.slot)),r})()},children:r=>(()=>{var t=Gt();return t._$owner=Xt(),Yt(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 gn=_e("<div class=threepane__title>"),bn=_e("<div class=threepane__doctitle-tools>"),vn=_e('<button type=button class=frame__sidebar-toggle title="Show context sidebar"aria-label="Show context sidebar">'),wn=_e("<div class=frame__topbar><div class=threepane__spacer>"),yn=_e("<patchwork-view>",!0,!1,!1);function er(e){let r=()=>e.toolSlots()??[];return(()=>{var t=wn(),o=t.firstChild;return ce(t,de(rt,{get when(){return e.docUrl()},get children(){var n=gn();return ce(n,de(Ut,{get docUrl(){return e.docUrl}})),n}}),o),ce(t,de(rt,{get when(){return Qt(()=>!!e.docUrl())()&&r().length},get children(){var n=bn();return ce(n,de(_n,{get each(){return r()},children:i=>(()=>{var a=yn();return a._$owner=fn(),Zt(d=>{var l=tt(i),c=e.docUrl();return l!==d.e&&(a.toolId=d.e=l),c!==d.t&&(a.docUrl=d.t=c),d},{e:void 0,t:void 0}),a})()})),n}}),null),ce(t,de(rt,{get when(){return Qt(()=>!!e.hasContext())()&&e.isRightCollapsed()},get children(){var n=vn();return n.$$click=()=>e.onToggleRight(),mn(n,"aria-pressed",!1),ce(n,de(et,{})),n}}),null),Zt(()=>t.classList.toggle("frame__topbar--left-collapsed",!!e.isLeftCollapsed())),t})()}hn(["click"]);import{template as Ne}from"solid-js/web";import{effect as Tr}from"solid-js/web";import{getOwner as Ar}from"solid-js/web";import{insert as V}from"solid-js/web";import{createComponent as I}from"solid-js/web";import{memo as Ce}from"solid-js/web";import{use as Dr}from"solid-js/web";import{parseAutomergeUrl as ja}from"@automerge/automerge-repo/slim";import{getSuggestedImportUrl as Wa,getType as Ha}from"@inkandswitch/patchwork-filesystem";import{getFallbackTool as Na,getRegistry as qa}from"@inkandswitch/patchwork-plugins";import{createEffect as dt,createMemo as He,createSignal as J,onCleanup as te,onMount as Ba,Show as H}from"solid-js";import{template as C}from"solid-js/web";import{delegateEvents as ia}from"solid-js/web";import{setAttribute as We}from"solid-js/web";import{effect as lt}from"solid-js/web";import"solid-js/web";import{createComponent as A}from"solid-js/web";import{insert as D}from"solid-js/web";import{use as sa}from"solid-js/web";import{importPackage as Ia}from"@inkandswitch/patchwork-filesystem";import{registerPlugins as Ra}from"@inkandswitch/patchwork-plugins";import{createResource as Fa,createSignal as pe,onCleanup as st,onMount as Pa,Show as W}from"solid-js";import{template as k}from"solid-js/web";import{delegateEvents as An}from"solid-js/web";import{effect as pr}from"solid-js/web";import{memo as Dn}from"solid-js/web";import{insert as v}from"solid-js/web";import{createComponent as x}from"solid-js/web";import{use as In}from"solid-js/web";import{setAttribute as xe}from"solid-js/web";import{createResource as ea,createSignal as Ue,For as it,Match as ue,onMount as ta,Show as O,Switch as lr}from"solid-js";import*as rr from"@automerge/automerge/slim";import{getImportableUrlFromAutomergeUrl as xn}from"@inkandswitch/patchwork-filesystem";var ot=e=>e.startsWith("automerge:");function kn(e){return e.replace(/[#?].*$/,"")}function or(e){let r=e.split("#")[1];return r?r.split("|").filter(Boolean):[]}var j=e=>typeof e=="string"&&e.trim()?e.trim():void 0;function Cn(e){if(typeof e=="string")return j(e);if(e&&typeof e=="object"){let{name:r,email:t}=e,o=j(r),n=j(t);return o&&n?`${o} <${n}>`:o??n}}function nr(e){if(!e||typeof e!="object")return{};let r=e,t=r.supportedDatatypes;return{id:j(r.id),name:j(r.name),type:j(r.type),supportedDatatypes:typeof t=="string"?[t]:Array.isArray(t)?t.filter(o=>typeof o=="string"):void 0}}async function tr(e){try{let r=await fetch(e);return r.ok?await r.json():void 0}catch{return}}var $n=new Set(["dist","build","lib","out","esm","src","public"]);async function Sn(e){if(ot(e)){let o=xn(e);return tr(new URL("package.json",o).href)}let r;try{r=new URL(e)}catch{return}let t=r.pathname.split("/").filter(Boolean);for(/\.[a-z0-9]+$/i.test(t.at(-1)??"")&&t.pop();;){let o=`${r.origin}/${t.join("/")}${t.length?"/":""}`,n=await tr(new URL("package.json",o).href);if(n&&typeof n=="object")return n;if(!$n.has(t.at(-1)?.toLowerCase()??""))return;t.pop()}}async function ar(e){let r=await Sn(e);if(r)return{name:j(r.name),title:j(r.title),version:j(r.version),description:j(r.description),author:Cn(r.author),plugins:Array.isArray(r.plugins)?r.plugins.map(nr):void 0}}var ze,En=1,ee=new Map;function Tn(){if(ze)return ze;let e=new Worker("/module-loader-worker.js",{type:"module",name:"threepane-package-preview"});return e.addEventListener("message",r=>{let t=r.data,o=t&&ee.get(t.id);o&&(ee.delete(t.id),t.type==="descriptors"?o.resolve(t.descriptors.map(nr)):o.reject(new Error(t.error)))}),e.addEventListener("error",r=>{let t=new Error(`the background worker stopped: ${r.message??"no reason given"}`);for(let o of ee.values())o.reject(t);ee.clear(),ze=void 0}),ze=e,e}function ir(e,r=15e3){let t=En++;return new Promise((o,n)=>{let i=setTimeout(()=>{ee.delete(t)&&n(new Error("it took too long to answer"))},r);ee.set(t,{resolve:a=>{clearTimeout(i),o(a)},reject:a=>{clearTimeout(i),n(a)}});try{Tn().postMessage({type:"discover",id:t,url:e})}catch(a){clearTimeout(i),ee.delete(t),n(a instanceof Error?a:new Error(String(a)))}})}async function sr(e,r){let t=await e.find(kn(r)),o=t.doc();await new Promise(a=>setTimeout(a,0));let n=rr.getChangesMetaSince(o,[]),i=new Map;for(let a of n){let d=a.time??0,l=i.get(a.actor);if(!l){i.set(a.actor,{actor:a.actor,changes:1,first:d,last:d});continue}l.changes++,d&&(!l.first||d<l.first)&&(l.first=d),d>l.last&&(l.last=d)}return{heads:[...t.heads()],changes:n.length,writers:[...i.values()].sort((a,d)=>d.changes-a.changes)}}var Rn=k("<button type=button class=doc-card__link>see package details"),Fn=k("<p class=pkg-about__quiet>reading\u2026"),Pn=k("<p class=pkg-about__quiet>no package.json."),Ln=k("<dl class=pkg-about__facts><dt>plugins</dt><dd>"),Mn=k("<dt>pinned"),at=k("<dd>"),nt=k("<dt>history"),On=k("<dd class=pkg-about__quiet>reading\u2026"),zn=k("<dd class=pkg-about__quiet>couldn't get its folder."),Un=k('<div class=pkg-about popover=auto><header class=pkg-about__header><h3 class=doc-card__rough></h3><button type=button class="doc-card__link pkg-about__close"popovertargetaction=hide aria-label=close>\xD7</button></header><section class="pkg-about__section pkg-about__section--claims"><h4>self-reported <span class=pkg-about__tag>unverified</span></h4></section><section class=pkg-about__section><h4>source</h4><dl class=pkg-about__facts><dt>url</dt><dd><code class="doc-card__code doc-card__url">'),jn=k("<span class=pkg-about__version> "),Wn=k("<button type=button class=doc-card__link>"),Hn=k("<span class=pkg-about__quiet>unknown until loaded"),Nn=k("<p class=doc-card__notice>"),qn=k("<dt>heads"),Bn=k("<dd> <!>, <!> <p class=pkg-about__quiet>writers are devices, not people. folder only."),Jn=k("<dt>"),hr=k("<ul class=pkg-about__list>"),Vn=k("<span>nothing"),Kn=k("<span class=pkg-about__quiet> for "),Yn=k("<li>"),fr=k("<span class=pkg-about__quiet> \xB7 "),Xn=k("<span class=pkg-about__heads>"),Gn=k("<code class=doc-card__code>"),Zn=k("<li class=pkg-about__quiet>and <!> more"),Qn=k("<li><code class=doc-card__code></code> <!> "),ra=0;function mr(e){let r=`pkg-about-${++ra}`,t=ot(e.url),o=or(e.url),[n,i]=Ue(!1),[a]=ea(()=>n()&&t?e.url:void 0,f=>sr(e.repo,f)),[d,l]=Ue(!1),[c,s]=Ue(),[u,p]=Ue();async function b(){if(window.confirm(`Listing its plugins runs the package's code in a background worker.
|
|
2
2
|
|
|
3
3
|
${e.url}
|
|
4
4
|
|
|
5
5
|
It can use the network and this site's stored data, including your documents. Only run it if you trust where it came from.
|
|
6
6
|
|
|
7
|
-
Run it?`)){p(void 0),l(!0);try{s(await ir(e.url))}catch(_){p(_?.message??String(_))}finally{l(!1)}}}let w;
|
|
7
|
+
Run it?`)){p(void 0),l(!0);try{s(await ir(e.url))}catch(_){p(_?.message??String(_))}finally{l(!1)}}}let w;ta(()=>{w.addEventListener("toggle",f=>{f.newState==="open"&&i(!0)})});let m=()=>e.claims?.title??e.claims?.name??"package",h=()=>c()??e.claims?.plugins;return[(()=>{var f=Rn();return xe(f,"popovertarget",r),f})(),(()=>{var f=Un(),_=f.firstChild,R=_.firstChild,F=R.nextSibling,N=_.nextSibling,G=N.firstChild,Z=N.nextSibling,M=Z.firstChild,q=M.nextSibling,he=q.firstChild,fe=he.nextSibling,Se=fe.firstChild,K=w;return typeof K=="function"?In(K,f):w=f,xe(f,"id",r),v(R,m,null),v(R,x(O,{get when(){return e.claims?.version},children:S=>(()=>{var $=jn(),Y=$.firstChild;return v($,S,null),$})()}),null),xe(F,"popovertarget",r),v(N,x(lr,{get children(){return[x(ue,{get when(){return e.claimsLoading},get children(){return Fn()}}),x(ue,{get when(){return Dn(()=>!e.claims)()&&!c()},get children(){return Pn()}}),x(ue,{when:!0,get children(){var S=Ln(),$=S.firstChild,Y=$.nextSibling;return v(S,x(je,{label:"name",get value(){return e.claims?.name}}),$),v(S,x(je,{label:"title",get value(){return e.claims?.title}}),$),v(S,x(je,{label:"author",get value(){return e.claims?.author}}),$),v(S,x(je,{label:"description",get value(){return e.claims?.description}}),$),v(Y,x(O,{get when(){return h()},get fallback(){return x(O,{when:t,get fallback(){return Hn()},get children(){var L=Wn();return L.$$click=()=>void b(),v(L,()=>d()?"listing\u2026":"list them"),pr(()=>L.disabled=d()),L}})},children:L=>x(oa,{get plugins(){return L()}})}),null),v(Y,x(O,{get when(){return u()},children:L=>(()=>{var g=Nn();return v(g,L),g})()}),null),S}})]}}),null),v(Se,()=>e.url),v(q,x(O,{get when(){return o.length},get children(){return[Mn(),(()=>{var S=at();return v(S,x(cr,{heads:o})),S})()]}}),null),v(q,x(O,{when:t,get children(){return x(lr,{get children(){return[x(ue,{get when(){return a.loading},get children(){return[nt(),On()]}}),x(ue,{get when(){return a.error},get children(){return[nt(),zn()]}}),x(ue,{get when(){return a()},children:S=>[qn(),(()=>{var $=at();return v($,x(cr,{get heads(){return S().heads}})),$})(),nt(),(()=>{var $=Bn(),Y=$.firstChild,L=Y.nextSibling,g=L.nextSibling,y=g.nextSibling,E=y.nextSibling,T=E.nextSibling;return v($,()=>S().changes,Y),v($,()=>S().changes===1?"change":"changes",L),v($,()=>S().writers.length,y),v($,()=>S().writers.length===1?"writer":"writers",T),v($,x(na,{get writers(){return S().writers}}),T),$})()]})]}})}}),null),f})()]}function je(e){return x(O,{get when(){return e.value},get children(){return[(()=>{var r=Jn();return v(r,()=>e.label),r})(),(()=>{var r=at();return v(r,()=>e.value),r})()]}})}function oa(e){return x(O,{get when(){return e.plugins.length},get fallback(){return Vn()},get children(){var r=hr();return v(r,x(it,{get each(){return e.plugins},children:t=>(()=>{var o=Yn();return v(o,()=>t.name??t.id??"(unnamed)",null),v(o,x(O,{get when(){return t.type},children:n=>(()=>{var i=fr(),a=i.firstChild;return v(i,n,null),i})()}),null),v(o,x(O,{get when(){return t.supportedDatatypes?.length},get children(){var n=Kn(),i=n.firstChild;return v(n,()=>t.supportedDatatypes.join(", "),null),n}}),null),o})()})),r}})}function cr(e){return(()=>{var r=Xn();return v(r,x(it,{get each(){return e.heads},children:t=>(()=>{var o=Gn();return xe(o,"title",t),v(o,()=>t.slice(0,7)),o})()})),r})()}var dr=6;function na(e){let r=()=>e.writers.length-dr;return(()=>{var t=hr();return v(t,x(it,{get each(){return e.writers.slice(0,dr)},children:o=>(()=>{var n=Qn(),i=n.firstChild,a=i.nextSibling,d=a.nextSibling,l=d.nextSibling;return v(i,()=>o.actor.slice(0,8)),v(n,()=>o.changes,d),v(n,()=>o.changes===1?"change":"changes",null),v(n,x(O,{get when(){return o.last},get children(){var c=fr(),s=c.firstChild;return v(c,()=>aa(o),null),c}}),null),pr(()=>xe(i,"title",o.actor)),n})()}),null),v(t,x(O,{get when(){return r()>0},get children(){var o=Zn(),n=o.firstChild,i=n.nextSibling,a=i.nextSibling;return v(o,r,i),o}}),null),t})()}function ur(e){return new Date(e*1e3).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}function aa(e){let r=ur(e.last),t=e.first?ur(e.first):r;return t===r?r:`${t} \u2013 ${r}`}An(["click"]);var la=C("<div class=doc-card><svg class=doc-card__defs aria-hidden=true><filter id=doc-card-rough><feTurbulence type=fractalNoise baseFrequency=0.04 numOctaves=2 seed=1></feTurbulence><feDisplacementMap in=SourceGraphic scale=1.4></feDisplacementMap></filter></svg><div class=doc-card__sheet><h2 class=doc-card__rough>"),ca=C('<div class="doc-card doc-card--finding"role=status><span class=doc-card__dot></span><span class=doc-card__finding-label>finding this doc\u2026'),da=C("<p>it's a <code class=doc-card__code></code>.<br>nothing here opens one yet."),ua=C("<p class=doc-card__links>"),pa=C("<p>it'll open here if a package adds a tool for it."),ha=C("<p>the doc suggests "),ct=C('<div class=doc-card__actions><button type=button class="doc-card__button doc-card__button--primary">'),fa=C("<strong class=pkg-line>"),ma=C("<span class=pkg-line__version> "),ga=C("<p class=doc-card__notice>couldn't load it: "),ba=C("<button type=button class=doc-card__link>open doc with "),va=C("<p>we couldn't get it from anywhere we looked.<br>that might mean:"),wa=C("<ul class=doc-card__reasons><li>the person who sent you the link hasn't given you access yet</li><li>it hasn't finished syncing from their device yet</li><li>something's wrong with the "),ya=C("<p>we'll keep looking. if it turns up, it'll open right here."),_a=C("<button type=button class=doc-card__sync>sync server"),xa=C("<span class=doc-card__sync-told role=status> (<!>)"),ka=C("<p>found it, but it's private."),Ca=C("<p>ask the owner to share it. if you're not in their phonebook, send them your card."),$a=C("<p>it'll open right here once they do."),Sa=C("<p>the doc is here, but the tool that shows it didn't load."),Ea=C("<p class=doc-card__notice>"),Ta=C("<p>a bit of it got lost or changed on the way here, so it can't point at any doc. maybe a character dropped when it was copied, or the link got cut short."),Aa=C("<p>if someone sent it to you, ask them for the link again."),Da=C('<p class=doc-card__aside><code class="doc-card__code doc-card__url">');function ke(e){let r;return Pa(()=>{r.dispatchEvent(new CustomEvent("patchwork:no-tool",{bubbles:!0,composed:!0,detail:{url:e.url}}))}),(()=>{var t=la(),o=t.firstChild,n=o.nextSibling,i=n.firstChild,a=r;return typeof a=="function"?sa(a,t):r=t,D(i,()=>e.title),D(n,()=>e.children,null),t})()}function gr(){return ca()}function br(e){let[r,t]=pe(!1),[o,n]=pe(),[i]=Fa(()=>e.suggestion,l=>ar(l).catch(()=>{}));async function a(l){if(window.confirm(`Load this package?
|
|
8
8
|
|
|
9
9
|
${l}
|
|
10
10
|
|
|
11
|
-
Its code runs in this page and can read and change your documents. Only load it if you trust where it came from.`)){n(void 0),t(!0);try{let s=await Aa(l);if(!Array.isArray(s?.plugins))throw new Error("it doesn't export any plugins");Da(s.plugins,l)}catch(s){console.error(`couldn't load the package at ${l}`,s),n(s?.message??String(s))}finally{t(!1)}}}let d=()=>{let l=i();return l&&(l.title||l.name)?l:void 0};return A(ke,{get url(){return e.url},title:"no tool for this",get children(){return[(()=>{var l=la(),c=l.firstChild,s=c.nextSibling;return D(s,()=>e.type),l})(),A(j,{get when(){return e.suggestion},get fallback(){return da()},children:l=>[(()=>{var c=ua(),s=c.firstChild;return D(c,A(j,{get when(){return d()},fallback:"a package.",children:u=>[(()=>{var p=pa();return D(p,()=>u().title??u().name),p})(),A(j,{get when(){return u().version},children:p=>(()=>{var b=ha(),w=b.firstChild;return D(b,p,null),b})()}),"."]}),null),c})(),(()=>{var c=ct(),s=c.firstChild;return s.$$click=()=>void a(l()),D(s,()=>r()?"loading\u2026":"load package"),lt(()=>s.disabled=r()),c})(),A(j,{get when(){return o()},children:c=>(()=>{var s=fa(),u=s.firstChild;return D(s,c,null),s})()})]}),A(j,{get when(){return e.suggestion||e.anything},get children(){var l=ca();return D(l,A(j,{get when(){return e.suggestion},children:c=>A(mr,{get url(){return c()},get repo(){return e.repo},get claims(){return i()},get claimsLoading(){return i.loading}})}),null),D(l,A(j,{get when(){return e.anything},children:c=>(()=>{var s=ma(),u=s.firstChild;return s.$$click=()=>e.onPeek(c().id),D(s,()=>c().name.toLowerCase(),null),s})()}),null),l}})]}})}function vr(e){let r=e.repo,t=typeof r.isSubductionConnected=="function",[o,n]=pe(t?r.isSubductionConnected():void 0),i=a=>{let d=o();n(a),a&&d===!1&&e.onRetry()};if(t&&r.on&&r.off){let a=d=>i(d.connected);r.on("subduction-connection",a),st(()=>r.off("subduction-connection",a))}if(t){let a=setInterval(()=>i(r.isSubductionConnected()),2e3);st(()=>clearInterval(a))}return A(ke,{get url(){return e.url},title:"can't load this doc",get children(){return[ga(),(()=>{var a=ba(),d=a.firstChild,l=d.nextSibling,c=l.nextSibling,s=c.firstChild;return D(c,A(j,{get when(){return o()!==void 0},fallback:"sync server",get children(){return A(Fa,{get connected(){return o()}})}}),null),a})(),va()]}})}function Fa(e){let[r,t]=pe(!1),o=()=>`sync server: ${e.connected?"connected":"disconnected"}`;return[(()=>{var n=wa();return n.$$click=()=>t(i=>!i),lt(i=>{var a=e.connected?"":void 0,d=o(),l=o(),c=r();return a!==i.e&&We(n,"data-connected",i.e=a),d!==i.t&&We(n,"title",i.t=d),l!==i.a&&We(n,"aria-label",i.a=l),c!==i.o&&We(n,"aria-expanded",i.o=c),i},{e:void 0,t:void 0,a:void 0,o:void 0}),n})(),A(j,{get when(){return r()},get children(){var n=ya(),i=n.firstChild,a=i.nextSibling,d=a.nextSibling;return D(n,()=>e.connected?"connected":"disconnected",a),n}})]}function wr(e){let[r,t]=pe(!1),o;st(()=>clearTimeout(o));let n=async()=>{e.card&&(await navigator.clipboard.writeText(e.card),t(!0),clearTimeout(o),o=setTimeout(()=>t(!1),1500))};return A(ke,{get url(){return e.url},title:"not shared with you yet",get children(){return[_a(),xa(),ka(),A(j,{get when(){return e.card},get children(){var i=ct(),a=i.firstChild;return a.$$click=()=>void n(),D(a,()=>r()?"copied":"copy my card"),i}})]}})}function yr(e){let[r,t]=pe(!1),o=async()=>{t(!0);try{await e.onRetry()}finally{t(!1)}};return A(ke,{get url(){return e.url},get title(){return`can't load ${e.name}`},get children(){return[Ca(),(()=>{var n=$a();return D(n,()=>e.error),n})(),(()=>{var n=ct(),i=n.firstChild;return i.$$click=()=>void o(),D(i,()=>r()?"trying\u2026":"try again"),lt(()=>i.disabled=r()),n})()]}})}function _r(e){return A(ke,{get url(){return e.url},title:"this link is broken",get children(){return[Sa(),Ea(),(()=>{var r=Ta(),t=r.firstChild;return D(t,()=>e.url),r})()]}})}na(["click"]);import{isKeyhiveDoc as Pa}from"@inkandswitch/patchwork-plugins";var xr=()=>globalThis.hive;async function kr(e,r){if(Pa(r))try{let t=e.active.individual.id;return!!(e.bestAccessForDoc?await e.bestAccessForDoc(t,r):await e.accessForDoc(t,r))}catch{return}}function Cr(e,r){return e.networkAdapter?.on("ingest-remote",r),()=>e.networkAdapter?.off("ingest-remote",r)}function $r(e){try{let r="";for(let t of e.active.contactCard.toBytes())r+=String.fromCharCode(t);return btoa(r)}catch{return}}var La=He("<div class=document-view>"),Ar=He("<patchwork-view>",!0,!1,!1),Ma=He("<div class=placeholder>Select a document in the sidebar"),Oa=He("<div class=doc-stack>");function Dr({viewKey:e,selectedDocUrl:r,toolId:t,ref:o}){let n,[i,a]=J();return Ha(()=>{a(n.closest("repo-provider")?.repo??null)}),(()=>{var d=La();return Tr(l=>{n=l,o?.(l)},d),V(d,I(W,{get when(){return Ce(()=>i()!==void 0)()&&e()},keyed:!0,children:l=>I(W,{get when(){return i()},get fallback(){return(()=>{var c=Ar();return c._$owner=Er(),Sr(s=>{var u=r(),p=t();return u!==s.e&&(c.docUrl=s.e=u),p!==s.t&&(c.toolId=s.t=p),s},{e:void 0,t:void 0}),c})()},children:c=>I(qa,{get url(){return r()},toolId:t,get repo(){return c()}})})}),null),V(d,(()=>{var l=Ce(()=>!r());return()=>l()&&Ma()})(),null),d})()}function qa(e){let r=Na("patchwork:tool"),[t,o]=J(0);te(r.on("changed",()=>{o(g=>g+1)}));let[n,i]=J({state:"finding"}),[a,d]=J(),l=()=>e.toolId()??a(),[c,s]=J(!1),[u,p]=J(0),b=!1;te(()=>b=!0);async function w(){try{let g=await e.repo.find(e.url);if(b)return;let y=n().state==="unavailable";i({state:"ready",doc:g.doc()}),y&&!c()&&p(E=>E+1)}catch(g){if(b)return;let y=Ja(g);i({state:y?"invalid":"unavailable"}),y||h(E=>E+1)}}let[m,h]=J(0),f,_;function R(){_?.(),f=Ba(e.repo,e.url),_=f?.subscribe(g=>{g.state==="ready"&&n().state==="unavailable"&&w()})}te(()=>_?.()),w(),R();function F(){let g=e.repo;if(typeof g.resyncSubduction=="function")try{g.resyncSubduction(za(e.url).documentId)}catch{}}let N;te(()=>clearTimeout(N));function G(g=1e3){F(),clearTimeout(N),N=setTimeout(()=>void w(),g)}dt(()=>{let g=m();g===0||n().state!=="unavailable"||c()||(G(Math.min(3e4,3e3*2**(g-1))),te(()=>clearTimeout(N)))});let Z=Ne(()=>{t();let g=n();if(g.state!=="ready")return g;let y=g.doc,E=y?ja(y):void 0;if(!E)return{state:"open",toolId:void 0};let T=l(),z;if(!T){let q=Ir(()=>Wa(y));q&&Va(q.supportedDatatypes,E)?z={id:q.id,name:q.name}:q&&(T=q.id)}return T&&r.get(T)?{state:"open",toolId:T}:{state:"no-tool",type:E,suggestion:Ua(y),anything:z}}),M=Ne(()=>Z().state),H=Ne(()=>{let g=Z();return g.state==="open"?g.toolId:void 0}),[he,fe]=J();async function Se(g){try{return await r.load(g),H()===g&&fe(void 0),!0}catch(y){return H()===g&&fe({id:g,message:y instanceof Error?y.message:String(y)}),!1}}dt(()=>{let g=H();fe(void 0),g&&Se(g)});let K=xr(),[S,$]=J();dt(()=>{if(!K||M()!=="open"){$(void 0);return}let g=e.url,y=!0,E=()=>void kr(K,g).then(z=>{y&&$(z)});E();let T=Cr(K,E);te(()=>{y=!1,T()})});async function Y(){let g=he()?.id;g&&await Se(g)&&p(y=>y+1)}let L=Ne(()=>{let g=Z();return g.state==="no-tool"?g:void 0});return(()=>{var g=Oa();return Tr(y=>{let E=T=>{let z=T.detail;z?.url&&z.url!==e.url||(s(!0),n().state==="unavailable"&&w())};y.addEventListener("patchwork:mounted",E),te(()=>y.removeEventListener("patchwork:mounted",E))},g),V(g,I(W,{get when(){return Ce(()=>M()==="open")()&&!he()||M()==="unavailable"},get children(){return I(W,{get when(){return u()+1},keyed:!0,children:y=>(()=>{var E=Ar();return E._$owner=Er(),Sr(T=>{var z=e.url,q=l();return z!==T.e&&(E.docUrl=T.e=z),q!==T.t&&(E.toolId=T.t=q),T},{e:void 0,t:void 0}),E})()})}}),null),V(g,I(W,{get when(){return M()==="finding"},get children(){return I(gr,{})}}),null),V(g,I(W,{get when(){return Ce(()=>M()==="open")()&&S()===!1},get children(){return I(wr,{get url(){return e.url},get card(){return K&&$r(K)}})}}),null),V(g,I(W,{get when(){return he()},children:y=>I(yr,{get url(){return e.url},get name(){return r.get(y().id)?.name??y().id},get error(){return y().message},onRetry:Y})}),null),V(g,I(W,{get when(){return M()==="invalid"},get children(){return I(_r,{get url(){return e.url}})}}),null),V(g,I(W,{get when(){return Ce(()=>M()==="unavailable")()&&!c()},get children(){return I(vr,{get url(){return e.url},get repo(){return e.repo},onRetry:G})}}),null),V(g,I(W,{get when(){return L()},children:y=>I(br,{get url(){return e.url},get type(){return y().type},get suggestion(){return y().suggestion},get anything(){return y().anything},onPeek:d,get repo(){return e.repo}})}),null),g})()}function Ba(e,r){let t=e.findWithProgress;if(typeof t=="function")return Ir(()=>{let o=t.call(e,r);return typeof o?.subscribe=="function"&&typeof o?.peek=="function"?o:void 0})}function Ja(e){let r=e?.message??String(e);return/invalid (automergeurl|document url|documentid|document id)/i.test(r)}function Va(e,r){let t=e==="*"?["*"]:e??[];return t.includes("*")&&!t.includes(r)}function Ir(e){try{return e()}catch{return}}var Ka=ut("<patchwork-view component=patchwork-draft-state-provider>",!0,!1,!1),Ya=ut("<div class=frame__main-column><div class=frame__doc-column><div class=main-area>"),Xa=ut("<patchwork-view component=patchwork-draft-overlay-provider><patchwork-view component=patchwork-comments-provider><patchwork-view component=patchwork-focus-provider>",!0,!1,!1);function Lr(e){let[r,t]=re(e.initialRightCollapsed()),[o,n]=re(e.initialRightWidth());Rr(Pr(r,p=>{try{localStorage.setItem(B.rightCollapsed,String(p))}catch{}},{defer:!0})),Rr(Pr(o,p=>{try{localStorage.setItem(B.rightWidth,String(p))}catch{}},{defer:!0}));let i=Xe("right",{isCollapsed:r,setCollapsed:t,setWidth:n});Za(()=>{let p=()=>t(!0);window.addEventListener(Ee,p),Ga(()=>window.removeEventListener(Ee,p))});let[a,d]=Ye(re(),{name:B.contextToolId}),[l,c]=re(),s=oe("patchwork-draft-state-provider",l),u=()=>s()?l():void 0;return X(Je,{get when(){return e.selectedDocUrl()},keyed:!0,children:p=>(()=>{var b=Ka();return Be(c,b),b.docUrl=p,b._$owner=qe(),$e(b,X(Je,{get when(){return u()},children:w=>X(Qa,{get host(){return w()},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:d})})),b})()})}function Qa(e){let r=me("context-tool"),t=()=>r().length>0,o=Fr(()=>e.selectedDocUrl()),[n,i]=re(),a=oe("patchwork-draft-overlay-provider",n),[d,l]=re(),c=oe("patchwork-comments-provider",d),[s,u]=re(),p=oe("patchwork-focus-provider",s),b=Fr(()=>a()&&c()&&p());return(()=>{var w=Xa(),m=w.firstChild,h=m.firstChild;return Be(i,w),w._$owner=qe(),Be(l,m),m._$owner=qe(),Be(u,h),h._$owner=qe(),$e(h,X(Je,{get when(){return b()},get children(){var f=Ya(),_=f.firstChild,R=_.firstChild;return $e(_,X(er,{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(F=>!F)}),R),$e(R,X(Dr,{viewKey:o,get selectedDocUrl(){return e.selectedDocUrl},get toolId(){return e.selectedToolId},ref:F=>e.setMainDocElement?.(F)})),$e(f,X(Je,{get when(){return t()},get children(){return X(Kt,{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),f}})),w})()}var Ve=`:root,
|
|
11
|
+
Its code runs in this page and can read and change your documents. Only load it if you trust where it came from.`)){n(void 0),t(!0);try{let s=await Ia(l);if(!Array.isArray(s?.plugins))throw new Error("it doesn't export any plugins");Ra(s.plugins,l)}catch(s){console.error(`couldn't load the package at ${l}`,s),n(s?.message??String(s))}finally{t(!1)}}}let d=()=>{let l=i();return l&&(l.title||l.name)?l:void 0};return A(ke,{get url(){return e.url},title:"no tool for this",get children(){return[(()=>{var l=da(),c=l.firstChild,s=c.nextSibling;return D(s,()=>e.type),l})(),A(W,{get when(){return e.suggestion},get fallback(){return pa()},children:l=>[(()=>{var c=ha(),s=c.firstChild;return D(c,A(W,{get when(){return d()},fallback:"a package.",children:u=>[(()=>{var p=fa();return D(p,()=>u().title??u().name),p})(),A(W,{get when(){return u().version},children:p=>(()=>{var b=ma(),w=b.firstChild;return D(b,p,null),b})()}),"."]}),null),c})(),(()=>{var c=ct(),s=c.firstChild;return s.$$click=()=>void a(l()),D(s,()=>r()?"loading\u2026":"load package"),lt(()=>s.disabled=r()),c})(),A(W,{get when(){return o()},children:c=>(()=>{var s=ga(),u=s.firstChild;return D(s,c,null),s})()})]}),A(W,{get when(){return e.suggestion||e.anything},get children(){var l=ua();return D(l,A(W,{get when(){return e.suggestion},children:c=>A(mr,{get url(){return c()},get repo(){return e.repo},get claims(){return i()},get claimsLoading(){return i.loading}})}),null),D(l,A(W,{get when(){return e.anything},children:c=>(()=>{var s=ba(),u=s.firstChild;return s.$$click=()=>e.onPeek(c().id),D(s,()=>c().name.toLowerCase(),null),s})()}),null),l}})]}})}function vr(e){let r=e.repo,t=typeof r.isSubductionConnected=="function",[o,n]=pe(t?r.isSubductionConnected():void 0),i=a=>{let d=o();n(a),a&&d===!1&&e.onRetry()};if(t&&r.on&&r.off){let a=d=>i(d.connected);r.on("subduction-connection",a),st(()=>r.off("subduction-connection",a))}if(t){let a=setInterval(()=>i(r.isSubductionConnected()),2e3);st(()=>clearInterval(a))}return A(ke,{get url(){return e.url},title:"can't load this doc",get children(){return[va(),(()=>{var a=wa(),d=a.firstChild,l=d.nextSibling,c=l.nextSibling,s=c.firstChild;return D(c,A(W,{get when(){return o()!==void 0},fallback:"sync server",get children(){return A(La,{get connected(){return o()}})}}),null),a})(),ya()]}})}function La(e){let[r,t]=pe(!1),o=()=>`sync server: ${e.connected?"connected":"disconnected"}`;return[(()=>{var n=_a();return n.$$click=()=>t(i=>!i),lt(i=>{var a=e.connected?"":void 0,d=o(),l=o(),c=r();return a!==i.e&&We(n,"data-connected",i.e=a),d!==i.t&&We(n,"title",i.t=d),l!==i.a&&We(n,"aria-label",i.a=l),c!==i.o&&We(n,"aria-expanded",i.o=c),i},{e:void 0,t:void 0,a:void 0,o:void 0}),n})(),A(W,{get when(){return r()},get children(){var n=xa(),i=n.firstChild,a=i.nextSibling,d=a.nextSibling;return D(n,()=>e.connected?"connected":"disconnected",a),n}})]}function wr(e){let[r,t]=pe(!1),o;st(()=>clearTimeout(o));let n=async()=>{e.card&&(await navigator.clipboard.writeText(e.card),t(!0),clearTimeout(o),o=setTimeout(()=>t(!1),1500))};return A(ke,{get url(){return e.url},title:"not shared with you yet",get children(){return[ka(),Ca(),$a(),A(W,{get when(){return e.card},get children(){var i=ct(),a=i.firstChild;return a.$$click=()=>void n(),D(a,()=>r()?"copied":"copy my card"),i}})]}})}function yr(e){let[r,t]=pe(!1),o=async()=>{t(!0);try{await e.onRetry()}finally{t(!1)}};return A(ke,{get url(){return e.url},get title(){return`can't load ${e.name}`},get children(){return[Sa(),(()=>{var n=Ea();return D(n,()=>e.error),n})(),(()=>{var n=ct(),i=n.firstChild;return i.$$click=()=>void o(),D(i,()=>r()?"trying\u2026":"try again"),lt(()=>i.disabled=r()),n})()]}})}function _r(e){return A(ke,{get url(){return e.url},title:"this link is broken",get children(){return[Ta(),Aa(),(()=>{var r=Da(),t=r.firstChild;return D(t,()=>e.url),r})()]}})}ia(["click"]);import*as kr from"@inkandswitch/patchwork-elements";import{isKeyhiveDoc as Ma}from"@inkandswitch/patchwork-plugins";var xr=kr.hasActiveAccess,Cr=()=>globalThis.hive;async function $r(e,r){if(Ma(r))try{if(xr)return await xr(e,r);let t=e.active.individual.id;return!!(e.bestAccessForDoc?await e.bestAccessForDoc(t,r):await e.accessForDoc(t,r))}catch{return}}function Sr(e,r){return e.networkAdapter?.on("ingest-remote",r),()=>e.networkAdapter?.off("ingest-remote",r)}function Er(e){try{let r="";for(let t of e.active.contactCard.toBytes())r+=String.fromCharCode(t);return btoa(r)}catch{return}}var Oa=Ne("<div class=document-view>"),Ir=Ne("<patchwork-view>",!0,!1,!1),za=Ne("<div class=placeholder>Select a document in the sidebar"),Ua=Ne("<div class=doc-stack>"),Ja=5e3;function Rr({viewKey:e,selectedDocUrl:r,toolId:t,ref:o}){let n,[i,a]=J();return Ba(()=>{a(n.closest("repo-provider")?.repo??null)}),(()=>{var d=Oa();return Dr(l=>{n=l,o?.(l)},d),V(d,I(H,{get when(){return Ce(()=>i()!==void 0)()&&e()},keyed:!0,children:l=>I(H,{get when(){return i()},get fallback(){return(()=>{var c=Ir();return c._$owner=Ar(),Tr(s=>{var u=r(),p=t();return u!==s.e&&(c.docUrl=s.e=u),p!==s.t&&(c.toolId=s.t=p),s},{e:void 0,t:void 0}),c})()},children:c=>I(Va,{get url(){return r()},toolId:t,get repo(){return c()}})})}),null),V(d,(()=>{var l=Ce(()=>!r());return()=>l()&&za()})(),null),d})()}function Va(e){let r=qa("patchwork:tool"),[t,o]=J(0);te(r.on("changed",()=>{o(g=>g+1)}));let[n,i]=J({state:"finding"}),[a,d]=J(),l=()=>e.toolId()??a(),[c,s]=J(!1),[u,p]=J(0),b=!1;te(()=>b=!0);async function w(){try{let g=await e.repo.find(e.url);if(b)return;let y=n().state==="unavailable";i({state:"ready",doc:g.doc()}),y&&!c()&&p(E=>E+1)}catch(g){if(b)return;let y=Ya(g);i({state:y?"invalid":"unavailable"}),y||h(E=>E+1)}}let[m,h]=J(0),f,_;function R(){_?.(),f=Ka(e.repo,e.url),_=f?.subscribe(g=>{g.state==="ready"&&n().state==="unavailable"&&w()})}te(()=>_?.()),w(),R();function F(){let g=e.repo;if(typeof g.resyncSubduction=="function")try{g.resyncSubduction(ja(e.url).documentId)}catch{}}let N;te(()=>clearTimeout(N));function G(g=1e3){F(),clearTimeout(N),N=setTimeout(()=>void w(),g)}dt(()=>{let g=m();g===0||n().state!=="unavailable"||c()||(G(Math.min(3e4,3e3*2**(g-1))),te(()=>clearTimeout(N)))});let Z=He(()=>{t();let g=n();if(g.state!=="ready")return g;let y=g.doc,E=y?Ha(y):void 0;if(!E)return{state:"open",toolId:void 0};let T=l(),U;if(!T){let z=Fr(()=>Na(y));z&&Xa(z.supportedDatatypes,E)?U={id:z.id,name:z.name}:z&&(T=z.id)}return T&&r.get(T)?{state:"open",toolId:T}:{state:"no-tool",type:E,suggestion:Wa(y),anything:U}}),M=He(()=>Z().state),q=He(()=>{let g=Z();return g.state==="open"?g.toolId:void 0}),[he,fe]=J();async function Se(g){try{return await r.load(g),q()===g&&fe(void 0),!0}catch(y){return q()===g&&fe({id:g,message:y instanceof Error?y.message:String(y)}),!1}}dt(()=>{let g=q();fe(void 0),g&&Se(g)});let K=Cr(),[S,$]=J();dt(()=>{if(!K||M()!=="open"){$(void 0);return}let g=e.url,y=!0,E=()=>void $r(K,g).then(z=>{y&&$(z)});E();let T=Sr(K,E),U=setInterval(()=>{S()===!1&&E()},Ja);te(()=>{y=!1,T(),clearInterval(U)})});async function Y(){let g=he()?.id;g&&await Se(g)&&p(y=>y+1)}let L=He(()=>{let g=Z();return g.state==="no-tool"?g:void 0});return(()=>{var g=Ua();return Dr(y=>{let E=T=>{let U=T.detail;U?.url&&U.url!==e.url||(s(!0),n().state==="unavailable"&&w())};y.addEventListener("patchwork:mounted",E),te(()=>y.removeEventListener("patchwork:mounted",E))},g),V(g,I(H,{get when(){return Ce(()=>M()==="open")()&&!he()||M()==="unavailable"},get children(){return I(H,{get when(){return u()+1},keyed:!0,children:y=>(()=>{var E=Ir();return E._$owner=Ar(),Tr(T=>{var U=e.url,z=l();return U!==T.e&&(E.docUrl=T.e=U),z!==T.t&&(E.toolId=T.t=z),T},{e:void 0,t:void 0}),E})()})}}),null),V(g,I(H,{get when(){return M()==="finding"},get children(){return I(gr,{})}}),null),V(g,I(H,{get when(){return Ce(()=>M()==="open")()&&S()===!1},get children(){return I(wr,{get url(){return e.url},get card(){return K&&Er(K)}})}}),null),V(g,I(H,{get when(){return he()},children:y=>I(yr,{get url(){return e.url},get name(){return r.get(y().id)?.name??y().id},get error(){return y().message},onRetry:Y})}),null),V(g,I(H,{get when(){return M()==="invalid"},get children(){return I(_r,{get url(){return e.url}})}}),null),V(g,I(H,{get when(){return Ce(()=>M()==="unavailable")()&&!c()},get children(){return I(vr,{get url(){return e.url},get repo(){return e.repo},onRetry:G})}}),null),V(g,I(H,{get when(){return L()},children:y=>I(br,{get url(){return e.url},get type(){return y().type},get suggestion(){return y().suggestion},get anything(){return y().anything},onPeek:d,get repo(){return e.repo}})}),null),g})()}function Ka(e,r){let t=e.findWithProgress;if(typeof t=="function")return Fr(()=>{let o=t.call(e,r);return typeof o?.subscribe=="function"&&typeof o?.peek=="function"?o:void 0})}function Ya(e){let r=e?.message??String(e);return/invalid (automergeurl|document url|documentid|document id)/i.test(r)}function Xa(e,r){let t=e==="*"?["*"]:e??[];return t.includes("*")&&!t.includes(r)}function Fr(e){try{return e()}catch{return}}var Ga=ut("<patchwork-view component=patchwork-draft-state-provider>",!0,!1,!1),Za=ut("<div class=frame__main-column><div class=frame__doc-column><div class=main-area>"),Qa=ut("<patchwork-view component=patchwork-draft-overlay-provider><patchwork-view component=patchwork-comments-provider><patchwork-view component=patchwork-focus-provider>",!0,!1,!1);function Or(e){let[r,t]=re(e.initialRightCollapsed()),[o,n]=re(e.initialRightWidth());Pr(Mr(r,p=>{try{localStorage.setItem(B.rightCollapsed,String(p))}catch{}},{defer:!0})),Pr(Mr(o,p=>{try{localStorage.setItem(B.rightWidth,String(p))}catch{}},{defer:!0}));let i=Xe("right",{isCollapsed:r,setCollapsed:t,setWidth:n});ti(()=>{let p=()=>t(!0);window.addEventListener(Ee,p),ei(()=>window.removeEventListener(Ee,p))});let[a,d]=Ye(re(),{name:B.contextToolId}),[l,c]=re(),s=oe("patchwork-draft-state-provider",l),u=()=>s()?l():void 0;return X(Je,{get when(){return e.selectedDocUrl()},keyed:!0,children:p=>(()=>{var b=Ga();return Be(c,b),b.docUrl=p,b._$owner=qe(),$e(b,X(Je,{get when(){return u()},children:w=>X(ri,{get host(){return w()},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:d})})),b})()})}function ri(e){let r=me("context-tool"),t=()=>r().length>0,o=Lr(()=>e.selectedDocUrl()),[n,i]=re(),a=oe("patchwork-draft-overlay-provider",n),[d,l]=re(),c=oe("patchwork-comments-provider",d),[s,u]=re(),p=oe("patchwork-focus-provider",s),b=Lr(()=>a()&&c()&&p());return(()=>{var w=Qa(),m=w.firstChild,h=m.firstChild;return Be(i,w),w._$owner=qe(),Be(l,m),m._$owner=qe(),Be(u,h),h._$owner=qe(),$e(h,X(Je,{get when(){return b()},get children(){var f=Za(),_=f.firstChild,R=_.firstChild;return $e(_,X(er,{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(F=>!F)}),R),$e(R,X(Rr,{viewKey:o,get selectedDocUrl(){return e.selectedDocUrl},get toolId(){return e.selectedToolId},ref:F=>e.setMainDocElement?.(F)})),$e(f,X(Je,{get when(){return t()},get children(){return X(Kt,{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),f}})),w})()}var Ve=`:root,
|
|
12
12
|
:host,
|
|
13
13
|
[theme] {
|
|
14
14
|
--threepane-bg: var(--studio-fill, white);
|
|
@@ -1206,5 +1206,5 @@ Its code runs in this page and can read and change your documents. Only load it
|
|
|
1206
1206
|
body[data-sidebar-resizing] .sidebar {
|
|
1207
1207
|
transition: none;
|
|
1208
1208
|
}
|
|
1209
|
-
`;function
|
|
1210
|
-
//# sourceMappingURL=chunk-
|
|
1209
|
+
`;function zr(){let e="patchwork-frame-styles",r=document.getElementById(e);if(r){r.textContent!==Ve&&(r.textContent=Ve);return}let t=document.createElement("style");t.id=e,t.textContent=Ve,document.head.append(t)}var li=Wr("<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),ci=Wr("<div class=frame>");function Ed(e){let r=Ur(()=>{let o=new Set,n=e.selectedDocUrl();return n&&o.add(n),e.contactUrl&&o.add(e.contactUrl),[...o]}),t=Ur(()=>JSON.stringify({selectedDocUrl:e.selectedDocUrl(),selectedToolId:e.selectedToolId(),doctitleSlots:e.doctitleSlots(),isLeftCollapsed:e.isLeftCollapsed(),initialRightWidth:e.initialRightWidth(),initialRightCollapsed:e.initialRightCollapsed()}));return(()=>{var o=li(),n=o.firstChild;return o._$owner=si(),Hr(n,t),ii(()=>ai(o,"automerge-allowlist",r().join(","))),o})()}function jr(e){if(!e?.textContent)return{};try{return JSON.parse(e.textContent)}catch(r){return console.error("[threepane-isolation-root] bad props JSON:",r),{}}}function Td(e){zr();let r=e.querySelector('script[type="application/json"]'),[t,o]=di(jr(r)),n=new MutationObserver(()=>{o(ui(jr(r)))});r&&n.observe(r,{characterData:!0,childList:!0,subtree:!0});let i=pi(()=>(()=>{var a=ci();return Hr(a,ni(Or,{selectedDocUrl:()=>t.selectedDocUrl,selectedToolId:()=>t.selectedToolId,doctitleSlots:()=>t.doctitleSlots,isLeftCollapsed:()=>t.isLeftCollapsed??!1,initialRightWidth:()=>t.initialRightWidth??Te,initialRightCollapsed:()=>t.initialRightCollapsed??!1})),a})(),e);return()=>{n.disconnect(),i()}}export{$t as a,be as b,B as c,Ee as d,Te as e,bt as f,vt as g,Vr as h,Xe as i,ao as j,qt as k,tt as l,Vl as m,Kl as n,Rr as o,Or as p,zr as q,Ed as r,Td as s};
|
|
1210
|
+
//# sourceMappingURL=chunk-2TJAL7D5.js.map
|