@devframes/hub-ui 0.9.6 → 0.9.7
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/dist/client/embedded.js +4226 -4147
- package/dist/client/standalone/assets/DockStandalone-CUnO93Bh.js +3 -0
- package/dist/client/standalone/assets/context-XVfTZFii.js +1 -0
- package/dist/client/standalone/assets/{docks-DFXStXQt.js → docks-DZd0ZNrd.js} +1 -1
- package/dist/client/standalone/assets/{index-Bj2-UvZ0.js → index-Cm_XqfDS.js} +3 -3
- package/dist/client/standalone/assets/keybindings-D1V7S3LX.js +4 -0
- package/dist/client/standalone/index.html +2 -2
- package/package.json +8 -8
- package/dist/client/standalone/assets/DockStandalone-BVr1VMtK.js +0 -3
- package/dist/client/standalone/assets/context-B4i6GqYV.js +0 -1
- package/dist/client/standalone/assets/keybindings-Ck-Pl3aa.js +0 -4
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{At as e,Dt as t,Ot as n,P as r,St as i,Tt as a,a as o,at as s,ft as c,ht as l,i as u,it as d,jt as f,kt as ee,n as p,o as m,pt as h,r as g,t as _,u as v,ut as y,xt as b}from"./docks-DFXStXQt.js";import{D as x,F as S,H as C,I as te,L as ne,M as re,N as ie,R as w,U as T,W as E,d as ae,f as D,j as oe,k as se,l as ce,n as O,p as k,r as A,s as j,z as le}from"./keybindings-Ck-Pl3aa.js";var M=new WeakMap;async function ue(e,t,n,i){if(M.has(t))return M.get(t);let a=await t.sharedState.get(`devframe:commands`,{initialValue:[]}),o=u(a),s=c(new Map),l=u(n),d=r(()=>l.value.commandShortcuts??{}),f=h(!1),ee=k(),p=()=>i?i():{clientType:e,dockOpen:!1,paletteOpen:f.value,dockSelectedId:``,popupOpen:ee.value},m=r(()=>[...o.value,...Array.from(s.values())]),g=r(()=>{let e=p();return A(m.value,e).filter(e=>e.showInPalette!==!1)});function _(e){let t=Array.isArray(e)?e:[e];for(let e of t)s.set(e.id,e);return()=>{for(let e of t)s.delete(e.id)}}function v(e){let t=m.value.find(t=>t.id===e);if(t)return t;for(let t of m.value)if(t.children){let n=t.children.find(t=>t.id===e);if(n)return n}}async function b(e,...n){let r=v(e);if(!r)throw Error(`Command "${e}" not found`);if(r.when){let t=p();if(!C(r.when,t))throw Error(`Command "${e}" is not available in the current context`)}if(r.source===`server`)return t.call(`hub:commands:execute`,e,...n);if(r.action)return r.action(...n);throw Error(`Command "${e}" has no action`)}function x(e){let t=d.value[e];return t===void 0?v(e)?.keybindings??[]:t}typeof window<`u`&&N(p,m,x,b);let S=c({commands:m,paletteCommands:g,register:_,execute:b,getKeybindings:x,settings:y(n),paletteOpen:f});return M.set(t,S),S}function N(e,t,n,r){let i=i=>{let a=j(i);if(!a||a===`Mod`||a===`Shift`||a===`Alt`)return;let o=e(),s=O(t,n);for(let{id:e,keybinding:n}of s){if(n.key!==a)continue;let s=t.value.find(t=>t.id===e)??t.value.flatMap(e=>e.children??[]).find(t=>t.id===e);if(!(s?.when&&!C(s.when,o))){i.preventDefault(),i.stopPropagation(),r(e).catch(console.error);return}}};window.addEventListener(`keydown`,i,{capture:!0}),d(D(),(e,t)=>{t&&t.removeEventListener(`keydown`,i,{capture:!0}),e&&e.addEventListener(`keydown`,i,{capture:!0})})}function de(e){let t=[],n;async function r(){if(e.isTrusted===!0)return n===void 0&&(n=new Promise(async e=>{for(;t.length>0;)await t.shift()();e()})),n}async function i(n){return e.isTrusted===!0&&t.length!==0&&await r(),e.isTrusted===!0&&t.length===0?await n():new Promise(e=>{t.push(async()=>{e(await n())})})}e.events.on(`rpc:is-trusted:updated`,e=>{e&&t.length>0&&r()});let a={add(t){return i(async()=>{let n=await e.call(`hub:messages:add`,t);return{get entry(){return n},get id(){return n.id},async update(t){let r=await e.call(`hub:messages:update`,n.id,t);return r&&(n=r),r??void 0},async dismiss(){await e.call(`hub:messages:remove`,n.id)}}})},remove(t){return i(()=>e.call(`hub:messages:remove`,t))},clear(){return i(()=>e.call(`hub:messages:clear`))},info:(e,t)=>a.add({...t,message:e,level:`info`}),warn:(e,t)=>a.add({...t,message:e,level:`warn`}),error:(e,t)=>a.add({...t,message:e,level:`error`}),success:(e,t)=>a.add({...t,message:e,level:`success`}),debug:(e,t)=>a.add({...t,message:e,level:`debug`})};return a}function P(e){switch(e.type){case`action`:return e.action;case`custom-render`:return e.renderer;case`iframe`:return e.clientScript;default:return}}async function F(e,t){let n=P(e);if(!n?.importFrom)throw Error(`[@devframes/hub-ui] Dock entry "${e.id}" carries no client script to run`);let r=E(n.importFrom,{template:t.rpc.connectionMeta?.configs?.dock?.clientModuleResolution,metaBaseUrl:t.rpc.connection?.metaBaseUrl});try{let e=(await a(()=>import(r),[],import.meta.url))[n.importName??`default`];if(typeof e!=`function`)throw Error(`[@devframes/hub-ui] "${r}" exports no callable "${n.importName??`default`}"`);await e(t)}catch(e){throw console.error(`[@devframes/hub-ui] Error executing client script from ${r}${T(n.importFrom,r)}`,e),e}}var I=new Map;function fe(e,t){if(e.type!==`action`&&I.has(e.id))return I.get(e.id);let n=F(e,t);return e.type!==`action`&&I.set(e.id,n),n}var L=new WeakMap;async function R(a,C,T,E){if(L.has(C))return L.get(C);let{entries:D,initialSyncComplete:O}=await o(C),A={},j=await C.sharedState.get(e,{initialValue:A}),M=u(j),N=m(j,A),P=c(new Map),F=r(()=>{let e=D.value,t;if(P.size===0)t=e;else{let n=new Set,r=[];for(let t of e)n.add(t.id),r.push(P.get(t.id)??t);for(let[e,t]of P)n.has(e)||r.push(t);t=r}return t.some(e=>e.id===w.id)?t:[...t,w]});E||=h(p());let I={...E.value},R=h(I.open&&I.selectedDockId!=null),z=r({get:()=>E.value.selectedDockId,set:e=>{E.value.selectedDockId=e}}),pe=r({get:()=>E.value.selectedDockRoute,set:e=>{E.value.selectedDockRoute=e}}),B=r(()=>R.value?null:F.value.find(e=>e.id===z.value)??ne.find(e=>e.id===z.value)??null),V=c(new Map);s(()=>{for(let e of F.value){if(V.has(e.id)){V.get(e.id).entryMeta=e;continue}V.set(e.id,g(e,B))}});let me=(e,t=!1)=>{if(P.has(e.id)&&!t)throw Error(`[@devframes/hub-ui] a client dock "${e.id}" is already registered — pass force to overwrite`);return P.set(e.id,e),V.has(e.id)||V.set(e.id,g(e,B)),{update:t=>{if(t.id!=null&&t.id!==e.id)throw Error(`[@devframes/hub-ui] a client dock id is immutable ("${e.id}")`);let n=P.get(e.id);n&&P.set(e.id,{...n,...t})},dispose:()=>{P.delete(e.id)&&(V.delete(e.id),z.value===e.id&&(z.value=null))}}},he=e=>{if(!P.has(e.id))throw Error(`[@devframes/hub-ui] no client dock "${e.id}" to update — register it first`);P.set(e.id,e)};T||=h(_());let H,ge,U=y(await(async()=>(ge||=C.sharedState.get(`devframe:user-settings`,{initialValue:ee()}),ge))()),W=u(U),G,_e=k(),K=()=>({clientType:a,dockOpen:E.value.open,paletteOpen:G?.paletteOpen??!1,dockSelectedId:z.value??``,popupOpen:_e.value}),q=new Map,J=async(e=null)=>{if(e==null)return R.value=!1,z.value=null,E.value.open=!1,E.value.selectedDockRoute=null,!0;if(e===`~client-auth-notice`)return R.value=!1,z.value=e,E.value.open=!0,!0;let t=F.value.find(t=>t.id===e);if(!t)return!1;if(t.type===`group`){let e=te(F.value,t.id,t.defaultChildId,K())?.id??oe(F.value,t.id)[0]?.id;return e?J(e):!1}if(t.type===`iframe`&&t.subTabs){let n=t.frameId??t.id,r=q.get(n);if(r&&r!==e&&F.value.some(e=>e.id===r))return J(r)}if(t.type===`action`&&await ae(a,t.id)!=null)return!1;if(t.type===`action`||t.type===`custom-render`||t.type===`iframe`&&t.clientScript){let n=V.get(e),r=de(C);await fe(t,c({...l(H),current:n,messages:r,logs:r}))}return t.type===`iframe`&&t.frameId&&!t.subTabs&&q.set(t.frameId,t.id),R.value=!1,z.value=t.id,E.value.open=!0,t.type!==`iframe`&&(E.value.selectedDockRoute=null),!0},Y=async e=>z.value===e?J(null):J(e),X=new Map,Z=new Map,ve=(e,t)=>{let n=e.frameId??e.id,r=t=>{let r=X.get(n);if(r){if(r.iframe===t)return;r.dispose(),X.delete(n)}let i=b({frameId:n,anchor:e,iframe:t,window:t.ownerDocument?.defaultView??globalThis,docks:{register:me,switchEntry:J,getStateById:e=>V.get(e)}});X.set(n,{iframe:t,dispose:i.dispose})};t.domElements.iframe&&r(t.domElements.iframe),t.events.on(`dom:iframe:mounted`,r)};d(F,e=>{let t=new Set;for(let n of e){if(n.type!==`iframe`||!n.subTabs||(t.add(n.id),Z.has(n.id)))continue;let e=V.get(n.id);e&&(Z.set(n.id,n.frameId??n.id),ve(n,e))}for(let[e,n]of[...Z])t.has(e)||(Z.delete(e),X.get(n)?.dispose(),X.delete(n))},{immediate:!0}),C.client.register({name:f.broadcast.docksActivate,type:`action`,handler:e=>{e?.dockId&&J(e.dockId)}});let Q=C.connectionMeta.configs?.ui?.dockPreferences?.categoryOrder,ye=r(()=>x(F.value,W.value,{whenContext:K(),collapseGroups:!0,categoryOrderOverride:Q}));G=await ue(a,C,U,K),G.register([{id:`devframes:toggle-palette`,source:`client`,title:`Toggle Command Palette`,icon:`ph:magnifying-glass-duotone`,showInPalette:!1,keybindings:[{key:`Mod+K`}],action:()=>{G.paletteOpen=!G.paletteOpen}},{id:`devframes:close-panel`,source:`client`,title:`Close Panel`,icon:`ph:x-circle-duotone`,when:`dockOpen && !paletteOpen`,keybindings:[{key:`Escape`}],action:()=>{E.value.open=!1,z.value=null}},{id:`devframes:open-settings`,source:`client`,title:`Open Settings`,icon:`ph:gear-duotone`,action:()=>{J(`~settings`)}},{id:`devframes:hide`,source:`client`,title:`Hide ${v().value.productName}`,icon:`ph:eye-slash-duotone`,when:`clientType == embedded`,action:()=>{window.dispatchEvent(new CustomEvent(le))}},{id:`devframes:dock-mode`,source:`client`,title:`Dock Mode`,icon:`ph:layout-duotone`,when:a===`embedded`?`clientType == embedded && !popupOpen`:void 0,children:[{id:`devframes:dock-mode:float`,source:`client`,title:`Float Mode`,icon:`ph:cards-three-duotone`,when:`!popupOpen`,action:()=>{T.value.mode=`float`}},{id:`devframes:dock-mode:edge`,source:`client`,title:`Edge Mode`,icon:`ph:square-half-bottom-duotone`,when:`!popupOpen`,action:()=>{T.value.mode=`edge`}}]}]);let be;s(()=>{be?.();let e=e=>({id:`devframes:docks:${e.id}`,source:`client`,title:e.title,icon:S(e.icon),action:()=>{Y(e.id)}}),t=ie(F.value),n=F.value.filter(e=>e.type!==`~builtin`).filter(e=>!(e.groupId&&t.has(e.groupId))).map(t=>{if(t.type!==`group`)return e(t);let n=re(F.value,t.id,W.value,{whenContext:K()}),r=n.length<=1?(n[0]?.[1]??[]).map(e):n.map(([n,r])=>({id:`devframes:docks:${t.id}:cat:${n}`,source:`client`,title:se(n),children:r.map(e)}));return{...e(t),children:r}});n.length>0&&(be=G.register({id:`devframes:docks`,source:`client`,title:`Docks`,icon:`ph:layout-duotone`,children:n}))});let $=I.selectedDockId==null?null:I.selectedDockRoute;H=c({panel:{store:T,session:E,isDragging:!1,isResizing:!1,isVertical:r(()=>T.value.position===`left`||T.value.position===`right`),consumeBootRoute:e=>{if($!=null&&e===I.selectedDockId){let e=$;return $=null,e}return null}},docks:{selectedId:z,selectedRoute:pe,selected:B,entries:F,entryToStateMap:y(V),groupedEntries:ye,categoryOrder:Q?{...n,...Q}:n,settings:U,getStateById:e=>V.get(e),switchEntry:J,toggleEntry:Y,register:me,update:he},commands:G,when:{get context(){return K()}},connection:{get status(){return C.status},get error(){return C.connectionError},events:C.events},renderers:y(i({context:()=>H,manifest:()=>M.value})),rpc:y(C),clientType:a}),ce(a,async e=>{let t=F.value.find(t=>t.id===e);return!t||t.type!==`action`?!1:J(t.id)});let xe=async()=>{C.isTrusted||await new Promise(e=>{let n=C.events.on(t.client.isTrustedUpdated,t=>{t&&(n(),e())})})};return(async()=>{let e=I.selectedDockId;if(!(!I.open||e==null)&&(await Promise.all([xe(),O,N]),R.value)){if(z.value!==e){R.value=!1;return}R.value=!1,await J(e)}})(),L.set(C,H),H}export{R as createDocksContext};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DockStandalone-BVr1VMtK.js","./docks-DFXStXQt.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{Dt as e,Et as t,Ot as n,Tt as r,c as i,it as a,mt as o,p as s,s as c,u as l}from"./docks-DFXStXQt.js";var u=`devframe-remote-connection`,d=e.postMessage.remoteAssetsError,f=/^[a-z][a-z\d+.-]*:/i;function p(e){let t=e.trim();return!!t&&!t.startsWith(`/`)&&!t.startsWith(`./`)&&!t.startsWith(`../`)&&!f.test(t)}function m(e,t={}){if(!p(e))return e;let n=t.resolveClientModule?.(e);if(n)return n;if(!t.template)return e;let r=t.template.includes(`{specifier}`)?t.template.replaceAll(`{specifier}`,e):t.template+e;try{return new URL(r,t.metaBaseUrl).href}catch{return r}}function h(e,t){return p(e)?t===e?" — the specifier is a bare npm specifier and this host advertises no client-module resolution (`ConnectionMeta.configs.dock.clientModuleResolution`). Serve the script as a self-contained bundle by URL, pass `resolveClientModule` to this client host, or run under a host that resolves bare specifiers (e.g. Vite: `/@id/{specifier}`).":` — the host resolved the bare specifier "${e}" to this URL but could not serve the module. Check the package is installed and resolvable from the host project's root (and built, if its exports point at build output).`:``}function g(e){function t(e){let t=e.split(`&`),n=t.filter(e=>e.split(`=`)[0]!==u);return[n.join(`&`),n.length!==t.length]}let n=e.indexOf(`#`),r=n===-1?e:e.slice(0,n),i=n===-1?void 0:e.slice(n+1),a=!1;if(i!==void 0){let e=i.indexOf(`?`);if(e===-1){let[e,n]=t(i);i=e,a||=n}else{let n=i.slice(0,e),[r,o]=t(i.slice(e+1));o&&(i=r?`${n}?${r}`:n,a=!0)}}let o=r.indexOf(`?`);if(o!==-1){let e=r.slice(0,o),[n,i]=t(r.slice(o+1));i&&(r=n?`${e}?${n}`:e,a=!0)}return a?i?`${r}#${i}`:r:e}var _=[`===`,`!==`,`==`,`!=`,`<=`,`>=`,`&&`,`||`,`<`,`>`,`+`,`-`,`*`,`/`,`%`,`!`],v=/[a-z_$]/i,ee=/[\w$.:]/,y=/\d/,te=/\s/;function ne(e){let t=[],n=0;for(;n<e.length;){let r=e[n];if(te.test(r)){n++;continue}if(r===`(`){t.push({type:`lparen`}),n++;continue}if(r===`)`){t.push({type:`rparen`}),n++;continue}let i=!1;for(let r of _)if(e.startsWith(r,n)){t.push({type:`op`,value:r}),n+=r.length,i=!0;break}if(!i){if(y.test(r)){let r=n;for(;r<e.length&&y.test(e[r]);)r++;if(e[r]===`.`&&r+1<e.length&&y.test(e[r+1]))for(r++;r<e.length&&y.test(e[r]);)r++;t.push({type:`number`,value:Number(e.slice(n,r))}),n=r;continue}if(r===`"`||r===`'`){let i=r,a=n+1,o=``;for(;a<e.length&&e[a]!==i;)if(e[a]===`\\`&&a+1<e.length){let t=e[a+1];o+=t===`n`?`
|
|
3
|
-
`:t===`t`?` `:t,a+=2}else o+=e[a],a++;if(a>=e.length)throw Error(`Unterminated string literal at position ${n}`);a++,t.push({type:`string`,value:o}),n=a;continue}if(v.test(r)){let r=n;for(;r<e.length&&ee.test(e[r]);)r++;let i=e.slice(n,r);i===`true`?t.push({type:`bool`,value:!0}):i===`false`?t.push({type:`bool`,value:!1}):t.push({type:`ident`,value:i}),n=r;continue}throw Error(`Unexpected character "${r}" at position ${n}`)}}return t.push({type:`eof`}),t}function re(e){let t=ne(e),n=0,r=()=>t[n],i=()=>t[n++],a=e=>{let t=r();return t.type===`op`&&t.value===e},o=()=>{let e=i();if(e.type!==`op`)throw Error(`internal: expected operator token, got ${b(e)}`);return e.value};function s(){let e=c();for(;a(`||`);)i(),e={type:`binary`,op:`||`,left:e,right:c()};return e}function c(){let e=l();for(;a(`&&`);)i(),e={type:`binary`,op:`&&`,left:e,right:l()};return e}function l(){let e=u();for(;a(`===`)||a(`!==`)||a(`==`)||a(`!=`);){let t=o(),n=t===`==`||t===`!=`?h():u();e={type:`binary`,op:t,left:e,right:n}}return e}function u(){let e=d();for(;a(`<=`)||a(`>=`)||a(`<`)||a(`>`);)e={type:`binary`,op:o(),left:e,right:d()};return e}function d(){let e=f();for(;a(`+`)||a(`-`);)e={type:`binary`,op:o(),left:e,right:f()};return e}function f(){let e=p();for(;a(`*`)||a(`/`)||a(`%`);)e={type:`binary`,op:o(),left:e,right:p()};return e}function p(){return a(`!`)||a(`-`)||a(`+`)?{type:`unary`,op:o(),operand:p()}:m()}function m(){let e=r();if(e.type===`number`||e.type===`string`||e.type===`bool`)return i(),{type:`literal`,value:e.value};if(e.type===`ident`)return i(),{type:`key`,key:e.value};if(e.type===`lparen`){i();let e=s(),t=r();if(t.type!==`rparen`)throw Error(`Expected ")" but got ${b(t)}`);return i(),e}throw Error(`Unexpected token: ${b(e)}`)}function h(){let e=r();if(e.type===`string`)return i(),{type:`literal`,value:e.value};if(e.type===`number`||e.type===`bool`)return i(),{type:`literal`,value:String(e.value)};if(e.type===`ident`)return i(),{type:`literal`,value:e.value};throw Error(`Expected value literal or identifier on right side of equality, got ${b(e)}`)}let g=s(),_=r();if(_.type!==`eof`)throw Error(`Unexpected token: ${b(_)}`);return g}function b(e){switch(e.type){case`eof`:return`end of expression`;case`lparen`:return`"("`;case`rparen`:return`")"`;case`op`:case`ident`:case`string`:return`"${e.value}"`;case`number`:case`bool`:return`"${String(e.value)}"`}}function ie(e,t,n={}){let{strict:r=!1}=n;return!!x(e,t,r)}function x(e,t,n){switch(e.type){case`literal`:return e.value;case`key`:return se(e.key,t,n);case`unary`:return S(e.op,x(e.operand,t,n));case`binary`:return ae(e,t,n)}}function S(e,t){switch(e){case`!`:return!t;case`-`:return-t;case`+`:return+t}}function ae(e,t,n){let{op:r}=e;if(r===`&&`)return x(e.left,t,n)&&x(e.right,t,n);if(r===`||`)return x(e.left,t,n)||x(e.right,t,n);let i=x(e.left,t,n),a=x(e.right,t,n);switch(r){case`==`:return String(i)===String(a);case`!=`:return String(i)!==String(a);case`===`:return i===a;case`!==`:return i!==a;case`<`:return i<a;case`>`:return i>a;case`<=`:return i<=a;case`>=`:return i>=a;case`+`:return i+a;case`-`:return i-a;case`*`:return i*a;case`/`:return i/a;case`%`:return i%a}}function oe(e,t,n){return ie(re(e),t,n)}function se(e,t,n){let{found:r,value:i}=ce(e,t);if(!r&&n)throw Error(`Unknown context key: "${e}"`);return i}function ce(e,t){if(e in t)return{found:!0,value:t[e]};let n=e.includes(`.`)?`.`:e.includes(`:`)?`:`:null;if(n){let r=e.split(n),i=t;for(let e of r){if(typeof i!=`object`||!i)return{found:!1,value:void 0};let t=i;if(!(e in t))return{found:!1,value:void 0};i=t[e]}return{found:!0,value:i}}return{found:!1,value:void 0}}function C(e,t,n){return oe(e,t,n)}var le=`devframes:hub-ui:hide`,ue=`devframes_plugin_terminals`,de=`devframes_plugin_messages`,fe=Object.freeze({type:`~builtin`,category:`~builtin`,id:`~client-auth-notice`,title:`Unauthorized`,icon:`ph:warning-duotone`}),w=Object.freeze({type:`~builtin`,category:`~builtin`,id:`~settings`,title:`Settings`,icon:`ph:gear-duotone`}),pe=Object.freeze([fe,w]),T=`~pinned`,me=-1e5;function E(e,t){return e===T?me:t?.[e]??n[e]??0}function he(e){return typeof e==`string`?e:e?.light??e?.dark}var ge={default:`Default`,app:`App`,framework:`Framework`,web:`Web`,advanced:`Advanced`,"~builtin":`Built-in`,[T]:`Pinned`};function _e(e){return e!==`~builtin`&&e!==T}function ve(e){return ge[e]??e}function ye(e){let t=new Set;for(let n of e)n.type===`group`&&t.add(n.id);return t}function be(e,t){if(!t||t.type===`group`||!t.groupId)return;let n=e.find(e=>e.id===t.groupId);return n?.type===`group`?n:void 0}function D(e,t,n,r){let i=e.filter(e=>e.type!==`group`&&e.groupId===t);if(!n)return i.length?[[`default`,i]]:[];let a=e.find(e=>e.type===`group`&&e.id===t);return O(i,n,{...r,ignoreCategoryHidden:!0,categoryOrderOverride:a?.categoryOrder})}function xe(e,t,n,r){return D(e,t,n,r).flatMap(([,e])=>e)}function Se(e,t,n,r){if(!n)return;let i=e.find(e=>e.type!==`group`&&e.groupId===t&&e.id===n);if(i){if(i.when){if(r){if(!C(i.when,r))return}else if(i.when===`false`)return}return i}}function O(e,t,n){let{docksHidden:r,docksCategoriesHidden:i,docksCustomOrder:a,docksPinned:o}=t,{includeHidden:s=!1,whenContext:c,collapseGroups:l=!1,ignoreCategoryHidden:u=!1,categoryOrderOverride:d}=n??{},f=new Map;for(let t of e)t.type===`group`&&f.set(t.id,t.category??`default`);let p=new Map;for(let n of e){let e=n.type!==`group`&&n.groupId?f.get(n.groupId):void 0;if(l&&e!==void 0||n.when&&c&&!C(n.when,c)&&!s||n.when&&!c&&n.when===`false`&&!s||n.visibility&&c&&!C(n.visibility,c)&&!s||n.visibility&&!c&&n.visibility===`false`&&!s||!s&&n.id===`devframes_plugin_inspect`&&!t.showDevframeInspector||!s&&r.includes(n.id))continue;let a=e??n.category??`default`,d=o.includes(n.id)&&e===void 0?T:a;!s&&!u&&i.includes(d)||(p.has(d)||p.set(d,[]),p.get(d).push(n))}let m=Array.from(p.entries()).sort(([e],[t])=>{let n=E(e,d),r=E(t,d);return r===n?t.localeCompare(e):n-r});return m.forEach(([e,t])=>{t.sort((e,t)=>{let n=a[e.id]??0,r=a[t.id]??0;if(n!==r)return n-r;let i=e.defaultOrder??0,o=t.defaultOrder??0;return o===i?t.title.localeCompare(e.title):i-o})}),m}function k(e){let{availableHeight:t,reservedHeight:n,itemHeight:r,dividerHeight:i,moreButtonHeight:a,dividerCount:o,totalItems:s}=e;if(s<=0||r<=0)return 0;let c=t-n-Math.max(0,o)*i;if(Math.floor(c/r)>=s)return s;let l=Math.floor((c-a)/r);return Math.max(0,l)}function A(e,t){let n=[],r=[],i=t;for(let[t,a]of e)i<=0?r.push([t,a]):a.length>i?(n.push([t,a.slice(0,i)]),r.push([t,a.slice(i)]),i=0):(i-=a.length,n.push([t,a]));return r.reduce((e,[,t])=>e+t.length,0)===1?{visible:[...n,...r],overflow:[]}:{visible:n,overflow:r}}var j=o(null),M=o(null),N=o(null),P=o(null);function Ce(e){j.value=e}function we(){return j}function F(e){M.value=e}function Te(){return M}function Ee(e){N.value=e}function De(){return N}var I=o(null);function Oe(e){I.value=e}function ke(){return I}function Ae(e){P.value=e}function je(){return P}var L=o(null);function Me(e){L.value=e}function Ne(){return L}var R=20,z=100,Pe=320,Fe=240,B=`__DEVFRAMES_TRIGGER_DOCK_ACTION__`,V=`__DEVFRAME_CONNECTION_META__`,H=o(null),U=o(!1),W=t(),G,K,q,J,Ie=async()=>await r(()=>import(`./DockStandalone-BVr1VMtK.js`).then(e=>e.DockStandalone),__vite__mapDeps([0,1]),import.meta.url);W.on(`popup:open-requested`,e=>{qe(e)});function Y(){if(!(typeof window>`u`))return window.documentPictureInPicture}function Le(){G?.(),G=void 0,K?.(),K=void 0}function Re(e){return a(s,t=>{e.document.documentElement?.style.setProperty(`color-scheme`,t?`dark`:`light`)},{immediate:!0})}function ze(){q?.remove(),q=void 0}function X(){Le(),ze(),H.value=null,U.value=!1;let e=J;J=void 0,e?.docks.switchEntry(null)}function Z(e,t,n){return Math.min(Math.max(e,t),n)}function Be(e,t){window.innerWidth<=0||window.innerHeight<=0||(e.panel.store.width=Z(Math.round(t.innerWidth/window.innerWidth*100),R,z),e.panel.store.height=Z(Math.round(t.innerHeight/window.innerHeight*100),R,z))}async function Ve(e,t){let n=await Ie(),r=t.document.createElement(`style`);r.textContent=[`html, body {`,` margin: 0;`,` padding: 0;`,` width: 100%;`,` height: 100%;`,` overflow: hidden;`,` background: transparent;`,`}`,`#devframes-popup-root {`,` width: 100vw;`,` height: 100vh;`,`}`,`#devframes-popup-root > devframes-dock-standalone {`,` display: block;`,` width: 100%;`,` height: 100%;`,`}`].join(`
|
|
4
|
-
`),c(t.document,l().value),t.document.head?.appendChild(r),t.document.body.textContent=``,t[V]=globalThis[V]??e.rpc.connectionMeta;let a=t.document.createElement(`div`);a.id=`devframes-popup-root`,t.document.body.appendChild(a);let o=new n({context:e});i(o,l().value.primaryColor),q=o,a.appendChild(o)}function He(){return!!Y()?.requestWindow}function Ue(e,t){typeof window>`u`||e!==`standalone`&&(window[B]=t)}async function We(e,t){if(!(typeof window>`u`)&&e===`standalone`)try{let e=window.opener;if(!e||e.closed)return;let n=e[B];return typeof n==`function`?await n(t):void 0}catch{return}}function Ge(){return H}function Q(){return U}function Ke(e){W.emit(`popup:open-requested`,e)}async function qe(e){F(null);let t=H.value;if(t?.closed)X();else if(t)return t.focus(),t;let n=Y();if(!n?.requestWindow)return null;let r;try{let t=r=await n.requestWindow({width:Math.max(Pe,Math.round(window.innerWidth*e.panel.store.width/100)),height:Math.max(Fe,Math.round(window.innerHeight*e.panel.store.height/100))});await Ve(e,t),K=Re(t);let i=()=>Be(e,t),a=()=>{H.value===t&&X()};return t.addEventListener(`resize`,i),t.addEventListener(`pagehide`,a),G=()=>{t.removeEventListener(`resize`,i),t.removeEventListener(`pagehide`,a)},J=e,H.value=t,U.value=!0,t}catch{return r&&!r.closed&&r.close(),X(),null}}var $=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform??``);function Je(e){return e.split(`+`).map(e=>e===`Mod`?$?`⌘`:`Ctrl`:e===`Shift`?$?`⇧`:`Shift`:e===`Alt`?$?`⌥`:`Alt`:e)}function Ye(e){let t=[];($?e.metaKey:e.ctrlKey)&&t.push(`Mod`),($?e.ctrlKey:e.metaKey)&&t.push($?`Ctrl`:`Meta`),e.altKey&&t.push(`Alt`),e.shiftKey&&t.push(`Shift`);let n=e.key;return n.length===1&&(n=n.toUpperCase()),[`Control`,`Meta`,`Alt`,`Shift`].includes(n)||t.push(n),t.join(`+`)}function Xe(e,t){let n=e??[],r=t??[];return n.length===r.length&&n.every((e,t)=>e.key===r[t]?.key)}function Ze(e,t){return e!==void 0&&!Xe(e,t)}function Qe(e,t){let n=e=>!e.when||C(e.when,t),r=[];for(let t of e){if(!n(t))continue;if(!t.children){r.push(t);continue}let e=t.children.filter(n);r.push({...t,children:e})}return r}function $e(e,t){let n=[];for(let r of e.value){for(let e of t(r.id))n.push({id:r.id,keybinding:e});if(r.children)for(let e of r.children)for(let r of t(e.id))n.push({id:e.id,keybinding:r})}return n}var et={"Mod+T":`Open new tab`,"Mod+W":`Close tab`,"Mod+N":`Open new window`,"Mod+L":`Focus address bar`,"Mod+D":`Bookmark page`,"Mod+Q":`Quit browser`,"Mod+Shift+T":`Reopen closed tab`,"Mod+Shift+N":`Open incognito window`,"Mod+Shift+W":`Close window`,"Mod+Shift+Q":`Quit browser (Chrome)`,"Alt+F4":`Close window (Windows)`,"Mod+R":`Reload page`,"Mod+Shift+R":`Hard reload page`,"Mod+F":`Find in page`};export{be as A,de as B,De as C,O as D,k as E,he as F,g as G,C as H,Se as I,d as K,pe as L,D as M,ye as N,A as O,_e as P,w as R,Te as S,we as T,h as U,ue as V,m as W,Ee as _,Ze as a,je as b,He as c,We as d,Ge as f,F as g,Oe as h,Je as i,xe as j,ve as k,Ue as l,Ae as m,$e as n,$ as o,Q as p,Qe as r,Ye as s,et as t,Ke as u,Me as v,Ne as w,ke as x,Ce as y,le as z};
|