scrum-skills 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/.agents/skills/scrum-planning/references/schema.md +84 -1
  2. package/.agents/skills/scrum-report/SKILL.md +1 -0
  3. package/.agents/skills/scrum-tdd/SKILL.md +45 -0
  4. package/README.md +21 -2
  5. package/assets/board/200.html +1 -1
  6. package/assets/board/404.html +1 -1
  7. package/assets/board/_nuxt/{RJtjdZeG.js → 13F3FZJq.js} +1 -1
  8. package/assets/board/_nuxt/{DsNkyZPc.js → 4G46xON2.js} +1 -1
  9. package/assets/board/_nuxt/7DnHvJyr.js +1 -0
  10. package/assets/board/_nuxt/B8d-LQbt.js +13 -0
  11. package/assets/board/_nuxt/{CNbS93H9.js → BGRxZnwm.js} +1 -1
  12. package/assets/board/_nuxt/BMRYIH0I.js +1 -0
  13. package/assets/board/_nuxt/Bi9Axj3V.js +1 -0
  14. package/assets/board/_nuxt/Bk5o5EMW.js +1 -0
  15. package/assets/board/_nuxt/BsNk4K6P.js +1 -0
  16. package/assets/board/_nuxt/BtzBJuQU.js +1 -0
  17. package/assets/board/_nuxt/{DwcwzwSx.js → BvwhGSdZ.js} +1 -1
  18. package/assets/board/_nuxt/{Bh7eUS6e.js → C4MZsmn0.js} +1 -1
  19. package/assets/board/_nuxt/{DJUwhJ8T.js → C7AVymkF.js} +1 -1
  20. package/assets/board/_nuxt/{DrbU50Zd.js → C7wdFLdw.js} +1 -1
  21. package/assets/board/_nuxt/{CUnX_QKi.js → C8xxmt66.js} +1 -1
  22. package/assets/board/_nuxt/{CD0uJuyA.js → CB66hjP7.js} +1 -1
  23. package/assets/board/_nuxt/{D8Bpf7sE.js → CNCQ_RRC.js} +1 -1
  24. package/assets/board/_nuxt/CSF_x8S0.js +1 -0
  25. package/assets/board/_nuxt/CcCIS_4Q.js +1 -0
  26. package/assets/board/_nuxt/{Bu60uYgs.js → CnWxhsmi.js} +1 -1
  27. package/assets/board/_nuxt/{DmKZi-Wo.js → Cp9-r9Yz.js} +1 -1
  28. package/assets/board/_nuxt/CqT7Crsj.js +95 -0
  29. package/assets/board/_nuxt/CqhzGRpQ.js +1 -0
  30. package/assets/board/_nuxt/{D1Yxjnz9.js → CurAl_-I.js} +1 -1
  31. package/assets/board/_nuxt/{CjRYYbsC.js → D2zrOcWn.js} +1 -1
  32. package/assets/board/_nuxt/{CHZ_IHOa.js → DCRsKQUZ.js} +1 -1
  33. package/assets/board/_nuxt/{obNw9aRV.js → DDF25zwT.js} +1 -1
  34. package/assets/board/_nuxt/DIAPFfZA.js +2 -0
  35. package/assets/board/_nuxt/DMZvQhvU.js +1 -0
  36. package/assets/board/_nuxt/{BNKWWG8o.js → DNJ5OliG.js} +1 -1
  37. package/assets/board/_nuxt/{CvFE1CeN.js → DPeEWyPC.js} +1 -1
  38. package/assets/board/_nuxt/DZXukN7r.js +6 -0
  39. package/assets/board/_nuxt/{CyAQx5wv.js → D_dkfQp-.js} +1 -1
  40. package/assets/board/_nuxt/{BSov4ehT.js → Dp5MbiLe.js} +1 -1
  41. package/assets/board/_nuxt/FxbXzpZ6.js +1 -0
  42. package/assets/board/_nuxt/{DaqxYsbV.js → HUproyl7.js} +1 -1
  43. package/assets/board/_nuxt/{C9MiPNdJ.js → J9NS0_M_.js} +1 -1
  44. package/assets/board/_nuxt/builds/latest.json +1 -1
  45. package/assets/board/_nuxt/builds/meta/ceebd758-b616-48d8-872b-0de05659de19.json +1 -0
  46. package/assets/board/_nuxt/burndown.Do6IbM6o.css +1 -0
  47. package/assets/board/_nuxt/{KhBLkIKl.js → dI2CahwK.js} +1 -1
  48. package/assets/board/_nuxt/entry.DUA8YVRM.css +2 -0
  49. package/assets/board/_nuxt/epics.Dmessplu.css +1 -0
  50. package/assets/board/_nuxt/gantt.Dmp00GUo.css +1 -0
  51. package/assets/board/_nuxt/last-change.CaSxA-Z0.css +1 -0
  52. package/assets/board/_nuxt/milestones.U0xKCsEo.css +1 -0
  53. package/assets/board/_nuxt/pages.Dbj2IVk8.css +1 -0
  54. package/assets/board/_nuxt/{BuuAjxsV.js → rV_oonhV.js} +1 -1
  55. package/assets/board/_nuxt/x-PrcVk4.js +1 -0
  56. package/assets/board/burndown/index.html +1 -1
  57. package/assets/board/epics/index.html +1 -1
  58. package/assets/board/gantt/index.html +1 -1
  59. package/assets/board/index.html +1 -1
  60. package/assets/board/last-change/index.html +1 -0
  61. package/assets/board/milestones/index.html +1 -1
  62. package/bin/scrum-skills.mjs +3 -0
  63. package/package.json +41 -40
  64. package/templates/AGENTS.md +15 -2
  65. package/tools/last-change.mjs +326 -0
  66. package/tools/projects.mjs +66 -12
  67. package/tools/serve.mjs +1 -1
  68. package/tools/validate.mjs +124 -0
  69. package/assets/board/_nuxt/0VBLkWnu.js +0 -1
  70. package/assets/board/_nuxt/BTxVIV74.js +0 -1
  71. package/assets/board/_nuxt/C-GYjxwr.js +0 -13
  72. package/assets/board/_nuxt/CDL4GvLz.js +0 -1
  73. package/assets/board/_nuxt/CeiBZIn1.js +0 -95
  74. package/assets/board/_nuxt/Cfk_R787.js +0 -1
  75. package/assets/board/_nuxt/DhhR1iR4.js +0 -1
  76. package/assets/board/_nuxt/HrhQecsY.js +0 -6
  77. package/assets/board/_nuxt/RM4VQc4e.js +0 -1
  78. package/assets/board/_nuxt/builds/meta/ecbff4a6-6538-49b0-9844-64f03ebd103a.json +0 -1
  79. package/assets/board/_nuxt/burndown.BCLMmigw.css +0 -1
  80. package/assets/board/_nuxt/entry.nk2xQ-sa.css +0 -2
  81. package/assets/board/_nuxt/epics.B4-eK1Py.css +0 -1
  82. package/assets/board/_nuxt/fFGyRlCx.js +0 -1
  83. package/assets/board/_nuxt/gantt.DATOqoZf.css +0 -1
  84. package/assets/board/_nuxt/l05SqxhY.js +0 -1
  85. package/assets/board/_nuxt/milestones.z-UuT44X.css +0 -1
  86. package/assets/board/_nuxt/pages.Bi6nErnd.css +0 -1
  87. package/assets/board/_nuxt/uGmbQYdY.js +0 -1
