@valaxyjs/devtools 0.28.1 → 0.28.3
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/assets/{VDCheckbox-DIkwHeip.js → VDCheckbox-Cc1_70TJ.js} +1 -1
- package/dist/client/assets/{VDInput-6FQF1GB1.js → VDInput-BLj759AK.js} +1 -1
- package/dist/client/assets/VDInput-BtxYqBt3.css +1 -0
- package/dist/client/assets/{VDNumberField-DE-iSRFf.js → VDNumberField-Bsn0V2xE.js} +1 -1
- package/dist/client/assets/{VDPostListItem-Ck7T2w63.js → VDPostListItem-egm1gS7Y.js} +1 -1
- package/dist/client/assets/{VDPostPanel-CwawT8bS.js → VDPostPanel-BDTBCZq2.js} +1 -1
- package/dist/client/assets/VDPostPanel-Bkkd-Lkf.css +1 -0
- package/dist/client/assets/{VDSelect-UHvFCpyn.js → VDSelect-C350Cdu8.js} +1 -1
- package/dist/client/assets/{VDToggleGroup-BcQyHwGa.js → VDToggleGroup-BTYqAtQI.js} +1 -1
- package/dist/client/assets/{archives-Cs5YBNbA.js → archives-Bg693JP-.js} +1 -1
- package/dist/client/assets/batch-edit-BYL9g3v4.css +1 -0
- package/dist/client/assets/{batch-edit-CPpsQiMq.js → batch-edit-DBOApJH8.js} +1 -1
- package/dist/client/assets/{categories-Le9fv5rM.js → categories-7ZWWamtL.js} +1 -1
- package/dist/client/assets/{collections-DXhCCFt9.js → collections-CNsm3YHQ.js} +1 -1
- package/dist/client/assets/{config-DuXyfRJ2.js → config-D_NBQ-hf.js} +1 -1
- package/dist/client/assets/{index-D82QJxg1.js → index-BSCrFaU_.js} +2 -2
- package/dist/client/assets/{index-CaKwgroK.css → index-BtO0uHk3.css} +1 -1
- package/dist/client/assets/pages-Cgda3KEN.js +1 -0
- package/dist/client/assets/{posts-C0Pk3Kwo.css → posts-Dv5XI0j-.css} +1 -1
- package/dist/client/assets/{posts-CfAp665h.js → posts-i-akuXVU.js} +1 -1
- package/dist/client/assets/{settings-aU8HulMX.js → settings-NJkh4MTF.js} +1 -1
- package/dist/client/assets/{tags-DLaHWCJB.js → tags-BpUri6mA.js} +1 -1
- package/dist/client/index.html +2 -2
- package/package.json +3 -3
- package/dist/client/assets/VDInput-D0VAYtEY.css +0 -1
- package/dist/client/assets/VDPostPanel-BbehhYa0.css +0 -1
- package/dist/client/assets/batch-edit-CYvJIq6n.css +0 -1
- package/dist/client/assets/pages-xVEnBBX2.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{B as e,D as t,F as n,G as r,J as i,L as a,M as o,N as s,O as c,R as l,S as u,U as d,Y as f,Z as p,_ as m,_t as h,b as g,bt as _,ft as v,g as y,h as b,ht as x,k as S,l as C,m as w,o as T,ot as E,p as D,s as O,tt as k,v as A,vt as j,x as M,y as N}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{D as P,F,O as I,b as L,c as R,d as z,f as B,h as V,i as ee,m as H,n as U,o as W,p as G,r as te,s as K,t as ne,u as q,y as re}from"./_plugin-vue_export-helper-PWPZAZD9.js";import{a as ie,c as J,d as ae,f as oe,h as Y,i as se,l as ce,o as le,p as ue,s as de,t as fe,u as pe,v as me}from"./VDInput-6FQF1GB1.js";import{t as he}from"./useKbd-CutV7ZdL.js";import{i as ge,n as _e,r as ve,t as ye}from"./VDSelect-UHvFCpyn.js";import{n as be,t as xe}from"./VDCheckbox-DIkwHeip.js";import{t as Se}from"./rpc-1TCVqa5N.js";import{a as X}from"./app-Ciu-q_PC.js";import{u as Ce}from"./index-D82QJxg1.js";import{t as we}from"./VDButton-BSVRcA6y.js";import{n as Te,t as Ee}from"./splitpanes.es-DbWSeMt3.js";import{t as De}from"./i18n-BF5OnflT.js";function Oe(e,t,n){let r=e.findIndex(e=>me(e,t)),i=e.findIndex(e=>me(e,n));if(r===-1||i===-1)return[];let[a,o]=[r,i].sort((e,t)=>e-t);return e.slice(a,o+1)}function ke(e){let t=D(()=>x(e)),n=D(()=>new Intl.Collator(`en`,{usage:`search`,...t.value}));return{startsWith:(e,t)=>t.length===0?!0:(e=e.normalize(`NFC`),t=t.normalize(`NFC`),n.value.compare(e.slice(0,t.length),t)===0),endsWith:(e,t)=>t.length===0?!0:(e=e.normalize(`NFC`),t=t.normalize(`NFC`),n.value.compare(e.slice(-t.length),t)===0),contains:(e,t)=>{if(t.length===0)return!0;e=e.normalize(`NFC`),t=t.normalize(`NFC`);let r=0,i=t.length;for(;r+i<=e.length;r++){let a=e.slice(r,r+i);if(n.value.compare(t,a)===0)return!0}return!1}}}var[Z,Ae]=L(`DialogRoot`),je=g({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1,default:!1},modal:{type:Boolean,required:!1,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=P(n,`open`,t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),i=E(),a=E(),{modal:o}=v(n);return Ae({open:r,modal:o,openModal:()=>{r.value=!0},onOpenChange:e=>{r.value=e},onOpenToggle:()=>{r.value=!r.value},contentId:``,titleId:``,descriptionId:``,triggerElement:i,contentElement:a}),(e,t)=>l(e.$slots,`default`,{open:x(r),close:()=>r.value=!1})}}),Me=g({__name:`DialogClose`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;H();let r=Z();return(e,i)=>(n(),b(x(R),c(t,{type:e.as===`button`?`button`:void 0,onClick:i[0]||=e=>x(r).onOpenChange(!1)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`type`]))}}),Ne=g({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=t,a=Z(),{forwardRef:s,currentElement:u}=H();return a.titleId||=z(void 0,`reka-dialog-title`),a.descriptionId||=z(void 0,`reka-dialog-description`),o(()=>{a.contentElement=u,Y()!==document.body&&(a.triggerElement.value=Y())}),(e,t)=>(n(),b(x(de),{"as-child":``,loop:``,trapped:r.trapFocus,onMountAutoFocus:t[5]||=e=>i(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>i(`closeAutoFocus`,e)},{default:f(()=>[N(x(K),c({id:x(a).contentId,ref:x(s),as:e.as,"as-child":e.asChild,"disable-outside-pointer-events":e.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":x(a).descriptionId,"aria-labelledby":x(a).titleId,"data-state":x(ve)(x(a).open.value)},e.$attrs,{onDismiss:t[0]||=e=>x(a).onOpenChange(!1),onEscapeKeyDown:t[1]||=e=>i(`escapeKeyDown`,e),onFocusOutside:t[2]||=e=>i(`focusOutside`,e),onInteractOutside:t[3]||=e=>i(`interactOutside`,e),onPointerDownOutside:t[4]||=e=>i(`pointerDownOutside`,e)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}}),Pe=g({__name:`DialogContentModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=t,a=Z(),o=V(i),{forwardRef:s,currentElement:u}=H();return ce(u),(e,t)=>(n(),b(Ne,c({...r,...x(o)},{ref:x(s),"trap-focus":x(a).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(e.preventDefault(),x(a).triggerElement.value?.focus())},onPointerDownOutside:t[1]||=e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()},onFocusOutside:t[2]||=e=>{e.preventDefault()}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),Fe=g({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=V(t);H();let a=Z(),o=E(!1),s=E(!1);return(e,t)=>(n(),b(Ne,c({...r,...x(i)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(o.value||x(a).triggerElement.value?.focus(),e.preventDefault()),o.value=!1,s.value=!1},onInteractOutside:t[1]||=e=>{e.defaultPrevented||(o.value=!0,e.detail.originalEvent.type===`pointerdown`&&(s.value=!0));let t=e.target;x(a).triggerElement.value?.contains(t)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&s.value&&e.preventDefault()}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))}}),Ie=g({__name:`DialogContent`,props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=t,a=Z(),o=V(i),{forwardRef:s}=H();return(e,t)=>(n(),b(x(q),{present:e.forceMount||x(a).open.value},{default:f(()=>[x(a).modal.value?(n(),b(Pe,c({key:0,ref:x(s)},{...r,...x(o),...e.$attrs}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16)):(n(),b(Fe,c({key:1,ref:x(s)},{...r,...x(o),...e.$attrs}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Le=g({__name:`DialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;H();let r=Z();return(e,i)=>(n(),b(x(R),c(t,{id:x(r).descriptionId}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`]))}}),Re=g({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=Z();return ue(!0),H(),(e,r)=>(n(),b(x(R),{as:e.as,"as-child":e.asChild,"data-state":x(t).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:f(()=>[l(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),ze=g({__name:`DialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=Z(),{forwardRef:r}=H();return(e,i)=>x(t)?.modal.value?(n(),b(x(q),{key:0,present:e.forceMount||x(t).open.value},{default:f(()=>[N(Re,c(e.$attrs,{ref:x(r),as:e.as,"as-child":e.asChild}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):y(`v-if`,!0)}}),Be=g({__name:`DialogPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,r)=>(n(),b(x(W),j(u(t)),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))}}),Ve=g({__name:`DialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e,r=Z();return H(),(e,i)=>(n(),b(x(R),c(t,{id:x(r).titleId}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`]))}});function He(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>Q(e,t,n)):Q(e,t,n)}function Q(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:me(e,t)}var[Ue,We]=L(`ListboxRoot`),Ge=g({__name:`ListboxRoot`,props:{modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},orientation:{type:String,required:!1,default:`vertical`},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},selectionBehavior:{type:String,required:!1,default:`toggle`},highlightOnHover:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(e,{expose:t,emit:i}){let a=e,o=i,{multiple:s,highlightOnHover:c,orientation:u,disabled:d,selectionBehavior:p,dir:m}=v(a),{getItems:h}=le({isProvider:!0}),{handleTypeaheadSearch:g}=ge(),{primitiveElement:_,currentElement:C}=J(),w=he(),T=oe(m),D=pe(C),O=E(),k=E(!1),A=E(!0),j=P(a,`modelValue`,o,{defaultValue:a.defaultValue??(s.value?[]:void 0),passive:a.modelValue===void 0,deep:!0});function M(e){if(k.value=!0,a.multiple){let t=Array.isArray(j.value)?[...j.value]:[],n=t.findIndex(t=>Q(t,e,a.by));a.selectionBehavior===`toggle`?(n===-1?t.push(e):t.splice(n,1),j.value=t):(j.value=[e],O.value=e)}else a.selectionBehavior===`toggle`&&Q(j.value,e,a.by)?j.value=void 0:j.value=e;setTimeout(()=>{k.value=!1},1)}let N=E(null),F=E(null),L=E(!1),z=E(!1),B=I(),V=I(),ee=I();function H(){return h().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)}function U(e,t=!0){e&&(N.value=e,A.value&&N.value.focus(),t&&N.value.scrollIntoView({block:`nearest`}),o(`highlight`,h().find(t=>t.ref===e)))}function W(e){if(L.value)ee.trigger(e);else{let t=h().find(t=>Q(t.value,e,a.by));t&&(N.value=t.ref,U(t.ref))}}function G(e){N.value&&N.value.isConnected&&(e.preventDefault(),e.stopPropagation(),z.value||N.value.click())}function te(e){if(A.value){if(k.value=!0,L.value)V.trigger(e);else{let t=e.altKey||e.ctrlKey||e.metaKey;if(t&&e.key===`a`&&s.value){let t=h();j.value=[...t.map(e=>e.value)],e.preventDefault(),U(t[t.length-1].ref)}else if(!t){let t=g(e.key,h());t&&U(t)}}setTimeout(()=>{k.value=!1},1)}}function K(){z.value=!0}function ne(){S(()=>{z.value=!1})}function q(){S(()=>{Y(new KeyboardEvent(`keydown`,{key:`PageUp`}))})}function re(e){let t=N.value;t?.isConnected&&(F.value=t),N.value=null,o(`leave`,e)}function ae(e){let t=new CustomEvent(`listbox.entryFocus`,{bubbles:!1,cancelable:!0});if(e.currentTarget?.dispatchEvent(t),o(`entryFocus`,t),!t.defaultPrevented)if(F.value)U(F.value);else{let e=H()?.[0];U(e)}}function Y(e){let t=se(e,u.value,T.value);if(!t)return;let n=H();if(N.value){if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let e=n.indexOf(N.value);n=n.slice(e+1)}ce(e,n[0])}if(n.length){let e=!N.value&&t===`prev`?n.length-1:0;U(n[e])}if(L.value)return V.trigger(e)}function ce(e,t){if(!(L.value||a.selectionBehavior!==`replace`||!s.value||!Array.isArray(j.value))&&!((e.altKey||e.ctrlKey||e.metaKey)&&!e.shiftKey)&&e.shiftKey){let n=h().filter(e=>e.ref.dataset.disabled!==``),r=n.find(e=>e.ref===t)?.value;if(e.key===w.END?r=n[n.length-1].value:e.key===w.HOME&&(r=n[0].value),!r||!O.value)return;j.value=Oe(n.map(e=>e.value),O.value,r)}}async function ue(e){if(await S(),L.value)B.trigger(e);else{let e=H(),t=e.find(e=>e.dataset.state===`checked`);t?U(t):e.length&&U(e[0])}}return r(j,()=>{k.value||S(()=>{ue()})},{immediate:!0,deep:!0}),t({highlightedElement:N,highlightItem:W,highlightFirstItem:q,highlightSelected:ue,getItems:h}),We({modelValue:j,onValueChange:M,multiple:s,orientation:u,dir:T,disabled:d,highlightOnHover:c,highlightedElement:N,isVirtual:L,virtualFocusHook:B,virtualKeydownHook:V,virtualHighlightHook:ee,by:a.by,firstValue:O,selectionBehavior:p,focusable:A,onLeave:re,onEnter:ae,changeHighlight:U,onKeydownEnter:G,onKeydownNavigation:Y,onKeydownTypeAhead:te,onCompositionStart:K,onCompositionEnd:ne,highlightFirstItem:q}),(e,t)=>(n(),b(x(R),{ref_key:`primitiveElement`,ref:_,as:e.as,"as-child":e.asChild,dir:x(T),"data-disabled":x(d)?``:void 0,onPointerleave:re,onFocusout:t[0]||=async e=>{let t=e.relatedTarget||e.target;await S(),N.value&&x(C)&&!x(C).contains(t)&&re(e)}},{default:f(()=>[l(e.$slots,`default`,{modelValue:x(j)}),x(D)&&e.name?(n(),b(x(ie),{key:0,name:e.name,value:x(j),disabled:x(d),required:e.required},null,8,[`name`,`value`,`disabled`,`required`])):y(`v-if`,!0)]),_:3},8,[`as`,`as-child`,`dir`,`data-disabled`]))}}),Ke=g({__name:`ListboxContent`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{CollectionSlot:t}=le(),r=Ue(),i=F(!1,10);return(e,a)=>(n(),b(x(t),null,{default:f(()=>[N(x(R),{role:`listbox`,as:e.as,"as-child":e.asChild,tabindex:x(r).focusable.value?x(r).highlightedElement.value?`-1`:`0`:`-1`,"aria-orientation":x(r).orientation.value,"aria-multiselectable":!!x(r).multiple.value,"data-orientation":x(r).orientation.value,onMousedown:a[0]||=O(e=>i.value=!0,[`left`]),onFocus:a[1]||=e=>{x(i)||x(r).onEnter(e)},onKeydown:[a[2]||=T(e=>{x(r).orientation.value===`vertical`&&(e.key===`ArrowLeft`||e.key===`ArrowRight`)||x(r).orientation.value===`horizontal`&&(e.key===`ArrowUp`||e.key===`ArrowDown`)||(e.preventDefault(),x(r).focusable.value&&x(r).onKeydownNavigation(e))},[`down`,`up`,`left`,`right`,`home`,`end`]),T(x(r).onKeydownEnter,[`enter`]),x(r).onKeydownTypeAhead]},{default:f(()=>[l(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`tabindex`,`aria-orientation`,`aria-multiselectable`,`data-orientation`,`onKeydown`])]),_:3}))}}),qe=g({__name:`ListboxFilter`,props:{modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`input`}},emits:[`update:modelValue`],setup(e,{emit:t}){let r=e,a=P(r,`modelValue`,t,{defaultValue:``,passive:r.modelValue===void 0}),c=Ue(),{primitiveElement:u,currentElement:d}=J(),p=D(()=>r.disabled||c.disabled.value||!1),m=E();return i(()=>m.value=c.highlightedElement.value?.id),o(()=>{c.focusable.value=!1,setTimeout(()=>{r.autoFocus&&d.value?.focus()},1)}),s(()=>{c.focusable.value=!0}),(e,t)=>(n(),b(x(R),{ref_key:`primitiveElement`,ref:u,as:e.as,"as-child":e.asChild,value:x(a),disabled:p.value?``:void 0,"data-disabled":p.value?``:void 0,"aria-disabled":p.value??void 0,"aria-activedescendant":m.value,type:`text`,onKeydown:[T(O(x(c).onKeydownNavigation,[`prevent`]),[`down`,`up`,`home`,`end`]),T(x(c).onKeydownEnter,[`enter`])],onInput:t[0]||=e=>{a.value=e.target.value,x(c).highlightFirstItem()},onCompositionstart:x(c).onCompositionStart,onCompositionend:x(c).onCompositionEnd},{default:f(()=>[l(e.$slots,`default`,{modelValue:x(a)})]),_:3},8,[`as`,`as-child`,`value`,`disabled`,`data-disabled`,`aria-disabled`,`aria-activedescendant`,`onKeydown`,`onCompositionstart`,`onCompositionend`]))}}),Je=`listbox.select`,[Ye,Xe]=L(`ListboxItem`),Ze=g({__name:`ListboxItem`,props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`div`}},emits:[`select`],setup(e,{emit:t}){let r=e,i=t,a=z(void 0,`reka-listbox-item`),{CollectionItem:o}=le(),{forwardRef:s,currentElement:u}=H(),d=Ue(),m=D(()=>u.value===d.highlightedElement.value),h=D(()=>He(d.modelValue.value,r.value,d.by)),g=D(()=>d.disabled.value||r.disabled);async function _(e){i(`select`,e),!e?.defaultPrevented&&!g.value&&e&&(d.onValueChange(r.value),d.changeHighlight(u.value))}function v(e){re(Je,_,{originalEvent:e,value:r.value})}return Xe({isSelected:h}),(e,t)=>(n(),b(x(o),{value:e.value},{default:f(()=>[p([m.value,h.value],()=>N(x(R),c({id:x(a)},e.$attrs,{ref:x(s),role:`option`,tabindex:x(d).focusable.value?m.value?`0`:`-1`:-1,"aria-selected":h.value,as:e.as,"as-child":e.asChild,disabled:g.value?``:void 0,"data-disabled":g.value?``:void 0,"data-highlighted":m.value?``:void 0,"data-state":h.value?`checked`:`unchecked`,onClick:v,onKeydown:T(O(v,[`prevent`]),[`space`]),onPointermove:t[0]||=()=>{x(d).highlightedElement.value!==x(u)&&x(d).highlightOnHover.value&&!x(d).focusable.value&&x(d).changeHighlight(x(u),!1)}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`,`tabindex`,`aria-selected`,`as`,`as-child`,`disabled`,`data-disabled`,`data-highlighted`,`data-state`,`onKeydown`]),t,1)]),_:3},8,[`value`]))}}),[$,Qe]=L(`ComboboxRoot`),$e=g({__name:`ComboboxRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},openOnFocus:{type:Boolean,required:!1,default:!1},openOnClick:{type:Boolean,required:!1,default:!1},ignoreFilter:{type:Boolean,required:!1},resetModelValueOnClear:{type:Boolean,required:!1,default:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},highlightOnHover:{type:Boolean,required:!1,default:!0},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`highlight`,`update:open`],setup(e,{expose:t,emit:r}){let i=e,a=r,{primitiveElement:s,currentElement:u}=J(),{multiple:d,disabled:p,ignoreFilter:m,resetSearchTermOnSelect:h,openOnFocus:g,openOnClick:_,dir:y,resetModelValueOnClear:C,highlightOnHover:w}=v(i),T=oe(y),O=P(i,`modelValue`,a,{defaultValue:i.defaultValue??(d.value?[]:void 0),passive:i.modelValue===void 0,deep:!0}),A=P(i,`open`,a,{defaultValue:i.defaultOpen,passive:i.open===void 0});async function j(e){A.value=e,G.value=``,e?(await S(),s.value?.highlightSelected(),L.value=!0,z.value?.focus()):(L.value=!1,setTimeout(()=>{!e&&i.resetSearchTermOnBlur&&F.trigger()},1))}let F=I(),L=E(!1),R=E(!1),z=E(),B=E(),V=D(()=>s.value?.highlightedElement??void 0),H=E(new Map),U=E(new Map),{contains:W}=ke({sensitivity:`base`}),G=E(``),te=D(e=>{if(!G.value||i.ignoreFilter||R.value)return{count:H.value.size,items:e?.items??new Map,groups:e?.groups??new Set(U.value.keys())};let t=0,n=new Map,r=new Set;for(let[e,r]of H.value){let i=W(r,G.value);n.set(e,i?1:0),i&&t++}for(let[e,t]of U.value)for(let i of t)if(n.get(i)>0){r.add(e);break}return{count:t,items:n,groups:r}}),K=M();return o(()=>{K?.exposed&&(K.exposed.highlightItem=s.value?.highlightItem,K.exposed.highlightFirstItem=s.value?.highlightFirstItem,K.exposed.highlightSelected=s.value?.highlightSelected)}),t({filtered:te,highlightedElement:V,highlightItem:s.value?.highlightItem,highlightFirstItem:s.value?.highlightFirstItem,highlightSelected:s.value?.highlightSelected}),Qe({modelValue:O,multiple:d,disabled:p,open:A,onOpenChange:j,contentId:``,isUserInputted:L,isVirtual:R,inputElement:z,highlightedElement:V,onInputElementChange:e=>z.value=e,triggerElement:B,onTriggerElementChange:e=>B.value=e,parentElement:u,resetSearchTermOnSelect:h,onResetSearchTerm:F.on,allItems:H,allGroups:U,filterSearch:G,filterState:te,ignoreFilter:m,openOnFocus:g,openOnClick:_,resetModelValueOnClear:C}),(e,t)=>(n(),b(x(ee),null,{default:f(()=>[N(x(Ge),c({ref_key:`primitiveElement`,ref:s},e.$attrs,{modelValue:x(O),"onUpdate:modelValue":t[0]||=e=>k(O)?O.value=e:null,style:{pointerEvents:x(A)?`auto`:void 0},as:e.as,"as-child":e.asChild,dir:x(T),multiple:x(d),name:e.name,required:e.required,disabled:x(p),"highlight-on-hover":x(w),by:i.by,onHighlight:t[1]||=e=>a(`highlight`,e)}),{default:f(()=>[l(e.$slots,`default`,{open:x(A),modelValue:x(O)})]),_:3},16,[`modelValue`,`style`,`as`,`as-child`,`dir`,`multiple`,`name`,`required`,`disabled`,`highlight-on-hover`,`by`])]),_:3}))}}),et=g({__name:`ComboboxAnchor`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{forwardRef:t}=H();return(e,r)=>(n(),b(x(te),{"as-child":``,reference:e.reference},{default:f(()=>[N(x(R),c({ref:x(t),"as-child":e.asChild,as:e.as},e.$attrs),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`as-child`,`as`])]),_:3},8,[`reference`]))}}),[tt,nt]=L(`ComboboxContent`),rt=g({__name:`ComboboxContentImpl`,props:{position:{type:String,required:!1,default:`inline`},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(t,{emit:r}){let i=t,a=r,{position:u}=v(i),d=$(),p=D(()=>d.ignoreFilter.value?d.allItems.value.size===0:d.filterState.value.count===0),{forwardRef:m,currentElement:h}=H();ue(i.bodyLock),ae(),ce(d.parentElement);let g=G(D(()=>i.position===`popper`?i:{}).value),_={boxSizing:`border-box`,"--reka-combobox-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-combobox-content-available-width":`var(--reka-popper-available-width)`,"--reka-combobox-content-available-height":`var(--reka-popper-available-height)`,"--reka-combobox-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-combobox-trigger-height":`var(--reka-popper-anchor-height)`};nt({position:u});let y=E(!1);return o(()=>{d.inputElement.value&&(y.value=h.value.contains(d.inputElement.value),y.value&&d.inputElement.value.focus())}),s(()=>{let e=Y();y.value&&(!e||e===document.body)&&d.triggerElement.value?.focus()}),(t,r)=>(n(),b(x(Ke),{"as-child":``},{default:f(()=>[N(x(de),{"as-child":``,onMountAutoFocus:r[5]||=O(()=>{},[`prevent`]),onUnmountAutoFocus:r[6]||=O(()=>{},[`prevent`])},{default:f(()=>[N(x(K),{"as-child":``,"disable-outside-pointer-events":t.disableOutsidePointerEvents,onDismiss:r[0]||=e=>x(d).onOpenChange(!1),onFocusOutside:r[1]||=e=>{x(d).parentElement.value?.contains(e.target)&&e.preventDefault(),a(`focusOutside`,e)},onInteractOutside:r[2]||=e=>a(`interactOutside`,e),onEscapeKeyDown:r[3]||=e=>a(`escapeKeyDown`,e),onPointerDownOutside:r[4]||=e=>{x(d).parentElement.value?.contains(e.target)&&e.preventDefault(),a(`pointerDownOutside`,e)}},{default:f(()=>[(n(),b(e(x(u)===`popper`?x(U):x(R)),c({...t.$attrs,...x(g)},{id:x(d).contentId,ref:x(m),"data-state":x(d).open.value?`open`:`closed`,"data-empty":p.value?``:void 0,style:{display:i.hideWhenEmpty&&p.value?`none`:`flex`,flexDirection:`column`,outline:`none`,...x(u)===`popper`?_:{}}}),{default:f(()=>[l(t.$slots,`default`)]),_:3},16,[`id`,`data-state`,`data-empty`,`style`]))]),_:3},8,[`disable-outside-pointer-events`])]),_:3})]),_:3}))}}),it=g({__name:`ComboboxContent`,props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let r=B(e,t),{forwardRef:i}=H(),a=$();return a.contentId||=z(void 0,`reka-combobox-content`),(e,t)=>(n(),b(x(q),{present:e.forceMount||x(a).open.value},{default:f(()=>[N(rt,c({...x(r),...e.$attrs},{ref:x(i)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),at=g({__name:`ComboboxEmpty`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,r=$(),i=D(()=>r.ignoreFilter.value?r.allItems.value.size===0:r.filterState.value.count===0);return(e,r)=>i.value?(n(),b(x(R),j(c({key:0},t)),{default:f(()=>[l(e.$slots,`default`,{},()=>[r[0]||=A(`No options`)])]),_:3},16)):y(`v-if`,!0)}}),[ot,st]=L(`ComboboxGroup`),ct=g({__name:`ComboboxInput`,props:{displayValue:{type:Function,required:!1},modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`input`}},emits:[`update:modelValue`],setup(e,{emit:t}){let i=e,a=t,s=$(),c=Ue(),{primitiveElement:u,currentElement:d}=J(),p=P(i,`modelValue`,a,{passive:i.modelValue===void 0});o(()=>{d.value&&s.onInputElementChange(d.value)});function m(e){s.open.value||s.onOpenChange(!0)}function h(e){let t=e.target;s.open.value?s.filterSearch.value=t.value:(s.onOpenChange(!0),S(()=>{t.value&&(s.filterSearch.value=t.value,c.highlightFirstItem())}))}function g(){s.openOnFocus.value&&!s.open.value&&s.onOpenChange(!0)}function _(e){if(!s.open.value)return;let t=e.relatedTarget;if(!t)return;let n=s.parentElement.value?.contains(t),r=document.getElementById(s.contentId)?.contains(t);!n&&!r&&s.onOpenChange(!1)}function v(){s.openOnClick.value&&!s.open.value&&s.onOpenChange(!0)}function y(){let e=s.modelValue.value;i.displayValue?p.value=i.displayValue(e):!s.multiple.value&&e&&!Array.isArray(e)?typeof e==`object`?p.value=``:p.value=e.toString():p.value=``,S(()=>{p.value=p.value})}return s.onResetSearchTerm(()=>{y()}),r(s.modelValue,async()=>{!s.isUserInputted.value&&s.resetSearchTermOnSelect.value&&y()},{immediate:!0,deep:!0}),r(s.filterState,(e,t)=>{!s.isVirtual.value&&t.count===0&&c.highlightFirstItem()}),(e,t)=>(n(),b(x(qe),{ref_key:`primitiveElement`,ref:u,modelValue:x(p),"onUpdate:modelValue":t[0]||=e=>k(p)?p.value=e:null,as:e.as,"as-child":e.asChild,"auto-focus":e.autoFocus,disabled:e.disabled,"aria-expanded":x(s).open.value,"aria-controls":x(s).contentId,"aria-autocomplete":`list`,role:`combobox`,autocomplete:`off`,onClick:v,onInput:h,onKeydown:T(O(m,[`prevent`]),[`down`,`up`]),onFocus:g,onBlur:_},{default:f(()=>[l(e.$slots,`default`)]),_:3},8,[`modelValue`,`as`,`as-child`,`auto-focus`,`disabled`,`aria-expanded`,`aria-controls`,`onKeydown`]))}}),lt=g({__name:`ComboboxItem`,props:{textValue:{type:String,required:!1},value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`select`],setup(e,{emit:t}){let r=e,i=t,a=z(void 0,`reka-combobox-item`),u=$(),d=ot(null),{primitiveElement:p,currentElement:m}=J();if(r.value===``)throw Error(`A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.`);let h=D(()=>{if(u.isVirtual.value||u.ignoreFilter.value||!u.filterSearch.value)return!0;{let e=u.filterState.value.items.get(a);return e===void 0?!0:e>0}});return o(()=>{u.allItems.value.set(a,r.textValue||m.value.textContent||m.value.innerText);let e=d?.id;e&&(u.allGroups.value.has(e)?u.allGroups.value.get(e)?.add(a):u.allGroups.value.set(e,new Set([a])))}),s(()=>{u.allItems.value.delete(a)}),(e,t)=>h.value?(n(),b(x(Ze),c({key:0},r,{id:x(a),ref_key:`primitiveElement`,ref:p,disabled:x(u).disabled.value||e.disabled,onSelect:t[0]||=t=>{i(`select`,t),!t.defaultPrevented&&!x(u).multiple.value&&!e.disabled&&!x(u).disabled.value&&(t.preventDefault(),x(u).onOpenChange(!1),x(u).modelValue.value=r.value)}}),{default:f(()=>[l(e.$slots,`default`,{},()=>[A(_(e.value),1)])]),_:3},16,[`id`,`disabled`])):y(`v-if`,!0)}}),ut=g({__name:`ComboboxPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,r)=>(n(),b(x(W),j(u(t)),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))}}),dt=g({__name:`ComboboxTrigger`,props:{disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,{forwardRef:r,currentElement:i}=H(),a=$(),s=D(()=>t.disabled||a.disabled.value||!1);return o(()=>{i.value&&a.onTriggerElementChange(i.value)}),(e,i)=>(n(),b(x(R),c(t,{ref:x(r),type:e.as===`button`?`button`:void 0,tabindex:`-1`,"aria-label":`Show popup`,"aria-haspopup":`listbox`,"aria-expanded":x(a).open.value,"aria-controls":x(a).contentId,"data-state":x(a).open.value?`open`:`closed`,disabled:s.value,"data-disabled":s.value?``:void 0,"aria-disabled":s.value??void 0,onClick:i[0]||=e=>x(a).onOpenChange(!x(a).open.value)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`aria-disabled`]))}}),ft=g({__name:`ComboboxViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:r}=H(),{nonce:i}=v(t),a=_e(i),o=$();return(e,i)=>(n(),m(C,null,[N(x(R),c({...e.$attrs,...t},{ref:x(r),"data-reka-combobox-viewport":``,role:`presentation`,style:{position:`relative`,flex:x(o).isVirtual.value?void 0:1,overflow:`auto`}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`style`]),N(x(R),{as:`style`,nonce:x(a)},{default:f(()=>i[0]||=[A(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-combobox-viewport]::-webkit-scrollbar { display: none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),pt=ne(g({__name:`VDDialog`,props:t({title:{},description:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:[`update:open`],setup(e){let t=d(e,`open`);return(r,i)=>(n(),b(x(je),{open:t.value,"onUpdate:open":i[0]||=e=>t.value=e},{default:f(()=>[N(x(Be),null,{default:f(()=>[N(x(ze),{class:`fixed inset-0 z-50 bg-black/50 animate-overlay-show`}),N(x(Ie),{class:`fixed z-50 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded-lg shadow-xl p-5 w-full max-w-md animate-content-show`},{default:f(()=>[e.title?(n(),b(x(Ve),{key:0,class:`text-base font-semibold text-gray-900 dark:text-gray-100 mb-1`},{default:f(()=>[A(_(e.title),1)]),_:1})):y(``,!0),e.description?(n(),b(x(Le),{key:1,class:`text-sm text-gray-500 dark:text-gray-400 mb-4`},{default:f(()=>[A(_(e.description),1)]),_:1})):y(``,!0),l(r.$slots,`default`,{},void 0,!0),N(x(Me),{class:`absolute top-3 right-3 inline-flex items-center justify-center w-6 h-6 rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer transition-colors`},{default:f(()=>[...i[1]||=[w(`div`,{class:`i-ri:close-line text-sm op-50`},null,-1)]]),_:1})]),_:3})]),_:3})]),_:3},8,[`open`]))}}),[[`__scopeId`,`data-v-75b5af36`]]),mt={class:`font-mono`},ht=ne(g({__name:`VDCombobox`,props:t({options:{},placeholder:{},disabled:{type:Boolean}},{modelValue:{default:``},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=d(e,`modelValue`),i=E(t.value);r(t,e=>{e!==i.value&&(i.value=e)});function o(e){i.value=e,t.value=e}function s(e){return typeof e==`string`?e:t.value}function c(e){t.value=e.target.value}return(t,r)=>(n(),b(x($e),{modelValue:i.value,"onUpdate:modelValue":[r[0]||=e=>i.value=e,o],"reset-search-term-on-blur":!1,"open-on-focus":!0,disabled:e.disabled,class:`relative`},{default:f(()=>[N(x(et),{class:`inline-flex items-center w-full`},{default:f(()=>[N(x(ct),{placeholder:e.placeholder,"display-value":s,class:h([`vd-combobox-input border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 text-gray-700 dark:text-gray-200 rounded-md text-xs px-2 py-1 pr-5 outline-none transition-colors duration-150 w-full`,[e.disabled?`op-50 cursor-not-allowed`:``]]),onInput:c},null,8,[`placeholder`,`class`]),N(x(dt),{class:`absolute right-1 inline-flex items-center justify-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 cursor-pointer`},{default:f(()=>[...r[1]||=[w(`div`,{class:`i-ri:arrow-down-s-line text-xs`},null,-1)]]),_:1})]),_:1}),N(x(ut),null,{default:f(()=>[N(x(it),{class:`z-50 bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded-lg shadow-lg overflow-hidden max-h-48`,position:`popper`,"side-offset":4},{default:f(()=>[N(x(ft),{class:`p-1`},{default:f(()=>[N(x(at),{class:`px-2 py-1.5 text-xs op-40`},{default:f(()=>[...r[2]||=[A(` No matching keys `,-1)]]),_:1}),(n(!0),m(C,null,a(e.options,e=>(n(),b(x(lt),{key:e,value:e,class:`flex items-center px-2 py-1.5 text-xs rounded cursor-pointer outline-none text-gray-700 dark:text-gray-200 data-[highlighted]:bg-indigo-50 dark:data-[highlighted]:bg-indigo-900/30 data-[highlighted]:text-indigo-600 dark:data-[highlighted]:text-indigo-400`},{default:f(()=>[w(`span`,mt,_(e),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,[`modelValue`,`disabled`]))}}),[[`__scopeId`,`data-v-82bced6a`]]),gt={class:`h-full flex flex-col`},_t={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},vt={class:`text-sm font-bold flex-1`},yt={class:`text-xs op-50 tabular-nums`},bt={key:0,class:`flex-1 overflow-auto`,flex:`~ col gap-0`},xt=[`onClick`],St={class:`truncate text-xs`},Ct={key:1,class:`flex-1 flex items-center justify-center op-40 text-sm`},wt={class:`h-full overflow-auto p-4 flex flex-col gap-4`},Tt={class:`flex items-center gap-2 mb-2`},Et={class:`text-sm font-bold`},Dt={class:`text-xs op-40`},Ot={class:`border border-gray-200 rounded-lg dark:border-gray-700 divide-y divide-gray-100 dark:divide-gray-800`},kt={class:`text-xs op-30 w-4 text-right tabular-nums`},At={key:2,class:`flex-1`},jt=[`onClick`],Mt={class:`flex items-center gap-3`},Nt={key:0,class:`text-xs op-50`},Pt={class:`flex gap-2 justify-end mt-4`},Ft={key:1,class:`flex-1 min-h-0`},It={key:0,class:`text-sm font-bold mb-2 op-70`},Lt={key:1,class:`text-sm font-bold mb-2 op-70`},Rt={class:`overflow-auto border border-gray-200 rounded-lg dark:border-gray-700 max-h-[calc(100vh-24rem)]`},zt={key:0,class:`text-xs w-full border-collapse`},Bt={class:`bg-gray-50 dark:bg-gray-800/80`},Vt={class:`border-b border-r border-gray-200 px-2 py-1.5 dark:border-gray-700 sticky left-0 bg-gray-50 dark:bg-gray-800/80 z-1 text-left font-semibold`},Ht={class:`border-b border-r border-gray-200 px-2 py-1 dark:border-gray-700 sticky left-0 bg-white dark:bg-gray-900 z-1 font-medium whitespace-nowrap`},Ut={key:1,class:`text-xs w-full border-collapse`},Wt={class:`bg-gray-50 dark:bg-gray-800/80`},Gt={class:`border-b border-r border-gray-200 px-2 py-1.5 dark:border-gray-700 sticky left-0 bg-gray-50 dark:bg-gray-800/80 z-1 text-left font-semibold`},Kt={class:`border-b border-r border-gray-200 px-2 py-1 dark:border-gray-700 sticky left-0 bg-white dark:bg-gray-900 z-1 font-medium whitespace-nowrap`},qt={key:2,class:`flex-1 flex flex-col items-center justify-center gap-2 op-35`},Jt={class:`text-sm`},Yt=g({__name:`batch-edit`,setup(e){let{t,locale:r}=Ce(),i=E([]),o=D(()=>X.value.posts.length>0&&i.value.length===X.value.posts.length);function s(){o.value?i.value=[]:i.value=X.value.posts.map(e=>e.filePath)}function c(e){return i.value.includes(e)}function l(e){let t=i.value.indexOf(e);t>=0?i.value.splice(t,1):i.value.push(e)}let u=E([{type:`set`,key:``,value:``,newKey:``}]),d=D(()=>[{label:t(`batchEdit.op_set`),value:`set`},{label:t(`batchEdit.op_delete`),value:`delete`},{label:t(`batchEdit.op_rename`),value:`rename`}]);function p(){u.value.push({type:`set`,key:``,value:``,newKey:``})}function g(e){u.value.splice(e,1)}let v=D(()=>{let e=new Set;for(let t of X.value.posts)for(let n of Object.keys(t.frontmatter))e.add(n);return Array.from(e).sort()}),S=D(()=>{let e=new Set,t=new Set(i.value);for(let n of X.value.posts)if(t.has(n.filePath))for(let t of Object.keys(n.frontmatter))e.add(t);for(let t of u.value)t.key&&e.add(t.key),t.type===`rename`&&t.newKey&&e.add(t.newKey);return Array.from(e).sort()}),T=E(!1),O=D(()=>{let e=new Set(i.value);return X.value.posts.filter(t=>e.has(t.filePath)).map(e=>{let t={...e.frontmatter};for(let e of u.value)if(e.key)switch(e.type){case`set`:t[e.key]=k(e.value);break;case`delete`:delete t[e.key];break;case`rename`:e.key in t&&e.newKey&&(t[e.newKey]=t[e.key],delete t[e.key]);break}return{title:B(e),filePath:e.filePath,frontmatter:t}})});function k(e){if(e===`true`)return!0;if(e===`false`)return!1;let t=Number(e);return!Number.isNaN(t)&&e.trim()!==``?t:e}let j=E(!1),M=E(!1),P=E(null),F=D(()=>u.value.filter(e=>!(!e.key.trim()||e.type===`rename`&&!e.newKey.trim()))),I=D(()=>F.value.length>0&&i.value.length>0);function L(){I.value&&(M.value=!0)}async function R(){M.value=!1;let e=F.value.map(e=>({type:e.type,key:e.key.trim(),value:e.type===`set`?k(e.value):void 0,newKey:e.type===`rename`?e.newKey.trim():void 0}));j.value=!0,P.value=null;try{let n=await Se.batchUpdateFrontmatter(i.value,e);n.errors.length>0?P.value={severity:`error`,text:t(`batchEdit.result_partial`,{updated:n.updated,total:n.total,errors:n.errors.length})}:P.value={severity:`success`,text:t(`batchEdit.result_success`,{updated:n.updated,total:n.total})},X.value=await Se.getPostList()}catch(e){P.value={severity:`error`,text:e.message||String(e)}}finally{j.value=!1}}function z(e){if(e==null)return``;if(typeof e==`object`&&e&&!Array.isArray(e)){let t=De(e,r.value);return typeof t==`string`&&t?t:JSON.stringify(e)}return typeof e==`object`?JSON.stringify(e):String(e)}function B(e){let t=e.frontmatter.title;return t?typeof t==`object`?De(t,r.value):String(t):e.routePath||``}function V(e,t){return z(e.frontmatter[t])}return(e,r)=>{let E=we,D=xe,k=ye,ee=ht,H=fe,U=pt,W=be;return n(),b(x(Ee),{class:`h-full`},{default:f(()=>[N(x(Te),{"min-size":`20`,size:`30`},{default:f(()=>[w(`div`,gt,[w(`div`,_t,[w(`h3`,vt,_(x(t)(`batchEdit.select_posts`)),1),w(`span`,yt,_(i.value.length)+`/`+_(x(X).posts.length),1),N(E,{variant:`ghost`,size:`sm`,onClick:s},{default:f(()=>[A(_(o.value?x(t)(`batchEdit.deselect_all`):x(t)(`batchEdit.select_all`)),1)]),_:1})]),x(X).posts.length>0?(n(),m(`ul`,bt,[(n(!0),m(C,null,a(x(X).posts,e=>(n(),m(`li`,{key:e.filePath,class:h([`flex items-center gap-2 text-sm cursor-pointer px-3 py-1.5 border-b border-gray-50 dark:border-gray-800/50 transition-colors`,c(e.filePath)?`bg-blue-50/50 dark:bg-blue-900/10`:`hover:bg-gray-50 dark:hover:bg-gray-800/50`]),onClick:t=>l(e.filePath)},[N(D,{"model-value":c(e.filePath),class:`pointer-events-none`},null,8,[`model-value`]),w(`span`,St,_(B(e)),1)],10,xt))),128))])):(n(),m(`div`,Ct,_(x(t)(`batchEdit.no_posts`)),1))])]),_:1}),N(x(Te),null,{default:f(()=>[w(`div`,wt,[w(`section`,null,[w(`div`,Tt,[w(`h3`,Et,_(x(t)(`batchEdit.operations`)),1),w(`span`,Dt,_(u.value.length),1)]),w(`div`,Ot,[(n(!0),m(C,null,a(u.value,(e,i)=>(n(),m(`div`,{key:i,class:`flex gap-2 items-center px-3 py-2`},[w(`span`,kt,_(i+1),1),N(k,{modelValue:e.type,"onUpdate:modelValue":t=>e.type=t,options:d.value,class:`w-28`},null,8,[`modelValue`,`onUpdate:modelValue`,`options`]),N(ee,{modelValue:e.key,"onUpdate:modelValue":t=>e.key=t,options:v.value,placeholder:x(t)(`batchEdit.field_key`),class:`w-32`},null,8,[`modelValue`,`onUpdate:modelValue`,`options`,`placeholder`]),e.type===`set`?(n(),m(C,{key:0},[r[3]||=w(`span`,{class:`text-xs op-40 font-mono`},`=`,-1),N(H,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:x(t)(`batchEdit.field_value`),size:`sm`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])],64)):e.type===`rename`?(n(),m(C,{key:1},[r[4]||=w(`span`,{class:`text-xs op-40 font-mono`},`→`,-1),N(H,{modelValue:e.newKey,"onUpdate:modelValue":t=>e.newKey=t,placeholder:x(t)(`batchEdit.new_key`),size:`sm`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])],64)):(n(),m(`div`,At)),u.value.length>1?(n(),m(`button`,{key:3,class:`inline-flex items-center justify-center w-7 h-7 rounded op-40 hover:op-100 hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer transition-colors`,onClick:e=>g(i)},[...r[5]||=[w(`div`,{class:`i-ri:close-line text-sm`},null,-1)]],8,jt)):y(``,!0)]))),128))]),N(E,{variant:`ghost`,icon:`i-ri:add-line`,size:`sm`,class:`mt-1.5`,onClick:p},{default:f(()=>[A(_(x(t)(`batchEdit.add_operation`)),1)]),_:1})]),w(`section`,Mt,[N(E,{variant:`warn`,loading:j.value,disabled:!I.value,icon:`i-ri:check-line`,size:`sm`,onClick:L},{default:f(()=>[A(_(x(t)(`batchEdit.execute`)),1)]),_:1},8,[`loading`,`disabled`]),N(E,{variant:`secondary`,disabled:i.value.length===0,size:`sm`,icon:T.value?`i-ri:eye-off-line`:`i-ri:eye-line`,onClick:r[0]||=e=>T.value=!T.value},{default:f(()=>[A(_(T.value?x(t)(`batchEdit.hide_preview`):x(t)(`batchEdit.show_preview`)),1)]),_:1},8,[`disabled`,`icon`]),I.value?(n(),m(`span`,Nt,_(x(t)(`batchEdit.summary`,{ops:F.value.length,posts:i.value.length})),1)):y(``,!0)]),N(U,{open:M.value,"onUpdate:open":r[2]||=e=>M.value=e,title:x(t)(`batchEdit.execute`),description:x(t)(`batchEdit.confirm`,{ops:F.value.length,posts:i.value.length})},{default:f(()=>[w(`div`,Pt,[N(E,{variant:`secondary`,size:`sm`,onClick:r[1]||=e=>M.value=!1},{default:f(()=>[A(_(x(t)(`batchEdit.confirm_no`)),1)]),_:1}),N(E,{variant:`warn`,size:`sm`,onClick:R},{default:f(()=>[A(_(x(t)(`batchEdit.confirm_yes`)),1)]),_:1})])]),_:1},8,[`open`,`title`,`description`]),P.value?(n(),b(W,{key:0,severity:P.value.severity,closable:``},{default:f(()=>[A(_(P.value.text),1)]),_:1},8,[`severity`])):y(``,!0),i.value.length>0?(n(),m(`section`,Ft,[T.value?(n(),m(`h3`,Lt,_(x(t)(`batchEdit.show_preview`)),1)):(n(),m(`h3`,It,_(x(t)(`batchEdit.current_frontmatter`)),1)),w(`div`,Rt,[T.value?(n(),m(`table`,zt,[w(`thead`,null,[w(`tr`,Bt,[w(`th`,Vt,_(x(t)(`batchEdit.post_title`)),1),(n(!0),m(C,null,a(S.value,e=>(n(),m(`th`,{key:e,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1.5 dark:border-gray-700 whitespace-nowrap text-left font-semibold`},_(e),1))),128))])]),w(`tbody`,null,[(n(!0),m(C,null,a(O.value,e=>(n(),m(`tr`,{key:e.filePath,class:`hover:bg-gray-50/50 dark:hover:bg-gray-800/30 transition-colors`},[w(`td`,Ht,_(e.title),1),(n(!0),m(C,null,a(S.value,t=>(n(),m(`td`,{key:t,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1 dark:border-gray-700 max-w-40 truncate font-mono`},_(z(e.frontmatter[t])),1))),128))]))),128))])])):(n(),m(`table`,Ut,[w(`thead`,null,[w(`tr`,Wt,[w(`th`,Gt,_(x(t)(`batchEdit.post_title`)),1),(n(!0),m(C,null,a(S.value,e=>(n(),m(`th`,{key:e,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1.5 dark:border-gray-700 whitespace-nowrap text-left font-semibold`},_(e),1))),128))])]),w(`tbody`,null,[(n(!0),m(C,null,a(x(X).posts.filter(e=>i.value.includes(e.filePath)),e=>(n(),m(`tr`,{key:e.filePath,class:`hover:bg-gray-50/50 dark:hover:bg-gray-800/30 transition-colors`},[w(`td`,Kt,_(B(e)),1),(n(!0),m(C,null,a(S.value,t=>(n(),m(`td`,{key:t,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1 dark:border-gray-700 max-w-40 truncate font-mono`},_(V(e,t)),1))),128))]))),128))])]))])])):(n(),m(`div`,qt,[r[6]||=w(`div`,{class:`i-ri:file-list-3-line text-3xl`},null,-1),w(`span`,Jt,_(x(t)(`batchEdit.empty_hint`)),1)]))])]),_:1})]),_:1})}}});export{Yt as default};
|
|
1
|
+
import{B as e,D as t,F as n,G as r,J as i,L as a,M as o,N as s,O as c,R as l,S as u,U as d,Y as f,Z as p,_ as m,_t as h,b as g,bt as _,ft as v,g as y,h as b,ht as x,k as S,l as C,m as w,o as T,ot as E,p as D,s as O,tt as k,v as A,vt as j,x as M,y as N}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{D as P,F,O as I,b as L,c as R,d as z,f as B,h as V,i as ee,m as H,n as U,o as W,p as G,r as te,s as K,t as ne,u as q,y as re}from"./_plugin-vue_export-helper-PWPZAZD9.js";import{a as ie,c as J,d as ae,f as oe,h as Y,i as se,l as ce,o as le,p as ue,s as de,t as fe,u as pe,v as me}from"./VDInput-BLj759AK.js";import{t as he}from"./useKbd-CutV7ZdL.js";import{i as ge,n as _e,r as ve,t as ye}from"./VDSelect-C350Cdu8.js";import{n as be,t as xe}from"./VDCheckbox-Cc1_70TJ.js";import{t as Se}from"./rpc-1TCVqa5N.js";import{a as X}from"./app-Ciu-q_PC.js";import{u as Ce}from"./index-BSCrFaU_.js";import{t as we}from"./VDButton-BSVRcA6y.js";import{n as Te,t as Ee}from"./splitpanes.es-DbWSeMt3.js";import{t as De}from"./i18n-BF5OnflT.js";function Oe(e,t,n){let r=e.findIndex(e=>me(e,t)),i=e.findIndex(e=>me(e,n));if(r===-1||i===-1)return[];let[a,o]=[r,i].sort((e,t)=>e-t);return e.slice(a,o+1)}function ke(e){let t=D(()=>x(e)),n=D(()=>new Intl.Collator(`en`,{usage:`search`,...t.value}));return{startsWith:(e,t)=>t.length===0?!0:(e=e.normalize(`NFC`),t=t.normalize(`NFC`),n.value.compare(e.slice(0,t.length),t)===0),endsWith:(e,t)=>t.length===0?!0:(e=e.normalize(`NFC`),t=t.normalize(`NFC`),n.value.compare(e.slice(-t.length),t)===0),contains:(e,t)=>{if(t.length===0)return!0;e=e.normalize(`NFC`),t=t.normalize(`NFC`);let r=0,i=t.length;for(;r+i<=e.length;r++){let a=e.slice(r,r+i);if(n.value.compare(t,a)===0)return!0}return!1}}}var[Z,Ae]=L(`DialogRoot`),je=g({inheritAttrs:!1,__name:`DialogRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1,default:!1},modal:{type:Boolean,required:!1,default:!0}},emits:[`update:open`],setup(e,{emit:t}){let n=e,r=P(n,`open`,t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),i=E(),a=E(),{modal:o}=v(n);return Ae({open:r,modal:o,openModal:()=>{r.value=!0},onOpenChange:e=>{r.value=e},onOpenToggle:()=>{r.value=!r.value},contentId:``,titleId:``,descriptionId:``,triggerElement:i,contentElement:a}),(e,t)=>l(e.$slots,`default`,{open:x(r),close:()=>r.value=!1})}}),Me=g({__name:`DialogClose`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;H();let r=Z();return(e,i)=>(n(),b(x(R),c(t,{type:e.as===`button`?`button`:void 0,onClick:i[0]||=e=>x(r).onOpenChange(!1)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`type`]))}}),Ne=g({__name:`DialogContentImpl`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=t,a=Z(),{forwardRef:s,currentElement:u}=H();return a.titleId||=z(void 0,`reka-dialog-title`),a.descriptionId||=z(void 0,`reka-dialog-description`),o(()=>{a.contentElement=u,Y()!==document.body&&(a.triggerElement.value=Y())}),(e,t)=>(n(),b(x(de),{"as-child":``,loop:``,trapped:r.trapFocus,onMountAutoFocus:t[5]||=e=>i(`openAutoFocus`,e),onUnmountAutoFocus:t[6]||=e=>i(`closeAutoFocus`,e)},{default:f(()=>[N(x(K),c({id:x(a).contentId,ref:x(s),as:e.as,"as-child":e.asChild,"disable-outside-pointer-events":e.disableOutsidePointerEvents,role:`dialog`,"aria-describedby":x(a).descriptionId,"aria-labelledby":x(a).titleId,"data-state":x(ve)(x(a).open.value)},e.$attrs,{onDismiss:t[0]||=e=>x(a).onOpenChange(!1),onEscapeKeyDown:t[1]||=e=>i(`escapeKeyDown`,e),onFocusOutside:t[2]||=e=>i(`focusOutside`,e),onInteractOutside:t[3]||=e=>i(`interactOutside`,e),onPointerDownOutside:t[4]||=e=>i(`pointerDownOutside`,e)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`,`as`,`as-child`,`disable-outside-pointer-events`,`aria-describedby`,`aria-labelledby`,`data-state`])]),_:3},8,[`trapped`]))}}),Pe=g({__name:`DialogContentModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=t,a=Z(),o=V(i),{forwardRef:s,currentElement:u}=H();return ce(u),(e,t)=>(n(),b(Ne,c({...r,...x(o)},{ref:x(s),"trap-focus":x(a).open.value,"disable-outside-pointer-events":!0,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(e.preventDefault(),x(a).triggerElement.value?.focus())},onPointerDownOutside:t[1]||=e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;(t.button===2||n)&&e.preventDefault()},onFocusOutside:t[2]||=e=>{e.preventDefault()}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`trap-focus`]))}}),Fe=g({__name:`DialogContentNonModal`,props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=V(t);H();let a=Z(),o=E(!1),s=E(!1);return(e,t)=>(n(),b(Ne,c({...r,...x(i)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:t[0]||=e=>{e.defaultPrevented||(o.value||x(a).triggerElement.value?.focus(),e.preventDefault()),o.value=!1,s.value=!1},onInteractOutside:t[1]||=e=>{e.defaultPrevented||(o.value=!0,e.detail.originalEvent.type===`pointerdown`&&(s.value=!0));let t=e.target;x(a).triggerElement.value?.contains(t)&&e.preventDefault(),e.detail.originalEvent.type===`focusin`&&s.value&&e.preventDefault()}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))}}),Ie=g({__name:`DialogContent`,props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(e,{emit:t}){let r=e,i=t,a=Z(),o=V(i),{forwardRef:s}=H();return(e,t)=>(n(),b(x(q),{present:e.forceMount||x(a).open.value},{default:f(()=>[x(a).modal.value?(n(),b(Pe,c({key:0,ref:x(s)},{...r,...x(o),...e.$attrs}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16)):(n(),b(Fe,c({key:1,ref:x(s)},{...r,...x(o),...e.$attrs}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))]),_:3},8,[`present`]))}}),Le=g({__name:`DialogDescription`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`p`}},setup(e){let t=e;H();let r=Z();return(e,i)=>(n(),b(x(R),c(t,{id:x(r).descriptionId}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`]))}}),Re=g({__name:`DialogOverlayImpl`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=Z();return ue(!0),H(),(e,r)=>(n(),b(x(R),{as:e.as,"as-child":e.asChild,"data-state":x(t).open.value?`open`:`closed`,style:{"pointer-events":`auto`}},{default:f(()=>[l(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`data-state`]))}}),ze=g({__name:`DialogOverlay`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=Z(),{forwardRef:r}=H();return(e,i)=>x(t)?.modal.value?(n(),b(x(q),{key:0,present:e.forceMount||x(t).open.value},{default:f(()=>[N(Re,c(e.$attrs,{ref:x(r),as:e.as,"as-child":e.asChild}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`as`,`as-child`])]),_:3},8,[`present`])):y(`v-if`,!0)}}),Be=g({__name:`DialogPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,r)=>(n(),b(x(W),j(u(t)),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))}}),Ve=g({__name:`DialogTitle`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`h2`}},setup(e){let t=e,r=Z();return H(),(e,i)=>(n(),b(x(R),c(t,{id:x(r).titleId}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`]))}});function He(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>Q(e,t,n)):Q(e,t,n)}function Q(e,t,n){return e===void 0||t===void 0?!1:typeof e==`string`?e===t:typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]===t?.[n]:me(e,t)}var[Ue,We]=L(`ListboxRoot`),Ge=g({__name:`ListboxRoot`,props:{modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},orientation:{type:String,required:!1,default:`vertical`},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},selectionBehavior:{type:String,required:!1,default:`toggle`},highlightOnHover:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`highlight`,`entryFocus`,`leave`],setup(e,{expose:t,emit:i}){let a=e,o=i,{multiple:s,highlightOnHover:c,orientation:u,disabled:d,selectionBehavior:p,dir:m}=v(a),{getItems:h}=le({isProvider:!0}),{handleTypeaheadSearch:g}=ge(),{primitiveElement:_,currentElement:C}=J(),w=he(),T=oe(m),D=pe(C),O=E(),k=E(!1),A=E(!0),j=P(a,`modelValue`,o,{defaultValue:a.defaultValue??(s.value?[]:void 0),passive:a.modelValue===void 0,deep:!0});function M(e){if(k.value=!0,a.multiple){let t=Array.isArray(j.value)?[...j.value]:[],n=t.findIndex(t=>Q(t,e,a.by));a.selectionBehavior===`toggle`?(n===-1?t.push(e):t.splice(n,1),j.value=t):(j.value=[e],O.value=e)}else a.selectionBehavior===`toggle`&&Q(j.value,e,a.by)?j.value=void 0:j.value=e;setTimeout(()=>{k.value=!1},1)}let N=E(null),F=E(null),L=E(!1),z=E(!1),B=I(),V=I(),ee=I();function H(){return h().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)}function U(e,t=!0){e&&(N.value=e,A.value&&N.value.focus(),t&&N.value.scrollIntoView({block:`nearest`}),o(`highlight`,h().find(t=>t.ref===e)))}function W(e){if(L.value)ee.trigger(e);else{let t=h().find(t=>Q(t.value,e,a.by));t&&(N.value=t.ref,U(t.ref))}}function G(e){N.value&&N.value.isConnected&&(e.preventDefault(),e.stopPropagation(),z.value||N.value.click())}function te(e){if(A.value){if(k.value=!0,L.value)V.trigger(e);else{let t=e.altKey||e.ctrlKey||e.metaKey;if(t&&e.key===`a`&&s.value){let t=h();j.value=[...t.map(e=>e.value)],e.preventDefault(),U(t[t.length-1].ref)}else if(!t){let t=g(e.key,h());t&&U(t)}}setTimeout(()=>{k.value=!1},1)}}function K(){z.value=!0}function ne(){S(()=>{z.value=!1})}function q(){S(()=>{Y(new KeyboardEvent(`keydown`,{key:`PageUp`}))})}function re(e){let t=N.value;t?.isConnected&&(F.value=t),N.value=null,o(`leave`,e)}function ae(e){let t=new CustomEvent(`listbox.entryFocus`,{bubbles:!1,cancelable:!0});if(e.currentTarget?.dispatchEvent(t),o(`entryFocus`,t),!t.defaultPrevented)if(F.value)U(F.value);else{let e=H()?.[0];U(e)}}function Y(e){let t=se(e,u.value,T.value);if(!t)return;let n=H();if(N.value){if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let e=n.indexOf(N.value);n=n.slice(e+1)}ce(e,n[0])}if(n.length){let e=!N.value&&t===`prev`?n.length-1:0;U(n[e])}if(L.value)return V.trigger(e)}function ce(e,t){if(!(L.value||a.selectionBehavior!==`replace`||!s.value||!Array.isArray(j.value))&&!((e.altKey||e.ctrlKey||e.metaKey)&&!e.shiftKey)&&e.shiftKey){let n=h().filter(e=>e.ref.dataset.disabled!==``),r=n.find(e=>e.ref===t)?.value;if(e.key===w.END?r=n[n.length-1].value:e.key===w.HOME&&(r=n[0].value),!r||!O.value)return;j.value=Oe(n.map(e=>e.value),O.value,r)}}async function ue(e){if(await S(),L.value)B.trigger(e);else{let e=H(),t=e.find(e=>e.dataset.state===`checked`);t?U(t):e.length&&U(e[0])}}return r(j,()=>{k.value||S(()=>{ue()})},{immediate:!0,deep:!0}),t({highlightedElement:N,highlightItem:W,highlightFirstItem:q,highlightSelected:ue,getItems:h}),We({modelValue:j,onValueChange:M,multiple:s,orientation:u,dir:T,disabled:d,highlightOnHover:c,highlightedElement:N,isVirtual:L,virtualFocusHook:B,virtualKeydownHook:V,virtualHighlightHook:ee,by:a.by,firstValue:O,selectionBehavior:p,focusable:A,onLeave:re,onEnter:ae,changeHighlight:U,onKeydownEnter:G,onKeydownNavigation:Y,onKeydownTypeAhead:te,onCompositionStart:K,onCompositionEnd:ne,highlightFirstItem:q}),(e,t)=>(n(),b(x(R),{ref_key:`primitiveElement`,ref:_,as:e.as,"as-child":e.asChild,dir:x(T),"data-disabled":x(d)?``:void 0,onPointerleave:re,onFocusout:t[0]||=async e=>{let t=e.relatedTarget||e.target;await S(),N.value&&x(C)&&!x(C).contains(t)&&re(e)}},{default:f(()=>[l(e.$slots,`default`,{modelValue:x(j)}),x(D)&&e.name?(n(),b(x(ie),{key:0,name:e.name,value:x(j),disabled:x(d),required:e.required},null,8,[`name`,`value`,`disabled`,`required`])):y(`v-if`,!0)]),_:3},8,[`as`,`as-child`,`dir`,`data-disabled`]))}}),Ke=g({__name:`ListboxContent`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{CollectionSlot:t}=le(),r=Ue(),i=F(!1,10);return(e,a)=>(n(),b(x(t),null,{default:f(()=>[N(x(R),{role:`listbox`,as:e.as,"as-child":e.asChild,tabindex:x(r).focusable.value?x(r).highlightedElement.value?`-1`:`0`:`-1`,"aria-orientation":x(r).orientation.value,"aria-multiselectable":!!x(r).multiple.value,"data-orientation":x(r).orientation.value,onMousedown:a[0]||=O(e=>i.value=!0,[`left`]),onFocus:a[1]||=e=>{x(i)||x(r).onEnter(e)},onKeydown:[a[2]||=T(e=>{x(r).orientation.value===`vertical`&&(e.key===`ArrowLeft`||e.key===`ArrowRight`)||x(r).orientation.value===`horizontal`&&(e.key===`ArrowUp`||e.key===`ArrowDown`)||(e.preventDefault(),x(r).focusable.value&&x(r).onKeydownNavigation(e))},[`down`,`up`,`left`,`right`,`home`,`end`]),T(x(r).onKeydownEnter,[`enter`]),x(r).onKeydownTypeAhead]},{default:f(()=>[l(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`tabindex`,`aria-orientation`,`aria-multiselectable`,`data-orientation`,`onKeydown`])]),_:3}))}}),qe=g({__name:`ListboxFilter`,props:{modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`input`}},emits:[`update:modelValue`],setup(e,{emit:t}){let r=e,a=P(r,`modelValue`,t,{defaultValue:``,passive:r.modelValue===void 0}),c=Ue(),{primitiveElement:u,currentElement:d}=J(),p=D(()=>r.disabled||c.disabled.value||!1),m=E();return i(()=>m.value=c.highlightedElement.value?.id),o(()=>{c.focusable.value=!1,setTimeout(()=>{r.autoFocus&&d.value?.focus()},1)}),s(()=>{c.focusable.value=!0}),(e,t)=>(n(),b(x(R),{ref_key:`primitiveElement`,ref:u,as:e.as,"as-child":e.asChild,value:x(a),disabled:p.value?``:void 0,"data-disabled":p.value?``:void 0,"aria-disabled":p.value??void 0,"aria-activedescendant":m.value,type:`text`,onKeydown:[T(O(x(c).onKeydownNavigation,[`prevent`]),[`down`,`up`,`home`,`end`]),T(x(c).onKeydownEnter,[`enter`])],onInput:t[0]||=e=>{a.value=e.target.value,x(c).highlightFirstItem()},onCompositionstart:x(c).onCompositionStart,onCompositionend:x(c).onCompositionEnd},{default:f(()=>[l(e.$slots,`default`,{modelValue:x(a)})]),_:3},8,[`as`,`as-child`,`value`,`disabled`,`data-disabled`,`aria-disabled`,`aria-activedescendant`,`onKeydown`,`onCompositionstart`,`onCompositionend`]))}}),Je=`listbox.select`,[Ye,Xe]=L(`ListboxItem`),Ze=g({__name:`ListboxItem`,props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`div`}},emits:[`select`],setup(e,{emit:t}){let r=e,i=t,a=z(void 0,`reka-listbox-item`),{CollectionItem:o}=le(),{forwardRef:s,currentElement:u}=H(),d=Ue(),m=D(()=>u.value===d.highlightedElement.value),h=D(()=>He(d.modelValue.value,r.value,d.by)),g=D(()=>d.disabled.value||r.disabled);async function _(e){i(`select`,e),!e?.defaultPrevented&&!g.value&&e&&(d.onValueChange(r.value),d.changeHighlight(u.value))}function v(e){re(Je,_,{originalEvent:e,value:r.value})}return Xe({isSelected:h}),(e,t)=>(n(),b(x(o),{value:e.value},{default:f(()=>[p([m.value,h.value],()=>N(x(R),c({id:x(a)},e.$attrs,{ref:x(s),role:`option`,tabindex:x(d).focusable.value?m.value?`0`:`-1`:-1,"aria-selected":h.value,as:e.as,"as-child":e.asChild,disabled:g.value?``:void 0,"data-disabled":g.value?``:void 0,"data-highlighted":m.value?``:void 0,"data-state":h.value?`checked`:`unchecked`,onClick:v,onKeydown:T(O(v,[`prevent`]),[`space`]),onPointermove:t[0]||=()=>{x(d).highlightedElement.value!==x(u)&&x(d).highlightOnHover.value&&!x(d).focusable.value&&x(d).changeHighlight(x(u),!1)}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`id`,`tabindex`,`aria-selected`,`as`,`as-child`,`disabled`,`data-disabled`,`data-highlighted`,`data-state`,`onKeydown`]),t,1)]),_:3},8,[`value`]))}}),[$,Qe]=L(`ComboboxRoot`),$e=g({__name:`ComboboxRoot`,props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},openOnFocus:{type:Boolean,required:!1,default:!1},openOnClick:{type:Boolean,required:!1,default:!1},ignoreFilter:{type:Boolean,required:!1},resetModelValueOnClear:{type:Boolean,required:!1,default:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},highlightOnHover:{type:Boolean,required:!1,default:!0},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:[`update:modelValue`,`highlight`,`update:open`],setup(e,{expose:t,emit:r}){let i=e,a=r,{primitiveElement:s,currentElement:u}=J(),{multiple:d,disabled:p,ignoreFilter:m,resetSearchTermOnSelect:h,openOnFocus:g,openOnClick:_,dir:y,resetModelValueOnClear:C,highlightOnHover:w}=v(i),T=oe(y),O=P(i,`modelValue`,a,{defaultValue:i.defaultValue??(d.value?[]:void 0),passive:i.modelValue===void 0,deep:!0}),A=P(i,`open`,a,{defaultValue:i.defaultOpen,passive:i.open===void 0});async function j(e){A.value=e,G.value=``,e?(await S(),s.value?.highlightSelected(),L.value=!0,z.value?.focus()):(L.value=!1,setTimeout(()=>{!e&&i.resetSearchTermOnBlur&&F.trigger()},1))}let F=I(),L=E(!1),R=E(!1),z=E(),B=E(),V=D(()=>s.value?.highlightedElement??void 0),H=E(new Map),U=E(new Map),{contains:W}=ke({sensitivity:`base`}),G=E(``),te=D(e=>{if(!G.value||i.ignoreFilter||R.value)return{count:H.value.size,items:e?.items??new Map,groups:e?.groups??new Set(U.value.keys())};let t=0,n=new Map,r=new Set;for(let[e,r]of H.value){let i=W(r,G.value);n.set(e,i?1:0),i&&t++}for(let[e,t]of U.value)for(let i of t)if(n.get(i)>0){r.add(e);break}return{count:t,items:n,groups:r}}),K=M();return o(()=>{K?.exposed&&(K.exposed.highlightItem=s.value?.highlightItem,K.exposed.highlightFirstItem=s.value?.highlightFirstItem,K.exposed.highlightSelected=s.value?.highlightSelected)}),t({filtered:te,highlightedElement:V,highlightItem:s.value?.highlightItem,highlightFirstItem:s.value?.highlightFirstItem,highlightSelected:s.value?.highlightSelected}),Qe({modelValue:O,multiple:d,disabled:p,open:A,onOpenChange:j,contentId:``,isUserInputted:L,isVirtual:R,inputElement:z,highlightedElement:V,onInputElementChange:e=>z.value=e,triggerElement:B,onTriggerElementChange:e=>B.value=e,parentElement:u,resetSearchTermOnSelect:h,onResetSearchTerm:F.on,allItems:H,allGroups:U,filterSearch:G,filterState:te,ignoreFilter:m,openOnFocus:g,openOnClick:_,resetModelValueOnClear:C}),(e,t)=>(n(),b(x(ee),null,{default:f(()=>[N(x(Ge),c({ref_key:`primitiveElement`,ref:s},e.$attrs,{modelValue:x(O),"onUpdate:modelValue":t[0]||=e=>k(O)?O.value=e:null,style:{pointerEvents:x(A)?`auto`:void 0},as:e.as,"as-child":e.asChild,dir:x(T),multiple:x(d),name:e.name,required:e.required,disabled:x(p),"highlight-on-hover":x(w),by:i.by,onHighlight:t[1]||=e=>a(`highlight`,e)}),{default:f(()=>[l(e.$slots,`default`,{open:x(A),modelValue:x(O)})]),_:3},16,[`modelValue`,`style`,`as`,`as-child`,`dir`,`multiple`,`name`,`required`,`disabled`,`highlight-on-hover`,`by`])]),_:3}))}}),et=g({__name:`ComboboxAnchor`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{forwardRef:t}=H();return(e,r)=>(n(),b(x(te),{"as-child":``,reference:e.reference},{default:f(()=>[N(x(R),c({ref:x(t),"as-child":e.asChild,as:e.as},e.$attrs),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`as-child`,`as`])]),_:3},8,[`reference`]))}}),[tt,nt]=L(`ComboboxContent`),rt=g({__name:`ComboboxContentImpl`,props:{position:{type:String,required:!1,default:`inline`},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(t,{emit:r}){let i=t,a=r,{position:u}=v(i),d=$(),p=D(()=>d.ignoreFilter.value?d.allItems.value.size===0:d.filterState.value.count===0),{forwardRef:m,currentElement:h}=H();ue(i.bodyLock),ae(),ce(d.parentElement);let g=G(D(()=>i.position===`popper`?i:{}).value),_={boxSizing:`border-box`,"--reka-combobox-content-transform-origin":`var(--reka-popper-transform-origin)`,"--reka-combobox-content-available-width":`var(--reka-popper-available-width)`,"--reka-combobox-content-available-height":`var(--reka-popper-available-height)`,"--reka-combobox-trigger-width":`var(--reka-popper-anchor-width)`,"--reka-combobox-trigger-height":`var(--reka-popper-anchor-height)`};nt({position:u});let y=E(!1);return o(()=>{d.inputElement.value&&(y.value=h.value.contains(d.inputElement.value),y.value&&d.inputElement.value.focus())}),s(()=>{let e=Y();y.value&&(!e||e===document.body)&&d.triggerElement.value?.focus()}),(t,r)=>(n(),b(x(Ke),{"as-child":``},{default:f(()=>[N(x(de),{"as-child":``,onMountAutoFocus:r[5]||=O(()=>{},[`prevent`]),onUnmountAutoFocus:r[6]||=O(()=>{},[`prevent`])},{default:f(()=>[N(x(K),{"as-child":``,"disable-outside-pointer-events":t.disableOutsidePointerEvents,onDismiss:r[0]||=e=>x(d).onOpenChange(!1),onFocusOutside:r[1]||=e=>{x(d).parentElement.value?.contains(e.target)&&e.preventDefault(),a(`focusOutside`,e)},onInteractOutside:r[2]||=e=>a(`interactOutside`,e),onEscapeKeyDown:r[3]||=e=>a(`escapeKeyDown`,e),onPointerDownOutside:r[4]||=e=>{x(d).parentElement.value?.contains(e.target)&&e.preventDefault(),a(`pointerDownOutside`,e)}},{default:f(()=>[(n(),b(e(x(u)===`popper`?x(U):x(R)),c({...t.$attrs,...x(g)},{id:x(d).contentId,ref:x(m),"data-state":x(d).open.value?`open`:`closed`,"data-empty":p.value?``:void 0,style:{display:i.hideWhenEmpty&&p.value?`none`:`flex`,flexDirection:`column`,outline:`none`,...x(u)===`popper`?_:{}}}),{default:f(()=>[l(t.$slots,`default`)]),_:3},16,[`id`,`data-state`,`data-empty`,`style`]))]),_:3},8,[`disable-outside-pointer-events`])]),_:3})]),_:3}))}}),it=g({__name:`ComboboxContent`,props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let r=B(e,t),{forwardRef:i}=H(),a=$();return a.contentId||=z(void 0,`reka-combobox-content`),(e,t)=>(n(),b(x(q),{present:e.forceMount||x(a).open.value},{default:f(()=>[N(rt,c({...x(r),...e.$attrs},{ref:x(i)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16)]),_:3},8,[`present`]))}}),at=g({__name:`ComboboxEmpty`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,r=$(),i=D(()=>r.ignoreFilter.value?r.allItems.value.size===0:r.filterState.value.count===0);return(e,r)=>i.value?(n(),b(x(R),j(c({key:0},t)),{default:f(()=>[l(e.$slots,`default`,{},()=>[r[0]||=A(`No options`)])]),_:3},16)):y(`v-if`,!0)}}),[ot,st]=L(`ComboboxGroup`),ct=g({__name:`ComboboxInput`,props:{displayValue:{type:Function,required:!1},modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`input`}},emits:[`update:modelValue`],setup(e,{emit:t}){let i=e,a=t,s=$(),c=Ue(),{primitiveElement:u,currentElement:d}=J(),p=P(i,`modelValue`,a,{passive:i.modelValue===void 0});o(()=>{d.value&&s.onInputElementChange(d.value)});function m(e){s.open.value||s.onOpenChange(!0)}function h(e){let t=e.target;s.open.value?s.filterSearch.value=t.value:(s.onOpenChange(!0),S(()=>{t.value&&(s.filterSearch.value=t.value,c.highlightFirstItem())}))}function g(){s.openOnFocus.value&&!s.open.value&&s.onOpenChange(!0)}function _(e){if(!s.open.value)return;let t=e.relatedTarget;if(!t)return;let n=s.parentElement.value?.contains(t),r=document.getElementById(s.contentId)?.contains(t);!n&&!r&&s.onOpenChange(!1)}function v(){s.openOnClick.value&&!s.open.value&&s.onOpenChange(!0)}function y(){let e=s.modelValue.value;i.displayValue?p.value=i.displayValue(e):!s.multiple.value&&e&&!Array.isArray(e)?typeof e==`object`?p.value=``:p.value=e.toString():p.value=``,S(()=>{p.value=p.value})}return s.onResetSearchTerm(()=>{y()}),r(s.modelValue,async()=>{!s.isUserInputted.value&&s.resetSearchTermOnSelect.value&&y()},{immediate:!0,deep:!0}),r(s.filterState,(e,t)=>{!s.isVirtual.value&&t.count===0&&c.highlightFirstItem()}),(e,t)=>(n(),b(x(qe),{ref_key:`primitiveElement`,ref:u,modelValue:x(p),"onUpdate:modelValue":t[0]||=e=>k(p)?p.value=e:null,as:e.as,"as-child":e.asChild,"auto-focus":e.autoFocus,disabled:e.disabled,"aria-expanded":x(s).open.value,"aria-controls":x(s).contentId,"aria-autocomplete":`list`,role:`combobox`,autocomplete:`off`,onClick:v,onInput:h,onKeydown:T(O(m,[`prevent`]),[`down`,`up`]),onFocus:g,onBlur:_},{default:f(()=>[l(e.$slots,`default`)]),_:3},8,[`modelValue`,`as`,`as-child`,`auto-focus`,`disabled`,`aria-expanded`,`aria-controls`,`onKeydown`]))}}),lt=g({__name:`ComboboxItem`,props:{textValue:{type:String,required:!1},value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`select`],setup(e,{emit:t}){let r=e,i=t,a=z(void 0,`reka-combobox-item`),u=$(),d=ot(null),{primitiveElement:p,currentElement:m}=J();if(r.value===``)throw Error(`A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.`);let h=D(()=>{if(u.isVirtual.value||u.ignoreFilter.value||!u.filterSearch.value)return!0;{let e=u.filterState.value.items.get(a);return e===void 0?!0:e>0}});return o(()=>{u.allItems.value.set(a,r.textValue||m.value.textContent||m.value.innerText);let e=d?.id;e&&(u.allGroups.value.has(e)?u.allGroups.value.get(e)?.add(a):u.allGroups.value.set(e,new Set([a])))}),s(()=>{u.allItems.value.delete(a)}),(e,t)=>h.value?(n(),b(x(Ze),c({key:0},r,{id:x(a),ref_key:`primitiveElement`,ref:p,disabled:x(u).disabled.value||e.disabled,onSelect:t[0]||=t=>{i(`select`,t),!t.defaultPrevented&&!x(u).multiple.value&&!e.disabled&&!x(u).disabled.value&&(t.preventDefault(),x(u).onOpenChange(!1),x(u).modelValue.value=r.value)}}),{default:f(()=>[l(e.$slots,`default`,{},()=>[A(_(e.value),1)])]),_:3},16,[`id`,`disabled`])):y(`v-if`,!0)}}),ut=g({__name:`ComboboxPortal`,props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){let t=e;return(e,r)=>(n(),b(x(W),j(u(t)),{default:f(()=>[l(e.$slots,`default`)]),_:3},16))}}),dt=g({__name:`ComboboxTrigger`,props:{disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,{forwardRef:r,currentElement:i}=H(),a=$(),s=D(()=>t.disabled||a.disabled.value||!1);return o(()=>{i.value&&a.onTriggerElementChange(i.value)}),(e,i)=>(n(),b(x(R),c(t,{ref:x(r),type:e.as===`button`?`button`:void 0,tabindex:`-1`,"aria-label":`Show popup`,"aria-haspopup":`listbox`,"aria-expanded":x(a).open.value,"aria-controls":x(a).contentId,"data-state":x(a).open.value?`open`:`closed`,disabled:s.value,"data-disabled":s.value?``:void 0,"aria-disabled":s.value??void 0,onClick:i[0]||=e=>x(a).onOpenChange(!x(a).open.value)}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`aria-disabled`]))}}),ft=g({__name:`ComboboxViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:r}=H(),{nonce:i}=v(t),a=_e(i),o=$();return(e,i)=>(n(),m(C,null,[N(x(R),c({...e.$attrs,...t},{ref:x(r),"data-reka-combobox-viewport":``,role:`presentation`,style:{position:`relative`,flex:x(o).isVirtual.value?void 0:1,overflow:`auto`}}),{default:f(()=>[l(e.$slots,`default`)]),_:3},16,[`style`]),N(x(R),{as:`style`,nonce:x(a)},{default:f(()=>i[0]||=[A(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-combobox-viewport]::-webkit-scrollbar { display: none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),pt=ne(g({__name:`VDDialog`,props:t({title:{},description:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:[`update:open`],setup(e){let t=d(e,`open`);return(r,i)=>(n(),b(x(je),{open:t.value,"onUpdate:open":i[0]||=e=>t.value=e},{default:f(()=>[N(x(Be),null,{default:f(()=>[N(x(ze),{class:`fixed inset-0 z-50 bg-black/50 animate-overlay-show`}),N(x(Ie),{class:`fixed z-50 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded-lg shadow-xl p-5 w-full max-w-md animate-content-show`},{default:f(()=>[e.title?(n(),b(x(Ve),{key:0,class:`text-base font-semibold text-gray-900 dark:text-gray-100 mb-1`},{default:f(()=>[A(_(e.title),1)]),_:1})):y(``,!0),e.description?(n(),b(x(Le),{key:1,class:`text-sm text-gray-500 dark:text-gray-400 mb-4`},{default:f(()=>[A(_(e.description),1)]),_:1})):y(``,!0),l(r.$slots,`default`,{},void 0,!0),N(x(Me),{class:`absolute top-3 right-3 inline-flex items-center justify-center w-6 h-6 rounded hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer transition-colors`},{default:f(()=>[...i[1]||=[w(`div`,{class:`i-ri:close-line text-sm op-50`},null,-1)]]),_:1})]),_:3})]),_:3})]),_:3},8,[`open`]))}}),[[`__scopeId`,`data-v-9ac2308f`]]),mt={class:`font-mono`},ht=ne(g({__name:`VDCombobox`,props:t({options:{},placeholder:{},disabled:{type:Boolean}},{modelValue:{default:``},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=d(e,`modelValue`),i=E(t.value);r(t,e=>{e!==i.value&&(i.value=e)});function o(e){i.value=e,t.value=e}function s(e){return typeof e==`string`?e:t.value}function c(e){t.value=e.target.value}return(t,r)=>(n(),b(x($e),{modelValue:i.value,"onUpdate:modelValue":[r[0]||=e=>i.value=e,o],"reset-search-term-on-blur":!1,"open-on-focus":!0,disabled:e.disabled,class:`relative`},{default:f(()=>[N(x(et),{class:`inline-flex items-center w-full`},{default:f(()=>[N(x(ct),{placeholder:e.placeholder,"display-value":s,class:h([`vd-combobox-input border border-gray-200 dark:border-gray-700 bg-white dark:bg-gray-900 text-gray-700 dark:text-gray-200 rounded-md text-xs px-2 py-1 pr-5 outline-none transition-colors duration-150 w-full`,[e.disabled?`op-50 cursor-not-allowed`:``]]),onInput:c},null,8,[`placeholder`,`class`]),N(x(dt),{class:`absolute right-1 inline-flex items-center justify-center text-gray-400 hover:text-gray-600 dark:hover:text-gray-300 cursor-pointer`},{default:f(()=>[...r[1]||=[w(`div`,{class:`i-ri:arrow-down-s-line text-xs`},null,-1)]]),_:1})]),_:1}),N(x(ut),null,{default:f(()=>[N(x(it),{class:`z-50 bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-700 rounded-lg shadow-lg overflow-hidden max-h-48`,position:`popper`,"side-offset":4},{default:f(()=>[N(x(ft),{class:`p-1`},{default:f(()=>[N(x(at),{class:`px-2 py-1.5 text-xs op-40`},{default:f(()=>[...r[2]||=[A(` No matching keys `,-1)]]),_:1}),(n(!0),m(C,null,a(e.options,e=>(n(),b(x(lt),{key:e,value:e,class:`flex items-center px-2 py-1.5 text-xs rounded cursor-pointer outline-none text-gray-700 dark:text-gray-200 data-[highlighted]:bg-indigo-50 dark:data-[highlighted]:bg-indigo-900/30 data-[highlighted]:text-indigo-600 dark:data-[highlighted]:text-indigo-400`},{default:f(()=>[w(`span`,mt,_(e),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,[`modelValue`,`disabled`]))}}),[[`__scopeId`,`data-v-4c8ffded`]]),gt={class:`h-full flex flex-col`},_t={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},vt={class:`text-sm font-bold flex-1`},yt={class:`text-xs op-50 tabular-nums`},bt={key:0,class:`flex-1 overflow-auto`,flex:`~ col gap-0`},xt=[`onClick`],St={class:`truncate text-xs`},Ct={key:1,class:`flex-1 flex items-center justify-center op-40 text-sm`},wt={class:`h-full overflow-auto p-4 flex flex-col gap-4`},Tt={class:`flex items-center gap-2 mb-2`},Et={class:`text-sm font-bold`},Dt={class:`text-xs op-40`},Ot={class:`border border-gray-200 rounded-lg dark:border-gray-700 divide-y divide-gray-100 dark:divide-gray-800`},kt={class:`text-xs op-30 w-4 text-right tabular-nums`},At={key:2,class:`flex-1`},jt=[`onClick`],Mt={class:`flex items-center gap-3`},Nt={key:0,class:`text-xs op-50`},Pt={class:`flex gap-2 justify-end mt-4`},Ft={key:1,class:`flex-1 min-h-0`},It={key:0,class:`text-sm font-bold mb-2 op-70`},Lt={key:1,class:`text-sm font-bold mb-2 op-70`},Rt={class:`overflow-auto border border-gray-200 rounded-lg dark:border-gray-700 max-h-[calc(100vh-24rem)]`},zt={key:0,class:`text-xs w-full border-collapse`},Bt={class:`bg-gray-50 dark:bg-gray-800/80`},Vt={class:`border-b border-r border-gray-200 px-2 py-1.5 dark:border-gray-700 sticky left-0 bg-gray-50 dark:bg-gray-800/80 z-1 text-left font-semibold`},Ht={class:`border-b border-r border-gray-200 px-2 py-1 dark:border-gray-700 sticky left-0 bg-white dark:bg-gray-900 z-1 font-medium whitespace-nowrap`},Ut={key:1,class:`text-xs w-full border-collapse`},Wt={class:`bg-gray-50 dark:bg-gray-800/80`},Gt={class:`border-b border-r border-gray-200 px-2 py-1.5 dark:border-gray-700 sticky left-0 bg-gray-50 dark:bg-gray-800/80 z-1 text-left font-semibold`},Kt={class:`border-b border-r border-gray-200 px-2 py-1 dark:border-gray-700 sticky left-0 bg-white dark:bg-gray-900 z-1 font-medium whitespace-nowrap`},qt={key:2,class:`flex-1 flex flex-col items-center justify-center gap-2 op-35`},Jt={class:`text-sm`},Yt=g({__name:`batch-edit`,setup(e){let{t,locale:r}=Ce(),i=E([]),o=D(()=>X.value.posts.length>0&&i.value.length===X.value.posts.length);function s(){o.value?i.value=[]:i.value=X.value.posts.map(e=>e.filePath)}function c(e){return i.value.includes(e)}function l(e){let t=i.value.indexOf(e);t>=0?i.value.splice(t,1):i.value.push(e)}let u=E([{type:`set`,key:``,value:``,newKey:``}]),d=D(()=>[{label:t(`batchEdit.op_set`),value:`set`},{label:t(`batchEdit.op_delete`),value:`delete`},{label:t(`batchEdit.op_rename`),value:`rename`}]);function p(){u.value.push({type:`set`,key:``,value:``,newKey:``})}function g(e){u.value.splice(e,1)}let v=D(()=>{let e=new Set;for(let t of X.value.posts)for(let n of Object.keys(t.frontmatter))e.add(n);return Array.from(e).sort()}),S=D(()=>{let e=new Set,t=new Set(i.value);for(let n of X.value.posts)if(t.has(n.filePath))for(let t of Object.keys(n.frontmatter))e.add(t);for(let t of u.value)t.key&&e.add(t.key),t.type===`rename`&&t.newKey&&e.add(t.newKey);return Array.from(e).sort()}),T=E(!1),O=D(()=>{let e=new Set(i.value);return X.value.posts.filter(t=>e.has(t.filePath)).map(e=>{let t={...e.frontmatter};for(let e of u.value)if(e.key)switch(e.type){case`set`:t[e.key]=k(e.value);break;case`delete`:delete t[e.key];break;case`rename`:e.key in t&&e.newKey&&(t[e.newKey]=t[e.key],delete t[e.key]);break}return{title:B(e),filePath:e.filePath,frontmatter:t}})});function k(e){if(e===`true`)return!0;if(e===`false`)return!1;let t=Number(e);return!Number.isNaN(t)&&e.trim()!==``?t:e}let j=E(!1),M=E(!1),P=E(null),F=D(()=>u.value.filter(e=>!(!e.key.trim()||e.type===`rename`&&!e.newKey.trim()))),I=D(()=>F.value.length>0&&i.value.length>0);function L(){I.value&&(M.value=!0)}async function R(){M.value=!1;let e=F.value.map(e=>({type:e.type,key:e.key.trim(),value:e.type===`set`?k(e.value):void 0,newKey:e.type===`rename`?e.newKey.trim():void 0}));j.value=!0,P.value=null;try{let n=await Se.batchUpdateFrontmatter(i.value,e);n.errors.length>0?P.value={severity:`error`,text:t(`batchEdit.result_partial`,{updated:n.updated,total:n.total,errors:n.errors.length})}:P.value={severity:`success`,text:t(`batchEdit.result_success`,{updated:n.updated,total:n.total})},X.value=await Se.getPostList()}catch(e){P.value={severity:`error`,text:e.message||String(e)}}finally{j.value=!1}}function z(e){if(e==null)return``;if(typeof e==`object`&&e&&!Array.isArray(e)){let t=De(e,r.value);return typeof t==`string`&&t?t:JSON.stringify(e)}return typeof e==`object`?JSON.stringify(e):String(e)}function B(e){let t=e.frontmatter.title;return t?typeof t==`object`?De(t,r.value):String(t):e.routePath||``}function V(e,t){return z(e.frontmatter[t])}return(e,r)=>{let E=we,D=xe,k=ye,ee=ht,H=fe,U=pt,W=be;return n(),b(x(Ee),{class:`h-full`},{default:f(()=>[N(x(Te),{"min-size":`20`,size:`33`},{default:f(()=>[w(`div`,gt,[w(`div`,_t,[w(`h3`,vt,_(x(t)(`batchEdit.select_posts`)),1),w(`span`,yt,_(i.value.length)+`/`+_(x(X).posts.length),1),N(E,{variant:`ghost`,size:`sm`,onClick:s},{default:f(()=>[A(_(o.value?x(t)(`batchEdit.deselect_all`):x(t)(`batchEdit.select_all`)),1)]),_:1})]),x(X).posts.length>0?(n(),m(`ul`,bt,[(n(!0),m(C,null,a(x(X).posts,e=>(n(),m(`li`,{key:e.filePath,class:h([`flex items-center gap-2 text-sm cursor-pointer px-3 py-1.5 border-b border-gray-50 dark:border-gray-800/50 transition-colors`,c(e.filePath)?`bg-blue-50/50 dark:bg-blue-900/10`:`hover:bg-gray-50 dark:hover:bg-gray-800/50`]),onClick:t=>l(e.filePath)},[N(D,{"model-value":c(e.filePath),class:`pointer-events-none`},null,8,[`model-value`]),w(`span`,St,_(B(e)),1)],10,xt))),128))])):(n(),m(`div`,Ct,_(x(t)(`batchEdit.no_posts`)),1))])]),_:1}),N(x(Te),null,{default:f(()=>[w(`div`,wt,[w(`section`,null,[w(`div`,Tt,[w(`h3`,Et,_(x(t)(`batchEdit.operations`)),1),w(`span`,Dt,_(u.value.length),1)]),w(`div`,Ot,[(n(!0),m(C,null,a(u.value,(e,i)=>(n(),m(`div`,{key:i,class:`flex gap-2 items-center px-3 py-2`},[w(`span`,kt,_(i+1),1),N(k,{modelValue:e.type,"onUpdate:modelValue":t=>e.type=t,options:d.value,class:`w-28`},null,8,[`modelValue`,`onUpdate:modelValue`,`options`]),N(ee,{modelValue:e.key,"onUpdate:modelValue":t=>e.key=t,options:v.value,placeholder:x(t)(`batchEdit.field_key`),class:`w-32`},null,8,[`modelValue`,`onUpdate:modelValue`,`options`,`placeholder`]),e.type===`set`?(n(),m(C,{key:0},[r[3]||=w(`span`,{class:`text-xs op-40 font-mono`},`=`,-1),N(H,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,placeholder:x(t)(`batchEdit.field_value`),size:`sm`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])],64)):e.type===`rename`?(n(),m(C,{key:1},[r[4]||=w(`span`,{class:`text-xs op-40 font-mono`},`→`,-1),N(H,{modelValue:e.newKey,"onUpdate:modelValue":t=>e.newKey=t,placeholder:x(t)(`batchEdit.new_key`),size:`sm`,class:`flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])],64)):(n(),m(`div`,At)),u.value.length>1?(n(),m(`button`,{key:3,class:`inline-flex items-center justify-center w-7 h-7 rounded op-40 hover:op-100 hover:bg-gray-100 dark:hover:bg-gray-800 cursor-pointer transition-colors`,onClick:e=>g(i)},[...r[5]||=[w(`div`,{class:`i-ri:close-line text-sm`},null,-1)]],8,jt)):y(``,!0)]))),128))]),N(E,{variant:`ghost`,icon:`i-ri:add-line`,size:`sm`,class:`mt-1.5`,onClick:p},{default:f(()=>[A(_(x(t)(`batchEdit.add_operation`)),1)]),_:1})]),w(`section`,Mt,[N(E,{variant:`warn`,loading:j.value,disabled:!I.value,icon:`i-ri:check-line`,size:`sm`,onClick:L},{default:f(()=>[A(_(x(t)(`batchEdit.execute`)),1)]),_:1},8,[`loading`,`disabled`]),N(E,{variant:`secondary`,disabled:i.value.length===0,size:`sm`,icon:T.value?`i-ri:eye-off-line`:`i-ri:eye-line`,onClick:r[0]||=e=>T.value=!T.value},{default:f(()=>[A(_(T.value?x(t)(`batchEdit.hide_preview`):x(t)(`batchEdit.show_preview`)),1)]),_:1},8,[`disabled`,`icon`]),I.value?(n(),m(`span`,Nt,_(x(t)(`batchEdit.summary`,{ops:F.value.length,posts:i.value.length})),1)):y(``,!0)]),N(U,{open:M.value,"onUpdate:open":r[2]||=e=>M.value=e,title:x(t)(`batchEdit.execute`),description:x(t)(`batchEdit.confirm`,{ops:F.value.length,posts:i.value.length})},{default:f(()=>[w(`div`,Pt,[N(E,{variant:`secondary`,size:`sm`,onClick:r[1]||=e=>M.value=!1},{default:f(()=>[A(_(x(t)(`batchEdit.confirm_no`)),1)]),_:1}),N(E,{variant:`warn`,size:`sm`,onClick:R},{default:f(()=>[A(_(x(t)(`batchEdit.confirm_yes`)),1)]),_:1})])]),_:1},8,[`open`,`title`,`description`]),P.value?(n(),b(W,{key:0,severity:P.value.severity,closable:``},{default:f(()=>[A(_(P.value.text),1)]),_:1},8,[`severity`])):y(``,!0),i.value.length>0?(n(),m(`section`,Ft,[T.value?(n(),m(`h3`,Lt,_(x(t)(`batchEdit.show_preview`)),1)):(n(),m(`h3`,It,_(x(t)(`batchEdit.current_frontmatter`)),1)),w(`div`,Rt,[T.value?(n(),m(`table`,zt,[w(`thead`,null,[w(`tr`,Bt,[w(`th`,Vt,_(x(t)(`batchEdit.post_title`)),1),(n(!0),m(C,null,a(S.value,e=>(n(),m(`th`,{key:e,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1.5 dark:border-gray-700 whitespace-nowrap text-left font-semibold`},_(e),1))),128))])]),w(`tbody`,null,[(n(!0),m(C,null,a(O.value,e=>(n(),m(`tr`,{key:e.filePath,class:`hover:bg-gray-50/50 dark:hover:bg-gray-800/30 transition-colors`},[w(`td`,Ht,_(e.title),1),(n(!0),m(C,null,a(S.value,t=>(n(),m(`td`,{key:t,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1 dark:border-gray-700 max-w-40 truncate font-mono`},_(z(e.frontmatter[t])),1))),128))]))),128))])])):(n(),m(`table`,Ut,[w(`thead`,null,[w(`tr`,Wt,[w(`th`,Gt,_(x(t)(`batchEdit.post_title`)),1),(n(!0),m(C,null,a(S.value,e=>(n(),m(`th`,{key:e,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1.5 dark:border-gray-700 whitespace-nowrap text-left font-semibold`},_(e),1))),128))])]),w(`tbody`,null,[(n(!0),m(C,null,a(x(X).posts.filter(e=>i.value.includes(e.filePath)),e=>(n(),m(`tr`,{key:e.filePath,class:`hover:bg-gray-50/50 dark:hover:bg-gray-800/30 transition-colors`},[w(`td`,Kt,_(B(e)),1),(n(!0),m(C,null,a(S.value,t=>(n(),m(`td`,{key:t,class:`border-b border-r border-gray-200 last:border-r-0 px-2 py-1 dark:border-gray-700 max-w-40 truncate font-mono`},_(V(e,t)),1))),128))]))),128))])]))])])):(n(),m(`div`,qt,[r[6]||=w(`div`,{class:`i-ri:file-list-3-line text-3xl`},null,-1),w(`span`,Jt,_(x(t)(`batchEdit.empty_hint`)),1)]))])]),_:1})]),_:1})}}});export{Yt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as e,L as t,Y as n,_ as r,_t as i,b as a,bt as o,h as s,ht as c,l,m as u,ot as d,p as f,y as p}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{a as m}from"./app-Ciu-q_PC.js";import{u as h}from"./index-
|
|
1
|
+
import{F as e,L as t,Y as n,_ as r,_t as i,b as a,bt as o,h as s,ht as c,l,m as u,ot as d,p as f,y as p}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{a as m}from"./app-Ciu-q_PC.js";import{u as h}from"./index-BSCrFaU_.js";import{n as g,t as _}from"./splitpanes.es-DbWSeMt3.js";import{t as v}from"./VDPostListItem-egm1gS7Y.js";var y={class:`h-full flex flex-col`},b={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},x={class:`text-sm font-bold flex-1`},S={class:`flex-1 overflow-auto`},C=[`onClick`],w={class:`flex-1 truncate`},T={class:`text-xs op-40 tabular-nums`},E=[`onClick`],D={class:`flex-1 truncate`},O={class:`text-xs op-40 tabular-nums`},k={key:1,class:`flex-1 flex items-center justify-center op-40 text-sm py-8`},A={key:0,class:`h-full overflow-auto`},j={class:`px-3 py-2 border-b border-gray-100 dark:border-gray-800`},M={class:`text-sm font-bold`},N={class:`text-xs op-50`},P={class:`px-3 py-2`},F={key:1,class:`flex items-center justify-center h-full op-40 text-sm`},I={class:`flex flex-col items-center gap-2`},L=a({__name:`categories`,setup(a){let{t:L}=h(),R=f(()=>{let e=new Map;for(let t of m.value.posts){let n=t.frontmatter.categories;if(!n)continue;let r=[];if(typeof n==`string`)r.push([n]);else if(Array.isArray(n))if(n.length>0&&Array.isArray(n[0]))for(let e of n)Array.isArray(e)&&r.push(e);else r.push(n);for(let n of r){let r=e;for(let e=0;e<n.length;e++){let i=n[e];r.has(i)||r.set(i,{name:i,count:0,children:new Map,posts:[]});let a=r.get(i);e===n.length-1&&(a.count++,a.posts.push(t)),r=a.children}}}return e}),z=d([]);function B(e){z.value=e}let V=f(()=>{if(z.value.length===0)return[];let e=R.value,t;for(let n of z.value){if(t=e.get(n),!t)return[];e=t.children}if(!t)return[];let n=[];function r(e){n.push(...e.posts);for(let t of e.children.values())r(t)}r(t);let i=new Set;return n.filter(e=>i.has(e.filePath)?!1:(i.add(e.filePath),!0))});function H(e){return JSON.stringify(z.value)===JSON.stringify(e)}function U(){return z.value.join(` > `)}return(a,d)=>{let f=v;return e(),s(c(_),{class:`h-full`},{default:n(()=>[p(c(g),{"min-size":`20`,size:`33`},{default:n(()=>[u(`div`,y,[u(`div`,b,[u(`h3`,x,o(c(L)(`categories.title`)),1)]),u(`div`,S,[R.value.size>0?(e(!0),r(l,{key:0},t(R.value,([n,a])=>(e(),r(`div`,{key:n},[u(`div`,{class:i([`flex items-center gap-2 px-3 py-1.5 text-sm cursor-pointer border-b border-gray-50 dark:border-gray-800/50 transition-colors`,H([n])?`bg-indigo-50/50 dark:bg-indigo-900/10 text-indigo-600 dark:text-indigo-400`:`hover:bg-gray-50 dark:hover:bg-gray-800/50`]),onClick:e=>B([n])},[d[0]||=u(`div`,{class:`i-ri:folder-2-line text-sm op-50`},null,-1),u(`span`,w,o(n),1),u(`span`,T,o(a.count),1)],10,C),(e(!0),r(l,null,t(a.children,([t,a])=>(e(),r(`div`,{key:t,class:i([`flex items-center gap-2 pl-8 pr-3 py-1.5 text-sm cursor-pointer border-b border-gray-50 dark:border-gray-800/50 transition-colors`,H([n,t])?`bg-indigo-50/50 dark:bg-indigo-900/10 text-indigo-600 dark:text-indigo-400`:`hover:bg-gray-50 dark:hover:bg-gray-800/50`]),onClick:e=>B([n,t])},[d[1]||=u(`div`,{class:`i-ri:folder-line text-sm op-40`},null,-1),u(`span`,D,o(t),1),u(`span`,O,o(a.count),1)],10,E))),128))]))),128)):(e(),r(`div`,k,o(c(L)(`categories.empty`)),1))])])]),_:1}),p(c(g),null,{default:n(()=>[z.value.length>0?(e(),r(`div`,A,[u(`div`,j,[u(`h3`,M,o(U()),1),u(`span`,N,o(c(L)(`categories.posts_count`,{count:V.value.length})),1)]),u(`ul`,P,[(e(!0),r(l,null,t(V.value,t=>(e(),s(f,{key:t.filePath,post:t},null,8,[`post`]))),128))])])):(e(),r(`div`,F,[u(`div`,I,[d[2]||=u(`div`,{class:`i-ri:folder-2-line text-3xl`},null,-1),u(`span`,null,o(c(L)(`categories.all`)),1)])]))]),_:1})]),_:1})}}});export{L as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as e,L as t,Y as n,_ as r,_t as i,b as a,bt as o,g as s,h as c,ht as l,l as u,m as d,ot as f,v as p,y as m}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{r as h}from"./app-Ciu-q_PC.js";import{n as g,t as _}from"./splitpanes.es-DbWSeMt3.js";var v={class:`h-full overflow-auto`},y=[`onClick`],b={class:`font-bold text-sm`},x={class:`text-xs op-50 mt-1`},S={key:0,class:`text-center op-50 py-8 text-sm`},C={key:0,class:`overflow-auto h-full p-4`},w={class:`flex items-start gap-4 mb-4`},T=[`src`],E={class:`text-lg font-bold`},D={class:`text-xs op-50 mt-1`},O={key:0,class:`text-sm op-70 mt-2`},k={class:`text-xs mt-2`},A={class:`font-bold text-sm mb-2 op-70`},j={class:`border border-gray-200 rounded dark:border-gray-700`},M={class:`op-40 text-xs w-6 text-right`},N={class:`flex-1`},P=[`href`],F={key:1,class:`text-xs op-40 font-mono`},I={key:0,class:`text-center op-50 py-4 text-sm`},L={key:1,class:`flex items-center justify-center h-full op-40 text-sm`},R=a({__name:`collections`,setup(a){let R=f(null);function z(e){R.value=e}return(a,f)=>(e(),c(l(_),{class:`h-full`},{default:n(()=>[m(l(g),{"min-size":`20`,size:`
|
|
1
|
+
import{F as e,L as t,Y as n,_ as r,_t as i,b as a,bt as o,g as s,h as c,ht as l,l as u,m as d,ot as f,v as p,y as m}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{r as h}from"./app-Ciu-q_PC.js";import{n as g,t as _}from"./splitpanes.es-DbWSeMt3.js";var v={class:`h-full overflow-auto`},y=[`onClick`],b={class:`font-bold text-sm`},x={class:`text-xs op-50 mt-1`},S={key:0,class:`text-center op-50 py-8 text-sm`},C={key:0,class:`overflow-auto h-full p-4`},w={class:`flex items-start gap-4 mb-4`},T=[`src`],E={class:`text-lg font-bold`},D={class:`text-xs op-50 mt-1`},O={key:0,class:`text-sm op-70 mt-2`},k={class:`text-xs mt-2`},A={class:`font-bold text-sm mb-2 op-70`},j={class:`border border-gray-200 rounded dark:border-gray-700`},M={class:`op-40 text-xs w-6 text-right`},N={class:`flex-1`},P=[`href`],F={key:1,class:`text-xs op-40 font-mono`},I={key:0,class:`text-center op-50 py-4 text-sm`},L={key:1,class:`flex items-center justify-center h-full op-40 text-sm`},R=a({__name:`collections`,setup(a){let R=f(null);function z(e){R.value=e}return(a,f)=>(e(),c(l(_),{class:`h-full`},{default:n(()=>[m(l(g),{"min-size":`20`,size:`33`},{default:n(()=>[d(`div`,v,[(e(!0),r(u,null,t(l(h),t=>(e(),r(`div`,{key:t.key,class:i([`cursor-pointer p-3 border-b border-gray-100 dark:border-gray-800 hover:bg-gray-50 dark:hover:bg-gray-800 transition`,{"bg-gray-100 dark:bg-gray-700":R.value?.key===t.key}]),onClick:e=>z(t)},[d(`div`,b,o(t.title||t.key),1),d(`div`,x,o(t.items.length)+` items `,1)],10,y))),128)),l(h).length?s(``,!0):(e(),r(`div`,S,` No collections found `))])]),_:1}),m(l(g),null,{default:n(()=>[R.value?(e(),r(`div`,C,[d(`div`,w,[R.value.cover?(e(),r(`img`,{key:0,src:R.value.cover,class:`max-h-30 rounded shadow`},null,8,T)):s(``,!0),d(`div`,null,[d(`h2`,E,o(R.value.title||R.value.key),1),d(`div`,D,` key: `+o(R.value.key),1),R.value.description?(e(),r(`div`,O,o(R.value.description),1)):s(``,!0),d(`div`,k,[d(`span`,{class:i([`px-1.5 py-0.5 rounded`,R.value.collapse?`bg-blue-100 text-blue-600 dark:bg-blue-900 dark:text-blue-300`:`bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300`])},o(R.value.collapse?`collapsed`:`expanded`),3)])])]),d(`h3`,A,` Items (`+o(R.value.items.length)+`) `,1),d(`div`,j,[(e(!0),r(u,null,t(R.value.items,(t,n)=>(e(),r(`div`,{key:t.key||t.link,class:`flex items-center gap-2 px-3 py-2 text-sm border-b border-gray-200 last:border-b-0 dark:border-gray-700`},[d(`span`,M,o(n+1),1),d(`span`,N,o(t.title),1),t.link?(e(),r(`a`,{key:0,href:t.link,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-blue-500 font-mono inline-flex items-center gap-0.5`},[p(o(t.link)+` `,1),f[0]||=d(`span`,{class:`i-ri-external-link-line text-xs`},null,-1)],8,P)):(e(),r(`span`,F,o(t.key),1))]))),128)),R.value.items.length?s(``,!0):(e(),r(`div`,I,` No items `))])])):(e(),r(`div`,L,` Select a collection to view details `))]),_:1})]),_:1}))}});export{R as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as e,G as t,L as n,R as r,Y as i,_ as a,_t as o,b as s,bt as c,g as l,h as u,ht as d,l as f,m as p,ot as m,p as h,v as g,y as _}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{t as v}from"./VDInput-6FQF1GB1.js";import{t as y}from"./VDNumberField-DE-iSRFf.js";import{t as b}from"./VDSelect-UHvFCpyn.js";import{n as x,t as S}from"./VDCheckbox-DIkwHeip.js";import{t as C}from"./api-cJTeRRR-.js";import{a as w,c as T,i as E,o as D,r as O,s as k,u as A}from"./index-D82QJxg1.js";import{n as j,t as M}from"./splitpanes.es-DbWSeMt3.js";var N={class:`flex items-center gap-2`},P=s({__name:`ConfigFieldCheckbox`,props:{configType:{},field:{},label:{},description:{},modelValue:{type:Boolean}},emits:[`saved`],setup(t,{emit:n}){let r=t,o=n;async function s(){let e=!r.modelValue;await k(r.configType,r.field,e),o(`saved`)}return(n,r)=>{let o=S,d=T;return e(),a(`div`,N,[_(o,{"model-value":t.modelValue??!1,"onUpdate:modelValue":s},null,8,[`model-value`]),p(`label`,{class:`text-sm font-medium cursor-pointer`,onClick:s},c(t.label),1),t.description?(e(),u(d,{key:0,content:t.description,side:`right`},{default:i(()=>[...r[0]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)])}}}),F={class:`config-field-group`},I={class:`flex items-center gap-2 mb-3`},L={class:`text-sm font-bold text-gray-700 dark:text-gray-200`},R={class:`flex flex-col gap-4 pl-1`},ee=s({__name:`ConfigFieldGroup`,props:{title:{},icon:{}},setup(t){return(n,i)=>(e(),a(`div`,F,[p(`div`,I,[t.icon?(e(),a(`div`,{key:0,class:o([t.icon,`text-base text-indigo-500`])},null,2)):l(``,!0),p(`h4`,L,c(t.title),1)]),p(`div`,R,[r(n.$slots,`default`)])]))}}),z={class:`flex flex-col gap-1.5`},B={class:`flex items-center gap-1.5`},V={class:`text-sm font-medium`},te=s({__name:`ConfigFieldNumber`,props:{configType:{},field:{},label:{},description:{},modelValue:{},min:{},max:{},step:{}},emits:[`saved`],setup(n,{emit:r}){let o=n,s=r,d=m(o.modelValue??0);t(()=>o.modelValue,e=>{d.value=e??0});async function f(){d.value!==(o.modelValue??0)&&(await k(o.configType,o.field,d.value),s(`saved`))}return(t,r)=>{let o=T,s=y;return e(),a(`div`,z,[p(`div`,B,[p(`label`,V,c(n.label),1),n.description?(e(),u(o,{key:0,content:n.description,side:`right`},{default:i(()=>[...r[1]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)]),_(s,{modelValue:d.value,"onUpdate:modelValue":[r[0]||=e=>d.value=e,f],min:n.min,max:n.max,step:n.step},null,8,[`modelValue`,`min`,`max`,`step`])])}}}),H={class:`flex flex-col gap-1.5`},U={class:`flex items-center gap-1.5`},W={class:`text-sm font-medium`},G=s({__name:`ConfigFieldSelect`,props:{configType:{},field:{},label:{},description:{},modelValue:{},options:{}},emits:[`saved`],setup(t,{emit:n}){let r=t,o=n;async function s(e){e!==r.modelValue&&(await k(r.configType,r.field,e),o(`saved`))}return(n,r)=>{let o=T,d=b;return e(),a(`div`,H,[p(`div`,U,[p(`label`,W,c(t.label),1),t.description?(e(),u(o,{key:0,content:t.description,side:`right`},{default:i(()=>[...r[0]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)]),_(d,{"model-value":t.modelValue,options:t.options,class:`w-48`,"onUpdate:modelValue":s},null,8,[`model-value`,`options`])])}}}),K={class:`flex flex-col gap-1.5`},q={class:`flex items-center gap-1.5`},J={class:`text-sm font-medium`},Y=s({__name:`ConfigFieldInput`,props:{configType:{},field:{},label:{},description:{},placeholder:{},modelValue:{}},emits:[`saved`],setup(n,{emit:r}){let o=n,s=r,d=m(o.modelValue??``);t(()=>o.modelValue,e=>{d.value=e??``});async function f(){d.value!==(o.modelValue??``)&&(await k(o.configType,o.field,d.value),s(`saved`))}function h(e){e.key===`Enter`&&f()}return(t,r)=>{let o=T,s=v;return e(),a(`div`,K,[p(`div`,q,[p(`label`,J,c(n.label),1),n.description?(e(),u(o,{key:0,content:n.description,side:`right`},{default:i(()=>[...r[1]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)]),_(s,{modelValue:d.value,"onUpdate:modelValue":r[0]||=e=>d.value=e,placeholder:n.placeholder,size:`md`,onBlur:f,onKeydown:h},null,8,[`modelValue`,`placeholder`])])}}}),X={generated:`2026-03-23T00:00:00.000Z`,siteConfig:[{name:`mode`,type:`'light' | 'dark' | 'auto'`,description:`Enable auto light/dark mode`,descriptionZh:`启用自动亮色/暗色模式`,default:`'auto'`},{name:`lang`,type:`string`,description:`Default language`,descriptionZh:`默认语言,设置 'zh-CN' 以改变默认语言为中文`,default:`'en'`},{name:`languages`,type:`string[]`,description:`Alternative languages`,descriptionZh:`可选语言`,default:`['en', 'zh-CN']`},{name:`url`,type:`string`,description:`Site URL in web, required for SSG & RSS`,descriptionZh:`站点的完整 URL,SSG & RSS 需要`,default:`'/'`},{name:`timezone`,type:`string`,description:`Timezone configuration`,descriptionZh:`时区配置,国内推荐使用 'Asia/Shanghai'`,default:`''`},{name:`title`,type:`string`,description:`Site title`,descriptionZh:`站点标题`},{name:`subtitle`,type:`string`,description:`Site subtitle`,descriptionZh:`副标题`},{name:`description`,type:`string`,description:`Site description`,descriptionZh:`站点描述`},{name:`author`,type:`object`,description:`The owner of this blog`,descriptionZh:`博客作者`,children:[{name:`name`,type:`string`,description:`Your name`,descriptionZh:`你的名字`},{name:`email`,type:`string`,description:`Your email`,descriptionZh:`邮箱`},{name:`link`,type:`string`,description:`Your profile link`,descriptionZh:`个人链接`},{name:`avatar`,type:`string`,description:`Avatar URL`,descriptionZh:`头像 URL`},{name:`intro`,type:`string`,description:`Personal introduction`,descriptionZh:`个人简介`},{name:`status`,type:`object`,description:`The status of you`,descriptionZh:`状态`,children:[{name:`emoji`,type:`string`,description:`Emoji representation of your status like '👨💻'`,descriptionZh:`你的状态的 Emoji 表示`},{name:`message`,type:`string`,description:`Show when hover emoji`,descriptionZh:`当鼠标悬浮在图标上时显示`}]}]},{name:`favicon`,type:`string`,description:`Icon for your website`,descriptionZh:`站点图标`},{name:`orderBy`,type:`'date' | 'updated'`,description:`Order posts by 'date' or 'updated'`,descriptionZh:`按创建时间或更新时间排序`,default:`'date'`},{name:`lastUpdated`,type:`boolean`,description:`Show last updated time by git/mtime`,descriptionZh:`显示最后更新时间`,default:`false`},{name:`pageSize`,type:`number`,description:`Posts per page`,descriptionZh:`每页显示的文章数`,default:`7`},{name:`search`,type:`object`,description:`Search engine for your site`,descriptionZh:`搜索功能`,children:[{name:`enable`,type:`boolean`,description:`Enable search`,descriptionZh:`是否启用`,default:`false`},{name:`provider`,type:`'algolia' | 'engine' | 'fuse' | 'local'`,description:`Search provider type`,descriptionZh:`搜索提供商类型`,default:`'fuse'`}]},{name:`comment`,type:`object`,description:`Comment system`,descriptionZh:`评论系统`,children:[{name:`enable`,type:`boolean`,description:`Enable comment`,descriptionZh:`启用评论`,default:`false`}]},{name:`feed`,type:`object`,description:`Feed configuration`,descriptionZh:`RSS 订阅配置`,children:[{name:`name`,type:`string`,description:`Feed file name`,descriptionZh:`订阅文件名`,default:`''`},{name:`favicon`,type:`string`,description:`Feed favicon`,descriptionZh:`订阅图标`,default:`'/favicon.svg'`}]},{name:`license`,type:`object`,description:`Post license configuration`,descriptionZh:`文章所使用的协议`,children:[{name:`enabled`,type:`boolean`,description:`Whether to show at the bottom of the article`,descriptionZh:`是否显示在文章底部`,default:`true`},{name:`language`,type:`string`,description:`Creative License Language`,descriptionZh:`协议语言,默认与站点语言相同`,default:`'en'`},{name:`type`,type:`'zero' | 'by-sa' | 'by-nd' | 'by-nc' | 'by-nc-sa' | 'by-nc-nd'`,description:`Type of license`,descriptionZh:`证书类型`,default:`'by-nc-sa'`}]},{name:`sponsor`,type:`object`,description:`Donate/sponsor configuration`,descriptionZh:`打赏/赞助`,children:[{name:`enable`,type:`boolean`,description:`Enable sponsor`,descriptionZh:`启用赞助`,default:`true`},{name:`title`,type:`string`,description:`Donate button title`,descriptionZh:`打赏按钮的 title 属性`},{name:`description`,type:`string`,description:`Donate content description`,descriptionZh:`打赏的描述内容`}]},{name:`excerpt`,type:`object`,description:`Excerpt configuration`,descriptionZh:`全局摘要配置`,children:[{name:`type`,type:`'html' | 'text'`,description:`Default excerpt render type`,descriptionZh:`默认摘要渲染类型`,default:`'html'`},{name:`auto`,type:`boolean`,description:`Auto-generate excerpt from post content`,descriptionZh:`自动从文章内容截取摘要`,default:`false`},{name:`length`,type:`number`,description:`Maximum length of auto-generated excerpt`,descriptionZh:`自动摘要的最大长度(字符数)`,default:`200`}]},{name:`cdn`,type:`object`,description:`CDN configuration for third-party plugins`,descriptionZh:`第三方插件 CDN 配置`,children:[{name:`prefix`,type:`string`,description:`CDN prefix URL`,descriptionZh:`CDN 前缀 URL`,default:`'https://unpkg.com/'`}]},{name:`mediumZoom`,type:`object`,description:`Image preview by medium-zoom`,descriptionZh:`图片预览 (medium-zoom)`,children:[{name:`enable`,type:`boolean`,description:`Enable image preview`,descriptionZh:`启用图片预览`,default:`false`}]},{name:`vanillaLazyload`,type:`object`,description:`Lazyload by vanilla-lazyload`,descriptionZh:`图片懒加载 (vanilla-lazyload)`,children:[{name:`enable`,type:`boolean`,description:`Enable lazy loading`,descriptionZh:`启用懒加载`,default:`false`}]},{name:`statistics`,type:`object`,description:`Statistics: reading time and word count`,descriptionZh:`统计阅读时间和字数`,children:[{name:`enable`,type:`boolean`,description:`Enable statistics`,descriptionZh:`启用统计`,default:`false`},{name:`readTime`,type:`object`,description:`Read time configuration`,descriptionZh:`阅读时间配置`,children:[{name:`speed`,type:`object`,description:`Reading speed`,descriptionZh:`阅读速度`,children:[{name:`cn`,type:`number`,description:`Chinese words per minute`,descriptionZh:`中文每分钟阅读字数`,default:`300`},{name:`en`,type:`number`,description:`English words per minute`,descriptionZh:`英文每分钟阅读字数`,default:`100`}]}]}]},{name:`encrypt`,type:`object`,description:`Encrypt article`,descriptionZh:`加密文章`,children:[{name:`enable`,type:`boolean`,description:`Enable encryption`,descriptionZh:`启用加密`,default:`false`},{name:`algorithm`,type:`string`,description:`Encryption algorithm`,descriptionZh:`加密算法`,default:`'AES-CBC'`}]},{name:`codeHeightLimit`,type:`number`,description:`Limit the height of code blocks in px`,descriptionZh:`限制代码块的高度,单位是 px`},{name:`llms`,type:`object`,description:`llms.txt and raw Markdown file output`,descriptionZh:`llms.txt 及原始 Markdown 文件输出`,children:[{name:`enable`,type:`boolean`,description:`Enable llms.txt and raw .md file output`,descriptionZh:`是否开启 llms.txt 和 .md 原始文件输出`,default:`false`},{name:`fullText`,type:`boolean`,description:`Whether to generate llms-full.txt`,descriptionZh:`是否生成 llms-full.txt`,default:`true`},{name:`files`,type:`boolean`,description:`Whether to generate individual .md files`,descriptionZh:`是否为每篇文章生成独立的 .md 文件`,default:`true`},{name:`prompt`,type:`string`,description:`Custom prompt text for llms.txt`,descriptionZh:`自定义提示词`,default:`''`}]}],valaxyConfig:[{name:`theme`,type:`string`,description:`The name of theme`,descriptionZh:`主题名称`},{name:`themeConfig`,type:`object`,description:`Theme-specific configuration`,descriptionZh:`主题配置,请参考对应主题的相关文档`}]},Z={key:0,class:`h-full flex items-center justify-center text-sm op-50`},Q={key:1,class:`h-full flex items-center justify-center text-sm op-50`},ne={class:`h-full flex flex-col`},re={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},ie={class:`text-sm font-bold flex-1`},ae={class:`flex items-center gap-1`},oe=[`disabled`],se={key:0,class:`px-3 pt-2`},ce={class:`flex gap-1 px-3 pt-3 pb-1 flex-wrap`},le=[`onClick`],ue={class:`flex-1 overflow-auto p-3`},de={key:0,class:`flex flex-col gap-4`},fe={key:1,class:`flex flex-col gap-4`},pe={key:2,class:`flex flex-col gap-4`},me={key:3,class:`flex flex-col gap-4`},he={key:4,class:`flex flex-col gap-4`},ge={key:0,class:`text-sm op-50`},_e={key:3,class:`flex flex-col gap-1.5`},ve={class:`text-sm font-medium`},ye={class:`px-2 py-1 bg-gray-1 dark:bg-dark rounded text-xs break-all`},be={class:`h-full flex flex-col`},xe={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},Se={class:`text-sm font-bold flex-1`},Ce={class:`text-xs op-40 tabular-nums`},we={class:`px-3 pt-2 pb-1`},Te={class:`flex-1 overflow-auto px-2 pb-2`},Ee={class:`flex flex-col gap-1.5 pt-1`},De=[`onClick`],Oe={class:`text-xs op-50 font-normal`},ke={key:0,class:`divide-y divide-gray-100 dark:divide-gray-800`},Ae={class:`flex items-start gap-1.5`},je={class:`flex-1 min-w-0`},Me={class:`flex items-center gap-1.5 flex-wrap`},Ne={class:`text-xs font-mono text-indigo-600 dark:text-indigo-400`},Pe={class:`text-xs op-40`},Fe={key:0,class:`text-xs op-40`},Ie={key:0,class:`text-xs op-60 mt-0.5 leading-relaxed`},Le={key:1,class:`mt-0.5`},Re={class:`text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded break-all`},ze={class:`flex items-center gap-0.5 flex-shrink-0`},Be=[`onClick`],Ve=[`onClick`],$={key:0,class:`border border-gray-200 dark:border-gray-700 rounded-lg overflow-hidden`},He={class:`text-xs op-50 font-normal`},Ue={key:0,class:`divide-y divide-gray-100 dark:divide-gray-800`},We={class:`flex items-start gap-1.5`},Ge={class:`flex-1 min-w-0`},Ke={class:`flex items-center gap-1.5`},qe={class:`text-xs font-mono text-indigo-600 dark:text-indigo-400`},Je={class:`text-xs op-40`},Ye={class:`mt-0.5`},Xe={class:`text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded break-all`},Ze=s({__name:`config`,setup(t){let{t:r,locale:s}=A(),y=m(`site`),b=m(``),S=m(new Set);function k(e){S.value.has(e)?S.value.delete(e):S.value.add(e)}function N(e,t){if(!O.value)return;let n=e===`site`?O.value.siteConfig:e===`theme`?O.value.themeConfig:O.value.valaxyConfig,r=t.split(`.`),i=n;for(let e of r){if(i==null)return;i=i[e]}return i}function F(e){return s.value===`zh-CN`&&e.descriptionZh?e.descriptionZh:e.description||``}function I(e,t,n,r){let i=[];for(let a of e){let e=t?`${t}.${a.name}`:a.name;i.push({path:e,name:a.name,type:a.type,description:a.description||``,descriptionZh:a.descriptionZh,default:a.default,section:n,configType:r,value:N(r,e)}),`children`in a&&a.children&&i.push(...I(a.children,e,n,r))}return i}let L=h(()=>{let e=I(X.siteConfig,``,`SiteConfig`,`site`),t=I(X.valaxyConfig,``,`ValaxyConfig`,`valaxy`);return[...e,...t]}),R=h(()=>{if(!b.value)return L.value;let e=b.value.toLowerCase();return L.value.filter(t=>t.path.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)||t.descriptionZh&&t.descriptionZh.toLowerCase().includes(e))}),z=h(()=>O.value?.themeConfig?Object.entries(O.value.themeConfig).filter(([e])=>e!==`pkg`):[]);async function B(e){let t=e.value,n=typeof t==`string`?`'${t}'`:JSON.stringify(t),r=`${e.path}: ${n}`;try{await navigator.clipboard.writeText(r)}catch{}}function V(e){if(!O.value)return;let t=e===`site`?O.value.siteConfigPath:O.value.valaxyConfigPath;t&&C({file:t})}let H=h(()=>[{value:`site`,label:r(`config.tab_site`),icon:`i-ri:global-line`},{value:`author`,label:r(`config.tab_author`),icon:`i-ri:user-line`},{value:`features`,label:r(`config.tab_features`),icon:`i-ri:flashlight-line`},{value:`build`,label:r(`config.tab_build`),icon:`i-ri:hammer-line`},{value:`theme`,label:r(`config.tab_theme`),icon:`i-ri:palette-line`}]);return(t,s)=>{let m=T,h=x,C=Y,A=G,I=te,L=ee,U=P,W=v;return d(E)&&!d(O)?(e(),a(`div`,Z,c(d(r)(`config.loading`)),1)):d(O)?(e(),u(d(M),{key:2,class:`h-full`},{default:i(()=>[_(d(j),{"min-size":`30`,size:`45`},{default:i(()=>[p(`div`,ne,[p(`div`,re,[p(`h3`,ie,c(d(r)(`config.quick_edit`)),1),p(`div`,ae,[_(m,{content:d(r)(`config.open_site_config`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center gap-1 px-1.5 py-0.5 text-xs rounded hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-400 transition-colors`,onClick:s[0]||=e=>V(`site`)},[...s[6]||=[p(`div`,{class:`i-ri:file-text-line text-xs`},null,-1),g(` site `,-1)]])]),_:1},8,[`content`]),_(m,{content:d(r)(`config.open_valaxy_config`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center gap-1 px-1.5 py-0.5 text-xs rounded hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-400 transition-colors`,onClick:s[1]||=e=>V(`valaxy`)},[...s[7]||=[p(`div`,{class:`i-ri:file-text-line text-xs`},null,-1),g(` valaxy `,-1)]])]),_:1},8,[`content`]),p(`button`,{class:`inline-flex items-center justify-center w-6 h-6 text-xs rounded hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-400 transition-colors`,disabled:d(E),onClick:s[2]||=(...e)=>d(D)&&d(D)(...e)},[p(`div`,{class:o([`i-ri:refresh-line`,{"animate-spin":d(E)}])},null,2)],8,oe)])]),d(w)?(e(),a(`div`,se,[_(h,{severity:d(w).type===`success`?`success`:`error`,closable:``},{default:i(()=>[g(c(d(w).text),1)]),_:1},8,[`severity`])])):l(``,!0),p(`div`,ce,[(e(!0),a(f,null,n(H.value,t=>(e(),a(`button`,{key:t.value,class:o([`inline-flex items-center gap-1 px-2 py-1 text-xs rounded-md border transition-colors`,y.value===t.value?`bg-indigo-50 dark:bg-indigo-900/30 border-indigo-200 dark:border-indigo-800 text-indigo-600 dark:text-indigo-400`:`border-gray-200 dark:border-gray-700 text-gray-500 dark:text-gray-400 hover:bg-gray-50 dark:hover:bg-gray-800`]),onClick:e=>y.value=t.value},[p(`div`,{class:o([t.icon,`text-xs`])},null,2),g(` `+c(t.label),1)],10,le))),128))]),p(`div`,ue,[y.value===`site`?(e(),a(`div`,de,[_(C,{"config-type":`site`,field:`title`,label:d(r)(`config.field_title`),description:F({description:`Site title`,descriptionZh:`站点标题`}),"model-value":N(`site`,`title`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`subtitle`,label:d(r)(`config.field_subtitle`),description:F({description:`Site subtitle`,descriptionZh:`副标题`}),"model-value":N(`site`,`subtitle`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`description`,label:d(r)(`config.field_description`),description:F({description:`Site description`,descriptionZh:`站点描述`}),"model-value":N(`site`,`description`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`url`,label:d(r)(`config.field_url`),description:F({description:`Site URL, required for SSG & RSS`,descriptionZh:`站点 URL,SSG 和 RSS 需要`}),"model-value":N(`site`,`url`),placeholder:`https://example.com`,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`mode`,label:d(r)(`config.field_mode`),description:F({description:`Light/Dark mode`,descriptionZh:`亮色/暗色模式`}),"model-value":N(`site`,`mode`)||`auto`,options:[{label:`Auto`,value:`auto`},{label:`Light`,value:`light`},{label:`Dark`,value:`dark`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`lang`,label:d(r)(`config.field_lang`),description:F({description:`Default language`,descriptionZh:`默认语言`}),"model-value":N(`site`,`lang`),placeholder:`en`,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`favicon`,label:d(r)(`config.field_favicon`),description:F({description:`Website icon`,descriptionZh:`站点图标`}),"model-value":N(`site`,`favicon`),placeholder:`/favicon.svg`,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(I,{"config-type":`site`,field:`pageSize`,label:d(r)(`config.field_page_size`),description:F({description:`Posts per page`,descriptionZh:`每页显示文章数`}),"model-value":N(`site`,`pageSize`),min:1,max:100,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])])):y.value===`author`?(e(),a(`div`,fe,[_(C,{"config-type":`site`,field:`author.name`,label:d(r)(`config.field_author_name`),description:F({description:`Your name`,descriptionZh:`你的名字`}),"model-value":N(`site`,`author.name`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.email`,label:d(r)(`config.field_author_email`),description:F({description:`Your email`,descriptionZh:`邮箱`}),"model-value":N(`site`,`author.email`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.link`,label:d(r)(`config.field_author_link`),description:F({description:`Your profile link`,descriptionZh:`个人链接`}),"model-value":N(`site`,`author.link`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.avatar`,label:d(r)(`config.field_author_avatar`),description:F({description:`Avatar URL`,descriptionZh:`头像 URL`}),"model-value":N(`site`,`author.avatar`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.intro`,label:d(r)(`config.field_author_intro`),description:F({description:`Personal introduction`,descriptionZh:`个人简介`}),"model-value":N(`site`,`author.intro`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(L,{title:d(r)(`config.field_author_status`),icon:`i-ri:emotion-line`},{default:i(()=>[_(C,{"config-type":`site`,field:`author.status.emoji`,label:d(r)(`config.field_status_emoji`),description:F({description:`Status emoji`,descriptionZh:`状态 Emoji`}),"model-value":N(`site`,`author.status.emoji`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.status.message`,label:d(r)(`config.field_status_message`),description:F({description:`Hover message`,descriptionZh:`悬浮消息`}),"model-value":N(`site`,`author.status.message`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`])])):y.value===`features`?(e(),a(`div`,pe,[_(L,{title:d(r)(`config.group_search`),icon:`i-ri:search-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`search.enable`,label:d(r)(`config.field_search_enable`),description:F({description:`Enable search`,descriptionZh:`启用搜索`}),"model-value":N(`site`,`search.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`search.provider`,label:d(r)(`config.field_search_provider`),description:F({description:`Search provider`,descriptionZh:`搜索提供商`}),"model-value":N(`site`,`search.provider`)||`fuse`,options:[{label:`Fuse (Local)`,value:`fuse`},{label:`Algolia`,value:`algolia`},{label:`Engine`,value:`engine`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_comment`),icon:`i-ri:chat-3-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`comment.enable`,label:d(r)(`config.field_comment_enable`),description:F({description:`Enable comment`,descriptionZh:`启用评论`}),"model-value":N(`site`,`comment.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_license`),icon:`i-ri:copyright-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`license.enabled`,label:d(r)(`config.field_license_enabled`),description:F({description:`Show license`,descriptionZh:`显示协议`}),"model-value":N(`site`,`license.enabled`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`license.type`,label:d(r)(`config.field_license_type`),description:F({description:`License type`,descriptionZh:`协议类型`}),"model-value":N(`site`,`license.type`)||`by-nc-sa`,options:[{label:`CC BY-NC-SA`,value:`by-nc-sa`},{label:`CC BY-SA`,value:`by-sa`},{label:`CC BY-NC`,value:`by-nc`},{label:`CC BY-NC-ND`,value:`by-nc-nd`},{label:`CC BY-ND`,value:`by-nd`},{label:`CC0`,value:`zero`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_sponsor`),icon:`i-ri:heart-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`sponsor.enable`,label:d(r)(`config.field_sponsor_enable`),description:F({description:`Enable sponsor`,descriptionZh:`启用赞助`}),"model-value":N(`site`,`sponsor.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_general`),icon:`i-ri:settings-3-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`lastUpdated`,label:d(r)(`config.field_last_updated`),description:F({description:`Show last updated time`,descriptionZh:`显示最后更新时间`}),"model-value":N(`site`,`lastUpdated`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(U,{"config-type":`site`,field:`statistics.enable`,label:d(r)(`config.field_statistics_enable`),description:F({description:`Enable reading statistics`,descriptionZh:`启用阅读统计`}),"model-value":N(`site`,`statistics.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(U,{"config-type":`site`,field:`mediumZoom.enable`,label:d(r)(`config.field_medium_zoom`),description:F({description:`Enable image preview`,descriptionZh:`启用图片预览`}),"model-value":N(`site`,`mediumZoom.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_llms`),icon:`i-ri:robot-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`llms.enable`,label:d(r)(`config.field_llms_enable`),description:F({description:`Enable llms.txt output`,descriptionZh:`启用 llms.txt 输出`}),"model-value":N(`site`,`llms.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(U,{"config-type":`site`,field:`llms.fullText`,label:d(r)(`config.field_llms_full_text`),description:F({description:`Generate llms-full.txt`,descriptionZh:`生成 llms-full.txt`}),"model-value":N(`site`,`llms.fullText`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`])])):y.value===`build`?(e(),a(`div`,me,[_(C,{"config-type":`valaxy`,field:`theme`,label:d(r)(`config.field_theme`),description:F({description:`Theme name`,descriptionZh:`主题名称`}),"model-value":N(`valaxy`,`theme`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`orderBy`,label:d(r)(`config.field_order_by`),description:F({description:`Post ordering`,descriptionZh:`文章排序方式`}),"model-value":N(`site`,`orderBy`)||`date`,options:[{label:`Date`,value:`date`},{label:`Updated`,value:`updated`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(L,{title:d(r)(`config.group_excerpt`),icon:`i-ri:file-text-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`excerpt.auto`,label:d(r)(`config.field_excerpt_auto`),description:F({description:`Auto-generate excerpt`,descriptionZh:`自动生成摘要`}),"model-value":N(`site`,`excerpt.auto`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(I,{"config-type":`site`,field:`excerpt.length`,label:d(r)(`config.field_excerpt_length`),description:F({description:`Max excerpt length`,descriptionZh:`摘要最大长度`}),"model-value":N(`site`,`excerpt.length`),min:50,max:1e3,step:50,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`])])):y.value===`theme`?(e(),a(`div`,he,[z.value.length===0?(e(),a(`p`,ge,c(d(r)(`config.no_theme_config`)),1)):l(``,!0),(e(!0),a(f,null,n(z.value,([t,n])=>(e(),a(f,{key:t},[typeof n==`string`?(e(),u(C,{key:0,"config-type":`theme`,field:t,label:t,"model-value":n,onSaved:d(D)},null,8,[`field`,`label`,`model-value`,`onSaved`])):typeof n==`boolean`?(e(),u(U,{key:1,"config-type":`theme`,field:t,label:t,"model-value":n,onSaved:d(D)},null,8,[`field`,`label`,`model-value`,`onSaved`])):typeof n==`number`?(e(),u(I,{key:2,"config-type":`theme`,field:t,label:t,"model-value":n,onSaved:d(D)},null,8,[`field`,`label`,`model-value`,`onSaved`])):(e(),a(`div`,_e,[p(`label`,ve,c(t),1),p(`code`,ye,c(JSON.stringify(n)),1)]))],64))),128))])):l(``,!0)])])]),_:1}),_(d(j),null,{default:i(()=>[p(`div`,be,[p(`div`,xe,[p(`h3`,Se,c(d(r)(`config.all_options`)),1),p(`span`,Ce,c(R.value.length),1)]),p(`div`,we,[_(W,{modelValue:b.value,"onUpdate:modelValue":s[3]||=e=>b.value=e,placeholder:d(r)(`config.search_placeholder`),size:`sm`,class:`w-full`},null,8,[`modelValue`,`placeholder`])]),p(`div`,Te,[p(`div`,Ee,[(e(),a(f,null,n([`SiteConfig`,`ValaxyConfig`],t=>p(`div`,{key:t,class:`border border-gray-200 dark:border-gray-700 rounded-lg overflow-hidden`},[p(`button`,{class:`w-full flex items-center gap-2 px-3 py-1.5 text-xs font-bold bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors text-left`,onClick:e=>k(t)},[p(`div`,{class:o([`i-ri:arrow-right-s-line text-xs transition-transform`,{"rotate-90":!S.value.has(t)}])},null,2),g(` `+c(t)+` `,1),p(`span`,Oe,` (`+c(R.value.filter(e=>e.section===t).length)+`) `,1)],8,De),S.value.has(t)?l(``,!0):(e(),a(`div`,ke,[(e(!0),a(f,null,n(R.value.filter(e=>e.section===t),t=>(e(),a(`div`,{key:t.path,class:`px-3 py-1.5 hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors`},[p(`div`,Ae,[p(`div`,je,[p(`div`,Me,[p(`code`,Ne,c(t.path),1),p(`span`,Pe,`(`+c(t.type)+`)`,1),t.default?(e(),a(`span`,Fe,` = `+c(t.default),1)):l(``,!0)]),F(t)?(e(),a(`p`,Ie,c(F(t)),1)):l(``,!0),t.value===void 0?l(``,!0):(e(),a(`div`,Le,[p(`code`,Re,c(typeof t.value==`object`?JSON.stringify(t.value):String(t.value)),1)]))]),p(`div`,ze,[_(m,{content:d(r)(`config.copy_snippet`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center justify-center w-5 h-5 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors`,onClick:e=>B(t)},[...s[8]||=[p(`div`,{class:`i-ri:clipboard-line text-xs`},null,-1)]],8,Be)]),_:2},1032,[`content`]),_(m,{content:d(r)(`config.open_in_editor`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center justify-center w-5 h-5 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors`,onClick:e=>V(t.configType)},[...s[9]||=[p(`div`,{class:`i-ri:edit-line text-xs`},null,-1)]],8,Ve)]),_:2},1032,[`content`])])])]))),128))]))])),64)),z.value.length>0?(e(),a(`div`,$,[p(`button`,{class:`w-full flex items-center gap-2 px-3 py-1.5 text-xs font-bold bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors text-left`,onClick:s[4]||=e=>k(`ThemeConfig`)},[p(`div`,{class:o([`i-ri:arrow-right-s-line text-xs transition-transform`,{"rotate-90":!S.value.has(`ThemeConfig`)}])},null,2),s[10]||=g(` ThemeConfig `,-1),p(`span`,He,` (`+c(z.value.length)+`) `,1)]),S.value.has(`ThemeConfig`)?l(``,!0):(e(),a(`div`,Ue,[(e(!0),a(f,null,n(z.value,([t,n])=>(e(),a(`div`,{key:t,class:`px-3 py-1.5 hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors`},[p(`div`,We,[p(`div`,Ge,[p(`div`,Ke,[p(`code`,qe,` themeConfig.`+c(t),1),p(`span`,Je,`(`+c(typeof n)+`)`,1)]),p(`div`,Ye,[p(`code`,Xe,c(typeof n==`object`?JSON.stringify(n):String(n)),1)])]),_(m,{content:d(r)(`config.open_in_editor`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center justify-center w-5 h-5 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors`,onClick:s[5]||=e=>V(`valaxy`)},[...s[11]||=[p(`div`,{class:`i-ri:edit-line text-xs`},null,-1)]])]),_:1},8,[`content`])])]))),128))]))])):l(``,!0)])])])]),_:1})]),_:1})):(e(),a(`div`,Q,c(d(r)(`config.no_data`)),1))}}});export{Ze as default};
|
|
1
|
+
import{F as e,G as t,L as n,R as r,Y as i,_ as a,_t as o,b as s,bt as c,g as l,h as u,ht as d,l as f,m as p,ot as m,p as h,v as g,y as _}from"./vue.runtime.esm-bundler-DwHYEKV3.js";import{t as v}from"./VDInput-BLj759AK.js";import{t as y}from"./VDNumberField-Bsn0V2xE.js";import{t as b}from"./VDSelect-C350Cdu8.js";import{n as x,t as S}from"./VDCheckbox-Cc1_70TJ.js";import{t as C}from"./api-cJTeRRR-.js";import{a as w,c as T,i as E,o as D,r as O,s as k,u as A}from"./index-BSCrFaU_.js";import{n as j,t as M}from"./splitpanes.es-DbWSeMt3.js";var N={class:`flex items-center gap-2`},P=s({__name:`ConfigFieldCheckbox`,props:{configType:{},field:{},label:{},description:{},modelValue:{type:Boolean}},emits:[`saved`],setup(t,{emit:n}){let r=t,o=n;async function s(){let e=!r.modelValue;await k(r.configType,r.field,e),o(`saved`)}return(n,r)=>{let o=S,d=T;return e(),a(`div`,N,[_(o,{"model-value":t.modelValue??!1,"onUpdate:modelValue":s},null,8,[`model-value`]),p(`label`,{class:`text-sm font-medium cursor-pointer`,onClick:s},c(t.label),1),t.description?(e(),u(d,{key:0,content:t.description,side:`right`},{default:i(()=>[...r[0]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)])}}}),F={class:`config-field-group`},I={class:`flex items-center gap-2 mb-3`},L={class:`text-sm font-bold text-gray-700 dark:text-gray-200`},R={class:`flex flex-col gap-4 pl-1`},ee=s({__name:`ConfigFieldGroup`,props:{title:{},icon:{}},setup(t){return(n,i)=>(e(),a(`div`,F,[p(`div`,I,[t.icon?(e(),a(`div`,{key:0,class:o([t.icon,`text-base text-indigo-500`])},null,2)):l(``,!0),p(`h4`,L,c(t.title),1)]),p(`div`,R,[r(n.$slots,`default`)])]))}}),z={class:`flex flex-col gap-1.5`},B={class:`flex items-center gap-1.5`},V={class:`text-sm font-medium`},te=s({__name:`ConfigFieldNumber`,props:{configType:{},field:{},label:{},description:{},modelValue:{},min:{},max:{},step:{}},emits:[`saved`],setup(n,{emit:r}){let o=n,s=r,d=m(o.modelValue??0);t(()=>o.modelValue,e=>{d.value=e??0});async function f(){d.value!==(o.modelValue??0)&&(await k(o.configType,o.field,d.value),s(`saved`))}return(t,r)=>{let o=T,s=y;return e(),a(`div`,z,[p(`div`,B,[p(`label`,V,c(n.label),1),n.description?(e(),u(o,{key:0,content:n.description,side:`right`},{default:i(()=>[...r[1]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)]),_(s,{modelValue:d.value,"onUpdate:modelValue":[r[0]||=e=>d.value=e,f],min:n.min,max:n.max,step:n.step},null,8,[`modelValue`,`min`,`max`,`step`])])}}}),H={class:`flex flex-col gap-1.5`},U={class:`flex items-center gap-1.5`},W={class:`text-sm font-medium`},G=s({__name:`ConfigFieldSelect`,props:{configType:{},field:{},label:{},description:{},modelValue:{},options:{}},emits:[`saved`],setup(t,{emit:n}){let r=t,o=n;async function s(e){e!==r.modelValue&&(await k(r.configType,r.field,e),o(`saved`))}return(n,r)=>{let o=T,d=b;return e(),a(`div`,H,[p(`div`,U,[p(`label`,W,c(t.label),1),t.description?(e(),u(o,{key:0,content:t.description,side:`right`},{default:i(()=>[...r[0]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)]),_(d,{"model-value":t.modelValue,options:t.options,class:`w-48`,"onUpdate:modelValue":s},null,8,[`model-value`,`options`])])}}}),K={class:`flex flex-col gap-1.5`},q={class:`flex items-center gap-1.5`},J={class:`text-sm font-medium`},Y=s({__name:`ConfigFieldInput`,props:{configType:{},field:{},label:{},description:{},placeholder:{},modelValue:{}},emits:[`saved`],setup(n,{emit:r}){let o=n,s=r,d=m(o.modelValue??``);t(()=>o.modelValue,e=>{d.value=e??``});async function f(){d.value!==(o.modelValue??``)&&(await k(o.configType,o.field,d.value),s(`saved`))}function h(e){e.key===`Enter`&&f()}return(t,r)=>{let o=T,s=v;return e(),a(`div`,K,[p(`div`,q,[p(`label`,J,c(n.label),1),n.description?(e(),u(o,{key:0,content:n.description,side:`right`},{default:i(()=>[...r[1]||=[p(`div`,{class:`i-ri:information-line text-xs op-40 cursor-help`},null,-1)]]),_:1},8,[`content`])):l(``,!0)]),_(s,{modelValue:d.value,"onUpdate:modelValue":r[0]||=e=>d.value=e,placeholder:n.placeholder,size:`md`,onBlur:f,onKeydown:h},null,8,[`modelValue`,`placeholder`])])}}}),X={generated:`2026-03-23T00:00:00.000Z`,siteConfig:[{name:`mode`,type:`'light' | 'dark' | 'auto'`,description:`Enable auto light/dark mode`,descriptionZh:`启用自动亮色/暗色模式`,default:`'auto'`},{name:`lang`,type:`string`,description:`Default language`,descriptionZh:`默认语言,设置 'zh-CN' 以改变默认语言为中文`,default:`'en'`},{name:`languages`,type:`string[]`,description:`Alternative languages`,descriptionZh:`可选语言`,default:`['en', 'zh-CN']`},{name:`url`,type:`string`,description:`Site URL in web, required for SSG & RSS`,descriptionZh:`站点的完整 URL,SSG & RSS 需要`,default:`'/'`},{name:`timezone`,type:`string`,description:`Timezone configuration`,descriptionZh:`时区配置,国内推荐使用 'Asia/Shanghai'`,default:`''`},{name:`title`,type:`string`,description:`Site title`,descriptionZh:`站点标题`},{name:`subtitle`,type:`string`,description:`Site subtitle`,descriptionZh:`副标题`},{name:`description`,type:`string`,description:`Site description`,descriptionZh:`站点描述`},{name:`author`,type:`object`,description:`The owner of this blog`,descriptionZh:`博客作者`,children:[{name:`name`,type:`string`,description:`Your name`,descriptionZh:`你的名字`},{name:`email`,type:`string`,description:`Your email`,descriptionZh:`邮箱`},{name:`link`,type:`string`,description:`Your profile link`,descriptionZh:`个人链接`},{name:`avatar`,type:`string`,description:`Avatar URL`,descriptionZh:`头像 URL`},{name:`intro`,type:`string`,description:`Personal introduction`,descriptionZh:`个人简介`},{name:`status`,type:`object`,description:`The status of you`,descriptionZh:`状态`,children:[{name:`emoji`,type:`string`,description:`Emoji representation of your status like '👨💻'`,descriptionZh:`你的状态的 Emoji 表示`},{name:`message`,type:`string`,description:`Show when hover emoji`,descriptionZh:`当鼠标悬浮在图标上时显示`}]}]},{name:`favicon`,type:`string`,description:`Icon for your website`,descriptionZh:`站点图标`},{name:`orderBy`,type:`'date' | 'updated'`,description:`Order posts by 'date' or 'updated'`,descriptionZh:`按创建时间或更新时间排序`,default:`'date'`},{name:`lastUpdated`,type:`boolean`,description:`Show last updated time by git/mtime`,descriptionZh:`显示最后更新时间`,default:`false`},{name:`pageSize`,type:`number`,description:`Posts per page`,descriptionZh:`每页显示的文章数`,default:`7`},{name:`search`,type:`object`,description:`Search engine for your site`,descriptionZh:`搜索功能`,children:[{name:`enable`,type:`boolean`,description:`Enable search`,descriptionZh:`是否启用`,default:`false`},{name:`provider`,type:`'algolia' | 'engine' | 'fuse' | 'local'`,description:`Search provider type`,descriptionZh:`搜索提供商类型`,default:`'fuse'`}]},{name:`comment`,type:`object`,description:`Comment system`,descriptionZh:`评论系统`,children:[{name:`enable`,type:`boolean`,description:`Enable comment`,descriptionZh:`启用评论`,default:`false`}]},{name:`feed`,type:`object`,description:`Feed configuration`,descriptionZh:`RSS 订阅配置`,children:[{name:`name`,type:`string`,description:`Feed file name`,descriptionZh:`订阅文件名`,default:`''`},{name:`favicon`,type:`string`,description:`Feed favicon`,descriptionZh:`订阅图标`,default:`'/favicon.svg'`}]},{name:`license`,type:`object`,description:`Post license configuration`,descriptionZh:`文章所使用的协议`,children:[{name:`enabled`,type:`boolean`,description:`Whether to show at the bottom of the article`,descriptionZh:`是否显示在文章底部`,default:`true`},{name:`language`,type:`string`,description:`Creative License Language`,descriptionZh:`协议语言,默认与站点语言相同`,default:`'en'`},{name:`type`,type:`'zero' | 'by-sa' | 'by-nd' | 'by-nc' | 'by-nc-sa' | 'by-nc-nd'`,description:`Type of license`,descriptionZh:`证书类型`,default:`'by-nc-sa'`}]},{name:`sponsor`,type:`object`,description:`Donate/sponsor configuration`,descriptionZh:`打赏/赞助`,children:[{name:`enable`,type:`boolean`,description:`Enable sponsor`,descriptionZh:`启用赞助`,default:`true`},{name:`title`,type:`string`,description:`Donate button title`,descriptionZh:`打赏按钮的 title 属性`},{name:`description`,type:`string`,description:`Donate content description`,descriptionZh:`打赏的描述内容`}]},{name:`excerpt`,type:`object`,description:`Excerpt configuration`,descriptionZh:`全局摘要配置`,children:[{name:`type`,type:`'html' | 'text'`,description:`Default excerpt render type`,descriptionZh:`默认摘要渲染类型`,default:`'html'`},{name:`auto`,type:`boolean`,description:`Auto-generate excerpt from post content`,descriptionZh:`自动从文章内容截取摘要`,default:`false`},{name:`length`,type:`number`,description:`Maximum length of auto-generated excerpt`,descriptionZh:`自动摘要的最大长度(字符数)`,default:`200`}]},{name:`cdn`,type:`object`,description:`CDN configuration for third-party plugins`,descriptionZh:`第三方插件 CDN 配置`,children:[{name:`prefix`,type:`string`,description:`CDN prefix URL`,descriptionZh:`CDN 前缀 URL`,default:`'https://unpkg.com/'`}]},{name:`mediumZoom`,type:`object`,description:`Image preview by medium-zoom`,descriptionZh:`图片预览 (medium-zoom)`,children:[{name:`enable`,type:`boolean`,description:`Enable image preview`,descriptionZh:`启用图片预览`,default:`false`}]},{name:`vanillaLazyload`,type:`object`,description:`Lazyload by vanilla-lazyload`,descriptionZh:`图片懒加载 (vanilla-lazyload)`,children:[{name:`enable`,type:`boolean`,description:`Enable lazy loading`,descriptionZh:`启用懒加载`,default:`false`}]},{name:`statistics`,type:`object`,description:`Statistics: reading time and word count`,descriptionZh:`统计阅读时间和字数`,children:[{name:`enable`,type:`boolean`,description:`Enable statistics`,descriptionZh:`启用统计`,default:`false`},{name:`readTime`,type:`object`,description:`Read time configuration`,descriptionZh:`阅读时间配置`,children:[{name:`speed`,type:`object`,description:`Reading speed`,descriptionZh:`阅读速度`,children:[{name:`cn`,type:`number`,description:`Chinese words per minute`,descriptionZh:`中文每分钟阅读字数`,default:`300`},{name:`en`,type:`number`,description:`English words per minute`,descriptionZh:`英文每分钟阅读字数`,default:`100`}]}]}]},{name:`encrypt`,type:`object`,description:`Encrypt article`,descriptionZh:`加密文章`,children:[{name:`enable`,type:`boolean`,description:`Enable encryption`,descriptionZh:`启用加密`,default:`false`},{name:`algorithm`,type:`string`,description:`Encryption algorithm`,descriptionZh:`加密算法`,default:`'AES-CBC'`}]},{name:`codeHeightLimit`,type:`number`,description:`Limit the height of code blocks in px`,descriptionZh:`限制代码块的高度,单位是 px`},{name:`llms`,type:`object`,description:`llms.txt and raw Markdown file output`,descriptionZh:`llms.txt 及原始 Markdown 文件输出`,children:[{name:`enable`,type:`boolean`,description:`Enable llms.txt and raw .md file output`,descriptionZh:`是否开启 llms.txt 和 .md 原始文件输出`,default:`false`},{name:`fullText`,type:`boolean`,description:`Whether to generate llms-full.txt`,descriptionZh:`是否生成 llms-full.txt`,default:`true`},{name:`files`,type:`boolean`,description:`Whether to generate individual .md files`,descriptionZh:`是否为每篇文章生成独立的 .md 文件`,default:`true`},{name:`prompt`,type:`string`,description:`Custom prompt text for llms.txt`,descriptionZh:`自定义提示词`,default:`''`}]}],valaxyConfig:[{name:`theme`,type:`string`,description:`The name of theme`,descriptionZh:`主题名称`},{name:`themeConfig`,type:`object`,description:`Theme-specific configuration`,descriptionZh:`主题配置,请参考对应主题的相关文档`}]},Z={key:0,class:`h-full flex items-center justify-center text-sm op-50`},Q={key:1,class:`h-full flex items-center justify-center text-sm op-50`},ne={class:`h-full flex flex-col`},re={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},ie={class:`text-sm font-bold flex-1`},ae={class:`flex items-center gap-1`},oe=[`disabled`],se={key:0,class:`px-3 pt-2`},ce={class:`flex gap-1 px-3 pt-3 pb-1 flex-wrap`},le=[`onClick`],ue={class:`flex-1 overflow-auto p-3`},de={key:0,class:`flex flex-col gap-4`},fe={key:1,class:`flex flex-col gap-4`},pe={key:2,class:`flex flex-col gap-4`},me={key:3,class:`flex flex-col gap-4`},he={key:4,class:`flex flex-col gap-4`},ge={key:0,class:`text-sm op-50`},_e={key:3,class:`flex flex-col gap-1.5`},ve={class:`text-sm font-medium`},ye={class:`px-2 py-1 bg-gray-1 dark:bg-dark rounded text-xs break-all`},be={class:`h-full flex flex-col`},xe={class:`flex items-center gap-2 px-3 py-2 border-b border-gray-100 dark:border-gray-800`},Se={class:`text-sm font-bold flex-1`},Ce={class:`text-xs op-40 tabular-nums`},we={class:`px-3 pt-2 pb-1`},Te={class:`flex-1 overflow-auto px-2 pb-2`},Ee={class:`flex flex-col gap-1.5 pt-1`},De=[`onClick`],Oe={class:`text-xs op-50 font-normal`},ke={key:0,class:`divide-y divide-gray-100 dark:divide-gray-800`},Ae={class:`flex items-start gap-1.5`},je={class:`flex-1 min-w-0`},Me={class:`flex items-center gap-1.5 flex-wrap`},Ne={class:`text-xs font-mono text-indigo-600 dark:text-indigo-400`},Pe={class:`text-xs op-40`},Fe={key:0,class:`text-xs op-40`},Ie={key:0,class:`text-xs op-60 mt-0.5 leading-relaxed`},Le={key:1,class:`mt-0.5`},Re={class:`text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded break-all`},ze={class:`flex items-center gap-0.5 flex-shrink-0`},Be=[`onClick`],Ve=[`onClick`],$={key:0,class:`border border-gray-200 dark:border-gray-700 rounded-lg overflow-hidden`},He={class:`text-xs op-50 font-normal`},Ue={key:0,class:`divide-y divide-gray-100 dark:divide-gray-800`},We={class:`flex items-start gap-1.5`},Ge={class:`flex-1 min-w-0`},Ke={class:`flex items-center gap-1.5`},qe={class:`text-xs font-mono text-indigo-600 dark:text-indigo-400`},Je={class:`text-xs op-40`},Ye={class:`mt-0.5`},Xe={class:`text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded break-all`},Ze=s({__name:`config`,setup(t){let{t:r,locale:s}=A(),y=m(`site`),b=m(``),S=m(new Set);function k(e){S.value.has(e)?S.value.delete(e):S.value.add(e)}function N(e,t){if(!O.value)return;let n=e===`site`?O.value.siteConfig:e===`theme`?O.value.themeConfig:O.value.valaxyConfig,r=t.split(`.`),i=n;for(let e of r){if(i==null)return;i=i[e]}return i}function F(e){return s.value===`zh-CN`&&e.descriptionZh?e.descriptionZh:e.description||``}function I(e,t,n,r){let i=[];for(let a of e){let e=t?`${t}.${a.name}`:a.name;i.push({path:e,name:a.name,type:a.type,description:a.description||``,descriptionZh:a.descriptionZh,default:a.default,section:n,configType:r,value:N(r,e)}),`children`in a&&a.children&&i.push(...I(a.children,e,n,r))}return i}let L=h(()=>{let e=I(X.siteConfig,``,`SiteConfig`,`site`),t=I(X.valaxyConfig,``,`ValaxyConfig`,`valaxy`);return[...e,...t]}),R=h(()=>{if(!b.value)return L.value;let e=b.value.toLowerCase();return L.value.filter(t=>t.path.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)||t.descriptionZh&&t.descriptionZh.toLowerCase().includes(e))}),z=h(()=>O.value?.themeConfig?Object.entries(O.value.themeConfig).filter(([e])=>e!==`pkg`):[]);async function B(e){let t=e.value,n=typeof t==`string`?`'${t}'`:JSON.stringify(t),r=`${e.path}: ${n}`;try{await navigator.clipboard.writeText(r)}catch{}}function V(e){if(!O.value)return;let t=e===`site`?O.value.siteConfigPath:O.value.valaxyConfigPath;t&&C({file:t})}let H=h(()=>[{value:`site`,label:r(`config.tab_site`),icon:`i-ri:global-line`},{value:`author`,label:r(`config.tab_author`),icon:`i-ri:user-line`},{value:`features`,label:r(`config.tab_features`),icon:`i-ri:flashlight-line`},{value:`build`,label:r(`config.tab_build`),icon:`i-ri:hammer-line`},{value:`theme`,label:r(`config.tab_theme`),icon:`i-ri:palette-line`}]);return(t,s)=>{let m=T,h=x,C=Y,A=G,I=te,L=ee,U=P,W=v;return d(E)&&!d(O)?(e(),a(`div`,Z,c(d(r)(`config.loading`)),1)):d(O)?(e(),u(d(M),{key:2,class:`h-full`},{default:i(()=>[_(d(j),{"min-size":`30`,size:`45`},{default:i(()=>[p(`div`,ne,[p(`div`,re,[p(`h3`,ie,c(d(r)(`config.quick_edit`)),1),p(`div`,ae,[_(m,{content:d(r)(`config.open_site_config`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center gap-1 px-1.5 py-0.5 text-xs rounded hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-400 transition-colors`,onClick:s[0]||=e=>V(`site`)},[...s[6]||=[p(`div`,{class:`i-ri:file-text-line text-xs`},null,-1),g(` site `,-1)]])]),_:1},8,[`content`]),_(m,{content:d(r)(`config.open_valaxy_config`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center gap-1 px-1.5 py-0.5 text-xs rounded hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-400 transition-colors`,onClick:s[1]||=e=>V(`valaxy`)},[...s[7]||=[p(`div`,{class:`i-ri:file-text-line text-xs`},null,-1),g(` valaxy `,-1)]])]),_:1},8,[`content`]),p(`button`,{class:`inline-flex items-center justify-center w-6 h-6 text-xs rounded hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-400 transition-colors`,disabled:d(E),onClick:s[2]||=(...e)=>d(D)&&d(D)(...e)},[p(`div`,{class:o([`i-ri:refresh-line`,{"animate-spin":d(E)}])},null,2)],8,oe)])]),d(w)?(e(),a(`div`,se,[_(h,{severity:d(w).type===`success`?`success`:`error`,closable:``},{default:i(()=>[g(c(d(w).text),1)]),_:1},8,[`severity`])])):l(``,!0),p(`div`,ce,[(e(!0),a(f,null,n(H.value,t=>(e(),a(`button`,{key:t.value,class:o([`inline-flex items-center gap-1 px-2 py-1 text-xs rounded-md border transition-colors`,y.value===t.value?`bg-indigo-50 dark:bg-indigo-900/30 border-indigo-200 dark:border-indigo-800 text-indigo-600 dark:text-indigo-400`:`border-gray-200 dark:border-gray-700 text-gray-500 dark:text-gray-400 hover:bg-gray-50 dark:hover:bg-gray-800`]),onClick:e=>y.value=t.value},[p(`div`,{class:o([t.icon,`text-xs`])},null,2),g(` `+c(t.label),1)],10,le))),128))]),p(`div`,ue,[y.value===`site`?(e(),a(`div`,de,[_(C,{"config-type":`site`,field:`title`,label:d(r)(`config.field_title`),description:F({description:`Site title`,descriptionZh:`站点标题`}),"model-value":N(`site`,`title`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`subtitle`,label:d(r)(`config.field_subtitle`),description:F({description:`Site subtitle`,descriptionZh:`副标题`}),"model-value":N(`site`,`subtitle`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`description`,label:d(r)(`config.field_description`),description:F({description:`Site description`,descriptionZh:`站点描述`}),"model-value":N(`site`,`description`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`url`,label:d(r)(`config.field_url`),description:F({description:`Site URL, required for SSG & RSS`,descriptionZh:`站点 URL,SSG 和 RSS 需要`}),"model-value":N(`site`,`url`),placeholder:`https://example.com`,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`mode`,label:d(r)(`config.field_mode`),description:F({description:`Light/Dark mode`,descriptionZh:`亮色/暗色模式`}),"model-value":N(`site`,`mode`)||`auto`,options:[{label:`Auto`,value:`auto`},{label:`Light`,value:`light`},{label:`Dark`,value:`dark`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`lang`,label:d(r)(`config.field_lang`),description:F({description:`Default language`,descriptionZh:`默认语言`}),"model-value":N(`site`,`lang`),placeholder:`en`,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`favicon`,label:d(r)(`config.field_favicon`),description:F({description:`Website icon`,descriptionZh:`站点图标`}),"model-value":N(`site`,`favicon`),placeholder:`/favicon.svg`,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(I,{"config-type":`site`,field:`pageSize`,label:d(r)(`config.field_page_size`),description:F({description:`Posts per page`,descriptionZh:`每页显示文章数`}),"model-value":N(`site`,`pageSize`),min:1,max:100,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])])):y.value===`author`?(e(),a(`div`,fe,[_(C,{"config-type":`site`,field:`author.name`,label:d(r)(`config.field_author_name`),description:F({description:`Your name`,descriptionZh:`你的名字`}),"model-value":N(`site`,`author.name`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.email`,label:d(r)(`config.field_author_email`),description:F({description:`Your email`,descriptionZh:`邮箱`}),"model-value":N(`site`,`author.email`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.link`,label:d(r)(`config.field_author_link`),description:F({description:`Your profile link`,descriptionZh:`个人链接`}),"model-value":N(`site`,`author.link`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.avatar`,label:d(r)(`config.field_author_avatar`),description:F({description:`Avatar URL`,descriptionZh:`头像 URL`}),"model-value":N(`site`,`author.avatar`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.intro`,label:d(r)(`config.field_author_intro`),description:F({description:`Personal introduction`,descriptionZh:`个人简介`}),"model-value":N(`site`,`author.intro`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(L,{title:d(r)(`config.field_author_status`),icon:`i-ri:emotion-line`},{default:i(()=>[_(C,{"config-type":`site`,field:`author.status.emoji`,label:d(r)(`config.field_status_emoji`),description:F({description:`Status emoji`,descriptionZh:`状态 Emoji`}),"model-value":N(`site`,`author.status.emoji`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(C,{"config-type":`site`,field:`author.status.message`,label:d(r)(`config.field_status_message`),description:F({description:`Hover message`,descriptionZh:`悬浮消息`}),"model-value":N(`site`,`author.status.message`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`])])):y.value===`features`?(e(),a(`div`,pe,[_(L,{title:d(r)(`config.group_search`),icon:`i-ri:search-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`search.enable`,label:d(r)(`config.field_search_enable`),description:F({description:`Enable search`,descriptionZh:`启用搜索`}),"model-value":N(`site`,`search.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`search.provider`,label:d(r)(`config.field_search_provider`),description:F({description:`Search provider`,descriptionZh:`搜索提供商`}),"model-value":N(`site`,`search.provider`)||`fuse`,options:[{label:`Fuse (Local)`,value:`fuse`},{label:`Algolia`,value:`algolia`},{label:`Engine`,value:`engine`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_comment`),icon:`i-ri:chat-3-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`comment.enable`,label:d(r)(`config.field_comment_enable`),description:F({description:`Enable comment`,descriptionZh:`启用评论`}),"model-value":N(`site`,`comment.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_license`),icon:`i-ri:copyright-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`license.enabled`,label:d(r)(`config.field_license_enabled`),description:F({description:`Show license`,descriptionZh:`显示协议`}),"model-value":N(`site`,`license.enabled`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`license.type`,label:d(r)(`config.field_license_type`),description:F({description:`License type`,descriptionZh:`协议类型`}),"model-value":N(`site`,`license.type`)||`by-nc-sa`,options:[{label:`CC BY-NC-SA`,value:`by-nc-sa`},{label:`CC BY-SA`,value:`by-sa`},{label:`CC BY-NC`,value:`by-nc`},{label:`CC BY-NC-ND`,value:`by-nc-nd`},{label:`CC BY-ND`,value:`by-nd`},{label:`CC0`,value:`zero`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_sponsor`),icon:`i-ri:heart-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`sponsor.enable`,label:d(r)(`config.field_sponsor_enable`),description:F({description:`Enable sponsor`,descriptionZh:`启用赞助`}),"model-value":N(`site`,`sponsor.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_general`),icon:`i-ri:settings-3-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`lastUpdated`,label:d(r)(`config.field_last_updated`),description:F({description:`Show last updated time`,descriptionZh:`显示最后更新时间`}),"model-value":N(`site`,`lastUpdated`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(U,{"config-type":`site`,field:`statistics.enable`,label:d(r)(`config.field_statistics_enable`),description:F({description:`Enable reading statistics`,descriptionZh:`启用阅读统计`}),"model-value":N(`site`,`statistics.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(U,{"config-type":`site`,field:`mediumZoom.enable`,label:d(r)(`config.field_medium_zoom`),description:F({description:`Enable image preview`,descriptionZh:`启用图片预览`}),"model-value":N(`site`,`mediumZoom.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`]),_(L,{title:d(r)(`config.group_llms`),icon:`i-ri:robot-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`llms.enable`,label:d(r)(`config.field_llms_enable`),description:F({description:`Enable llms.txt output`,descriptionZh:`启用 llms.txt 输出`}),"model-value":N(`site`,`llms.enable`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(U,{"config-type":`site`,field:`llms.fullText`,label:d(r)(`config.field_llms_full_text`),description:F({description:`Generate llms-full.txt`,descriptionZh:`生成 llms-full.txt`}),"model-value":N(`site`,`llms.fullText`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`])])):y.value===`build`?(e(),a(`div`,me,[_(C,{"config-type":`valaxy`,field:`theme`,label:d(r)(`config.field_theme`),description:F({description:`Theme name`,descriptionZh:`主题名称`}),"model-value":N(`valaxy`,`theme`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(A,{"config-type":`site`,field:`orderBy`,label:d(r)(`config.field_order_by`),description:F({description:`Post ordering`,descriptionZh:`文章排序方式`}),"model-value":N(`site`,`orderBy`)||`date`,options:[{label:`Date`,value:`date`},{label:`Updated`,value:`updated`}],onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(L,{title:d(r)(`config.group_excerpt`),icon:`i-ri:file-text-line`},{default:i(()=>[_(U,{"config-type":`site`,field:`excerpt.auto`,label:d(r)(`config.field_excerpt_auto`),description:F({description:`Auto-generate excerpt`,descriptionZh:`自动生成摘要`}),"model-value":N(`site`,`excerpt.auto`),onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`]),_(I,{"config-type":`site`,field:`excerpt.length`,label:d(r)(`config.field_excerpt_length`),description:F({description:`Max excerpt length`,descriptionZh:`摘要最大长度`}),"model-value":N(`site`,`excerpt.length`),min:50,max:1e3,step:50,onSaved:d(D)},null,8,[`label`,`description`,`model-value`,`onSaved`])]),_:1},8,[`title`])])):y.value===`theme`?(e(),a(`div`,he,[z.value.length===0?(e(),a(`p`,ge,c(d(r)(`config.no_theme_config`)),1)):l(``,!0),(e(!0),a(f,null,n(z.value,([t,n])=>(e(),a(f,{key:t},[typeof n==`string`?(e(),u(C,{key:0,"config-type":`theme`,field:t,label:t,"model-value":n,onSaved:d(D)},null,8,[`field`,`label`,`model-value`,`onSaved`])):typeof n==`boolean`?(e(),u(U,{key:1,"config-type":`theme`,field:t,label:t,"model-value":n,onSaved:d(D)},null,8,[`field`,`label`,`model-value`,`onSaved`])):typeof n==`number`?(e(),u(I,{key:2,"config-type":`theme`,field:t,label:t,"model-value":n,onSaved:d(D)},null,8,[`field`,`label`,`model-value`,`onSaved`])):(e(),a(`div`,_e,[p(`label`,ve,c(t),1),p(`code`,ye,c(JSON.stringify(n)),1)]))],64))),128))])):l(``,!0)])])]),_:1}),_(d(j),null,{default:i(()=>[p(`div`,be,[p(`div`,xe,[p(`h3`,Se,c(d(r)(`config.all_options`)),1),p(`span`,Ce,c(R.value.length),1)]),p(`div`,we,[_(W,{modelValue:b.value,"onUpdate:modelValue":s[3]||=e=>b.value=e,placeholder:d(r)(`config.search_placeholder`),size:`sm`,class:`w-full`},null,8,[`modelValue`,`placeholder`])]),p(`div`,Te,[p(`div`,Ee,[(e(),a(f,null,n([`SiteConfig`,`ValaxyConfig`],t=>p(`div`,{key:t,class:`border border-gray-200 dark:border-gray-700 rounded-lg overflow-hidden`},[p(`button`,{class:`w-full flex items-center gap-2 px-3 py-1.5 text-xs font-bold bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors text-left`,onClick:e=>k(t)},[p(`div`,{class:o([`i-ri:arrow-right-s-line text-xs transition-transform`,{"rotate-90":!S.value.has(t)}])},null,2),g(` `+c(t)+` `,1),p(`span`,Oe,` (`+c(R.value.filter(e=>e.section===t).length)+`) `,1)],8,De),S.value.has(t)?l(``,!0):(e(),a(`div`,ke,[(e(!0),a(f,null,n(R.value.filter(e=>e.section===t),t=>(e(),a(`div`,{key:t.path,class:`px-3 py-1.5 hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors`},[p(`div`,Ae,[p(`div`,je,[p(`div`,Me,[p(`code`,Ne,c(t.path),1),p(`span`,Pe,`(`+c(t.type)+`)`,1),t.default?(e(),a(`span`,Fe,` = `+c(t.default),1)):l(``,!0)]),F(t)?(e(),a(`p`,Ie,c(F(t)),1)):l(``,!0),t.value===void 0?l(``,!0):(e(),a(`div`,Le,[p(`code`,Re,c(typeof t.value==`object`?JSON.stringify(t.value):String(t.value)),1)]))]),p(`div`,ze,[_(m,{content:d(r)(`config.copy_snippet`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center justify-center w-5 h-5 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors`,onClick:e=>B(t)},[...s[8]||=[p(`div`,{class:`i-ri:clipboard-line text-xs`},null,-1)]],8,Be)]),_:2},1032,[`content`]),_(m,{content:d(r)(`config.open_in_editor`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center justify-center w-5 h-5 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors`,onClick:e=>V(t.configType)},[...s[9]||=[p(`div`,{class:`i-ri:edit-line text-xs`},null,-1)]],8,Ve)]),_:2},1032,[`content`])])])]))),128))]))])),64)),z.value.length>0?(e(),a(`div`,$,[p(`button`,{class:`w-full flex items-center gap-2 px-3 py-1.5 text-xs font-bold bg-gray-50 dark:bg-gray-800 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors text-left`,onClick:s[4]||=e=>k(`ThemeConfig`)},[p(`div`,{class:o([`i-ri:arrow-right-s-line text-xs transition-transform`,{"rotate-90":!S.value.has(`ThemeConfig`)}])},null,2),s[10]||=g(` ThemeConfig `,-1),p(`span`,He,` (`+c(z.value.length)+`) `,1)]),S.value.has(`ThemeConfig`)?l(``,!0):(e(),a(`div`,Ue,[(e(!0),a(f,null,n(z.value,([t,n])=>(e(),a(`div`,{key:t,class:`px-3 py-1.5 hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors`},[p(`div`,We,[p(`div`,Ge,[p(`div`,Ke,[p(`code`,qe,` themeConfig.`+c(t),1),p(`span`,Je,`(`+c(typeof n)+`)`,1)]),p(`div`,Ye,[p(`code`,Xe,c(typeof n==`object`?JSON.stringify(n):String(n)),1)])]),_(m,{content:d(r)(`config.open_in_editor`)},{default:i(()=>[p(`button`,{class:`inline-flex items-center justify-center w-5 h-5 rounded hover:bg-gray-200 dark:hover:bg-gray-700 text-gray-400 hover:text-gray-600 dark:hover:text-gray-200 transition-colors`,onClick:s[5]||=e=>V(`valaxy`)},[...s[11]||=[p(`div`,{class:`i-ri:edit-line text-xs`},null,-1)]])]),_:1},8,[`content`])])]))),128))]))])):l(``,!0)])])])]),_:1})]),_:1})):(e(),a(`div`,Q,c(d(r)(`config.no_data`)),1))}}});export{Ze as default};
|