@loicngr/kobo 2.1.21 → 2.1.23
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/AGENTS.md +69 -4
- package/CHANGELOG.md +9 -0
- package/CONFIGURATION.md +112 -2
- package/dist/mcp-server/kobo-tasks-server.js +4 -4
- package/dist/server/index.js +21 -6
- package/dist/server/services/agent/engines/claude-code/engine.js +5 -2
- package/dist/server/services/agent/engines/codex/engine.js +3 -0
- package/dist/server/services/agent/orchestrator.js +2 -0
- package/dist/server/services/agent/turn-liveness.js +1 -1
- package/dist/server/services/dev-server-service.js +41 -13
- package/dist/server/services/lifecycle-hook-service.js +29 -2
- package/dist/server/services/settings-service.js +66 -0
- package/dist/server/utils/script-runner.js +3 -1
- package/dist/shared/launch-instructions.js +8 -4
- package/dist/shared/memory-tools.js +2 -2
- package/docker-compose.vps.yml +1 -1
- package/docs/deployment-vps.md +36 -10
- package/docs/getting-started.md +11 -0
- package/package.json +1 -1
- package/scripts/kobo-update +25 -13
- package/src/client/dist/pwa/assets/ActivityFeed-1OKX_g3B.js +2 -0
- package/src/client/dist/pwa/assets/{ActivityFeed-DdJvMzRI.css → ActivityFeed-CmAFv-2c.css} +1 -1
- package/src/client/dist/pwa/assets/{AutoLoopFinalReviewSettings-f4VDR5dd.js → AutoLoopFinalReviewSettings-VoA9uBw0.js} +1 -1
- package/src/client/dist/pwa/assets/{ChangelogPage-dEWpjTlp.js → ChangelogPage-DHl3hD3t.js} +1 -1
- package/src/client/dist/pwa/assets/{ComparisonPanel-Bwbqgvr4.js → ComparisonPanel-D6EKTtni.js} +1 -1
- package/src/client/dist/pwa/assets/{CreatePage-CCCCAhrx.js → CreatePage-CZzEOVVq.js} +1 -1
- package/src/client/dist/pwa/assets/{DashboardPage-3byhBITf.js → DashboardPage-DjLoUvjA.js} +1 -1
- package/src/client/dist/pwa/assets/{DiffViewer-Bj_NTfCF.js → DiffViewer-BQ6OEmoi.js} +3 -3
- package/src/client/dist/pwa/assets/{DocumentsPanel-xyLDV3T1.js → DocumentsPanel-yrQviqCd.js} +1 -1
- package/src/client/dist/pwa/assets/{DrawerToggleButton-pwBSstQP.js → DrawerToggleButton-D5qNeXnn.js} +1 -1
- package/src/client/dist/pwa/assets/{GitPanel-DvIdrkVw.js → GitPanel-DCXlhcAD.js} +3 -3
- package/src/client/dist/pwa/assets/{HealthPage-BSwhZQRo.js → HealthPage-COicuNQn.js} +1 -1
- package/src/client/dist/pwa/assets/{MainLayout-DZJ9BvZw.js → MainLayout-ZcExZTqC.js} +2 -2
- package/src/client/dist/pwa/assets/{MemoryPanel-ChR032zP.js → MemoryPanel-D73Qz9f7.js} +1 -1
- package/src/client/dist/pwa/assets/{MemoryProposalList-BRKSoS4K.js → MemoryProposalList-BGlq2DkD.js} +1 -1
- package/src/client/dist/pwa/assets/{QBtnDropdown-o3QH0Bb8.js → QBtnDropdown-CykBCmwa.js} +1 -1
- package/src/client/dist/pwa/assets/{QExpansionItem-BhFHiyq9.js → QExpansionItem-CAW9J1Uv.js} +1 -1
- package/src/client/dist/pwa/assets/{QScrollArea-BsNY6slB.js → QScrollArea-C_d-8eO7.js} +1 -1
- package/src/client/dist/pwa/assets/{QSelect-bEq3g_io.js → QSelect-C1AN93yA.js} +1 -1
- package/src/client/dist/pwa/assets/{QTooltip-xYZ6KNu2.js → QTooltip-C9qaLW_h.js} +1 -1
- package/src/client/dist/pwa/assets/{SchedulePanel-DIFv_FTY.js → SchedulePanel-CQpzDhq7.js} +1 -1
- package/src/client/dist/pwa/assets/{SearchPage-BqTBIt5E.js → SearchPage-fZlSSEu_.js} +1 -1
- package/src/client/dist/pwa/assets/{SettingsPage-BRvUAZ5r.css → SettingsPage-BCOF0ssp.css} +1 -1
- package/src/client/dist/pwa/assets/SettingsPage-eyJZxeCJ.js +9 -0
- package/src/client/dist/pwa/assets/{SplitWorkspacePage-D6r2pl5g.js → SplitWorkspacePage-CfeO6TZb.js} +1 -1
- package/src/client/dist/pwa/assets/{TerminalPanel-CladK9Vv.js → TerminalPanel-CfDZOteT.js} +1 -1
- package/src/client/dist/pwa/assets/{ToolCallItem-CdzEME4w.js → ToolCallItem-CHE6tylq.js} +2 -2
- package/src/client/dist/pwa/assets/{TouchPan-B4gQPwGN.js → TouchPan-Csev_qU6.js} +1 -1
- package/src/client/dist/pwa/assets/{TourReplayButton-B0j6AZwU.js → TourReplayButton-Crr7tF1b.js} +1 -1
- package/src/client/dist/pwa/assets/{WorkspaceAttentionLabels-CeVhoidC.js → WorkspaceAttentionLabels-DpUZOiJv.js} +1 -1
- package/src/client/dist/pwa/assets/{WorkspacePage-w2bF8wTd.css → WorkspacePage-Bk-WWOYM.css} +1 -1
- package/src/client/dist/pwa/assets/{WorkspacePage-CK5XCuG_.js → WorkspacePage-_QSKLO42.js} +3 -3
- package/src/client/dist/pwa/assets/{browser-B8tNScg1.js → browser-o7ftkZex.js} +1 -1
- package/src/client/dist/pwa/assets/{build-path-tree-kmVAcvs_.js → build-path-tree-D6dZQpIb.js} +1 -1
- package/src/client/dist/pwa/assets/{custom-sounds-CJwd-8TL.js → custom-sounds-DVX9zCET.js} +1 -1
- package/src/client/dist/pwa/assets/{de-BaO6kbdO.js → de-DOE4H_Jf.js} +2 -2
- package/src/client/dist/pwa/assets/{editor.api-CgbPVW9s.js → editor.api-C8TYnUXm.js} +1 -1
- package/src/client/dist/pwa/assets/{efforts-y7Wf_Rgd.js → efforts-DfsG0_o0.js} +1 -1
- package/src/client/dist/pwa/assets/{es-DTvSsbD0.js → es-BW57JPlm.js} +2 -2
- package/src/client/dist/pwa/assets/{expand-template-BFbbjj7X.js → expand-template-CJZlWMfI.js} +1 -1
- package/src/client/dist/pwa/assets/{format-BETfc4z9.js → format-DOCqk2Dn.js} +1 -1
- package/src/client/dist/pwa/assets/{formatters-C22K9vlC.js → formatters-BFocC6LJ.js} +1 -1
- package/src/client/dist/pwa/assets/{fr-BH7V66Yz.js → fr-DnmIKHaQ.js} +2 -2
- package/src/client/dist/pwa/assets/{freemarker2-DiRVvp9O.js → freemarker2-CfME4WOK.js} +1 -1
- package/src/client/dist/pwa/assets/{handlebars-BLYRroSQ.js → handlebars-uvKdDnJl.js} +1 -1
- package/src/client/dist/pwa/assets/{html-DAW2vteY.js → html-BrEPgLuD.js} +1 -1
- package/src/client/dist/pwa/assets/i18n-BmTCjikk.js +1 -0
- package/src/client/dist/pwa/assets/{index-CbyHfF8I.js → index-z1Oh2-I_.js} +4 -4
- package/src/client/dist/pwa/assets/{it-DZGbkkoy.js → it-DSrEQgZQ.js} +2 -2
- package/src/client/dist/pwa/assets/{javascript-Bb5J8n0k.js → javascript-KH2xP4lQ.js} +1 -1
- package/src/client/dist/pwa/assets/{liquid-Dqx3adnJ.js → liquid-D08TlsVs.js} +1 -1
- package/src/client/dist/pwa/assets/{mdx-D_7igLV3.js → mdx-y74A51cS.js} +1 -1
- package/src/client/dist/pwa/assets/{monaco-contributions-C-0CbrAy.js → monaco-contributions-Cx8iaAhd.js} +1 -1
- package/src/client/dist/pwa/assets/{monaco.contribution-c6JPBEZI.js → monaco.contribution-CFq0guCl.js} +2 -2
- package/src/client/dist/pwa/assets/{network-auth-BE4qbvWm.js → network-auth-DnGOOzCV.js} +1 -1
- package/src/client/dist/pwa/assets/{notify-theme-BVFBBGrJ.js → notify-theme-B9lUAgQl.js} +1 -1
- package/src/client/dist/pwa/assets/{project-color-CHOR2jB5.js → project-color-TgENPFLi.js} +1 -1
- package/src/client/dist/pwa/assets/{python-Dqubw1F5.js → python-Cy3bAVPq.js} +1 -1
- package/src/client/dist/pwa/assets/{razor-BQphc9Kt.js → razor-gD9QOuiV.js} +1 -1
- package/src/client/dist/pwa/assets/{typescript-Dep00l0X.js → typescript-CEItY0bH.js} +1 -1
- package/src/client/dist/pwa/assets/{use-search-index-status-CQHHvHwM.js → use-search-index-status-BtJ0pOy9.js} +1 -1
- package/src/client/dist/pwa/assets/{use-tours-IVbXTmz2.js → use-tours-COLDth2h.js} +2 -2
- package/src/client/dist/pwa/assets/{use-worktree-restore-B3s5xDGR.js → use-worktree-restore-CShbwpGy.js} +1 -1
- package/src/client/dist/pwa/assets/{workspace-templates-CyuTpztP.js → workspace-templates-BOMNQgBl.js} +1 -1
- package/src/client/dist/pwa/assets/{xml-BMS2dvaF.js → xml-BJvL5qcE.js} +1 -1
- package/src/client/dist/pwa/assets/{yaml-CYw92aic.js → yaml-DtkVRZaX.js} +1 -1
- package/src/client/dist/pwa/index.html +1 -1
- package/src/client/dist/pwa/sw.js +1 -1
- package/src/mcp-server/README.md +13 -0
- package/src/mcp-server/kobo-tasks-server.ts +5 -4
- package/src/client/dist/pwa/assets/ActivityFeed-DiUxnmGJ.js +0 -2
- package/src/client/dist/pwa/assets/SettingsPage-BLD0xWFB.js +0 -9
- package/src/client/dist/pwa/assets/i18n-DnuTmw3O.js +0 -1
package/src/client/dist/pwa/assets/{build-path-tree-kmVAcvs_.js → build-path-tree-D6dZQpIb.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as e,v as t}from"./reactivity.esm-bundler-DY1JkAEA.js";import{C as n,J as r,N as i,O as a,P as o,R as s,T as c,b as l,j as u,k as d,l as f}from"./runtime-core.esm-bundler-Bqg71Vll.js";import{G as p,M as ee,O as te,R as m,d as ne,z as h}from"./dom-BtYTvLeN.js";import{l as re,u as ie}from"./QBtn-BUSdPaf4.js";import{n as g,t as ae}from"./use-dark-BHObfh0O.js";import{cn as oe,dn as _,u as se}from"./index-CbyHfF8I.js";import{c as ce,l as v}from"./QSelect-bEq3g_io.js";import{t as le}from"./use-slide-transition-B_Nu6u-t.js";var y=[`none`,`strict`,`leaf`,`leaf-filtered`],b=Symbol(`QTree`),ue={display:`none`},de=h({name:`QTreeNode`,props:{node:{type:Object,required:!0}},setup(e){let t=c(b),n=t.useCollapsible(e);return()=>t.renderNode(e.node,n)}});function x(e){let n=new Map,i=new Set(e());return r(e,e=>{let t=new Set(e);i.forEach(e=>{if(!t.has(e)){let t=n.get(e);t!==void 0&&(t.value=!1)}}),t.forEach(e=>{if(!i.has(e)){let t=n.get(e);t!==void 0&&(t.value=!0)}}),i=t},{flush:`sync`}),{has(e){let r=n.get(e);return r===void 0&&(r=t(i.has(e)),n.set(e,r)),r.value},prune(e){n.forEach((t,r)=>{e.has(r)||n.delete(r)})}}}function fe(e,t){if(e.depth===0)return[];let r=e.lines.map(e=>n(`div`,{class:`q-tree__vguide`+(e?` q-tree__vguide--line`:``)}));return r.push(n(`div`,{class:`q-tree__vguide`+(t?` q-tree__vguide--connector`:``)+(e.cont?` q-tree__vguide--line`:``)})),r}function pe(e){if(e.icon!==void 0)return n(re,{class:`q-tree__icon q-mr-sm`,name:e.icon,color:e.iconColor});let t=e.img||e.avatar;if(t)return n(`img`,{class:`q-tree__${e.img?`img`:`avatar`} q-mr-sm`,src:t})}var S=h({name:`QTree`,props:{...g,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:`label`},childrenKey:{type:String,default:`children`},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:`none`,validator:e=>y.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{type:Number,default:300},noConnectors:Boolean,noTransition:Boolean,virtualScroll:Boolean,virtualScrollTarget:_,virtualScrollItemSize:v.virtualScrollItemSize.type,virtualScrollSliceSize:v.virtualScrollSliceSize,virtualScrollSliceRatioBefore:v.virtualScrollSliceRatioBefore,virtualScrollSliceRatioAfter:v.virtualScrollSliceRatioAfter,virtualScrollStickySizeStart:v.virtualScrollStickySizeStart,virtualScrollStickySizeEnd:v.virtualScrollStickySizeEnd,onVirtualScroll:Function,noNodesLabel:String,noResultsLabel:String},emits:[`update:expanded`,`update:ticked`,`update:selected`,`lazyLoad`,`afterShow`,`afterHide`],setup(c,{slots:h,emit:g}){let{proxy:_}=l(),v=ne(),y=ae(c,v),S=t({}),C=t(c.ticked||[]),w=t(c.expanded||[]),T=f(()=>new Set(w.value)),E=null,D=null,O=new Set,k={},A={},me=f(()=>`q-tree q-tree--${c.dense?`dense`:`standard`}`+(c.noConnectors?` q-tree--no-connectors`:``)+(y()?` q-tree--dark`:``)+(c.color===void 0?``:` text-${c.color}`)),j=t(c.selected!==void 0);r(()=>c.selected!==void 0,e=>{j.value=e},{flush:`sync`});let he=f(()=>c.icon||v.iconSet.tree.icon),ge=f(()=>c.controlColor||c.color),M=f(()=>c.textColor===void 0?``:` text-${c.textColor}`),_e=f(()=>{let e=c.selectedColor||c.color;return e?` text-${e}`:``}),ve=f(()=>c.filterMethod===void 0?(e,t)=>{let n=t.toLowerCase();return e[c.labelKey]&&e[c.labelKey].toLowerCase().includes(n)}:c.filterMethod),N=f(()=>{let e=new Map,t=[],n=(t,r,i)=>{let a=t.tickStrategy||(i===null?c.tickStrategy:i.tickStrategy),o=t[c.nodeKey],s=t[c.childrenKey],l=Array.isArray(s)&&s.length!==0,u=a===`strict`,d=t.lazy;d===!0&&S.value[o]!==void 0&&Array.isArray(s)&&(d=S.value[o]);let f={key:o,node:t,parentKey:r,childKeys:[],isParent:l,lazy:d,disabled:t.disabled,expandable:!t.disabled&&t.expandable!==!1,selectableBase:t.selectable!==!1,tickableBase:!t.disabled&&t.tickable!==!1,noTickBase:t.noTick===!0||!u&&d&&d!==`loaded`,tickStrategy:a,hasTicking:a!==`none`,strictTicking:u,leafFilteredTicking:a===`leaf-filtered`,leafTicking:a===`leaf`||a===`leaf-filtered`};return e.set(o,f),l&&s.forEach(e=>{f.childKeys.push(n(e,o,f).key)}),f};return c.nodes.forEach(e=>{t.push(n(e,null,null).key)}),{map:e,rootKeys:t}}),P=f(()=>{if(!c.filter)return null;let e=new Set,t=new Set,n=r=>{let i=r[c.nodeKey],a=!!ve.value(r,c.filter);return a&&e.add(i),Array.isArray(r[c.childrenKey])&&r[c.childrenKey].forEach(e=>{n(e)&&(a=!0)}),a&&t.add(i),a};return c.nodes.forEach(n),{own:e,visible:t}});function ye(e){let t=P.value;return t===null||t.visible.has(e)}let F=new Map,I=new Map,L=new Map,R=new Map,be=x(()=>C.value),xe=x(()=>w.value),Se=x(()=>c.selected!==void 0&&c.selected!==null?[c.selected]:[]);function Ce(e){let t=F.get(e);return t===void 0&&(t=f(()=>{let t=N.value.map.get(e);return t===void 0||!t.tickableBase?!1:!t.leafTicking||t.parentKey===null||Ce(t.parentKey).value}),F.set(e,t)),t}function z(e){let t=I.get(e);if(t===void 0){let n;t=f(()=>{let t=N.value.map.get(e);if(t===void 0){n=void 0;return}let r=t.noTickBase,i=Ce(e).value,a=t.strictTicking||!t.isParent?be.has(e):!1,o,s;if(t.isParent){let n=t.childKeys.map(e=>z(e).value),c=P.value,l=c===null||c.visible.has(e);if(c!==null&&c.own.has(e)&&r!==!0&&t.disabled!==!0&&i&&t.leafFilteredTicking&&t.childKeys.every((e,t)=>!c.visible.has(e)||n[t].noTick===!0||!n[t].tickable)&&(i=!1),l&&(r!==!0&&!t.strictTicking&&n.every(e=>e.noTick)&&(r=!0),t.leafTicking)){if(a=!1,o=n.some(e=>e.indeterminate===!0),i&&=n.some(e=>e.tickable),!o){let e=n.reduce((e,t)=>t.ticked?e+1:e,0);e===n.length?a=!0:e>0&&(o=!0)}o&&(s=n.every(e=>!e.tickable||!e.ticked))}}return n!==void 0&&n.noTick===r&&n.tickable===i&&n.ticked===a&&n.indeterminate===o&&n.indeterminateNextState===s||(n={noTick:r,tickable:i,ticked:a,indeterminate:o,indeterminateNextState:s}),n}),I.set(e,t)}return t}function B(e){let t=L.get(e);if(t===void 0){let n,r,i;t=f(()=>{let t=N.value.map.get(e);if(t===void 0){n=r=i=void 0;return}let a=z(e).value,o=P.value,s=!t.disabled&&j.value&&t.selectableBase,c=!t.disabled&&(s||t.expandable&&(t.isParent||t.lazy===!0)),l=o===null||o.visible.has(e),u=Se.has(e)&&s,d=t.isParent?xe.has(e):!1,f=t.isParent&&(o===null||t.childKeys.some(e=>o.visible.has(e)));return n!==void 0&&r===t&&i===a&&n.link===c&&n.matchesFilter===l&&n.selected===u&&n.selectable===s&&n.expanded===d&&n.hasVisibleChildren===f?n:(r=t,i=a,n={key:e,isParent:t.isParent,lazy:t.lazy,disabled:t.disabled,link:c,matchesFilter:l,selected:u,selectable:s,expanded:d,expandable:t.expandable,noTick:a.noTick,tickable:a.tickable,tickStrategy:t.tickStrategy,hasTicking:t.hasTicking,strictTicking:t.strictTicking,leafFilteredTicking:t.leafFilteredTicking,leafTicking:t.leafTicking,ticked:a.ticked,indeterminate:a.indeterminate,indeterminateNextState:a.indeterminateNextState,hasVisibleChildren:f},n)}),L.set(e,t)}return t}function V(e){return B(e).value}function we(e){let t=R.get(e);return t===void 0&&(t=f(()=>ye(e)),R.set(e,t)),t}r(N,({map:e})=>{let t=t=>{t.forEach((n,r)=>{e.has(r)||t.delete(r)})};t(F),t(I),t(L),t(R),be.prune(e),xe.prune(e),Se.prune(e),O.forEach(t=>{e.has(t)||O.delete(t)})},{flush:`post`});let H=f(()=>{let e=[],{map:t,rootKeys:n}=N.value,r=P.value,i=T.value,a=(n,o,s,c)=>{let l=r===null?n:n.filter(e=>r.visible.has(e)),u=l.length-1;l.forEach((n,r)=>{let l=t.get(n),d=r<u;e.push({key:n,node:l.node,depth:o,lines:s,cont:d,posinset:r+1,setsize:u+1,parentDisabled:c}),l.isParent&&i.has(n)&&a(l.childKeys,o+1,o===0?s:[...s,d],c||l.disabled===!0)})};return a(n,0,[],!1),e}),Te=f(()=>c.virtualScroll?H.value.length:0),Ee=f(()=>c.virtualScrollItemSize===void 0?c.dense?23:35:c.virtualScrollItemSize),U=e(null),W;function De(){return U.value}function Oe(){return W}let{virtualScrollSliceRange:ke,localResetVirtualScroll:G,padVirtualScroll:Ae,onVirtualScrollEvt:je,scrollTo:Me}=ce({virtualScrollLength:Te,getVirtualScrollTarget:Oe,getVirtualScrollEl:De,virtualScrollItemSizeComputed:Ee});function K(){c.virtualScroll&&U.value!==null&&(W=oe(U.value,c.virtualScrollTarget),W.addEventListener(`scroll`,je,ee.passive))}function q(){W!==void 0&&(W.removeEventListener(`scroll`,je,ee.passive),W=void 0)}r(Te,()=>{c.virtualScroll&&G()}),r(()=>c.virtualScroll,e=>{q(),e&&(G(),a(K))}),r(()=>c.virtualScrollTarget,()=>{q(),K()}),o(K),d(K),i(q),u(q);let Ne=f(()=>{let e=[],{map:t,rootKeys:n}=N.value,r=P.value,i=n=>{if(r!==null&&!r.visible.has(n))return;e.push(n);let a=t.get(n);a.isParent&&T.value.has(n)&&a.childKeys.forEach(i)};return n.forEach(i),e});function Pe(){let e=Ne.value;return E!==null&&e.includes(E)?E:c.selected!==void 0&&c.selected!==null&&e.includes(c.selected)&&V(c.selected)?.selected===!0?c.selected:e[0]}function J(e){e!==D&&(D!=null&&A[D]?.setAttribute(`tabindex`,-1),A[e]?.setAttribute(`tabindex`,0),D=e)}r(()=>c.ticked,e=>{C.value=e}),r(()=>c.expanded,e=>{w.value=e});function Fe(e){let t=(n,r)=>{if(n||!r)return n;if(Array.isArray(r))return r.reduce(t,n);if(r[c.nodeKey]===e)return r;if(r[c.childrenKey])return t(null,r[c.childrenKey])};return t(null,c.nodes)}function Ie(e){let{map:t}=N.value,n=t.get(e);return n!==void 0&&n.parentKey!==null?t.get(n.parentKey).node:void 0}function Le(e){let{map:t}=N.value;return e.map(e=>t.get(e)?.node)}function Re(){return Le(C.value)}function ze(){let e=[];return N.value.map.forEach((t,n)=>{t.isParent&&t.leafTicking&&z(n).value.indeterminate===!0&&e.push(t.node)}),e}function Be(){return Le(w.value)}function Ve(e){return e?V(e)?.expanded===!0:!1}function He(){c.expanded===void 0?w.value=[]:g(`update:expanded`,[])}function Ue(){let e=[],t=n=>{n[c.childrenKey]&&n[c.childrenKey].length!==0&&n.expandable!==!1&&n.disabled!==!0&&(e.push(n[c.nodeKey]),n[c.childrenKey].forEach(t))};c.nodes.forEach(t),c.expanded===void 0?w.value=e:g(`update:expanded`,e)}function Y(e,t,n=Fe(e),r=V(e)){if(r.disabled!==!0){if(r.lazy&&r.lazy!==`loaded`){if(r.lazy===`loading`)return;S.value[e]=`loading`,Array.isArray(n[c.childrenKey])||(n[c.childrenKey]=[]),g(`lazyLoad`,{node:n,key:e,done:t=>{S.value[e]=`loaded`,n[c.childrenKey]=Array.isArray(t)?t:[],a(()=>{V(e)?.isParent===!0&&We(e,!0)})},fail:()=>{delete S.value[e],n[c.childrenKey].length===0&&delete n[c.childrenKey]}})}else r.isParent&&r.expandable&&We(e,t)}}function We(e,t){let n=w.value,r=c.expanded!==void 0;if(r&&(n=[...n]),t){let t=c.accordion?N.value.map.get(e):void 0;if(t!==void 0){let{map:r}=N.value,i=[];t.parentKey===null?N.value.rootKeys.forEach(t=>{t!==e&&i.push(t)}):r.get(t.parentKey).childKeys.forEach(t=>{t!==e&&r.get(t).expandable&&i.push(t)}),i.length!==0&&(n=n.filter(e=>!i.includes(e)))}n=[...n,e].filter((e,t,n)=>n.indexOf(e)===t)}else n=n.filter(t=>t!==e);r?g(`update:expanded`,n):w.value=n}function Ge(e){return e?V(e)?.ticked===!0:!1}function Ke(e){return e?V(e)?.indeterminate===!0:!1}function qe(e){let t=e?V(e):void 0;return t===void 0?!1:t.indeterminate===!0?null:t.ticked}function X(e,t){let n=C.value,r=c.ticked!==void 0;r&&(n=[...n]),n=t?[...n,...e].filter((e,t,n)=>n.indexOf(e)===t):n.filter(t=>!e.includes(t)),r?g(`update:ticked`,n):C.value=n}function Je(e,t,n){let r={tree:_,node:e,key:n,color:c.color,dark:y()};return p(r,`expanded`,()=>t.expanded,e=>{e!==t.expanded&&Y(n,e)}),p(r,`ticked`,()=>t.ticked,e=>{e!==t.ticked&&X([n],e)}),p(r,`indeterminate`,()=>t.indeterminate===!0),r}function Ye(e){return(c.filter?e.filter(e=>we(e[c.nodeKey]).value):e).map(e=>n(de,{key:e[c.nodeKey],node:e}))}function Xe(e){g(e===`show`?`afterShow`:`afterHide`)}function Ze(n){let i=e(null),o=f(()=>B(n.node[c.nodeKey]).value?.expanded===!0),s=t(!o.value),{onEnter:l,onLeave:u}=le(()=>c.duration,Xe);function d(){s.value=!0}function p(){i.value!==null&&l(i.value)}return r(o,e=>{c.noTransition?s.value=!e:e?s.value?(s.value=!1,a(p)):p():i.value===null?d():u(i.value,d)}),{elRef:i,hidden:s}}function Qe(e,t,r,i,a,o,s){return n(`div`,{class:`q-tree__node-header relative-position row no-wrap items-center q-focusable`+(t.link?` q-tree__node--link q-hoverable`:``)+(t.selected?` q-tree__node--selected`:``)+(t.disabled===!0?` q-tree__node--disabled`:``),ref:e=>{e===null?delete A[r]:A[r]=e},tabindex:r===D?0:-1,"aria-expanded":i?t.expanded?`true`:`false`:null,"aria-selected":t.selectable?t.selected?`true`:`false`:null,"aria-checked":t.hasTicking&&t.noTick!==!0?t.indeterminate===!0?`mixed`:t.ticked?`true`:`false`:null,"aria-disabled":t.disabled===!0?`true`:null,role:`treeitem`,...s,onFocus(){E=r,J(r)},onClick:t=>{at(e,r,t)},onKeydown(n){n.target===n.currentTarget&&te(n)!==!0&&(n.keyCode===13?at(e,r,n,!0):n.keyCode===32?t.hasTicking&&t.noTick!==!0&&t.tickable?(m(n),ot(r,!t.ticked)):$(e,r,n,!0):it(r,n.keyCode)&&m(n))}},[n(`div`,{class:`q-focus-helper`,tabindex:-1,ref:e=>{e===null?delete k[r]:k[r]=e}}),t.lazy===`loading`?n(ie,{class:`q-tree__spinner`,color:ge.value}):i?n(re,{class:`q-tree__arrow`+(t.expanded?` q-tree__arrow--rotate`:``),name:he.value,onClick(t){$(e,r,t)}}):null,t.hasTicking&&t.noTick!==!0?n(se,{class:`q-tree__tickbox`,modelValue:t.indeterminate===!0?null:t.ticked,color:ge.value,dark:y(),dense:!0,keepColor:!0,disable:!t.tickable,tabindex:-1,"aria-hidden":`true`,onMousedown(e){e.preventDefault(),E=r,J(r),Z(r)},"onUpdate:modelValue":e=>{ot(r,e)}}):null,n(`div`,{class:`q-tree__node-header-content col row no-wrap items-center`+(t.selected?_e.value:M.value)},[o?o(a):[pe(e),n(`div`,e[c.labelKey])]])])}function $e(e,t){let r=e[c.nodeKey],i=B(r).value,a=e.header&&h[`header-${e.header}`]||h[`default-header`];if(i===void 0)return null;i.expanded&&O.add(r);let o=i.expanded||c.noTransition!==!0&&O.has(r),s=i.isParent&&o?Ye(e[c.childrenKey]):[],l=i.hasVisibleChildren||i.lazy&&i.lazy!==`loaded`,u=e.body&&h[`body-${e.body}`]||h[`default-body`],d=a!==void 0||u!==void 0?Je(e,i,r):null;return u!==void 0&&(u=n(`div`,{class:`q-tree__node-body relative-position`},[n(`div`,{class:M.value},[u(d)])])),n(`div`,{key:r,class:`q-tree__node relative-position q-tree__node--${l?`parent`:`child`}`},[Qe(e,i,r,l,d,a),l?c.noTransition?i.expanded?n(`div`,{class:`q-tree__node-collapsible`+M.value,key:`${r}__q`},[u,n(`div`,{class:`q-tree__children`+(i.disabled===!0?` q-tree__node--disabled`:``),role:`group`},s)]):null:o?n(`div`,{ref:t.elRef,class:`q-tree__node-collapsible`+M.value,style:t.hidden.value?ue:null,key:`${r}__q`},[u,n(`div`,{class:`q-tree__children`+(i.disabled===!0?` q-tree__node--disabled`:``),role:`group`},s)]):null:u])}function et(e){let{key:t,node:r,depth:i}=e,a=B(t).value;if(a===void 0)return null;let o=a.hasVisibleChildren||a.lazy&&a.lazy!==`loaded`,s=r.header&&h[`header-${r.header}`]||h[`default-header`],c=r.body&&h[`body-${r.body}`]||h[`default-body`],l=s!==void 0||c!==void 0?Je(r,a,t):null;return c=c!==void 0&&(!a.isParent||a.expanded)?n(`div`,{class:`q-tree__vnode-body row no-wrap items-stretch`},[...fe(e,!1),n(`div`,{class:`q-tree__node-body relative-position`},[n(`div`,{class:M.value},[c(l)])])]):null,n(`div`,{key:t,class:`q-tree__vnode q-tree__vnode--${o?`parent`:`child`}`+(i===0?` q-tree__vnode--root`:``)+(a.disabled===!0||e.parentDisabled?` q-tree__node--disabled`:``)},[n(`div`,{class:`q-tree__vnode-header row no-wrap items-stretch`},[...fe(e,!0),Qe(r,a,t,o,l,s,{"aria-level":i+1,"aria-setsize":e.setsize,"aria-posinset":e.posinset})]),c])}function tt(){let e=H.value,t;if(e.length===0)t=c.filter?c.noResultsLabel||v.lang.tree.noResults:c.noNodesLabel||v.lang.tree.noNodes;else{let{from:n,to:r}=ke.value,i=e.slice(n,r),a=Pe();i.length!==0&&(a===void 0||!i.some(e=>e.key===a))&&(a=i[0].key),J(a),t=Ae(`div`,i.map(et),{role:`tree`})}return n(`div`,{class:me.value+` q-tree--virtual q-virtual-scroll q-virtual-scroll--vertical`+(c.virtualScrollTarget===void 0?` scroll`:``),ref:U},t)}function nt(e,t){if(c.virtualScroll){let n=H.value.findIndex(t=>t.key===e);n!==-1&&Me(n,t)}}function Z(e){k[e]?.focus({preventScroll:!0})}function Q(e){if(e!==void 0){E=e,J(e);let t=A[e];if(t!==void 0)t.focus();else if(c.virtualScroll){let t=H.value.findIndex(t=>t.key===e);t!==-1&&(Me(t),a(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{A[e]?.focus()})})}))}}}function rt(e){return e.find(ye)}function it(e,t){let n=V(e);if(n===void 0)return!1;let r=Ne.value,i=r.indexOf(e);if(t===36)return Q(r[0]),!0;if(t===35)return Q(r.at(-1)),!0;if(t===38)return Q(r[i-1]),!0;if(t===40)return Q(r[i+1]),!0;if(t===39)return!n.isParent&&!n.lazy||(n.expanded?Q(rt(N.value.map.get(e).childKeys)):Y(e,!0)),!0;if(t===37){if(n.expanded)Y(e,!1);else{let t=N.value.map.get(e).parentKey;Q(t===null?void 0:t)}return!0}return!1}function at(e,t,n,r){let i=V(t);i!==void 0&&i.disabled!==!0&&(E=t,J(t),r!==!0&&i.selectable&&Z(t),j.value&&i.selectable?c.noSelectionUnset?t!==c.selected&&g(`update:selected`,t===void 0?null:t):g(`update:selected`,t===c.selected?null:t):$(e,t,n,r),typeof e.handler==`function`&&e.handler(e))}function $(e,t,n,r){n!==void 0&&m(n);let i=V(t);i!==void 0&&i.disabled!==!0&&(E=t,J(t),r!==!0&&i.selectable&&Z(t),Y(t,!i.expanded,e,i))}function ot(e,t){let n=V(e);if(n!==void 0){if(n.indeterminate===!0&&(t=n.indeterminateNextState),n.strictTicking)X([e],t);else if(n.leafTicking){let n=[],{map:r}=N.value,i=e=>{let a=V(e);a.isParent?(t!==!0&&a.noTick!==!0&&a.tickable&&n.push(e),a.leafTicking&&r.get(e).childKeys.forEach(i)):a.noTick!==!0&&a.tickable&&(!a.leafFilteredTicking||a.matchesFilter)&&n.push(e)};i(e),X(n,t)}}}return c.defaultExpandAll&&Ue(),c.virtualScroll&&G(),s(b,{renderNode:$e,useCollapsible:Ze}),Object.assign(_,{getNodeByKey:Fe,getParentNode:Ie,getTickedNodes:Re,getIndeterminateNodes:ze,getExpandedNodes:Be,isExpanded:Ve,collapseAll:He,expandAll:Ue,setExpanded:Y,isTicked:Ge,isIndeterminate:Ke,getTickState:qe,setTicked:X,scrollTo:nt}),()=>{if(c.virtualScroll)return tt();J(Pe());let e=Ye(c.nodes);return n(`div`,{class:me.value,role:`tree`},e.length===0?c.filter?c.noResultsLabel||v.lang.tree.noResults:c.noNodesLabel||v.lang.tree.noNodes:e)}}});function C(e){let t=[];for(let n of e){let e=n.path.split(`/`).filter(e=>e.length>0);if(e.length===0)continue;let r=t,i=``;for(let t=0;t<e.length-1;t++){let n=e[t];i=i?`${i}/${n}`:n;let a=r.find(e=>e.isFolder&&e.label===n);a||(a={label:n,nodeKey:`dir:${i}`,isFolder:!0,children:[]},r.push(a)),r=a.children}r.push({label:e[e.length-1],nodeKey:`file:${n.path}`,file:n})}function n(e){e.sort((e,t)=>{let n=e.isFolder===!0;return n===(t.isFolder===!0)?e.label.localeCompare(t.label):n?-1:1});for(let t of e)t.children&&n(t.children)}return n(t),t}function w(e){let t=0;for(let n of e)n.file&&t++,n.children&&(t+=w(n.children));return t}function T(e,t=1/0){let n=[],r=(e,i)=>{if(!(i>t))for(let t of e)t.isFolder&&(n.push(t.nodeKey),t.children&&r(t.children,i+1))};return r(e,1),n}export{S as i,T as n,w as r,C as t};
|
|
1
|
+
import{S as e,v as t}from"./reactivity.esm-bundler-DY1JkAEA.js";import{C as n,J as r,N as i,O as a,P as o,R as s,T as c,b as l,j as u,k as d,l as f}from"./runtime-core.esm-bundler-Bqg71Vll.js";import{G as p,M as ee,O as te,R as m,d as ne,z as h}from"./dom-BtYTvLeN.js";import{l as re,u as ie}from"./QBtn-BUSdPaf4.js";import{n as g,t as ae}from"./use-dark-BHObfh0O.js";import{cn as oe,dn as _,u as se}from"./index-z1Oh2-I_.js";import{c as ce,l as v}from"./QSelect-C1AN93yA.js";import{t as le}from"./use-slide-transition-B_Nu6u-t.js";var y=[`none`,`strict`,`leaf`,`leaf-filtered`],b=Symbol(`QTree`),ue={display:`none`},de=h({name:`QTreeNode`,props:{node:{type:Object,required:!0}},setup(e){let t=c(b),n=t.useCollapsible(e);return()=>t.renderNode(e.node,n)}});function x(e){let n=new Map,i=new Set(e());return r(e,e=>{let t=new Set(e);i.forEach(e=>{if(!t.has(e)){let t=n.get(e);t!==void 0&&(t.value=!1)}}),t.forEach(e=>{if(!i.has(e)){let t=n.get(e);t!==void 0&&(t.value=!0)}}),i=t},{flush:`sync`}),{has(e){let r=n.get(e);return r===void 0&&(r=t(i.has(e)),n.set(e,r)),r.value},prune(e){n.forEach((t,r)=>{e.has(r)||n.delete(r)})}}}function fe(e,t){if(e.depth===0)return[];let r=e.lines.map(e=>n(`div`,{class:`q-tree__vguide`+(e?` q-tree__vguide--line`:``)}));return r.push(n(`div`,{class:`q-tree__vguide`+(t?` q-tree__vguide--connector`:``)+(e.cont?` q-tree__vguide--line`:``)})),r}function pe(e){if(e.icon!==void 0)return n(re,{class:`q-tree__icon q-mr-sm`,name:e.icon,color:e.iconColor});let t=e.img||e.avatar;if(t)return n(`img`,{class:`q-tree__${e.img?`img`:`avatar`} q-mr-sm`,src:t})}var S=h({name:`QTree`,props:{...g,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:`label`},childrenKey:{type:String,default:`children`},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:`none`,validator:e=>y.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{type:Number,default:300},noConnectors:Boolean,noTransition:Boolean,virtualScroll:Boolean,virtualScrollTarget:_,virtualScrollItemSize:v.virtualScrollItemSize.type,virtualScrollSliceSize:v.virtualScrollSliceSize,virtualScrollSliceRatioBefore:v.virtualScrollSliceRatioBefore,virtualScrollSliceRatioAfter:v.virtualScrollSliceRatioAfter,virtualScrollStickySizeStart:v.virtualScrollStickySizeStart,virtualScrollStickySizeEnd:v.virtualScrollStickySizeEnd,onVirtualScroll:Function,noNodesLabel:String,noResultsLabel:String},emits:[`update:expanded`,`update:ticked`,`update:selected`,`lazyLoad`,`afterShow`,`afterHide`],setup(c,{slots:h,emit:g}){let{proxy:_}=l(),v=ne(),y=ae(c,v),S=t({}),C=t(c.ticked||[]),w=t(c.expanded||[]),T=f(()=>new Set(w.value)),E=null,D=null,O=new Set,k={},A={},me=f(()=>`q-tree q-tree--${c.dense?`dense`:`standard`}`+(c.noConnectors?` q-tree--no-connectors`:``)+(y()?` q-tree--dark`:``)+(c.color===void 0?``:` text-${c.color}`)),j=t(c.selected!==void 0);r(()=>c.selected!==void 0,e=>{j.value=e},{flush:`sync`});let he=f(()=>c.icon||v.iconSet.tree.icon),ge=f(()=>c.controlColor||c.color),M=f(()=>c.textColor===void 0?``:` text-${c.textColor}`),_e=f(()=>{let e=c.selectedColor||c.color;return e?` text-${e}`:``}),ve=f(()=>c.filterMethod===void 0?(e,t)=>{let n=t.toLowerCase();return e[c.labelKey]&&e[c.labelKey].toLowerCase().includes(n)}:c.filterMethod),N=f(()=>{let e=new Map,t=[],n=(t,r,i)=>{let a=t.tickStrategy||(i===null?c.tickStrategy:i.tickStrategy),o=t[c.nodeKey],s=t[c.childrenKey],l=Array.isArray(s)&&s.length!==0,u=a===`strict`,d=t.lazy;d===!0&&S.value[o]!==void 0&&Array.isArray(s)&&(d=S.value[o]);let f={key:o,node:t,parentKey:r,childKeys:[],isParent:l,lazy:d,disabled:t.disabled,expandable:!t.disabled&&t.expandable!==!1,selectableBase:t.selectable!==!1,tickableBase:!t.disabled&&t.tickable!==!1,noTickBase:t.noTick===!0||!u&&d&&d!==`loaded`,tickStrategy:a,hasTicking:a!==`none`,strictTicking:u,leafFilteredTicking:a===`leaf-filtered`,leafTicking:a===`leaf`||a===`leaf-filtered`};return e.set(o,f),l&&s.forEach(e=>{f.childKeys.push(n(e,o,f).key)}),f};return c.nodes.forEach(e=>{t.push(n(e,null,null).key)}),{map:e,rootKeys:t}}),P=f(()=>{if(!c.filter)return null;let e=new Set,t=new Set,n=r=>{let i=r[c.nodeKey],a=!!ve.value(r,c.filter);return a&&e.add(i),Array.isArray(r[c.childrenKey])&&r[c.childrenKey].forEach(e=>{n(e)&&(a=!0)}),a&&t.add(i),a};return c.nodes.forEach(n),{own:e,visible:t}});function ye(e){let t=P.value;return t===null||t.visible.has(e)}let F=new Map,I=new Map,L=new Map,R=new Map,be=x(()=>C.value),xe=x(()=>w.value),Se=x(()=>c.selected!==void 0&&c.selected!==null?[c.selected]:[]);function Ce(e){let t=F.get(e);return t===void 0&&(t=f(()=>{let t=N.value.map.get(e);return t===void 0||!t.tickableBase?!1:!t.leafTicking||t.parentKey===null||Ce(t.parentKey).value}),F.set(e,t)),t}function z(e){let t=I.get(e);if(t===void 0){let n;t=f(()=>{let t=N.value.map.get(e);if(t===void 0){n=void 0;return}let r=t.noTickBase,i=Ce(e).value,a=t.strictTicking||!t.isParent?be.has(e):!1,o,s;if(t.isParent){let n=t.childKeys.map(e=>z(e).value),c=P.value,l=c===null||c.visible.has(e);if(c!==null&&c.own.has(e)&&r!==!0&&t.disabled!==!0&&i&&t.leafFilteredTicking&&t.childKeys.every((e,t)=>!c.visible.has(e)||n[t].noTick===!0||!n[t].tickable)&&(i=!1),l&&(r!==!0&&!t.strictTicking&&n.every(e=>e.noTick)&&(r=!0),t.leafTicking)){if(a=!1,o=n.some(e=>e.indeterminate===!0),i&&=n.some(e=>e.tickable),!o){let e=n.reduce((e,t)=>t.ticked?e+1:e,0);e===n.length?a=!0:e>0&&(o=!0)}o&&(s=n.every(e=>!e.tickable||!e.ticked))}}return n!==void 0&&n.noTick===r&&n.tickable===i&&n.ticked===a&&n.indeterminate===o&&n.indeterminateNextState===s||(n={noTick:r,tickable:i,ticked:a,indeterminate:o,indeterminateNextState:s}),n}),I.set(e,t)}return t}function B(e){let t=L.get(e);if(t===void 0){let n,r,i;t=f(()=>{let t=N.value.map.get(e);if(t===void 0){n=r=i=void 0;return}let a=z(e).value,o=P.value,s=!t.disabled&&j.value&&t.selectableBase,c=!t.disabled&&(s||t.expandable&&(t.isParent||t.lazy===!0)),l=o===null||o.visible.has(e),u=Se.has(e)&&s,d=t.isParent?xe.has(e):!1,f=t.isParent&&(o===null||t.childKeys.some(e=>o.visible.has(e)));return n!==void 0&&r===t&&i===a&&n.link===c&&n.matchesFilter===l&&n.selected===u&&n.selectable===s&&n.expanded===d&&n.hasVisibleChildren===f?n:(r=t,i=a,n={key:e,isParent:t.isParent,lazy:t.lazy,disabled:t.disabled,link:c,matchesFilter:l,selected:u,selectable:s,expanded:d,expandable:t.expandable,noTick:a.noTick,tickable:a.tickable,tickStrategy:t.tickStrategy,hasTicking:t.hasTicking,strictTicking:t.strictTicking,leafFilteredTicking:t.leafFilteredTicking,leafTicking:t.leafTicking,ticked:a.ticked,indeterminate:a.indeterminate,indeterminateNextState:a.indeterminateNextState,hasVisibleChildren:f},n)}),L.set(e,t)}return t}function V(e){return B(e).value}function we(e){let t=R.get(e);return t===void 0&&(t=f(()=>ye(e)),R.set(e,t)),t}r(N,({map:e})=>{let t=t=>{t.forEach((n,r)=>{e.has(r)||t.delete(r)})};t(F),t(I),t(L),t(R),be.prune(e),xe.prune(e),Se.prune(e),O.forEach(t=>{e.has(t)||O.delete(t)})},{flush:`post`});let H=f(()=>{let e=[],{map:t,rootKeys:n}=N.value,r=P.value,i=T.value,a=(n,o,s,c)=>{let l=r===null?n:n.filter(e=>r.visible.has(e)),u=l.length-1;l.forEach((n,r)=>{let l=t.get(n),d=r<u;e.push({key:n,node:l.node,depth:o,lines:s,cont:d,posinset:r+1,setsize:u+1,parentDisabled:c}),l.isParent&&i.has(n)&&a(l.childKeys,o+1,o===0?s:[...s,d],c||l.disabled===!0)})};return a(n,0,[],!1),e}),Te=f(()=>c.virtualScroll?H.value.length:0),Ee=f(()=>c.virtualScrollItemSize===void 0?c.dense?23:35:c.virtualScrollItemSize),U=e(null),W;function De(){return U.value}function Oe(){return W}let{virtualScrollSliceRange:ke,localResetVirtualScroll:G,padVirtualScroll:Ae,onVirtualScrollEvt:je,scrollTo:Me}=ce({virtualScrollLength:Te,getVirtualScrollTarget:Oe,getVirtualScrollEl:De,virtualScrollItemSizeComputed:Ee});function K(){c.virtualScroll&&U.value!==null&&(W=oe(U.value,c.virtualScrollTarget),W.addEventListener(`scroll`,je,ee.passive))}function q(){W!==void 0&&(W.removeEventListener(`scroll`,je,ee.passive),W=void 0)}r(Te,()=>{c.virtualScroll&&G()}),r(()=>c.virtualScroll,e=>{q(),e&&(G(),a(K))}),r(()=>c.virtualScrollTarget,()=>{q(),K()}),o(K),d(K),i(q),u(q);let Ne=f(()=>{let e=[],{map:t,rootKeys:n}=N.value,r=P.value,i=n=>{if(r!==null&&!r.visible.has(n))return;e.push(n);let a=t.get(n);a.isParent&&T.value.has(n)&&a.childKeys.forEach(i)};return n.forEach(i),e});function Pe(){let e=Ne.value;return E!==null&&e.includes(E)?E:c.selected!==void 0&&c.selected!==null&&e.includes(c.selected)&&V(c.selected)?.selected===!0?c.selected:e[0]}function J(e){e!==D&&(D!=null&&A[D]?.setAttribute(`tabindex`,-1),A[e]?.setAttribute(`tabindex`,0),D=e)}r(()=>c.ticked,e=>{C.value=e}),r(()=>c.expanded,e=>{w.value=e});function Fe(e){let t=(n,r)=>{if(n||!r)return n;if(Array.isArray(r))return r.reduce(t,n);if(r[c.nodeKey]===e)return r;if(r[c.childrenKey])return t(null,r[c.childrenKey])};return t(null,c.nodes)}function Ie(e){let{map:t}=N.value,n=t.get(e);return n!==void 0&&n.parentKey!==null?t.get(n.parentKey).node:void 0}function Le(e){let{map:t}=N.value;return e.map(e=>t.get(e)?.node)}function Re(){return Le(C.value)}function ze(){let e=[];return N.value.map.forEach((t,n)=>{t.isParent&&t.leafTicking&&z(n).value.indeterminate===!0&&e.push(t.node)}),e}function Be(){return Le(w.value)}function Ve(e){return e?V(e)?.expanded===!0:!1}function He(){c.expanded===void 0?w.value=[]:g(`update:expanded`,[])}function Ue(){let e=[],t=n=>{n[c.childrenKey]&&n[c.childrenKey].length!==0&&n.expandable!==!1&&n.disabled!==!0&&(e.push(n[c.nodeKey]),n[c.childrenKey].forEach(t))};c.nodes.forEach(t),c.expanded===void 0?w.value=e:g(`update:expanded`,e)}function Y(e,t,n=Fe(e),r=V(e)){if(r.disabled!==!0){if(r.lazy&&r.lazy!==`loaded`){if(r.lazy===`loading`)return;S.value[e]=`loading`,Array.isArray(n[c.childrenKey])||(n[c.childrenKey]=[]),g(`lazyLoad`,{node:n,key:e,done:t=>{S.value[e]=`loaded`,n[c.childrenKey]=Array.isArray(t)?t:[],a(()=>{V(e)?.isParent===!0&&We(e,!0)})},fail:()=>{delete S.value[e],n[c.childrenKey].length===0&&delete n[c.childrenKey]}})}else r.isParent&&r.expandable&&We(e,t)}}function We(e,t){let n=w.value,r=c.expanded!==void 0;if(r&&(n=[...n]),t){let t=c.accordion?N.value.map.get(e):void 0;if(t!==void 0){let{map:r}=N.value,i=[];t.parentKey===null?N.value.rootKeys.forEach(t=>{t!==e&&i.push(t)}):r.get(t.parentKey).childKeys.forEach(t=>{t!==e&&r.get(t).expandable&&i.push(t)}),i.length!==0&&(n=n.filter(e=>!i.includes(e)))}n=[...n,e].filter((e,t,n)=>n.indexOf(e)===t)}else n=n.filter(t=>t!==e);r?g(`update:expanded`,n):w.value=n}function Ge(e){return e?V(e)?.ticked===!0:!1}function Ke(e){return e?V(e)?.indeterminate===!0:!1}function qe(e){let t=e?V(e):void 0;return t===void 0?!1:t.indeterminate===!0?null:t.ticked}function X(e,t){let n=C.value,r=c.ticked!==void 0;r&&(n=[...n]),n=t?[...n,...e].filter((e,t,n)=>n.indexOf(e)===t):n.filter(t=>!e.includes(t)),r?g(`update:ticked`,n):C.value=n}function Je(e,t,n){let r={tree:_,node:e,key:n,color:c.color,dark:y()};return p(r,`expanded`,()=>t.expanded,e=>{e!==t.expanded&&Y(n,e)}),p(r,`ticked`,()=>t.ticked,e=>{e!==t.ticked&&X([n],e)}),p(r,`indeterminate`,()=>t.indeterminate===!0),r}function Ye(e){return(c.filter?e.filter(e=>we(e[c.nodeKey]).value):e).map(e=>n(de,{key:e[c.nodeKey],node:e}))}function Xe(e){g(e===`show`?`afterShow`:`afterHide`)}function Ze(n){let i=e(null),o=f(()=>B(n.node[c.nodeKey]).value?.expanded===!0),s=t(!o.value),{onEnter:l,onLeave:u}=le(()=>c.duration,Xe);function d(){s.value=!0}function p(){i.value!==null&&l(i.value)}return r(o,e=>{c.noTransition?s.value=!e:e?s.value?(s.value=!1,a(p)):p():i.value===null?d():u(i.value,d)}),{elRef:i,hidden:s}}function Qe(e,t,r,i,a,o,s){return n(`div`,{class:`q-tree__node-header relative-position row no-wrap items-center q-focusable`+(t.link?` q-tree__node--link q-hoverable`:``)+(t.selected?` q-tree__node--selected`:``)+(t.disabled===!0?` q-tree__node--disabled`:``),ref:e=>{e===null?delete A[r]:A[r]=e},tabindex:r===D?0:-1,"aria-expanded":i?t.expanded?`true`:`false`:null,"aria-selected":t.selectable?t.selected?`true`:`false`:null,"aria-checked":t.hasTicking&&t.noTick!==!0?t.indeterminate===!0?`mixed`:t.ticked?`true`:`false`:null,"aria-disabled":t.disabled===!0?`true`:null,role:`treeitem`,...s,onFocus(){E=r,J(r)},onClick:t=>{at(e,r,t)},onKeydown(n){n.target===n.currentTarget&&te(n)!==!0&&(n.keyCode===13?at(e,r,n,!0):n.keyCode===32?t.hasTicking&&t.noTick!==!0&&t.tickable?(m(n),ot(r,!t.ticked)):$(e,r,n,!0):it(r,n.keyCode)&&m(n))}},[n(`div`,{class:`q-focus-helper`,tabindex:-1,ref:e=>{e===null?delete k[r]:k[r]=e}}),t.lazy===`loading`?n(ie,{class:`q-tree__spinner`,color:ge.value}):i?n(re,{class:`q-tree__arrow`+(t.expanded?` q-tree__arrow--rotate`:``),name:he.value,onClick(t){$(e,r,t)}}):null,t.hasTicking&&t.noTick!==!0?n(se,{class:`q-tree__tickbox`,modelValue:t.indeterminate===!0?null:t.ticked,color:ge.value,dark:y(),dense:!0,keepColor:!0,disable:!t.tickable,tabindex:-1,"aria-hidden":`true`,onMousedown(e){e.preventDefault(),E=r,J(r),Z(r)},"onUpdate:modelValue":e=>{ot(r,e)}}):null,n(`div`,{class:`q-tree__node-header-content col row no-wrap items-center`+(t.selected?_e.value:M.value)},[o?o(a):[pe(e),n(`div`,e[c.labelKey])]])])}function $e(e,t){let r=e[c.nodeKey],i=B(r).value,a=e.header&&h[`header-${e.header}`]||h[`default-header`];if(i===void 0)return null;i.expanded&&O.add(r);let o=i.expanded||c.noTransition!==!0&&O.has(r),s=i.isParent&&o?Ye(e[c.childrenKey]):[],l=i.hasVisibleChildren||i.lazy&&i.lazy!==`loaded`,u=e.body&&h[`body-${e.body}`]||h[`default-body`],d=a!==void 0||u!==void 0?Je(e,i,r):null;return u!==void 0&&(u=n(`div`,{class:`q-tree__node-body relative-position`},[n(`div`,{class:M.value},[u(d)])])),n(`div`,{key:r,class:`q-tree__node relative-position q-tree__node--${l?`parent`:`child`}`},[Qe(e,i,r,l,d,a),l?c.noTransition?i.expanded?n(`div`,{class:`q-tree__node-collapsible`+M.value,key:`${r}__q`},[u,n(`div`,{class:`q-tree__children`+(i.disabled===!0?` q-tree__node--disabled`:``),role:`group`},s)]):null:o?n(`div`,{ref:t.elRef,class:`q-tree__node-collapsible`+M.value,style:t.hidden.value?ue:null,key:`${r}__q`},[u,n(`div`,{class:`q-tree__children`+(i.disabled===!0?` q-tree__node--disabled`:``),role:`group`},s)]):null:u])}function et(e){let{key:t,node:r,depth:i}=e,a=B(t).value;if(a===void 0)return null;let o=a.hasVisibleChildren||a.lazy&&a.lazy!==`loaded`,s=r.header&&h[`header-${r.header}`]||h[`default-header`],c=r.body&&h[`body-${r.body}`]||h[`default-body`],l=s!==void 0||c!==void 0?Je(r,a,t):null;return c=c!==void 0&&(!a.isParent||a.expanded)?n(`div`,{class:`q-tree__vnode-body row no-wrap items-stretch`},[...fe(e,!1),n(`div`,{class:`q-tree__node-body relative-position`},[n(`div`,{class:M.value},[c(l)])])]):null,n(`div`,{key:t,class:`q-tree__vnode q-tree__vnode--${o?`parent`:`child`}`+(i===0?` q-tree__vnode--root`:``)+(a.disabled===!0||e.parentDisabled?` q-tree__node--disabled`:``)},[n(`div`,{class:`q-tree__vnode-header row no-wrap items-stretch`},[...fe(e,!0),Qe(r,a,t,o,l,s,{"aria-level":i+1,"aria-setsize":e.setsize,"aria-posinset":e.posinset})]),c])}function tt(){let e=H.value,t;if(e.length===0)t=c.filter?c.noResultsLabel||v.lang.tree.noResults:c.noNodesLabel||v.lang.tree.noNodes;else{let{from:n,to:r}=ke.value,i=e.slice(n,r),a=Pe();i.length!==0&&(a===void 0||!i.some(e=>e.key===a))&&(a=i[0].key),J(a),t=Ae(`div`,i.map(et),{role:`tree`})}return n(`div`,{class:me.value+` q-tree--virtual q-virtual-scroll q-virtual-scroll--vertical`+(c.virtualScrollTarget===void 0?` scroll`:``),ref:U},t)}function nt(e,t){if(c.virtualScroll){let n=H.value.findIndex(t=>t.key===e);n!==-1&&Me(n,t)}}function Z(e){k[e]?.focus({preventScroll:!0})}function Q(e){if(e!==void 0){E=e,J(e);let t=A[e];if(t!==void 0)t.focus();else if(c.virtualScroll){let t=H.value.findIndex(t=>t.key===e);t!==-1&&(Me(t),a(()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{A[e]?.focus()})})}))}}}function rt(e){return e.find(ye)}function it(e,t){let n=V(e);if(n===void 0)return!1;let r=Ne.value,i=r.indexOf(e);if(t===36)return Q(r[0]),!0;if(t===35)return Q(r.at(-1)),!0;if(t===38)return Q(r[i-1]),!0;if(t===40)return Q(r[i+1]),!0;if(t===39)return!n.isParent&&!n.lazy||(n.expanded?Q(rt(N.value.map.get(e).childKeys)):Y(e,!0)),!0;if(t===37){if(n.expanded)Y(e,!1);else{let t=N.value.map.get(e).parentKey;Q(t===null?void 0:t)}return!0}return!1}function at(e,t,n,r){let i=V(t);i!==void 0&&i.disabled!==!0&&(E=t,J(t),r!==!0&&i.selectable&&Z(t),j.value&&i.selectable?c.noSelectionUnset?t!==c.selected&&g(`update:selected`,t===void 0?null:t):g(`update:selected`,t===c.selected?null:t):$(e,t,n,r),typeof e.handler==`function`&&e.handler(e))}function $(e,t,n,r){n!==void 0&&m(n);let i=V(t);i!==void 0&&i.disabled!==!0&&(E=t,J(t),r!==!0&&i.selectable&&Z(t),Y(t,!i.expanded,e,i))}function ot(e,t){let n=V(e);if(n!==void 0){if(n.indeterminate===!0&&(t=n.indeterminateNextState),n.strictTicking)X([e],t);else if(n.leafTicking){let n=[],{map:r}=N.value,i=e=>{let a=V(e);a.isParent?(t!==!0&&a.noTick!==!0&&a.tickable&&n.push(e),a.leafTicking&&r.get(e).childKeys.forEach(i)):a.noTick!==!0&&a.tickable&&(!a.leafFilteredTicking||a.matchesFilter)&&n.push(e)};i(e),X(n,t)}}}return c.defaultExpandAll&&Ue(),c.virtualScroll&&G(),s(b,{renderNode:$e,useCollapsible:Ze}),Object.assign(_,{getNodeByKey:Fe,getParentNode:Ie,getTickedNodes:Re,getIndeterminateNodes:ze,getExpandedNodes:Be,isExpanded:Ve,collapseAll:He,expandAll:Ue,setExpanded:Y,isTicked:Ge,isIndeterminate:Ke,getTickState:qe,setTicked:X,scrollTo:nt}),()=>{if(c.virtualScroll)return tt();J(Pe());let e=Ye(c.nodes);return n(`div`,{class:me.value,role:`tree`},e.length===0?c.filter?c.noResultsLabel||v.lang.tree.noResults:c.noNodesLabel||v.lang.tree.noNodes:e)}}});function C(e){let t=[];for(let n of e){let e=n.path.split(`/`).filter(e=>e.length>0);if(e.length===0)continue;let r=t,i=``;for(let t=0;t<e.length-1;t++){let n=e[t];i=i?`${i}/${n}`:n;let a=r.find(e=>e.isFolder&&e.label===n);a||(a={label:n,nodeKey:`dir:${i}`,isFolder:!0,children:[]},r.push(a)),r=a.children}r.push({label:e[e.length-1],nodeKey:`file:${n.path}`,file:n})}function n(e){e.sort((e,t)=>{let n=e.isFolder===!0;return n===(t.isFolder===!0)?e.label.localeCompare(t.label):n?-1:1});for(let t of e)t.children&&n(t.children)}return n(t),t}function w(e){let t=0;for(let n of e)n.file&&t++,n.children&&(t+=w(n.children));return t}function T(e,t=1/0){let n=[],r=(e,i)=>{if(!(i>t))for(let t of e)t.isFolder&&(n.push(t.nodeKey),t.children&&r(t.children,i+1))};return r(e,1),n}export{S as i,T as n,w as r,C as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{pt as e,v as t}from"./reactivity.esm-bundler-DY1JkAEA.js";import{C as n,J as r,L as i,O as a,P as o,T as s,X as c,Y as l,_ as u,b as d,d as f,f as p,g as m,j as h,l as g,p as _,r as v,u as y,y as b,z as x}from"./runtime-core.esm-bundler-Bqg71Vll.js";import{d as S,m as C,x as ee,y as te,z as w}from"./dom-BtYTvLeN.js";import{c as T,l as E,t as D,u as O}from"./QBtn-BUSdPaf4.js";import{n as k,t as ne}from"./use-dark-BHObfh0O.js";import{C as re,a as ie,b as A,o as ae,v as oe,y as j}from"./detached-fullscreen-Du3TcYdX.js";import{$t as se,Bt as M,K as N,Kt as P,Q as F,Ut as I,Vt as L,Z as ce,gn as le,hn as ue,in as de,jt as R,q as fe,tn as z,vn as B}from"./index-CbyHfF8I.js";import{t as V}from"./QList-Cx1UfaUm.js";import{i as H}from"./QSelect-bEq3g_io.js";import{n as U,t as W}from"./QItemSection-MdJ1_ZK7.js";import{i as G}from"./use-tours-IVbXTmz2.js";import{t as pe}from"./TouchPan-B4gQPwGN.js";import{t as K}from"./ClosePopup-CRV2hxHS.js";import{t as q}from"./QBanner-BT2ZemYu.js";var me=150;function he(e,t){e.value!==t&&(e.value=t)}var J=w({name:`QDrawer`,inheritAttrs:!1,props:{...A,...k,side:{type:String,default:`left`,validator:e=>[`left`,`right`].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>[`default`,`desktop`,`mobile`].includes(e),default:`default`},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...j,`onLayout`,`miniState`,`escapeKey`,`pan`],setup(e,{slots:i,emit:l,attrs:u}){let f=d(),p=S(),m=ne(e,p),{preventBodyScroll:_}=de(),{registerTimeout:v,removeTimeout:y}=re(),b=s(ee,te);if(b===te)return console.error(`QDrawer needs to be child of QLayout`),te;let x,w=null,T,E=t(e.behavior===`mobile`||e.behavior!==`desktop`&&b.totalWidth.value<=e.breakpoint),D=g(()=>e.mini&&!E.value),O=g(()=>D.value?e.miniWidth:e.width),k=g(()=>e.overlay||e.miniToOverlay||b.view.value.includes(B.value?`R`:`L`)||p.platform.is.ios&&b.isContainer.value),A=t(e.showIfAbove&&!E.value||e.modelValue===!0),j=g(()=>!e.overlay&&A.value&&!E.value),se=g(()=>e.overlay&&A.value&&!E.value),M=g(()=>!e.persistent&&(E.value||se.value));function N(e,t){if(L(),e!==!1&&b.animate(),X(0),E.value){let e=b.instances[q.value];e?.belowBreakpoint.value&&e.hide(!1),Z(1),b.isContainer.value||_(!0)}else Z(0),e!==!1&&De(!1);v(()=>{e!==!1&&De(!0),t||l(`show`,e)},me)}function P(e,t){ce(),e!==!1&&b.animate(),Z(0),X(V.value*O.value),je(),t?y():v(()=>{l(`hide`,e)},me)}let{show:F,hide:I}=oe({showing:A,hideOnRouteChange:M,handleShow:N,handleHide:P}),{addToHistory:L,removeFromHistory:ce}=ue(A,I,M),le=g(()=>A.value&&M.value);function R(e){l(`escapeKey`),I(e)}function fe(e){e?ie(R):ae(R)}let z={belowBreakpoint:E,hide:I},B=g(()=>e.side===`right`),V=g(()=>(p.lang.rtl?-1:1)*(B.value?1:-1)),U=t(0),W=t(!1),G=t(!1),K=t(O.value*V.value),q=g(()=>B.value?`left`:`right`),J=g(()=>A.value&&!E.value&&!e.overlay?e.miniToOverlay?e.miniWidth:O.value:0),ge=g(()=>`fullscreen q-drawer__backdrop`+(!A.value&&!W.value?` hidden`:``)),_e=g(()=>({backgroundColor:`rgba(0,0,0,${U.value*.4})`})),ve=g(()=>B.value?b.rows.value.top[2]===`r`:b.rows.value.top[0]===`l`),ye=g(()=>B.value?b.rows.value.bottom[2]===`r`:b.rows.value.bottom[0]===`l`),Y=g(()=>{let e={};return b.header.space&&!ve.value&&(k.value?e.top=`${b.header.offset}px`:b.header.space&&(e.top=`${b.header.size}px`)),b.footer.space&&!ye.value&&(k.value?e.bottom=`${b.footer.offset}px`:b.footer.space&&(e.bottom=`${b.footer.size}px`)),e}),be=g(()=>{let e={"--q-drawer-width":`${O.value}px`,transform:`translateX(${K.value}px)`};return E.value?e:Object.assign(e,Y.value)}),xe=g(()=>`q-drawer__content fit `+(b.isContainer.value?`overflow-auto`:`scroll`)),Se=g(()=>`q-drawer q-drawer--${e.side}`+(G.value?` q-drawer--mini-animate`:``)+(e.bordered?` q-drawer--bordered`:``)+(m()?` q-drawer--dark q-dark`:``)+(W.value?` no-transition`:A.value?``:` q-layout--prevent-focus`)+(E.value?` fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding`:` q-drawer--${D.value?`mini`:`standard`}`+(k.value||!j.value?` fixed`:``)+(e.overlay||e.miniToOverlay?` q-drawer--on-top`:``)+(ve.value?` q-drawer--top-padding`:``))),Ce=g(()=>{let t=p.lang.rtl?e.side:q.value;return[[pe,ke,void 0,{[t]:!0,mouse:!0,prevent:!0}]]}),we=g(()=>{let t=p.lang.rtl?q.value:e.side;return[[pe,E.value&&!e.noSwipeClose?Ae:void 0,void 0,{[t]:!0,mouse:!0}]]}),Te=g(()=>{let t=p.lang.rtl?q.value:e.side;return[[pe,A.value&&!e.noSwipeBackdrop?Ae:void 0,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0,prevent:!0}]]});function Ee(){he(E,e.behavior===`mobile`||e.behavior!==`desktop`&&b.totalWidth.value<=e.breakpoint)}r(E,t=>{t?(x=A.value,A.value&&I(!1)):A.value?(X(0),Z(0),je()):!e.overlay&&e.behavior!==`mobile`&&x!==!1&&F(!1)}),r(()=>e.side,(e,t)=>{b.instances[t]===z&&(b.instances[t]=void 0,b[t].space=!1,b[t].offset=0),b.instances[e]=z,b[e].size=O.value,b[e].space=j.value,b[e].offset=J.value}),r(b.totalWidth,()=>{(b.isContainer.value||!document.qScrollPrevented)&&Ee()}),r(()=>e.behavior+e.breakpoint,Ee),r(b.isContainer,e=>{A.value&&_(!e),e&&Ee()}),r(b.scrollbarWidth,()=>{X(A.value?0:void 0)}),r(J,e=>{Q(`offset`,e)}),r(j,e=>{l(`onLayout`,e),Q(`space`,e)}),r(B,()=>{X()}),r(O,t=>{X(),$(e.miniToOverlay,t)}),r(()=>e.miniToOverlay,e=>{$(e,O.value)}),r(()=>p.lang.rtl,()=>{X()}),r(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue&&(Oe(),b.animate())}),r(D,e=>{l(`miniState`,e)});function X(e){e===void 0?a(()=>{e=A.value?0:O.value,X(V.value*e)}):(b.isContainer.value&&B.value&&(E.value||Math.abs(e)===O.value)&&(e+=V.value*b.scrollbarWidth.value),K.value=e)}function Z(e){U.value=e}function De(e){let t=e?`remove`:b.isContainer.value?``:`add`;t!==``&&document.body.classList[t](`q-body--drawer-toggle`)}function Oe(){w!==null&&clearTimeout(w),f.proxy&&f.proxy.$el&&f.proxy.$el.classList.add(`q-drawer--mini-animate`),G.value=!0,w=setTimeout(()=>{w=null,G.value=!1,f?.proxy?.$el?.classList.remove(`q-drawer--mini-animate`)},150)}function ke(e){if(A.value)return;let t=O.value,n=H(e.distance.x,0,t);if(e.isFinal){n>=Math.min(75,t)?(F(),l(`pan`,{type:`open`,stage:`end`})):(b.animate(),Z(0),X(V.value*t),l(`pan`,{type:`open`,stage:`cancel`})),W.value=!1;return}X((p.lang.rtl?!B.value:B.value)?Math.max(t-n,0):Math.min(0,n-t)),Z(H(n/t,0,1)),e.isFirst&&(W.value=!0,l(`pan`,{type:`open`,stage:`start`}))}function Ae(t){if(!A.value)return;let n=O.value,r=t.direction===e.side,i=(p.lang.rtl?!r:r)?H(t.distance.x,0,n):0;if(t.isFinal){Math.abs(i)<Math.min(75,n)?(b.animate(),Z(1),X(0),l(`pan`,{type:`close`,stage:`cancel`})):(I(),l(`pan`,{type:`close`,stage:`end`})),W.value=!1;return}X(V.value*i),Z(H(1-i/n,0,1)),t.isFirst&&(W.value=!0,l(`pan`,{type:`close`,stage:`start`}))}function je(){_(!1),De(!0)}function Q(t,n){b.update(e.side,t,n)}function $(t,n){Q(`size`,t?e.miniWidth:n)}return b.instances[e.side]=z,$(e.miniToOverlay,O.value),Q(`space`,j.value),Q(`offset`,J.value),e.showIfAbove&&!e.modelValue&&A.value&&e[`onUpdate:modelValue`]!==void 0&&l(`update:modelValue`,!0),o(()=>{l(`onLayout`,j.value),l(`miniState`,D.value),r(le,fe,{immediate:!0}),x=e.showIfAbove;let t=()=>{(A.value?N:P)(!1,!0)};if(b.totalWidth.value!==0){a(t);return}T=r(b.totalWidth,()=>{T(),T=void 0,!A.value&&e.showIfAbove&&!E.value?F(!1):t()})}),h(()=>{T?.(),ae(R),w!==null&&(clearTimeout(w),w=null),A.value&&je(),b.instances[e.side]===z&&(b.instances[e.side]=void 0,Q(`size`,0),Q(`offset`,0),Q(`space`,!1))}),()=>{let t=[];E.value&&(e.noSwipeOpen||t.push(c(n(`div`,{key:`open`,class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":`true`}),Ce.value)),t.push(c(n(`div`,{ref:`backdrop`,class:ge.value,style:_e.value,"aria-hidden":`true`,onClick:I}),Te.value)));let r={},a={};for(let e in u)e===`role`||e.startsWith(`aria-`)?r[e]=u[e]:a[e]=u[e];let o=D.value&&i.mini!==void 0,s=[n(`div`,{...a,key:String(o),class:[xe.value,u.class]},o?i.mini():C(i.default))];return e.elevated&&A.value&&s.push(n(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),t.push(c(n(`aside`,{ref:`content`,class:Se.value,style:be.value,...r},s),we.value)),n(`div`,{class:`q-drawer-container`},t)}}}),ge={class:`text-h6`},_e=[`title`],ve={key:1,class:`row justify-center q-mt-sm`},ye=b({__name:`FolderPickerDialog`,props:{modelValue:{type:Boolean},initialPath:{}},emits:[`update:modelValue`,`select`],setup(n,{emit:a}){let o=n,s=a,d=t(``),h=t(null),g=t([]),b=t(!1),S=t(``);async function C(e){b.value=!0,S.value=``;try{let t=e?`?path=${encodeURIComponent(e)}`:``,n=await I(`/api/fs/list-dirs${t}`),r=await n.json();if(!n.ok){S.value=r?.error??`HTTP ${n.status}`;return}d.value=r.path??``,h.value=r.parent??null,g.value=Array.isArray(r.entries)?r.entries:[]}catch(e){S.value=e instanceof Error?e.message:String(e)}finally{b.value=!1}}function ee(){d.value&&(s(`select`,d.value),s(`update:modelValue`,!1))}return r(()=>o.modelValue,e=>{e&&C(o.initialPath||void 0)}),(t,r)=>(i(),f(z,{"model-value":n.modelValue,"onUpdate:modelValue":r[1]||=e=>t.$emit(`update:modelValue`,e)},{default:l(()=>[u(le,{class:`text-kobo-1`,style:{"min-width":`480px`,"max-width":`90vw`,background:`var(--kobo-surface)`}},{default:l(()=>[u(B,{class:`row items-center q-pb-none`},{default:l(()=>[y(`div`,ge,e(t.$t(`folderPicker.title`)),1),u(G),c(u(D,{flat:``,dense:``,round:``,icon:`close`,color:`kobo-2`},null,512),[[K]])]),_:1}),u(B,null,{default:l(()=>[y(`div`,{class:`text-caption text-kobo-3 ellipsis q-mb-sm`,style:{"font-family":`monospace`},title:d.value},e(d.value||`…`),9,_e),S.value?(i(),f(q,{key:0,dense:``,class:`bg-red-9 text-white q-mb-sm rounded-borders`},{default:l(()=>[m(e(S.value),1)]),_:1})):p(``,!0),u(V,{bordered:``,separator:``,class:`rounded-borders`,style:{"max-height":`320px`,"overflow-y":`auto`}},{default:l(()=>[h.value?c((i(),f(U,{key:0,clickable:``,onClick:r[0]||=e=>C(h.value)},{default:l(()=>[u(W,{avatar:``},{default:l(()=>[u(E,{name:`arrow_upward`,color:`kobo-2`})]),_:1}),u(W,null,{default:l(()=>[m(e(t.$t(`folderPicker.parent`)),1)]),_:1})]),_:1})),[[T]]):p(``,!0),(i(!0),_(v,null,x(g.value,t=>c((i(),f(U,{key:t.path,clickable:``,onClick:e=>C(t.path)},{default:l(()=>[u(W,{avatar:``},{default:l(()=>[u(E,{name:`folder`,color:`amber-6`})]),_:1}),u(W,null,{default:l(()=>[m(e(t.name),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[T]])),128)),!b.value&&g.value.length===0?(i(),f(U,{key:1},{default:l(()=>[u(W,{class:`text-kobo-3`},{default:l(()=>[m(e(t.$t(`folderPicker.empty`)),1)]),_:1})]),_:1})):p(``,!0)]),_:1}),b.value?(i(),_(`div`,ve,[u(O,{size:`20px`,color:`kobo-2`})])):p(``,!0)]),_:1}),u(R,{align:`right`},{default:l(()=>[c(u(D,{flat:``,label:t.$t(`common.cancel`),color:`kobo-2`},null,8,[`label`]),[[K]]),u(D,{flat:``,label:t.$t(`folderPicker.select`),color:`primary`,disable:!d.value||b.value,onClick:ee},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}}),Y=new Map;function be(e){let t=Y.get(e);t&&URL.revokeObjectURL(t),Y.delete(e)}async function xe(e){if(!Y.has(e))try{let t=await I(N(e));if(!t.ok)throw await P(t);let n=URL.createObjectURL(await t.blob());if(Y.has(e)||!fe(e)){URL.revokeObjectURL(n);return}Y.set(e,n),ce(e,n)}catch(e){console.error(`[custom-sounds store] preload failed:`,e)}}var Se=se(`customSounds`,{state:()=>({sounds:[],loaded:!1,busy:!1}),getters:{options:e=>e.sounds.map(e=>({label:e.name,value:e.reference}))},actions:{apply(e){this.sounds=e,F(e.map(e=>e.reference));for(let t of Y.keys())e.some(e=>e.reference===t)||be(t);for(let t of e)xe(t.reference)},async fetchSounds(){if(!this.busy){this.busy=!0;try{this.apply((await L(`/api/sounds`)).sounds),this.loaded=!0}catch(e){console.error(`[custom-sounds store] fetchSounds failed:`,e)}finally{this.busy=!1}}},async uploadSound(e){let t=new FormData;t.append(`sound`,e),this.busy=!0;try{let e=await L(`/api/sounds`,{method:`POST`,body:t});return this.apply([...this.sounds,e]),e}finally{this.busy=!1}},async removeSound(e){this.busy=!0;try{await L(`/api/sounds/${encodeURIComponent(e)}`,{method:`DELETE`})}catch(e){if(!(e instanceof M)||e.status!==404)throw e}finally{this.busy=!1}this.apply(this.sounds.filter(t=>t.id!==e))}}});export{ye as n,J as r,Se as t};
|
|
1
|
+
import{pt as e,v as t}from"./reactivity.esm-bundler-DY1JkAEA.js";import{C as n,J as r,L as i,O as a,P as o,T as s,X as c,Y as l,_ as u,b as d,d as f,f as p,g as m,j as h,l as g,p as _,r as v,u as y,y as b,z as x}from"./runtime-core.esm-bundler-Bqg71Vll.js";import{d as S,m as C,x as ee,y as te,z as w}from"./dom-BtYTvLeN.js";import{c as T,l as E,t as D,u as O}from"./QBtn-BUSdPaf4.js";import{n as k,t as ne}from"./use-dark-BHObfh0O.js";import{C as re,a as ie,b as A,o as ae,v as oe,y as j}from"./detached-fullscreen-Du3TcYdX.js";import{$t as se,Bt as M,K as N,Kt as P,Q as F,Ut as I,Vt as L,Z as ce,gn as le,hn as ue,in as de,jt as R,q as fe,tn as z,vn as B}from"./index-z1Oh2-I_.js";import{t as V}from"./QList-Cx1UfaUm.js";import{i as H}from"./QSelect-C1AN93yA.js";import{n as U,t as W}from"./QItemSection-MdJ1_ZK7.js";import{i as G}from"./use-tours-COLDth2h.js";import{t as pe}from"./TouchPan-Csev_qU6.js";import{t as K}from"./ClosePopup-CRV2hxHS.js";import{t as q}from"./QBanner-BT2ZemYu.js";var me=150;function he(e,t){e.value!==t&&(e.value=t)}var J=w({name:`QDrawer`,inheritAttrs:!1,props:{...A,...k,side:{type:String,default:`left`,validator:e=>[`left`,`right`].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>[`default`,`desktop`,`mobile`].includes(e),default:`default`},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...j,`onLayout`,`miniState`,`escapeKey`,`pan`],setup(e,{slots:i,emit:l,attrs:u}){let f=d(),p=S(),m=ne(e,p),{preventBodyScroll:_}=de(),{registerTimeout:v,removeTimeout:y}=re(),b=s(ee,te);if(b===te)return console.error(`QDrawer needs to be child of QLayout`),te;let x,w=null,T,E=t(e.behavior===`mobile`||e.behavior!==`desktop`&&b.totalWidth.value<=e.breakpoint),D=g(()=>e.mini&&!E.value),O=g(()=>D.value?e.miniWidth:e.width),k=g(()=>e.overlay||e.miniToOverlay||b.view.value.includes(B.value?`R`:`L`)||p.platform.is.ios&&b.isContainer.value),A=t(e.showIfAbove&&!E.value||e.modelValue===!0),j=g(()=>!e.overlay&&A.value&&!E.value),se=g(()=>e.overlay&&A.value&&!E.value),M=g(()=>!e.persistent&&(E.value||se.value));function N(e,t){if(L(),e!==!1&&b.animate(),X(0),E.value){let e=b.instances[q.value];e?.belowBreakpoint.value&&e.hide(!1),Z(1),b.isContainer.value||_(!0)}else Z(0),e!==!1&&De(!1);v(()=>{e!==!1&&De(!0),t||l(`show`,e)},me)}function P(e,t){ce(),e!==!1&&b.animate(),Z(0),X(V.value*O.value),je(),t?y():v(()=>{l(`hide`,e)},me)}let{show:F,hide:I}=oe({showing:A,hideOnRouteChange:M,handleShow:N,handleHide:P}),{addToHistory:L,removeFromHistory:ce}=ue(A,I,M),le=g(()=>A.value&&M.value);function R(e){l(`escapeKey`),I(e)}function fe(e){e?ie(R):ae(R)}let z={belowBreakpoint:E,hide:I},B=g(()=>e.side===`right`),V=g(()=>(p.lang.rtl?-1:1)*(B.value?1:-1)),U=t(0),W=t(!1),G=t(!1),K=t(O.value*V.value),q=g(()=>B.value?`left`:`right`),J=g(()=>A.value&&!E.value&&!e.overlay?e.miniToOverlay?e.miniWidth:O.value:0),ge=g(()=>`fullscreen q-drawer__backdrop`+(!A.value&&!W.value?` hidden`:``)),_e=g(()=>({backgroundColor:`rgba(0,0,0,${U.value*.4})`})),ve=g(()=>B.value?b.rows.value.top[2]===`r`:b.rows.value.top[0]===`l`),ye=g(()=>B.value?b.rows.value.bottom[2]===`r`:b.rows.value.bottom[0]===`l`),Y=g(()=>{let e={};return b.header.space&&!ve.value&&(k.value?e.top=`${b.header.offset}px`:b.header.space&&(e.top=`${b.header.size}px`)),b.footer.space&&!ye.value&&(k.value?e.bottom=`${b.footer.offset}px`:b.footer.space&&(e.bottom=`${b.footer.size}px`)),e}),be=g(()=>{let e={"--q-drawer-width":`${O.value}px`,transform:`translateX(${K.value}px)`};return E.value?e:Object.assign(e,Y.value)}),xe=g(()=>`q-drawer__content fit `+(b.isContainer.value?`overflow-auto`:`scroll`)),Se=g(()=>`q-drawer q-drawer--${e.side}`+(G.value?` q-drawer--mini-animate`:``)+(e.bordered?` q-drawer--bordered`:``)+(m()?` q-drawer--dark q-dark`:``)+(W.value?` no-transition`:A.value?``:` q-layout--prevent-focus`)+(E.value?` fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding`:` q-drawer--${D.value?`mini`:`standard`}`+(k.value||!j.value?` fixed`:``)+(e.overlay||e.miniToOverlay?` q-drawer--on-top`:``)+(ve.value?` q-drawer--top-padding`:``))),Ce=g(()=>{let t=p.lang.rtl?e.side:q.value;return[[pe,ke,void 0,{[t]:!0,mouse:!0,prevent:!0}]]}),we=g(()=>{let t=p.lang.rtl?q.value:e.side;return[[pe,E.value&&!e.noSwipeClose?Ae:void 0,void 0,{[t]:!0,mouse:!0}]]}),Te=g(()=>{let t=p.lang.rtl?q.value:e.side;return[[pe,A.value&&!e.noSwipeBackdrop?Ae:void 0,void 0,{[t]:!0,mouse:!0,mouseAllDir:!0,prevent:!0}]]});function Ee(){he(E,e.behavior===`mobile`||e.behavior!==`desktop`&&b.totalWidth.value<=e.breakpoint)}r(E,t=>{t?(x=A.value,A.value&&I(!1)):A.value?(X(0),Z(0),je()):!e.overlay&&e.behavior!==`mobile`&&x!==!1&&F(!1)}),r(()=>e.side,(e,t)=>{b.instances[t]===z&&(b.instances[t]=void 0,b[t].space=!1,b[t].offset=0),b.instances[e]=z,b[e].size=O.value,b[e].space=j.value,b[e].offset=J.value}),r(b.totalWidth,()=>{(b.isContainer.value||!document.qScrollPrevented)&&Ee()}),r(()=>e.behavior+e.breakpoint,Ee),r(b.isContainer,e=>{A.value&&_(!e),e&&Ee()}),r(b.scrollbarWidth,()=>{X(A.value?0:void 0)}),r(J,e=>{Q(`offset`,e)}),r(j,e=>{l(`onLayout`,e),Q(`space`,e)}),r(B,()=>{X()}),r(O,t=>{X(),$(e.miniToOverlay,t)}),r(()=>e.miniToOverlay,e=>{$(e,O.value)}),r(()=>p.lang.rtl,()=>{X()}),r(()=>e.mini,()=>{e.noMiniAnimation||e.modelValue&&(Oe(),b.animate())}),r(D,e=>{l(`miniState`,e)});function X(e){e===void 0?a(()=>{e=A.value?0:O.value,X(V.value*e)}):(b.isContainer.value&&B.value&&(E.value||Math.abs(e)===O.value)&&(e+=V.value*b.scrollbarWidth.value),K.value=e)}function Z(e){U.value=e}function De(e){let t=e?`remove`:b.isContainer.value?``:`add`;t!==``&&document.body.classList[t](`q-body--drawer-toggle`)}function Oe(){w!==null&&clearTimeout(w),f.proxy&&f.proxy.$el&&f.proxy.$el.classList.add(`q-drawer--mini-animate`),G.value=!0,w=setTimeout(()=>{w=null,G.value=!1,f?.proxy?.$el?.classList.remove(`q-drawer--mini-animate`)},150)}function ke(e){if(A.value)return;let t=O.value,n=H(e.distance.x,0,t);if(e.isFinal){n>=Math.min(75,t)?(F(),l(`pan`,{type:`open`,stage:`end`})):(b.animate(),Z(0),X(V.value*t),l(`pan`,{type:`open`,stage:`cancel`})),W.value=!1;return}X((p.lang.rtl?!B.value:B.value)?Math.max(t-n,0):Math.min(0,n-t)),Z(H(n/t,0,1)),e.isFirst&&(W.value=!0,l(`pan`,{type:`open`,stage:`start`}))}function Ae(t){if(!A.value)return;let n=O.value,r=t.direction===e.side,i=(p.lang.rtl?!r:r)?H(t.distance.x,0,n):0;if(t.isFinal){Math.abs(i)<Math.min(75,n)?(b.animate(),Z(1),X(0),l(`pan`,{type:`close`,stage:`cancel`})):(I(),l(`pan`,{type:`close`,stage:`end`})),W.value=!1;return}X(V.value*i),Z(H(1-i/n,0,1)),t.isFirst&&(W.value=!0,l(`pan`,{type:`close`,stage:`start`}))}function je(){_(!1),De(!0)}function Q(t,n){b.update(e.side,t,n)}function $(t,n){Q(`size`,t?e.miniWidth:n)}return b.instances[e.side]=z,$(e.miniToOverlay,O.value),Q(`space`,j.value),Q(`offset`,J.value),e.showIfAbove&&!e.modelValue&&A.value&&e[`onUpdate:modelValue`]!==void 0&&l(`update:modelValue`,!0),o(()=>{l(`onLayout`,j.value),l(`miniState`,D.value),r(le,fe,{immediate:!0}),x=e.showIfAbove;let t=()=>{(A.value?N:P)(!1,!0)};if(b.totalWidth.value!==0){a(t);return}T=r(b.totalWidth,()=>{T(),T=void 0,!A.value&&e.showIfAbove&&!E.value?F(!1):t()})}),h(()=>{T?.(),ae(R),w!==null&&(clearTimeout(w),w=null),A.value&&je(),b.instances[e.side]===z&&(b.instances[e.side]=void 0,Q(`size`,0),Q(`offset`,0),Q(`space`,!1))}),()=>{let t=[];E.value&&(e.noSwipeOpen||t.push(c(n(`div`,{key:`open`,class:`q-drawer__opener fixed-${e.side}`,"aria-hidden":`true`}),Ce.value)),t.push(c(n(`div`,{ref:`backdrop`,class:ge.value,style:_e.value,"aria-hidden":`true`,onClick:I}),Te.value)));let r={},a={};for(let e in u)e===`role`||e.startsWith(`aria-`)?r[e]=u[e]:a[e]=u[e];let o=D.value&&i.mini!==void 0,s=[n(`div`,{...a,key:String(o),class:[xe.value,u.class]},o?i.mini():C(i.default))];return e.elevated&&A.value&&s.push(n(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),t.push(c(n(`aside`,{ref:`content`,class:Se.value,style:be.value,...r},s),we.value)),n(`div`,{class:`q-drawer-container`},t)}}}),ge={class:`text-h6`},_e=[`title`],ve={key:1,class:`row justify-center q-mt-sm`},ye=b({__name:`FolderPickerDialog`,props:{modelValue:{type:Boolean},initialPath:{}},emits:[`update:modelValue`,`select`],setup(n,{emit:a}){let o=n,s=a,d=t(``),h=t(null),g=t([]),b=t(!1),S=t(``);async function C(e){b.value=!0,S.value=``;try{let t=e?`?path=${encodeURIComponent(e)}`:``,n=await I(`/api/fs/list-dirs${t}`),r=await n.json();if(!n.ok){S.value=r?.error??`HTTP ${n.status}`;return}d.value=r.path??``,h.value=r.parent??null,g.value=Array.isArray(r.entries)?r.entries:[]}catch(e){S.value=e instanceof Error?e.message:String(e)}finally{b.value=!1}}function ee(){d.value&&(s(`select`,d.value),s(`update:modelValue`,!1))}return r(()=>o.modelValue,e=>{e&&C(o.initialPath||void 0)}),(t,r)=>(i(),f(z,{"model-value":n.modelValue,"onUpdate:modelValue":r[1]||=e=>t.$emit(`update:modelValue`,e)},{default:l(()=>[u(le,{class:`text-kobo-1`,style:{"min-width":`480px`,"max-width":`90vw`,background:`var(--kobo-surface)`}},{default:l(()=>[u(B,{class:`row items-center q-pb-none`},{default:l(()=>[y(`div`,ge,e(t.$t(`folderPicker.title`)),1),u(G),c(u(D,{flat:``,dense:``,round:``,icon:`close`,color:`kobo-2`},null,512),[[K]])]),_:1}),u(B,null,{default:l(()=>[y(`div`,{class:`text-caption text-kobo-3 ellipsis q-mb-sm`,style:{"font-family":`monospace`},title:d.value},e(d.value||`…`),9,_e),S.value?(i(),f(q,{key:0,dense:``,class:`bg-red-9 text-white q-mb-sm rounded-borders`},{default:l(()=>[m(e(S.value),1)]),_:1})):p(``,!0),u(V,{bordered:``,separator:``,class:`rounded-borders`,style:{"max-height":`320px`,"overflow-y":`auto`}},{default:l(()=>[h.value?c((i(),f(U,{key:0,clickable:``,onClick:r[0]||=e=>C(h.value)},{default:l(()=>[u(W,{avatar:``},{default:l(()=>[u(E,{name:`arrow_upward`,color:`kobo-2`})]),_:1}),u(W,null,{default:l(()=>[m(e(t.$t(`folderPicker.parent`)),1)]),_:1})]),_:1})),[[T]]):p(``,!0),(i(!0),_(v,null,x(g.value,t=>c((i(),f(U,{key:t.path,clickable:``,onClick:e=>C(t.path)},{default:l(()=>[u(W,{avatar:``},{default:l(()=>[u(E,{name:`folder`,color:`amber-6`})]),_:1}),u(W,null,{default:l(()=>[m(e(t.name),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[T]])),128)),!b.value&&g.value.length===0?(i(),f(U,{key:1},{default:l(()=>[u(W,{class:`text-kobo-3`},{default:l(()=>[m(e(t.$t(`folderPicker.empty`)),1)]),_:1})]),_:1})):p(``,!0)]),_:1}),b.value?(i(),_(`div`,ve,[u(O,{size:`20px`,color:`kobo-2`})])):p(``,!0)]),_:1}),u(R,{align:`right`},{default:l(()=>[c(u(D,{flat:``,label:t.$t(`common.cancel`),color:`kobo-2`},null,8,[`label`]),[[K]]),u(D,{flat:``,label:t.$t(`folderPicker.select`),color:`primary`,disable:!d.value||b.value,onClick:ee},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}}),Y=new Map;function be(e){let t=Y.get(e);t&&URL.revokeObjectURL(t),Y.delete(e)}async function xe(e){if(!Y.has(e))try{let t=await I(N(e));if(!t.ok)throw await P(t);let n=URL.createObjectURL(await t.blob());if(Y.has(e)||!fe(e)){URL.revokeObjectURL(n);return}Y.set(e,n),ce(e,n)}catch(e){console.error(`[custom-sounds store] preload failed:`,e)}}var Se=se(`customSounds`,{state:()=>({sounds:[],loaded:!1,busy:!1}),getters:{options:e=>e.sounds.map(e=>({label:e.name,value:e.reference}))},actions:{apply(e){this.sounds=e,F(e.map(e=>e.reference));for(let t of Y.keys())e.some(e=>e.reference===t)||be(t);for(let t of e)xe(t.reference)},async fetchSounds(){if(!this.busy){this.busy=!0;try{this.apply((await L(`/api/sounds`)).sounds),this.loaded=!0}catch(e){console.error(`[custom-sounds store] fetchSounds failed:`,e)}finally{this.busy=!1}}},async uploadSound(e){let t=new FormData;t.append(`sound`,e),this.busy=!0;try{let e=await L(`/api/sounds`,{method:`POST`,body:t});return this.apply([...this.sounds,e]),e}finally{this.busy=!1}},async removeSound(e){this.busy=!0;try{await L(`/api/sounds/${encodeURIComponent(e)}`,{method:`DELETE`})}catch(e){if(!(e instanceof M)||e.status!==404)throw e}finally{this.busy=!1}this.apply(this.sounds.filter(t=>t.id!==e))}}});export{ye as n,J as r,Se as t};
|