@@ -0,0 +1 @@
1
+ import{$ as e,$n as t,Cn as n,D as r,Dn as i,E as a,Ft as o,Gt as s,Ht as c,L as l,Lt as u,On as d,Pt as f,Rt as p,Tn as m,Xt as h,Yt as g,Zn as _,_ as v,b as y,bt as b,ct as x,er as S,et as C,ft as w,g as T,h as E,jt as D,k as O,mt as k,o as A,pn as j,qt as M,tr as N,tt as P,un as ee,v as F,vn as I,wn as L,wt as R,xn as te,xt as z,y as B,z as V}from"./DZo3dYLJ.js";import{C as H,S as ne,w as U}from"./51OWHj8c.js";import{t as W}from"./CsyY7ot8.js";import{t as G}from"./DSaWoFHS.js";import{r as re,t as ie}from"./oXSDGTSr.js";import{t as ae}from"./8QIcohze.js";import{a as oe,h as K,i as q,l as se,n as ce,r as le,s as ue,t as de}from"./Baq-Hrpf.js";import{n as fe,r as pe,t as me}from"./DLkAKotw.js";import{n as he,r as ge,t as _e}from"./Bb3Limos.js";import{h as ve,m as ye,r as be,s as xe}from"./CuJUHLl8.js";import{p as Se,t as Ce,u as we}from"./Vo4wMbnS.js";import{t as J}from"./CK9_veoz.js";import{S as Te,_ as Ee,a as De,b as Oe,c as ke,d as Ae,g as je,i as Me,l as Ne,m as Pe,r as Fe,s as Ie,t as Le,u as Re,v as ze,x as Y,y as Be}from"./FxbXzpZ6.js";import{t as Ve}from"./B43-KCi6.js";import{t as He}from"./BuOKDFiJ.js";import{t as X}from"./D3YCAmfu.js";import{t as Ue}from"./B_SlFcWp.js";import{t as We}from"./C9StZL3D.js";import{a as Ge,r as Ke}from"./BPTrRhcw.js";import{t as qe}from"./D2zrOcWn.js";import{a as Je,i as Ye,n as Xe,r as Ze,t as Qe}from"./CNCQ_RRC.js";import{n as $e,t as et}from"./BsNk4K6P.js";import{C as tt,u as nt}from"#entry";function rt(){return{ALT:`Alt`,ARROW_DOWN:`ArrowDown`,ARROW_LEFT:`ArrowLeft`,ARROW_RIGHT:`ArrowRight`,ARROW_UP:`ArrowUp`,BACKSPACE:`Backspace`,CAPS_LOCK:`CapsLock`,CONTROL:`Control`,DELETE:`Delete`,END:`End`,ENTER:`Enter`,ESCAPE:`Escape`,F1:`F1`,F10:`F10`,F11:`F11`,F12:`F12`,F2:`F2`,F3:`F3`,F4:`F4`,F5:`F5`,F6:`F6`,F7:`F7`,F8:`F8`,F9:`F9`,HOME:`Home`,META:`Meta`,PAGE_DOWN:`PageDown`,PAGE_UP:`PageUp`,SHIFT:`Shift`,SPACE:` `,TAB:`Tab`,CTRL:`Control`,ASTERISK:`*`,SPACE_CODE:`Space`}}function it(e){return e?.querySelector(`[data-state=checked]`)}function at(e,t,n){return e===void 0?!1:Array.isArray(e)?e.some(e=>Z(e,t,n)):Z(e,t,n)}function Z(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]:ie(e,t)}var[ot,st]=K(`ListboxRoot`),[ct,lt]=K(`ListboxHighlightScroll`),ut=O({__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},loop:{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:n}){let r=e,i=n,{multiple:a,highlightOnHover:o,loop:s,orientation:l,disabled:u,selectionBehavior:f,dir:p}=m(r),{getItems:h,getItem:g}=me({isProvider:!0}),{handleTypeaheadSearch:_}=he(),{primitiveElement:v,currentElement:y}=fe(),b=rt(),x=Ve(p),S=ct(null);lt({suppressHighlightScroll:I(!1),onHighlightScrollRequest:()=>{}});let C=ze(y),w=I(),T=I(!1),E=I(!0),D=Se(r,`modelValue`,i,{defaultValue:r.defaultValue??(a.value?[]:void 0),passive:r.modelValue===void 0,deep:!0});function O(e){if(T.value=!0,r.multiple){let t=Array.isArray(D.value)?[...D.value]:[],n=t.findIndex(t=>Z(t,e,r.by));r.selectionBehavior===`toggle`?(n===-1?t.push(e):t.splice(n,1),D.value=t):(D.value=[e],w.value=e)}else r.selectionBehavior===`toggle`&&Z(D.value,e,r.by)?D.value=void 0:D.value=e;setTimeout(()=>{T.value=!1},1)}let A=I(null),j=I(null),N=I(!1),ee=I(!1),L=be(),R=be(),te=be();function V(){return h().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)}function H(e,t=!0,n){if(!e)return;A.value=e;let r=S?.suppressHighlightScroll.value??!1;(n??E.value)&&(r?A.value.focus({preventScroll:!0}):A.value.focus()),r?S?.onHighlightScrollRequest(t?()=>{let e=A.value;e?.isConnected&&e.scrollIntoView({block:`nearest`})}:void 0):t&&A.value.scrollIntoView({block:`nearest`});let a=g(e);i(`highlight`,a)}function ne(e){if(N.value)te.trigger(e);else{let t=h().find(t=>Z(t.value,e,r.by));t&&(A.value=t.ref,H(t.ref))}}function U(e){if(A.value&&A.value.isConnected){if(e.ctrlKey||e.metaKey||e.altKey)return;e.preventDefault(),e.stopPropagation(),ee.value||A.value.click()}}function W(e){if(E.value){if(T.value=!0,N.value)R.trigger(e);else{let t=e.altKey||e.ctrlKey||e.metaKey;if(t&&e.key===`a`&&a.value){let t=h(),n=t.map(e=>e.value);D.value=[...n],e.preventDefault();let r=t.at(-1);r&&H(r.ref)}else if(!t){let t=_(e.key,h());t&&H(t)}}setTimeout(()=>{T.value=!1},1)}}function G(){ee.value=!0}function re(){P(()=>{ee.value=!1})}function ie(){P(()=>{se(new KeyboardEvent(`keydown`,{key:`PageUp`}))})}function oe(e){let t=A.value;t?.isConnected&&(j.value=t),A.value=null,i(`leave`,e)}function K(e){let t=new CustomEvent(`listbox.entryFocus`,{bubbles:!1,cancelable:!0});if(e.currentTarget?.dispatchEvent(t),i(`entryFocus`,t),!t.defaultPrevented){if(j.value)H(j.value);else{let e=V()?.[0];H(e)}}}function q(e){let t=h(!0).map(e=>e.ref),n=e===`next`?t.at(-1):t[0];if(!n)return!1;let r=Number(n.getAttribute(`aria-posinset`)),i=Number(n.getAttribute(`aria-setsize`));return e===`next`?r===i:r===1}function se(e){let t=Ge(e,l.value,x.value);if(!t)return;let n=V();if(A.value){if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(A.value),i=s.value&&r===n.length-1;if(i&&N.value){if(q(t)){let n=t===`next`?b.HOME:b.END;return R.trigger(new KeyboardEvent(`keydown`,{key:n,shiftKey:e.shiftKey}))}n=[]}else n=i?n.slice(0,1):n.slice(r+1)}ce(e,n[0])}if(n.length){let e=!A.value&&t===`prev`?n.length-1:0;H(n[e])}if(N.value)return R.trigger(e)}function ce(e,t){if(!N.value&&r.selectionBehavior===`replace`&&a.value&&Array.isArray(D.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===b.END?r=n.at(-1)?.value:e.key===b.HOME&&(r=n[0]?.value),!r||!w.value)return;let i=ae(n.map(e=>e.value),w.value,r);D.value=i}}async function le(e,t=!0){if(xe){if(await P(),N.value)L.trigger({event:e,scroll:t});else{let e=V(),n=e.find(e=>e.dataset.state===`checked`),r=t?void 0:!1;n?H(n,t,r):e.length&&H(e[0],t,r)}}}let ue=!1;return c(D,()=>{if(!T.value){let e=ue;ue=!0,P(()=>{le(void 0,e)})}},{immediate:!0,deep:!0}),t({highlightedElement:A,highlightItem:ne,highlightFirstItem:ie,highlightSelected:le,getItems:h}),st({modelValue:D,onValueChange:O,multiple:a,orientation:l,dir:x,disabled:u,highlightOnHover:o,loop:s,highlightedElement:A,isVirtual:N,virtualFocusHook:L,virtualKeydownHook:R,virtualHighlightHook:te,by:r.by,firstValue:w,selectionBehavior:f,focusable:E,onLeave:oe,onEnter:K,changeHighlight:H,onKeydownEnter:U,onKeydownNavigation:se,onKeydownTypeAhead:W,onCompositionStart:G,onCompositionEnd:re,highlightFirstItem:ie}),(t,n)=>(k(),F(d(J),{ref_key:`primitiveElement`,ref:v,as:e.as,"as-child":e.asChild,dir:d(x),"data-disabled":d(u)?``:void 0,onPointerleave:oe,onFocusout:n[0]||=async e=>{let t=e.relatedTarget||e.target;await P(),A.value&&d(y)&&!d(y).contains(t)&&oe(e)}},{default:M(()=>[z(t.$slots,`default`,{modelValue:d(D)}),d(C)&&e.name?(k(),F(d(Re),{key:0,name:e.name,value:d(D),disabled:d(u),required:e.required},null,8,[`name`,`value`,`disabled`,`required`])):B(`v-if`,!0)]),_:3},8,[`as`,`as-child`,`dir`,`data-disabled`]))}}),Q=O({__name:`ListboxContent`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{CollectionSlot:t}=me(),n=ot(),i=ve(!1,10);return(a,o)=>(k(),F(d(t),null,{default:M(()=>[r(d(J),{role:`listbox`,as:e.as,"as-child":e.asChild,tabindex:d(n).focusable.value?d(n).highlightedElement.value?`-1`:`0`:`-1`,"aria-orientation":d(n).orientation.value,"aria-multiselectable":!!d(n).multiple.value,"data-orientation":d(n).orientation.value,onMousedown:o[0]||=U(e=>i.value=!0,[`left`]),onFocus:o[1]||=e=>{d(i)||d(n).onEnter(e)},onKeydown:[o[2]||=H(e=>{(d(n).orientation.value!==`vertical`||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)&&(d(n).orientation.value!==`horizontal`||e.key!==`ArrowUp`&&e.key!==`ArrowDown`)&&(e.preventDefault(),d(n).focusable.value&&d(n).onKeydownNavigation(e))},[`down`,`up`,`left`,`right`,`home`,`end`]),H(d(n).onKeydownEnter,[`enter`]),d(n).onKeydownTypeAhead]},{default:M(()=>[z(a.$slots,`default`)]),_:3},8,[`as`,`as-child`,`tabindex`,`aria-orientation`,`aria-multiselectable`,`data-orientation`,`onKeydown`])]),_:3}))}}),dt=O({__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 n=e,r=Se(n,`modelValue`,t,{defaultValue:``,passive:n.modelValue===void 0}),i=ot(),{primitiveElement:a,currentElement:o}=fe(),c=T(()=>n.disabled||i.disabled.value||!1),l=I();s(()=>l.value=i.highlightedElement.value?.id),x(()=>{i.focusable.value=!1,setTimeout(()=>{n.autoFocus&&o.value?.focus()},1)}),w(()=>{i.focusable.value=!0});let{isComposing:u,shouldDeferInput:f,handleCompositionStart:p,handleCompositionUpdate:m,handleCompositionEnd:h}=Y(e=>{r.value=e.target.value,i.onCompositionEnd(),i.highlightFirstItem()});function g(){i.onCompositionStart(),p()}function _(e){f.value||(r.value=e.target.value,i.highlightFirstItem())}function v(e){u.value||(e.preventDefault(),i.onKeydownNavigation(e))}function y(e){u.value||i.onKeydownEnter(e)}return(t,n)=>(k(),F(d(J),{ref_key:`primitiveElement`,ref:a,as:e.as,"as-child":e.asChild,value:d(r),disabled:c.value?``:void 0,"data-disabled":c.value?``:void 0,"aria-disabled":c.value??void 0,"aria-activedescendant":l.value,type:`text`,onKeydown:[H(v,[`down`,`up`,`home`,`end`]),H(y,[`enter`])],onInput:_,onCompositionstart:g,onCompositionupdate:d(m),onCompositionend:d(h)},{default:M(()=>[z(t.$slots,`default`,{modelValue:d(r)})]),_:3},8,[`as`,`as-child`,`value`,`disabled`,`data-disabled`,`aria-disabled`,`aria-activedescendant`,`onCompositionupdate`,`onCompositionend`]))}}),[ft,pt]=K(`ListboxGroup`),mt=O({__name:`ListboxGroup`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,n=W(void 0,`reka-listbox-group`);return pt({id:n}),(e,r)=>(k(),F(d(J),C({role:`group`},t,{"aria-labelledby":d(n)}),{default:M(()=>[z(e.$slots,`default`)]),_:3},16,[`aria-labelledby`]))}}),ht=`listbox.select`,[gt,_t]=K(`ListboxItem`),vt=O({__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 n=e,i=t,a=W(void 0,`reka-listbox-item`),{CollectionItem:o}=me(),{forwardRef:s,currentElement:c}=X(),l=ot(),u=T(()=>c.value!=null&&c.value===l.highlightedElement.value),f=T(()=>at(l.modelValue.value,n.value,l.by)),p=T(()=>l.disabled.value||n.disabled);async function m(e){i(`select`,e),!e?.defaultPrevented&&!p.value&&e&&(l.onValueChange(n.value),l.changeHighlight(c.value))}function g(e){let t={originalEvent:e,value:n.value};ge(ht,m,t)}return _t({isSelected:f}),(t,n)=>(k(),F(d(o),{value:e.value},{default:M(()=>[h([u.value,f.value,p.value,d(l).focusable.value,...Object.entries(t.$attrs).flat()],()=>r(d(J),C({id:d(a)},t.$attrs,{ref:d(s),role:`option`,tabindex:d(l).focusable.value?u.value?`0`:`-1`:-1,"aria-selected":f.value,as:e.as,"as-child":e.asChild,disabled:p.value?``:void 0,"data-disabled":p.value?``:void 0,"data-highlighted":u.value?``:void 0,"data-state":f.value?`checked`:`unchecked`,onClick:g,onKeydown:H(U(g,[`prevent`]),[`space`]),onPointermove:n[0]||=()=>{d(l).highlightedElement.value!==d(c)&&d(l).highlightOnHover.value&&d(l).changeHighlight(d(c),!1,!1)}}),{default:M(()=>[z(t.$slots,`default`,{selected:f.value})]),_:3},16,[`id`,`tabindex`,`aria-selected`,`as`,`as-child`,`disabled`,`data-disabled`,`data-highlighted`,`data-state`,`onKeydown`]),n,1)]),_:3},8,[`value`]))}}),yt=O({__name:`ListboxItemIndicator`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let{forwardRef:t}=X(),n=gt();return(i,a)=>(k(),F(d(We),{present:e.forceMount||d(n).isSelected.value},{default:M(()=>[r(d(J),{ref:d(t),"aria-hidden":`true`,"data-state":d(n).isSelected.value?`checked`:`unchecked`,as:e.as,"as-child":e.asChild},{default:M(()=>[z(i.$slots,`default`)]),_:3},8,[`data-state`,`as`,`as-child`])]),_:3},8,[`present`]))}});function bt(e){return typeof e==`object`?e.key:e}function xt(e,t){let n=e.length;return new Proxy(e,{get(e,r,i){if(typeof r==`string`){let i=r.charCodeAt(0);if(i>=48&&i<=57){let i=+r;if(Number.isInteger(i)&&i>=0&&i<n){let n=e[i];if(typeof n!=`object`){let r=t[i*2];n=e[i]={index:i,key:n,start:r,size:t[i*2+1],end:r+t[i*2+1],lane:0}}return n}}if(r===`length`)return n}return Reflect.get(e,r,i)}})}function St(e,t,n){let r=n.initialDeps??[],i,a=!0;function o(){let o=e();return(o.length!==r.length||o.some((e,t)=>r[t]!==e))&&(r=o,i=t(...o),n?.onChange&&!(a&&n.skipInitialOnChange)&&n.onChange(i),a=!1),i}return o.updateDeps=e=>{r=e},o}function Ct(e,t){if(e===void 0)throw Error(`Unexpected undefined${t?`: ${t}`:``}`);return e}var wt=(e,t)=>Math.abs(e-t)<1.01,Tt=(e,t,n)=>{let r;return Object.assign(function(...i){e.clearTimeout(r),r=e.setTimeout(()=>t.apply(this,i),n)},{cancel:()=>{e.clearTimeout(r)}})};function Et({offset:e,isScrolling:t,elementMax:n,holdOffset:r,scrollOffset:i,pendingWrite:a,clampedMaxAtWrite:o}){return t&&a===null&&e===i?`spurious`:a!==null&&Math.abs(e-a.target)<1.5?`readBack`:a!==null&&!a.smooth&&n!==null&&a.target>n+r+.5&&Math.abs(e-(n+r))<1.5||a!==null&&!a.smooth&&a.lowMaxes?.some(t=>Math.abs(e-t)<1.5)?`clampedReadBack`:o!==null&&Math.abs(e-o)<1.5?`clampedEcho`:`external`}var Dt=e=>e===`smooth`||e===`smoothFinishing`;function Ot({kind:e,offset:t,command:n,target:r}){return e!==`spurious`&&e!==`readBack`&&e!==`clampedReadBack`&&n?.index!=null&&n.phase!==`queued`&&!Dt(n.phase)&&!wt(t,n.lastTargetOffset)&&!wt(t,r())&&e!==`clampedEcho`}var kt=40;function At(e){let t=e[e.length-1];if(t===void 0)return!1;let n=e.length-2;for(;n>=0&&t.t-e[n].t<kt;)n--;if(n<0)return!1;let r=e[n],i=n-1;for(;i>=0&&r.t-e[i].t<kt;)i--;if(i<0)return!1;let a=e[i],o=(t.offset-r.offset)/(t.t-r.t),s=(r.offset-a.offset)/(r.t-a.t);return o*s>=0&&Math.abs(o)>=2*Math.abs(s)&&Math.abs(o)-Math.abs(s)>=.8}function jt(e){let t=e[e.length-1];if(t===void 0)return!1;let n=e.length-2;for(;n>=0&&t.t-e[n].t<kt;)n--;if(n<0)return!1;let r=e[n];return Math.abs(t.offset-r.offset)/(t.t-r.t)>=.05}var Mt,Nt=()=>{if(Mt!==void 0)return Mt;if(typeof navigator>`u`)return Mt=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return Mt=!0;let e=navigator.maxTouchPoints;return Mt=navigator.platform===`MacIntel`&&e!==void 0&&e>0},Pt,Ft=()=>Pt===void 0?Pt=Nt()&&typeof CSS<`u`&&typeof CSS.supports==`function`&&CSS.supports(`overflow-anchor: auto`):Pt,It={capture:!0,passive:!0},Lt=class{constructor(e){this.host=e,this._touch=null,this.inMotion=()=>this._touch!==null&&this._touch.phase!==`lateFling`,this.dragging=()=>this._touch?.phase===`down`&&this._touch.moved,this.tail=()=>this._touch?.phase===`tail`?this._touch.moved?`fling`:`tap`:null,this.onScroll=({isScrolling:e,ownReadBack:t,moved:n,external:r})=>(e&&this._touch?.phase===`tail`?this._openTail(this._touch.moved||!t,!1):this._touch?.phase===`lateFling`&&(this.host.now()>this._touch.until?this._touch=null:r&&e&&n&&this._openTail(!0,!1)),!t&&e&&n&&this._touch?.phase===`down`?(this._touch.moved=!0,!0):!1),this.touchStart=()=>{this.end(),this._touch={phase:`down`,moved:!1}},this.touchEnd=()=>{let e=this._touch?.phase===`down`&&this._touch.moved;this.end(),this._openTail(e,e)},this.end=()=>{let e=this.host.getWindow();this._touch?.phase===`tail`&&e!=null&&e.clearTimeout(this._touch.timerId),this._touch=null},this.listen=e=>{let t=()=>this.touchStart(),n=()=>this.touchEnd();return e.addEventListener(`touchstart`,t,It),e.addEventListener(`touchend`,n,It),e.addEventListener(`touchcancel`,n,It),()=>{e.removeEventListener(`touchstart`,t,It),e.removeEventListener(`touchend`,n,It),e.removeEventListener(`touchcancel`,n,It),this.end()}},this._openTail=(e,t)=>{let n=this.host.getWindow();if(!Nt()||n==null)return;this.end();let r={phase:`tail`,moved:e,awaitingFling:t,timerId:n.setTimeout(()=>{this.host.tailStillMoving()?this._openTail(r.moved,r.awaitingFling):(this._touch=r.awaitingFling?{phase:`lateFling`,until:this.host.now()+1e3}:null,this.host.onTailClosed())},150)};this._touch=r}}get touch(){return this._touch}},Rt=e=>{let{clientWidth:t,clientHeight:n}=e;return{width:t,height:n}},zt=e=>{let t=new Set;return{schedule:n=>{let r=e.requestAnimationFrame(()=>{t.delete(r),n()});t.add(r)},cancel:()=>{t.forEach(t=>e.cancelAnimationFrame(t)),t.clear()}}},Bt=e=>e,Vt=e=>{let t=e.overscan*Math.max(e.lanes??1,1),n=Math.max(e.startIndex-t,0),r=Math.min(e.endIndex+t,e.count-1)-n+1,i=Array(r);for(let e=0;e<r;e++)i[e]=n+e;return i},Ht=(e,t)=>{let n=e.scrollElement;if(!n)return;let r=e.targetWindow;if(!r)return;let i=e=>{let{width:n,height:r}=e;t({width:Math.round(n),height:Math.round(r)})};if(i(Rt(n)),!r.ResizeObserver)return()=>{};let a=zt(r),o=new r.ResizeObserver(()=>{let t=()=>{i(Rt(n))};e.options.useAnimationFrameWithResizeObserver?a.schedule(t):t()});return o.observe(n,{box:`content-box`}),()=>{o.unobserve(n),a.cancel()}},Ut={passive:!0},Wt=typeof window>`u`||`onscrollend`in window,Gt=(e,t,n)=>{let r=e.scrollElement;if(!r)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Wt,o=0,s=a?null:Tt(i,()=>t(n(r),!1),e.options.isScrollingResetDelay),c=e=>()=>{o=n(r),s?.(),t(o,e)},l=c(!0),u=c(!1);return r.addEventListener(`scroll`,l,Ut),a&&r.addEventListener(`scrollend`,u,Ut),()=>{r.removeEventListener(`scroll`,l),a&&r.removeEventListener(`scrollend`,u),s?.cancel()}},Kt=(e,t)=>Gt(e,t,t=>{let{horizontal:n,isRtl:r}=e.options;return n?t.scrollLeft*(r&&-1||1):t.scrollTop}),qt=(e,t,n)=>{if(n.options.useCachedMeasurements){let t=n.indexFromElement(e),r=n.options.getItemKey(t);return n.itemSizeCache.get(r)??n.options.estimateSize(t)}if(t?.borderBoxSize){let e=t.borderBoxSize[0];if(e)return Math.round(e[n.options.horizontal?`inlineSize`:`blockSize`])}if(!t){let t=n.indexFromElement(e),r=n.options.getItemKey(t),i=n.itemSizeCache.get(r);if(i!==void 0)return i}return e[n.options.horizontal?`offsetWidth`:`offsetHeight`]},Jt=(e,{adjustments:t=0,behavior:n},r)=>{var i,a;(a=(i=r.scrollElement)?.scrollTo)==null||a.call(i,{[r.options.horizontal?`left`:`top`]:e+t,behavior:n})},Yt=(e,t)=>e===`smooth`?t?`smoothLanded`:`smooth`:`instant`,Xt=e=>e?.phase===`smooth`||e?.phase===`smoothLanded`;function Zt(e,t,n,r){if(t===0)return!1;let i=r(0),a=new Set,o=0;for(;o<e;){let e=n(o);if(e===i)break;a.add(e),o++}let s=e-o;if(s===0||s>=t)return!1;for(let e=0;e<s;e++)if(r(e)!==n(o+e))return!1;for(let e=s;e<t;e++)if(a.has(r(e)))return!1;return!0}var Qt=class{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._singleLaneMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this._holdOffset=0,this._reportedOverscroll=!1,this._iosGesture=new Lt({getWindow:()=>this.targetWindow,now:()=>this.now(),tailStillMoving:()=>{let e=this.scrollState;if(e?.phase!==`queued`||this.pendingWrite!==null)return!1;let t=this._readElementOffset();return t===null||this._lastElementOffset===null||Math.abs(t-this._lastElementOffset)<1?!1:(this._lastElementOffset=t,e.samples=[...e.samples??[],{t:this.now(),offset:t}],!0)},onTailClosed:()=>{let e=this.scrollState;e?.phase===`queued`&&jt(e.samples??[])&&(this.scrollState=null),this._flushHoldIfReady(!0),this._writeAwaitingCommand(),this._retryClampedAdjustment()}}),this._lastElementOffset=null,this.pendingWrite=null,this._clampedAdjustment=null,this.elementsCache=new Map,this._resizeBatch=null,this.now=()=>{var e;return((e=this.targetWindow?.performance)?.now)?.call(e)??Date.now()},this.observer=(()=>{let e=null,t=null,n=()=>{if(e)return e;let n=this.targetWindow;if(!n||!n.ResizeObserver)return null;let i=t=zt(n);return e=new n.ResizeObserver(e=>{let t=()=>{let t={sync:!1};this._resizeBatch=t;try{e.forEach(r)}finally{this._resizeBatch=null,t.notify&&(this.notify(t.sync),this._noteClampMax(),this._flushHoldIfReady(!0),this._retryClampedAdjustment())}};this.options.useAnimationFrameWithResizeObserver?i.schedule(t):t()})},r=e=>{let t=e.target,n=this.indexFromElement(t);if(t.isConnected)this.isIndexInRange(n)&&this.shouldMeasureDuringScroll(n)&&this.resizeItem(n,this.options.measureElement(t,e,this));else{this.observer.unobserve(t);for(let[e,n]of this.elementsCache)if(n===t){this.elementsCache.delete(e);break}}};return{disconnect:()=>{var r;(r=n())==null||r.disconnect(),t?.cancel(),e=null,t=null},observe:e=>n()?.observe(e,{box:`border-box`}),unobserve:e=>n()?.unobserve(e)}})(),this.range=null,this.setOptions=e=>{let t={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Bt,rangeExtractor:Vt,onChange:()=>{},measureElement:qt,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:`data-index`,initialMeasurementsCache:[],lanes:1,anchorTo:`start`,followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:`estimate`,useCachedMeasurements:!1};for(let n in e){let r=e[n];r!==void 0&&(t[n]=r)}let n=this.options,r=null,i=null,a=!1;if(n!==void 0&&n.enabled&&t.enabled&&t.anchorTo===`end`&&this.scrollElement!==null){let e=n.count,o=t.count,s=this.getMeasurements(),c=this._singleLaneMeasurements?.items??s,l=e=>bt(c[e]),u=e>0?l(0):null,d=e>0?l(e-1):null;if(o!==e||e>0&&o>0&&(t.getItemKey(0)!==u||t.getItemKey(o-1)!==d)){a=!0;let c=e>0?this.getVirtualItemForOffset(this.getScrollOffset())??s[0]:null;c&&(r=[c.key,this.getScrollOffset()-c.start]);let u=t.followOnAppend===!0?`auto`:t.followOnAppend||null;u&&o>0&&this.isAtEnd(n.scrollEndThreshold)&&(e===0||t.getItemKey(o-1)!==d)&&(o>e||Zt(e,o,l,t.getItemKey))&&(i=u)}}this.options=t,a&&(this.pendingMin=0,this.itemSizeCacheVersion++);let o=null;if(r&&this.scrollOffset!==null&&!this._awaitingCommandReadBack()){let[e,t]=r,n=this.getMeasurements(),{count:a,getItemKey:s}=this.options,c=0;for(;c<a&&s(c)!==e;)c++;if(c<a){let e=n[c];if(e){let n=Math.max(0,e.start+t);!i&&n!==this.scrollOffset&&(o=n-this.scrollOffset,this.scrollOffset=n)}}}i?this.pendingScrollAnchor={kind:`follow`,behavior:i}:o!==null&&(this._canWriteScroll()?this.pendingScrollAnchor={kind:`anchor`,delta:o}:(this._holdOffset+=o,this._followOffsetTarget(o)))},this.notify=e=>{var t,n;(n=(t=this.options).onChange)==null||n.call(t,this,e)},this.maybeNotify=St(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),e=>{this.notify(e)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{var e;this.unsubs.filter(Boolean).forEach(e=>e()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,(e=this._momentumStop)==null||e.restore(),this._momentumStop=null,this.isScrolling=!1,this.scrollDirection=null,this._holdOffset=0,this._reportedOverscroll=!1,this._clampedAdjustment=null,this.pendingWrite=null,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{let e=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==e){if(this.cleanup(),!e){this.maybeNotify();return}this.scrollElement=e,this.targetWindow=this.scrollElement&&`ownerDocument`in this.scrollElement?this.scrollElement.ownerDocument.defaultView:this.scrollElement?.window??null,this.elementsCache.forEach(e=>{this.observer.observe(e)}),this.unsubs.push(this.options.observeElementRect(this,e=>{this.scrollRect=e,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(e,t)=>{let n=t?this._elementMaxScrollOffset():null,r=this._reportedOverscroll;this._reportedOverscroll=e<0||n!==null&&e>n+1;let i=e;this._lastElementOffset=i,e=this._toLayoutOffset(e);let a=this._classifyScrollEvent(e,t,n);if(a===`spurious`)return;a===`readBack`?e=this.pendingWrite.target:a===`clampedReadBack`&&this.scrollState?.index!=null&&e<this.getMaxScrollOffset()-1.5?this.scrollState.lastTargetOffset=e:Ot({kind:a,offset:e,command:this.scrollState,target:()=>this.getScrollStateTarget(this.scrollState)})&&(this.scrollState=null),this.pendingWrite=null,this._clampedAdjustment!==null&&Math.abs(e-this._clampedAdjustment.maxAtWrite)>=1.5&&(this._clampedAdjustment=null);let o=this.getScrollOffset(),s=this.scrollDirection;this.scrollDirection=t?o===e?this.scrollDirection:o<e?`forward`:`backward`:null,this.scrollOffset=e,this.isScrolling=t;let c=this.scrollState;if(c?.phase===`queued`&&a===`external`&&t){if(r||this._reportedOverscroll)c.samples=[];else{let e=this.now();c.samples=[...(c.samples??[]).filter(t=>e-t.t<=200),{t:e,offset:i}],(s!==null&&this.scrollDirection!==s||At(c.samples))&&(this.scrollState=null)}}this._iosGesture.onScroll({isScrolling:t,ownReadBack:a===`readBack`,moved:e!==o,external:a===`external`&&this.scrollState?.phase!==`smooth`&&this.scrollState?.phase!==`smoothFinishing`})&&this.scrollState?.phase===`queued`&&(this.scrollState=null),this._flushHoldIfReady(!0),this.scrollState&&this.scheduleScrollReconcile(),this.maybeNotify()})),`addEventListener`in this.scrollElement&&this.unsubs.push(this._iosGesture.listen(this.scrollElement)),this._scrollToOffset(this.getScrollOffset())}this._noteClampMax();let t=this.pendingScrollAnchor;this.pendingScrollAnchor=null,t&&this.scrollElement&&this.options.enabled&&(t.kind===`anchor`?this._canWriteScroll()?Xt(this.scrollState)&&!wt(this.getScrollOffset()-t.delta,this.scrollState.lastTargetOffset)||(this._followOffsetTarget(t.delta),this._scrollToOffset(this.getScrollOffset())):(this._holdOffset+=t.delta,this._followOffsetTarget(t.delta),this.notify(!1)):this.scrollToEnd({behavior:t.behavior})),this._flushHoldIfReady(!1),this._retryClampedAdjustment()},this._classifyScrollEvent=(e,t,n)=>Et({offset:e,isScrolling:t,elementMax:n,holdOffset:this._holdOffset,scrollOffset:this.scrollOffset,pendingWrite:this.pendingWrite,clampedMaxAtWrite:this._clampedAdjustment?.maxAtWrite??null}),this._retryClampedAdjustment=()=>{if(this._clampedAdjustment===null||!this.scrollElement||!this.options.enabled||!this._canWriteScroll())return;let{target:e,maxAtWrite:t}=this._clampedAdjustment,n=this.getMaxScrollOffset();n>t+.5&&(this._clampedAdjustment=e>n+.5?{target:e,maxAtWrite:n}:null,this._scrollToOffset(e))},this._writeAwaitingCommand=()=>{let e=this.scrollState;if(e===null||e.phase!==`queued`)return;let{behavior:t}=e;this.getMeasurements();let n=this.getScrollStateTarget(e);e.lastTargetOffset=n,this._clampedAdjustment=null,e.phase=Yt(t,e.index!=null&&wt(n,this.getScrollOffset())),this._scrollToOffset(n,{behavior:t}),this.scheduleScrollReconcile()},this._readElementOffset=()=>{let e=this.scrollElement;if(e==null)return null;let{horizontal:t,isRtl:n}=this.options;return typeof e.scrollTop==`number`?t?e.scrollLeft*(n&&-1||1):e.scrollTop:typeof e.scrollY==`number`?t?e.scrollX:e.scrollY:null},this._canWriteScroll=()=>!(Nt()&&this._iosGesture.inMotion())&&!this._reportedOverscroll,this._flushHoldIfReady=e=>{if(this._holdOffset===0||!this.scrollElement||!this.options.enabled||!this._canWriteScroll()||this.scrollState?.phase===`smooth`)return;this._holdOffset=0,this.scrollOffset!==null&&this.scrollOffset<0&&(this.scrollOffset=0),this.notify(e);let t=this.getCommandWrittenOffset()??this.getScrollOffset();this._clampedAdjustment=this._clampedBy(t),this._scrollToOffset(t)},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?`width`:`height`]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==`function`?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getMeasurementOptions=St(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(e,t,n,r,i,a,o,s)=>(this.prevLanes!==void 0&&this.prevLanes!==a&&(this.lanesChangedFlag=!0),this.prevLanes=a,this.pendingMin=null,{count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o,gap:s}),{key:!1}),this.isIndexInRange=e=>e>=0&&e<this.options.count,this.getMeasurements=St(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:e,paddingStart:t,scrollMargin:n,getItemKey:r,enabled:i,lanes:a,laneAssignmentMode:o,gap:s},c)=>{let l=this.itemSizeCache;if(!i)return this.measurementsCache=[],this._singleLaneMeasurements=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>e)for(let t of this.laneAssignments.keys())t>=e&&this.laneAssignments.delete(t);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this._singleLaneMeasurements=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(e=>{this.itemSizeCache.set(e.key,e.size)}));let u=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===e&&(this.lanesSettling=!1),a===1){let i=e*2,a=this._singleLaneMeasurements?.flat;if(!a||a.length<i){let e=new Float64Array(i);a&&u>0&&e.set(a.subarray(0,u*2)),a=e}let o=u===0?Array(e):this._singleLaneMeasurements.items.slice(),c;if(u===0)c=t+n;else{let e=u-1;c=a[e*2]+a[e*2+1]+s}for(let t=u;t<e;t++){let e=r(t);o[t]=e;let n=l.get(e),i=typeof n==`number`?n:this.options.estimateSize(t);a[t*2]=c,a[t*2+1]=i,c+=i+s}this._singleLaneMeasurements={flat:a,items:o};let d=xt(o,a);return this.measurementsCache=d,d}let d=this.measurementsCache.slice(0,u),f=Array(a).fill(void 0),p=new Float64Array(a),m=0;for(let e=0;e<u;e++){let t=d[e];t&&(f[t.lane]===void 0&&m++,f[t.lane]=e,p[t.lane]=t.end)}for(let i=u;i<e;i++){let e=r(i),c=this.laneAssignments.get(i),u,h,g=o===`estimate`||l.has(e);if(c!==void 0&&this.options.lanes>1){u=c;let e=f[u],r=e===void 0?void 0:d[e];h=r?r.end+s:t+n}else if(m===a){let e=0,t=p[0],n=f[0];for(let r=1;r<a;r++){let i=p[r];(i<t||i===t&&f[r]<n)&&(e=r,t=i,n=f[r])}u=e,h=t+s,g&&this.laneAssignments.set(i,u)}else u=i%this.options.lanes,h=t+n,g&&this.laneAssignments.set(i,u);let _=l.get(e),v=typeof _==`number`?_:this.options.estimateSize(i),y=h+v;d[i]={index:i,start:h,size:v,end:y,key:e,lane:u},f[u]===void 0&&m++,f[u]=i,p[u]=y}return this.measurementsCache=d,d},{key:!1,debug:()=>this.options.debug}),this.calculateRange=St(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(e,t,n,r)=>e.length===0||t===0?(this.range=null,null):(this.range=tn(e,t,n,r,r===1&&this._singleLaneMeasurements!==null?this._singleLaneMeasurements.flat:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=St(()=>{let e=null,t=null,n=this.calculateRange();return n&&(e=n.startIndex,t=n.endIndex),this.maybeNotify.updateDeps([this.isScrolling,e,t]),[this.options.rangeExtractor,this.options.overscan,this.options.count,e,t,this.options.lanes]},(e,t,n,r,i,a)=>r===null||i===null?[]:e({startIndex:r,endIndex:i,overscan:t,count:n,lanes:a}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=e=>{let t=this.options.indexAttribute,n=e.getAttribute(t);return n?parseInt(n,10):(console.warn(`Missing attribute name '${t}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=e=>{if(!Xt(this.scrollState))return!0;let t=this.scrollState.index??this.getVirtualItemForOffset(this.scrollState.lastTargetOffset)?.index;if(t!==void 0&&this.range){let n=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),r=Math.max(0,t-n),i=Math.min(this.options.count-1,t+n);return e>=r&&e<=i}return!0},this.measureElement=e=>{if(!e){this.elementsCache.forEach((e,t)=>{e.isConnected||(this.observer.unobserve(e),this.elementsCache.delete(t))});return}let t=this.indexFromElement(e);if(!this.isIndexInRange(t))return;let n=this.options.getItemKey(t),r=this.elementsCache.get(n);r!==e&&(r&&this.observer.unobserve(r),this.observer.observe(e),this.elementsCache.set(n,e)),e.isConnected&&(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(t)&&this.resizeItem(t,this.options.measureElement(e,void 0,this))},this.resizeItem=(e,t)=>{var n;if(!this.isIndexInRange(e))return;this._resizeBatch?.sync&&this.getMeasurements();let r,i,a,o=this._singleLaneMeasurements?.flat;if(this.options.lanes===1&&o!=null)a=this.options.getItemKey(e),i=o[e*2],r=o[e*2+1];else{let t=this.measurementsCache[e];if(!t)return;a=t.key,i=t.start,r=t.size}let s=this.itemSizeCache.get(a)??r,c=t-s;if(c!==0){let o=this.options.anchorTo===`end`&&!Xt(this.scrollState)&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,l=o?this._getLayoutTotalSize():0,u=this.getScrollOffset(),d=this.itemSizeCache.has(a)?i+s<=u&&this.scrollDirection!==`backward`:i<u,f=!Xt(this.scrollState)&&(this.shouldAdjustScrollPositionOnItemSizeChange===void 0?d:this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[e]??{index:e,key:a,start:i,size:r,end:i+r,lane:0},c,this));(this.pendingMin===null||e<this.pendingMin)&&(this.pendingMin=e),this.itemSizeCache.set(a,t),this.itemSizeCacheVersion++;let p=!1;if(this._awaitingCommandReadBack()||(o?p=this.applyScrollAdjustment(this._getLayoutTotalSize()-l):f&&(p=this.applyScrollAdjustment(c))),this._resizeBatch){this._resizeBatch.notify=!0,(n=this._resizeBatch).sync||(n.sync=p);return}this.notify(p),this._noteClampMax(),this._flushHoldIfReady(!0),this._retryClampedAdjustment()}},this.getVirtualItems=St(()=>[this.getVirtualIndexes(),this.getMeasurements(),this._holdOffset],(e,t,n)=>{let r=[];for(let i=0,a=e.length;i<a;i++){let a=t[e[i]];r.push(n===0?a:{...a,start:a.start-n,end:a.end-n})}return r},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=e=>{let t=this.getMeasurements();if(t.length===0)return;let n=this._singleLaneMeasurements?.flat,r=this.options.lanes===1&&n!=null;return Ct(t[$t(0,t.length-1,r?e=>n[e*2]:e=>Ct(t[e]).start,e)])},this._noteClampMax=()=>{if(!this._awaitingCommandReadBack())return;let e=this._elementMaxScrollOffset();if(e===null)return;let t=this.pendingWrite,n=Math.max(e,0)+this._holdOffset;if(n>=t.target)return;let r=t.lowMaxes??=[];r[r.length-1]!==n&&r.push(n)},this.getMaxScrollOffset=()=>(this._elementMaxScrollOffset()??0)+this._holdOffset,this._toLayoutOffset=e=>{let t=e+this._holdOffset;return this.pendingScrollAnchor?.kind===`anchor`&&(t+=this.pendingScrollAnchor.delta),t},this._elementMaxScrollOffset=()=>{let e=this.scrollElement;if(e===null)return null;if(`scrollHeight`in e)return this.options.horizontal?e.scrollWidth-e.clientWidth:e.scrollHeight-e.clientHeight;if(`document`in e){let t=e.document.documentElement;return this.options.horizontal?t.scrollWidth-e.innerWidth:t.scrollHeight-e.innerHeight}return null},this._momentumStop=null,this._stopMomentum=e=>{let t=this.scrollElement,n=this.targetWindow;if(t===null||n===null)return;let r=`document`in t?t.document.scrollingElement:t;if(!r?.style)return;if(this._momentumStop){this._momentumStop.done=e;return}let{style:i}=r,a=this.options.horizontal?`overflow-x`:`overflow-y`,o=i.getPropertyValue(a),s=i.getPropertyPriority(a);i.setProperty(a,`hidden`,`important`);let c={restore:()=>i.getPropertyValue(a)!==`hidden`||i.getPropertyPriority(a)!==`important`?!1:(i.setProperty(a,o,s),!0),done:e};this._momentumStop=c,n.requestAnimationFrame(()=>n.requestAnimationFrame(()=>{this._momentumStop===c&&(this._momentumStop=null,c.restore()&&c.done())}))},this._clampedBy=e=>{let t=this._elementMaxScrollOffset();if(t===null)return null;let n=t+this._holdOffset;return e>n+.5?{target:e,maxAtWrite:n}:null},this.getVirtualDistanceFromEnd=()=>Math.max(this._getLayoutTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(e=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=e,this.getOffsetForAlignment=(e,t,n=0)=>{if(!this.scrollElement)return 0;let r=this.getSize(),i=this.getScrollOffset();t===`auto`&&(t=e>=i+r?`end`:`start`),t===`center`?e+=(n-r)/2:t===`end`&&(e-=r);let a=this.getMaxScrollOffset();return Math.max(Math.min(a,e),0)},this.getOffsetForIndex=(e,t=`auto`)=>{e=Math.max(0,Math.min(e,this.options.count-1));let n=this.getSize(),r=this.getScrollOffset(),i=this.measurementsCache[e];if(!i)return;if(t===`auto`){if(i.end>=r+n-this.options.scrollPaddingEnd)t=`end`;else if(i.start<=r+this.options.scrollPaddingStart)t=`start`;else return[r,t]}if(t===`end`&&e===this.options.count-1){let e=this.getMaxScrollOffset(),n=e-this.options.paddingEnd+this.options.scrollPaddingEnd;return[Math.max(Math.min(n,e),0),t]}let a=t===`end`?i.end+this.options.scrollPaddingEnd:i.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(a,t,i.size),t]},this.scrollToOffset=(e,{align:t=`start`,behavior:n=`auto`}={})=>{this._startScroll({index:null,align:t},this.getOffsetForAlignment(e,t),n,`absolute`)},this.scrollToIndex=(e,{align:t=`auto`,behavior:n=`auto`}={})=>{e=Math.max(0,Math.min(e,this.options.count-1));let r=this.getOffsetForIndex(e,t);if(!r)return;let[i,a]=r;this._startScroll({index:e,align:a},i,n,`absolute`)},this.scrollBy=(e,{behavior:t=`auto`}={})=>{let n=this.getOffsetForAlignment((this.getCommandWrittenOffset()??this.getScrollOffset())+e,`start`);this._startScroll({index:null,align:`start`},n,t,`relative`)},this.scrollToEnd=({behavior:e=`auto`}={})=>{this.options.count>0?this._startScroll({index:this.options.count-1,align:`end`,toEnd:!0},Math.max(this.getMaxScrollOffset(),0),e,`absolute`):this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:e})},this.cancelScroll=()=>{this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null},this.getTotalSize=()=>Math.max(this._getLayoutTotalSize()-this._holdOffset,0),this._getLayoutTotalSize=()=>{let e=this.getMeasurements(),t;if(e.length===0)t=this.options.paddingStart;else if(this.options.lanes===1){let n=e.length-1,r=this._singleLaneMeasurements?.flat;t=r==null?e[n]?.end??0:r[n*2]+r[n*2+1]}else{let n=Array(this.options.lanes).fill(null),r=e.length-1;for(;r>=0&&n.some(e=>e===null);){let t=e[r];n[t.lane]===null&&(n[t.lane]=t.end),r--}t=Math.max(...n.filter(e=>e!==null))}return Math.max(t-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let e=[];if(this.itemSizeCache.size===0)return e;let t=this.getMeasurements();for(let n of t)n&&this.itemSizeCache.has(n.key)&&e.push({index:n.index,key:n.key,start:n.start,size:n.size,end:n.end,lane:n.lane});return e},this._scrollToOffset=(e,{adjustments:t,behavior:n}={})=>{let r={target:e+(t??0),smooth:n===`smooth`};return this.pendingWrite=r,this.options.scrollToFn(e-this._holdOffset,{behavior:n,adjustments:t},this),r},this.getCommandWrittenOffset=()=>this.scrollState!==null&&this.pendingWrite!==null&&!this.pendingWrite.smooth?this.pendingWrite.target:null,this._awaitingCommandReadBack=()=>{let e=this.getCommandWrittenOffset();return!(Nt()&&this._iosGesture.dragging())&&e!==null&&!wt(e,this.getScrollOffset())},this._followOffsetTarget=e=>{this.scrollState!==null&&this.scrollState.index==null&&(this.scrollState.lastTargetOffset+=e)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(e)}get scrollAdjustments(){return 0}applyScrollAdjustment(e,t){if(e===0)return!1;if(this._followOffsetTarget(e),this._canWriteScroll()){let n=this.getScrollOffset();this._clampedAdjustment=this._clampedBy(n+e);let r=this._scrollToOffset(n,{adjustments:e,behavior:t});return this.scrollOffset!==null&&(this.pendingWrite===r&&(this.scrollOffset+=e),this.scrollOffset<0&&(this.scrollOffset=0)),!0}return this._holdOffset+=e,this.scrollOffset!==null&&(this.scrollOffset+=e),!0}scheduleScrollReconcile(){this.targetWindow?this.rafId??=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}):this.scrollState=null}getScrollStateTarget(e){let t=e.toEnd?[Math.max(this.getMaxScrollOffset(),0)]:e.index==null?void 0:this.getOffsetForIndex(e.index,e.align);return t?t[0]:e.lastTargetOffset}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}if(this.scrollState.phase===`queued`){this.scheduleScrollReconcile();return}this.getMeasurements();let e=this.getScrollStateTarget(this.scrollState),t=this.scrollState.index==null?1:this.options.useAnimationFrameWithResizeObserver?3:2,n=e!==this.scrollState.lastTargetOffset;if(!n&&wt(e,this.getScrollOffset())){if(this.scrollState.phase===`smooth`?this.scrollState.phase=`smoothLanded`:this.scrollState.phase===`smoothFinishing`&&(this.scrollState.phase=`instant`),this.scrollState.stableFrames++,this.scrollState.stableFrames>=t){this.getScrollOffset()!==e&&this._scrollToOffset(e,{behavior:`auto`}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,n){let t=this.getSize()||600,n=Math.abs(e-this.getScrollOffset()),r=Xt(this.scrollState)&&n>t;this.scrollState.lastTargetOffset=e,r?this.scrollState.phase=`smooth`:this.scrollState.phase===`smooth`?this.scrollState.phase=`smoothFinishing`:this.scrollState.phase===`smoothLanded`&&(this.scrollState.phase=`instant`),this._scrollToOffset(e,{behavior:r?`smooth`:`auto`})}this.scheduleScrollReconcile()}_startScroll(e,t,n,r){this.pendingScrollAnchor=null,this._clampedAdjustment=null;let i=this._iosGesture.tail();if(r===`absolute`&&i!==null){if(i===`fling`&&Ft()){this._stopMomentum(()=>{this.scrollState?.phase!==`queued`||this._iosGesture.tail()!==`fling`||this._reportedOverscroll||(this._iosGesture.end(),this._flushHoldIfReady(!0),this._writeAwaitingCommand())}),this.scrollState={...e,startedAt:this.now(),lastTargetOffset:t,stableFrames:0,phase:`queued`,behavior:n,samples:[]},this.scheduleScrollReconcile();return}this._iosGesture.end()}this.scrollState={...e,startedAt:this.now(),lastTargetOffset:t,stableFrames:0,behavior:n,phase:Yt(n,e.index!=null&&wt(t,this.getScrollOffset()))},this._scrollToOffset(t,{behavior:n}),this.scheduleScrollReconcile()}},$t=(e,t,n,r)=>{for(;e<=t;){let i=(e+t)/2|0,a=n(i);if(a<r)e=i+1;else if(a>r)t=i-1;else return i}return e>0?e-1:0};function en(e,t,n){let r=0;for(;r<=t;){let i=(r+t)/2|0,a=e[i*2];if(a<n)r=i+1;else if(a>n)t=i-1;else return i}return r>0?r-1:0}function tn(e,t,n,r,i){let a=e.length-1;if(e.length<=r)return{startIndex:0,endIndex:a};if(r===1&&i!==null){let e=en(i,a,n),r=e,o=n+t;for(;r<a&&i[r*2]+i[r*2+1]<o;)r++;return{startIndex:e,endIndex:r}}let o=$t(0,a,t=>e[t].start,n),s=o;if(r===1)for(;s<a&&e[s].end<n+t;)s++;else if(r>1){let i=Array(r).fill(0);for(;s<a&&i.some(e=>e<n+t);){let t=e[s];i[t.lane]=t.end,s++}let c=Array(r).fill(n+t);for(;o>=0&&c.some(e=>e>=n);){let t=e[o];c[t.lane]=t.start,o--}o=Math.max(0,o-o%r),s=Math.min(a,s+(r-1-s%r))}return{startIndex:o,endIndex:s}}function nn(e){let t=new Qt(d(e)),n=te(t),r=t._didMount();return c(()=>d(e).getScrollElement(),e=>{e&&t._willUpdate()},{immediate:!0}),c(()=>d(e),e=>{t.setOptions({...e,onChange:(t,r)=>{var a;i(n),(a=e.onChange)==null||a.call(e,t,r)}}),t._willUpdate(),i(n)},{immediate:!0}),j(r),n}function rn(e){return nn(T(()=>({observeElementRect:Ht,observeElementOffset:Kt,scrollToFn:Jt,...d(e)})))}var an=O({__name:`ListboxVirtualizer`,props:{options:{type:Array,required:!0},overscan:{type:Number,required:!1},estimateSize:{type:[Number,Function],required:!1},textContent:{type:Function,required:!1}},setup(e){let t=e,n=u(),r=ot(),i=we(),{getItems:a}=me();r.isVirtual.value=!0;let o=T(()=>{let e=i.value;if(e){let t=window.getComputedStyle(e);return{start:Number.parseFloat(t.paddingBlockStart||t.paddingTop),end:Number.parseFloat(t.paddingBlockEnd||t.paddingBottom)}}return{start:0,end:0}}),s=rn({get scrollPaddingStart(){return o.value.start},get scrollPaddingEnd(){return o.value.end},get count(){return t.options.length},get horizontal(){return r.orientation.value===`horizontal`},estimateSize(e){return typeof t.estimateSize==`function`?t.estimateSize(e):t.estimateSize??28},getScrollElement(){return i.value},overscan:t.overscan??12}),c=T(()=>s.value.getVirtualItems().map(e=>{let r=n.default({option:t.options[e.index],virtualizer:s.value,virtualItem:e})[0],i=r.type===A&&Array.isArray(r.children)?r.children.find(e=>typeof e.type!=`symbol`):r;return{item:e,is:E(i,{key:`${e.key}`,"data-index":e.index,"aria-setsize":t.options.length,"aria-posinset":e.index+1,style:{position:`absolute`,top:0,left:0,transform:`translateY(${e.start}px)`,overflowAnchor:`none`}})}}));r.virtualFocusHook.on(({event:e,scroll:n})=>{let o=t.options.findIndex(e=>Array.isArray(r.modelValue.value)?Z(e,r.modelValue.value[0],r.by):Z(e,r.modelValue.value,r.by));o===-1?n?r.highlightFirstItem():requestAnimationFrame(()=>{let e=a().find(e=>e.ref.dataset.disabled!==``)?.ref;e&&r.changeHighlight(e,!1,!1)}):(e?.preventDefault(),s.value.scrollToIndex(o,{align:`start`}),requestAnimationFrame(()=>{let t=it(i.value);if(t){let i=e?!0:n?void 0:!1;r.changeHighlight(t,n,i)}}))}),r.virtualHighlightHook.on(e=>{let n=t.options.findIndex(t=>Z(t,e,r.by));s.value.scrollToIndex(n,{align:`start`}),requestAnimationFrame(()=>{let e=it(i.value);e&&r.changeHighlight(e)})});let l=ve(``,1e3),f=T(()=>{let e=e=>t.textContent?t.textContent(e):e?.toString().toLowerCase();return t.options.map((t,n)=>({index:n,textContent:e(t)}))});function p(e,n){if(!r.firstValue?.value||!r.multiple.value||!Array.isArray(r.modelValue.value))return;let i=a().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===r.highlightedElement.value)?.value;if(!i)return;let o=null;switch(n){case`prev`:case`next`:o=ae(t.options,r.firstValue.value,i);break;case`first`:o=ae(t.options,r.firstValue.value,t.options?.[0]);break;case`last`:o=ae(t.options,r.firstValue.value,t.options.at(-1))}r.modelValue.value=o}return r.virtualKeydownHook.on(e=>{let n=e.altKey||e.ctrlKey||e.metaKey;if(e.key===`Tab`&&!n)return;let o=Ke[e.key];if(n&&e.key===`a`&&r.multiple.value?(e.preventDefault(),r.modelValue.value=[...t.options],o=`last`):e.shiftKey&&o&&p(e,o),[`first`,`last`].includes(o)){e.preventDefault();let n=o===`first`?0:t.options.length-1;s.value.scrollToIndex(n),requestAnimationFrame(()=>{let e=a(),t=o===`first`?e[0]:e.at(-1);t&&r.changeHighlight(t.ref)})}else if(!o&&!n){l.value+=e.key;let t=Number(pe()?.getAttribute(`data-index`)),n=f.value[t].textContent,a=f.value.map(e=>e.textContent??``),o=_e(a,l.value,n),c=f.value.find(e=>e.textContent===o);c&&(s.value.scrollToIndex(c.index,{align:`start`}),requestAnimationFrame(()=>{let e=i.value.querySelector(`[data-index="${c.index}"]`);e instanceof HTMLElement&&r.changeHighlight(e)}))}}),(e,t)=>(k(),y(`div`,{"data-reka-virtualizer":``,style:S({position:`relative`,width:`100%`,height:`${d(s).getTotalSize()}px`})},[(k(!0),y(A,null,b(c.value,({is:e,item:t})=>(k(),F(R(e),{key:t.index}))),128))],4))}});function on(e){let t=I(`inline`),n=I(!1),r=I(),i=T(()=>t.value===`popper`&&!n.value),a;lt({suppressHighlightScroll:i,onHighlightScrollRequest(e){a=e}});function o(e,i){(r.value!==e||t.value!==i)&&(n.value=!1,a=void 0),r.value=e,t.value=i}function s(i){if(r.value!==i||t.value!==`popper`||n.value)return;n.value=!0;let o=a;a=void 0,e.value&&o?.()}function c(e){r.value===e&&(r.value=void 0,t.value=`inline`,n.value=!1,a=void 0)}return{onContentPositionChange:o,onContentPlaced:s,onContentUnmount:c}}var[$,sn]=K(`ComboboxRoot`),cn=O({__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},unmountOnHide:{type:Boolean,required:!1,default:!0},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},loop:{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`,`update:open`],setup(e,{expose:t,emit:n}){let i=e,a=n,{primitiveElement:o,currentElement:s}=fe(),{multiple:c,disabled:u,ignoreFilter:f,resetSearchTermOnSelect:p,openOnFocus:h,openOnClick:g,dir:_,resetModelValueOnClear:v,highlightOnHover:y,loop:b,unmountOnHide:S}=m(i),w=Ve(_),E=Se(i,`modelValue`,a,{defaultValue:i.defaultValue??(c.value?[]:void 0),passive:i.modelValue===void 0,deep:!0}),D=Se(i,`open`,a,{defaultValue:i.defaultOpen,passive:i.open===void 0});async function O(e){D.value=e,U.value=``,e?(await P(),o.value?.highlightSelected(),j.value=!0,L.value?.focus()):(j.value=!1,setTimeout(()=>{!e&&i.resetSearchTermOnBlur&&A.trigger()},1))}let A=be(),j=I(!1),N=I(!1),L=I(),R=I(),te=T(()=>o.value?.highlightedElement??void 0),B=on(D),V=I(new Map),H=I(new Map),{contains:ne}=Oe({sensitivity:`base`}),U=I(``),W=T(e=>{if(!U.value||i.ignoreFilter||N.value)return{count:V.value.size,items:e?.items??new Map,groups:e?.groups??new Set(H.value.keys())};let t=0,n=new Map,r=new Set;for(let[e,r]of V.value){let i=ne(r,U.value);n.set(e,+!!i),i&&t++}for(let[e,t]of H.value)for(let i of t)if(n.get(i)>0){r.add(e);break}return{count:t,items:n,groups:r}}),G=l();return x(()=>{G?.exposed&&(G.exposed.highlightItem=o.value?.highlightItem,G.exposed.highlightFirstItem=o.value?.highlightFirstItem,G.exposed.highlightSelected=o.value?.highlightSelected)}),t({filtered:W,highlightedElement:te,highlightItem:o.value?.highlightItem,highlightFirstItem:o.value?.highlightFirstItem,highlightSelected:o.value?.highlightSelected}),sn({modelValue:E,multiple:c,disabled:u,open:D,onOpenChange:O,...B,contentId:``,isUserInputted:j,isVirtual:N,inputElement:L,highlightedElement:te,onInputElementChange:e=>L.value=e,triggerElement:R,onTriggerElementChange:e=>R.value=e,parentElement:s,resetSearchTermOnSelect:p,onResetSearchTerm:A.on,allItems:V,allGroups:H,filterSearch:U,filterState:W,ignoreFilter:f,openOnFocus:h,openOnClick:g,resetModelValueOnClear:v,unmountOnHide:S}),(t,n)=>(k(),F(d(Ne),null,{default:M(()=>[r(d(ut),C({ref_key:`primitiveElement`,ref:o},t.$attrs,{modelValue:d(E),"onUpdate:modelValue":n[0]||=e=>ee(E)?E.value=e:null,style:{pointerEvents:d(D)?`auto`:void 0},as:e.as,"as-child":e.asChild,dir:d(w),multiple:d(c),name:e.name,required:e.required,disabled:d(u),"highlight-on-hover":d(y),loop:d(b),by:i.by,onHighlight:n[1]||=e=>a(`highlight`,e)}),{default:M(()=>[z(t.$slots,`default`,{open:d(D),modelValue:d(E)})]),_:3},16,[`modelValue`,`style`,`as`,`as-child`,`dir`,`multiple`,`name`,`required`,`disabled`,`highlight-on-hover`,`loop`,`by`])]),_:3}))}}),ln=O({__name:`ComboboxAnchor`,props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{forwardRef:t}=X();return(n,i)=>(k(),F(d(ke),{"as-child":``,reference:e.reference},{default:M(()=>[r(d(J),C({ref:d(t),"as-child":e.asChild,as:e.as},n.$attrs),{default:M(()=>[z(n.$slots,`default`)]),_:3},16,[`as-child`,`as`])]),_:3},8,[`reference`]))}}),[un,dn]=K(`ComboboxContent`),fn=O({__name:`ComboboxContentImpl`,props:{position:{type:String,required:!1,default:`inline`},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},memoDependencies:{type:Array,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},dir:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},present:{type:Boolean,required:!1,default:!0}},emits:[`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`],setup(e,{emit:t}){let n=e,i=t,{position:a}=m(n),o=$(),s=Symbol(`ComboboxContent`);c(a,e=>o.onContentPositionChange(s,e),{immediate:!0});let l=T(()=>o.ignoreFilter.value?o.allItems.value.size===0:o.filterState.value.count===0),{forwardRef:u,currentElement:f}=X(),p=Te(n.present&&n.bodyLock);c([()=>n.present,()=>n.bodyLock],([e,t])=>p.value=e&&t),Be();let h=T(()=>n.present?o.parentElement.value:void 0);je(h);let g=T(()=>{if(n.position===`popper`){let{present:e,...t}=n;return t}return{}}),_=Ue(g),v={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)`};dn({position:a});let y=I(!1);x(()=>{o.inputElement.value&&(y.value=f.value.contains(o.inputElement.value),n.present&&y.value&&o.inputElement.value.focus())}),c(()=>n.present,async(e,t)=>{if(e||!t)return;let n=pe();n&&f.value.contains(n)&&(await P(),o.triggerElement.value?.focus())}),w(()=>{o.onContentUnmount(s);let e=pe();y.value&&(!e||e===document.body)&&o.triggerElement.value?.focus()});function b(e){if(o.parentElement.value?.contains(e))return!0;let t=(e instanceof Element?e.closest(`label`):null)?.control;return!!t&&!!o.parentElement.value?.contains(t)}let S={placed:()=>o.onContentPlaced(s)};return(t,s)=>(k(),F(d(Q),{"as-child":``},{default:M(()=>[r(d(Ae),{"as-child":``,present:n.present,onMountAutoFocus:s[5]||=U(()=>{},[`prevent`]),onUnmountAutoFocus:s[6]||=U(()=>{},[`prevent`])},{default:M(()=>[r(d(Pe),{"as-child":``,present:n.present,"disable-outside-pointer-events":e.disableOutsidePointerEvents,onDismiss:s[0]||=e=>d(o).onOpenChange(!1),onFocusOutside:s[1]||=e=>{b(e.target)&&e.preventDefault(),i(`focusOutside`,e)},onInteractOutside:s[2]||=e=>i(`interactOutside`,e),onEscapeKeyDown:s[3]||=e=>i(`escapeKeyDown`,e),onPointerDownOutside:s[4]||=e=>{b(e.target)&&e.preventDefault(),i(`pointerDownOutside`,e)}},{default:M(()=>[(k(),F(R(d(a)===`popper`?d(Ie):d(J)),C({...t.$attrs,...d(_)},{id:d(o).contentId,ref:d(u),"memo-dependencies":d(a)===`popper`?[d(o).filterSearch.value,d(o).filterState.value]:void 0,"data-state":d(o).open.value?`open`:`closed`,"data-empty":l.value?``:void 0,style:{display:n.hideWhenEmpty&&l.value?`none`:`flex`,flexDirection:`column`,outline:`none`,...d(a)===`popper`?v:{}}},D(d(a)===`popper`?S:{})),{default:M(()=>[z(t.$slots,`default`)]),_:3},16,[`id`,`memo-dependencies`,`data-state`,`data-empty`,`style`]))]),_:3},8,[`present`,`disable-outside-pointer-events`])]),_:3},8,[`present`])]),_:3}))}}),pn=O({__name:`ComboboxArrow`,props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`svg`}},setup(e){let n=e,r=$(),i=un();return X(),(e,a)=>d(r).open.value&&d(i).position.value===`popper`?(k(),F(d(De),t(C({key:0},n)),{default:M(()=>[z(e.$slots,`default`)]),_:3},16)):B(`v-if`,!0)}}),mn=O({__name:`ComboboxCancel`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e;X();let n=$();function r(){n.inputElement.value&&(n.inputElement.value.value=``,n.inputElement.value.focus()),n.resetModelValueOnClear?.value&&(n.modelValue.value=n.multiple.value?[]:null),n.filterSearch.value=``}return(n,i)=>(k(),F(d(J),C({type:e.as===`button`?`button`:void 0},t,{tabindex:`-1`,onClick:r}),{default:M(()=>[z(n.$slots,`default`)]),_:3},16,[`type`]))}}),hn=O({__name:`ComboboxContent`,props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},memoDependencies:{type:Array,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},dir:{type:String,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 n=Ee(e,t),{forwardRef:i}=X(),a=$();return a.contentId||=W(void 0,`reka-combobox-content`),(t,o)=>(k(),F(d(We),{present:e.forceMount||d(a).open.value,"force-mount":e.forceMount||!d(a).unmountOnHide.value},{default:M(({present:e})=>[g(r(fn,C({...d(n),...t.$attrs},{ref:d(i),present:d(a).unmountOnHide.value||e}),{default:M(()=>[z(t.$slots,`default`)]),_:3},16,[`present`]),[[ne,d(a).unmountOnHide.value||e]])]),_:3},8,[`present`,`force-mount`]))}}),gn=O({__name:`ComboboxEmpty`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let n=e,r=$(),i=T(()=>r.ignoreFilter.value?r.allItems.value.size===0:r.filterState.value.count===0);return(e,r)=>i.value?(k(),F(d(J),t(C({key:0},n)),{default:M(()=>[z(e.$slots,`default`,{},()=>[r[0]||=a(`No options`,-1)])]),_:3},16)):B(`v-if`,!0)}}),[_n,vn]=K(`ComboboxGroup`),yn=O({__name:`ComboboxGroup`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,n=W(void 0,`reka-combobox-group`),r=$(),i=T(()=>r.ignoreFilter.value?!0:!r.filterSearch.value||r.filterState.value.groups.has(n)),a=vn({id:n,labelId:``});return x(()=>{r.allGroups.value.has(n)||r.allGroups.value.set(n,new Set)}),w(()=>{r.allGroups.value.delete(n)}),(e,r)=>(k(),F(d(mt),C({id:d(n),"aria-labelledby":d(a).labelId},t,{hidden:!i.value||void 0}),{default:M(()=>[z(e.$slots,`default`)]),_:3},16,[`id`,`aria-labelledby`,`hidden`]))}}),bn=O({__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 n=e,r=t,i=$(),a=ot(),{primitiveElement:o,currentElement:s}=fe(),l=Se(n,`modelValue`,r,{passive:n.modelValue===void 0});x(()=>{s.value&&i.onInputElementChange(s.value)});let{isComposing:u,shouldDeferInput:f,handleCompositionStart:p,handleCompositionUpdate:m,handleCompositionEnd:h}=Y(e=>{let t=e.target;t&&_(t.value)});function g(e){u.value||(e.preventDefault(),i.open.value||i.onOpenChange(!0))}function _(e){i.open.value?i.filterSearch.value=e:(i.onOpenChange(!0),P(()=>{e&&(i.filterSearch.value=e,a.highlightFirstItem())}))}function v(e){f.value||_(e.target.value)}function y(){i.openOnFocus.value&&!i.open.value&&i.onOpenChange(!0)}function b(e){if(!i.open.value)return;let t=e.relatedTarget;if(!t)return;let n=i.parentElement.value?.contains(t),r=document.getElementById(i.contentId)?.contains(t);!n&&!r&&requestAnimationFrame(()=>{if(!i.open.value)return;let e=document.activeElement;!i.parentElement.value?.contains(e)&&!document.getElementById(i.contentId)?.contains(e)&&i.onOpenChange(!1)})}function S(){i.openOnClick.value&&!i.open.value&&i.onOpenChange(!0)}function C(){let e=i.modelValue.value;n.displayValue?l.value=n.displayValue(e):!i.multiple.value&&e&&!Array.isArray(e)?typeof e==`object`?l.value=``:l.value=e.toString():l.value=``,P(()=>{l.value=l.value})}return i.onResetSearchTerm(()=>{C()}),c(i.modelValue,async()=>{!i.isUserInputted.value&&i.resetSearchTermOnSelect.value&&C()},{immediate:!0,deep:!0}),c(i.filterState,(e,t)=>{!i.isVirtual.value&&t.count===0&&a.highlightFirstItem()}),(t,n)=>(k(),F(d(dt),{ref_key:`primitiveElement`,ref:o,modelValue:d(l),"onUpdate:modelValue":n[0]||=e=>ee(l)?l.value=e:null,as:e.as,"as-child":e.asChild,"auto-focus":e.autoFocus,disabled:e.disabled,"aria-expanded":d(i).open.value,"aria-controls":d(i).contentId,"aria-autocomplete":`list`,role:`combobox`,autocomplete:`off`,onClick:S,onInput:v,onKeydown:H(g,[`down`,`up`]),onFocus:y,onBlur:b,onCompositionstart:d(p),onCompositionupdate:d(m),onCompositionend:d(h)},{default:M(()=>[z(t.$slots,`default`)]),_:3},8,[`modelValue`,`as`,`as-child`,`auto-focus`,`disabled`,`aria-expanded`,`aria-controls`,`onCompositionstart`,`onCompositionupdate`,`onCompositionend`]))}}),xn=O({__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:n}){let r=e,i=n,o=W(void 0,`reka-combobox-item`),s=$(),c=_n(null),{primitiveElement:l,currentElement:u}=fe();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 f=T(()=>{if(s.isVirtual.value||s.ignoreFilter.value||!s.filterSearch.value)return!0;{let e=s.filterState.value.items.get(o);return e===void 0||e>0}});return x(()=>{s.allItems.value.set(o,r.textValue||u.value.textContent||u.value.innerText);let e=c?.id;e&&(s.allGroups.value.has(e)?s.allGroups.value.get(e)?.add(o):s.allGroups.value.set(e,new Set([o])))}),w(()=>{s.allItems.value.delete(o)}),(n,c)=>f.value?h([f.value,d(s).filterSearch.value,d(s).disabled.value,e.disabled,r.value,r.as,r.asChild,...Object.values(n.$attrs)],()=>(k(),F(d(vt),C({key:0},r,{id:d(o),ref_key:`primitiveElement`,ref:l,disabled:d(s).disabled.value||e.disabled,onSelect:c[0]||=t=>{i(`select`,t),!t.defaultPrevented&&(!d(s).multiple.value&&!e.disabled&&!d(s).disabled.value?(t.preventDefault(),d(s).onOpenChange(!1),d(s).modelValue.value=r.value):d(s).multiple.value&&d(s).inputElement.value?.focus())}}),{default:M(r=>[z(n.$slots,`default`,t(V(r)),()=>[a(N(e.value),1)])]),_:3},16,[`id`,`disabled`])),c,1):B(`v-if`,!0)}}),Sn=O({__name:`ComboboxItemIndicator`,props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(e){let n=e;return(e,r)=>(k(),F(d(yt),t(V(n)),{default:M(()=>[z(e.$slots,`default`)]),_:3},16))}}),Cn=O({__name:`ComboboxLabel`,props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`div`}},setup(e){let t=e;X();let n=_n({id:``,labelId:``});return n.labelId||=W(void 0,`reka-combobox-group-label`),(e,r)=>(k(),F(d(J),C(t,{id:d(n).labelId}),{default:M(()=>[z(e.$slots,`default`)]),_:3},16,[`id`]))}}),wn=O({__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 n=e;return(e,r)=>(k(),F(d(tt),t(V(n)),{default:M(()=>[z(e.$slots,`default`)]),_:3},16))}}),Tn=O({__name:`ComboboxSeparator`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e;return X(),(e,n)=>(k(),F(d(J),C(t,{"aria-hidden":`true`}),{default:M(()=>[z(e.$slots,`default`)]),_:3},16))}}),En=O({__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:n,currentElement:r}=X(),i=$(),a=T(()=>t.disabled||i.disabled.value||!1);return x(()=>{r.value&&i.onTriggerElementChange(r.value)}),(r,o)=>(k(),F(d(J),C(t,{ref:d(n),type:e.as===`button`?`button`:void 0,tabindex:`-1`,"aria-label":`Show popup`,"aria-haspopup":`listbox`,"aria-expanded":d(i).open.value,"aria-controls":d(i).contentId,"data-state":d(i).open.value?`open`:`closed`,disabled:a.value,"data-disabled":a.value?``:void 0,"aria-disabled":a.value??void 0,onClick:o[0]||=e=>d(i).onOpenChange(!d(i).open.value)}),{default:M(()=>[z(r.$slots,`default`)]),_:3},16,[`type`,`aria-expanded`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`aria-disabled`]))}}),Dn=O({__name:`ComboboxVirtualizer`,props:{options:{type:Array,required:!0},overscan:{type:Number,required:!1},estimateSize:{type:[Number,Function],required:!1},textContent:{type:Function,required:!1}},setup(e){let n=e,r=$();return r.isVirtual.value=!0,(e,r)=>(k(),F(an,t(V(n)),{default:M(n=>[z(e.$slots,`default`,t(V(n)))]),_:3},16))}});function On(e,t){if(typeof e!=`object`||!e)return!1;let n=q(e,t);return n!=null&&n!==``}function kn(e,t){let n=t?{xs:44,sm:48,md:52,lg:56,xl:60}:{xs:24,sm:28,md:32,lg:36,xl:40};return n[e]??n.md}function An(e,t,n,r){let i=kn(t,!0),a=kn(t,!1);return r?()=>i:n?t=>On(e[t],n)?i:a:()=>a}var jn={slots:{base:[`relative group rounded-md inline-flex items-center disabled:cursor-not-allowed disabled:opacity-75`,`transition-colors`],leading:`absolute inset-y-0 start-0 flex items-center`,leadingIcon:`shrink-0 text-dimmed`,leadingAvatar:`shrink-0`,leadingAvatarSize:``,trailing:`absolute inset-y-0 end-0 flex items-center`,trailingIcon:`shrink-0 text-dimmed`,value:`truncate pointer-events-none`,placeholder:`truncate text-dimmed`,arrow:`fill-bg stroke-default`,content:[`max-h-[min(15rem,var(--reka-select-content-available-height,15rem))] w-(--reka-select-trigger-width) bg-default shadow-lg rounded-md ring ring-default overflow-hidden origin-(--reka-select-content-transform-origin) pointer-events-auto data-[state=closed]:pointer-events-none! flex flex-col`,`max-h-[min(15rem,var(--reka-combobox-content-available-height,15rem))] origin-(--reka-combobox-content-transform-origin) w-(--reka-combobox-trigger-width)`],viewport:`relative scroll-py-1 overflow-y-auto flex-1`,group:`p-1 isolate`,empty:`text-center text-muted`,label:`font-semibold text-highlighted`,separator:`-mx-1 my-1 h-px bg-border`,item:[`group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75 text-default data-highlighted:not-data-disabled:text-highlighted data-highlighted:not-data-disabled:before:bg-elevated/50`,`transition-colors before:transition-colors`],itemLeadingIcon:[`shrink-0 text-dimmed group-data-highlighted:not-group-data-disabled:text-default`,`transition-colors`],itemLeadingAvatar:`shrink-0`,itemLeadingAvatarSize:``,itemLeadingChip:`shrink-0`,itemLeadingChipSize:``,itemTrailing:`ms-auto inline-flex gap-1.5 items-center`,itemTrailingIcon:`shrink-0`,itemWrapper:`flex-1 flex flex-col min-w-0`,itemLabel:`truncate`,itemDescription:`truncate text-muted`,input:`border-b border-default`,focusScope:`flex flex-col min-h-0`,trailingClear:`p-0`},variants:{fieldGroup:{horizontal:`not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]`,vertical:`not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]`},size:{xs:{base:`px-2 py-1 text-sm/4 gap-1`,leading:`ps-2`,trailing:`pe-2`,leadingIcon:`size-4`,leadingAvatarSize:`3xs`,trailingIcon:`size-4`,label:`p-1 text-[10px]/3 gap-1`,item:`p-1 text-xs gap-1`,itemLeadingIcon:`size-4`,itemLeadingAvatarSize:`3xs`,itemLeadingChip:`size-4`,itemLeadingChipSize:`sm`,itemTrailingIcon:`size-4`,empty:`p-2 text-xs`},sm:{base:`px-2.5 py-1.5 text-sm/4 gap-1.5`,leading:`ps-2.5`,trailing:`pe-2.5`,leadingIcon:`size-4`,leadingAvatarSize:`3xs`,trailingIcon:`size-4`,label:`p-1.5 text-[10px]/3 gap-1.5`,item:`p-1.5 text-xs gap-1.5`,itemLeadingIcon:`size-4`,itemLeadingAvatarSize:`3xs`,itemLeadingChip:`size-4`,itemLeadingChipSize:`sm`,itemTrailingIcon:`size-4`,empty:`p-2.5 text-xs`},md:{base:`px-2.5 py-1.5 text-base/5 gap-1.5`,leading:`ps-2.5`,trailing:`pe-2.5`,leadingIcon:`size-5`,leadingAvatarSize:`2xs`,trailingIcon:`size-5`,label:`p-1.5 text-xs gap-1.5`,item:`p-1.5 text-sm gap-1.5`,itemLeadingIcon:`size-5`,itemLeadingAvatarSize:`2xs`,itemLeadingChip:`size-5`,itemLeadingChipSize:`md`,itemTrailingIcon:`size-5`,empty:`p-2.5 text-sm`},lg:{base:`px-3 py-2 text-base/5 gap-2`,leading:`ps-3`,trailing:`pe-3`,leadingIcon:`size-5`,leadingAvatarSize:`2xs`,trailingIcon:`size-5`,label:`p-2 text-xs gap-2`,item:`p-2 text-sm gap-2`,itemLeadingIcon:`size-5`,itemLeadingAvatarSize:`2xs`,itemLeadingChip:`size-5`,itemLeadingChipSize:`md`,itemTrailingIcon:`size-5`,empty:`p-3 text-sm`},xl:{base:`px-3 py-2 text-base gap-2`,leading:`ps-3`,trailing:`pe-3`,leadingIcon:`size-6`,leadingAvatarSize:`xs`,trailingIcon:`size-6`,label:`p-2 text-sm gap-2`,item:`p-2 text-base gap-2`,itemLeadingIcon:`size-6`,itemLeadingAvatarSize:`xs`,itemLeadingChip:`size-6`,itemLeadingChipSize:`lg`,itemTrailingIcon:`size-6`,empty:`p-3 text-base`}},variant:{outline:`text-highlighted bg-default ring ring-inset ring-accented hover:bg-elevated disabled:bg-default`,soft:`text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50`,subtle:`text-highlighted bg-elevated ring ring-inset ring-accented hover:bg-accented/75 disabled:bg-elevated`,ghost:`text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent`,none:`text-highlighted bg-transparent focus:outline-none`},color:{primary:``,secondary:``,success:``,info:``,warning:``,error:``,neutral:``},leading:{true:``},trailing:{true:``},loading:{true:``},highlight:{true:``},fixed:{false:``},type:{file:`file:me-1.5 file:font-medium file:text-muted file:outline-none`},position:{popper:{content:`data-[state=open]:animate-[scale-in_100ms_var(--ease-out)] data-[state=closed]:animate-[scale-out_100ms_var(--ease-out)]`},"item-aligned":{content:``}},multiple:{true:``},virtualize:{true:{viewport:`p-1 isolate`},false:{viewport:`divide-y divide-default`}}},compoundVariants:[{color:`primary`,variant:[`outline`,`subtle`],class:`outline-primary/25 focus-visible:outline-3 focus-visible:ring-primary`},{color:`secondary`,variant:[`outline`,`subtle`],class:`outline-secondary/25 focus-visible:outline-3 focus-visible:ring-secondary`},{color:`success`,variant:[`outline`,`subtle`],class:`outline-success/25 focus-visible:outline-3 focus-visible:ring-success`},{color:`info`,variant:[`outline`,`subtle`],class:`outline-info/25 focus-visible:outline-3 focus-visible:ring-info`},{color:`warning`,variant:[`outline`,`subtle`],class:`outline-warning/25 focus-visible:outline-3 focus-visible:ring-warning`},{color:`error`,variant:[`outline`,`subtle`],class:`outline-error/25 focus-visible:outline-3 focus-visible:ring-error`},{color:`primary`,variant:[`soft`,`ghost`],class:`outline-primary/25 focus-visible:outline-3`},{color:`secondary`,variant:[`soft`,`ghost`],class:`outline-secondary/25 focus-visible:outline-3`},{color:`success`,variant:[`soft`,`ghost`],class:`outline-success/25 focus-visible:outline-3`},{color:`info`,variant:[`soft`,`ghost`],class:`outline-info/25 focus-visible:outline-3`},{color:`warning`,variant:[`soft`,`ghost`],class:`outline-warning/25 focus-visible:outline-3`},{color:`error`,variant:[`soft`,`ghost`],class:`outline-error/25 focus-visible:outline-3`},{color:`primary`,highlight:!0,class:`ring ring-inset ring-primary`},{color:`secondary`,highlight:!0,class:`ring ring-inset ring-secondary`},{color:`success`,highlight:!0,class:`ring ring-inset ring-success`},{color:`info`,highlight:!0,class:`ring ring-inset ring-info`},{color:`warning`,highlight:!0,class:`ring ring-inset ring-warning`},{color:`error`,highlight:!0,class:`ring ring-inset ring-error`},{color:`neutral`,variant:[`outline`,`subtle`],class:`outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted`},{color:`neutral`,variant:[`soft`,`ghost`],class:`outline-inverted/25 focus-visible:outline-3`},{color:`neutral`,highlight:!0,class:`ring ring-inset ring-inverted`},{leading:!0,size:`xs`,class:`ps-7`},{leading:!0,size:`sm`,class:`ps-8`},{leading:!0,size:`md`,class:`ps-9`},{leading:!0,size:`lg`,class:`ps-10`},{leading:!0,size:`xl`,class:`ps-11`},{trailing:!0,size:`xs`,class:`pe-7`},{trailing:!0,size:`sm`,class:`pe-8`},{trailing:!0,size:`md`,class:`pe-9`},{trailing:!0,size:`lg`,class:`pe-10`},{trailing:!0,size:`xl`,class:`pe-11`},{loading:!0,leading:!0,class:{leadingIcon:`animate-spin`}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:`animate-spin`}},{fixed:!1,size:`xs`,class:`md:text-xs`},{fixed:!1,size:`sm`,class:`md:text-xs`},{fixed:!1,size:`md`,class:`md:text-sm`},{fixed:!1,size:`lg`,class:`md:text-sm`}],defaultVariants:{size:`md`,color:`primary`,variant:`outline`,position:`popper`}},Mn=[`aria-labelledby`,`aria-multiselectable`],Nn=Object.assign({inheritAttrs:!1},{__name:`USelectMenu`,props:e({id:{type:String,required:!1},placeholder:{type:String,required:!1},searchInput:{type:[Boolean,Object],required:!1,default:!0},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},selectedIcon:{type:null,required:!1},clear:{type:[Boolean,Object],required:!1},clearIcon:{type:null,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},virtualize:{type:[Boolean,Object],required:!1,default:!1},valueKey:{type:null,required:!1},labelKey:{type:null,required:!1,default:`label`},descriptionKey:{type:null,required:!1,default:`description`},items:{type:null,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},modelModifiers:{type:null,required:!1},multiple:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},fixed:{type:Boolean,required:!1},createItem:{type:[Boolean,String,Object],required:!1},filterFields:{type:Array,required:!1},ignoreFilter:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},class:{type:null,required:!1},ui:{type:Object,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},resetModelValueOnClear:{type:Boolean,required:!1,default:!0},highlightOnHover:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},{searchTerm:{type:String,default:``},searchTermModifiers:{}}),emits:e([`change`,`blur`,`focus`,`create`,`clear`,`highlight`,`update:modelValue`,`update:open`],[`update:searchTerm`]),setup(e,{expose:i,emit:s}){let l=e,m=s,h=u(),g=ce(`selectMenu`,l),S=o(e,`searchTerm`,{type:String,default:``}),{t:w}=nt(),E=re(),{filterGroups:D}=Me(),O=He(ye(g,`modelValue`,`defaultValue`,`open`,`defaultOpen`,`required`,`multiple`,`resetSearchTermOnBlur`,`resetSearchTermOnSelect`,`resetModelValueOnClear`,`highlightOnHover`,`loop`,`by`),m),ee=Fe(L(()=>g.portal)),R=L(()=>G(g.content,{side:`bottom`,sideOffset:8,collisionPadding:8,position:`popper`})),te=L(()=>G(g.arrow,{rounded:!0})),ne=T(()=>typeof g.clear==`object`?g.clear:{}),W=L(()=>g.virtualize?G(typeof g.virtualize==`boolean`?{}:g.virtualize,{estimateSize:An(We.value,je.value??`md`,g.descriptionKey,!!h[`item-description`])}):!1),ie=L(()=>G(g.searchInput,{placeholder:w(`selectMenu.search`),variant:`none`,fixed:g.fixed})),{emitFormBlur:ae,emitFormFocus:K,emitFormInput:fe,emitFormChange:pe,size:me,color:he,id:ge,name:_e,highlight:ve,disabled:be,ariaAttrs:xe}=$e(l),{orientation:Se,size:we}=Je(l),{isLeading:J,isTrailing:Te,leadingIconName:Ee,trailingIconName:De}=Qe(T(()=>({icon:g.icon,leading:g.leading,leadingIcon:g.leadingIcon,trailing:g.trailing,trailingIcon:g.trailingIcon??E.ui.icons.chevronDown,loading:g.loading,loadingIcon:g.loadingIcon}))),Oe=T(()=>he.value??g.color),ke=T(()=>ve.value??g.highlight),je=T(()=>we.value??me.value??g.size),Ne=T(()=>be.value??g.disabled),[Pe,Ie]=Ce(),[Re,ze]=Ce({props:{item:{type:[Object,String,Number,Boolean],required:!0},index:{type:Number,required:!1}}}),Y=T(()=>de({extend:jn,...E.ui?.selectMenu||{}})({color:Oe.value,variant:g.variant,size:je.value,loading:g.loading,highlight:ke.value,fixed:g.fixed,leading:J.value||!!g.avatar||!!h.leading,trailing:Te.value||!!h.trailing,fieldGroup:Se.value,virtualize:!!g.virtualize,multiple:g.multiple}));function Be(e){if(g.multiple&&Array.isArray(e)){let t=e.map(e=>oe(X.value,e,{labelKey:g.labelKey,valueKey:g.valueKey,by:g.by})).filter(e=>e!=null&&e!==``);return t.length>0?t.join(`, `):void 0}return oe(X.value,e,{labelKey:g.labelKey,valueKey:g.valueKey,by:g.by})}let Ve=T(()=>g.items?.length?ue(g.items)?g.items:[g.items]:[]),X=T(()=>Ve.value.flatMap(e=>e)),Ue=T(()=>{if(g.ignoreFilter||!S.value)return Ve.value;let e=Array.isArray(g.filterFields)?g.filterFields:[g.labelKey];return D(Ve.value,S.value,{fields:e,isStructural:e=>Q(e)&&!!e.type&&[`label`,`separator`].includes(e.type)})}),We=T(()=>Ue.value.flatMap(e=>e)),Ge=T(()=>{if(!g.createItem||!S.value)return!1;let e=g.valueKey?{[g.valueKey]:S.value}:S.value;return typeof g.createItem==`object`&&g.createItem.when===`always`||g.createItem===`always`?!We.value.find(t=>le(t,e,g.by??g.valueKey)):!We.value.length}),Ke=T(()=>typeof g.createItem==`object`?g.createItem.position:`bottom`),tt=p(`triggerRef`);function rt(){g.autofocus&&tt.value?.$el?.focus({focusVisible:!0})}let it;x(()=>{it=setTimeout(()=>{rt()},g.autofocusDelay)}),j(()=>clearTimeout(it));function at(e){if(n(g.modelValue)===e)return;g.modelModifiers?.trim&&(typeof e==`string`||e==null)&&(e=e?.trim()??null),g.modelModifiers?.number&&(e=se(e)),g.modelModifiers?.nullable&&(e??=null),g.modelModifiers?.optional&&!g.modelModifiers?.nullable&&e!==null&&(e??=void 0);let t=new Event(`change`,{target:{value:e}});m(`change`,t),pe(),fe(),g.resetSearchTermOnSelect&&(S.value=``)}let Z=I(!1),ot;j(()=>clearTimeout(ot));function st(e){if(Z.value=e,e){let e=new FocusEvent(`focus`);m(`focus`,e),K(),clearTimeout(ot)}else{let e=new FocusEvent(`blur`);m(`blur`,e),ae(),g.resetSearchTermOnBlur&&(ot=setTimeout(()=>{S.value=``},100))}}function ct(e){if(Z.value)return;let t=e.currentTarget;e.preventDefault(),t.click()}function lt(e){e.preventDefault(),e.stopPropagation(),m(`create`,S.value)}function ut(e,t){Q(t)&&(t.disabled?e.preventDefault():t.onSelect?.(e))}function Q(e){return typeof e==`object`&&!!e}function dt(e){return g.multiple&&Array.isArray(e)?e.length===0:e==null||e===``}function ft(){Ne.value||m(`clear`)}function pt(e){ie.value.autofocus===!1&&e.preventDefault()}let mt=p(`focusScopeRef`);function ht(e){let t=mt.value?.$el;e.defaultPrevented||t?.parentElement?.dataset.state!==`open`||(e.preventDefault(),((ie.value.autofocus===!1?null:t.querySelector(`[data-slot="input"] input`))??t).focus({preventScroll:!0}))}function gt(e){let t=document.activeElement;t&&t!==document.body&&!e.target.contains(t)&&e.preventDefault()}let _t=p(`viewportRef`),vt=f(),yt=T(()=>ge.value??`select-menu-${vt}`),bt=`select-menu-listbox-${vt}`,xt=p(`comboboxRootRef`);return c(()=>g.items,async()=>{Z.value&&g.createItem&&(await P(),xt.value?.highlightFirstItem?.())},{flush:`post`}),i({triggerRef:L(()=>tt.value?.$el),viewportRef:L(()=>_t.value)}),(e,n)=>(k(),y(A,null,[r(d(Pe),null,{default:M(()=>[r(d(xn),{"data-slot":`item`,class:_(Y.value.item({class:d(g).ui?.item})),value:S.value,onSelect:lt},{default:M(()=>[v(`span`,{"data-slot":`itemLabel`,class:_(Y.value.itemLabel({class:d(g).ui?.itemLabel}))},[z(e.$slots,`create-item-label`,{item:S.value},()=>[a(N(d(w)(`selectMenu.create`,{label:S.value})),1)])],2)]),_:3},8,[`class`,`value`])]),_:3}),r(d(Re),null,{default:M(({item:t,index:n})=>[Q(t)&&t.type===`label`?(k(),F(d(Cn),{key:0,"data-slot":`label`,class:_(Y.value.label({class:[d(g).ui?.label,t.ui?.label,t.class]}))},{default:M(()=>[a(N(d(q)(t,d(g).labelKey)),1)]),_:2},1032,[`class`])):Q(t)&&t.type===`separator`?(k(),F(d(Tn),{key:1,"data-slot":`separator`,class:_(Y.value.separator({class:[d(g).ui?.separator,t.ui?.separator,t.class]}))},null,8,[`class`])):(k(),F(d(xn),{key:2,"data-slot":`item`,class:_(Y.value.item({class:[d(g).ui?.item,Q(t)&&t.ui?.item,Q(t)&&t.class]})),disabled:Q(t)&&t.disabled,value:d(g).valueKey&&Q(t)?d(q)(t,d(g).valueKey):t,onSelect:e=>ut(e,t)},{default:M(()=>[z(e.$slots,`item`,{item:t,index:n,ui:Y.value},()=>[z(e.$slots,`item-leading`,{item:t,index:n,ui:Y.value},()=>[Q(t)&&t.icon?(k(),F(qe,{key:0,name:t.icon,"data-slot":`itemLeadingIcon`,class:_(Y.value.itemLeadingIcon({class:[d(g).ui?.itemLeadingIcon,t.ui?.itemLeadingIcon]}))},null,8,[`name`,`class`])):Q(t)&&t.avatar?(k(),F(Xe,C({key:1,size:t.ui?.itemLeadingAvatarSize||d(g).ui?.itemLeadingAvatarSize||Y.value.itemLeadingAvatarSize()},t.avatar,{"data-slot":`itemLeadingAvatar`,class:Y.value.itemLeadingAvatar({class:[d(g).ui?.itemLeadingAvatar,t.ui?.itemLeadingAvatar]})}),null,16,[`size`,`class`])):Q(t)&&t.chip?(k(),F(Ze,C({key:2,size:t.ui?.itemLeadingChipSize||d(g).ui?.itemLeadingChipSize||Y.value.itemLeadingChipSize(),inset:``,standalone:``},t.chip,{"data-slot":`itemLeadingChip`,class:Y.value.itemLeadingChip({class:[d(g).ui?.itemLeadingChip,t.ui?.itemLeadingChip]})}),null,16,[`size`,`class`])):B(``,!0)]),v(`span`,{"data-slot":`itemWrapper`,class:_(Y.value.itemWrapper({class:[d(g).ui?.itemWrapper,Q(t)&&t.ui?.itemWrapper]}))},[v(`span`,{"data-slot":`itemLabel`,class:_(Y.value.itemLabel({class:[d(g).ui?.itemLabel,Q(t)&&t.ui?.itemLabel]}))},[z(e.$slots,`item-label`,{item:t,index:n},()=>[a(N(Q(t)?d(q)(t,d(g).labelKey):t),1)])],2),Q(t)&&(d(q)(t,d(g).descriptionKey)||h[`item-description`])?(k(),y(`span`,{key:0,"data-slot":`itemDescription`,class:_(Y.value.itemDescription({class:[d(g).ui?.itemDescription,Q(t)&&t.ui?.itemDescription]}))},[z(e.$slots,`item-description`,{item:t,index:n},()=>[a(N(d(q)(t,d(g).descriptionKey)),1)])],2)):B(``,!0)],2),v(`span`,{"data-slot":`itemTrailing`,class:_(Y.value.itemTrailing({class:[d(g).ui?.itemTrailing,Q(t)&&t.ui?.itemTrailing]}))},[z(e.$slots,`item-trailing`,{item:t,index:n,ui:Y.value}),r(d(Sn),{"as-child":``},{default:M(()=>[r(qe,{name:d(g).selectedIcon||d(E).ui.icons.check,"data-slot":`itemTrailingIcon`,class:_(Y.value.itemTrailingIcon({class:[d(g).ui?.itemTrailingIcon,Q(t)&&t.ui?.itemTrailingIcon]}))},null,8,[`name`,`class`])]),_:2},1024)],2)])]),_:2},1032,[`class`,`disabled`,`value`,`onSelect`]))]),_:3}),r(d(cn),C({ref_key:`comboboxRootRef`,ref:xt},d(O),{"ignore-filter":``,"as-child":``,name:d(_e),disabled:Ne.value,"onUpdate:modelValue":at,"onUpdate:open":st}),{default:M(({modelValue:i,open:o})=>[r(d(ln),{"as-child":``},{default:M(()=>[r(d(En),C({id:yt.value,ref_key:`triggerRef`,ref:tt,"data-slot":`base`,class:Y.value.base({class:[d(g).ui?.base,d(g).class]}),tabindex:`0`},{"aria-label":void 0,...e.$attrs,...d(xe)},{"aria-controls":bt,onKeydown:[H(ct,[`down`]),H(ct,[`up`])]}),{default:M(()=>[d(J)||d(g).avatar||h.leading?(k(),y(`span`,{key:0,"data-slot":`leading`,class:_(Y.value.leading({class:d(g).ui?.leading}))},[z(e.$slots,`leading`,{modelValue:i,open:o,ui:Y.value},()=>[d(J)&&d(Ee)?(k(),F(qe,{key:0,name:d(Ee),"data-slot":`leadingIcon`,class:_(Y.value.leadingIcon({class:d(g).ui?.leadingIcon}))},null,8,[`name`,`class`])):d(g).avatar?(k(),F(Xe,C({key:1,size:d(g).ui?.itemLeadingAvatarSize||Y.value.itemLeadingAvatarSize()},d(g).avatar,{"data-slot":`itemLeadingAvatar`,class:Y.value.itemLeadingAvatar({class:d(g).ui?.itemLeadingAvatar})}),null,16,[`size`,`class`])):B(``,!0)])],2)):B(``,!0),z(e.$slots,`default`,{modelValue:i,open:o,ui:Y.value},()=>[(k(!0),y(A,null,b([Be(i)],e=>(k(),y(A,{key:e},[e==null?(k(),y(`span`,{key:1,"data-slot":`placeholder`,class:_(Y.value.placeholder({class:d(g).ui?.placeholder}))},N(d(g).placeholder??`\xA0`),3)):(k(),y(`span`,{key:0,"data-slot":`value`,class:_(Y.value.value({class:d(g).ui?.value}))},N(e),3))],64))),128))]),d(Te)||h.trailing||d(g).clear?(k(),y(`span`,{key:1,"data-slot":`trailing`,class:_(Y.value.trailing({class:d(g).ui?.trailing}))},[z(e.$slots,`trailing`,{modelValue:i,open:o,ui:Y.value},()=>[d(g).clear&&!Ne.value&&!dt(i)?(k(),F(d(mn),{key:0,"as-child":``},{default:M(()=>[r(et,C({as:`span`,icon:d(g).clearIcon||d(E).ui.icons.close,size:je.value,variant:`link`,color:`neutral`,tabindex:`-1`},ne.value,{"data-slot":`trailingClear`,class:Y.value.trailingClear({class:d(g).ui?.trailingClear}),onClick:U(ft,[`stop`])}),null,16,[`icon`,`size`,`class`])]),_:1})):d(De)?(k(),F(qe,{key:1,name:d(De),"data-slot":`trailingIcon`,class:_(Y.value.trailingIcon({class:d(g).ui?.trailingIcon,leading:d(J)}))},null,8,[`name`,`class`])):B(``,!0)])],2)):B(``,!0)]),_:2},1040,[`id`,`class`])]),_:2},1024),r(d(wn),t(V(d(ee))),{default:M(()=>[r(d(Ye),null,{default:M(()=>[r(d(hn),C({"data-slot":`content`,class:Y.value.content({class:d(g).ui?.content})},R.value,{role:void 0,"aria-orientation":void 0,"aria-multiselectable":void 0,onFocusOutside:ht}),{default:M(()=>[r(d(Ae),{ref_key:`focusScopeRef`,ref:mt,loop:``,"data-slot":`focusScope`,class:_(Y.value.focusScope({class:d(g).ui?.focusScope})),onMountAutoFocus:pt,onUnmountAutoFocus:gt},{default:M(()=>[z(e.$slots,`content-top`),d(g).searchInput?(k(),F(d(bn),{key:0,modelValue:S.value,"onUpdate:modelValue":n[1]||=e=>S.value=e,"display-value":()=>S.value,"aria-controls":bt,"as-child":``},{default:M(()=>[r(Le,C({autofocus:``,autocomplete:`off`,size:je.value},ie.value,{"model-modifiers":{trim:d(g).modelModifiers?.trim},"data-slot":`input`,class:Y.value.input({class:d(g).ui?.input}),onChange:n[0]||=U(()=>{},[`stop`])}),null,16,[`size`,`model-modifiers`,`class`])]),_:1},8,[`modelValue`,`display-value`])):B(``,!0),r(d(gn),{"data-slot":`empty`,class:_(Y.value.empty({class:d(g).ui?.empty}))},{default:M(()=>[z(e.$slots,`empty`,{searchTerm:S.value},()=>[a(N(S.value?d(w)(`selectMenu.noMatch`,{searchTerm:S.value}):d(w)(`selectMenu.noData`)),1)])]),_:3},8,[`class`]),v(`div`,{id:bt,ref_key:`viewportRef`,ref:_t,role:`listbox`,"aria-labelledby":yt.value,"aria-multiselectable":!!d(g).multiple,"aria-orientation":`vertical`,"data-slot":`viewport`,class:_(Y.value.viewport({class:d(g).ui?.viewport}))},[d(g).virtualize?(k(),y(A,{key:0},[Ge.value&&Ke.value===`top`?(k(),F(d(Ie),{key:0})):B(``,!0),r(d(Dn),C({options:We.value,"text-content":e=>Q(e)?d(q)(e,d(g).labelKey):String(e)},W.value),{default:M(({option:e,virtualItem:t})=>[r(d(ze),{item:e,index:t.index},null,8,[`item`,`index`])]),_:1},16,[`options`,`text-content`]),Ge.value&&Ke.value===`bottom`?(k(),F(d(Ie),{key:1})):B(``,!0)],64)):(k(),y(A,{key:1},[Ge.value&&Ke.value===`top`?(k(),F(d(yn),{key:0,"data-slot":`group`,class:_(Y.value.group({class:d(g).ui?.group}))},{default:M(()=>[r(d(Ie))]),_:1},8,[`class`])):B(``,!0),(k(!0),y(A,null,b(Ue.value,(e,t)=>(k(),F(d(yn),{key:`group-${t}`,"data-slot":`group`,class:_(Y.value.group({class:d(g).ui?.group}))},{default:M(()=>[(k(!0),y(A,null,b(e,(e,n)=>(k(),F(d(ze),{key:`group-${t}-${n}`,item:e,index:n},null,8,[`item`,`index`]))),128))]),_:2},1032,[`class`]))),128)),Ge.value&&Ke.value===`bottom`?(k(),F(d(yn),{key:1,"data-slot":`group`,class:_(Y.value.group({class:d(g).ui?.group}))},{default:M(()=>[r(d(Ie))]),_:1},8,[`class`])):B(``,!0)],64))],10,Mn),z(e.$slots,`content-bottom`)]),_:3},8,[`class`]),d(g).arrow?(k(),F(d(pn),C({key:0},te.value,{"data-slot":`arrow`,class:Y.value.arrow({class:d(g).ui?.arrow})}),null,16,[`class`])):B(``,!0)]),_:3},16,[`class`])]),_:3})]),_:3},16)]),_:3},16,[`name`,`disabled`])],64))}}),Pn=Object.assign(O({inheritAttrs:!1,__name:`SkinSelect`,props:e({items:{},icon:{},placeholder:{}},{modelValue:{},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=o(e,`modelValue`),n={base:`skin-select`,content:`skin-pop`,viewport:`skin-pop-view`,item:`skin-pop-item`,label:`skin-pop-label`,empty:`skin-pop-empty`};return(r,i)=>{let a=Nn;return k(),F(a,C({modelValue:t.value,"onUpdate:modelValue":i[0]||=e=>t.value=e,items:e.items,"value-key":`value`,"search-input":!1,size:`sm`,variant:`outline`,icon:e.icon,placeholder:e.placeholder,ui:n},r.$attrs),null,16,[`modelValue`,`items`,`icon`,`placeholder`])}}}),{__name:`SkinSelect`});export{Pn as t};
@@ -1 +1 @@
1
- import{D as e,Ht as t,On as n,ct as r,ft as i,g as a,k as o,mt as s,qt as c,tt as l,v as u,xn as d,xt as f}from"./DZo3dYLJ.js";import{t as p}from"./CsyY7ot8.js";import{t as m}from"./DLkAKotw.js";import{s as h}from"./Vo4wMbnS.js";import{t as g}from"./CK9_veoz.js";import{t as _}from"./D3YCAmfu.js";import{a as v,i as y,o as b}from"./BPTrRhcw.js";import{w as x}from"#entry";var S=o({__name:`RovingFocusItem`,props:{tabStopId:{type:String,required:!1},focusable:{type:Boolean,required:!1,default:!0},active:{type:Boolean,required:!1},allowShiftKey:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(o){let S=o,C=x(),w=p(),T=a(()=>S.tabStopId||w),E=a(()=>C.currentTabStopId.value===T.value),{getItems:D,CollectionItem:O}=m();r(()=>{S.focusable&&C.onFocusableItemAdd()}),i(()=>{S.focusable&&C.onFocusableItemRemove()}),t(()=>S.focusable,(e,t)=>{e!==t&&(e?C.onFocusableItemAdd():C.onFocusableItemRemove())});function k(e){if(e.defaultPrevented)return;if(e.key===`Tab`&&e.shiftKey){C.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=v(e,C.orientation.value,C.dir.value);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!S.allowShiftKey&&e.shiftKey)return;e.preventDefault();let n=[...D().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)];if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=C.loop.value?b(n,r+1):n.slice(r+1)}l(()=>y(n))}}let{forwardRef:A,currentElement:j}=_(),M=d();t(j,e=>{M.value=e},{immediate:!0,flush:`post`}),h(M,`keydown`,k);function N(e){M.value=e.currentTarget}return(t,r)=>(s(),u(n(O),null,{default:c(()=>[e(n(g),{ref:n(A),tabindex:E.value?0:-1,"data-orientation":n(C).orientation.value,"data-active":o.active?``:void 0,"data-disabled":o.focusable?void 0:``,as:o.as,"as-child":o.asChild,onMousedown:r[0]||=e=>{o.focusable?n(C).onItemFocus(T.value):e.preventDefault()},onFocus:r[1]||=e=>n(C).onItemFocus(T.value),onFocusin:N},{default:c(()=>[f(t.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}});export{S as t};
1
+ import{D as e,Ht as t,On as n,ct as r,ft as i,g as a,k as o,mt as s,qt as c,tt as l,v as u,xn as d,xt as f}from"./DZo3dYLJ.js";import{t as p}from"./CsyY7ot8.js";import{t as m}from"./DLkAKotw.js";import{s as h}from"./Vo4wMbnS.js";import{t as g}from"./CK9_veoz.js";import{t as _}from"./D3YCAmfu.js";import{a as v,i as y,o as b}from"./BPTrRhcw.js";import{S as x}from"#entry";var S=o({__name:`RovingFocusItem`,props:{tabStopId:{type:String,required:!1},focusable:{type:Boolean,required:!1,default:!0},active:{type:Boolean,required:!1},allowShiftKey:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`span`}},setup(o){let S=o,C=x(),w=p(),T=a(()=>S.tabStopId||w),E=a(()=>C.currentTabStopId.value===T.value),{getItems:D,CollectionItem:O}=m();r(()=>{S.focusable&&C.onFocusableItemAdd()}),i(()=>{S.focusable&&C.onFocusableItemRemove()}),t(()=>S.focusable,(e,t)=>{e!==t&&(e?C.onFocusableItemAdd():C.onFocusableItemRemove())});function k(e){if(e.defaultPrevented)return;if(e.key===`Tab`&&e.shiftKey){C.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=v(e,C.orientation.value,C.dir.value);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!S.allowShiftKey&&e.shiftKey)return;e.preventDefault();let n=[...D().map(e=>e.ref).filter(e=>e.dataset.disabled!==``)];if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=C.loop.value?b(n,r+1):n.slice(r+1)}l(()=>y(n))}}let{forwardRef:A,currentElement:j}=_(),M=d();t(j,e=>{M.value=e},{immediate:!0,flush:`post`}),h(M,`keydown`,k);function N(e){M.value=e.currentTarget}return(t,r)=>(s(),u(n(O),null,{default:c(()=>[e(n(g),{ref:n(A),tabindex:E.value?0:-1,"data-orientation":n(C).orientation.value,"data-active":o.active?``:void 0,"data-disabled":o.focusable?void 0:``,as:o.as,"as-child":o.asChild,onMousedown:r[0]||=e=>{o.focusable?n(C).onItemFocus(T.value):e.preventDefault()},onFocus:r[1]||=e=>n(C).onItemFocus(T.value),onFocusin:N},{default:c(()=>[f(t.$slots,`default`)]),_:3},8,[`tabindex`,`data-orientation`,`data-active`,`data-disabled`,`as`,`as-child`])]),_:3}))}});export{S as t};
@@ -1 +1 @@
1
- import{On as e,et as t,mt as n,v as r,wt as i}from"./DZo3dYLJ.js";import{t as a}from"./HrhQecsY.js";import{m as o}from"./CuJUHLl8.js";import{t as s}from"./B_SlFcWp.js";var c={__name:`UIcon`,props:{name:{type:null,required:!0},mode:{type:String,required:!1},size:{type:[String,Number],required:!1},customize:{type:[Function,Boolean,null],required:!1}},setup(c){let l=s(o(c,`mode`,`size`,`customize`));return(o,s)=>typeof c.name==`string`?(n(),r(e(a),t({key:0,name:c.name},e(l)),null,16,[`name`])):(n(),r(i(c.name),{key:1}))}};export{c as t};
1
+ import{On as e,et as t,mt as n,v as r,wt as i}from"./DZo3dYLJ.js";import{t as a}from"./DZXukN7r.js";import{m as o}from"./CuJUHLl8.js";import{t as s}from"./B_SlFcWp.js";var c={__name:`UIcon`,props:{name:{type:null,required:!0},mode:{type:String,required:!1},size:{type:[String,Number],required:!1},customize:{type:[Function,Boolean,null],required:!1}},setup(c){let l=s(o(c,`mode`,`size`,`customize`));return(o,s)=>typeof c.name==`string`?(n(),r(e(a),t({key:0,name:c.name},e(l)),null,16,[`name`])):(n(),r(i(c.name),{key:1}))}};export{c as t};
@@ -1 +1 @@
1
- import{D as e,E as t,On as n,Zn as r,_ as i,b as a,bt as o,er as s,g as c,k as l,mt as u,o as d,qt as f,tr as p,v as m,y as h}from"./DZo3dYLJ.js";import{t as ee}from"./BJW3UkS7.js";import{t as te}from"./CjRYYbsC.js";import{a as g,i as _,t as ne}from"#entry";var re={class:`card hero`},ie={class:`chips`},ae={class:`tag tag-ghost`},oe=[`title`],se=[`title`],ce={class:`tag tag-neutral`},le={key:3,class:`tag tag-primary mono`},ue=[`title`],de={class:`story-title`},fe={class:`narrative`},pe={class:`facts`},me={class:`fact`},he={class:`fact`},v={class:`fact`},y={class:`fact`},b={class:`fact`},x={class:`mono`},S={class:`fact`},C={class:`mono`},w={class:`dim`},T={class:`fact`},E={class:`mono`},D={key:0,class:`fact`},O={class:`hero-foot`},k={class:`dim`},A={class:`bar`},j={class:`cols`},M={key:0,class:`card block`},N={class:`card-hd`},P={class:`h2`},F={class:`card-bd bug`},I={class:`steps`},L={key:1,class:`card block`},R={class:`card-hd`},ge={class:`h2`},_e={class:`card-bd`},ve={key:0,class:`callout`},ye={key:1,class:`dep-row`},be={key:2,class:`dep-row`},xe={class:`card block`},Se={class:`card-hd`},Ce={class:`h2`},we={class:`tag tag-neutral`},Te={class:`card-bd`},Ee={key:0,class:`ac`},De={class:`ac-row`},Oe={class:`ac-row`},ke={class:`ac-row`},Ae={key:0,class:`ac-row verify`},je={key:1,class:`dim`},Me={class:`card-hd task-hd`},Ne={class:`tag tag-ghost`},Pe={class:`tag tag-neutral`},Fe={class:`task-title`},Ie={class:`dim entries-ct`},Le={key:0,class:`files mono dim`},Re={class:`card-bd`},ze={key:0,class:`entries`},Be={class:`entry-hd`},Ve={class:`date mono dim`},He={class:`tag tag-neutral mono result`},Ue={class:`note`},We={key:0,class:`cmd mono`},Ge={key:1,class:`efiles dim mono`},Ke={key:1,class:`dim`},qe={class:`pager`},Je={class:`pg-k`},Ye={class:`pg-t`},Xe={key:1,class:`pg-empty`},Ze={class:`pg-k`},Qe={class:`pg-t`},$e={key:1,class:`callout warn`},z=_(l({__name:`[id]`,setup(l){let _=ne(),{storyById:z,stories:B,epicById:et,sprintById:tt,journalByTask:nt,actualRange:V,progress:H,milestoneOfStory:rt,STATE_LABEL:it,STATE_COLOR:at,TASK_LABEL:ot,TASK_COLOR:st,KIND_LABEL:ct,MS_LABEL:lt,md:U,diffDays:ut,wsjf:W,dependentsOf:G,TYPE_LABEL:dt,TYPE_COLOR:ft,TYPE_ICON:pt,PRIORITY_COLOR:mt,SEVERITY_LABEL:K,SEVERITY_COLOR:q,SCOPE_LABEL:J}=g(),Y=c(()=>z.value.get(String(_.value?.params?.id))),X=c(()=>B.value.findIndex(e=>e.id===Y.value?.id)),Z=c(()=>X.value>0?B.value[X.value-1]:null),Q=c(()=>X.value>=0&&X.value<B.value.length-1?B.value[X.value+1]:null),$=e=>nt.value.get(e)?.entries??[],ht={red:`RED 失败测试`,green:`GREEN 让测试通过`,refactor:`REFACTOR 重构`},gt={red:`tag-error`,green:`tag-success`,refactor:`tag-primary`};return(c,l)=>{let g=te,_=ee;return u(),a(`div`,null,[n(Y)?(u(),a(d,{key:0},[e(_,{to:`/`,class:`btn btn-quiet btn-sm back`},{default:f(()=>[e(g,{name:`i-lucide-arrow-left`,class:`size-3.5`}),l[0]||=t(`返回看板 `,-1)]),_:1}),i(`article`,re,[i(`div`,ie,[i(`span`,ae,p(n(Y).id),1),i(`span`,{class:r([`tag`,`tag-${n(at)[n(Y).status]}`])},p(n(it)[n(Y).status]??n(Y).status),3),i(`span`,{class:r([`tag`,`tag-${n(ft)[n(Y).type]}`])},[e(g,{name:n(pt)[n(Y).type],class:`size-3`},null,8,[`name`]),t(p(n(dt)[n(Y).type]),1)],2),i(`span`,{class:r([`tag`,`tag-${n(mt)[n(Y).priority]}`])},p(n(Y).priority),3),n(Y).bug?(u(),a(`span`,{key:0,class:r([`tag`,`tag-${n(q)[n(Y).bug.severity]}`])},[e(g,{name:`i-lucide-bug`,class:`size-3`}),t(p(n(K)[n(Y).bug.severity]),1)],2)):h(``,!0),n(Y).blocked?(u(),a(`span`,{key:1,class:`tag tag-error tag-dot`,title:n(Y).blocked.reason},`阻塞`,8,oe)):h(``,!0),n(Y).scopeChange?(u(),a(`span`,{key:2,class:`tag tag-info`,title:`${n(J)[n(Y).scopeChange.kind]}(${n(Y).scopeChange.at}):${n(Y).scopeChange.reason}`},p(n(J)[n(Y).scopeChange.kind])+` · `+p(n(Y).scopeChange.at),9,se)):h(``,!0),i(`span`,ce,[e(g,{name:`i-lucide-layers`,class:`size-3`}),t(p(n(Y).epicId)+` `+p(n(et).get(n(Y).epicId)?.title),1)]),n(Y).sprintId?(u(),a(`span`,le,[e(g,{name:`i-lucide-calendar-range`,class:`size-3`}),t(p(n(Y).sprintId),1)])):h(``,!0),(u(!0),a(d,null,o(n(rt)(n(Y).id),e=>(u(),a(`span`,{key:e.id,class:r([`tag`,e.kind===`mvp`?`tag-mint`:`tag-neutral`]),title:`${e.id} · ${e.criteria}`},p(n(ct)[e.kind])+` `+p(e.id)+` · `+p(n(lt)[e.status]),11,ue))),128))]),i(`h1`,de,p(n(Y).title),1),i(`p`,fe,p(n(Y).narrative),1),i(`div`,pe,[i(`div`,me,[l[1]||=i(`span`,{class:`k`},`点数`,-1),i(`b`,null,p(n(Y).points),1)]),i(`div`,he,[l[2]||=i(`span`,{class:`k`},`价值`,-1),i(`b`,null,p(n(Y).value),1)]),i(`div`,v,[l[3]||=i(`span`,{class:`k`},`WSJF`,-1),i(`b`,null,p(n(W)(n(Y))),1)]),i(`div`,y,[l[4]||=i(`span`,{class:`k`},`任务`,-1),i(`b`,null,p(n(H)(n(Y)).done)+`/`+p(n(H)(n(Y)).total),1)]),i(`div`,b,[l[5]||=i(`span`,{class:`k`},`计划`,-1),i(`b`,x,p(n(Y).schedule?`${n(U)(n(Y).schedule.start)} ~ ${n(U)(n(Y).schedule.end)}`:`未排期`),1)]),i(`div`,S,[l[6]||=i(`span`,{class:`k`},`实际`,-1),i(`b`,C,[n(V)(n(Y))?(u(),a(d,{key:0},[t(p(n(U)(n(V)(n(Y)).start))+` ~ `+p(n(U)(n(V)(n(Y)).end))+` `,1),i(`small`,w,`(`+p(n(ut)(n(V)(n(Y)).start,n(V)(n(Y)).end)+1)+` 天)`,1)],64)):(u(),a(d,{key:1},[t(`—`)],64))])]),i(`div`,T,[l[7]||=i(`span`,{class:`k`},`创建`,-1),i(`b`,E,p(n(Y).created),1)]),n(Y).sprintId?(u(),a(`div`,D,[l[8]||=i(`span`,{class:`k`},`所属迭代`,-1),i(`b`,null,p(n(tt).get(n(Y).sprintId)?.name),1)])):h(``,!0)]),i(`div`,O,[i(`span`,k,`任务完成度 `+p(n(H)(n(Y)).pct)+`%`,1),i(`div`,A,[i(`i`,{style:s({width:n(H)(n(Y)).pct+`%`})},null,4)])])]),i(`div`,j,[n(Y).bug?(u(),a(`article`,M,[i(`div`,N,[i(`h2`,P,[e(g,{name:`i-lucide-bug`,class:`size-3.5`}),l[9]||=t(`缺陷详情`,-1)]),i(`span`,{class:r([`tag`,`tag-${n(q)[n(Y).bug.severity]}`])},p(n(K)[n(Y).bug.severity]),3)]),i(`div`,F,[i(`div`,null,[l[10]||=i(`span`,{class:`lbl`},`影响环境`,-1),i(`p`,null,p(n(Y).bug.environment),1)]),i(`div`,null,[l[11]||=i(`span`,{class:`lbl`},`复现步骤`,-1),i(`p`,I,p(n(Y).bug.steps),1)])])])):h(``,!0),n(Y).blocked||n(Y).dependsOn?.length||n(G)(n(Y).id).length?(u(),a(`article`,L,[i(`div`,R,[i(`h2`,ge,[e(g,{name:`i-lucide-git-branch`,class:`size-3.5`}),l[12]||=t(`依赖与阻塞`,-1)])]),i(`div`,_e,[n(Y).blocked?(u(),a(`div`,ve,[e(g,{name:`i-lucide-octagon-alert`,class:`size-4`}),i(`div`,null,[l[13]||=i(`b`,null,`当前被阻塞`,-1),i(`p`,null,p(n(Y).blocked.reason)+`(自 `+p(n(Y).blocked.since)+` 起)`,1)])])):h(``,!0),n(Y).dependsOn?.length?(u(),a(`div`,ye,[l[14]||=i(`span`,{class:`lbl`},`依赖`,-1),(u(!0),a(d,null,o(n(Y).dependsOn,r=>(u(),m(_,{key:r,to:`/story/${r}`,class:`dep`},{default:f(()=>[e(g,{name:`i-lucide-arrow-left`,class:`size-3`}),t(p(r)+` `+p(n(z).get(r)?.title??``),1)]),_:2},1032,[`to`]))),128))])):h(``,!0),n(G)(n(Y).id).length?(u(),a(`div`,be,[l[15]||=i(`span`,{class:`lbl`},`被依赖`,-1),(u(!0),a(d,null,o(n(G)(n(Y).id),n=>(u(),m(_,{key:n.id,to:`/story/${n.id}`,class:`dep ghost`},{default:f(()=>[t(p(n.id)+` `+p(n.title),1),e(g,{name:`i-lucide-arrow-right`,class:`size-3`})]),_:2},1032,[`to`]))),128))])):h(``,!0)])])):h(``,!0)]),i(`article`,xe,[i(`div`,Se,[i(`h2`,Ce,[e(g,{name:`i-lucide-list-checks`,class:`size-3.5`}),l[16]||=t(`验收标准`,-1)]),i(`span`,we,p(n(Y).acceptance?.length??0)+` 条`,1)]),i(`div`,Te,[n(Y).acceptance?.length?(u(),a(`ol`,Ee,[(u(!0),a(d,null,o(n(Y).acceptance,(e,t)=>(u(),a(`li`,{key:t},[i(`div`,De,[l[17]||=i(`span`,{class:`tag tag-neutral gw`},`Given`,-1),i(`span`,null,p(e.given),1)]),i(`div`,Oe,[l[18]||=i(`span`,{class:`tag tag-info gw`},`When`,-1),i(`span`,null,p(e.when),1)]),i(`div`,ke,[l[19]||=i(`span`,{class:`tag tag-success gw`},`Then`,-1),i(`span`,null,p(e.then),1)]),e.verifyBy?.length?(u(),a(`div`,Ae,[l[20]||=i(`span`,{class:`dim`},`由谁验证`,-1),(u(!0),a(d,null,o(e.verifyBy,e=>(u(),a(`span`,{key:e,class:`tag tag-ghost`},p(e),1))),128))])):h(``,!0)]))),128))])):(u(),a(`p`,je,`还没有验收标准(草稿阶段允许为空,进迭代前必须补)。`))])]),(u(!0),a(d,null,o(n(Y).tasks,s=>(u(),a(`article`,{key:s.id,class:`card block`},[i(`div`,Me,[i(`span`,Ne,p(s.id),1),i(`span`,Pe,p(s.type),1),i(`span`,{class:r([`tag`,`tag-${n(st)[s.status]}`])},p(n(ot)[s.status]),3),i(`b`,Fe,p(s.title),1),i(`span`,Ie,p($(s.id).length)+` 条记录`,1)]),s.files?.length?(u(),a(`p`,Le,p(s.files.join(` · `)),1)):h(``,!0),i(`div`,Re,[$(s.id).length?(u(),a(`div`,ze,[(u(!0),a(d,null,o($(s.id),(o,s)=>(u(),a(`div`,{key:s,class:r([`entry`,o.phase])},[i(`div`,Be,[i(`span`,{class:r([`tag`,gt[o.phase]])},p(ht[o.phase]),3),i(`span`,Ve,p(n(U)(o.date)),1),i(`span`,He,p(o.result),1)]),i(`p`,Ue,p(o.note),1),o.testCommand?(u(),a(`p`,We,[e(g,{name:`i-lucide-terminal`,class:`size-3`}),t(p(o.testCommand),1)])):h(``,!0),o.files?.length?(u(),a(`p`,Ge,p(o.files.join(`, `)),1)):h(``,!0)],2))),128))])):(u(),a(`p`,Ke,`还没有实施记录(未开工)。`))])]))),128)),i(`div`,qe,[n(Z)?(u(),m(_,{key:0,to:`/story/${n(Z).id}`,class:`pg`},{default:f(()=>[i(`span`,Je,[e(g,{name:`i-lucide-arrow-left`,class:`size-3.5`}),l[21]||=t(`上一个`,-1)]),i(`span`,Ye,p(n(Z).id)+` `+p(n(Z).title),1)]),_:1},8,[`to`])):(u(),a(`span`,Xe)),n(Q)?(u(),m(_,{key:2,to:`/story/${n(Q).id}`,class:`pg right`},{default:f(()=>[i(`span`,Ze,[l[22]||=t(`下一个`,-1),e(g,{name:`i-lucide-arrow-right`,class:`size-3.5`})]),i(`span`,Qe,p(n(Q).id)+` `+p(n(Q).title),1)]),_:1},8,[`to`])):h(``,!0)])],64)):(u(),a(`div`,$e,[e(g,{name:`i-lucide-search-x`,class:`size-4`}),l[23]||=t(`没找到这个故事,可能 id 写错了。 `,-1)]))])}}}),[[`__scopeId`,`data-v-6e27d061`]]);export{z as default};
1
+ import{D as e,E as t,On as n,Zn as r,_ as i,b as a,bt as o,er as s,g as c,k as l,mt as u,o as d,qt as f,tr as p,v as m,y as h}from"./DZo3dYLJ.js";import{t as ee}from"./BJW3UkS7.js";import{t as te}from"./D2zrOcWn.js";import{i as g,s as _,t as ne}from"#entry";var re={class:`card hero`},ie={class:`chips`},ae={class:`tag tag-ghost`},oe=[`title`],se=[`title`],ce={class:`tag tag-neutral`},le={key:3,class:`tag tag-primary mono`},ue=[`title`],de={class:`story-title`},fe={class:`narrative`},pe={class:`facts`},me={class:`fact`},he={class:`fact`},v={class:`fact`},y={class:`fact`},b={class:`fact`},x={class:`mono`},S={class:`fact`},C={class:`mono`},w={class:`dim`},T={class:`fact`},E={class:`mono`},D={key:0,class:`fact`},O={class:`hero-foot`},k={class:`dim`},A={class:`bar`},j={class:`cols`},M={key:0,class:`card block`},N={class:`card-hd`},P={class:`h2`},F={class:`card-bd bug`},I={class:`steps`},L={key:1,class:`card block`},R={class:`card-hd`},ge={class:`h2`},_e={class:`card-bd`},ve={key:0,class:`callout`},ye={key:1,class:`dep-row`},be={key:2,class:`dep-row`},xe={class:`card block`},Se={class:`card-hd`},Ce={class:`h2`},we={class:`tag tag-neutral`},Te={class:`card-bd`},Ee={key:0,class:`ac`},De={class:`ac-row`},Oe={class:`ac-row`},ke={class:`ac-row`},Ae={key:0,class:`ac-row verify`},je={key:1,class:`dim`},Me={class:`card-hd task-hd`},Ne={class:`tag tag-ghost`},Pe={class:`tag tag-neutral`},Fe={class:`task-title`},Ie={class:`dim entries-ct`},Le={key:0,class:`files mono dim`},Re={class:`card-bd`},ze={key:0,class:`entries`},Be={class:`entry-hd`},Ve={class:`date mono dim`},He={class:`tag tag-neutral mono result`},Ue={class:`note`},We={key:0,class:`cmd mono`},Ge={key:1,class:`efiles dim mono`},Ke={key:1,class:`dim`},qe={class:`pager`},Je={class:`pg-k`},Ye={class:`pg-t`},Xe={key:1,class:`pg-empty`},Ze={class:`pg-k`},Qe={class:`pg-t`},$e={key:1,class:`callout warn`},z=g(l({__name:`[id]`,setup(l){let g=ne(),{storyById:z,stories:B,epicById:et,sprintById:tt,journalByTask:nt,actualRange:V,progress:H,milestoneOfStory:rt,STATE_LABEL:it,STATE_COLOR:at,TASK_LABEL:ot,TASK_COLOR:st,KIND_LABEL:ct,MS_LABEL:lt,md:U,diffDays:ut,wsjf:W,dependentsOf:G,TYPE_LABEL:dt,TYPE_COLOR:ft,TYPE_ICON:pt,PRIORITY_COLOR:mt,SEVERITY_LABEL:K,SEVERITY_COLOR:q,SCOPE_LABEL:J}=_(),Y=c(()=>z.value.get(String(g.value?.params?.id))),X=c(()=>B.value.findIndex(e=>e.id===Y.value?.id)),Z=c(()=>X.value>0?B.value[X.value-1]:null),Q=c(()=>X.value>=0&&X.value<B.value.length-1?B.value[X.value+1]:null),$=e=>nt.value.get(e)?.entries??[],ht={red:`RED 失败测试`,green:`GREEN 让测试通过`,refactor:`REFACTOR 重构`},gt={red:`tag-error`,green:`tag-success`,refactor:`tag-primary`};return(c,l)=>{let g=te,_=ee;return u(),a(`div`,null,[n(Y)?(u(),a(d,{key:0},[e(_,{to:`/`,class:`btn btn-quiet btn-sm back`},{default:f(()=>[e(g,{name:`i-lucide-arrow-left`,class:`size-3.5`}),l[0]||=t(`返回看板 `,-1)]),_:1}),i(`article`,re,[i(`div`,ie,[i(`span`,ae,p(n(Y).id),1),i(`span`,{class:r([`tag`,`tag-${n(at)[n(Y).status]}`])},p(n(it)[n(Y).status]??n(Y).status),3),i(`span`,{class:r([`tag`,`tag-${n(ft)[n(Y).type]}`])},[e(g,{name:n(pt)[n(Y).type],class:`size-3`},null,8,[`name`]),t(p(n(dt)[n(Y).type]),1)],2),i(`span`,{class:r([`tag`,`tag-${n(mt)[n(Y).priority]}`])},p(n(Y).priority),3),n(Y).bug?(u(),a(`span`,{key:0,class:r([`tag`,`tag-${n(q)[n(Y).bug.severity]}`])},[e(g,{name:`i-lucide-bug`,class:`size-3`}),t(p(n(K)[n(Y).bug.severity]),1)],2)):h(``,!0),n(Y).blocked?(u(),a(`span`,{key:1,class:`tag tag-error tag-dot`,title:n(Y).blocked.reason},`阻塞`,8,oe)):h(``,!0),n(Y).scopeChange?(u(),a(`span`,{key:2,class:`tag tag-info`,title:`${n(J)[n(Y).scopeChange.kind]}(${n(Y).scopeChange.at}):${n(Y).scopeChange.reason}`},p(n(J)[n(Y).scopeChange.kind])+` · `+p(n(Y).scopeChange.at),9,se)):h(``,!0),i(`span`,ce,[e(g,{name:`i-lucide-layers`,class:`size-3`}),t(p(n(Y).epicId)+` `+p(n(et).get(n(Y).epicId)?.title),1)]),n(Y).sprintId?(u(),a(`span`,le,[e(g,{name:`i-lucide-calendar-range`,class:`size-3`}),t(p(n(Y).sprintId),1)])):h(``,!0),(u(!0),a(d,null,o(n(rt)(n(Y).id),e=>(u(),a(`span`,{key:e.id,class:r([`tag`,e.kind===`mvp`?`tag-mint`:`tag-neutral`]),title:`${e.id} · ${e.criteria}`},p(n(ct)[e.kind])+` `+p(e.id)+` · `+p(n(lt)[e.status]),11,ue))),128))]),i(`h1`,de,p(n(Y).title),1),i(`p`,fe,p(n(Y).narrative),1),i(`div`,pe,[i(`div`,me,[l[1]||=i(`span`,{class:`k`},`点数`,-1),i(`b`,null,p(n(Y).points),1)]),i(`div`,he,[l[2]||=i(`span`,{class:`k`},`价值`,-1),i(`b`,null,p(n(Y).value),1)]),i(`div`,v,[l[3]||=i(`span`,{class:`k`},`WSJF`,-1),i(`b`,null,p(n(W)(n(Y))),1)]),i(`div`,y,[l[4]||=i(`span`,{class:`k`},`任务`,-1),i(`b`,null,p(n(H)(n(Y)).done)+`/`+p(n(H)(n(Y)).total),1)]),i(`div`,b,[l[5]||=i(`span`,{class:`k`},`计划`,-1),i(`b`,x,p(n(Y).schedule?`${n(U)(n(Y).schedule.start)} ~ ${n(U)(n(Y).schedule.end)}`:`未排期`),1)]),i(`div`,S,[l[6]||=i(`span`,{class:`k`},`实际`,-1),i(`b`,C,[n(V)(n(Y))?(u(),a(d,{key:0},[t(p(n(U)(n(V)(n(Y)).start))+` ~ `+p(n(U)(n(V)(n(Y)).end))+` `,1),i(`small`,w,`(`+p(n(ut)(n(V)(n(Y)).start,n(V)(n(Y)).end)+1)+` 天)`,1)],64)):(u(),a(d,{key:1},[t(`—`)],64))])]),i(`div`,T,[l[7]||=i(`span`,{class:`k`},`创建`,-1),i(`b`,E,p(n(Y).created),1)]),n(Y).sprintId?(u(),a(`div`,D,[l[8]||=i(`span`,{class:`k`},`所属迭代`,-1),i(`b`,null,p(n(tt).get(n(Y).sprintId)?.name),1)])):h(``,!0)]),i(`div`,O,[i(`span`,k,`任务完成度 `+p(n(H)(n(Y)).pct)+`%`,1),i(`div`,A,[i(`i`,{style:s({width:n(H)(n(Y)).pct+`%`})},null,4)])])]),i(`div`,j,[n(Y).bug?(u(),a(`article`,M,[i(`div`,N,[i(`h2`,P,[e(g,{name:`i-lucide-bug`,class:`size-3.5`}),l[9]||=t(`缺陷详情`,-1)]),i(`span`,{class:r([`tag`,`tag-${n(q)[n(Y).bug.severity]}`])},p(n(K)[n(Y).bug.severity]),3)]),i(`div`,F,[i(`div`,null,[l[10]||=i(`span`,{class:`lbl`},`影响环境`,-1),i(`p`,null,p(n(Y).bug.environment),1)]),i(`div`,null,[l[11]||=i(`span`,{class:`lbl`},`复现步骤`,-1),i(`p`,I,p(n(Y).bug.steps),1)])])])):h(``,!0),n(Y).blocked||n(Y).dependsOn?.length||n(G)(n(Y).id).length?(u(),a(`article`,L,[i(`div`,R,[i(`h2`,ge,[e(g,{name:`i-lucide-git-branch`,class:`size-3.5`}),l[12]||=t(`依赖与阻塞`,-1)])]),i(`div`,_e,[n(Y).blocked?(u(),a(`div`,ve,[e(g,{name:`i-lucide-octagon-alert`,class:`size-4`}),i(`div`,null,[l[13]||=i(`b`,null,`当前被阻塞`,-1),i(`p`,null,p(n(Y).blocked.reason)+`(自 `+p(n(Y).blocked.since)+` 起)`,1)])])):h(``,!0),n(Y).dependsOn?.length?(u(),a(`div`,ye,[l[14]||=i(`span`,{class:`lbl`},`依赖`,-1),(u(!0),a(d,null,o(n(Y).dependsOn,r=>(u(),m(_,{key:r,to:`/story/${r}`,class:`dep`},{default:f(()=>[e(g,{name:`i-lucide-arrow-left`,class:`size-3`}),t(p(r)+` `+p(n(z).get(r)?.title??``),1)]),_:2},1032,[`to`]))),128))])):h(``,!0),n(G)(n(Y).id).length?(u(),a(`div`,be,[l[15]||=i(`span`,{class:`lbl`},`被依赖`,-1),(u(!0),a(d,null,o(n(G)(n(Y).id),n=>(u(),m(_,{key:n.id,to:`/story/${n.id}`,class:`dep ghost`},{default:f(()=>[t(p(n.id)+` `+p(n.title),1),e(g,{name:`i-lucide-arrow-right`,class:`size-3`})]),_:2},1032,[`to`]))),128))])):h(``,!0)])])):h(``,!0)]),i(`article`,xe,[i(`div`,Se,[i(`h2`,Ce,[e(g,{name:`i-lucide-list-checks`,class:`size-3.5`}),l[16]||=t(`验收标准`,-1)]),i(`span`,we,p(n(Y).acceptance?.length??0)+` 条`,1)]),i(`div`,Te,[n(Y).acceptance?.length?(u(),a(`ol`,Ee,[(u(!0),a(d,null,o(n(Y).acceptance,(e,t)=>(u(),a(`li`,{key:t},[i(`div`,De,[l[17]||=i(`span`,{class:`tag tag-neutral gw`},`Given`,-1),i(`span`,null,p(e.given),1)]),i(`div`,Oe,[l[18]||=i(`span`,{class:`tag tag-info gw`},`When`,-1),i(`span`,null,p(e.when),1)]),i(`div`,ke,[l[19]||=i(`span`,{class:`tag tag-success gw`},`Then`,-1),i(`span`,null,p(e.then),1)]),e.verifyBy?.length?(u(),a(`div`,Ae,[l[20]||=i(`span`,{class:`dim`},`由谁验证`,-1),(u(!0),a(d,null,o(e.verifyBy,e=>(u(),a(`span`,{key:e,class:`tag tag-ghost`},p(e),1))),128))])):h(``,!0)]))),128))])):(u(),a(`p`,je,`还没有验收标准(草稿阶段允许为空,进迭代前必须补)。`))])]),(u(!0),a(d,null,o(n(Y).tasks,s=>(u(),a(`article`,{key:s.id,class:`card block`},[i(`div`,Me,[i(`span`,Ne,p(s.id),1),i(`span`,Pe,p(s.type),1),i(`span`,{class:r([`tag`,`tag-${n(st)[s.status]}`])},p(n(ot)[s.status]),3),i(`b`,Fe,p(s.title),1),i(`span`,Ie,p($(s.id).length)+` 条记录`,1)]),s.files?.length?(u(),a(`p`,Le,p(s.files.join(` · `)),1)):h(``,!0),i(`div`,Re,[$(s.id).length?(u(),a(`div`,ze,[(u(!0),a(d,null,o($(s.id),(o,s)=>(u(),a(`div`,{key:s,class:r([`entry`,o.phase])},[i(`div`,Be,[i(`span`,{class:r([`tag`,gt[o.phase]])},p(ht[o.phase]),3),i(`span`,Ve,p(n(U)(o.date)),1),i(`span`,He,p(o.result),1)]),i(`p`,Ue,p(o.note),1),o.testCommand?(u(),a(`p`,We,[e(g,{name:`i-lucide-terminal`,class:`size-3`}),t(p(o.testCommand),1)])):h(``,!0),o.files?.length?(u(),a(`p`,Ge,p(o.files.join(`, `)),1)):h(``,!0)],2))),128))])):(u(),a(`p`,Ke,`还没有实施记录(未开工)。`))])]))),128)),i(`div`,qe,[n(Z)?(u(),m(_,{key:0,to:`/story/${n(Z).id}`,class:`pg`},{default:f(()=>[i(`span`,Je,[e(g,{name:`i-lucide-arrow-left`,class:`size-3.5`}),l[21]||=t(`上一个`,-1)]),i(`span`,Ye,p(n(Z).id)+` `+p(n(Z).title),1)]),_:1},8,[`to`])):(u(),a(`span`,Xe)),n(Q)?(u(),m(_,{key:2,to:`/story/${n(Q).id}`,class:`pg right`},{default:f(()=>[i(`span`,Ze,[l[22]||=t(`下一个`,-1),e(g,{name:`i-lucide-arrow-right`,class:`size-3.5`})]),i(`span`,Qe,p(n(Q).id)+` `+p(n(Q).title),1)]),_:1},8,[`to`])):h(``,!0)])],64)):(u(),a(`div`,$e,[e(g,{name:`i-lucide-search-x`,class:`size-4`}),l[23]||=t(`没找到这个故事,可能 id 写错了。 `,-1)]))])}}}),[[`__scopeId`,`data-v-6e27d061`]]);export{z as default};
@@ -1,3 +1,3 @@
1
- import{D as e,Ht as t,Lt as n,On as r,Tn as i,Zn as a,_ as o,at as s,b as c,bt as l,ct as u,et as d,g as f,k as p,mt as m,o as h,qt as g,tr as _,tt as v,v as y,vn as b,wt as x,xt as S,y as C}from"./DZo3dYLJ.js";import{C as w,w as T}from"./51OWHj8c.js";import{r as E}from"./oXSDGTSr.js";import{t as D}from"./8QIcohze.js";import{h as O,n as k,t as A}from"./Baq-Hrpf.js";import{r as j,t as M}from"./DLkAKotw.js";import{n as N,r as P}from"./Bb3Limos.js";import{r as F}from"./CuJUHLl8.js";import{p as I,t as L}from"./Vo4wMbnS.js";import{t as R}from"./CK9_veoz.js";import{t as z}from"./B43-KCi6.js";import{r as B}from"./BPTrRhcw.js";import{t as V}from"./D1Yxjnz9.js";import{t as H}from"./CjRYYbsC.js";import{C as U}from"#entry";import W from"./DmKZi-Wo.js";function G(e,t){let n=b(),r=(r,i)=>{if(t.multiple&&Array.isArray(e.value)){if(t.selectionBehavior===`replace`)e.value=[r],n.value=r;else{let t=e.value.findIndex(e=>i(e));e.value=t===-1?[...e.value,r]:e.value.filter((e,n)=>n!==t)}}else e.value=t.selectionBehavior===`replace`?{...r}:!Array.isArray(e.value)&&i(e.value)?void 0:{...r};return e.value};function i(r,i,a,o){if(!n?.value||!t.multiple||!Array.isArray(e.value))return;let s=a().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===i)?.value;if(!s)return;let c=null;switch(r){case`prev`:case`next`:c=D(o,n.value,s);break;case`first`:c=D(o,n.value,o?.[0]);break;case`last`:c=D(o,n.value,o.at(-1))}e.value=c}return{firstValue:n,onSelectItem:r,handleMultipleReplace:i}}function K(e){return e.reduce((e,t)=>(e.push(t),t.children&&e.push(...K(t.children)),e),[])}var[q,J]=O(`TreeRoot`),Y=p({__name:`TreeRoot`,props:{modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},items:{type:Array,required:!1},expanded:{type:Array,required:!1},defaultExpanded:{type:Array,required:!1},getKey:{type:Function,required:!0},getChildren:{type:Function,required:!1,default:e=>e.children},selectionBehavior:{type:String,required:!1,default:`toggle`},multiple:{type:Boolean,required:!1,skipCheck:!0},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},propagateSelect:{type:Boolean,required:!1},bubbleSelect:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`ul`}},emits:[`update:modelValue`,`update:expanded`],setup(t,{emit:n}){let a=t,o=n,{items:s,multiple:c,disabled:l,propagateSelect:u,dir:d,bubbleSelect:p,loop:h}=i(a),{handleTypeaheadSearch:_}=N(),x=z(d),C=b(),E=b(!1),D=F(),O=I(a,`modelValue`,o,{defaultValue:a.defaultValue??(c.value?[]:void 0),passive:!0,deep:!0}),k=I(a,`expanded`,o,{defaultValue:a.defaultExpanded??[],passive:a.expanded===void 0,deep:!0}),{onSelectItem:A,handleMultipleReplace:M}=G(O,a),P=f(()=>c.value&&Array.isArray(O.value)?O.value.map(e=>a.getKey(e)):[a.getKey(O.value??{})]);function L(e,t=1,n){return e.reduce((r,i,o)=>{let s=a.getKey(i),c=a.getChildren(i),l=k.value.includes(s),u={_id:s,value:i,index:o,level:t,parentItem:n,hasChildren:!!c,bind:{value:i,level:t,"aria-setsize":e.length,"aria-posinset":o+1}};return r.push(u),c&&l&&r.push(...L(c,t+1,i)),r},[])}let V=f(()=>{let e=a.items;return k.value.map(e=>e),L(e??[])}),H=[`input`,`textarea`,`select`];function W(e){let t=e.target;return t?H.includes(t.tagName.toLowerCase())||t.isContentEditable:!1}function q(e){if(!W(e)){if(E.value)D.trigger(e);else{let t=C.value?.getItems()??[];_(e.key,t)}}}function Y(e){if(E.value||W(e))return;let t=B[e.key];v(()=>{M(t,j(),C.value?.getItems,V.value.map(e=>e.value))})}function X(e){if(e.parentItem!=null&&Array.isArray(O.value)&&a.multiple){let t=V.value.find(t=>e.parentItem!=null&&a.getKey(t.value)===a.getKey(e.parentItem));t!=null&&(a.getChildren(t.value)?.every(e=>O.value.find(t=>a.getKey(t)===a.getKey(e)))?O.value=[...O.value,t.value]:O.value=O.value.filter(e=>a.getKey(e)!==a.getKey(t.value)),X(t))}}return J({modelValue:O,selectedKeys:P,onSelect:e=>{let t=t=>a.getKey(t??{})===a.getKey(e),n=a.multiple&&Array.isArray(O.value)?O.value?.findIndex(t)!==-1:void 0;if(A(e,t),a.bubbleSelect&&a.multiple&&Array.isArray(O.value)){let t=V.value.find(t=>a.getKey(t.value)===a.getKey(e));t!=null&&X(t)}if(a.propagateSelect&&a.multiple&&Array.isArray(O.value)){let t=K(a.getChildren(e)??[]);n?O.value=[...O.value].filter(e=>!t.some(t=>a.getKey(e??{})===a.getKey(t))):O.value=[...O.value,...t]}},expanded:k,onToggle(e){if(!(e&&a.getChildren(e)))return;let t=a.getKey(e)??e;k.value.includes(t)?k.value=k.value.filter(e=>e!==t):k.value=[...k.value,t]},getKey:a.getKey,getChildren:a.getChildren,items:s,expandedItems:V,disabled:l,multiple:c,dir:x,propagateSelect:u,bubbleSelect:p,loop:h,isVirtual:E,virtualKeydownHook:D,handleMultipleReplace:M}),(n,i)=>(m(),y(r(U),{ref_key:`rovingFocusGroupRef`,ref:C,"as-child":``,orientation:`vertical`,dir:r(x),loop:r(h)&&!E.value},{default:g(()=>[e(r(R),{role:`tree`,as:t.as,"as-child":t.asChild,"aria-multiselectable":r(c)?!0:void 0,onKeydown:[q,w(T(Y,[`shift`]),[`up`,`down`])]},{default:g(()=>[S(n.$slots,`default`,{flattenItems:V.value,modelValue:r(O),expanded:r(k)})]),_:3},8,[`as`,`as-child`,`aria-multiselectable`,`onKeydown`])]),_:3},8,[`dir`,`loop`]))}}),X=`tree.select`,Z=`tree.toggle`,Q=p({inheritAttrs:!1,__name:`TreeItem`,props:{value:{type:null,required:!0},level:{type:Number,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`li`}},emits:[`select`,`toggle`],setup(t,{expose:n,emit:i}){let a=t,o=i,s=q(),{getItems:c}=M(),l=f(()=>!!s.getChildren(a.value)),u=f(()=>{let e=s.getKey(a.value);return s.expanded.value.includes(e)}),p=f(()=>{let e=s.getKey(a.value);return s.selectedKeys.value.includes(e)}),h=f(()=>{if(s.bubbleSelect.value&&l.value&&Array.isArray(s.modelValue.value)){let e=K(s.getChildren(a.value)||[]);return e.some(e=>s.modelValue.value.find(t=>s.getKey(t)===s.getKey(e)))&&!e.every(e=>s.modelValue.value.find(t=>s.getKey(t)===s.getKey(e)))}if(s.propagateSelect.value&&p.value&&l.value&&Array.isArray(s.modelValue.value))return!K(s.getChildren(a.value)||[]).every(e=>s.modelValue.value.find(t=>s.getKey(t)===s.getKey(e)))}),_=f(()=>s.disabled.value||a.disabled);function v(e){if(!_.value&&l.value){if(u.value){let e=c().map(e=>e.ref),t=j(),n=e.indexOf(t),r=[...e].slice(n).find(e=>Number(e.getAttribute(`data-indent`))===a.level+1);r&&r.focus()}else D(e)}}function b(e){if(!_.value){if(u.value)D(e);else{let e=c().map(e=>e.ref),t=j(),n=e.indexOf(t),r=[...e].slice(0,n).reverse().find(e=>Number(e.getAttribute(`data-indent`))===a.level-1);r&&r.focus()}}}async function x(e){_.value||(o(`select`,e),!e?.defaultPrevented&&s.onSelect(a.value))}async function C(e){_.value||(o(`toggle`,e),!e?.defaultPrevented&&s.onToggle(a.value))}async function E(e){if(!e)return;let t={originalEvent:e,value:a.value,isExpanded:u.value,isSelected:p.value};P(X,x,t)}async function D(e){if(!e)return;let t={originalEvent:e,value:a.value,isExpanded:u.value,isSelected:p.value};P(Z,C,t)}return n({isExpanded:u,isSelected:p,isIndeterminate:h,isDisabled:_,handleToggle:()=>s.onToggle(a.value),handleSelect:()=>s.onSelect(a.value)}),(n,i)=>(m(),y(r(V),{"as-child":``,value:t.value,"allow-shift-key":``,focusable:!_.value},{default:g(()=>[e(r(R),d(n.$attrs,{role:`treeitem`,as:t.as,"as-child":t.asChild,"aria-selected":p.value,"aria-expanded":l.value?u.value:void 0,"aria-level":t.level,"aria-disabled":_.value?!0:void 0,"data-indent":t.level,"data-selected":p.value?``:void 0,"data-expanded":u.value?``:void 0,"data-disabled":_.value?``:void 0,onKeydown:[w(T(E,[`self`,`prevent`]),[`enter`,`space`]),i[0]||=w(T(e=>r(s).dir.value===`ltr`?v(e):b(e),[`self`,`prevent`]),[`right`]),i[1]||=w(T(e=>r(s).dir.value===`ltr`?b(e):v(e),[`self`,`prevent`]),[`left`])],onClick:i[2]||=T(e=>{E(e),D(e)},[`stop`])}),{default:g(()=>[S(n.$slots,`default`,{isExpanded:u.value,isSelected:p.value,isIndeterminate:h.value,isDisabled:_.value,handleSelect:()=>r(s).onSelect(t.value),handleToggle:()=>r(s).onToggle(t.value)})]),_:3},16,[`as`,`as-child`,`aria-selected`,`aria-expanded`,`aria-level`,`aria-disabled`,`data-indent`,`data-selected`,`data-expanded`,`data-disabled`,`onKeydown`])]),_:3},8,[`value`,`focusable`]))}}),$={slots:{root:`relative lg:h-[450px] my-5 grid lg:grid-cols-3 border border-muted rounded-md`,list:`isolate relative p-2 border-b lg:border-b-0 lg:border-e border-muted overflow-y-auto`,item:``,listWithChildren:`ms-4.5 border-s border-default`,itemWithChildren:`ps-1.5 -ms-px`,link:`relative group peer w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none before:outline-primary/25 focus-visible:before:outline-3`,linkLeadingIcon:`size-4 shrink-0`,linkLabel:`truncate`,linkTrailing:`ms-auto inline-flex gap-1.5 items-center`,linkTrailingIcon:`size-5 transform transition-transform duration-200 ease-out motion-reduce:transition-none shrink-0 group-data-expanded:rotate-180`,content:`overflow-hidden lg:col-span-2 flex flex-col [&>div]:my-0 [&>div]:flex-1 [&>div]:flex [&>div]:flex-col [&>div>div]:border-0 [&>div>pre]:border-b-0 [&>div>pre]:border-s-0 [&>div>pre]:border-e-0 [&>div>pre]:rounded-s-none [&>div>pre]:flex-1 [&>div]:overflow-y-auto`},variants:{active:{true:{link:`text-highlighted before:bg-elevated`},false:{link:[`hover:text-highlighted hover:before:bg-elevated/50`,`transition-colors before:transition-colors`]}}}},ee=Object.assign({inheritAttrs:!1},{__name:`ProseCodeTree`,props:{items:{type:Array,required:!1},modelValue:{type:String,required:!1},defaultValue:{type:String,required:!1},expandAll:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},emits:[`update:modelValue`],setup(i,{emit:p}){let v=i,S=p,w=n(),T=k(`prose.codeTree`,v),D=E(),[O,j]=L(),M=f(()=>A({extend:$,...D.ui?.prose?.codeTree||{}})()),N=T.modelValue??T.defaultValue,P=b(N?{path:N}:void 0);t(P,e=>{e?.path!==T.modelValue&&S(`update:modelValue`,e?.path)}),t(()=>T.modelValue,e=>{if(e===P.value?.path)return;P.value=e?{path:e}:void 0;let t=[...G.value];for(let n of V(e))t.includes(n)||t.push(n);G.value=t});let F=b(1),I=f(()=>(F.value,T.items||w.default?.()?.flatMap(B).filter(Boolean)||[])),R=f(()=>z(I.value));function z(e){let t=new Map,n=[];e.forEach(e=>{let r=e.label.split(`/`),i=``;r.forEach((e,a)=>{if(i=i?`${i}/${e}`:e,!t.has(i)){let o={label:e,path:i,...a<r.length-1&&{children:[]}};t.set(i,o),a===0?n.push(o):t.get(r.slice(0,a).join(`/`))?.children?.push(o)}})});let r=e=>e.sort((e,t)=>!!e.children==!!t.children?e.label.localeCompare(t.label):t.children?1:-1).map(e=>({...e,children:e.children&&r(e.children)}));return r(n)}function B(e,t){return typeof e.type==`symbol`?e.children?.map(B):{label:e.props?.filename||e.props?.label||`${t}`,icon:e.props?.icon,component:e}}function V(e){if(T.expandAll){let e=new Set;return I.value.forEach(t=>{let n=t.label.split(`/`);for(let t=1;t<n.length;t++)e.add(n.slice(0,t).join(`/`))}),Array.from(e)}if(!e)return[];let t=e.split(`/`);return t.slice(0,-1).map((e,n)=>t.slice(0,n+1).join(`/`))}let U=b(T.expandAll?null:V(P.value?.path)),G=f({get:()=>U.value??V(),set:e=>{U.value=e}});t(()=>T.expandAll,e=>{U.value=e?null:V(P.value?.path)}),u(()=>{t(I,(e,t)=>{T.expandAll&&e.map(e=>e.label).join(`
1
+ import{D as e,Ht as t,Lt as n,On as r,Tn as i,Zn as a,_ as o,at as s,b as c,bt as l,ct as u,et as d,g as f,k as p,mt as m,o as h,qt as g,tr as _,tt as v,v as y,vn as b,wt as x,xt as S,y as C}from"./DZo3dYLJ.js";import{C as w,w as T}from"./51OWHj8c.js";import{r as E}from"./oXSDGTSr.js";import{t as D}from"./8QIcohze.js";import{h as O,n as k,t as A}from"./Baq-Hrpf.js";import{r as j,t as M}from"./DLkAKotw.js";import{n as N,r as P}from"./Bb3Limos.js";import{r as F}from"./CuJUHLl8.js";import{p as I,t as L}from"./Vo4wMbnS.js";import{t as R}from"./CK9_veoz.js";import{t as z}from"./B43-KCi6.js";import{r as B}from"./BPTrRhcw.js";import{t as V}from"./CurAl_-I.js";import{t as H}from"./D2zrOcWn.js";import{x as U}from"#entry";import W from"./Cp9-r9Yz.js";function G(e,t){let n=b(),r=(r,i)=>{if(t.multiple&&Array.isArray(e.value)){if(t.selectionBehavior===`replace`)e.value=[r],n.value=r;else{let t=e.value.findIndex(e=>i(e));e.value=t===-1?[...e.value,r]:e.value.filter((e,n)=>n!==t)}}else e.value=t.selectionBehavior===`replace`?{...r}:!Array.isArray(e.value)&&i(e.value)?void 0:{...r};return e.value};function i(r,i,a,o){if(!n?.value||!t.multiple||!Array.isArray(e.value))return;let s=a().filter(e=>e.ref.dataset.disabled!==``).find(e=>e.ref===i)?.value;if(!s)return;let c=null;switch(r){case`prev`:case`next`:c=D(o,n.value,s);break;case`first`:c=D(o,n.value,o?.[0]);break;case`last`:c=D(o,n.value,o.at(-1))}e.value=c}return{firstValue:n,onSelectItem:r,handleMultipleReplace:i}}function K(e){return e.reduce((e,t)=>(e.push(t),t.children&&e.push(...K(t.children)),e),[])}var[q,J]=O(`TreeRoot`),Y=p({__name:`TreeRoot`,props:{modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},items:{type:Array,required:!1},expanded:{type:Array,required:!1},defaultExpanded:{type:Array,required:!1},getKey:{type:Function,required:!0},getChildren:{type:Function,required:!1,default:e=>e.children},selectionBehavior:{type:String,required:!1,default:`toggle`},multiple:{type:Boolean,required:!1,skipCheck:!0},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},propagateSelect:{type:Boolean,required:!1},bubbleSelect:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`ul`}},emits:[`update:modelValue`,`update:expanded`],setup(t,{emit:n}){let a=t,o=n,{items:s,multiple:c,disabled:l,propagateSelect:u,dir:d,bubbleSelect:p,loop:h}=i(a),{handleTypeaheadSearch:_}=N(),x=z(d),C=b(),E=b(!1),D=F(),O=I(a,`modelValue`,o,{defaultValue:a.defaultValue??(c.value?[]:void 0),passive:!0,deep:!0}),k=I(a,`expanded`,o,{defaultValue:a.defaultExpanded??[],passive:a.expanded===void 0,deep:!0}),{onSelectItem:A,handleMultipleReplace:M}=G(O,a),P=f(()=>c.value&&Array.isArray(O.value)?O.value.map(e=>a.getKey(e)):[a.getKey(O.value??{})]);function L(e,t=1,n){return e.reduce((r,i,o)=>{let s=a.getKey(i),c=a.getChildren(i),l=k.value.includes(s),u={_id:s,value:i,index:o,level:t,parentItem:n,hasChildren:!!c,bind:{value:i,level:t,"aria-setsize":e.length,"aria-posinset":o+1}};return r.push(u),c&&l&&r.push(...L(c,t+1,i)),r},[])}let V=f(()=>{let e=a.items;return k.value.map(e=>e),L(e??[])}),H=[`input`,`textarea`,`select`];function W(e){let t=e.target;return t?H.includes(t.tagName.toLowerCase())||t.isContentEditable:!1}function q(e){if(!W(e)){if(E.value)D.trigger(e);else{let t=C.value?.getItems()??[];_(e.key,t)}}}function Y(e){if(E.value||W(e))return;let t=B[e.key];v(()=>{M(t,j(),C.value?.getItems,V.value.map(e=>e.value))})}function X(e){if(e.parentItem!=null&&Array.isArray(O.value)&&a.multiple){let t=V.value.find(t=>e.parentItem!=null&&a.getKey(t.value)===a.getKey(e.parentItem));t!=null&&(a.getChildren(t.value)?.every(e=>O.value.find(t=>a.getKey(t)===a.getKey(e)))?O.value=[...O.value,t.value]:O.value=O.value.filter(e=>a.getKey(e)!==a.getKey(t.value)),X(t))}}return J({modelValue:O,selectedKeys:P,onSelect:e=>{let t=t=>a.getKey(t??{})===a.getKey(e),n=a.multiple&&Array.isArray(O.value)?O.value?.findIndex(t)!==-1:void 0;if(A(e,t),a.bubbleSelect&&a.multiple&&Array.isArray(O.value)){let t=V.value.find(t=>a.getKey(t.value)===a.getKey(e));t!=null&&X(t)}if(a.propagateSelect&&a.multiple&&Array.isArray(O.value)){let t=K(a.getChildren(e)??[]);n?O.value=[...O.value].filter(e=>!t.some(t=>a.getKey(e??{})===a.getKey(t))):O.value=[...O.value,...t]}},expanded:k,onToggle(e){if(!(e&&a.getChildren(e)))return;let t=a.getKey(e)??e;k.value.includes(t)?k.value=k.value.filter(e=>e!==t):k.value=[...k.value,t]},getKey:a.getKey,getChildren:a.getChildren,items:s,expandedItems:V,disabled:l,multiple:c,dir:x,propagateSelect:u,bubbleSelect:p,loop:h,isVirtual:E,virtualKeydownHook:D,handleMultipleReplace:M}),(n,i)=>(m(),y(r(U),{ref_key:`rovingFocusGroupRef`,ref:C,"as-child":``,orientation:`vertical`,dir:r(x),loop:r(h)&&!E.value},{default:g(()=>[e(r(R),{role:`tree`,as:t.as,"as-child":t.asChild,"aria-multiselectable":r(c)?!0:void 0,onKeydown:[q,w(T(Y,[`shift`]),[`up`,`down`])]},{default:g(()=>[S(n.$slots,`default`,{flattenItems:V.value,modelValue:r(O),expanded:r(k)})]),_:3},8,[`as`,`as-child`,`aria-multiselectable`,`onKeydown`])]),_:3},8,[`dir`,`loop`]))}}),X=`tree.select`,Z=`tree.toggle`,Q=p({inheritAttrs:!1,__name:`TreeItem`,props:{value:{type:null,required:!0},level:{type:Number,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`li`}},emits:[`select`,`toggle`],setup(t,{expose:n,emit:i}){let a=t,o=i,s=q(),{getItems:c}=M(),l=f(()=>!!s.getChildren(a.value)),u=f(()=>{let e=s.getKey(a.value);return s.expanded.value.includes(e)}),p=f(()=>{let e=s.getKey(a.value);return s.selectedKeys.value.includes(e)}),h=f(()=>{if(s.bubbleSelect.value&&l.value&&Array.isArray(s.modelValue.value)){let e=K(s.getChildren(a.value)||[]);return e.some(e=>s.modelValue.value.find(t=>s.getKey(t)===s.getKey(e)))&&!e.every(e=>s.modelValue.value.find(t=>s.getKey(t)===s.getKey(e)))}if(s.propagateSelect.value&&p.value&&l.value&&Array.isArray(s.modelValue.value))return!K(s.getChildren(a.value)||[]).every(e=>s.modelValue.value.find(t=>s.getKey(t)===s.getKey(e)))}),_=f(()=>s.disabled.value||a.disabled);function v(e){if(!_.value&&l.value){if(u.value){let e=c().map(e=>e.ref),t=j(),n=e.indexOf(t),r=[...e].slice(n).find(e=>Number(e.getAttribute(`data-indent`))===a.level+1);r&&r.focus()}else D(e)}}function b(e){if(!_.value){if(u.value)D(e);else{let e=c().map(e=>e.ref),t=j(),n=e.indexOf(t),r=[...e].slice(0,n).reverse().find(e=>Number(e.getAttribute(`data-indent`))===a.level-1);r&&r.focus()}}}async function x(e){_.value||(o(`select`,e),!e?.defaultPrevented&&s.onSelect(a.value))}async function C(e){_.value||(o(`toggle`,e),!e?.defaultPrevented&&s.onToggle(a.value))}async function E(e){if(!e)return;let t={originalEvent:e,value:a.value,isExpanded:u.value,isSelected:p.value};P(X,x,t)}async function D(e){if(!e)return;let t={originalEvent:e,value:a.value,isExpanded:u.value,isSelected:p.value};P(Z,C,t)}return n({isExpanded:u,isSelected:p,isIndeterminate:h,isDisabled:_,handleToggle:()=>s.onToggle(a.value),handleSelect:()=>s.onSelect(a.value)}),(n,i)=>(m(),y(r(V),{"as-child":``,value:t.value,"allow-shift-key":``,focusable:!_.value},{default:g(()=>[e(r(R),d(n.$attrs,{role:`treeitem`,as:t.as,"as-child":t.asChild,"aria-selected":p.value,"aria-expanded":l.value?u.value:void 0,"aria-level":t.level,"aria-disabled":_.value?!0:void 0,"data-indent":t.level,"data-selected":p.value?``:void 0,"data-expanded":u.value?``:void 0,"data-disabled":_.value?``:void 0,onKeydown:[w(T(E,[`self`,`prevent`]),[`enter`,`space`]),i[0]||=w(T(e=>r(s).dir.value===`ltr`?v(e):b(e),[`self`,`prevent`]),[`right`]),i[1]||=w(T(e=>r(s).dir.value===`ltr`?b(e):v(e),[`self`,`prevent`]),[`left`])],onClick:i[2]||=T(e=>{E(e),D(e)},[`stop`])}),{default:g(()=>[S(n.$slots,`default`,{isExpanded:u.value,isSelected:p.value,isIndeterminate:h.value,isDisabled:_.value,handleSelect:()=>r(s).onSelect(t.value),handleToggle:()=>r(s).onToggle(t.value)})]),_:3},16,[`as`,`as-child`,`aria-selected`,`aria-expanded`,`aria-level`,`aria-disabled`,`data-indent`,`data-selected`,`data-expanded`,`data-disabled`,`onKeydown`])]),_:3},8,[`value`,`focusable`]))}}),$={slots:{root:`relative lg:h-[450px] my-5 grid lg:grid-cols-3 border border-muted rounded-md`,list:`isolate relative p-2 border-b lg:border-b-0 lg:border-e border-muted overflow-y-auto`,item:``,listWithChildren:`ms-4.5 border-s border-default`,itemWithChildren:`ps-1.5 -ms-px`,link:`relative group peer w-full px-2.5 py-1.5 before:inset-y-px before:inset-x-0 flex items-center gap-1.5 text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none before:outline-primary/25 focus-visible:before:outline-3`,linkLeadingIcon:`size-4 shrink-0`,linkLabel:`truncate`,linkTrailing:`ms-auto inline-flex gap-1.5 items-center`,linkTrailingIcon:`size-5 transform transition-transform duration-200 ease-out motion-reduce:transition-none shrink-0 group-data-expanded:rotate-180`,content:`overflow-hidden lg:col-span-2 flex flex-col [&>div]:my-0 [&>div]:flex-1 [&>div]:flex [&>div]:flex-col [&>div>div]:border-0 [&>div>pre]:border-b-0 [&>div>pre]:border-s-0 [&>div>pre]:border-e-0 [&>div>pre]:rounded-s-none [&>div>pre]:flex-1 [&>div]:overflow-y-auto`},variants:{active:{true:{link:`text-highlighted before:bg-elevated`},false:{link:[`hover:text-highlighted hover:before:bg-elevated/50`,`transition-colors before:transition-colors`]}}}},ee=Object.assign({inheritAttrs:!1},{__name:`ProseCodeTree`,props:{items:{type:Array,required:!1},modelValue:{type:String,required:!1},defaultValue:{type:String,required:!1},expandAll:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},emits:[`update:modelValue`],setup(i,{emit:p}){let v=i,S=p,w=n(),T=k(`prose.codeTree`,v),D=E(),[O,j]=L(),M=f(()=>A({extend:$,...D.ui?.prose?.codeTree||{}})()),N=T.modelValue??T.defaultValue,P=b(N?{path:N}:void 0);t(P,e=>{e?.path!==T.modelValue&&S(`update:modelValue`,e?.path)}),t(()=>T.modelValue,e=>{if(e===P.value?.path)return;P.value=e?{path:e}:void 0;let t=[...G.value];for(let n of V(e))t.includes(n)||t.push(n);G.value=t});let F=b(1),I=f(()=>(F.value,T.items||w.default?.()?.flatMap(B).filter(Boolean)||[])),R=f(()=>z(I.value));function z(e){let t=new Map,n=[];e.forEach(e=>{let r=e.label.split(`/`),i=``;r.forEach((e,a)=>{if(i=i?`${i}/${e}`:e,!t.has(i)){let o={label:e,path:i,...a<r.length-1&&{children:[]}};t.set(i,o),a===0?n.push(o):t.get(r.slice(0,a).join(`/`))?.children?.push(o)}})});let r=e=>e.sort((e,t)=>!!e.children==!!t.children?e.label.localeCompare(t.label):t.children?1:-1).map(e=>({...e,children:e.children&&r(e.children)}));return r(n)}function B(e,t){return typeof e.type==`symbol`?e.children?.map(B):{label:e.props?.filename||e.props?.label||`${t}`,icon:e.props?.icon,component:e}}function V(e){if(T.expandAll){let e=new Set;return I.value.forEach(t=>{let n=t.label.split(`/`);for(let t=1;t<n.length;t++)e.add(n.slice(0,t).join(`/`))}),Array.from(e)}if(!e)return[];let t=e.split(`/`);return t.slice(0,-1).map((e,n)=>t.slice(0,n+1).join(`/`))}let U=b(T.expandAll?null:V(P.value?.path)),G=f({get:()=>U.value??V(),set:e=>{U.value=e}});t(()=>T.expandAll,e=>{U.value=e?null:V(P.value?.path)}),u(()=>{t(I,(e,t)=>{T.expandAll&&e.map(e=>e.label).join(`
2
2
  `)!==(t?.map(e=>e.label).join(`
3
3
  `)??``)&&(U.value=null)})});let K,q=f(()=>{let e=I.value.find(e=>P.value?.path===e.label);return e?.component&&(K=e),K});return s(()=>F.value++),(t,n)=>(m(),c(h,null,[e(r(O),null,{default:g(({items:t,level:n})=>[(m(!0),c(h,null,l(t,(t,i)=>(m(),c(`li`,{key:`${n}-${i}`,role:`presentation`,class:a(n>1?M.value.itemWithChildren({class:r(T).ui?.itemWithChildren}):M.value.item({class:r(T).ui?.item}))},[e(r(Q),{level:n,value:t,"as-child":``},{default:g(({isExpanded:i,isSelected:s})=>[o(`button`,{type:`button`,class:a(M.value.link({class:r(T).ui?.link,active:s}))},[t.children?.length?(m(),y(H,{key:0,name:i?r(D).ui.icons.folderOpen:r(D).ui.icons.folder,class:a(M.value.linkLeadingIcon({class:r(T).ui?.linkLeadingIcon}))},null,8,[`name`,`class`])):(m(),y(W,{key:1,filename:t.label,class:a(M.value.linkLeadingIcon({class:r(T).ui?.linkLeadingIcon}))},null,8,[`filename`,`class`])),o(`span`,{class:a(M.value.linkLabel({class:r(T).ui?.linkLabel}))},_(t.label),3),t.children?.length?(m(),c(`span`,{key:2,class:a(M.value.linkTrailing({class:r(T).ui?.linkTrailing}))},[e(H,{name:r(D).ui.icons.chevronDown,class:a(M.value.linkTrailingIcon({class:r(T).ui?.linkTrailingIcon}))},null,8,[`name`,`class`])],2)):C(``,!0)],2),t.children?.length&&i?(m(),c(`ul`,{key:0,role:`group`,class:a(M.value.listWithChildren({class:r(T).ui?.listWithChildren}))},[e(r(j),{items:t.children,level:n+1},null,8,[`items`,`level`])],2)):C(``,!0)]),_:2},1032,[`level`,`value`])],2))),128))]),_:1}),o(`div`,d(t.$attrs,{class:M.value.root({class:[r(T).ui?.root,r(T).class]})}),[e(r(Y),{modelValue:P.value,"onUpdate:modelValue":n[0]||=e=>P.value=e,expanded:G.value,"onUpdate:expanded":n[1]||=e=>G.value=e,class:a(M.value.list({class:r(T).ui?.list})),items:R.value,"get-key":e=>e.path},{default:g(()=>[e(r(j),{items:R.value,level:1},null,8,[`items`])]),_:1},8,[`modelValue`,`expanded`,`class`,`items`,`get-key`]),o(`div`,{class:a(M.value.content({class:r(T).ui?.content}))},[(m(),y(x(q.value?.component)))],2)],16)],64))}});export{ee as default};
@@ -0,0 +1,2 @@
1
+ import{D as e,E as t,Ht as n,On as r,T as i,Zn as a,_ as o,b as s,bt as c,ct as l,er as ee,g as u,it as d,k as te,mt as f,o as p,qt as m,tr as h,tt as ne,u as re,v as g,vn as _,y as v}from"./DZo3dYLJ.js";import{w as ie}from"./51OWHj8c.js";import{t as ae}from"./BJW3UkS7.js";import{t as oe}from"./D2zrOcWn.js";import{O as y,i as b,s as se}from"#entry";var ce={class:`rule-ic`},le={key:0},ue={class:`rule-state`},de={key:1,class:`lc-hist-bar`},fe={class:`hist-badge`},pe={class:`hist-readonly mono`},me=[`title`,`disabled`,`onClick`],he={key:2,class:`card lc-empty`},ge={class:`em-ic`},_e={key:3,class:`lc`},ve={class:`lc-hero`},ye={class:`hero-body`},be={class:`hero-kicker`},xe={class:`k-date mono`},Se={key:0,class:`k-time mono`},Ce={key:1,class:`k-today`},we=[`title`],Te={class:`hero-title`},Ee={key:0,class:`hero-sum`},De={class:`hero-meta`},Oe={class:`hero-aside`},ke={class:`ring-in`},Ae={class:`card sec`},je={class:`s-hd`},Me={class:`s-ic`},x={class:`s-count`},Ne={key:0,class:`sec-empty dim`},Pe={key:1,class:`tbl-wrap`},Fe={class:`tbl lc-tbl`},Ie={class:`ent`},Le={class:`ent-top`},Re={key:0,class:`ent-title`},ze={key:0,class:`flow mono`},Be={class:`fl`},Ve={class:`fl`},He={class:`cell-note`},Ue={class:`chips`},We=[`title`],Ge={key:0,class:`dim`},Ke={class:`two`},qe={class:`card sec`},Je={class:`s-hd`},Ye={class:`s-ic`},Xe={class:`s-count`},Ze={class:`sec-bd lc-extras`},Qe={key:0,class:`dim`},$e={class:`x-body`},et={class:`x-title`},tt={key:0,class:`x-detail`},nt={key:1,class:`chips x-files`},rt=[`title`],it={class:`card sec`},at={class:`s-hd`},ot={class:`s-ic tone-mint`},st={class:`s-count`},ct={class:`sec-bd lc-checks`},lt={key:0,class:`dim`},ut={class:`v-body`},dt={class:`v-what`},ft={key:0,class:`v-detail`},pt={key:0,class:`card sec lc-access`},mt={class:`s-hd`},ht={class:`s-ic tone-sky`},gt={class:`sec-bd acc-grid`},_t={key:0,class:`acc-col`},vt={class:`u-head`},yt=[`href`],bt={class:`u-label`},xt=[`onClick`],St={class:`u-url mono`},Ct={key:0,class:`u-note`},wt={key:1,class:`acc-col`},Tt={class:`a-head`},Et={key:0,class:`a-role`},Dt={class:`a-user mono`},Ot=[`onClick`],kt={class:`a-line`},At={key:0,class:`a-pass mono`},jt={key:1,class:`a-none dim`},Mt={key:0,class:`a-note`},Nt={key:1,class:`card sec lc-prep`},Pt={class:`s-hd`},Ft={class:`s-ic tone-amber`},It={class:`s-count`},Lt={class:`steps`},Rt={class:`step-bd`},zt={class:`step-text`},Bt={key:0,class:`cmd-row`},Vt={class:`cmd mono`},Ht=[`onClick`],Ut={key:1,class:`step-note`},Wt={class:`lc-sc-sec`},Gt={class:`s-hd solo`},Kt={class:`s-ic tone-mint`},qt={class:`s-count`},Jt={key:0,class:`dim sec-empty`},Yt={key:1,class:`lc-sc-grid`},Xt={class:`sc-hd`},S={class:`sc-id mono`},Zt={class:`sc-title`},Qt={key:0,class:`sc-body`},$t={class:`lc-sc-steps`},en={class:`sc-acc`},tn={class:`sc-acc-h`},nn={class:`sc-acc-t`},rn={key:0,class:`sc-foot`},an={key:0},on={key:1,class:`sc-ids`},sn={class:`two`},cn={class:`card sec`},ln={class:`s-hd`},un={class:`s-ic`},dn={class:`sec-bd`},fn={key:0,class:`dim`},pn={key:1,class:`lc-notes`},mn={key:0,class:`card sec sec-warn`},hn={class:`s-hd`},gn={class:`s-ic`},_n={class:`s-count`},vn={class:`sec-bd`},yn={class:`lc-notes warn`},bn={class:`lc-hist`,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`lc-hist-title`},xn={class:`lc-hist-hd`},Sn={class:`lc-hist-hd-txt`},Cn={class:`lc-hist-sub`},wn={key:0,class:`lc-hist-err`},Tn={key:1,class:`lc-hist-hint dim`},En={key:2,class:`lc-hist-list`},Dn=[`disabled`,`onClick`],On={class:`hist-item-main`},kn={class:`mono`},An={class:`mono hist-item-hash`},jn={key:0,class:`lc-hist-hint dim`},Mn={class:`lc-hist-ft`},C=b(te({__name:`last-change`,setup(te){let{lastChange:b,lastChangeGit:C}=se(),w=_(null),T=u(()=>w.value?.doc?.lastChange??b.value),E=u(()=>C.value),D=_([]),O=_(!1),k=_(!1),A=_(``),j=_(!1),Nn=u(()=>D.value.slice(0,6));async function Pn(){if(!k.value){k.value=!0,A.value=``;try{let e=await y(`/api/agile/last-change/history`);D.value=e.entries??[]}catch(e){A.value=e?.data?.error||e?.message||`读不到 git 历史`}finally{k.value=!1}}}async function M(){O.value=!0,D.value.length||await Pn()}async function N(e){if(!j.value){j.value=!0,A.value=``;try{w.value=await y(`/api/agile/last-change/revision`,{query:{hash:e.hash}}),O.value=!1,window.scrollTo({top:0,behavior:`smooth`})}catch(e){A.value=e?.data?.error||e?.message||`取不到这个版本`}finally{j.value=!1}}}function Fn(){w.value=null,window.scrollTo({top:0,behavior:`smooth`})}let P=_(null);n(w,async()=>{await ne(),P.value?.querySelector(`.hist-tab.on`)?.scrollIntoView({inline:`nearest`,block:`nearest`})});function F(e){e.key===`Escape`&&O.value&&(O.value=!1)}l(()=>window.addEventListener(`keydown`,F)),d(()=>window.removeEventListener(`keydown`,F));let I={committed:{text:`已提交`,next:`下次写入整份覆盖`,tone:`ok`},dirty:{text:`未提交改动`,next:`下次写入会合并`,tone:`warn`},untracked:{text:`未纳入版本库`,next:`下次写入会合并`,tone:`warn`},"no-git":{text:`非 git 仓库`,next:`按未提交处理,会合并`,tone:`neutral`},missing:{text:`尚未生成`,next:`下次直接写入`,tone:`neutral`}},L=u(()=>I[E.value?.state??`missing`]??I.missing),In=u(()=>(T.value?.mergedFrom?.length??0)+1),Ln=u(()=>(T.value?.mergedFrom??[]).map(e=>`${e.at??``} ${e.title??``}`.trim()).filter(Boolean).join(`
2
+ `)),Rn={added:`新增`,updated:`状态变更`,removed:`移除`},zn={story:`故事`,task:`任务`},Bn={pass:`通过`,fail:`失败`,partial:`部分`,skipped:`未跑`},Vn={pass:`i-lucide-check`,fail:`i-lucide-x`,partial:`i-lucide-minus`,skipped:`i-lucide-minus`},R=u(()=>T.value?.changes??[]),z=u(()=>T.value?.extras??[]),B=u(()=>T.value?.verification??[]),V=u(()=>T.value?.scenarios??[]),H=u(()=>T.value?.preparation??[]),U=u(()=>T.value?.notes??[]),W=u(()=>T.value?.open??[]),G=u(()=>T.value?.access?.urls??[]),K=u(()=>T.value?.access?.accounts??[]),q=u(()=>B.value.filter(e=>e.result===`pass`).length),J=u(()=>B.value.length>0&&q.value===B.value.length),Hn=u(()=>B.value.length?Math.round(q.value/B.value.length*100):0),Un=u(()=>[...new Set([...R.value.flatMap(e=>e.files??[]),...z.value.flatMap(e=>e.files??[])])]),Wn=e=>e.kind===`story`?e.id:e.id.replace(/-T\d+$/,``),Y=new Date,Gn=`${Y.getFullYear()}-${String(Y.getMonth()+1).padStart(2,`0`)}-${String(Y.getDate()).padStart(2,`0`)}`,X=u(()=>(T.value?.at??``).slice(0,10)),Z=u(()=>{let e=(T.value?.at??``).slice(10).replace(/^[T ]/,``);return/^\d{2}:\d{2}/.test(e)?e:``}),Kn=u(()=>!!X.value&&X.value===Gn),Q=_(``);async function $(e,t){try{await navigator.clipboard.writeText(e),Q.value=t,setTimeout(()=>{Q.value===t&&(Q.value=``)},1600)}catch{Q.value=``}}return(n,l)=>{let u=oe,d=ae;return f(),s(p,null,[r(w)?(f(),s(`div`,de,[o(`span`,fe,[e(u,{name:`i-lucide-history`,class:`hist-badge-ic`}),l[5]||=t(`历史版本`,-1)]),o(`span`,pe,[t(`只读 · `+h(r(w).short),1),r(w).date?(f(),s(p,{key:0},[t(` · `+h(r(w).date),1)],64)):v(``,!0)]),o(`div`,{ref_key:`tabsRef`,ref:P,class:`lc-hist-tabs`},[o(`button`,{class:`hist-tab`,onClick:Fn},`最新`),(f(!0),s(p,null,c(r(Nn),e=>(f(),s(`button`,{key:e.hash,class:a([`hist-tab`,{on:r(w)?.hash===e.hash}]),title:`${e.date} ${e.subject??``}`,disabled:r(j),onClick:t=>N(e)},[t(h(e.short),1),o(`i`,null,h(e.date.slice(5,16)),1)],10,me))),128))],512),o(`button`,{class:`rule-btn`,onClick:M},[e(u,{name:`i-lucide-list`,class:`rule-btn-ic`}),l[6]||=t(`选择历史…`,-1)])])):(f(),s(`div`,{key:0,class:a([`lc-rule`,`is-${r(L).tone}`])},[o(`span`,ce,[e(u,{name:`i-lucide-git-branch`,class:`rule-svg`})]),l[4]||=o(`p`,{class:`rule-text`},[o(`b`,null,`写入规则`),t(`这个文件`),o(`b`,null,`已提交`),t(`才整份覆盖;`),o(`b`,null,`未提交`),t(`时写工具会把本次交付并进旧记录, 不会冲掉还没入库的那一次。 `)],-1),o(`button`,{class:`rule-btn`,onClick:M},[e(u,{name:`i-lucide-history`,class:`rule-btn-ic`}),l[3]||=t(`查看历史 `,-1),r(D).length?(f(),s(`i`,le,h(r(D).length),1)):v(``,!0)]),o(`span`,ue,[o(`b`,null,[t(h(r(L).text),1),r(E)?.state===`committed`&&r(E).hash?(f(),s(p,{key:0},[t(` · `+h(r(E).hash),1)],64)):v(``,!0)]),o(`i`,null,h(r(L).next),1)])],2)),r(T)?(f(),s(`div`,_e,[o(`header`,ve,[o(`div`,ye,[o(`p`,be,[l[8]||=o(`span`,{class:`k-dot`},null,-1),l[9]||=t(`最近一次交付 `,-1),l[10]||=o(`span`,{class:`k-sep`},null,-1),o(`span`,xe,h(r(X)),1),r(Z)?(f(),s(`span`,Se,h(r(Z)),1)):v(``,!0),r(Kn)?(f(),s(`span`,Ce,`今天`)):v(``,!0),r(T).merged?(f(),s(`span`,{key:2,class:`k-merged`,title:r(Ln)},`合并记录 · `+h(r(In))+` 次交付`,9,we)):v(``,!0)]),o(`h2`,Te,h(r(T).title),1),r(T).summary?(f(),s(`p`,Ee,h(r(T).summary),1)):v(``,!0),o(`div`,De,[o(`span`,null,[o(`b`,null,h(r(R).length),1),l[11]||=t(` 处变更`,-1)]),l[16]||=o(`i`,{class:`meta-sep`},null,-1),o(`span`,null,[o(`b`,null,h(r(Un).length),1),l[12]||=t(` 个文件`,-1)]),l[17]||=o(`i`,{class:`meta-sep`},null,-1),o(`span`,null,[o(`b`,null,h(r(V).length),1),l[13]||=t(` 条测试场景`,-1)]),r(z).length?(f(),s(p,{key:0},[l[15]||=o(`i`,{class:`meta-sep`},null,-1),o(`span`,null,[o(`b`,null,h(r(z).length),1),l[14]||=t(` 项额外工作`,-1)])],64)):v(``,!0)])]),o(`div`,Oe,[o(`div`,{class:a([`ring`,{warn:r(B).length&&!r(J)}]),style:ee({"--pct":r(Hn)})},[o(`div`,ke,[o(`b`,null,[t(h(r(q)),1),o(`small`,null,`/`+h(r(B).length||0),1)]),o(`span`,null,h(r(B).length?r(J)?`验证全通过`:`有未通过项`:`无验证记录`),1)])],6)])]),o(`section`,Ae,[o(`div`,je,[o(`span`,Me,[e(u,{name:`i-lucide-git-commit-horizontal`,class:`s-svg`})]),l[18]||=o(`h2`,{class:`s-title`},`变更清单`,-1),o(`span`,x,h(r(R).length),1),l[19]||=o(`span`,{class:`s-hint`},`故事与任务各自是新增还是状态变更、动过哪些文件`,-1)]),r(R).length?(f(),s(`div`,Pe,[o(`table`,Fe,[l[21]||=o(`colgroup`,null,[o(`col`,{class:`c-ent`}),o(`col`,{class:`c-act`}),o(`col`),o(`col`,{class:`c-file`})],-1),l[22]||=o(`thead`,null,[o(`tr`,null,[o(`th`,null,`条目`),o(`th`,null,`变更`),o(`th`,null,`变更内容`),o(`th`,null,`涉及文件`)])],-1),o(`tbody`,null,[(f(!0),s(p,null,c(r(R),(n,r)=>(f(),s(`tr`,{key:`${n.kind}-${n.id}-${r}`},[o(`td`,null,[o(`div`,Ie,[o(`div`,Le,[o(`span`,{class:a([`kind`,`kind-${n.kind}`])},h(zn[n.kind]??n.kind),3),e(d,{to:`/story/${Wn(n)}`,class:`ent-id mono`},{default:m(()=>[t(h(n.id),1)]),_:2},1032,[`to`])]),n.title?(f(),s(`p`,Re,h(n.title),1)):v(``,!0)])]),o(`td`,null,[o(`span`,{class:a([`act`,`act-${n.action}`])},h(Rn[n.action]??n.action),3),n.from||n.to?(f(),s(`p`,ze,[o(`span`,Be,h(n.from??`—`),1),l[20]||=o(`i`,null,`→`,-1),o(`span`,Ve,h(n.to??`—`),1)])):v(``,!0)]),o(`td`,He,h(n.note??`—`),1),o(`td`,null,[o(`div`,Ue,[(f(!0),s(p,null,c(n.files,e=>(f(),s(`span`,{key:e,class:`fchip mono`,title:e},h(e),9,We))),128)),n.files?.length?v(``,!0):(f(),s(`span`,Ge,`—`))])])]))),128))])])])):(f(),s(`p`,Ne,`这次没有涉及任何故事或任务。`))]),o(`div`,Ke,[o(`section`,qe,[o(`div`,Je,[o(`span`,Ye,[e(u,{name:`i-lucide-sparkles`,class:`s-svg`})]),l[23]||=o(`h2`,{class:`s-title`},`额外做的事`,-1),o(`span`,Xe,h(r(z).length),1)]),o(`div`,Ze,[r(z).length?v(``,!0):(f(),s(`p`,Qe,`没有计划外的改动。`)),(f(!0),s(p,null,c(r(z),(e,t)=>(f(),s(`article`,{key:t,class:`x-item`},[l[24]||=o(`span`,{class:`x-mark`},null,-1),o(`div`,$e,[o(`p`,et,h(e.title),1),e.detail?(f(),s(`p`,tt,h(e.detail),1)):v(``,!0),e.files?.length?(f(),s(`div`,nt,[(f(!0),s(p,null,c(e.files,e=>(f(),s(`span`,{key:e,class:`fchip mono`,title:e},h(e),9,rt))),128))])):v(``,!0)])]))),128))])]),o(`section`,it,[o(`div`,at,[o(`span`,ot,[e(u,{name:`i-lucide-badge-check`,class:`s-svg`})]),l[25]||=o(`h2`,{class:`s-title`},`验证结果`,-1),o(`span`,st,h(r(q))+`/`+h(r(B).length),1)]),o(`div`,ct,[r(B).length?v(``,!0):(f(),s(`p`,lt,`这次没有留下验证记录。`)),(f(!0),s(p,null,c(r(B),(t,n)=>(f(),s(`div`,{key:n,class:`v-item`},[o(`span`,{class:a([`v-ic`,`v-${t.result}`])},[e(u,{name:Vn[t.result]??`i-lucide-circle`,class:`v-svg`},null,8,[`name`])],2),o(`div`,ut,[o(`p`,dt,h(t.what),1),t.detail?(f(),s(`p`,ft,h(t.detail),1)):v(``,!0)]),o(`span`,{class:a([`v-res`,`v-${t.result}`])},h(Bn[t.result]??t.result),3)]))),128))])])]),r(G).length||r(K).length?(f(),s(`section`,pt,[o(`div`,mt,[o(`span`,ht,[e(u,{name:`i-lucide-key-round`,class:`s-svg`})]),l[26]||=o(`h2`,{class:`s-title`},`调试入口与账号`,-1),l[27]||=o(`span`,{class:`s-hint`},`照着这一栏就能自己跑起来点一遍`,-1)]),o(`div`,gt,[r(G).length?(f(),s(`div`,_t,[l[28]||=o(`p`,{class:`micro`},`访问地址`,-1),(f(!0),s(p,null,c(r(G),(n,i)=>(f(),s(`div`,{key:i,class:`u-item`},[o(`div`,vt,[o(`a`,{href:n.url,target:`_blank`,rel:`noreferrer`,class:`u-link`},[o(`span`,bt,h(n.label??`入口`),1),e(u,{name:`i-lucide-arrow-up-right`,class:`u-go`})],8,yt),o(`button`,{class:a([`cpy`,{ok:r(Q)===`url-${i}`}]),onClick:e=>$(n.url,`url-${i}`)},[e(u,{name:r(Q)===`url-${i}`?`i-lucide-check`:`i-lucide-copy`,class:`cpy-ic`},null,8,[`name`]),t(` `+h(r(Q)===`url-${i}`?`已复制`:`复制`),1)],10,xt)]),o(`p`,St,h(n.url),1),n.note?(f(),s(`p`,Ct,h(n.note),1)):v(``,!0)]))),128))])):v(``,!0),r(K).length?(f(),s(`div`,wt,[l[30]||=o(`p`,{class:`micro`},`账号密码`,-1),(f(!0),s(p,null,c(r(K),(n,i)=>(f(),s(`div`,{key:i,class:`a-item`},[o(`div`,Tt,[n.role?(f(),s(`span`,Et,h(n.role),1)):v(``,!0),o(`span`,Dt,h(n.username),1),o(`button`,{class:a([`cpy`,{ok:r(Q)===`acc-${i}`}]),onClick:e=>$(n.password?`账号:${n.username}\n密码:${n.password}`:n.username,`acc-${i}`)},[e(u,{name:r(Q)===`acc-${i}`?`i-lucide-check`:`i-lucide-copy`,class:`cpy-ic`},null,8,[`name`]),t(` `+h(r(Q)===`acc-${i}`?`已复制`:`复制`),1)],10,Ot)]),o(`div`,kt,[l[29]||=o(`span`,{class:`a-key`},`密码`,-1),n.password?(f(),s(`span`,At,h(n.password),1)):(f(),s(`span`,jt,`无密码 / 走单点登录`))]),n.note?(f(),s(`p`,Mt,h(n.note),1)):v(``,!0)]))),128))])):v(``,!0)])])):v(``,!0),r(H).length?(f(),s(`section`,Nt,[o(`div`,Pt,[o(`span`,Ft,[e(u,{name:`i-lucide-terminal-square`,class:`s-svg`})]),l[31]||=o(`h2`,{class:`s-title`},`测试前准备`,-1),o(`span`,It,h(r(H).length),1),l[32]||=o(`span`,{class:`s-hint`},`按顺序做完这些再开始点,命令可直接复制`,-1)]),o(`ol`,Lt,[(f(!0),s(p,null,c(r(H),(n,i)=>(f(),s(`li`,{key:i},[o(`div`,Rt,[o(`p`,zt,h(n.step),1),n.command?(f(),s(`div`,Bt,[o(`code`,Vt,h(n.command),1),o(`button`,{class:a([`cpy`,{ok:r(Q)===`cmd-${i}`}]),onClick:e=>$(n.command??``,`cmd-${i}`)},[e(u,{name:r(Q)===`cmd-${i}`?`i-lucide-check`:`i-lucide-copy`,class:`cpy-ic`},null,8,[`name`]),t(` `+h(r(Q)===`cmd-${i}`?`已复制`:`复制`),1)],10,Ht)])):v(``,!0),n.note?(f(),s(`p`,Ut,h(n.note),1)):v(``,!0)])]))),128))])])):v(``,!0),o(`section`,Wt,[o(`div`,Gt,[o(`span`,Kt,[e(u,{name:`i-lucide-flask-conical`,class:`s-svg`})]),l[33]||=o(`h2`,{class:`s-title`},`测试场景`,-1),o(`span`,qt,h(r(V).length),1),l[34]||=o(`span`,{class:`s-hint`},`一条一段:照着步骤走,末尾那句就是验收标准`,-1)]),r(V).length?(f(),s(`div`,Yt,[(f(!0),s(p,null,c(r(V),(n,r)=>(f(),s(`article`,{key:n.id??r,class:`sc lc-sc`},[o(`header`,Xt,[o(`span`,S,h(n.id??`TC-${r+1}`),1),o(`h3`,Zt,h(n.title),1)]),n.steps?.length?(f(),s(`div`,Qt,[l[35]||=o(`p`,{class:`micro`},`测试步骤`,-1),o(`ol`,$t,[(f(!0),s(p,null,c(n.steps,(e,t)=>(f(),s(`li`,{key:t},h(e),1))),128))])])):v(``,!0),o(`div`,en,[o(`p`,tn,[e(u,{name:`i-lucide-badge-check`,class:`sc-acc-ic`}),l[36]||=t(`验收标准`,-1)]),o(`p`,nn,h(n.expect),1),n.acceptance||n.storyIds?.length?(f(),s(`div`,rn,[n.acceptance?(f(),s(`span`,an,`对应验收:`+h(n.acceptance),1)):v(``,!0),n.storyIds?.length?(f(),s(`span`,on,[(f(!0),s(p,null,c(n.storyIds,e=>(f(),g(d,{key:e,to:`/story/${e}`,class:`ent-id mono`},{default:m(()=>[t(h(e),1)]),_:2},1032,[`to`]))),128))])):v(``,!0)])):v(``,!0)])]))),128))])):(f(),s(`p`,Jt,`这次没有单独列测试场景。`))]),o(`div`,sn,[o(`section`,cn,[o(`div`,ln,[o(`span`,un,[e(u,{name:`i-lucide-message-square-more`,class:`s-svg`})]),l[37]||=o(`h2`,{class:`s-title`},`说明`,-1)]),o(`div`,dn,[r(U).length?(f(),s(`ul`,pn,[(f(!0),s(p,null,c(r(U),(e,t)=>(f(),s(`li`,{key:t},h(e),1))),128))])):(f(),s(`p`,fn,`没有额外说明。`))])]),r(W).length?(f(),s(`section`,mn,[o(`div`,hn,[o(`span`,gn,[e(u,{name:`i-lucide-list-todo`,class:`s-svg`})]),l[38]||=o(`h2`,{class:`s-title`},`还没做的`,-1),o(`span`,_n,h(r(W).length),1)]),o(`div`,vn,[o(`ul`,yn,[(f(!0),s(p,null,c(r(W),(e,t)=>(f(),s(`li`,{key:t},h(e),1))),128))])])])):v(``,!0)])])):(f(),s(`div`,he,[o(`span`,ge,[e(u,{name:`i-lucide-clipboard-list`,class:`em-svg`})]),l[7]||=i(`<h2 class="em-title" data-v-dbac9077>还没有交付记录</h2><p class="em-sub" data-v-dbac9077> 每完成一项功能,AI 都要把「改了哪些故事与任务、额外做了什么、验了什么、怎么测」 写进下面这个文件,这一页就会自动排出来。 </p><p class="em-path mono" data-v-dbac9077>agile/last-change.json</p><p class="em-note" data-v-dbac9077> 每次只保留最近一次(覆盖写,不追加)· 格式见 <span class="mono" data-v-dbac9077>.agents/skills/scrum-planning/references/schema.md</span> 第 4 节 </p>`,4)])),(f(),g(re,{to:`body`},[r(O)?(f(),s(`div`,{key:0,class:`lc-hist-mask`,onClick:l[2]||=ie(e=>O.value=!1,[`self`])},[o(`div`,bn,[o(`header`,xn,[o(`div`,Sn,[l[42]||=o(`h3`,{id:`lc-hist-title`,class:`lc-hist-title`},`历史版本`,-1),o(`p`,Cn,[l[39]||=t(` 从 git 里读 `,-1),l[40]||=o(`span`,{class:`mono`},`agile/last-change.json`,-1),l[41]||=t(` 的提交记录 `,-1),r(D).length?(f(),s(p,{key:0},[t(`· 共 `+h(r(D).length)+` 版`,1)],64)):v(``,!0)])]),o(`button`,{class:`lc-hist-x`,"aria-label":`关闭`,onClick:l[0]||=e=>O.value=!1},[e(u,{name:`i-lucide-x`,class:`lc-hist-x-ic`})])]),r(A)?(f(),s(`p`,wn,h(r(A)),1)):r(k)?(f(),s(`div`,Tn,`正在读 git 历史…`)):(f(),s(`div`,En,[(f(!0),s(p,null,c(r(D),(e,t)=>(f(),s(`button`,{key:e.hash,class:a([`hist-item`,{on:r(w)?.hash===e.hash}]),disabled:r(j),onClick:t=>N(e)},[o(`span`,{class:a([`hist-item-dot`,{live:t===0}])},null,2),o(`span`,On,[o(`b`,null,h(e.subject||`(没有提交说明)`),1),o(`i`,kn,h(e.date),1)]),o(`span`,An,h(e.short),1)],10,Dn))),128)),r(D).length?v(``,!0):(f(),s(`p`,jn,` 这个文件还没有提交记录 —— 先 commit 一次,历史里才会出现版本。 `))])),o(`footer`,Mn,[l[43]||=o(`span`,{class:`dim`},`选一个版本即可在页面上只读查看,不会改动文件。`,-1),o(`button`,{class:`hist-close`,onClick:l[1]||=e=>O.value=!1},`关闭`)])])])):v(``,!0)]))],64)}}}),[[`__scopeId`,`data-v-dbac9077`]]);export{C as default};
@@ -0,0 +1 @@
1
+ import{Lt as e,On as t,Zn as n,_ as r,b as i,et as a,g as o,mt as s,tr as c,v as l,y as u}from"./DZo3dYLJ.js";import{r as d}from"./oXSDGTSr.js";import{n as f,o as p,t as m}from"./Baq-Hrpf.js";import{a as h}from"./Vo4wMbnS.js";import{t as g}from"./D2zrOcWn.js";import{t as _}from"./BsNk4K6P.js";import{u as v}from"#entry";var y={slots:{root:`relative flex flex-wrap items-center gap-2 border border-muted bg-muted rounded-md px-4 py-3 my-5 last:mb-0`,icon:`size-4 shrink-0 text-highlighted`,content:`min-w-0`,description:`text-sm/6 text-default font-medium`,actions:`flex flex-wrap items-center gap-1.5 ms-auto`}},b=Object.assign({inheritAttrs:!1},{__name:`ProsePrompt`,props:{description:{type:String,required:!1},prompt:{type:String,required:!1},icon:{type:null,required:!1},actions:{type:Array,required:!1,default:()=>[]},class:{type:null,required:!1},ui:{type:Object,required:!1}},setup(b){let x=b,S=e(),C=f(`prose.prompt`,x),{t:w}=v(),{copy:T,copied:E}=h(),D=d(),O=o(()=>m({extend:y,...D.ui?.prose?.prompt||{}})()),k=o(()=>[...new Set([`copy`,...C.actions])]);function A(){if(C.prompt)return C.prompt.trim();let e=S.default?.();return e?p(e).trim():``}function j(){T(A())}function M(){window.open(`cursor://anysphere.cursor-deeplink/prompt?text=${encodeURIComponent(A())}`,`_self`)}function N(){window.open(`windsurf://cascade/newChat?prompt=${encodeURIComponent(A())}`,`_self`)}function P(){window.open(`claude://code/new?q=${encodeURIComponent(A())}`,`_self`)}return(e,o)=>(s(),i(`div`,a({class:O.value.root({class:[t(C).ui?.root,t(C).class]})},e.$attrs),[t(C).icon?(s(),l(g,{key:0,name:t(C).icon,class:n(O.value.icon({class:t(C).ui?.icon}))},null,8,[`name`,`class`])):u(``,!0),r(`div`,{class:n(O.value.content({class:t(C).ui?.content}))},[t(C).description?(s(),i(`p`,{key:0,class:n(O.value.description({class:t(C).ui?.description}))},c(t(C).description),3)):u(``,!0)],2),r(`div`,{class:n(O.value.actions({class:t(C).ui?.actions}))},[k.value.includes(`copy`)?(s(),l(_,{key:0,icon:t(E)?t(D).ui.icons.copyCheck:t(D).ui.icons.copy,size:`sm`,label:t(w)(`prose.prompt.copy`),onClick:j},null,8,[`icon`,`label`])):u(``,!0),k.value.includes(`cursor`)?(s(),l(_,{key:1,icon:`i-simple-icons-cursor`,color:`neutral`,variant:`outline`,size:`sm`,label:t(w)(`prose.prompt.openIn`,{name:`Cursor`}),onClick:M},null,8,[`label`])):u(``,!0),k.value.includes(`windsurf`)?(s(),l(_,{key:2,icon:`i-simple-icons-windsurf`,color:`neutral`,variant:`outline`,size:`sm`,label:t(w)(`prose.prompt.openIn`,{name:`Windsurf`}),onClick:N},null,8,[`label`])):u(``,!0),k.value.includes(`claude`)?(s(),l(_,{key:3,icon:`i-simple-icons-claude`,color:`neutral`,variant:`outline`,size:`sm`,label:t(w)(`prose.prompt.openIn`,{name:`Claude`}),onClick:P},null,8,[`label`])):u(``,!0)],2)],16))}});export{b as default};
@@ -1 +1 @@
1
- import{$ as e,D as t,Ft as n,Ht as r,Lt as i,On as a,Zn as o,_ as s,at as c,b as l,bt as u,ct as d,g as f,mt as p,o as m,qt as h,tr as g,v as _,vn as v,wt as y}from"./DZo3dYLJ.js";import{r as b}from"./oXSDGTSr.js";import{n as x,t as S}from"./Baq-Hrpf.js";import{a as C,i as w,n as T,r as E,t as D}from"./DJUwhJ8T.js";import{o as O}from"#entry";import k from"./DmKZi-Wo.js";var A={slots:{root:`relative group *:not-first:my-0! *:not-first:static! my-5`,list:`relative flex items-center gap-1 border border-muted bg-default border-b-0 rounded-t-md overflow-x-auto p-2`,indicator:`absolute left-0 inset-y-2 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position) transition-[translate,width] duration-200 ease-out motion-reduce:transition-none bg-elevated rounded-md shadow-xs`,trigger:[`relative inline-flex items-center gap-1.5 text-default data-[state=active]:text-highlighted hover:bg-elevated/50 px-2 py-1.5 text-sm rounded-md disabled:cursor-not-allowed disabled:opacity-75 outline-primary/25 focus-visible:outline-3`,`transition-colors`],triggerIcon:`size-4 shrink-0`,triggerLabel:`truncate`}},j={__name:`ProseCodeGroup`,props:e({defaultValue:{type:String,required:!1,default:`0`},sync:{type:String,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},{modelValue:{type:String},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let j=e,M=i(),N=x(`prose.codeGroup`,j),P=n(e,`modelValue`),F=b(),I=f(()=>S({extend:A,...F.ui?.prose?.codeGroup||{}})()),L=v(1),R=f(()=>(L.value,M.default?.()?.flatMap(z).filter(Boolean)||[]));function z(e,t){return typeof e.type==`symbol`?e.children?.map(z):{label:e.props?.filename||e.props?.label||`${t}`,icon:e.props?.icon,component:e}}return d(()=>{if(N.sync){let e=`code-group-${N.sync}`,t=O(e,()=>localStorage.getItem(e));r(t,()=>{t.value&&(P.value=t.value)},{immediate:!0}),r(P,()=>{P.value&&(t.value=P.value,localStorage.setItem(e,P.value))})}}),c(()=>L.value++),(e,n)=>(p(),_(a(C),{modelValue:P.value,"onUpdate:modelValue":n[0]||=e=>P.value=e,"default-value":a(N).defaultValue,"unmount-on-hide":!1,class:o(I.value.root({class:[a(N).ui?.root,a(N).class]}))},{default:h(()=>[t(a(T),{class:o(I.value.list({class:a(N).ui?.list}))},{default:h(()=>[t(a(E),{class:o(I.value.indicator({class:a(N).ui?.indicator}))},null,8,[`class`]),(p(!0),l(m,null,u(R.value,(e,n)=>(p(),_(a(D),{key:n,value:String(n),class:o(I.value.trigger({class:a(N).ui?.trigger}))},{default:h(()=>[t(k,{icon:e.icon,filename:e.label,class:o(I.value.triggerIcon({class:a(N).ui?.triggerIcon}))},null,8,[`icon`,`filename`,`class`]),s(`span`,{class:o(I.value.triggerLabel({class:a(N).ui?.triggerLabel}))},g(e.label),3)]),_:2},1032,[`value`,`class`]))),128))]),_:1},8,[`class`]),(p(!0),l(m,null,u(R.value,(e,t)=>(p(),_(a(w),{key:t,value:String(t),"as-child":``},{default:h(()=>[(p(),_(y(e.component),{"hide-header":``,tabindex:`-1`}))]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`,`default-value`,`class`]))}};export{j as default};
1
+ import{$ as e,D as t,Ft as n,Ht as r,Lt as i,On as a,Zn as o,_ as s,at as c,b as l,bt as u,ct as d,g as f,mt as p,o as m,qt as h,tr as g,v as _,vn as v,wt as y}from"./DZo3dYLJ.js";import{r as b}from"./oXSDGTSr.js";import{n as x,t as S}from"./Baq-Hrpf.js";import{a as C,i as w,n as T,r as E,t as D}from"./C7AVymkF.js";import{c as O}from"#entry";import k from"./Cp9-r9Yz.js";var A={slots:{root:`relative group *:not-first:my-0! *:not-first:static! my-5`,list:`relative flex items-center gap-1 border border-muted bg-default border-b-0 rounded-t-md overflow-x-auto p-2`,indicator:`absolute left-0 inset-y-2 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position) transition-[translate,width] duration-200 ease-out motion-reduce:transition-none bg-elevated rounded-md shadow-xs`,trigger:[`relative inline-flex items-center gap-1.5 text-default data-[state=active]:text-highlighted hover:bg-elevated/50 px-2 py-1.5 text-sm rounded-md disabled:cursor-not-allowed disabled:opacity-75 outline-primary/25 focus-visible:outline-3`,`transition-colors`],triggerIcon:`size-4 shrink-0`,triggerLabel:`truncate`}},j={__name:`ProseCodeGroup`,props:e({defaultValue:{type:String,required:!1,default:`0`},sync:{type:String,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},{modelValue:{type:String},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let j=e,M=i(),N=x(`prose.codeGroup`,j),P=n(e,`modelValue`),F=b(),I=f(()=>S({extend:A,...F.ui?.prose?.codeGroup||{}})()),L=v(1),R=f(()=>(L.value,M.default?.()?.flatMap(z).filter(Boolean)||[]));function z(e,t){return typeof e.type==`symbol`?e.children?.map(z):{label:e.props?.filename||e.props?.label||`${t}`,icon:e.props?.icon,component:e}}return d(()=>{if(N.sync){let e=`code-group-${N.sync}`,t=O(e,()=>localStorage.getItem(e));r(t,()=>{t.value&&(P.value=t.value)},{immediate:!0}),r(P,()=>{P.value&&(t.value=P.value,localStorage.setItem(e,P.value))})}}),c(()=>L.value++),(e,n)=>(p(),_(a(C),{modelValue:P.value,"onUpdate:modelValue":n[0]||=e=>P.value=e,"default-value":a(N).defaultValue,"unmount-on-hide":!1,class:o(I.value.root({class:[a(N).ui?.root,a(N).class]}))},{default:h(()=>[t(a(T),{class:o(I.value.list({class:a(N).ui?.list}))},{default:h(()=>[t(a(E),{class:o(I.value.indicator({class:a(N).ui?.indicator}))},null,8,[`class`]),(p(!0),l(m,null,u(R.value,(e,n)=>(p(),_(a(D),{key:n,value:String(n),class:o(I.value.trigger({class:a(N).ui?.trigger}))},{default:h(()=>[t(k,{icon:e.icon,filename:e.label,class:o(I.value.triggerIcon({class:a(N).ui?.triggerIcon}))},null,8,[`icon`,`filename`,`class`]),s(`span`,{class:o(I.value.triggerLabel({class:a(N).ui?.triggerLabel}))},g(e.label),3)]),_:2},1032,[`value`,`class`]))),128))]),_:1},8,[`class`]),(p(!0),l(m,null,u(R.value,(e,t)=>(p(),_(a(w),{key:t,value:String(t),"as-child":``},{default:h(()=>[(p(),_(y(e.component),{"hide-header":``,tabindex:`-1`}))]),_:2},1032,[`value`]))),128))]),_:1},8,[`modelValue`,`default-value`,`class`]))}};export{j as default};
@@ -1 +1 @@
1
- import{On as e,mt as t,qt as n,v as r}from"./DZo3dYLJ.js";import{r as i}from"./oXSDGTSr.js";import{t as a}from"./CQTvWh4i.js";import o from"./DsNkyZPc.js";var s={__name:`ProseWarning`,setup(s){let c=i();return(i,s)=>(t(),r(o,{color:`warning`,icon:e(c).ui.icons.warning},{default:n(()=>[a(i.$slots,`default`,{mdcUnwrap:`p`})]),_:3},8,[`icon`]))}};export{s as default};
1
+ import{On as e,mt as t,qt as n,v as r}from"./DZo3dYLJ.js";import{r as i}from"./oXSDGTSr.js";import{t as a}from"./CQTvWh4i.js";import o from"./4G46xON2.js";var s={__name:`ProseWarning`,setup(s){let c=i();return(i,s)=>(t(),r(o,{color:`warning`,icon:e(c).ui.icons.warning},{default:n(()=>[a(i.$slots,`default`,{mdcUnwrap:`p`})]),_:3},8,[`icon`]))}};export{s as default};