@26lights/orcha 0.42.263 → 0.42.265

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/orcha.cjs.js CHANGED
@@ -59,5 +59,5 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
59
59
  `)}function $me(t,e,n){var i;const o=((i=t.match(/^\s*/))==null?void 0:i[0])??"";return[...o].some(s=>s!==e)?{code:"INVALID_INDENTATION_CHARACTER"}:o.length%n!==0?{code:"INVALID_INDENTATION_SIZE",params:{expected:n,found:o.length}}:{level:o.length/n,content:t.slice(o.length).trim()}}function Bme(t,e){const n=Cd(e),o=[],i=[],s=[];if(!t||t.trim().length===0)return{valid:!0,data:[],errors:[]};const a=t.split(/\r?\n/);for(let l=0;l<a.length;l+=1){const c=l+1,d=a[l];if(d.trim().length===0)continue;const u=$me(d,n.indentCharacter,n.indentSize);if("code"in u){o.push({line:c,code:u.code,params:u.params});continue}const{level:f,content:p}=u,m=n.levels[f];if(!m){o.push({line:c,code:"TOO_MANY_INDENTATION_LEVELS",params:{max:n.levels.length-1}});continue}if(f>0&&!s[f-1]){const C=n.levels[f-1];o.push({line:c,code:"EXPECTED_PARENT_BEFORE",params:{parent:C,child:m}});continue}const h={type:m,name:p,children:[]};f===0?i.push(h):s[f-1].children.push(h),s[f]=h,s.length=f+1}return{valid:o.length===0,data:i,errors:o}}const Mme=["onKeydown"],Lme={class:"ao-modal ao-bulk-insert-modal"},Vme={class:"ao-modal__header"},Ome={class:"ao-modal__header-meta"},Ime={class:"ao-modal__title-group"},Pme={class:"ao-modal__body ao-bulk-insert-modal__body"},Fme={key:0,class:"ao-bulk-insert-modal__intro"},Rme=["placeholder","disabled"],Ume={key:1,class:"ao-bulk-insert-modal__errors"},zme={key:2,class:"ao-bulk-insert-modal__count"},Hme={class:"ao-bulk-insert-modal__help"},jme={class:"ao-bulk-insert-modal__help-title"},qme={class:"ao-bulk-insert-modal__help-list"},Wme={class:"ao-bulk-insert-modal__help-entity"},Zme={class:"ao-bulk-insert-modal__help-rule"},Kme={class:"ao-bulk-insert-modal__footer"},bd=r.defineComponent({__name:"AoBulkInsertModal",props:{open:{type:Boolean,default:!0},title:{},rootType:{},hint:{default:""},placeholder:{default:""},isLoading:{type:Boolean,default:!1},size:{default:"md"}},emits:["update:open","submit","close"],setup(t,{emit:e}){const n=t,o=e,{t:i}=Ge(),s=r.ref(""),a=r.ref(null),l={phase:"project.bulk.entity.phase",milestone:"project.bulk.entity.milestone",activity:"project.bulk.entity.activity",task:"project.bulk.entity.task"},c={INVALID_INDENTATION_CHARACTER:"project.bulk.parser.invalidIndentationCharacter",INVALID_INDENTATION_SIZE:"project.bulk.parser.invalidIndentationSize",TOO_MANY_INDENTATION_LEVELS:"project.bulk.parser.tooManyIndentationLevels",EXPECTED_PARENT_BEFORE:"project.bulk.parser.expectedParentBefore"},d=r.computed(()=>Cd(n.rootType)),u=r.computed(()=>Bme(s.value,n.rootType)),f=b=>String(i(l[b])),p=r.computed(()=>`${Dme(n.rootType,f).split(`
60
60
  `).map(k=>k.trim()?`${k} 1`:k).join(`
61
61
  `)}
62
- ...`),m=r.computed(()=>n.placeholder||p.value),h=r.computed(()=>s.value.trim().length>0&&u.value.valid&&u.value.data.length>0&&!n.isLoading),C=r.computed(()=>{const b=w=>w.reduce((k,x)=>k+1+b(x.children??[]),0);return b(u.value.data)});r.watch(()=>n.open,async b=>{var w;b&&(s.value="",await r.nextTick(),(w=a.value)==null||w.focus())},{immediate:!0});const v=()=>{n.isLoading||(o("update:open",!1),o("close"))},y=()=>{h.value&&o("submit",u.value.data)},g=b=>String(b===0?i("project.bulk.modal.noSpace"):b===1?i("project.bulk.modal.oneSpace"):i("project.bulk.modal.spaces",{count:b})),_=b=>String(i(c[b.code],b.params??{}));return(b,w)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper","ao-bulk-insert-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(v,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:v}),r.createElementVNode("div",Lme,[r.createElementVNode("div",Vme,[r.createElementVNode("div",Ome,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:v})]),r.createElementVNode("header",Ime,[r.createVNode(vt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",Pme,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(y,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",Fme,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:a,"onUpdate:modelValue":w[0]||(w[0]=k=>s.value=k),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,Rme),[[r.vModelText,s.value]]),u.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",Ume,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.errors,k=>(r.openBlock(),r.createElementBlock("p",{key:`${k.line}-${k.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(i)("project.bulk.modal.lineError",{line:k.line,message:_(k)})),1))),128))])):s.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",zme,r.toDisplayString(r.unref(i)("project.bulk.modal.count",{count:C.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Hme,[r.createElementVNode("span",jme,r.toDisplayString(r.unref(i)("project.bulk.modal.indentation")),1),r.createElementVNode("div",qme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.levels,(k,x)=>(r.openBlock(),r.createElementBlock("div",{key:k,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",Wme,r.toDisplayString(f(k)),1),r.createElementVNode("span",Zme,r.toDisplayString(g(x)),1)]))),128))])]),r.createElementVNode("footer",Kme,[r.createVNode(de,{color:"primary",variant:"ghost",label:r.unref(i)("common.cancel"),disabled:t.isLoading,onClick:v},null,8,["label","disabled"]),r.createVNode(de,{type:"submit",color:"primary",variant:"solid",label:r.unref(i)("common.create"),"is-loading":t.isLoading,disabled:!h.value},null,8,["label","is-loading","disabled"])])],32)])])],42,Mme)):r.createCommentVNode("",!0)]))}});function kd(t,e){return(t.children??[]).filter(n=>n.type===e)}function Gme(t){return kd(t,"task").map(e=>({name:e.name}))}function a0(t,e=[]){const n=t.filter(i=>i.type==="activity"),o=lu(e,n.length);return n.map((i,s)=>{const a=Gme(i);return{name:i.name,rank:o[s],...a.length?{tasks:a}:{}}})}function Yme(t,e){return a0(t,e)}function l0(t,e){const n=t.filter(i=>i.type==="milestone"),o=lu(e,n.length);return n.map((i,s)=>{const a=a0(kd(i,"activity"));return{name:i.name,rank:o[s],...a.length?{activities:a}:{}}})}function Jme(t,e){const n=t.filter(i=>i.type==="phase"),o=lu(e,n.length);return n.map((i,s)=>{const a=l0(kd(i,"milestone"),[]);return{name:i.name,rank:o[s],...a.length?{milestones:a}:{}}})}const Xme={class:"ao-mapping-card-project-phase__header"},Qme={class:"ao-card-project-item__title-line"},ehe={key:0,class:"ao-card-project-item-phase__estimation"},the={class:"ao-mapping-card-project-phase__footer"},nhe={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},ohe={class:"ao-mapping-card-project-phase__subitem"},rhe={class:"ao-mapping-card-project-phase__subitem"},ihe={key:0,class:"ao-mapping-card-project-phase__secondary"},she={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},ahe=r.defineComponent({__name:"AoCondensedCardProjectItemPhase",props:{id:{},projectName:{},name:{},milestones:{},isEditable:{type:Boolean},deadline:{},active:{type:Boolean},color:{},timeTrackingData:{},estimationUnit:{}},emits:["update:title","update:deadline","archivePhase","updatePhase","unarchivePhase"],setup(t,{emit:e}){const n=t,o=e,i=v=>{o("update:title",v)},s=r.computed(()=>{var v;return((v=n.milestones)==null?void 0:v.reduce((y,g)=>{var _;return y+((_=g.activities)==null?void 0:_.reduce((b,w)=>b+(w.estimation||0),0))},0))||0}),a=r.computed(()=>!n.milestones||!n.timeTrackingData?0:n.milestones.reduce((v,y)=>{var g;return v+(((g=y.activities)==null?void 0:g.reduce((_,b)=>{var k;const w=(k=n.timeTrackingData)==null?void 0:k[b.id];return _+((w==null?void 0:w.timeSpent)||0)},0))||0)},0)),{t:l}=Ge(),c=r.computed(()=>n.estimationUnit==="days"?l("activity.estimationUnit.pointsShort"):l("activity.estimationUnit.hoursShort")),d=r.computed(()=>Ra(a.value,n.estimationUnit)),u=r.computed(()=>{var v;return(v=n.milestones)==null?void 0:v.length}),f=r.computed(()=>{var v;return(v=n.milestones)==null?void 0:v.filter(y=>y.status===Hi.done).length}),p=r.computed(()=>(f.value||0)/(u.value||1)),m=r.computed({get:()=>n.deadline??"",set:v=>o("update:deadline",v!=null&&v.length?v:null)}),h=r.computed({get:()=>n.color,set:v=>{o("updatePhase",{id:n.id,color:v})}}),C=(v,y)=>{const g=v.target;g.closest("button")||g.closest("input")||g.closest(".ao-title")||y()};return(v,y)=>(r.openBlock(),r.createBlock(ai,{color:h.value,"onUpdate:color":y[2]||(y[2]=g=>h.value=g)},{clickable:r.withCtx(({openPicker:g,bgColor:_})=>[r.createVNode(Cl,{class:"ao-mapping-card-project-phase","is-clickable":t.isEditable,color:_,"with-left-border":!0,onClick:b=>C(b,g)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",Qme,[r.createVNode(vt,{id:t.id,class:"ao-mapping-card-project-phase__title",title:t.name||"",level:4,"is-editable":t.isEditable,"onUpdate:title":i},null,8,["id","title","is-editable"]),s.value||a.value?(r.openBlock(),r.createElementBlock("span",ehe," ("+r.toDisplayString(d.value)+"/"+r.toDisplayString(s.value)+r.toDisplayString(c.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",the,[u.value?(r.openBlock(),r.createElementBlock("div",nhe,[r.createElementVNode("div",ohe,[r.createVNode(be,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",rhe,r.toDisplayString(f.value)+" / "+r.toDisplayString(u.value),1)]),r.createVNode(bl,{percentages:p.value,class:"ao-mapping-card-project-phase__progress",color:h.value},null,8,["percentages","color"]),v.$slots.secondary?(r.openBlock(),r.createElementBlock("div",ihe,[r.renderSlot(v.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-mapping-card-project-phase__footer-row",m.value?"":"ao-mapping-card-project-phase__no_deadline"])},[t.isEditable?r.withDirectives((r.openBlock(),r.createElementBlock("input",{key:0,"onUpdate:modelValue":y[1]||(y[1]=b=>m.value=b),class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,m.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",she,r.toDisplayString(r.unref(Pr)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",Xme,[r.createVNode(de,{class:"ao-mapping-card-project-phase__archive",color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:t.active?v.$t("archive"):v.$t("unarchive"),onClick:y[0]||(y[0]=r.withModifiers(()=>t.active?v.$emit("archivePhase",{id:t.id}):v.$emit("unarchivePhase",{id:t.id}),["stop"]))},null,8,["label"])])]),key:"0"}:void 0]),1032,["is-clickable","color","onClick"])]),_:3},8,["color"]))}});const lhe={class:"ao-project-phase"},che={key:0,class:"ao-project-phase__drag ao-card__drag"},uhe={key:1,class:"ao-project-phase__col-phase"},dhe={key:2,class:"ao-mapping-project-phase__col-phase"},fhe={key:0,class:"ao-project-phase__col-milestones"},phe=["title","onClick"],mhe=["onClick"],hhe=["onClick"],ghe={class:"ao-project-phase__milestones-list-footer"},vhe=r.defineComponent({__name:"AoProjectPhase",props:{phase:{},closedStatus:{},users:{},isEditable:{type:Boolean},readonly:{type:Boolean},timeTrackingData:{},estimationUnit:{}},emits:["addMilestone","bulkAddMilestone","updateMilestone","archiveMilestone","unarchiveMilestone","updatePhase","archivePhase","unarchivePhase"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e;r.watch(()=>o.phase.milestones,(A,S)=>{Jn(A,S)});const s=A=>{i("updatePhase",{id:o.phase.id,name:A})},a=A=>{i("updatePhase",{id:o.phase.id,deadline:A})},l=A=>{i("updatePhase",A)},c=r.computed(()=>o.phase.milestones.map(A=>ZC(A,o.closedStatus))),d=A=>{const{name:S,rank:N}=Jo(c.value??[],"milestone",n);i("addMilestone",{name:S,rank:N,phaseId:A})},u=A=>{const S=n("template.defaultName.milestone",{idx:1}),N=ls(c.value??[]);i("addMilestone",{name:S,rank:N,phaseId:A})},f=A=>{i("updateMilestone",A)},p=A=>{i("archiveMilestone",A)},m=A=>{i("unarchiveMilestone",A)},h=A=>{i("archivePhase",A)},C=A=>{i("unarchivePhase",A)},v=A=>{"added"in A?i("updateMilestone",{id:A.added.element.id,phaseId:o.phase.id,rank:Ir(c.value,A.added.newIndex)}):"removed"in A||"moved"in A&&i("updateMilestone",{id:A.moved.element.id,rank:Ir(c.value,A.moved.newIndex)})},y=r.ref(!1),g=r.ref(!1),_=A=>{g.value=!0;const S=l0(A,o.phase.milestones??[]);i("bulkAddMilestone",{phaseId:o.phase.id,milestones:S,onSuccess:()=>{g.value=!1,y.value=!1},onError:()=>{g.value=!1}})};r.watch(y,A=>{A&&(g.value=!1)});const b=Xo.useRoute(),w=r.computed(()=>b.path.includes("/mapping")),k=r.computed(()=>{var A;return o.phase.id===((A=b.params)==null?void 0:A.phaseId)});r.ref(!1);const x=r.computed(()=>{var A;return o.phase.id!==((A=b.params)==null?void 0:A.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:GC(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(A,S)=>(r.openBlock(),r.createElementBlock("li",lhe,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(x.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",che,[r.createVNode(be,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",dhe,[r.createVNode(ahe,{id:t.phase.id,milestones:c.value,name:t.phase.name,deadline:t.phase.deadline,active:t.phase.active,"is-editable":t.isEditable,color:t.phase.color,"estimation-unit":t.estimationUnit,"onUpdate:deadline":a,"onUpdate:title":s,onArchivePhase:h,onUnarchivePhase:C,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","estimation-unit"])])):(r.openBlock(),r.createElementBlock("div",uhe,[r.createVNode(cme,{id:t.phase.id,milestones:c.value,name:t.phase.name,deadline:t.phase.deadline,active:t.phase.active,"is-editable":t.isEditable,color:t.phase.color,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,"onUpdate:deadline":a,"onUpdate:title":s,onArchivePhase:h,onUnarchivePhase:C,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","time-tracking-data","estimation-unit"])]))],4),w.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",fhe,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(x.value)},[t.isEditable?(r.openBlock(),r.createBlock(Ba,{key:0,class:r.normalizeClass(["ao-project-phase__milestone-quick-add",{"ao-project-phase__milestone-quick-add--visible":k.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:N})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:A.$t("project.milestone.add"),onClick:N},[r.createVNode(be,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,phe)]),menu:r.withCtx(({close:N})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{N(),u(t.phase.id)}},r.toDisplayString(A.$t("project.bulk.menu.single")),9,mhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{N(),y.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,hhe)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(Pn),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},A.$attrs,{onChange:v}),{item:r.withCtx(({element:N})=>{var I;return[r.createVNode(Sme,{id:N.id,name:N.name,color:N.color,"phase-color":t.phase.color,activities:N.activities,deadline:N.deadline,active:N.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":N.id===((I=A.$route.params)==null?void 0:I.milestoneId),assignee:N.assignee,important:N.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:M=>!t.readonly&&A.$router.push({name:r.unref(Pe).milestone,params:{phaseId:t.phase.id,milestoneId:N.id}}),onUpdateMilestone:f,onArchiveMilestone:p,onUnarchiveMilestone:m},null,8,["id","name","color","phase-color","activities","deadline","active","is-editable","is-draggable","closed-status","is-selected","assignee","important","readonly","time-tracking-data","estimation-unit","onClick"])]}),_:1},16,["list","disabled"]),r.createElementVNode("div",ghe,[t.isEditable?(r.openBlock(),r.createBlock(Ao,{key:0,label:A.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:S[0]||(S[0]=N=>d(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),y.value?(r.openBlock(),r.createBlock(bd,{key:1,open:y.value,"onUpdate:open":S[1]||(S[1]=N=>y.value=N),title:A.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":g.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}});const yhe={class:"ao-project__phases"},_he={key:0,class:"ao-project-phase__phases-list-footer"},Che={class:"ao-project-phase__col-phase"},wd=r.defineComponent({__name:"AoProjectPhases",props:{phases:{},closedStatus:{},isEditable:{type:Boolean},users:{},readonly:{type:Boolean},timeTrackingData:{},estimationUnit:{}},emits:["addMilestone","bulkAddMilestone","updateMilestone","archiveMilestone","unarchiveMilestone","addPhase","updatePhase","archivePhase","unarchivePhase"],setup(t,{emit:e}){const n=t,o=e;r.watch(()=>n.phases,(m,h)=>{Jn(m,h)});const i=m=>{o("addMilestone",m)},s=m=>{o("updateMilestone",m)},a=m=>{o("archiveMilestone",m)},l=m=>{o("unarchiveMilestone",m)},c=m=>{o("archivePhase",m)},d=m=>{o("unarchivePhase",m)},u=m=>{if(m.moved){const h=as(m,n.phases??[]);o("updatePhase",{id:m.moved.element.id,rank:h})}},f=m=>{o("updatePhase",m)},p=m=>{o("addPhase",m)};return(m,h)=>(r.openBlock(),r.createElementBlock("div",yhe,[r.createVNode(r.unref(Pn),{class:"ao-project-phase__phases-list","model-value":t.phases,"item-key":"id",handle:".ao-card__drag",onChange:u},{item:r.withCtx(({element:C})=>[r.createVNode(vhe,{phase:C,"is-editable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,users:t.users,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,onAddMilestone:i,onBulkAddMilestone:h[0]||(h[0]=v=>m.$emit("bulkAddMilestone",v)),onUpdateMilestone:s,onArchiveMilestone:a,onUnarchiveMilestone:l,onUpdatePhase:f,onArchivePhase:c,onUnarchivePhase:d},null,8,["phase","is-editable","closed-status","users","readonly","time-tracking-data","estimation-unit"])]),_:1},8,["model-value"]),t.isEditable?(r.openBlock(),r.createElementBlock("div",_he,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",Che,[r.createVNode(Ao,{label:m.$t("project.phases.add"),"icon-name":"Add",class:"ao-project-phase__add-phase",onClick:p},null,8,["label"])]),h[2]||(h[2]=r.createElementVNode("div",{class:"ao-project-phase__col-milestones"},null,-1))])):r.createCommentVNode("",!0)]))}});const bhe={class:"ao-add-template-modal__form-body"},khe={class:"field__row"},whe={class:"ao-add-template-modal__form-footer"},c0=r.defineComponent({__name:"AoAddTemplateModal",props:{projectId:{},templates:{}},emits:["apply"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>n.templates.map(c=>({value:c.id,label:c.name}))),s=r.ref(null),a=c=>{s.value=c},l=()=>{s.value&&o("apply",s.value,n.projectId)};return(c,d)=>(r.openBlock(),r.createBlock(Ua,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(vt,{title:c.$t("project.template.apply.title"),level:3},null,8,["title"])]),default:r.withCtx(()=>[r.createElementVNode("form",{class:"ao-add-template-modal__form",onSubmit:r.withModifiers(l,["prevent"])},[r.createElementVNode("p",null,r.toDisplayString(c.$t("project.template.apply.notice")),1),r.createElementVNode("div",bhe,[r.createElementVNode("div",khe,[r.createVNode(pt,{value:s.value,options:i.value,detached:!0,onChange:a},null,8,["value","options"])])]),r.createElementVNode("footer",whe,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}});const Ehe={class:"ao-save-template-modal__form-body"},She={class:"field__row"},xhe={class:"ao-field ao-field--inline"},Ahe={class:"ao-field__label"},The={class:"ao-save-template-modal__phases"},Nhe={class:"ao-field__label"},Dhe={class:"ao-save-template-modal__phases-list"},$he=["value"],Bhe={class:"ao-save-template-modal__form-footer"},u0=r.defineComponent({__name:"AoSaveTemplateModal",props:{phases:{}},emits:["save"],setup(t,{emit:e}){const n=t,o=e,i=r.ref(""),s=r.ref([]);r.onMounted(()=>{s.value=n.phases.map(l=>l.id)});const a=()=>{i.value&&o("save",i.value,s.value)};return(l,c)=>(r.openBlock(),r.createBlock(Ua,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(vt,{title:l.$t("project.template.save.title"),level:3},null,8,["title"])]),default:r.withCtx(()=>[r.createElementVNode("form",{class:"ao-save-template-modal__form",onSubmit:r.withModifiers(a,["prevent"])},[r.createElementVNode("div",Ehe,[r.createElementVNode("div",She,[r.createElementVNode("label",xhe,[r.createElementVNode("span",Ahe,r.toDisplayString(l.$t("project.template.name.label"))+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=d=>i.value=d),type:"text"},null,512),[[r.vModelText,i.value]])])]),r.createElementVNode("div",The,[r.createElementVNode("div",Nhe,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",Dhe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(n.phases,d=>(r.openBlock(),r.createElementBlock("label",{key:d.id,class:"ao-field ao-field--checkbox"},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[1]||(c[1]=u=>s.value=u),type:"checkbox",value:d.id},null,8,$he),[[r.vModelCheckbox,s.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",Bhe,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:a},null,8,["label"])])],32)]),_:1}))}});const Mhe={class:"ao-project"},Lhe=["onClick"],Vhe=["onClick"],Ohe={class:"ao-project__body"},Ihe=r.defineComponent({__name:"AoProjectOverviewProject",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{},statuses:{},activityTypes:{},devStatuses:{},sprints:{},selectedActivity:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{},history:{default:()=>[]},historyLoading:{type:Boolean,default:!1}},emits:["addPhase","bulkAddPhase","updatePhase","archivePhase","unarchivePhase","addMilestone","bulkAddMilestone","updateMilestone","archiveMilestone","unarchiveMilestone","addActivity","bulkAddActivity","update:activity","archiveActivity","copyPhaseToTemplate","unarchiveActivity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","applyTemplate","saveTemplate","update:showsArchived","fetchHistory"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=r.computed(()=>o.phases.flatMap(R=>R.milestones)),a=()=>{const{name:R,rank:ie}=Jo(o.phases,"phase",n);i("addPhase",{name:R,rank:ie,projectId:o.project.id})},l=()=>{const R=n("template.defaultName.phase",{idx:1}),ie=ls(o.phases);i("addPhase",{name:R,rank:ie,projectId:o.project.id})},c=R=>{i("updatePhase",R)},d=R=>{i("archivePhase",R)},u=R=>{i("unarchivePhase",R)},f=R=>{i("copyPhaseToTemplate",R)},p=R=>{i("addMilestone",R)},m=R=>{i("bulkAddMilestone",R)},h=R=>{i("updateMilestone",R)},C=R=>{i("archiveMilestone",R)},v=R=>{i("unarchiveMilestone",R)},y=R=>{i("addActivity",R)},g=R=>{i("bulkAddActivity",R)},_=R=>{i("update:activity",R)},b=R=>{i("archiveActivity",R)},w=R=>{i("unarchiveActivity",R)},k=R=>{i("addSubtask",R)},x=R=>{i("updateSubtask",R)},A=R=>{i("deleteSubtask",R)},S=r.computed(()=>s.value.flatMap(R=>R.activities)),N=r.computed(()=>o.devStatuses??[]),I=r.computed(()=>o.sprints??[]),M=R=>{i("addFiles",R)},F=R=>{i("removeFile",R)},D=R=>{i("addComment",R)},$=R=>{i("updateComment",R)},E=R=>{i("removeComment",R)},V=r.ref(!1),B=r.ref(!1),H=r.ref(!1),Y=r.ref(!1),le=(R,ie)=>{i("applyTemplate",{templateId:R,projectId:ie}),V.value=!1},oe=(R,ie)=>{var Ee;const Se=(Ee=o.templates)==null?void 0:Ee.at(-1),ze=Se?Qe.LexoRank.parse(Se.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:R,rank:ze.format(),phaseIds:ie}),B.value=!1},we=R=>{Y.value=!0;const ie=Jme(R,o.phases);i("bulkAddPhase",{projectId:o.project.id,phases:ie,onSuccess:()=>{Y.value=!1,H.value=!1},onError:()=>{Y.value=!1}})};r.watch(H,R=>{R&&(Y.value=!1)});const re=Xo.useRouter(),ne=r.ref("overview"),z=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(ne,R=>{R==="feed"?(re.push({name:Pe.feed}),console.log("Navigating to feed...")):R==="dev"?(re.push({name:Pe.dev}),console.log("Navigating to dev...")):R==="overview"?(re.push({name:Pe.project}),console.log("Navigating to feed...")):R==="mapping"&&(re.push({name:Pe.mapping}),console.log("Navigating to feed..."))}),(R,ie)=>{var ze;const Se=r.resolveComponent("RouterView");return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-overview"},R.$attrs),[r.createElementVNode("div",Mhe,[r.createVNode(cs,null,{primary:r.withCtx(()=>[r.createVNode(ks,{modelValue:ne.value,"onUpdate:modelValue":ie[0]||(ie[0]=Ee=>ne.value=Ee),tabs:z},null,8,["modelValue"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:ie[1]||(ie[1]=Ee=>R.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(Ba,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:Ee})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:Ee},null,8,["label","onClick"])]),menu:r.withCtx(({close:Ee})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ee(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,Lhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ee(),H.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,Vhe)]),_:1})):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:1,class:"ao-project-overview__save-as-template",color:"primary",label:R.$t("project.template.save.label"),onClick:ie[2]||(ie[2]=Ee=>B.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:2,class:"ao-project-overview__add-template",color:"primary",label:R.$t("project.template.apply.label"),onClick:ie[3]||(ie[3]=Ee=>V.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Ohe,[r.createVNode(wd,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"time-tracking-data":t.timeTrackingData,"estimation-unit":(ze=t.project)==null?void 0:ze.estimationUnit,onAddMilestone:p,onBulkAddMilestone:m,onUpdateMilestone:h,onArchiveMilestone:C,onUnarchiveMilestone:v,onAddPhase:a,onUpdatePhase:c,onArchivePhase:d,onUnarchivePhase:u,onCopyPhaseToTemplate:f},null,8,["phases","closed-status","is-editable","users","time-tracking-data","estimation-unit"])])]),r.createVNode(Se,{class:"ao-project__sidebar",phases:t.phases,"project-id":t.project.id,"project-name":t.project.name,users:t.users,"is-editable":t.isEditable===!0,"closed-status":t.closedStatus,"time-tracking-data":t.timeTrackingData,onClose:ie[4]||(ie[4]=Ee=>R.$router.push({name:r.unref(Pe).project})),onUpdateMilestone:h,onAddActivity:y,onBulkAddActivity:g,onUpdateActivity:_,onArchiveActivity:b,onUnarchiveActivity:w},null,8,["phases","project-id","project-name","users","is-editable","closed-status","time-tracking-data"]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(Se,{name:"modal",activities:S.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":N.value,sprints:I.value,"selected-activity":t.selectedActivity,phases:t.phases,project:t.project,users:t.users,"user-id":t.userId,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":t.loadAttachmentPreview,history:t.history,"history-loading":t.historyLoading,"onUpdate:activity":_,onAddSubtask:k,onUpdateSubtask:x,onDeleteSubtask:A,onAddFiles:M,onRemoveFile:F,onAddComment:D,onUpdateComment:$,onRemoveComment:E,onFetchHistory:ie[5]||(ie[5]=()=>i("fetchHistory"))},{default:r.withCtx(({Component:Ee})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(Ee),null,{default:r.withCtx(Ce=>[r.renderSlot(R.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(Ce)))]),_:3}))]),_:3},8,["activities","is-task-checkable","statuses","activity-types","dev-statuses","sprints","selected-activity","phases","project","users","user-id","is-editable","attachment-enabled","time-tracking-data","load-attachment-preview","history","history-loading"])]))],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[B.value?(r.openBlock(),r.createBlock(u0,{key:0,phases:t.phases,onClose:ie[6]||(ie[6]=Ee=>B.value=!1),onSave:oe},null,8,["phases"])):r.createCommentVNode("",!0),V.value?(r.openBlock(),r.createBlock(c0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:ie[7]||(ie[7]=Ee=>V.value=!1),onApply:le},null,8,["project-id","templates"])):r.createCommentVNode("",!0),H.value?(r.openBlock(),r.createBlock(bd,{key:2,open:H.value,"onUpdate:open":ie[8]||(ie[8]=Ee=>H.value=Ee),title:R.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":Y.value,onSubmit:we},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}});const Phe=["disabled"],Fhe={class:"ao-priority-badge__value"},oa=r.defineComponent({__name:"AoPriorityBadge",props:{priority:{},clickable:{type:Boolean}},emits:["click"],setup(t,{emit:e}){const n=e,o=()=>{n("click")};return(i,s)=>t.priority?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:r.normalizeClass(["ao-priority-badge",`ao-priority-badge--${t.priority.toLowerCase()}`,t.clickable?"ao-priority-badge--clickable":""]),disabled:!t.clickable,onClick:r.withModifiers(o,["stop"])},[r.createElementVNode("span",Fhe,r.toDisplayString(t.priority),1),s[0]||(s[0]=r.createElementVNode("span",{class:"ao-priority-badge__hover"},"+",-1))],10,Phe)):r.createCommentVNode("",!0)}});const Rhe={class:"ao-card-feed__header"},Uhe={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},zhe={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},Hhe={class:"ao-card-feed__body"},jhe={key:0,class:"ao-card-feed__breadcrumbs"},qhe={class:r.normalizeClass(["ao-card-feed__title-group"])},Whe={class:"ao-card-feed__title-line"},Zhe={key:0,class:"ao-card-feed__slug"},Khe={key:1,class:"ao-card-feed__deadline"},Ghe={class:"ao-card-feed__footer"},Yhe={class:"ao-card-feed__footer-row"},Jhe={class:"ao-assignees"},Xhe={key:0,class:"ao-assignee"},Qhe=["title"],ege={key:2,class:"ao-card-feed__subitems"},tge={key:0,class:"ao-card-feed__subitem"},nge={class:"ao-card-feed__subitem"},oge={key:1,class:"ao-card-feed__subitem"},rge={class:"ao-card-feed__subitem"},ige={class:"ao-card-feed__timer-wrapper"},sge={class:"ao-card-feed__footer-row"},age={key:0,class:"ao-card-feed__progress-wrapper"},lge={class:"ao-card-feed__subitem"},cge={class:"ao-card-feed__subitem"},Ed=r.defineComponent({__name:"AoCardFeed",props:{id:{},name:{},projectName:{},projectId:{},projectColor:{},phaseName:{},milestoneName:{},milestoneColor:{},deadline:{},priority:{},blocked:{type:Boolean},assignee:{},slug:{},comments:{},attachments:{},tasks:{},isEditable:{type:Boolean},isPrivate:{type:Boolean},isClosed:{type:Boolean},tagType:{},sprint:{}},emits:["removeAssignee","updateActivity","startTimer"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>n.tagType==="milestone"?n.milestoneName:n.projectName),s=r.computed(()=>n.tagType==="milestone"?n.milestoneColor:n.projectColor),a=v=>{o("updateActivity",{id:n.id,name:v})},l=r.computed(()=>n.tagType==="milestone"&&n.phaseName?`${n.phaseName}`:n.phaseName&&n.milestoneName?`${n.phaseName} / ${n.milestoneName}`:""),c=r.computed(()=>n.assignee?[n.assignee]:[]),d=r.computed(()=>Pr(n.deadline)),u=v=>{o("removeAssignee",v)},f=()=>{if(!n.priority||!n.isEditable)return;const v={P0:"P2",P1:"P0",P2:"P1"};o("updateActivity",{id:n.id,priority:v[n.priority]})},p=()=>{o("startTimer",{activityId:n.id,name:n.name,project:n.projectName,projectId:n.projectId,slug:n.slug})},m=r.computed(()=>{var v;return(v=n.tasks)==null?void 0:v.length}),h=r.computed(()=>{var v;return(v=n.tasks)==null?void 0:v.filter(y=>y.isDone).length}),C=r.computed(()=>(h.value||0)/(m.value||1));return(v,y)=>(r.openBlock(),r.createBlock(Cl,{class:r.normalizeClass(["ao-card-feed",{"ao-card-feed--closed":t.isClosed}]),"is-clickable":!0,variant:t.blocked?"danger":"default"},{header:r.withCtx(()=>[r.createElementVNode("div",Rhe,[i.value?(r.openBlock(),r.createBlock(zi,{key:0,label:i.value,class:"ao-card-feed__project",variant:"solid",color:t.projectColor?void 0:"primary","raw-color":s.value},null,8,["label","color","raw-color"])):r.createCommentVNode("",!0),t.isPrivate||t.isClosed||t.blocked?(r.openBlock(),r.createElementBlock("div",Uhe,[t.isPrivate?(r.openBlock(),r.createBlock(be,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(be,{key:1,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),v.$slots.secondary?(r.openBlock(),r.createElementBlock("div",zhe,[r.renderSlot(v.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",Hhe,[l.value?(r.openBlock(),r.createElementBlock("span",jhe,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",qhe,[r.createElementVNode("div",Whe,[t.slug?(r.openBlock(),r.createElementBlock("span",Zhe,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(vt,{id:t.id,title:t.name,level:5,"is-editable":t.isEditable,class:"ao-card-feed__title-inline","onUpdate:title":a},null,8,["id","title","is-editable"])])]),t.deadline?(r.openBlock(),r.createElementBlock("span",Khe,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",Ghe,[r.createElementVNode("div",Yhe,[r.createElementVNode("ul",Jhe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,g=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:g.id},[g?(r.openBlock(),r.createElementBlock("li",Xhe,[r.createVNode(Qt,{"user-name":r.unref(Yp)(g),"avatar-url":g.avatarUrl,"is-closable":!0,onClose:()=>u(g.id)},null,8,["user-name","avatar-url","onClose"])])):r.createCommentVNode("",!0)],64))),128))]),t.priority?(r.openBlock(),r.createBlock(oa,{key:0,priority:t.priority,clickable:t.isEditable,onClick:f},null,8,["priority","clickable"])):r.createCommentVNode("",!0),t.sprint?(r.openBlock(),r.createElementBlock("span",{key:1,class:"ao-card-feed__sprint",title:t.sprint.label?`Sprint ${t.sprint.number}: ${t.sprint.label}`:`Sprint ${t.sprint.number}`}," Sprint "+r.toDisplayString(t.sprint.number),9,Qhe)):r.createCommentVNode("",!0),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",ege,[t.comments?(r.openBlock(),r.createElementBlock("li",tge,[r.createVNode(be,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",nge,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",oge,[r.createVNode(be,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",rge,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",ige,[r.createVNode(be,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",sge,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",age,[r.createElementVNode("div",lge,[r.createVNode(be,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",cge,r.toDisplayString(h.value)+" / "+r.toDisplayString(m.value),1)]),r.createVNode(bl,{percentages:C.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}});const uge={class:"ao-project-milestone"},dge={class:"ao-project-milestone__header"},fge={class:"ao-project-milestone__header_line"},pge={class:"ao-project-milestone__header_line"},mge={class:"ao-project-milestone__title"},hge={key:0,class:"ao-fieldset ao-milestone__fieldset"},gge={class:"ao-field__row ao-milestone__field-row"},vge={class:"ao-field ao-field--inline"},yge={class:"ao-field__row ao-milestone__field-row"},_ge={class:"ao-field ao-milestone__field-multiselect"},Cge={class:"ao-milestone__color-actions"},bge=["onClick"],kge=["title","onClick"],wge=["onClick"],Ege=["onClick"],Sge={class:"ao-project-milestone__body"},xge={key:0,class:"ao-project-milestone__footer"},Age=["onClick"],Tge=["onClick"],Tp=r.defineComponent({__name:"AoProjectOverviewMilestoneDetails",props:{milestoneId:{},users:{},projectId:{},phases:{},phaseId:{},isEditable:{type:Boolean},closedStatus:{},timeTrackingData:{}},emits:["close","addActivity","bulkAddActivity","updateMilestone","updateActivity","archiveActivity","unarchiveActivity","startTimer"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=S=>{var N;i("startTimer",S),(N=window.parent)==null||N.postMessage({type:"startTimer",data:S},"*")},a=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.find(N=>N.id===o.phaseId)}),l=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.flatMap(N=>N.milestones)}),c=r.computed(()=>{var S;return(S=l.value)==null?void 0:S.find(N=>N.id===o.milestoneId)}),d=r.computed(()=>{var S;return(S=c.value)==null?void 0:S.activities});r.watch(d,(S,N)=>{Jn(S,N)});const u=S=>{i("close",S)},f=()=>{const{name:S,rank:N}=Jo(d.value??[],"activity",n);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:N,projectId:o.projectId})},p=()=>{const S=n("template.defaultName.activity",{idx:1}),N=ls(d.value??[]);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:N,projectId:o.projectId})},m=r.ref(!1),h=r.ref(!1),C=S=>{h.value=!0;const N=Yme(S,d.value??[]);i("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:N,onSuccess:()=>{h.value=!1,m.value=!1},onError:()=>{h.value=!1}})};r.watch(m,S=>{S&&(h.value=!1)});const v=S=>{i("updateActivity",S)},y=S=>{d.value&&"moved"in S&&i("updateActivity",{id:S.moved.element.id,rank:Ir(d.value,S.moved.newIndex)})},g=r.computed({get:()=>{var S;return(S=c.value)==null?void 0:S.color},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,color:S})}}),_=r.computed({get:()=>{var S;return((S=c.value)==null?void 0:S.deadline)??""},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,deadline:S!=null&&S.length?S:null})}}),b=S=>o.closedStatus?cu(S,o.closedStatus):!1,w=r.computed(()=>{var S;return((S=o.users)==null?void 0:S.map(N=>({label:`${N.firstName} ${N.lastName}`,value:N.id,avatar:N.avatarUrl})))||[]}),k=r.computed({get(){var S,N;return(N=(S=c.value)==null?void 0:S.assignee)!=null&&N.id?[c.value.assignee.id]:[]},set(S){i("updateMilestone",{id:o.milestoneId,assigneeId:S[0]??null})}}),x=r.computed({get(){var S;return((S=c.value)==null?void 0:S.important)??!1},set(S){i("updateMilestone",{id:o.milestoneId,important:S})}}),A=(S,N)=>{const I=S.currentTarget;I instanceof HTMLElement&&N(I)};return(S,N)=>{var I;return r.openBlock(),r.createElementBlock("div",uge,[r.createElementVNode("header",dge,[r.createElementVNode("div",fge,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:u})]),r.createElementVNode("div",pge,[r.createElementVNode("div",mge,[r.createVNode(vt,{title:((I=c.value)==null?void 0:I.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(r0,{modelValue:x.value,"onUpdate:modelValue":N[0]||(N[0]=M=>x.value=M),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:S.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),c.value?(r.openBlock(),r.createElementBlock("div",hge,[r.createElementVNode("div",gge,[r.createElementVNode("label",vge,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":N[1]||(N[1]=M=>_.value=M),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,_.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",yge,[r.createElementVNode("label",_ge,[r.createVNode(pt,{modelValue:k.value,"onUpdate:modelValue":N[2]||(N[2]=M=>k.value=M),options:w.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:S.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:M,handleTagRemove:F})=>[r.createVNode(Qt,{"user-name":M.label,"avatar-url":M.avatar,"is-closable":!0,onClose:D=>F(M,D)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",Cge,[r.createVNode(ai,{color:g.value,"onUpdate:color":N[3]||(N[3]=M=>g.value=M)},{clickable:r.withCtx(({openPicker:M,bgColor:F})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:F}),class:"color-button",onClick:D=>A(D,M)},null,12,bge)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(Ba,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:M})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:S.$t("project.activity.add"),onClick:M},[r.createVNode(be,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,kge)]),menu:r.withCtx(({close:M})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),p()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,wge),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Ege)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Sge,[r.createVNode(r.unref(Pn),r.mergeProps({class:"ao-project-milestone__activities",list:d.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},S.$attrs,{onChange:y}),{item:r.withCtx(({element:M})=>{var F,D,$,E,V;return[r.createVNode(Ed,{id:M.id,name:M.name||M.id,"project-id":t.projectId,"phase-name":(F=a.value)==null?void 0:F.name,"milestone-name":(D=c.value)==null?void 0:D.name,"milestone-color":($=c.value)==null?void 0:$.color,deadline:M.deadline,priority:M.priority,sprint:M.sprint,blocked:M.blocked,users:t.users,assignee:M.assignee,slug:M.slug,comments:(E=M.comments)==null?void 0:E.length,attachments:(V=M.attachments)==null?void 0:V.length,tasks:M.tasks,"is-editable":t.isEditable,"is-private":M.private,"is-closed":b(M),onClick:B=>S.$router.push({name:r.unref(Pe).activity,params:{milestoneId:t.milestoneId,activityId:M.id}}),onUpdateActivity:v,onRemoveAssignee:()=>v({id:M.id,assigneeId:null}),onStartTimer:s},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&M.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("archive"),onClick:r.withModifiers(()=>S.$emit("archiveActivity",{id:M.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!M.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>S.$emit("unarchiveActivity",{id:M.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0)]),key:"0"}:void 0]),1032,["id","name","project-id","phase-name","milestone-name","milestone-color","deadline","priority","sprint","blocked","users","assignee","slug","comments","attachments","tasks","is-editable","is-private","is-closed","onClick","onRemoveAssignee"])]}),_:1},16,["list","disabled"]),t.isEditable?(r.openBlock(),r.createElementBlock("div",xge,[r.createVNode(Ba,null,{trigger:r.withCtx(({open:M})=>[r.createVNode(Ao,{"icon-name":"Add",label:S.$t("project.activity.add"),onClick:M},null,8,["label","onClick"])]),menu:r.withCtx(({close:M})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),f()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,Age),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Tge)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(bd,{key:0,open:m.value,"onUpdate:open":N[4]||(N[4]=M=>m.value=M),title:S.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":h.value,onSubmit:C},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])}}});const Nge=r.defineComponent({__name:"AoProjectOverviewActivityDetails",props:{phaseId:{},milestoneId:{},activityId:{},activityTypes:{},devStatuses:{},activities:{},selectedActivity:{},isTaskCheckable:{},statuses:{},phases:{},users:{},project:{},userId:{},isEditable:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{},sprints:{},history:{default:()=>[]},historyLoading:{type:Boolean,default:!1}},emits:["update:activity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","createSprint","fetchHistory"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>{var y;return(y=n.phases)==null?void 0:y.find(g=>g.id===n.phaseId)}),s=r.computed(()=>{var y;return(y=n.phases)==null?void 0:y.flatMap(g=>g.milestones)}),a=r.computed(()=>{var y;return(y=s.value)==null?void 0:y.find(g=>g.id===n.milestoneId)}),l=r.computed(()=>{var y;return n.selectedActivity??((y=n.activities)==null?void 0:y.find(g=>g.id===n.activityId))}),c=y=>{o("update:activity",y)},d=y=>{o("addSubtask",y)},u=y=>{o("updateSubtask",y)},f=y=>{o("deleteSubtask",y)},p=y=>{o("addFiles",y)},m=y=>{o("removeFile",y)},h=y=>{o("addComment",y)},C=y=>{o("updateComment",y)},v=y=>{o("removeComment",y)};return(y,g)=>{var _,b;return l.value?(r.openBlock(),r.createBlock(_l,{key:0,activity:l.value,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":t.milestoneId,"template-activities":t.activities,"is-template":!1,users:t.users,"user-id":t.userId,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,breadcrumbs:`${(_=i.value)==null?void 0:_.name} / ${(b=a.value)==null?void 0:b.name}`,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,projects:[t.project],"time-tracking-data":t.timeTrackingData,"load-attachment-preview":n.loadAttachmentPreview,sprints:t.sprints,history:t.history,"history-loading":t.historyLoading,onClose:y.$router.back,"onUpdate:activity":c,onAddSubtask:d,onUpdateSubtask:u,onDeleteSubtask:f,onAddFiles:p,onRemoveFile:m,onAddComment:h,onUpdateComment:C,onRemoveComment:v,onCreateSprint:g[0]||(g[0]=w=>o("createSprint",w)),onFetchHistory:g[1]||(g[1]=()=>o("fetchHistory"))},{default:r.withCtx(w=>[r.renderSlot(y.$slots,"default",r.normalizeProps(r.guardReactiveProps(w)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints","history","history-loading","onClose"])):r.createCommentVNode("",!0)}}}),Dge={class:"ao-col-header"},$ge=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",Dge,[r.createVNode(vt,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(zi,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}});function Bge(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function La(t){return typeof t=="function"?t():r.unref(t)}const Mge=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Lge=t=>t!=null,Ui=()=>{};function Vge(t,e){function n(...o){return new Promise((i,s)=>{Promise.resolve(t(()=>e.apply(this,o),{fn:e,thisArg:this,args:o})).then(i).catch(s)})}return n}function Oge(t,e={}){let n,o,i=Ui;const s=l=>{clearTimeout(l),i(),i=Ui};return l=>{const c=La(t),d=La(e.maxWait);return n&&s(n),c<=0||d!==void 0&&d<=0?(o&&(s(o),o=null),Promise.resolve(l())):new Promise((u,f)=>{i=e.rejectOnCancel?f:u,d&&!o&&(o=setTimeout(()=>{n&&s(n),o=null,u(l())},d)),n=setTimeout(()=>{o&&s(o),o=null,u(l())},c)})}}function Ige(t,e=200,n={}){return Vge(Oge(e,n),t)}function gc(t){var e;const n=La(t);return(e=n==null?void 0:n.$el)!=null?e:n}const Pge=Mge?window:void 0;function Fge(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function Rge(t){const e=Fge();return r.computed(()=>(e.value,!!t()))}function Uge(t,e,n={}){const{root:o,rootMargin:i="0px",threshold:s=.1,window:a=Pge,immediate:l=!0}=n,c=Rge(()=>a&&"IntersectionObserver"in a),d=r.computed(()=>{const h=La(t);return(Array.isArray(h)?h:[h]).map(gc).filter(Lge)});let u=Ui;const f=r.ref(l),p=c.value?r.watch(()=>[d.value,gc(o),f.value],([h,C])=>{if(u(),!f.value||!h.length)return;const v=new IntersectionObserver(e,{root:gc(C),rootMargin:i,threshold:s});h.forEach(y=>y&&v.observe(y)),u=()=>{v.disconnect(),u=Ui}},{immediate:l,flush:"post"}):Ui,m=()=>{u(),p(),f.value=!1};return Bge(m),{isSupported:c,isActive:f,pause(){u(),f.value=!1},resume(){f.value=!0},stop:m}}const zge={class:r.normalizeClass(["ao-list-kanban"])},Hge={class:"ao-list-kanban__header"},jge=["title"],qge={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},Wge={key:1,class:"ao-list-kanban__end"},Zge={key:0,class:"ao-list-kanban__no-more"},Kge={key:1,class:"ao-list-kanban__divider"},Gge={key:1,class:"ao-list-kanban__footer"},Yge=r.defineComponent({__name:"AoListKanban",props:{list:{},status:{},users:{},userId:{},title:{},footerLabel:{},isLoading:{type:Boolean},hasMore:{type:Boolean},noMoreLabel:{},isEditable:{type:[Boolean,String]},tagType:{},showHeaderAdd:{type:Boolean},isDevMode:{type:Boolean}},emits:["add","addAtBeginning","update:list","change:list","loadMore","selectActivity","archiveActivity","unarchiveActivity","updateActivity","startTimer"],setup(t,{emit:e}){const n=t,o=e,i=r.ref(!1),s=r.ref(null);Uge(s,([{isIntersecting:f}])=>{i.value=f}),r.watch(i,f=>{f&&n.hasMore&&!n.isLoading&&o("loadMore")});const a=f=>{var p;return n.isEditable===!0?!0:n.userId&&n.isEditable==="only-own"?n.userId===((p=f.assignee)==null?void 0:p.id):!1},l=f=>{o("selectActivity",f)},c=f=>{o("updateActivity",f)},d=f=>{if("added"in f){const p={id:f.added.element.id,rank:Ir(n.list,f.added.newIndex)};n.isDevMode?p.statusDevId=n.status.id:p.statusId=n.status.id,o("updateActivity",p)}else"removed"in f||"moved"in f&&o("updateActivity",{id:f.moved.element.id,rank:Ir(n.list,f.moved.newIndex)})},u=r.ref(!1);return(f,p)=>(r.openBlock(),r.createElementBlock("div",zge,[t.title||f.$slots.header?r.renderSlot(f.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",Hge,[t.title?(r.openBlock(),r.createBlock($ge,{key:0,class:"ao-list-kanban__col-header",title:t.title,level:3,items:(m=t.list)==null?void 0:m.length},null,8,["title","items"])):r.createCommentVNode("",!0),t.showHeaderAdd?(r.openBlock(),r.createElementBlock("button",{key:1,class:"ao-list-kanban__header-add",title:f.$t("feed.activity.add"),onClick:p[0]||(p[0]=h=>f.$emit("addAtBeginning"))},[r.createVNode(be,{name:"Add"})],8,jge)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(Pn),r.mergeProps({class:["ao-list-kanban__list",u.value?"ao-list-kanban__transition":void 0],list:t.list,"item-key":"id",group:"kanban","ghost-class":"ao-list-kanban__ghost",animation:"200"},f.$attrs,{draggable:".ao-list-draggable",disabled:!t.isEditable,"component-data":{tag:"transition-group",name:"ao-list-kanban__transition"},onChange:d,onStart:p[2]||(p[2]=m=>u.value=!0),onEnd:p[3]||(p[3]=m=>u.value=!1)}),{item:r.withCtx(({element:m})=>{var h,C,v,y,g,_,b,w,k,x;return[r.createVNode(Ed,{id:m.id,class:r.normalizeClass(a(m)?"ao-list-draggable":""),name:m.name,"project-name":(h=m.project)==null?void 0:h.name,"project-id":(C=m.project)==null?void 0:C.id,"project-color":(v=m.project)==null?void 0:v.color,"phase-name":(g=(y=m.milestone)==null?void 0:y.phase)==null?void 0:g.name,"milestone-name":(_=m.milestone)==null?void 0:_.name,"milestone-color":(b=m.milestone)==null?void 0:b.color,deadline:m.deadline,rules:((w=m.rules)==null?void 0:w.length)||0,tasks:m.tasks,description:m.description,priority:m.priority,sprint:m.sprint,blocked:m.blocked,type:m.type,comments:(k=m.comments)==null?void 0:k.length,attachments:(x=m.attachments)==null?void 0:x.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":a(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[A=>a(m)&&c(A),()=>a(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>a(m)&&c({id:m.id,assigneeId:null}),onStartTimer:p[1]||(p[1]=A=>f.$emit("startTimer",A))},{secondary:r.withCtx(()=>[a(m)&&m.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:f.$t("feed.activity.archive"),onClick:r.withModifiers(()=>f.$emit("archiveActivity",{id:m.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),a(m)&&!m.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:f.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>f.$emit("unarchiveActivity",{id:m.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0)]),_:2},1032,["id","class","name","project-name","project-id","project-color","phase-name","milestone-name","milestone-color","deadline","rules","tasks","description","priority","sprint","blocked","type","comments","attachments","users","assignee","slug","is-editable","is-private","tag-type","onUpdateActivity","onClick","onRemoveAssignee"])]}),footer:r.withCtx(()=>[t.isLoading?(r.openBlock(),r.createElementBlock("div",qge,[r.createVNode(be,{name:"Loading"})])):t.hasMore?(r.openBlock(),r.createElementBlock("div",{key:2,ref_key:"scrollEnd",ref:s,class:"ao-list-kanban__end"},null,512)):(r.openBlock(),r.createElementBlock("div",Wge,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",Zge,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",Kge)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),f.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",Gge,[r.renderSlot(f.$slots,"footer",{},()=>[t.isEditable?(r.openBlock(),r.createBlock(Ao,{key:0,"icon-name":"AddBoxOutlineRounded",label:t.footerLabel,onClick:p[4]||(p[4]=m=>f.$emit("add"))},null,8,["label"])):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]))}});const Jge={class:"ao-field ao-search-field"},Xge=["value","placeholder"],Qge=r.defineComponent({__name:"AoSearchField",props:{modelValue:{},delay:{default:250},placeholder:{default:"Search"}},emits:["update:modelValue","clear"],setup(t,{emit:e}){const n=t,o=e,i=async l=>{const d=l.target.value;o("update:modelValue",d,l)},s=Ige(i,n.delay),a=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",Jge,[r.createElementVNode("input",{value:t.modelValue,type:"text",class:"ao-field__input ao-search-field__input",placeholder:t.placeholder,onInput:c[0]||(c[0]=(...d)=>r.unref(s)&&r.unref(s)(...d)),onKeypress:r.withKeys(i,["enter"])},null,40,Xge),r.createVNode(be,{name:"SearchRounded",class:r.normalizeClass(`ao-search-field__icon ao-search-field__action ${t.modelValue?"":"ao-search-field__action--visible"}`)},null,8,["class"]),r.createVNode(de,{"icon-name":"CloseRounded",size:"sm",color:"primary",corners:"round",class:r.normalizeClass(`ao-search-field__button ao-search-field__action ${t.modelValue?"ao-search-field__action--visible":""}`),onClick:a},null,8,["class"])]))}});const e0e={class:"ao-sprint-metrics"},t0e=["onClick"],n0e={class:"ao-sprint-metrics__header-left"},o0e={class:"ao-sprint-metrics__icon"},r0e={class:"ao-sprint-metrics__title"},i0e={class:"ao-sprint-metrics__dates"},s0e={key:0,class:"ao-sprint-metrics__project"},a0e={class:"ao-sprint-metrics__advancement"},l0e={class:"ao-sprint-metrics__progress-bar"},c0e={class:"ao-sprint-metrics__percent"},u0e={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},d0e={class:"ao-sprint-metrics__tooltip-row"},f0e={class:"ao-sprint-metrics__tooltip-row"},p0e={class:"ao-sprint-metrics__tooltip-row"},m0e={class:"ao-sprint-metrics__tooltip-row"},h0e={class:"ao-sprint-metrics__tooltip-row"},g0e={class:"ao-sprint-metrics__tooltip-row"},v0e={class:"ao-sprint-metrics__tooltip-row"},y0e={class:"ao-sprint-metrics__content"},_0e={class:"ao-sprint-metrics__grid"},C0e={class:"ao-sprint-metrics__item"},b0e={class:"ao-sprint-metrics__label"},k0e={class:"ao-sprint-metrics__value"},w0e={key:0,class:"ao-sprint-metrics__tooltip"},E0e={class:"ao-sprint-metrics__tooltip-title"},S0e={class:"ao-sprint-metrics__item"},x0e={class:"ao-sprint-metrics__label"},A0e={class:"ao-sprint-metrics__value"},T0e={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},N0e={class:"ao-sprint-metrics__label"},D0e={class:"ao-sprint-metrics__input-row"},$0e=["value","placeholder","onInput"],B0e={class:"ao-sprint-metrics__unit"},M0e={key:0,class:"ao-sprint-metrics__secondary"},L0e={class:"ao-sprint-metrics__item"},V0e={class:"ao-sprint-metrics__label"},O0e={class:"ao-sprint-metrics__value"},I0e=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},setup(t){const e=D=>D.label?`Sprint ${D.number}: ${D.label}`:`Sprint ${D.number}`,n=t,{t:o}=Ge(),i=["Ok for prod","Done"],s=r.ref(new Set),a=r.ref({}),l=D=>{s.value.has(D)?s.value.delete(D):s.value.add(D)},c=D=>n.projects.find($=>$.id===D.projectId),d=D=>{var $;return(($=n.planningData[D])==null?void 0:$.plannedManDays)??0},u=D=>{var $;return(($=n.planningData[D])==null?void 0:$.remainingPlannedManDays)??0},f=D=>{var $;return(($=n.planningData[D])==null?void 0:$.users)??[]},p=D=>n.activities.filter($=>{var E;return((E=$.sprint)==null?void 0:E.id)===D}).reduce(($,E)=>$+(E.estimation??0),0),m=D=>n.activities.filter($=>{var V,B;if(((V=$.sprint)==null?void 0:V.id)!==D)return!1;const E=(B=$.devStatus)==null?void 0:B.name;return E&&i.includes(E)}).reduce(($,E)=>$+(E.estimation??0),0),h=D=>{const $=n.sprints.find(V=>V.id===D),E=$?c($):void 0;return(E==null?void 0:E.estimationUnit)==="hours"?"hours":"points"},C=(D,$)=>h(D)==="hours"?$*n.businessDayHours:$,v=D=>h(D)==="hours"?o("activity.estimationUnit.hoursShort"):o("activity.estimationUnit.pointsShort"),y=D=>{const $=C(D,d(D));return $<=0?0:p(D)/$},g=D=>{if(a.value[D]!==void 0)return a.value[D];const $=n.sprints.find(E=>E.id===D);if($){const E=c($);if((E==null?void 0:E.velocity)!==void 0&&E.velocity>0)return E.velocity}return 1},_=(D,$)=>{const E=parseFloat($);isNaN(E)||E<=0?delete a.value[D]:a.value[D]=E},b=D=>{const $=g(D);return $===void 0?0:C(D,d(D))*$},w=D=>{const $=b(D);return $<=0?null:p(D)/$},k=D=>{const $=w(D);return $===null?0:Math.round($*100)},x=D=>{const $=p(D);if($<=0)return 0;const E=m(D);return Math.round(E/$*100)},A=D=>{const $=p(D),E=m(D);return Math.max(0,$-E)},S=D=>{const $=C(D,u(D)),E=y(D);return $*E},N=D=>{const $=S(D),E=A(D);return $<=0&&E>0?!1:$<E},I=D=>D.toFixed(1),M=(D,$)=>`${D.toFixed(2)} pts / ${v($)}`,F=(D,$)=>{const E=new Date(D),V=new Date($),B={day:"numeric",month:"short"};return`${E.toLocaleDateString("en-UK",B)} – ${V.toLocaleDateString("en-UK",B)}`};return(D,$)=>(r.openBlock(),r.createElementBlock("div",e0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,E=>{var V;return r.openBlock(),r.createElementBlock("div",{key:E.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:B=>l(E.id)},[r.createElementVNode("div",n0e,[r.createElementVNode("span",o0e,r.toDisplayString(s.value.has(E.id)?"▸":"▾"),1),r.createElementVNode("span",r0e,r.toDisplayString(e(E)),1),r.createElementVNode("span",i0e," · "+r.toDisplayString(F(E.startDate,E.endDate)),1),!s.value.has(E.id)&&c(E)?(r.openBlock(),r.createElementBlock("span",s0e," · "+r.toDisplayString((V=c(E))==null?void 0:V.name),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__header-right",{"ao-sprint-metrics__header-right--behind":N(E.id)}])},[r.createElementVNode("div",a0e,[r.createElementVNode("div",l0e,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":N(E.id)}]),style:r.normalizeStyle({width:x(E.id)+"%"})},null,6)]),r.createElementVNode("span",c0e,r.toDisplayString(x(E.id))+"% ",1),r.createElementVNode("div",u0e,[$[7]||($[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",d0e,[$[0]||($[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(x(E.id))+"%",1)]),r.createElementVNode("span",f0e,[$[1]||($[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(I(m(E.id)))+" / "+r.toDisplayString(I(p(E.id)))+" pts ",1)]),r.createElementVNode("span",p0e,[$[2]||($[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(I(A(E.id)))+" pts",1)]),$[8]||($[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",m0e,[$[3]||($[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(I(S(E.id)))+" pts",1)]),r.createElementVNode("span",h0e,[$[4]||($[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(I(u(E.id)))+" MD",1)]),r.createElementVNode("span",g0e,[$[5]||($[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(M(y(E.id),E.id)),1)]),$[9]||($[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",v0e,[$[6]||($[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(N(E.id)?"Behind plan":"On track"),1)])])])],2)],8,t0e),r.withDirectives(r.createElementVNode("div",y0e,[r.createElementVNode("div",_0e,[r.createElementVNode("div",C0e,[r.createElementVNode("div",b0e,r.toDisplayString(r.unref(o)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",k0e,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":f(E.id).length>0}])},[r.createTextVNode(r.toDisplayString(I(d(E.id)))+" MD ",1),f(E.id).length>0?(r.openBlock(),r.createElementBlock("span",w0e,[r.createElementVNode("span",E0e,r.toDisplayString(I(d(E.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f(E.id),B=>(r.openBlock(),r.createElementBlock("span",{key:B.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString(B.fullName),1),r.createElementVNode("span",null,r.toDisplayString(I(B.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",S0e,[r.createElementVNode("div",x0e,r.toDisplayString(r.unref(o)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",A0e,r.toDisplayString(I(p(E.id)))+" pts ",1)]),r.createElementVNode("div",T0e,[r.createElementVNode("div",N0e,r.toDisplayString(r.unref(o)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",D0e,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:g(E.id),placeholder:r.unref(o)("sprintMetrics.targetVelocityPlaceholder"),onInput:B=>_(E.id,B.target.value)},null,40,$0e),r.createElementVNode("span",B0e," pts / "+r.toDisplayString(v(E.id)),1)]),y(E.id)>0?(r.openBlock(),r.createElementBlock("div",M0e,r.toDisplayString(r.unref(o)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(M(y(E.id),E.id)),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",L0e,[r.createElementVNode("div",V0e,r.toDisplayString(r.unref(o)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",O0e,[w(E.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(k(E.id))+"% · "+r.toDisplayString(I(p(E.id)))+" / "+r.toDisplayString(I(b(E.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!s.value.has(E.id)]])])}),128))]))}});const P0e=te(I0e,[["__scopeId","data-v-f3ddff2c"]]),F0e={class:"ao-feed"},R0e={class:"ao-feed__filters"},U0e={class:"ao-feed__body"},iu=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},devStatuses:{default:()=>[]},project:{default:void 0},projects:{default:()=>[]},filters:{},activityTypes:{default:()=>[]},users:{},activityDetailsUsers:{default:()=>[]},userId:{},initialActivityId:{default:void 0},initialActivitySlug:{default:void 0},searchText:{default:""},showsArchivedActivities:{type:Boolean},showsOnlyImportant:{type:Boolean},showsOnlyNonAssigned:{type:Boolean},selectedActivity:{default:void 0},isTaskCheckable:{type:Function,default:void 0},isEditable:{type:[Boolean,String]},attachmentEnabled:{type:Boolean,default:!0},timeTrackingData:{default:()=>({})},loadAttachmentPreview:{type:Function,default:void 0},feedMode:{default:"standard"},sprints:{default:()=>[]},activitySprints:{default:()=>[]},milestones:{default:()=>[]},sprintPlanningData:{default:()=>({})},history:{default:()=>[]},historyLoading:{type:Boolean,default:!1}},emits:["change:activities","addActivity","update:filters","selectActivity","update:activity","archiveActivity","unarchiveActivity","update:searchText","clear:searchText","update:showsArchivedActivities","update:showsOnlyImportant","update:showsOnlyNonAssigned","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","toast","startTimer","createSprint","fetchHistory"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e;function s(U,se){i("toast",U,se)}const a=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.statuses),c=r.computed(()=>o.feedMode==="dev"?a.value.filter(U=>U.activityType==="dev"):a.value),d=async(U,se)=>{await i("selectActivity",U,se)},u=r.ref({}),f=r.ref(!1),p=r.ref(!1),m=r.computed(()=>o.project?"milestone":"project");r.watch([()=>l.value,()=>c.value,()=>o.initialActivityId,()=>o.initialActivitySlug,()=>o.feedMode],async([U,se,he,pe],[Ke,De])=>{const $e=o.feedMode==="dev"?"devStatus":"status";u.value=Object.fromEntries(U.map(Fe=>[Fe.id,se.filter(Ye=>{const Je=Ye[$e];return(Je==null?void 0:Je.id)===Fe.id})])),he&&!f.value?(d(he,null),f.value=!0):pe&&!f.value&&(d(null,pe),f.value=!0),p.value&&Jn(se,De)},{immediate:!0});const h=r.computed(()=>{var U;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((U=o.selectedActivity.milestone.phase)==null?void 0:U.name)??""} / ${o.selectedActivity.milestone.name??""}`}),C=U=>{var Fe;const se=o.feedMode==="dev"?o.activities.filter(Ye=>Ye.activityType==="dev"):o.activities,he=se==null?void 0:se.at(-1),pe=he?Qe.LexoRank.parse(he.rank).genNext():Qe.LexoRank.middle(),Ke=((Fe=o.activities)==null?void 0:Fe.length)??0,De=o.feedMode==="dev",$e={name:n("activity.defaultName",{idx:Ke+1}),rank:pe.format(),...De?{statusDevId:U.id,type:"dev"}:{statusId:U.id}};if(o.filters.assigneeId.length>0&&($e.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&($e.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Ye=o.sprints.find(Je=>Je.id===o.filters.sprintId[0]);Ye&&($e.sprintId=Ye.id,$e.projectId=Ye.projectId)}p.value=!0,i("addActivity",$e)},v=U=>{var Fe,Ye;const se=o.feedMode==="dev"?"devStatus":"status",he=((Fe=o.activities)==null?void 0:Fe.filter(Je=>{const Me=Je[se];return(Me==null?void 0:Me.id)===U.id}))??[],pe=ls(he),Ke=((Ye=o.activities)==null?void 0:Ye.length)??0,De=o.feedMode==="dev",$e={name:n("activity.defaultName",{idx:Ke+1}),rank:pe,...De?{statusDevId:U.id,type:"dev"}:{statusId:U.id}};if(o.filters.assigneeId.length>0&&($e.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&($e.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Je=o.sprints.find(Me=>Me.id===o.filters.sprintId[0]);Je&&($e.sprintId=Je.id,$e.projectId=Je.projectId)}p.value=!0,i("addActivity",$e)},y=(U,se)=>{p.value=!1,i("update:filters",{...o.filters,[U]:se})},g=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>g.value.map(U=>({value:U.id,label:U.name}))),b=r.computed(()=>o.sprints.map(U=>({value:U.id,label:n("activity.sprint.filterLabel",{number:U.number,label:U.label}),startDate:U.startDate,endDate:U.endDate,projectId:U.projectId}))),w=r.computed(()=>{const U=o.filters[ln.sprint]??[];return o.sprints.filter(se=>U.includes(se.id))}),k=r.computed(()=>{var he;const U=o.filters[ln.project]??[],se=(he=o.project)!=null&&he.id?[o.project.id]:[];return[...U,...se]}),x=r.computed(()=>o.milestones.map(U=>{var se;return{value:U.id,label:(se=U.phase)!=null&&se.name?`${U.phase.name} - ${U.name}`:U.name,color:U.color,important:U.important}}));r.computed(()=>{var U;return(U=o.activityTypes)==null?void 0:U.map(se=>({value:se.id,label:se.name}))});const A=r.computed(()=>o.users.map(U=>({value:U.id,label:`${U.firstName} ${U.lastName}`,avatar:U.avatarUrl}))),S=U=>{o.selectedActivity&&i("update:activity",U)},N=U=>{i("update:activity",U)},I=U=>{i("archiveActivity",U)},M=U=>{i("unarchiveActivity",U)},F=U=>{var se;i("startTimer",U),(se=window.parent)==null||se.postMessage({type:"startTimer",data:U},"*")},D=U=>{p.value=!1,i("update:searchText",U)},$=U=>{p.value=!1,i("clear:searchText",U)},E=U=>{o.selectedActivity&&i("addSubtask",U)},V=U=>{o.selectedActivity&&i("updateSubtask",U)},B=U=>{o.selectedActivity&&i("deleteSubtask",U)},H=U=>{i("addFiles",U)},Y=U=>{i("removeFile",U)},le=U=>{o.selectedActivity&&i("addComment",{...U,activityId:o.selectedActivity.id})},oe=U=>{const{id:se}=o.selectedActivity||{};se&&i("updateComment",U)},we=U=>{const{id:se}=o.selectedActivity||{};se&&i("removeComment",U)},re=Xo.useRouter(),ne=Xo.useRoute(),z=r.ref("feed");r.watch(()=>ne.name,U=>{U===Ro.feed||U==="ActivityFeed"||U==="ActivityFeedWithActivity"?z.value="feed":U===Ro.dev||U==="ActivityFeedDev"||U==="ActivityFeedDevWithActivity"?z.value="dev":U===Pe.feed?z.value="feed":U===Pe.dev?z.value="dev":U===Pe.project?z.value="overview":U===Pe.mapping&&(z.value="mapping")},{immediate:!0});const R=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],ie=r.computed(()=>Se.value?R.filter(U=>U.value==="feed"||U.value==="dev"):R),Se=r.computed(()=>!o.project&&ne.name&&(ne.name===Ro.feed||ne.name===Ro.dev||ne.name==="ActivityFeed"||ne.name==="ActivityFeedDev"||ne.name==="ActivityFeedWithActivity"||ne.name==="ActivityFeedDevWithActivity")),ze=r.computed(()=>Se.value?Ro.feed:Pe.feed),Ee=r.computed(()=>Se.value?Ro.dev:Pe.dev),Ce=r.computed(()=>Pe.project),_t=r.computed(()=>Pe.mapping);return r.watch(z,U=>{U==="feed"?re.push({name:ze.value}):U==="dev"?re.push({name:Ee.value}):U==="overview"?re.push({name:Ce.value}):U==="mapping"&&re.push({name:_t.value})}),(U,se)=>{var he;return r.openBlock(),r.createElementBlock("div",F0e,[r.createVNode(cs,null,{primary:r.withCtx(()=>[r.createElementVNode("div",R0e,[r.createVNode(ks,{modelValue:z.value,"onUpdate:modelValue":se[0]||(se[0]=pe=>z.value=pe),tabs:ie.value},null,8,["modelValue","tabs"]),r.createVNode(Qge,{"model-value":t.searchText,placeholder:U.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":D,onClear:$},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(pt,{key:0,"model-value":t.filters[r.unref(ln).project],mode:"tags",options:_.value,"close-on-select":!1,"clear-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__projects",placeholder:U.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":se[1]||(se[1]=pe=>y(r.unref(ln).project,pe))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(pt,{key:1,"model-value":t.filters[r.unref(ln).sprint],mode:"tags",options:b.value,"close-on-select":!1,searchable:!0,disabled:!b.value.length,class:"ao-feed__filter ao-feed__filter__sprints",placeholder:U.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":se[2]||(se[2]=pe=>y(r.unref(ln).sprint,pe))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),r.createVNode(pt,{"model-value":t.filters[r.unref(ln).milestone],mode:"tags",options:x.value,"close-on-select":!1,"clear-on-select":!1,searchable:!0,disabled:k.value.length===0,class:"ao-feed__filter ao-feed__filter__milestones",placeholder:U.$t("feed.filters.milestone.placeholder"),"onUpdate:modelValue":se[3]||(se[3]=pe=>y(r.unref(ln).milestone,pe))},null,8,["model-value","options","disabled","placeholder"]),A.value.length?(r.openBlock(),r.createBlock(pt,{key:2,"model-value":t.filters[r.unref(ln).assignee],mode:"tags",options:A.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:U.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":se[4]||(se[4]=pe=>y(r.unref(ln).assignee,pe))},{tag:r.withCtx(({option:pe,handleTagRemove:Ke})=>[r.createVNode(Qt,{"user-name":pe.label,"avatar-url":pe.avatar,"is-closable":!0,onClose:De=>Ke(pe,De)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["model-value","options","placeholder"])):r.createCommentVNode("",!0)]),r.createVNode(de,{class:"ao-feed__only-non-assigned",size:"sm","icon-name":t.showsOnlyNonAssigned?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:U.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:se[5]||(se[5]=pe=>U.$emit("update:showsOnlyNonAssigned",!t.showsOnlyNonAssigned))},null,8,["icon-name","label","aria-checked"]),r.createVNode(de,{class:"ao-feed__only-p0",size:"sm","icon-name":t.showsOnlyImportant?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:U.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:se[6]||(se[6]=pe=>U.$emit("update:showsOnlyImportant",!t.showsOnlyImportant))},null,8,["icon-name","label","aria-checked"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchivedActivities?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:U.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:se[7]||(se[7]=pe=>U.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&w.value.length>0?(r.openBlock(),r.createBlock(P0e,{key:0,sprints:w.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:g.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",U0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,pe=>(r.openBlock(),r.createBlock(Yge,{key:pe.id,status:pe,list:u.value[pe.id],title:pe.name,"footer-label":U.$t("feed.activity.add"),users:t.users,"user-id":t.userId,"is-editable":t.isEditable,"tag-type":m.value,"show-header-add":t.isEditable,"is-dev-mode":t.feedMode==="dev",onAdd:()=>C(pe),onAddAtBeginning:()=>v(pe),onSelectActivity:d,onArchiveActivity:I,onUnarchiveActivity:M,onUpdateActivity:N,onStartTimer:F},null,8,["status","list","title","footer-label","users","user-id","is-editable","tag-type","show-header-add","is-dev-mode","onAdd","onAddAtBeginning"]))),128))]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.selectedActivity?(r.openBlock(),r.createBlock(_l,{key:0,activity:t.selectedActivity,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":(he=t.selectedActivity.milestone)==null?void 0:he.id,"template-activities":a.value,users:o.activityDetailsUsers.length>0?o.activityDetailsUsers:t.users,"user-id":t.userId,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,breadcrumbs:h.value,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,projects:g.value,"time-tracking-data":t.timeTrackingData,history:t.history,"history-loading":t.historyLoading,"load-attachment-preview":o.loadAttachmentPreview,sprints:t.activitySprints,onClose:se[8]||(se[8]=()=>d(null,null)),onFetchHistory:se[9]||(se[9]=()=>i("fetchHistory")),"onUpdate:activity":S,onAddSubtask:E,onUpdateSubtask:V,onDeleteSubtask:B,onAddFiles:H,onRemoveFile:Y,onAddComment:le,onUpdateComment:oe,onRemoveComment:we,onToast:s,onCreateSprint:se[10]||(se[10]=pe=>i("createSprint",pe))},{default:r.withCtx(pe=>[r.renderSlot(U.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(pe)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","history","history-loading","load-attachment-preview","sprints"])):r.createCommentVNode("",!0)]))])}}});const z0e={class:"ao-project-mapping"},H0e={class:"ao-project-mapping-mapping__body"},j0e={class:"ao-project-mapping-mapping__phases"},q0e={key:0,class:"ao-project-mapping-mapping__image-wrapper"},W0e=["src","alt"],Z0e=r.defineComponent({__name:"AoMapping",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{type:Function},statuses:{},activityTypes:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean}},emits:["addPhase","updatePhase","archivePhase","unarchivePhase","copyPhaseToTemplate","applyTemplate","saveTemplate","update:showsArchived"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=()=>{const{name:g,rank:_}=Jo(o.phases,"phase",n);i("addPhase",{name:g,rank:_,projectId:o.project.id})},a=()=>{const g=n("template.defaultName.phase",{idx:1}),_=ls(o.phases);i("addPhase",{name:g,rank:_,projectId:o.project.id})},l=g=>{i("updatePhase",g)},c=g=>{i("archivePhase",g)},d=g=>{i("unarchivePhase",g)},u=g=>{i("copyPhaseToTemplate",g)},f=r.ref(!1),p=r.ref(!1),m=(g,_)=>{i("applyTemplate",{templateId:g,projectId:_}),f.value=!1},h=(g,_)=>{var k;const b=(k=o.templates)==null?void 0:k.at(-1),w=b?Qe.LexoRank.parse(b.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:g,rank:w.format(),phaseIds:_}),p.value=!1},C=Xo.useRouter(),v=r.ref("mapping"),y=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(v,g=>{g==="feed"?(C.push({name:Pe.feed}),console.log("Navigating to feed...")):g==="dev"?(C.push({name:Pe.dev}),console.log("Navigating to dev...")):g==="overview"?(C.push({name:Pe.project}),console.log("Navigating to feed...")):g==="mapping"&&(C.push({name:Pe.mapping}),console.log("Navigating to feed..."))}),(g,_)=>{var b;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-mapping-overview"},g.$attrs),[r.createElementVNode("div",z0e,[r.createVNode(cs,null,{primary:r.withCtx(()=>[r.createVNode(ks,{modelValue:v.value,"onUpdate:modelValue":_[0]||(_[0]=w=>v.value=w),tabs:y},null,8,["modelValue"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:g.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:_[1]||(_[1]=w=>g.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:0,class:"ao-mapping__quick-add-phase",size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:g.$t("project.phase.add"),onClick:a},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:1,class:"ao-project-mapping-overview__save-as-template",color:"primary",label:g.$t("project.template.save.label"),onClick:_[2]||(_[2]=w=>p.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:2,class:"ao-project-mapping-overview__add-template",color:"primary",label:g.$t("project.template.apply.label"),onClick:_[3]||(_[3]=w=>f.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",H0e,[r.createElementVNode("div",j0e,[r.createVNode(wd,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"estimation-unit":(b=t.project)==null?void 0:b.estimationUnit,onAddPhase:s,onUpdatePhase:l,onArchivePhase:c,onUnarchivePhase:d,onCopyPhaseToTemplate:u},null,8,["phases","closed-status","is-editable","users","estimation-unit"])]),t.project.architectureImage?(r.openBlock(),r.createElementBlock("div",q0e,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,W0e)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[p.value?(r.openBlock(),r.createBlock(u0,{key:0,phases:t.phases,onClose:_[4]||(_[4]=w=>p.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createBlock(c0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=w=>f.value=!1),onApply:m},null,8,["project-id","templates"])):r.createCommentVNode("",!0)]))],64)}}});const qo={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},K0e=(t,e={})=>[{path:t,name:qo.TEMPLATES,redirect:{name:qo.TEMPLATES_LIST},...e,children:[{path:"",name:qo.TEMPLATES_LIST,component:d0},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:qo.TEMPLATE_DETAILS,component:s0,props:!0}]}],Pe={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},Ro={feed:"ActivityFeed",dev:"ActivityFeedDev"},G0e=(t,e={})=>[{path:t,...e,redirect:{name:Pe.project},children:[{path:"",name:Pe.project,component:Ihe,props:!0,children:[{path:":phaseId/:milestoneId",name:Pe.milestone,component:Tp,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Pe.activity,props:{default:!0,modal:!0},components:{default:Tp,modal:Nge}}]},{path:"feed",name:Pe.feed,component:iu,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Pe.dev,component:iu,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Pe.mapping,component:Z0e,props:!0}]}],Y0e={class:"ao-templates"},d0=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e;r.watch(()=>o.templates,(d,u)=>{Jn(d,u)});const s=()=>{var m,h;const d=(m=o.templates)==null?void 0:m.at(-1),u=d?Qe.LexoRank.parse(d.rank).genNext():Qe.LexoRank.middle(),f=((h=o.templates)==null?void 0:h.length)??0,p={name:n("template.defaultName.template",{idx:f+1}),rank:u.format()};i("addTemplate",p)},a=(d,u)=>{i("updateItem",{itemType:qe.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{i("removeItem",{itemType:qe.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=as(d,o.templates??[]);i("updateItem",{itemType:qe.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",Y0e,[r.createVNode(cs,null,{secondary:r.withCtx(()=>[r.createVNode(de,{label:d.$t("templates.new"),color:"primary","icon-name":"Add","icon-position":"start",onClick:s},null,8,["label"])]),_:1}),r.createVNode(r.unref(Pn),{"model-value":t.templates,class:"ao-templates__list","item-key":"id",handle:".ao-card__drag",onChange:c},{item:r.withCtx(({element:f})=>{var p;return[r.createVNode(_b,{id:f.id,title:f.name,phases:f.phases,milestones:(p=f.phases)!=null&&p.length?r.unref(HC)(f.phases):0,activities:f.phases?r.unref(jC)(f.phases):0,"updated-at":f.updatedAt,"updated-by":f.updatedBy,onUpdateTitle:m=>a(f.id,m),onClick:m=>d.$router.push({name:r.unref(qo).TEMPLATE_DETAILS,params:{templateId:f.id}}),onDeleteItem:u[0]||(u[0]=(m,h)=>l(m,h))},null,8,["id","title","phases","milestones","activities","updated-at","updated-by","onUpdateTitle","onClick"])]}),_:1},8,["model-value"])]))}});const J0e={class:"ao-field__label"},f0=r.defineComponent({__name:"AoField",props:{label:{},isMultiselect:{type:Boolean,default:!1}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("label",{class:r.normalizeClass(["ao-field",{"ao-field--multiselect":t.isMultiselect}])},[r.createElementVNode("span",J0e,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),X0e=["type","value","disabled","readonly"],Q0e=r.defineComponent({__name:"AoInputField",props:{label:{default:""},type:{default:"text"},modelValue:{default:""},modelModifiers:{default:()=>({})},isDisabled:{type:Boolean,default:!1},isReadonly:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>n.modelModifiers.lazy?"change":"input"),s=a=>{n.modelModifiers.number&&(a=Number(a)),o("update:modelValue",a)};return(a,l)=>(r.openBlock(),r.createBlock(f0,{label:t.label},{default:r.withCtx(()=>[r.createElementVNode("input",r.mergeProps({class:"ao-field__input",type:t.type,value:t.modelValue,disabled:t.isDisabled,readonly:t.isReadonly},{[r.toHandlerKey(i.value)]:l[0]||(l[0]=c=>s(c.target.value))}),null,16,X0e)]),_:1},8,["label"]))}}),eve={class:"ao-field"},tve={class:"ao-field__label"},nve=["checked","disabled"],p0=r.defineComponent({__name:"AoCheckboxField",props:{label:{default:""},modelValue:{type:Boolean,default:!1},isReadonly:{type:Boolean,default:!1},isDisabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("label",eve,[r.createElementVNode("span",tve,r.toDisplayString(t.label),1),r.createElementVNode("input",{class:"ao-field__input",type:"checkbox",checked:t.modelValue,disabled:t.isDisabled,onChange:n[0]||(n[0]=o=>{var i;return e.$emit("update:modelValue",((i=o.target)==null?void 0:i.checked)??!1)})},null,40,nve)]))}}),ove={class:"ao-audit-config"},rve={key:0,class:"ao-audit-config__loading"},ive={key:1,class:"ao-audit-config__error"},sve={key:2,class:"ao-audit-config__empty"},ave={key:3,class:"ao-audit-config__table"},lve={class:"ao-audit-config__th ao-audit-config__th--table"},cve={class:"ao-audit-config__th ao-audit-config__th--audit"},uve={class:"ao-audit-config__th ao-audit-config__th--excluded"},dve={class:"ao-audit-config__td ao-audit-config__td--table"},fve={class:"ao-audit-config__table-name"},pve={key:0,class:"ao-audit-config__schema"},mve={class:"ao-audit-config__td ao-audit-config__td--audit"},hve={class:"ao-audit-config__checkbox"},gve={class:"ao-audit-config__td ao-audit-config__td--excluded"},vve={key:0,class:"ao-audit-config__disabled-note"},yve={class:"ao-audit-config__option"},_ve=["title"],Cve={key:0,class:"ao-audit-config__all-tracked"},bve=r.defineComponent({__name:"AoAuditConfigTable",props:{tables:{},loading:{type:Boolean,default:!1},error:{default:null},disabled:{type:Boolean,default:!1}},emits:["update"],setup(t,{emit:e}){const n=t,o=e,{t:i}=Ge(),s=r.computed(()=>n.tables);function a(d){return d.columns.map(u=>({value:u.name,label:u.name,isPrimaryKey:u.isPrimaryKey}))}function l(d,u){o("update",{schemaName:d.schemaName,tableName:d.tableName,isEnabled:u,excludeColumns:d.excludeColumns})}function c(d,u){const f=Array.from(new Set(u??[]));o("update",{schemaName:d.schemaName,tableName:d.tableName,isEnabled:d.isEnabled,excludeColumns:f})}return(d,u)=>(r.openBlock(),r.createElementBlock("div",ove,[t.loading?(r.openBlock(),r.createElementBlock("div",rve,r.toDisplayString(r.unref(i)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",ive,r.toDisplayString(r.unref(i)("audit.error",{message:t.error})),1)):s.value.length?(r.openBlock(),r.createElementBlock("table",ave,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",lve,r.toDisplayString(r.unref(i)("audit.tableHeader")),1),r.createElementVNode("th",cve,r.toDisplayString(r.unref(i)("audit.auditHeader")),1),r.createElementVNode("th",uve,r.toDisplayString(r.unref(i)("audit.ignoredHeader")),1)])]),r.createElementVNode("tbody",null,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,f=>(r.openBlock(),r.createElementBlock("tr",{key:`${f.schemaName}.${f.tableName}`},[r.createElementVNode("td",dve,[r.createElementVNode("span",fve,r.toDisplayString(f.tableName),1),f.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",pve,r.toDisplayString(f.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",mve,[r.createElementVNode("div",hve,[r.createVNode(p0,{label:"","model-value":f.isEnabled,"is-disabled":t.disabled,"is-readonly":!1,"onUpdate:modelValue":p=>l(f,p)},null,8,["model-value","is-disabled","onUpdate:modelValue"])])]),r.createElementVNode("td",gve,[f.isEnabled?(r.openBlock(),r.createBlock(pt,{key:1,"model-value":f.excludeColumns,class:"ao-audit-config__multiselect",mode:"tags","value-prop":"value",label:"label","track-by":"label","close-on-select":!1,searchable:!0,options:a(f),disabled:t.disabled,caret:!t.disabled,"onUpdate:modelValue":p=>c(f,p)},{option:r.withCtx(({option:p})=>[r.createElementVNode("span",yve,[r.createTextVNode(r.toDisplayString(p.label)+" ",1),p.isPrimaryKey?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-audit-config__pk",title:r.unref(i)("audit.primaryKey")}," PK ",8,_ve)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[f.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",Cve,r.toDisplayString(r.unref(i)("audit.allTracked")),1)):r.createCommentVNode("",!0)]),_:2},1032,["model-value","options","disabled","caret","onUpdate:modelValue"])):(r.openBlock(),r.createElementBlock("div",vve,r.toDisplayString(r.unref(i)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",sve,r.toDisplayString(r.unref(i)("audit.empty")),1))]))}});const kve={key:0,class:"ao-activity-inline__drag-handle"},wve=["onKeydown"],Eve={class:"ao-activity-inline__title"},Sve={class:"ao-activity-inline__name"},xve={class:"ao-activity-inline__assignee"},Ave={key:1,class:"ao-activity-inline__unassigned"},Tve={class:"ao-activity-inline__estimation"},Nve={class:"ao-activity-inline__status"},Dve={class:"ao-activity-inline__title"},$ve={class:"ao-activity-inline__name"},Bve={class:"ao-activity-inline__assignee"},Mve={key:1,class:"ao-activity-inline__unassigned"},Lve={class:"ao-activity-inline__estimation"},Vve={class:"ao-activity-inline__status"},Ove={key:3,class:"ao-activity-inline__content ao-activity-inline--disabled"},Ive={class:"ao-activity-inline__title"},Pve={class:"ao-activity-inline__name"},Fve={class:"ao-activity-inline__assignee"},Rve={key:1},Uve={class:"ao-activity-inline__estimation"},zve={class:"ao-activity-inline__status"},Hve=r.defineComponent({__name:"AoActivityInline",props:{activity:{},showMilestone:{type:Boolean,default:!0},isDraggable:{type:Boolean,default:!1},clickable:{type:Boolean,default:!1},isEditable:{type:Boolean,default:!1}},emits:["openActivity","updateActivity"],setup(t,{emit:e}){const n=t,o=e,i=()=>{o("openActivity",n.activity.id)},s=()=>{if(!n.activity.priority||!n.isEditable)return;const f={P0:"P2",P1:"P0",P2:"P1"};o("updateActivity",{id:n.activity.id,priority:f[n.activity.priority]})},a=r.computed(()=>{const f=n.activity.milestone,p=f==null?void 0:f.phase,m=n.activity.project;return!(m!=null&&m.id)||!(p!=null&&p.id)||!(f!=null&&f.id)?null:{name:Pe.activity,params:{id:m.id,phaseId:p.id,milestoneId:f.id,activityId:n.activity.id}}}),l=r.computed(()=>n.activity.assignee?[n.activity.assignee.firstName,n.activity.assignee.lastName].filter(Boolean).join(" "):""),c=r.computed(()=>{var f,p;return((f=n.activity.devStatus)==null?void 0:f.name)??((p=n.activity.status)==null?void 0:p.name)??""}),{t:d}=Ge(),u=r.computed(()=>{var f;return((f=n.activity.project)==null?void 0:f.estimationUnit)==="days"?d("activity.estimationUnit.pointsShort"):d("activity.estimationUnit.hoursShort")});return(f,p)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["ao-activity-inline",t.isDraggable?"ao-activity-inline--draggable":""])},[t.isDraggable?(r.openBlock(),r.createElementBlock("div",kve,[r.createVNode(be,{name:"DragIndicator"})])):r.createCommentVNode("",!0),t.clickable?(r.openBlock(),r.createElementBlock("div",{key:1,class:"ao-activity-inline__content",role:"button",tabindex:"0",onClick:r.withModifiers(i,["stop"]),onKeydown:[r.withKeys(r.withModifiers(i,["stop"]),["enter"]),r.withKeys(r.withModifiers(i,["prevent","stop"]),["space"])]},[r.createElementVNode("div",Eve,[t.showMilestone&&t.activity.milestone?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-activity-inline__milestone",style:r.normalizeStyle({"--milestone-color":t.activity.milestone.color||void 0})},r.toDisplayString(t.activity.milestone.name),5)):r.createCommentVNode("",!0),r.createElementVNode("span",Sve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",xve,[t.activity.assignee?(r.openBlock(),r.createBlock(Qt,{key:0,"user-name":l.value,"avatar-url":t.activity.assignee.avatarUrl,size:"md",color:"neutral"},null,8,["user-name","avatar-url"])):(r.openBlock(),r.createElementBlock("span",Ave," — ")),t.activity.priority?(r.openBlock(),r.createBlock(oa,{key:2,priority:t.activity.priority,clickable:t.isEditable,onClick:r.withModifiers(s,["stop"])},null,8,["priority","clickable"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Tve,[t.activity.estimation!=null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(t.activity.estimation)+r.toDisplayString(u.value),1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))]),r.createElementVNode("div",Nve,r.toDisplayString(c.value),1)],40,wve)):a.value?(r.openBlock(),r.createBlock(r.unref(Xo.RouterLink),{key:2,to:a.value,class:"ao-activity-inline__content"},{default:r.withCtx(()=>[r.createElementVNode("div",Dve,[t.showMilestone&&t.activity.milestone?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-activity-inline__milestone",style:r.normalizeStyle({"--milestone-color":t.activity.milestone.color||void 0})},r.toDisplayString(t.activity.milestone.name),5)):r.createCommentVNode("",!0),r.createElementVNode("span",$ve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",Bve,[t.activity.assignee?(r.openBlock(),r.createBlock(Qt,{key:0,"user-name":l.value,"avatar-url":t.activity.assignee.avatarUrl,size:"sm",color:"neutral"},null,8,["user-name","avatar-url"])):(r.openBlock(),r.createElementBlock("span",Mve," — ")),t.activity.priority?(r.openBlock(),r.createBlock(oa,{key:2,priority:t.activity.priority,clickable:t.isEditable,onClick:r.withModifiers(s,["stop"])},null,8,["priority","clickable"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Lve,[t.activity.estimation!=null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(t.activity.estimation)+r.toDisplayString(u.value),1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))]),r.createElementVNode("div",Vve,r.toDisplayString(c.value),1)]),_:1},8,["to"])):(r.openBlock(),r.createElementBlock("div",Ove,[r.createElementVNode("div",Ive,[r.createElementVNode("span",Pve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",Fve,[t.activity.assignee?(r.openBlock(),r.createBlock(Qt,{key:0,"user-name":l.value,"avatar-url":t.activity.assignee.avatarUrl,size:"sm",color:"neutral"},null,8,["user-name","avatar-url"])):(r.openBlock(),r.createElementBlock("span",Rve,"—")),t.activity.priority?(r.openBlock(),r.createBlock(oa,{key:2,priority:t.activity.priority,clickable:t.isEditable,onClick:r.withModifiers(s,["stop"])},null,8,["priority","clickable"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Uve,[t.activity.estimation!=null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(t.activity.estimation)+r.toDisplayString(u.value),1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))]),r.createElementVNode("div",zve,r.toDisplayString(c.value),1)]))],2))}});const m0=te(Hve,[["__scopeId","data-v-5c4cc6e4"]]),jve={class:"ao-sprint-section__header-left"},qve={class:"ao-sprint-section__expand-icon"},Wve={class:"ao-sprint-section__title"},Zve={key:0,class:"ao-sprint-section__archived-badge"},Kve={class:"ao-sprint-section__header-right"},Gve={class:"ao-sprint-section__dates"},Yve={class:"ao-sprint-section__meta"},Jve=["title"],Xve=["onClick"],Qve={class:"ao-sprint-section__edit-title"},e2e={class:"ao-sprint-section__fixed-number"},t2e={class:"ao-sprint-section__date-fields"},n2e={class:"ao-sprint-section__actions"},o2e={class:"ao-sprint-section__content"},r2e={key:0,class:"ao-sprint-section__empty"},i2e=r.defineComponent({__name:"AoSprintSection",props:{sprint:{},activities:{},isEditable:{type:Boolean,default:!1},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},emits:["updateSprint","archiveSprint","unarchiveSprint","activityChange","openActivity","updateActivity"],setup(t,{emit:e}){const n=t,o=e,i=E=>{E.added&&o("activityChange",{id:E.added.element.id,sprintId:n.sprint.id})},s=E=>{o("updateActivity",E)},a=E=>{o("openActivity",{activityId:E,activityIds:n.activities.map(V=>V.id)})},l=r.ref(!0),c=r.ref(!1),{t:d}=Ge(),u=r.ref({label:"",startDate:"",endDate:"",color:""}),f=r.computed(()=>n.sprint.label?`Sprint ${n.sprint.number}: ${n.sprint.label}`:`Sprint ${n.sprint.number}`),p=r.computed(()=>{const E=Pr(n.sprint.startDate,"dd/MM/yy"),V=Pr(n.sprint.endDate,"dd/MM/yy");return`${E} – ${V}`}),m=r.computed(()=>n.activities.length),h=r.computed(()=>n.activities.reduce((E,V)=>E+(V.estimation??0),0)),C=r.computed(()=>{var E;return(E=n.planningData)==null?void 0:E[n.sprint.id]}),v=r.computed(()=>{var V;const E=n.projects.find(B=>B.id===n.sprint.projectId);return E||((V=n.activities.find(B=>B.project))==null?void 0:V.project)}),y=r.computed(()=>{var E;return((E=v.value)==null?void 0:E.velocity)??1}),g=r.computed(()=>{var E;return((E=v.value)==null?void 0:E.estimationUnit)??""}),_=r.computed(()=>{const E=C.value;return E!=null&&E.plannedManDays?g.value==="hours"?E.plannedManDays*n.businessDayHours:E.plannedManDays:null}),b=r.computed(()=>{const E=_.value;return E==null?null:E*y.value}),w=r.computed(()=>{const E=b.value;return E==null||E===0?null:Math.round(h.value/E*100)}),k=r.computed(()=>{const E=b.value;return E==null?!1:h.value>E}),x=r.computed(()=>{const E=b.value;if(E==null)return null;const V=Math.round(h.value*10)/10,B=Math.round(E*10)/10,H=w.value;return H!=null?`${V} / ${B} pts · ${H}%`:`${V} / ${B} pts`}),A=r.computed(()=>{const E=b.value;if(E==null)return;const V=g.value==="hours"?d("activity.estimationUnit.hours"):d("activity.estimationUnit.points"),B=g.value==="hours"?d("activity.estimationUnit.hoursShort"):d("activity.estimationUnit.pointsShort");return[`Estimated work: ${h.value} ${d("activity.estimationUnit.pointsShort")}`,`Planned capacity: ${_.value} ${V}`,`Velocity: ${y.value} ${d("activity.estimationUnit.pointsShort")} / ${B}`,`Sprint capacity: ${E} ${d("activity.estimationUnit.pointsShort")}`,`Load: ${w.value}%`].join(`
62
+ ...`),m=r.computed(()=>n.placeholder||p.value),h=r.computed(()=>s.value.trim().length>0&&u.value.valid&&u.value.data.length>0&&!n.isLoading),C=r.computed(()=>{const b=w=>w.reduce((k,x)=>k+1+b(x.children??[]),0);return b(u.value.data)});r.watch(()=>n.open,async b=>{var w;b&&(s.value="",await r.nextTick(),(w=a.value)==null||w.focus())},{immediate:!0});const v=()=>{n.isLoading||(o("update:open",!1),o("close"))},y=()=>{h.value&&o("submit",u.value.data)},g=b=>String(b===0?i("project.bulk.modal.noSpace"):b===1?i("project.bulk.modal.oneSpace"):i("project.bulk.modal.spaces",{count:b})),_=b=>String(i(c[b.code],b.params??{}));return(b,w)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper","ao-bulk-insert-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(v,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:v}),r.createElementVNode("div",Lme,[r.createElementVNode("div",Vme,[r.createElementVNode("div",Ome,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:v})]),r.createElementVNode("header",Ime,[r.createVNode(vt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",Pme,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(y,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",Fme,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:a,"onUpdate:modelValue":w[0]||(w[0]=k=>s.value=k),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,Rme),[[r.vModelText,s.value]]),u.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",Ume,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.errors,k=>(r.openBlock(),r.createElementBlock("p",{key:`${k.line}-${k.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(i)("project.bulk.modal.lineError",{line:k.line,message:_(k)})),1))),128))])):s.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",zme,r.toDisplayString(r.unref(i)("project.bulk.modal.count",{count:C.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Hme,[r.createElementVNode("span",jme,r.toDisplayString(r.unref(i)("project.bulk.modal.indentation")),1),r.createElementVNode("div",qme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.levels,(k,x)=>(r.openBlock(),r.createElementBlock("div",{key:k,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",Wme,r.toDisplayString(f(k)),1),r.createElementVNode("span",Zme,r.toDisplayString(g(x)),1)]))),128))])]),r.createElementVNode("footer",Kme,[r.createVNode(de,{color:"primary",variant:"ghost",label:r.unref(i)("common.cancel"),disabled:t.isLoading,onClick:v},null,8,["label","disabled"]),r.createVNode(de,{type:"submit",color:"primary",variant:"solid",label:r.unref(i)("common.create"),"is-loading":t.isLoading,disabled:!h.value},null,8,["label","is-loading","disabled"])])],32)])])],42,Mme)):r.createCommentVNode("",!0)]))}});function kd(t,e){return(t.children??[]).filter(n=>n.type===e)}function Gme(t){return kd(t,"task").map(e=>({name:e.name}))}function a0(t,e=[]){const n=t.filter(i=>i.type==="activity"),o=lu(e,n.length);return n.map((i,s)=>{const a=Gme(i);return{name:i.name,rank:o[s],...a.length?{tasks:a}:{}}})}function Yme(t,e){return a0(t,e)}function l0(t,e){const n=t.filter(i=>i.type==="milestone"),o=lu(e,n.length);return n.map((i,s)=>{const a=a0(kd(i,"activity"));return{name:i.name,rank:o[s],...a.length?{activities:a}:{}}})}function Jme(t,e){const n=t.filter(i=>i.type==="phase"),o=lu(e,n.length);return n.map((i,s)=>{const a=l0(kd(i,"milestone"),[]);return{name:i.name,rank:o[s],...a.length?{milestones:a}:{}}})}const Xme={class:"ao-mapping-card-project-phase__header"},Qme={class:"ao-card-project-item__title-line"},ehe={key:0,class:"ao-card-project-item-phase__estimation"},the={class:"ao-mapping-card-project-phase__footer"},nhe={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},ohe={class:"ao-mapping-card-project-phase__subitem"},rhe={class:"ao-mapping-card-project-phase__subitem"},ihe={key:0,class:"ao-mapping-card-project-phase__secondary"},she={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},ahe=r.defineComponent({__name:"AoCondensedCardProjectItemPhase",props:{id:{},projectName:{},name:{},milestones:{},isEditable:{type:Boolean},deadline:{},active:{type:Boolean},color:{},timeTrackingData:{},estimationUnit:{}},emits:["update:title","update:deadline","archivePhase","updatePhase","unarchivePhase"],setup(t,{emit:e}){const n=t,o=e,i=v=>{o("update:title",v)},s=r.computed(()=>{var v;return((v=n.milestones)==null?void 0:v.reduce((y,g)=>{var _;return y+((_=g.activities)==null?void 0:_.reduce((b,w)=>b+(w.estimation||0),0))},0))||0}),a=r.computed(()=>!n.milestones||!n.timeTrackingData?0:n.milestones.reduce((v,y)=>{var g;return v+(((g=y.activities)==null?void 0:g.reduce((_,b)=>{var k;const w=(k=n.timeTrackingData)==null?void 0:k[b.id];return _+((w==null?void 0:w.timeSpent)||0)},0))||0)},0)),{t:l}=Ge(),c=r.computed(()=>n.estimationUnit==="days"?l("activity.estimationUnit.pointsShort"):l("activity.estimationUnit.hoursShort")),d=r.computed(()=>Ra(a.value,n.estimationUnit)),u=r.computed(()=>{var v;return(v=n.milestones)==null?void 0:v.length}),f=r.computed(()=>{var v;return(v=n.milestones)==null?void 0:v.filter(y=>y.status===Hi.done).length}),p=r.computed(()=>(f.value||0)/(u.value||1)),m=r.computed({get:()=>n.deadline??"",set:v=>o("update:deadline",v!=null&&v.length?v:null)}),h=r.computed({get:()=>n.color,set:v=>{o("updatePhase",{id:n.id,color:v})}}),C=(v,y)=>{const g=v.target;g.closest("button")||g.closest("input")||g.closest(".ao-title")||y()};return(v,y)=>(r.openBlock(),r.createBlock(ai,{color:h.value,"onUpdate:color":y[2]||(y[2]=g=>h.value=g)},{clickable:r.withCtx(({openPicker:g,bgColor:_})=>[r.createVNode(Cl,{class:"ao-mapping-card-project-phase","is-clickable":t.isEditable,color:_,"with-left-border":!0,onClick:b=>C(b,g)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",Qme,[r.createVNode(vt,{id:t.id,class:"ao-mapping-card-project-phase__title",title:t.name||"",level:4,"is-editable":t.isEditable,"onUpdate:title":i},null,8,["id","title","is-editable"]),s.value||a.value?(r.openBlock(),r.createElementBlock("span",ehe," ("+r.toDisplayString(d.value)+"/"+r.toDisplayString(s.value)+r.toDisplayString(c.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",the,[u.value?(r.openBlock(),r.createElementBlock("div",nhe,[r.createElementVNode("div",ohe,[r.createVNode(be,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",rhe,r.toDisplayString(f.value)+" / "+r.toDisplayString(u.value),1)]),r.createVNode(bl,{percentages:p.value,class:"ao-mapping-card-project-phase__progress",color:h.value},null,8,["percentages","color"]),v.$slots.secondary?(r.openBlock(),r.createElementBlock("div",ihe,[r.renderSlot(v.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-mapping-card-project-phase__footer-row",m.value?"":"ao-mapping-card-project-phase__no_deadline"])},[t.isEditable?r.withDirectives((r.openBlock(),r.createElementBlock("input",{key:0,"onUpdate:modelValue":y[1]||(y[1]=b=>m.value=b),class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,m.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",she,r.toDisplayString(r.unref(Pr)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",Xme,[r.createVNode(de,{class:"ao-mapping-card-project-phase__archive",color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:t.active?v.$t("archive"):v.$t("unarchive"),onClick:y[0]||(y[0]=r.withModifiers(()=>t.active?v.$emit("archivePhase",{id:t.id}):v.$emit("unarchivePhase",{id:t.id}),["stop"]))},null,8,["label"])])]),key:"0"}:void 0]),1032,["is-clickable","color","onClick"])]),_:3},8,["color"]))}});const lhe={class:"ao-project-phase"},che={key:0,class:"ao-project-phase__drag ao-card__drag"},uhe={key:1,class:"ao-project-phase__col-phase"},dhe={key:2,class:"ao-mapping-project-phase__col-phase"},fhe={key:0,class:"ao-project-phase__col-milestones"},phe=["title","onClick"],mhe=["onClick"],hhe=["onClick"],ghe={class:"ao-project-phase__milestones-list-footer"},vhe=r.defineComponent({__name:"AoProjectPhase",props:{phase:{},closedStatus:{},users:{},isEditable:{type:Boolean},readonly:{type:Boolean},timeTrackingData:{},estimationUnit:{}},emits:["addMilestone","bulkAddMilestone","updateMilestone","archiveMilestone","unarchiveMilestone","updatePhase","archivePhase","unarchivePhase"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e;r.watch(()=>o.phase.milestones,(A,S)=>{Jn(A,S)});const s=A=>{i("updatePhase",{id:o.phase.id,name:A})},a=A=>{i("updatePhase",{id:o.phase.id,deadline:A})},l=A=>{i("updatePhase",A)},c=r.computed(()=>o.phase.milestones.map(A=>ZC(A,o.closedStatus))),d=A=>{const{name:S,rank:N}=Jo(c.value??[],"milestone",n);i("addMilestone",{name:S,rank:N,phaseId:A})},u=A=>{const S=n("template.defaultName.milestone",{idx:1}),N=ls(c.value??[]);i("addMilestone",{name:S,rank:N,phaseId:A})},f=A=>{i("updateMilestone",A)},p=A=>{i("archiveMilestone",A)},m=A=>{i("unarchiveMilestone",A)},h=A=>{i("archivePhase",A)},C=A=>{i("unarchivePhase",A)},v=A=>{"added"in A?i("updateMilestone",{id:A.added.element.id,phaseId:o.phase.id,rank:Ir(c.value,A.added.newIndex)}):"removed"in A||"moved"in A&&i("updateMilestone",{id:A.moved.element.id,rank:Ir(c.value,A.moved.newIndex)})},y=r.ref(!1),g=r.ref(!1),_=A=>{g.value=!0;const S=l0(A,o.phase.milestones??[]);i("bulkAddMilestone",{phaseId:o.phase.id,milestones:S,onSuccess:()=>{g.value=!1,y.value=!1},onError:()=>{g.value=!1}})};r.watch(y,A=>{A&&(g.value=!1)});const b=Xo.useRoute(),w=r.computed(()=>b.path.includes("/mapping")),k=r.computed(()=>{var A;return o.phase.id===((A=b.params)==null?void 0:A.phaseId)});r.ref(!1);const x=r.computed(()=>{var A;return o.phase.id!==((A=b.params)==null?void 0:A.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:GC(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(A,S)=>(r.openBlock(),r.createElementBlock("li",lhe,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(x.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",che,[r.createVNode(be,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",dhe,[r.createVNode(ahe,{id:t.phase.id,milestones:c.value,name:t.phase.name,deadline:t.phase.deadline,active:t.phase.active,"is-editable":t.isEditable,color:t.phase.color,"estimation-unit":t.estimationUnit,"onUpdate:deadline":a,"onUpdate:title":s,onArchivePhase:h,onUnarchivePhase:C,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","estimation-unit"])])):(r.openBlock(),r.createElementBlock("div",uhe,[r.createVNode(cme,{id:t.phase.id,milestones:c.value,name:t.phase.name,deadline:t.phase.deadline,active:t.phase.active,"is-editable":t.isEditable,color:t.phase.color,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,"onUpdate:deadline":a,"onUpdate:title":s,onArchivePhase:h,onUnarchivePhase:C,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","time-tracking-data","estimation-unit"])]))],4),w.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",fhe,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(x.value)},[t.isEditable?(r.openBlock(),r.createBlock(Ba,{key:0,class:r.normalizeClass(["ao-project-phase__milestone-quick-add",{"ao-project-phase__milestone-quick-add--visible":k.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:N})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:A.$t("project.milestone.add"),onClick:N},[r.createVNode(be,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,phe)]),menu:r.withCtx(({close:N})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{N(),u(t.phase.id)}},r.toDisplayString(A.$t("project.bulk.menu.single")),9,mhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{N(),y.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,hhe)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(Pn),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},A.$attrs,{onChange:v}),{item:r.withCtx(({element:N})=>{var I;return[r.createVNode(Sme,{id:N.id,name:N.name,color:N.color,"phase-color":t.phase.color,activities:N.activities,deadline:N.deadline,active:N.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":N.id===((I=A.$route.params)==null?void 0:I.milestoneId),assignee:N.assignee,important:N.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:M=>!t.readonly&&A.$router.push({name:r.unref(Pe).milestone,params:{phaseId:t.phase.id,milestoneId:N.id}}),onUpdateMilestone:f,onArchiveMilestone:p,onUnarchiveMilestone:m},null,8,["id","name","color","phase-color","activities","deadline","active","is-editable","is-draggable","closed-status","is-selected","assignee","important","readonly","time-tracking-data","estimation-unit","onClick"])]}),_:1},16,["list","disabled"]),r.createElementVNode("div",ghe,[t.isEditable?(r.openBlock(),r.createBlock(Ao,{key:0,label:A.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:S[0]||(S[0]=N=>d(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),y.value?(r.openBlock(),r.createBlock(bd,{key:1,open:y.value,"onUpdate:open":S[1]||(S[1]=N=>y.value=N),title:A.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":g.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}});const yhe={class:"ao-project__phases"},_he={key:0,class:"ao-project-phase__phases-list-footer"},Che={class:"ao-project-phase__col-phase"},wd=r.defineComponent({__name:"AoProjectPhases",props:{phases:{},closedStatus:{},isEditable:{type:Boolean},users:{},readonly:{type:Boolean},timeTrackingData:{},estimationUnit:{}},emits:["addMilestone","bulkAddMilestone","updateMilestone","archiveMilestone","unarchiveMilestone","addPhase","updatePhase","archivePhase","unarchivePhase"],setup(t,{emit:e}){const n=t,o=e;r.watch(()=>n.phases,(m,h)=>{Jn(m,h)});const i=m=>{o("addMilestone",m)},s=m=>{o("updateMilestone",m)},a=m=>{o("archiveMilestone",m)},l=m=>{o("unarchiveMilestone",m)},c=m=>{o("archivePhase",m)},d=m=>{o("unarchivePhase",m)},u=m=>{if(m.moved){const h=as(m,n.phases??[]);o("updatePhase",{id:m.moved.element.id,rank:h})}},f=m=>{o("updatePhase",m)},p=m=>{o("addPhase",m)};return(m,h)=>(r.openBlock(),r.createElementBlock("div",yhe,[r.createVNode(r.unref(Pn),{class:"ao-project-phase__phases-list","model-value":t.phases,"item-key":"id",handle:".ao-card__drag",onChange:u},{item:r.withCtx(({element:C})=>[r.createVNode(vhe,{phase:C,"is-editable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,users:t.users,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,onAddMilestone:i,onBulkAddMilestone:h[0]||(h[0]=v=>m.$emit("bulkAddMilestone",v)),onUpdateMilestone:s,onArchiveMilestone:a,onUnarchiveMilestone:l,onUpdatePhase:f,onArchivePhase:c,onUnarchivePhase:d},null,8,["phase","is-editable","closed-status","users","readonly","time-tracking-data","estimation-unit"])]),_:1},8,["model-value"]),t.isEditable?(r.openBlock(),r.createElementBlock("div",_he,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",Che,[r.createVNode(Ao,{label:m.$t("project.phases.add"),"icon-name":"Add",class:"ao-project-phase__add-phase",onClick:p},null,8,["label"])]),h[2]||(h[2]=r.createElementVNode("div",{class:"ao-project-phase__col-milestones"},null,-1))])):r.createCommentVNode("",!0)]))}});const bhe={class:"ao-add-template-modal__form-body"},khe={class:"field__row"},whe={class:"ao-add-template-modal__form-footer"},c0=r.defineComponent({__name:"AoAddTemplateModal",props:{projectId:{},templates:{}},emits:["apply"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>n.templates.map(c=>({value:c.id,label:c.name}))),s=r.ref(null),a=c=>{s.value=c},l=()=>{s.value&&o("apply",s.value,n.projectId)};return(c,d)=>(r.openBlock(),r.createBlock(Ua,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(vt,{title:c.$t("project.template.apply.title"),level:3},null,8,["title"])]),default:r.withCtx(()=>[r.createElementVNode("form",{class:"ao-add-template-modal__form",onSubmit:r.withModifiers(l,["prevent"])},[r.createElementVNode("p",null,r.toDisplayString(c.$t("project.template.apply.notice")),1),r.createElementVNode("div",bhe,[r.createElementVNode("div",khe,[r.createVNode(pt,{value:s.value,options:i.value,detached:!0,onChange:a},null,8,["value","options"])])]),r.createElementVNode("footer",whe,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}});const Ehe={class:"ao-save-template-modal__form-body"},She={class:"field__row"},xhe={class:"ao-field ao-field--inline"},Ahe={class:"ao-field__label"},The={class:"ao-save-template-modal__phases"},Nhe={class:"ao-field__label"},Dhe={class:"ao-save-template-modal__phases-list"},$he=["value"],Bhe={class:"ao-save-template-modal__form-footer"},u0=r.defineComponent({__name:"AoSaveTemplateModal",props:{phases:{}},emits:["save"],setup(t,{emit:e}){const n=t,o=e,i=r.ref(""),s=r.ref([]);r.onMounted(()=>{s.value=n.phases.map(l=>l.id)});const a=()=>{i.value&&o("save",i.value,s.value)};return(l,c)=>(r.openBlock(),r.createBlock(Ua,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(vt,{title:l.$t("project.template.save.title"),level:3},null,8,["title"])]),default:r.withCtx(()=>[r.createElementVNode("form",{class:"ao-save-template-modal__form",onSubmit:r.withModifiers(a,["prevent"])},[r.createElementVNode("div",Ehe,[r.createElementVNode("div",She,[r.createElementVNode("label",xhe,[r.createElementVNode("span",Ahe,r.toDisplayString(l.$t("project.template.name.label"))+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=d=>i.value=d),type:"text"},null,512),[[r.vModelText,i.value]])])]),r.createElementVNode("div",The,[r.createElementVNode("div",Nhe,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",Dhe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(n.phases,d=>(r.openBlock(),r.createElementBlock("label",{key:d.id,class:"ao-field ao-field--checkbox"},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[1]||(c[1]=u=>s.value=u),type:"checkbox",value:d.id},null,8,$he),[[r.vModelCheckbox,s.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",Bhe,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:a},null,8,["label"])])],32)]),_:1}))}});const Mhe={class:"ao-project"},Lhe=["onClick"],Vhe=["onClick"],Ohe={class:"ao-project__body"},Ihe=r.defineComponent({__name:"AoProjectOverviewProject",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{},statuses:{},activityTypes:{},devStatuses:{},sprints:{},selectedActivity:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{},history:{default:()=>[]},historyLoading:{type:Boolean,default:!1}},emits:["addPhase","bulkAddPhase","updatePhase","archivePhase","unarchivePhase","addMilestone","bulkAddMilestone","updateMilestone","archiveMilestone","unarchiveMilestone","addActivity","bulkAddActivity","update:activity","archiveActivity","copyPhaseToTemplate","unarchiveActivity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","applyTemplate","saveTemplate","update:showsArchived","fetchHistory"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=r.computed(()=>o.phases.flatMap(R=>R.milestones)),a=()=>{const{name:R,rank:ie}=Jo(o.phases,"phase",n);i("addPhase",{name:R,rank:ie,projectId:o.project.id})},l=()=>{const R=n("template.defaultName.phase",{idx:1}),ie=ls(o.phases);i("addPhase",{name:R,rank:ie,projectId:o.project.id})},c=R=>{i("updatePhase",R)},d=R=>{i("archivePhase",R)},u=R=>{i("unarchivePhase",R)},f=R=>{i("copyPhaseToTemplate",R)},p=R=>{i("addMilestone",R)},m=R=>{i("bulkAddMilestone",R)},h=R=>{i("updateMilestone",R)},C=R=>{i("archiveMilestone",R)},v=R=>{i("unarchiveMilestone",R)},y=R=>{i("addActivity",R)},g=R=>{i("bulkAddActivity",R)},_=R=>{i("update:activity",R)},b=R=>{i("archiveActivity",R)},w=R=>{i("unarchiveActivity",R)},k=R=>{i("addSubtask",R)},x=R=>{i("updateSubtask",R)},A=R=>{i("deleteSubtask",R)},S=r.computed(()=>s.value.flatMap(R=>R.activities)),N=r.computed(()=>o.devStatuses??[]),I=r.computed(()=>o.sprints??[]),M=R=>{i("addFiles",R)},F=R=>{i("removeFile",R)},D=R=>{i("addComment",R)},$=R=>{i("updateComment",R)},E=R=>{i("removeComment",R)},V=r.ref(!1),B=r.ref(!1),H=r.ref(!1),Y=r.ref(!1),le=(R,ie)=>{i("applyTemplate",{templateId:R,projectId:ie}),V.value=!1},oe=(R,ie)=>{var Ee;const Se=(Ee=o.templates)==null?void 0:Ee.at(-1),ze=Se?Qe.LexoRank.parse(Se.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:R,rank:ze.format(),phaseIds:ie}),B.value=!1},we=R=>{Y.value=!0;const ie=Jme(R,o.phases);i("bulkAddPhase",{projectId:o.project.id,phases:ie,onSuccess:()=>{Y.value=!1,H.value=!1},onError:()=>{Y.value=!1}})};r.watch(H,R=>{R&&(Y.value=!1)});const re=Xo.useRouter(),ne=r.ref("overview"),z=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(ne,R=>{R==="feed"?(re.push({name:Pe.feed}),console.log("Navigating to feed...")):R==="dev"?(re.push({name:Pe.dev}),console.log("Navigating to dev...")):R==="overview"?(re.push({name:Pe.project}),console.log("Navigating to feed...")):R==="mapping"&&(re.push({name:Pe.mapping}),console.log("Navigating to feed..."))}),(R,ie)=>{var ze;const Se=r.resolveComponent("RouterView");return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-overview"},R.$attrs),[r.createElementVNode("div",Mhe,[r.createVNode(cs,null,{primary:r.withCtx(()=>[r.createVNode(ks,{modelValue:ne.value,"onUpdate:modelValue":ie[0]||(ie[0]=Ee=>ne.value=Ee),tabs:z},null,8,["modelValue"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:ie[1]||(ie[1]=Ee=>R.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(Ba,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:Ee})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:Ee},null,8,["label","onClick"])]),menu:r.withCtx(({close:Ee})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ee(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,Lhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ee(),H.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,Vhe)]),_:1})):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:1,class:"ao-project-overview__save-as-template",color:"primary",label:R.$t("project.template.save.label"),onClick:ie[2]||(ie[2]=Ee=>B.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:2,class:"ao-project-overview__add-template",color:"primary",label:R.$t("project.template.apply.label"),onClick:ie[3]||(ie[3]=Ee=>V.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Ohe,[r.createVNode(wd,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"time-tracking-data":t.timeTrackingData,"estimation-unit":(ze=t.project)==null?void 0:ze.estimationUnit,onAddMilestone:p,onBulkAddMilestone:m,onUpdateMilestone:h,onArchiveMilestone:C,onUnarchiveMilestone:v,onAddPhase:a,onUpdatePhase:c,onArchivePhase:d,onUnarchivePhase:u,onCopyPhaseToTemplate:f},null,8,["phases","closed-status","is-editable","users","time-tracking-data","estimation-unit"])])]),r.createVNode(Se,{class:"ao-project__sidebar",phases:t.phases,"project-id":t.project.id,"project-name":t.project.name,users:t.users,"is-editable":t.isEditable===!0,"closed-status":t.closedStatus,"time-tracking-data":t.timeTrackingData,onClose:ie[4]||(ie[4]=Ee=>R.$router.push({name:r.unref(Pe).project})),onUpdateMilestone:h,onAddActivity:y,onBulkAddActivity:g,onUpdateActivity:_,onArchiveActivity:b,onUnarchiveActivity:w},null,8,["phases","project-id","project-name","users","is-editable","closed-status","time-tracking-data"]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(Se,{name:"modal",activities:S.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":N.value,sprints:I.value,"selected-activity":t.selectedActivity,phases:t.phases,project:t.project,users:t.users,"user-id":t.userId,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":t.loadAttachmentPreview,history:t.history,"history-loading":t.historyLoading,"onUpdate:activity":_,onAddSubtask:k,onUpdateSubtask:x,onDeleteSubtask:A,onAddFiles:M,onRemoveFile:F,onAddComment:D,onUpdateComment:$,onRemoveComment:E,onFetchHistory:ie[5]||(ie[5]=()=>i("fetchHistory"))},{default:r.withCtx(({Component:Ee})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(Ee),null,{default:r.withCtx(Ce=>[r.renderSlot(R.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(Ce)))]),_:3}))]),_:3},8,["activities","is-task-checkable","statuses","activity-types","dev-statuses","sprints","selected-activity","phases","project","users","user-id","is-editable","attachment-enabled","time-tracking-data","load-attachment-preview","history","history-loading"])]))],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[B.value?(r.openBlock(),r.createBlock(u0,{key:0,phases:t.phases,onClose:ie[6]||(ie[6]=Ee=>B.value=!1),onSave:oe},null,8,["phases"])):r.createCommentVNode("",!0),V.value?(r.openBlock(),r.createBlock(c0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:ie[7]||(ie[7]=Ee=>V.value=!1),onApply:le},null,8,["project-id","templates"])):r.createCommentVNode("",!0),H.value?(r.openBlock(),r.createBlock(bd,{key:2,open:H.value,"onUpdate:open":ie[8]||(ie[8]=Ee=>H.value=Ee),title:R.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":Y.value,onSubmit:we},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}});const Phe=["disabled"],Fhe={class:"ao-priority-badge__value"},oa=r.defineComponent({__name:"AoPriorityBadge",props:{priority:{},clickable:{type:Boolean}},emits:["click"],setup(t,{emit:e}){const n=e,o=()=>{n("click")};return(i,s)=>t.priority?(r.openBlock(),r.createElementBlock("button",{key:0,type:"button",class:r.normalizeClass(["ao-priority-badge",`ao-priority-badge--${t.priority.toLowerCase()}`,t.clickable?"ao-priority-badge--clickable":""]),disabled:!t.clickable,onClick:r.withModifiers(o,["stop"])},[r.createElementVNode("span",Fhe,r.toDisplayString(t.priority),1),s[0]||(s[0]=r.createElementVNode("span",{class:"ao-priority-badge__hover"},"+",-1))],10,Phe)):r.createCommentVNode("",!0)}});const Rhe={class:"ao-card-feed__header"},Uhe={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},zhe={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},Hhe={class:"ao-card-feed__body"},jhe={key:0,class:"ao-card-feed__breadcrumbs"},qhe={class:r.normalizeClass(["ao-card-feed__title-group"])},Whe={class:"ao-card-feed__title-line"},Zhe={key:0,class:"ao-card-feed__slug"},Khe={key:1,class:"ao-card-feed__deadline"},Ghe={class:"ao-card-feed__footer"},Yhe={class:"ao-card-feed__footer-row"},Jhe={class:"ao-assignees"},Xhe={key:0,class:"ao-assignee"},Qhe=["title"],ege={key:2,class:"ao-card-feed__subitems"},tge={key:0,class:"ao-card-feed__subitem"},nge={class:"ao-card-feed__subitem"},oge={key:1,class:"ao-card-feed__subitem"},rge={class:"ao-card-feed__subitem"},ige={class:"ao-card-feed__timer-wrapper"},sge={class:"ao-card-feed__footer-row"},age={key:0,class:"ao-card-feed__progress-wrapper"},lge={class:"ao-card-feed__subitem"},cge={class:"ao-card-feed__subitem"},Ed=r.defineComponent({__name:"AoCardFeed",props:{id:{},name:{},projectName:{},projectId:{},projectColor:{},phaseName:{},milestoneName:{},milestoneColor:{},deadline:{},priority:{},blocked:{type:Boolean},assignee:{},slug:{},comments:{},attachments:{},tasks:{},isEditable:{type:Boolean},isPrivate:{type:Boolean},isClosed:{type:Boolean},tagType:{},sprint:{}},emits:["removeAssignee","updateActivity","startTimer"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>n.tagType==="milestone"?n.milestoneName:n.projectName),s=r.computed(()=>n.tagType==="milestone"?n.milestoneColor:n.projectColor),a=v=>{o("updateActivity",{id:n.id,name:v})},l=r.computed(()=>n.tagType==="milestone"&&n.phaseName?`${n.phaseName}`:n.phaseName&&n.milestoneName?`${n.phaseName} / ${n.milestoneName}`:""),c=r.computed(()=>n.assignee?[n.assignee]:[]),d=r.computed(()=>Pr(n.deadline)),u=v=>{o("removeAssignee",v)},f=()=>{if(!n.priority||!n.isEditable)return;const v={P0:"P2",P1:"P0",P2:"P1"};o("updateActivity",{id:n.id,priority:v[n.priority]})},p=()=>{o("startTimer",{activityId:n.id,name:n.name,project:n.projectName,projectId:n.projectId,slug:n.slug})},m=r.computed(()=>{var v;return(v=n.tasks)==null?void 0:v.length}),h=r.computed(()=>{var v;return(v=n.tasks)==null?void 0:v.filter(y=>y.isDone).length}),C=r.computed(()=>(h.value||0)/(m.value||1));return(v,y)=>(r.openBlock(),r.createBlock(Cl,{class:r.normalizeClass(["ao-card-feed",{"ao-card-feed--closed":t.isClosed}]),"is-clickable":!0,variant:t.blocked?"danger":"default"},{header:r.withCtx(()=>[r.createElementVNode("div",Rhe,[i.value?(r.openBlock(),r.createBlock(zi,{key:0,label:i.value,class:"ao-card-feed__project",variant:"solid",color:t.projectColor?void 0:"primary","raw-color":s.value},null,8,["label","color","raw-color"])):r.createCommentVNode("",!0),t.isPrivate||t.isClosed||t.blocked?(r.openBlock(),r.createElementBlock("div",Uhe,[t.isPrivate?(r.openBlock(),r.createBlock(be,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(be,{key:1,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),v.$slots.secondary?(r.openBlock(),r.createElementBlock("div",zhe,[r.renderSlot(v.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",Hhe,[l.value?(r.openBlock(),r.createElementBlock("span",jhe,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",qhe,[r.createElementVNode("div",Whe,[t.slug?(r.openBlock(),r.createElementBlock("span",Zhe,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(vt,{id:t.id,title:t.name,level:5,"is-editable":t.isEditable,class:"ao-card-feed__title-inline","onUpdate:title":a},null,8,["id","title","is-editable"])])]),t.deadline?(r.openBlock(),r.createElementBlock("span",Khe,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",Ghe,[r.createElementVNode("div",Yhe,[r.createElementVNode("ul",Jhe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,g=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:g.id},[g?(r.openBlock(),r.createElementBlock("li",Xhe,[r.createVNode(Qt,{"user-name":r.unref(Yp)(g),"avatar-url":g.avatarUrl,"is-closable":!0,onClose:()=>u(g.id)},null,8,["user-name","avatar-url","onClose"])])):r.createCommentVNode("",!0)],64))),128))]),t.priority?(r.openBlock(),r.createBlock(oa,{key:0,priority:t.priority,clickable:t.isEditable,onClick:f},null,8,["priority","clickable"])):r.createCommentVNode("",!0),t.sprint?(r.openBlock(),r.createElementBlock("span",{key:1,class:"ao-card-feed__sprint",title:t.sprint.label?`Sprint ${t.sprint.number}: ${t.sprint.label}`:`Sprint ${t.sprint.number}`}," Sprint "+r.toDisplayString(t.sprint.number),9,Qhe)):r.createCommentVNode("",!0),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",ege,[t.comments?(r.openBlock(),r.createElementBlock("li",tge,[r.createVNode(be,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",nge,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",oge,[r.createVNode(be,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",rge,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",ige,[r.createVNode(be,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",sge,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",age,[r.createElementVNode("div",lge,[r.createVNode(be,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",cge,r.toDisplayString(h.value)+" / "+r.toDisplayString(m.value),1)]),r.createVNode(bl,{percentages:C.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}});const uge={class:"ao-project-milestone"},dge={class:"ao-project-milestone__header"},fge={class:"ao-project-milestone__header_line"},pge={class:"ao-project-milestone__header_line"},mge={class:"ao-project-milestone__title"},hge={key:0,class:"ao-fieldset ao-milestone__fieldset"},gge={class:"ao-field__row ao-milestone__field-row"},vge={class:"ao-field ao-field--inline"},yge={class:"ao-field__row ao-milestone__field-row"},_ge={class:"ao-field ao-milestone__field-multiselect"},Cge={class:"ao-milestone__color-actions"},bge=["onClick"],kge=["title","onClick"],wge=["onClick"],Ege=["onClick"],Sge={class:"ao-project-milestone__body"},xge={key:0,class:"ao-project-milestone__footer"},Age=["onClick"],Tge=["onClick"],Tp=r.defineComponent({__name:"AoProjectOverviewMilestoneDetails",props:{milestoneId:{},users:{},projectId:{},phases:{},phaseId:{},isEditable:{type:Boolean},closedStatus:{},timeTrackingData:{}},emits:["close","addActivity","bulkAddActivity","updateMilestone","updateActivity","archiveActivity","unarchiveActivity","startTimer"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=S=>{var N;i("startTimer",S),(N=window.parent)==null||N.postMessage({type:"startTimer",data:S},"*")},a=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.find(N=>N.id===o.phaseId)}),l=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.flatMap(N=>N.milestones)}),c=r.computed(()=>{var S;return(S=l.value)==null?void 0:S.find(N=>N.id===o.milestoneId)}),d=r.computed(()=>{var S;return(S=c.value)==null?void 0:S.activities});r.watch(d,(S,N)=>{Jn(S,N)});const u=S=>{i("close",S)},f=()=>{const{name:S,rank:N}=Jo(d.value??[],"activity",n);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:N,projectId:o.projectId})},p=()=>{const S=n("template.defaultName.activity",{idx:1}),N=ls(d.value??[]);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:N,projectId:o.projectId})},m=r.ref(!1),h=r.ref(!1),C=S=>{h.value=!0;const N=Yme(S,d.value??[]);i("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:N,onSuccess:()=>{h.value=!1,m.value=!1},onError:()=>{h.value=!1}})};r.watch(m,S=>{S&&(h.value=!1)});const v=S=>{i("updateActivity",S)},y=S=>{d.value&&"moved"in S&&i("updateActivity",{id:S.moved.element.id,rank:Ir(d.value,S.moved.newIndex)})},g=r.computed({get:()=>{var S;return(S=c.value)==null?void 0:S.color},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,color:S})}}),_=r.computed({get:()=>{var S;return((S=c.value)==null?void 0:S.deadline)??""},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,deadline:S!=null&&S.length?S:null})}}),b=S=>o.closedStatus?cu(S,o.closedStatus):!1,w=r.computed(()=>{var S;return((S=o.users)==null?void 0:S.map(N=>({label:`${N.firstName} ${N.lastName}`,value:N.id,avatar:N.avatarUrl})))||[]}),k=r.computed({get(){var S,N;return(N=(S=c.value)==null?void 0:S.assignee)!=null&&N.id?[c.value.assignee.id]:[]},set(S){i("updateMilestone",{id:o.milestoneId,assigneeId:S[0]??null})}}),x=r.computed({get(){var S;return((S=c.value)==null?void 0:S.important)??!1},set(S){i("updateMilestone",{id:o.milestoneId,important:S})}}),A=(S,N)=>{const I=S.currentTarget;I instanceof HTMLElement&&N(I)};return(S,N)=>{var I;return r.openBlock(),r.createElementBlock("div",uge,[r.createElementVNode("header",dge,[r.createElementVNode("div",fge,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:u})]),r.createElementVNode("div",pge,[r.createElementVNode("div",mge,[r.createVNode(vt,{title:((I=c.value)==null?void 0:I.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(r0,{modelValue:x.value,"onUpdate:modelValue":N[0]||(N[0]=M=>x.value=M),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:S.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),c.value?(r.openBlock(),r.createElementBlock("div",hge,[r.createElementVNode("div",gge,[r.createElementVNode("label",vge,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":N[1]||(N[1]=M=>_.value=M),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,_.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",yge,[r.createElementVNode("label",_ge,[r.createVNode(pt,{modelValue:k.value,"onUpdate:modelValue":N[2]||(N[2]=M=>k.value=M),options:w.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:S.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:M,handleTagRemove:F})=>[r.createVNode(Qt,{"user-name":M.label,"avatar-url":M.avatar,"is-closable":!0,onClose:D=>F(M,D)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",Cge,[r.createVNode(ai,{color:g.value,"onUpdate:color":N[3]||(N[3]=M=>g.value=M)},{clickable:r.withCtx(({openPicker:M,bgColor:F})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:F}),class:"color-button",onClick:D=>A(D,M)},null,12,bge)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(Ba,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:M})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:S.$t("project.activity.add"),onClick:M},[r.createVNode(be,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,kge)]),menu:r.withCtx(({close:M})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),p()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,wge),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Ege)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Sge,[r.createVNode(r.unref(Pn),r.mergeProps({class:"ao-project-milestone__activities",list:d.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},S.$attrs,{onChange:y}),{item:r.withCtx(({element:M})=>{var F,D,$,E,V;return[r.createVNode(Ed,{id:M.id,name:M.name||M.id,"project-id":t.projectId,"phase-name":(F=a.value)==null?void 0:F.name,"milestone-name":(D=c.value)==null?void 0:D.name,"milestone-color":($=c.value)==null?void 0:$.color,deadline:M.deadline,priority:M.priority,sprint:M.sprint,blocked:M.blocked,users:t.users,assignee:M.assignee,slug:M.slug,comments:(E=M.comments)==null?void 0:E.length,attachments:(V=M.attachments)==null?void 0:V.length,tasks:M.tasks,"is-editable":t.isEditable,"is-private":M.private,"is-closed":b(M),onClick:B=>S.$router.push({name:r.unref(Pe).activity,params:{milestoneId:t.milestoneId,activityId:M.id}}),onUpdateActivity:v,onRemoveAssignee:()=>v({id:M.id,assigneeId:null}),onStartTimer:s},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&M.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("archive"),onClick:r.withModifiers(()=>S.$emit("archiveActivity",{id:M.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!M.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>S.$emit("unarchiveActivity",{id:M.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0)]),key:"0"}:void 0]),1032,["id","name","project-id","phase-name","milestone-name","milestone-color","deadline","priority","sprint","blocked","users","assignee","slug","comments","attachments","tasks","is-editable","is-private","is-closed","onClick","onRemoveAssignee"])]}),_:1},16,["list","disabled"]),t.isEditable?(r.openBlock(),r.createElementBlock("div",xge,[r.createVNode(Ba,null,{trigger:r.withCtx(({open:M})=>[r.createVNode(Ao,{"icon-name":"Add",label:S.$t("project.activity.add"),onClick:M},null,8,["label","onClick"])]),menu:r.withCtx(({close:M})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),f()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,Age),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{M(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Tge)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(bd,{key:0,open:m.value,"onUpdate:open":N[4]||(N[4]=M=>m.value=M),title:S.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":h.value,onSubmit:C},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])}}});const Nge=r.defineComponent({__name:"AoProjectOverviewActivityDetails",props:{phaseId:{},milestoneId:{},activityId:{},activityTypes:{},devStatuses:{},activities:{},selectedActivity:{},isTaskCheckable:{},statuses:{},phases:{},users:{},project:{},userId:{},isEditable:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{},sprints:{},history:{default:()=>[]},historyLoading:{type:Boolean,default:!1}},emits:["update:activity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","createSprint","fetchHistory"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>{var y;return(y=n.phases)==null?void 0:y.find(g=>g.id===n.phaseId)}),s=r.computed(()=>{var y;return(y=n.phases)==null?void 0:y.flatMap(g=>g.milestones)}),a=r.computed(()=>{var y;return(y=s.value)==null?void 0:y.find(g=>g.id===n.milestoneId)}),l=r.computed(()=>{var y;return n.selectedActivity??((y=n.activities)==null?void 0:y.find(g=>g.id===n.activityId))}),c=y=>{o("update:activity",y)},d=y=>{o("addSubtask",y)},u=y=>{o("updateSubtask",y)},f=y=>{o("deleteSubtask",y)},p=y=>{o("addFiles",y)},m=y=>{o("removeFile",y)},h=y=>{o("addComment",y)},C=y=>{o("updateComment",y)},v=y=>{o("removeComment",y)};return(y,g)=>{var _,b;return l.value?(r.openBlock(),r.createBlock(_l,{key:0,activity:l.value,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":t.milestoneId,"template-activities":t.activities,"is-template":!1,users:t.users,"user-id":t.userId,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,breadcrumbs:`${(_=i.value)==null?void 0:_.name} / ${(b=a.value)==null?void 0:b.name}`,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,projects:[t.project],"time-tracking-data":t.timeTrackingData,"load-attachment-preview":n.loadAttachmentPreview,sprints:t.sprints,history:t.history,"history-loading":t.historyLoading,onClose:y.$router.back,"onUpdate:activity":c,onAddSubtask:d,onUpdateSubtask:u,onDeleteSubtask:f,onAddFiles:p,onRemoveFile:m,onAddComment:h,onUpdateComment:C,onRemoveComment:v,onCreateSprint:g[0]||(g[0]=w=>o("createSprint",w)),onFetchHistory:g[1]||(g[1]=()=>o("fetchHistory"))},{default:r.withCtx(w=>[r.renderSlot(y.$slots,"default",r.normalizeProps(r.guardReactiveProps(w)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints","history","history-loading","onClose"])):r.createCommentVNode("",!0)}}}),Dge={class:"ao-col-header"},$ge=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",Dge,[r.createVNode(vt,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(zi,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}});function Bge(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function La(t){return typeof t=="function"?t():r.unref(t)}const Mge=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Lge=t=>t!=null,Ui=()=>{};function Vge(t,e){function n(...o){return new Promise((i,s)=>{Promise.resolve(t(()=>e.apply(this,o),{fn:e,thisArg:this,args:o})).then(i).catch(s)})}return n}function Oge(t,e={}){let n,o,i=Ui;const s=l=>{clearTimeout(l),i(),i=Ui};return l=>{const c=La(t),d=La(e.maxWait);return n&&s(n),c<=0||d!==void 0&&d<=0?(o&&(s(o),o=null),Promise.resolve(l())):new Promise((u,f)=>{i=e.rejectOnCancel?f:u,d&&!o&&(o=setTimeout(()=>{n&&s(n),o=null,u(l())},d)),n=setTimeout(()=>{o&&s(o),o=null,u(l())},c)})}}function Ige(t,e=200,n={}){return Vge(Oge(e,n),t)}function gc(t){var e;const n=La(t);return(e=n==null?void 0:n.$el)!=null?e:n}const Pge=Mge?window:void 0;function Fge(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function Rge(t){const e=Fge();return r.computed(()=>(e.value,!!t()))}function Uge(t,e,n={}){const{root:o,rootMargin:i="0px",threshold:s=.1,window:a=Pge,immediate:l=!0}=n,c=Rge(()=>a&&"IntersectionObserver"in a),d=r.computed(()=>{const h=La(t);return(Array.isArray(h)?h:[h]).map(gc).filter(Lge)});let u=Ui;const f=r.ref(l),p=c.value?r.watch(()=>[d.value,gc(o),f.value],([h,C])=>{if(u(),!f.value||!h.length)return;const v=new IntersectionObserver(e,{root:gc(C),rootMargin:i,threshold:s});h.forEach(y=>y&&v.observe(y)),u=()=>{v.disconnect(),u=Ui}},{immediate:l,flush:"post"}):Ui,m=()=>{u(),p(),f.value=!1};return Bge(m),{isSupported:c,isActive:f,pause(){u(),f.value=!1},resume(){f.value=!0},stop:m}}const zge={class:r.normalizeClass(["ao-list-kanban"])},Hge={class:"ao-list-kanban__header"},jge=["title"],qge={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},Wge={key:1,class:"ao-list-kanban__end"},Zge={key:0,class:"ao-list-kanban__no-more"},Kge={key:1,class:"ao-list-kanban__divider"},Gge={key:1,class:"ao-list-kanban__footer"},Yge=r.defineComponent({__name:"AoListKanban",props:{list:{},status:{},users:{},userId:{},title:{},footerLabel:{},isLoading:{type:Boolean},hasMore:{type:Boolean},noMoreLabel:{},isEditable:{type:[Boolean,String]},tagType:{},showHeaderAdd:{type:Boolean},isDevMode:{type:Boolean}},emits:["add","addAtBeginning","update:list","change:list","loadMore","selectActivity","archiveActivity","unarchiveActivity","updateActivity","startTimer"],setup(t,{emit:e}){const n=t,o=e,i=r.ref(!1),s=r.ref(null);Uge(s,([{isIntersecting:f}])=>{i.value=f}),r.watch(i,f=>{f&&n.hasMore&&!n.isLoading&&o("loadMore")});const a=f=>{var p;return n.isEditable===!0?!0:n.userId&&n.isEditable==="only-own"?n.userId===((p=f.assignee)==null?void 0:p.id):!1},l=f=>{o("selectActivity",f)},c=f=>{o("updateActivity",f)},d=f=>{if("added"in f){const p={id:f.added.element.id,rank:Ir(n.list,f.added.newIndex)};n.isDevMode?p.statusDevId=n.status.id:p.statusId=n.status.id,o("updateActivity",p)}else"removed"in f||"moved"in f&&o("updateActivity",{id:f.moved.element.id,rank:Ir(n.list,f.moved.newIndex)})},u=r.ref(!1);return(f,p)=>(r.openBlock(),r.createElementBlock("div",zge,[t.title||f.$slots.header?r.renderSlot(f.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",Hge,[t.title?(r.openBlock(),r.createBlock($ge,{key:0,class:"ao-list-kanban__col-header",title:t.title,level:3,items:(m=t.list)==null?void 0:m.length},null,8,["title","items"])):r.createCommentVNode("",!0),t.showHeaderAdd?(r.openBlock(),r.createElementBlock("button",{key:1,class:"ao-list-kanban__header-add",title:f.$t("feed.activity.add"),onClick:p[0]||(p[0]=h=>f.$emit("addAtBeginning"))},[r.createVNode(be,{name:"Add"})],8,jge)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(Pn),r.mergeProps({class:["ao-list-kanban__list",u.value?"ao-list-kanban__transition":void 0],list:t.list,"item-key":"id",group:"kanban","ghost-class":"ao-list-kanban__ghost",animation:"200"},f.$attrs,{draggable:".ao-list-draggable",disabled:!t.isEditable,"component-data":{tag:"transition-group",name:"ao-list-kanban__transition"},onChange:d,onStart:p[2]||(p[2]=m=>u.value=!0),onEnd:p[3]||(p[3]=m=>u.value=!1)}),{item:r.withCtx(({element:m})=>{var h,C,v,y,g,_,b,w,k,x;return[r.createVNode(Ed,{id:m.id,class:r.normalizeClass(a(m)?"ao-list-draggable":""),name:m.name,"project-name":(h=m.project)==null?void 0:h.name,"project-id":(C=m.project)==null?void 0:C.id,"project-color":(v=m.project)==null?void 0:v.color,"phase-name":(g=(y=m.milestone)==null?void 0:y.phase)==null?void 0:g.name,"milestone-name":(_=m.milestone)==null?void 0:_.name,"milestone-color":(b=m.milestone)==null?void 0:b.color,deadline:m.deadline,rules:((w=m.rules)==null?void 0:w.length)||0,tasks:m.tasks,description:m.description,priority:m.priority,sprint:m.sprint,blocked:m.blocked,type:m.type,comments:(k=m.comments)==null?void 0:k.length,attachments:(x=m.attachments)==null?void 0:x.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":a(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[A=>a(m)&&c(A),()=>a(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>a(m)&&c({id:m.id,assigneeId:null}),onStartTimer:p[1]||(p[1]=A=>f.$emit("startTimer",A))},{secondary:r.withCtx(()=>[a(m)&&m.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:f.$t("feed.activity.archive"),onClick:r.withModifiers(()=>f.$emit("archiveActivity",{id:m.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),a(m)&&!m.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:f.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>f.$emit("unarchiveActivity",{id:m.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0)]),_:2},1032,["id","class","name","project-name","project-id","project-color","phase-name","milestone-name","milestone-color","deadline","rules","tasks","description","priority","sprint","blocked","type","comments","attachments","users","assignee","slug","is-editable","is-private","tag-type","onUpdateActivity","onClick","onRemoveAssignee"])]}),footer:r.withCtx(()=>[t.isLoading?(r.openBlock(),r.createElementBlock("div",qge,[r.createVNode(be,{name:"Loading"})])):t.hasMore?(r.openBlock(),r.createElementBlock("div",{key:2,ref_key:"scrollEnd",ref:s,class:"ao-list-kanban__end"},null,512)):(r.openBlock(),r.createElementBlock("div",Wge,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",Zge,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",Kge)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),f.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",Gge,[r.renderSlot(f.$slots,"footer",{},()=>[t.isEditable?(r.openBlock(),r.createBlock(Ao,{key:0,"icon-name":"AddBoxOutlineRounded",label:t.footerLabel,onClick:p[4]||(p[4]=m=>f.$emit("add"))},null,8,["label"])):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]))}});const Jge={class:"ao-field ao-search-field"},Xge=["value","placeholder"],Qge=r.defineComponent({__name:"AoSearchField",props:{modelValue:{},delay:{default:250},placeholder:{default:"Search"}},emits:["update:modelValue","clear"],setup(t,{emit:e}){const n=t,o=e,i=async l=>{const d=l.target.value;o("update:modelValue",d,l)},s=Ige(i,n.delay),a=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",Jge,[r.createElementVNode("input",{value:t.modelValue,type:"text",class:"ao-field__input ao-search-field__input",placeholder:t.placeholder,onInput:c[0]||(c[0]=(...d)=>r.unref(s)&&r.unref(s)(...d)),onKeypress:r.withKeys(i,["enter"])},null,40,Xge),r.createVNode(be,{name:"SearchRounded",class:r.normalizeClass(`ao-search-field__icon ao-search-field__action ${t.modelValue?"":"ao-search-field__action--visible"}`)},null,8,["class"]),r.createVNode(de,{"icon-name":"CloseRounded",size:"sm",color:"primary",corners:"round",class:r.normalizeClass(`ao-search-field__button ao-search-field__action ${t.modelValue?"ao-search-field__action--visible":""}`),onClick:a},null,8,["class"])]))}});const e0e={class:"ao-sprint-metrics"},t0e=["onClick"],n0e={class:"ao-sprint-metrics__header-left"},o0e={class:"ao-sprint-metrics__icon"},r0e={class:"ao-sprint-metrics__title"},i0e={class:"ao-sprint-metrics__dates"},s0e={key:0,class:"ao-sprint-metrics__project"},a0e={class:"ao-sprint-metrics__advancement"},l0e={class:"ao-sprint-metrics__progress-bar"},c0e={class:"ao-sprint-metrics__percent"},u0e={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},d0e={class:"ao-sprint-metrics__tooltip-row"},f0e={class:"ao-sprint-metrics__tooltip-row"},p0e={class:"ao-sprint-metrics__tooltip-row"},m0e={class:"ao-sprint-metrics__tooltip-row"},h0e={class:"ao-sprint-metrics__tooltip-row"},g0e={class:"ao-sprint-metrics__tooltip-row"},v0e={class:"ao-sprint-metrics__tooltip-row"},y0e={class:"ao-sprint-metrics__content"},_0e={class:"ao-sprint-metrics__grid"},C0e={class:"ao-sprint-metrics__item"},b0e={class:"ao-sprint-metrics__label"},k0e={class:"ao-sprint-metrics__value"},w0e={key:0,class:"ao-sprint-metrics__tooltip"},E0e={class:"ao-sprint-metrics__tooltip-title"},S0e={class:"ao-sprint-metrics__item"},x0e={class:"ao-sprint-metrics__label"},A0e={class:"ao-sprint-metrics__value"},T0e={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},N0e={class:"ao-sprint-metrics__label"},D0e={class:"ao-sprint-metrics__input-row"},$0e=["value","placeholder","onInput"],B0e={class:"ao-sprint-metrics__unit"},M0e={key:0,class:"ao-sprint-metrics__secondary"},L0e={class:"ao-sprint-metrics__item"},V0e={class:"ao-sprint-metrics__label"},O0e={class:"ao-sprint-metrics__value"},I0e=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},setup(t){const e=D=>D.label?`Sprint ${D.number}: ${D.label}`:`Sprint ${D.number}`,n=t,{t:o}=Ge(),i=["Ok for prod","Done"],s=r.ref(new Set),a=r.ref({}),l=D=>{s.value.has(D)?s.value.delete(D):s.value.add(D)},c=D=>n.projects.find($=>$.id===D.projectId),d=D=>{var $;return(($=n.planningData[D])==null?void 0:$.plannedManDays)??0},u=D=>{var $;return(($=n.planningData[D])==null?void 0:$.remainingPlannedManDays)??0},f=D=>{var $;return(($=n.planningData[D])==null?void 0:$.users)??[]},p=D=>n.activities.filter($=>{var E;return((E=$.sprint)==null?void 0:E.id)===D}).reduce(($,E)=>$+(E.estimation??0),0),m=D=>n.activities.filter($=>{var V,B;if(((V=$.sprint)==null?void 0:V.id)!==D)return!1;const E=(B=$.devStatus)==null?void 0:B.name;return E&&i.includes(E)}).reduce(($,E)=>$+(E.estimation??0),0),h=D=>{const $=n.sprints.find(V=>V.id===D),E=$?c($):void 0;return(E==null?void 0:E.estimationUnit)==="hours"?"hours":"points"},C=(D,$)=>h(D)==="hours"?$*n.businessDayHours:$,v=D=>h(D)==="hours"?o("activity.estimationUnit.hoursShort"):o("activity.estimationUnit.pointsShort"),y=D=>{const $=C(D,d(D));return $<=0?0:p(D)/$},g=D=>{if(a.value[D]!==void 0)return a.value[D];const $=n.sprints.find(E=>E.id===D);if($){const E=c($);if((E==null?void 0:E.velocity)!==void 0&&E.velocity>0)return E.velocity}return 1},_=(D,$)=>{const E=parseFloat($);isNaN(E)||E<=0?delete a.value[D]:a.value[D]=E},b=D=>{const $=g(D);return $===void 0?0:C(D,d(D))*$},w=D=>{const $=b(D);return $<=0?null:p(D)/$},k=D=>{const $=w(D);return $===null?0:Math.round($*100)},x=D=>{const $=p(D);if($<=0)return 0;const E=m(D);return Math.round(E/$*100)},A=D=>{const $=p(D),E=m(D);return Math.max(0,$-E)},S=D=>{const $=C(D,u(D)),E=y(D);return $*E},N=D=>{const $=S(D),E=A(D);return $<=0&&E>0?!1:$<E},I=D=>D.toFixed(1),M=(D,$)=>`${D.toFixed(2)} pts / ${v($)}`,F=(D,$)=>{const E=new Date(D),V=new Date($),B={day:"numeric",month:"short"};return`${E.toLocaleDateString("en-UK",B)} – ${V.toLocaleDateString("en-UK",B)}`};return(D,$)=>(r.openBlock(),r.createElementBlock("div",e0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,E=>{var V;return r.openBlock(),r.createElementBlock("div",{key:E.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:B=>l(E.id)},[r.createElementVNode("div",n0e,[r.createElementVNode("span",o0e,r.toDisplayString(s.value.has(E.id)?"▸":"▾"),1),r.createElementVNode("span",r0e,r.toDisplayString(e(E)),1),r.createElementVNode("span",i0e," · "+r.toDisplayString(F(E.startDate,E.endDate)),1),!s.value.has(E.id)&&c(E)?(r.openBlock(),r.createElementBlock("span",s0e," · "+r.toDisplayString((V=c(E))==null?void 0:V.name),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__header-right",{"ao-sprint-metrics__header-right--behind":N(E.id)}])},[r.createElementVNode("div",a0e,[r.createElementVNode("div",l0e,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":N(E.id)}]),style:r.normalizeStyle({width:x(E.id)+"%"})},null,6)]),r.createElementVNode("span",c0e,r.toDisplayString(x(E.id))+"% ",1),r.createElementVNode("div",u0e,[$[7]||($[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",d0e,[$[0]||($[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(x(E.id))+"%",1)]),r.createElementVNode("span",f0e,[$[1]||($[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(I(m(E.id)))+" / "+r.toDisplayString(I(p(E.id)))+" pts ",1)]),r.createElementVNode("span",p0e,[$[2]||($[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(I(A(E.id)))+" pts",1)]),$[8]||($[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",m0e,[$[3]||($[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(I(S(E.id)))+" pts",1)]),r.createElementVNode("span",h0e,[$[4]||($[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(I(u(E.id)))+" MD",1)]),r.createElementVNode("span",g0e,[$[5]||($[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(M(y(E.id),E.id)),1)]),$[9]||($[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",v0e,[$[6]||($[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(N(E.id)?"Behind plan":"On track"),1)])])])],2)],8,t0e),r.withDirectives(r.createElementVNode("div",y0e,[r.createElementVNode("div",_0e,[r.createElementVNode("div",C0e,[r.createElementVNode("div",b0e,r.toDisplayString(r.unref(o)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",k0e,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":f(E.id).length>0}])},[r.createTextVNode(r.toDisplayString(I(d(E.id)))+" MD ",1),f(E.id).length>0?(r.openBlock(),r.createElementBlock("span",w0e,[r.createElementVNode("span",E0e,r.toDisplayString(I(d(E.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f(E.id),B=>(r.openBlock(),r.createElementBlock("span",{key:B.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString(B.fullName),1),r.createElementVNode("span",null,r.toDisplayString(I(B.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",S0e,[r.createElementVNode("div",x0e,r.toDisplayString(r.unref(o)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",A0e,r.toDisplayString(I(p(E.id)))+" pts ",1)]),r.createElementVNode("div",T0e,[r.createElementVNode("div",N0e,r.toDisplayString(r.unref(o)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",D0e,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:g(E.id),placeholder:r.unref(o)("sprintMetrics.targetVelocityPlaceholder"),onInput:B=>_(E.id,B.target.value)},null,40,$0e),r.createElementVNode("span",B0e," pts / "+r.toDisplayString(v(E.id)),1)]),y(E.id)>0?(r.openBlock(),r.createElementBlock("div",M0e,r.toDisplayString(r.unref(o)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(M(y(E.id),E.id)),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",L0e,[r.createElementVNode("div",V0e,r.toDisplayString(r.unref(o)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",O0e,[w(E.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(k(E.id))+"% · "+r.toDisplayString(I(p(E.id)))+" / "+r.toDisplayString(I(b(E.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!s.value.has(E.id)]])])}),128))]))}});const P0e=te(I0e,[["__scopeId","data-v-f3ddff2c"]]),F0e={class:"ao-feed"},R0e={class:"ao-feed__filters"},U0e={class:"ao-feed__body"},iu=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},devStatuses:{default:()=>[]},project:{default:void 0},projects:{default:()=>[]},filters:{},activityTypes:{default:()=>[]},users:{},activityDetailsUsers:{default:()=>[]},userId:{},initialActivityId:{default:void 0},initialActivitySlug:{default:void 0},searchText:{default:""},showsArchivedActivities:{type:Boolean},showsOnlyImportant:{type:Boolean},showsOnlyNonAssigned:{type:Boolean},selectedActivity:{default:void 0},isTaskCheckable:{type:Function,default:void 0},isEditable:{type:[Boolean,String]},attachmentEnabled:{type:Boolean,default:!0},timeTrackingData:{default:()=>({})},loadAttachmentPreview:{type:Function,default:void 0},feedMode:{default:"standard"},sprints:{default:()=>[]},activitySprints:{default:()=>[]},milestones:{default:()=>[]},sprintPlanningData:{default:()=>({})},history:{default:()=>[]},historyLoading:{type:Boolean,default:!1}},emits:["change:activities","addActivity","update:filters","selectActivity","update:activity","archiveActivity","unarchiveActivity","update:searchText","clear:searchText","update:showsArchivedActivities","update:showsOnlyImportant","update:showsOnlyNonAssigned","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","toast","startTimer","createSprint","fetchHistory"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e;function s(U,se){i("toast",U,se)}const a=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.statuses),c=r.computed(()=>o.feedMode==="dev"?a.value.filter(U=>U.activityType==="dev"):a.value),d=async(U,se)=>{await i("selectActivity",U,se)},u=r.ref({}),f=r.ref(!1),p=r.ref(!1),m=r.computed(()=>o.project?"milestone":"project");r.watch([()=>l.value,()=>c.value,()=>o.initialActivityId,()=>o.initialActivitySlug,()=>o.feedMode],async([U,se,he,pe],[Ke,De])=>{const $e=o.feedMode==="dev"?"devStatus":"status";u.value=Object.fromEntries(U.map(Fe=>[Fe.id,se.filter(Ye=>{const Je=Ye[$e];return(Je==null?void 0:Je.id)===Fe.id})])),he&&!f.value?(d(he,null),f.value=!0):pe&&!f.value&&(d(null,pe),f.value=!0),p.value&&Jn(se,De)},{immediate:!0});const h=r.computed(()=>{var U;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((U=o.selectedActivity.milestone.phase)==null?void 0:U.name)??""} / ${o.selectedActivity.milestone.name??""}`}),C=U=>{var Fe;const se=o.feedMode==="dev"?o.activities.filter(Ye=>Ye.activityType==="dev"):o.activities,he=se==null?void 0:se.at(-1),pe=he?Qe.LexoRank.parse(he.rank).genNext():Qe.LexoRank.middle(),Ke=((Fe=o.activities)==null?void 0:Fe.length)??0,De=o.feedMode==="dev",$e={name:n("activity.defaultName",{idx:Ke+1}),rank:pe.format(),...De?{statusDevId:U.id,type:"dev"}:{statusId:U.id}};if(o.filters.assigneeId.length>0&&($e.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&($e.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Ye=o.sprints.find(Je=>Je.id===o.filters.sprintId[0]);Ye&&($e.sprintId=Ye.id,$e.projectId=Ye.projectId)}p.value=!0,i("addActivity",$e)},v=U=>{var Fe,Ye;const se=o.feedMode==="dev"?"devStatus":"status",he=((Fe=o.activities)==null?void 0:Fe.filter(Je=>{const Me=Je[se];return(Me==null?void 0:Me.id)===U.id}))??[],pe=ls(he),Ke=((Ye=o.activities)==null?void 0:Ye.length)??0,De=o.feedMode==="dev",$e={name:n("activity.defaultName",{idx:Ke+1}),rank:pe,...De?{statusDevId:U.id,type:"dev"}:{statusId:U.id}};if(o.filters.assigneeId.length>0&&($e.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&($e.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Je=o.sprints.find(Me=>Me.id===o.filters.sprintId[0]);Je&&($e.sprintId=Je.id,$e.projectId=Je.projectId)}p.value=!0,i("addActivity",$e)},y=(U,se)=>{p.value=!1,i("update:filters",{...o.filters,[U]:se})},g=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>g.value.map(U=>({value:U.id,label:U.name}))),b=r.computed(()=>o.sprints.map(U=>({value:U.id,label:n("activity.sprint.filterLabel",{number:U.number,label:U.label}),startDate:U.startDate,endDate:U.endDate,projectId:U.projectId}))),w=r.computed(()=>{const U=o.filters[ln.sprint]??[];return o.sprints.filter(se=>U.includes(se.id))}),k=r.computed(()=>{var he;const U=o.filters[ln.project]??[],se=(he=o.project)!=null&&he.id?[o.project.id]:[];return[...U,...se]}),x=r.computed(()=>o.milestones.map(U=>{var se;return{value:U.id,label:(se=U.phase)!=null&&se.name?`${U.phase.name} - ${U.name}`:U.name,color:U.color,important:U.important}}));r.computed(()=>{var U;return(U=o.activityTypes)==null?void 0:U.map(se=>({value:se.id,label:se.name}))});const A=r.computed(()=>o.users.map(U=>({value:U.id,label:`${U.firstName} ${U.lastName}`,avatar:U.avatarUrl}))),S=U=>{o.selectedActivity&&i("update:activity",U)},N=U=>{i("update:activity",U)},I=U=>{i("archiveActivity",U)},M=U=>{i("unarchiveActivity",U)},F=U=>{var se;i("startTimer",U),(se=window.parent)==null||se.postMessage({type:"startTimer",data:U},"*")},D=U=>{p.value=!1,i("update:searchText",U)},$=U=>{p.value=!1,i("clear:searchText",U)},E=U=>{o.selectedActivity&&i("addSubtask",U)},V=U=>{o.selectedActivity&&i("updateSubtask",U)},B=U=>{o.selectedActivity&&i("deleteSubtask",U)},H=U=>{i("addFiles",U)},Y=U=>{i("removeFile",U)},le=U=>{o.selectedActivity&&i("addComment",{...U,activityId:o.selectedActivity.id})},oe=U=>{const{id:se}=o.selectedActivity||{};se&&i("updateComment",U)},we=U=>{const{id:se}=o.selectedActivity||{};se&&i("removeComment",U)},re=Xo.useRouter(),ne=Xo.useRoute(),z=r.ref("feed");r.watch(()=>ne.name,U=>{U===Ro.feed||U==="ActivityFeed"||U==="ActivityFeedWithActivity"?z.value="feed":U===Ro.dev||U==="ActivityFeedDev"||U==="ActivityFeedDevWithActivity"?z.value="dev":U===Pe.feed?z.value="feed":U===Pe.dev?z.value="dev":U===Pe.project?z.value="overview":U===Pe.mapping&&(z.value="mapping")},{immediate:!0});const R=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],ie=r.computed(()=>Se.value?R.filter(U=>U.value==="feed"||U.value==="dev"):R),Se=r.computed(()=>!o.project&&ne.name&&(ne.name===Ro.feed||ne.name===Ro.dev||ne.name==="ActivityFeed"||ne.name==="ActivityFeedDev"||ne.name==="ActivityFeedWithActivity"||ne.name==="ActivityFeedDevWithActivity")),ze=r.computed(()=>Se.value?Ro.feed:Pe.feed),Ee=r.computed(()=>Se.value?Ro.dev:Pe.dev),Ce=r.computed(()=>Pe.project),_t=r.computed(()=>Pe.mapping);return r.watch(z,U=>{U==="feed"?re.push({name:ze.value}):U==="dev"?re.push({name:Ee.value}):U==="overview"?re.push({name:Ce.value}):U==="mapping"&&re.push({name:_t.value})}),(U,se)=>{var he;return r.openBlock(),r.createElementBlock("div",F0e,[r.createVNode(cs,null,{primary:r.withCtx(()=>[r.createElementVNode("div",R0e,[r.createVNode(ks,{modelValue:z.value,"onUpdate:modelValue":se[0]||(se[0]=pe=>z.value=pe),tabs:ie.value},null,8,["modelValue","tabs"]),r.createVNode(Qge,{"model-value":t.searchText,placeholder:U.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":D,onClear:$},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(pt,{key:0,"model-value":t.filters[r.unref(ln).project],mode:"tags",options:_.value,"close-on-select":!1,"clear-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__projects",placeholder:U.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":se[1]||(se[1]=pe=>y(r.unref(ln).project,pe))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(pt,{key:1,"model-value":t.filters[r.unref(ln).sprint],mode:"tags",options:b.value,"close-on-select":!1,searchable:!0,disabled:!b.value.length,class:"ao-feed__filter ao-feed__filter__sprints",placeholder:U.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":se[2]||(se[2]=pe=>y(r.unref(ln).sprint,pe))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),r.createVNode(pt,{"model-value":t.filters[r.unref(ln).milestone],mode:"tags",options:x.value,"close-on-select":!1,"clear-on-select":!1,searchable:!0,disabled:k.value.length===0,class:"ao-feed__filter ao-feed__filter__milestones",placeholder:U.$t("feed.filters.milestone.placeholder"),"onUpdate:modelValue":se[3]||(se[3]=pe=>y(r.unref(ln).milestone,pe))},null,8,["model-value","options","disabled","placeholder"]),A.value.length?(r.openBlock(),r.createBlock(pt,{key:2,"model-value":t.filters[r.unref(ln).assignee],mode:"tags",options:A.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:U.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":se[4]||(se[4]=pe=>y(r.unref(ln).assignee,pe))},{tag:r.withCtx(({option:pe,handleTagRemove:Ke})=>[r.createVNode(Qt,{"user-name":pe.label,"avatar-url":pe.avatar,"is-closable":!0,onClose:De=>Ke(pe,De)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["model-value","options","placeholder"])):r.createCommentVNode("",!0)]),r.createVNode(de,{class:"ao-feed__only-non-assigned",size:"sm","icon-name":t.showsOnlyNonAssigned?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:U.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:se[5]||(se[5]=pe=>U.$emit("update:showsOnlyNonAssigned",!t.showsOnlyNonAssigned))},null,8,["icon-name","label","aria-checked"]),r.createVNode(de,{class:"ao-feed__only-p0",size:"sm","icon-name":t.showsOnlyImportant?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:U.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:se[6]||(se[6]=pe=>U.$emit("update:showsOnlyImportant",!t.showsOnlyImportant))},null,8,["icon-name","label","aria-checked"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchivedActivities?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:U.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:se[7]||(se[7]=pe=>U.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&w.value.length>0?(r.openBlock(),r.createBlock(P0e,{key:0,sprints:w.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:g.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",U0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,pe=>(r.openBlock(),r.createBlock(Yge,{key:pe.id,status:pe,list:u.value[pe.id],title:pe.name,"footer-label":U.$t("feed.activity.add"),users:t.users,"user-id":t.userId,"is-editable":t.isEditable,"tag-type":m.value,"show-header-add":t.isEditable,"is-dev-mode":t.feedMode==="dev",onAdd:()=>C(pe),onAddAtBeginning:()=>v(pe),onSelectActivity:d,onArchiveActivity:I,onUnarchiveActivity:M,onUpdateActivity:N,onStartTimer:F},null,8,["status","list","title","footer-label","users","user-id","is-editable","tag-type","show-header-add","is-dev-mode","onAdd","onAddAtBeginning"]))),128))]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.selectedActivity?(r.openBlock(),r.createBlock(_l,{key:0,activity:t.selectedActivity,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":(he=t.selectedActivity.milestone)==null?void 0:he.id,"template-activities":a.value,users:o.activityDetailsUsers.length>0?o.activityDetailsUsers:t.users,"user-id":t.userId,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,breadcrumbs:h.value,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,projects:g.value,"time-tracking-data":t.timeTrackingData,history:t.history,"history-loading":t.historyLoading,"load-attachment-preview":o.loadAttachmentPreview,sprints:t.activitySprints,onClose:se[8]||(se[8]=()=>d(null,null)),onFetchHistory:se[9]||(se[9]=()=>i("fetchHistory")),"onUpdate:activity":S,onAddSubtask:E,onUpdateSubtask:V,onDeleteSubtask:B,onAddFiles:H,onRemoveFile:Y,onAddComment:le,onUpdateComment:oe,onRemoveComment:we,onToast:s,onCreateSprint:se[10]||(se[10]=pe=>i("createSprint",pe))},{default:r.withCtx(pe=>[r.renderSlot(U.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(pe)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","history","history-loading","load-attachment-preview","sprints"])):r.createCommentVNode("",!0)]))])}}});const z0e={class:"ao-project-mapping"},H0e={class:"ao-project-mapping-mapping__body"},j0e={class:"ao-project-mapping-mapping__phases"},q0e={key:0,class:"ao-project-mapping-mapping__image-wrapper"},W0e=["src","alt"],Z0e=r.defineComponent({__name:"AoMapping",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{type:Function},statuses:{},activityTypes:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean}},emits:["addPhase","updatePhase","archivePhase","unarchivePhase","copyPhaseToTemplate","applyTemplate","saveTemplate","update:showsArchived"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=()=>{const{name:g,rank:_}=Jo(o.phases,"phase",n);i("addPhase",{name:g,rank:_,projectId:o.project.id})},a=()=>{const g=n("template.defaultName.phase",{idx:1}),_=ls(o.phases);i("addPhase",{name:g,rank:_,projectId:o.project.id})},l=g=>{i("updatePhase",g)},c=g=>{i("archivePhase",g)},d=g=>{i("unarchivePhase",g)},u=g=>{i("copyPhaseToTemplate",g)},f=r.ref(!1),p=r.ref(!1),m=(g,_)=>{i("applyTemplate",{templateId:g,projectId:_}),f.value=!1},h=(g,_)=>{var k;const b=(k=o.templates)==null?void 0:k.at(-1),w=b?Qe.LexoRank.parse(b.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:g,rank:w.format(),phaseIds:_}),p.value=!1},C=Xo.useRouter(),v=r.ref("mapping"),y=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(v,g=>{g==="feed"?(C.push({name:Pe.feed}),console.log("Navigating to feed...")):g==="dev"?(C.push({name:Pe.dev}),console.log("Navigating to dev...")):g==="overview"?(C.push({name:Pe.project}),console.log("Navigating to feed...")):g==="mapping"&&(C.push({name:Pe.mapping}),console.log("Navigating to feed..."))}),(g,_)=>{var b;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-mapping-overview"},g.$attrs),[r.createElementVNode("div",z0e,[r.createVNode(cs,null,{primary:r.withCtx(()=>[r.createVNode(ks,{modelValue:v.value,"onUpdate:modelValue":_[0]||(_[0]=w=>v.value=w),tabs:y},null,8,["modelValue"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:g.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:_[1]||(_[1]=w=>g.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:0,class:"ao-mapping__quick-add-phase",size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:g.$t("project.phase.add"),onClick:a},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:1,class:"ao-project-mapping-overview__save-as-template",color:"primary",label:g.$t("project.template.save.label"),onClick:_[2]||(_[2]=w=>p.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:2,class:"ao-project-mapping-overview__add-template",color:"primary",label:g.$t("project.template.apply.label"),onClick:_[3]||(_[3]=w=>f.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",H0e,[r.createElementVNode("div",j0e,[r.createVNode(wd,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"estimation-unit":(b=t.project)==null?void 0:b.estimationUnit,onAddPhase:s,onUpdatePhase:l,onArchivePhase:c,onUnarchivePhase:d,onCopyPhaseToTemplate:u},null,8,["phases","closed-status","is-editable","users","estimation-unit"])]),t.project.architectureImage?(r.openBlock(),r.createElementBlock("div",q0e,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,W0e)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[p.value?(r.openBlock(),r.createBlock(u0,{key:0,phases:t.phases,onClose:_[4]||(_[4]=w=>p.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createBlock(c0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=w=>f.value=!1),onApply:m},null,8,["project-id","templates"])):r.createCommentVNode("",!0)]))],64)}}});const qo={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},K0e=(t,e={})=>[{path:t,name:qo.TEMPLATES,redirect:{name:qo.TEMPLATES_LIST},...e,children:[{path:"",name:qo.TEMPLATES_LIST,component:d0},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:qo.TEMPLATE_DETAILS,component:s0,props:!0}]}],Pe={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},Ro={feed:"ActivityFeed",dev:"ActivityFeedDev"},G0e=(t,e={})=>[{path:t,...e,redirect:{name:Pe.project},children:[{path:"",name:Pe.project,component:Ihe,props:!0,children:[{path:":phaseId/:milestoneId",name:Pe.milestone,component:Tp,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Pe.activity,props:{default:!0,modal:!0},components:{default:Tp,modal:Nge}}]},{path:"feed",name:Pe.feed,component:iu,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Pe.dev,component:iu,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Pe.mapping,component:Z0e,props:!0}]}],Y0e={class:"ao-templates"},d0=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e;r.watch(()=>o.templates,(d,u)=>{Jn(d,u)});const s=()=>{var m,h;const d=(m=o.templates)==null?void 0:m.at(-1),u=d?Qe.LexoRank.parse(d.rank).genNext():Qe.LexoRank.middle(),f=((h=o.templates)==null?void 0:h.length)??0,p={name:n("template.defaultName.template",{idx:f+1}),rank:u.format()};i("addTemplate",p)},a=(d,u)=>{i("updateItem",{itemType:qe.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{i("removeItem",{itemType:qe.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=as(d,o.templates??[]);i("updateItem",{itemType:qe.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",Y0e,[r.createVNode(cs,null,{secondary:r.withCtx(()=>[r.createVNode(de,{label:d.$t("templates.new"),color:"primary","icon-name":"Add","icon-position":"start",onClick:s},null,8,["label"])]),_:1}),r.createVNode(r.unref(Pn),{"model-value":t.templates,class:"ao-templates__list","item-key":"id",handle:".ao-card__drag",onChange:c},{item:r.withCtx(({element:f})=>{var p;return[r.createVNode(_b,{id:f.id,title:f.name,phases:f.phases,milestones:(p=f.phases)!=null&&p.length?r.unref(HC)(f.phases):0,activities:f.phases?r.unref(jC)(f.phases):0,"updated-at":f.updatedAt,"updated-by":f.updatedBy,onUpdateTitle:m=>a(f.id,m),onClick:m=>d.$router.push({name:r.unref(qo).TEMPLATE_DETAILS,params:{templateId:f.id}}),onDeleteItem:u[0]||(u[0]=(m,h)=>l(m,h))},null,8,["id","title","phases","milestones","activities","updated-at","updated-by","onUpdateTitle","onClick"])]}),_:1},8,["model-value"])]))}});const J0e={class:"ao-field__label"},f0=r.defineComponent({__name:"AoField",props:{label:{},isMultiselect:{type:Boolean,default:!1}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("label",{class:r.normalizeClass(["ao-field",{"ao-field--multiselect":t.isMultiselect}])},[r.createElementVNode("span",J0e,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),X0e=["type","value","disabled","readonly"],Q0e=r.defineComponent({__name:"AoInputField",props:{label:{default:""},type:{default:"text"},modelValue:{default:""},modelModifiers:{default:()=>({})},isDisabled:{type:Boolean,default:!1},isReadonly:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>n.modelModifiers.lazy?"change":"input"),s=a=>{n.modelModifiers.number&&(a=Number(a)),o("update:modelValue",a)};return(a,l)=>(r.openBlock(),r.createBlock(f0,{label:t.label},{default:r.withCtx(()=>[r.createElementVNode("input",r.mergeProps({class:"ao-field__input",type:t.type,value:t.modelValue,disabled:t.isDisabled,readonly:t.isReadonly},{[r.toHandlerKey(i.value)]:l[0]||(l[0]=c=>s(c.target.value))}),null,16,X0e)]),_:1},8,["label"]))}}),eve={class:"ao-field"},tve={class:"ao-field__label"},nve=["checked","disabled"],p0=r.defineComponent({__name:"AoCheckboxField",props:{label:{default:""},modelValue:{type:Boolean,default:!1},isReadonly:{type:Boolean,default:!1},isDisabled:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("label",eve,[r.createElementVNode("span",tve,r.toDisplayString(t.label),1),r.createElementVNode("input",{class:"ao-field__input",type:"checkbox",checked:t.modelValue,disabled:t.isDisabled,onChange:n[0]||(n[0]=o=>{var i;return e.$emit("update:modelValue",((i=o.target)==null?void 0:i.checked)??!1)})},null,40,nve)]))}}),ove={class:"ao-audit-config"},rve={key:0,class:"ao-audit-config__loading"},ive={key:1,class:"ao-audit-config__error"},sve={key:2,class:"ao-audit-config__empty"},ave={key:3,class:"ao-audit-config__table"},lve={class:"ao-audit-config__th ao-audit-config__th--table"},cve={class:"ao-audit-config__th ao-audit-config__th--audit"},uve={class:"ao-audit-config__th ao-audit-config__th--excluded"},dve={class:"ao-audit-config__td ao-audit-config__td--table"},fve={class:"ao-audit-config__table-name"},pve={key:0,class:"ao-audit-config__schema"},mve={class:"ao-audit-config__td ao-audit-config__td--audit"},hve={class:"ao-audit-config__checkbox"},gve={class:"ao-audit-config__td ao-audit-config__td--excluded"},vve={key:0,class:"ao-audit-config__disabled-note"},yve={class:"ao-audit-config__option"},_ve=["title"],Cve={key:0,class:"ao-audit-config__all-tracked"},bve=r.defineComponent({__name:"AoAuditConfigTable",props:{tables:{},loading:{type:Boolean,default:!1},error:{default:null},disabled:{type:Boolean,default:!1}},emits:["update"],setup(t,{emit:e}){const n=t,o=e,{t:i}=Ge(),s=r.computed(()=>n.tables);function a(d){return d.columns.map(u=>({value:u.name,label:u.name,isPrimaryKey:u.isPrimaryKey}))}function l(d,u){o("update",{schemaName:d.schemaName,tableName:d.tableName,isEnabled:u,excludeColumns:d.excludeColumns})}function c(d,u){const f=Array.from(new Set(u??[]));o("update",{schemaName:d.schemaName,tableName:d.tableName,isEnabled:d.isEnabled,excludeColumns:f})}return(d,u)=>(r.openBlock(),r.createElementBlock("div",ove,[t.loading?(r.openBlock(),r.createElementBlock("div",rve,r.toDisplayString(r.unref(i)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",ive,r.toDisplayString(r.unref(i)("audit.error",{message:t.error})),1)):s.value.length?(r.openBlock(),r.createElementBlock("table",ave,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",lve,r.toDisplayString(r.unref(i)("audit.tableHeader")),1),r.createElementVNode("th",cve,r.toDisplayString(r.unref(i)("audit.auditHeader")),1),r.createElementVNode("th",uve,r.toDisplayString(r.unref(i)("audit.ignoredHeader")),1)])]),r.createElementVNode("tbody",null,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,f=>(r.openBlock(),r.createElementBlock("tr",{key:`${f.schemaName}.${f.tableName}`},[r.createElementVNode("td",dve,[r.createElementVNode("span",fve,r.toDisplayString(f.tableName),1),f.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",pve,r.toDisplayString(f.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",mve,[r.createElementVNode("div",hve,[r.createVNode(p0,{label:"","model-value":f.isEnabled,"is-disabled":t.disabled,"is-readonly":!1,"onUpdate:modelValue":p=>l(f,p)},null,8,["model-value","is-disabled","onUpdate:modelValue"])])]),r.createElementVNode("td",gve,[f.isEnabled?(r.openBlock(),r.createBlock(pt,{key:1,"model-value":f.excludeColumns,class:"ao-audit-config__multiselect",mode:"tags","value-prop":"value",label:"label","track-by":"label","close-on-select":!1,searchable:!0,options:a(f),disabled:t.disabled,caret:!t.disabled,"onUpdate:modelValue":p=>c(f,p)},{option:r.withCtx(({option:p})=>[r.createElementVNode("span",yve,[r.createTextVNode(r.toDisplayString(p.label)+" ",1),p.isPrimaryKey?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-audit-config__pk",title:r.unref(i)("audit.primaryKey")}," PK ",8,_ve)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[f.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",Cve,r.toDisplayString(r.unref(i)("audit.allTracked")),1)):r.createCommentVNode("",!0)]),_:2},1032,["model-value","options","disabled","caret","onUpdate:modelValue"])):(r.openBlock(),r.createElementBlock("div",vve,r.toDisplayString(r.unref(i)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",sve,r.toDisplayString(r.unref(i)("audit.empty")),1))]))}});const kve={key:0,class:"ao-activity-inline__drag-handle"},wve=["onKeydown"],Eve={class:"ao-activity-inline__title"},Sve={class:"ao-activity-inline__name"},xve={class:"ao-activity-inline__assignee"},Ave={key:1,class:"ao-activity-inline__unassigned"},Tve={class:"ao-activity-inline__estimation"},Nve={class:"ao-activity-inline__status"},Dve={class:"ao-activity-inline__title"},$ve={class:"ao-activity-inline__name"},Bve={class:"ao-activity-inline__assignee"},Mve={key:1,class:"ao-activity-inline__unassigned"},Lve={class:"ao-activity-inline__estimation"},Vve={class:"ao-activity-inline__status"},Ove={key:3,class:"ao-activity-inline__content ao-activity-inline--disabled"},Ive={class:"ao-activity-inline__title"},Pve={class:"ao-activity-inline__name"},Fve={class:"ao-activity-inline__assignee"},Rve={key:1},Uve={class:"ao-activity-inline__estimation"},zve={class:"ao-activity-inline__status"},Hve=r.defineComponent({__name:"AoActivityInline",props:{activity:{},showMilestone:{type:Boolean,default:!0},isDraggable:{type:Boolean,default:!1},clickable:{type:Boolean,default:!1},isEditable:{type:Boolean,default:!1}},emits:["openActivity","updateActivity"],setup(t,{emit:e}){const n=t,o=e,i=()=>{o("openActivity",n.activity.id)},s=()=>{if(!n.activity.priority||!n.isEditable)return;const f={P0:"P2",P1:"P0",P2:"P1"};o("updateActivity",{id:n.activity.id,priority:f[n.activity.priority]})},a=r.computed(()=>{const f=n.activity.milestone,p=f==null?void 0:f.phase,m=n.activity.project;return!(m!=null&&m.id)||!(p!=null&&p.id)||!(f!=null&&f.id)?null:{name:Pe.activity,params:{id:m.id,phaseId:p.id,milestoneId:f.id,activityId:n.activity.id}}}),l=r.computed(()=>n.activity.assignee?[n.activity.assignee.firstName,n.activity.assignee.lastName].filter(Boolean).join(" "):""),c=r.computed(()=>{var f,p;return((f=n.activity.devStatus)==null?void 0:f.name)??((p=n.activity.status)==null?void 0:p.name)??""}),{t:d}=Ge(),u=r.computed(()=>{var f;return((f=n.activity.project)==null?void 0:f.estimationUnit)==="days"?d("activity.estimationUnit.pointsShort"):d("activity.estimationUnit.hoursShort")});return(f,p)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["ao-activity-inline",t.isDraggable?"ao-activity-inline--draggable":""])},[t.isDraggable?(r.openBlock(),r.createElementBlock("div",kve,[r.createVNode(be,{name:"DragIndicator"})])):r.createCommentVNode("",!0),t.clickable?(r.openBlock(),r.createElementBlock("div",{key:1,class:"ao-activity-inline__content",role:"button",tabindex:"0",onClick:r.withModifiers(i,["stop"]),onKeydown:[r.withKeys(r.withModifiers(i,["stop"]),["enter"]),r.withKeys(r.withModifiers(i,["prevent","stop"]),["space"])]},[r.createElementVNode("div",Eve,[t.showMilestone&&t.activity.milestone?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-activity-inline__milestone",style:r.normalizeStyle({"--milestone-color":t.activity.milestone.color||void 0})},r.toDisplayString(t.activity.milestone.name),5)):r.createCommentVNode("",!0),r.createElementVNode("span",Sve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",xve,[t.activity.assignee?(r.openBlock(),r.createBlock(Qt,{key:0,"user-name":l.value,"avatar-url":t.activity.assignee.avatarUrl,size:"md",color:"neutral"},null,8,["user-name","avatar-url"])):(r.openBlock(),r.createElementBlock("span",Ave," — ")),t.activity.priority?(r.openBlock(),r.createBlock(oa,{key:2,priority:t.activity.priority,clickable:t.isEditable,onClick:s},null,8,["priority","clickable"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Tve,[t.activity.estimation!=null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(t.activity.estimation)+r.toDisplayString(u.value),1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))]),r.createElementVNode("div",Nve,r.toDisplayString(c.value),1)],40,wve)):a.value?(r.openBlock(),r.createBlock(r.unref(Xo.RouterLink),{key:2,to:a.value,class:"ao-activity-inline__content"},{default:r.withCtx(()=>[r.createElementVNode("div",Dve,[t.showMilestone&&t.activity.milestone?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-activity-inline__milestone",style:r.normalizeStyle({"--milestone-color":t.activity.milestone.color||void 0})},r.toDisplayString(t.activity.milestone.name),5)):r.createCommentVNode("",!0),r.createElementVNode("span",$ve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",Bve,[t.activity.assignee?(r.openBlock(),r.createBlock(Qt,{key:0,"user-name":l.value,"avatar-url":t.activity.assignee.avatarUrl,size:"sm",color:"neutral"},null,8,["user-name","avatar-url"])):(r.openBlock(),r.createElementBlock("span",Mve," — ")),t.activity.priority?(r.openBlock(),r.createBlock(oa,{key:2,priority:t.activity.priority,clickable:t.isEditable,onClick:s},null,8,["priority","clickable"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Lve,[t.activity.estimation!=null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(t.activity.estimation)+r.toDisplayString(u.value),1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))]),r.createElementVNode("div",Vve,r.toDisplayString(c.value),1)]),_:1},8,["to"])):(r.openBlock(),r.createElementBlock("div",Ove,[r.createElementVNode("div",Ive,[r.createElementVNode("span",Pve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",Fve,[t.activity.assignee?(r.openBlock(),r.createBlock(Qt,{key:0,"user-name":l.value,"avatar-url":t.activity.assignee.avatarUrl,size:"sm",color:"neutral"},null,8,["user-name","avatar-url"])):(r.openBlock(),r.createElementBlock("span",Rve,"—")),t.activity.priority?(r.openBlock(),r.createBlock(oa,{key:2,priority:t.activity.priority,clickable:t.isEditable,onClick:s},null,8,["priority","clickable"])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Uve,[t.activity.estimation!=null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(t.activity.estimation)+r.toDisplayString(u.value),1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))]),r.createElementVNode("div",zve,r.toDisplayString(c.value),1)]))],2))}});const m0=te(Hve,[["__scopeId","data-v-76d2bf8e"]]),jve={class:"ao-sprint-section__header-left"},qve={class:"ao-sprint-section__expand-icon"},Wve={class:"ao-sprint-section__title"},Zve={key:0,class:"ao-sprint-section__archived-badge"},Kve={class:"ao-sprint-section__header-right"},Gve={class:"ao-sprint-section__dates"},Yve={class:"ao-sprint-section__meta"},Jve=["title"],Xve=["onClick"],Qve={class:"ao-sprint-section__edit-title"},e2e={class:"ao-sprint-section__fixed-number"},t2e={class:"ao-sprint-section__date-fields"},n2e={class:"ao-sprint-section__actions"},o2e={class:"ao-sprint-section__content"},r2e={key:0,class:"ao-sprint-section__empty"},i2e=r.defineComponent({__name:"AoSprintSection",props:{sprint:{},activities:{},isEditable:{type:Boolean,default:!1},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},emits:["updateSprint","archiveSprint","unarchiveSprint","activityChange","openActivity","updateActivity"],setup(t,{emit:e}){const n=t,o=e,i=E=>{E.added&&o("activityChange",{id:E.added.element.id,sprintId:n.sprint.id})},s=E=>{o("updateActivity",E)},a=E=>{o("openActivity",{activityId:E,activityIds:n.activities.map(V=>V.id)})},l=r.ref(!0),c=r.ref(!1),{t:d}=Ge(),u=r.ref({label:"",startDate:"",endDate:"",color:""}),f=r.computed(()=>n.sprint.label?`Sprint ${n.sprint.number}: ${n.sprint.label}`:`Sprint ${n.sprint.number}`),p=r.computed(()=>{const E=Pr(n.sprint.startDate,"dd/MM/yy"),V=Pr(n.sprint.endDate,"dd/MM/yy");return`${E} – ${V}`}),m=r.computed(()=>n.activities.length),h=r.computed(()=>n.activities.reduce((E,V)=>E+(V.estimation??0),0)),C=r.computed(()=>{var E;return(E=n.planningData)==null?void 0:E[n.sprint.id]}),v=r.computed(()=>{var V;const E=n.projects.find(B=>B.id===n.sprint.projectId);return E||((V=n.activities.find(B=>B.project))==null?void 0:V.project)}),y=r.computed(()=>{var E;return((E=v.value)==null?void 0:E.velocity)??1}),g=r.computed(()=>{var E;return((E=v.value)==null?void 0:E.estimationUnit)??""}),_=r.computed(()=>{const E=C.value;return E!=null&&E.plannedManDays?g.value==="hours"?E.plannedManDays*n.businessDayHours:E.plannedManDays:null}),b=r.computed(()=>{const E=_.value;return E==null?null:E*y.value}),w=r.computed(()=>{const E=b.value;return E==null||E===0?null:Math.round(h.value/E*100)}),k=r.computed(()=>{const E=b.value;return E==null?!1:h.value>E}),x=r.computed(()=>{const E=b.value;if(E==null)return null;const V=Math.round(h.value*10)/10,B=Math.round(E*10)/10,H=w.value;return H!=null?`${V} / ${B} pts · ${H}%`:`${V} / ${B} pts`}),A=r.computed(()=>{const E=b.value;if(E==null)return;const V=g.value==="hours"?d("activity.estimationUnit.hours"):d("activity.estimationUnit.points"),B=g.value==="hours"?d("activity.estimationUnit.hoursShort"):d("activity.estimationUnit.pointsShort");return[`Estimated work: ${h.value} ${d("activity.estimationUnit.pointsShort")}`,`Planned capacity: ${_.value} ${V}`,`Velocity: ${y.value} ${d("activity.estimationUnit.pointsShort")} / ${B}`,`Sprint capacity: ${E} ${d("activity.estimationUnit.pointsShort")}`,`Load: ${w.value}%`].join(`
63
63
  `)}),S=r.computed(()=>!!(u.value.startDate&&u.value.endDate)),N=()=>{c.value||(l.value=!l.value)},I=()=>{c.value=!0,u.value={label:n.sprint.label||"",startDate:n.sprint.startDate,endDate:n.sprint.endDate,color:n.sprint.color||""}},M=()=>{c.value=!1},F=()=>{S.value&&(o("updateSprint",{id:n.sprint.id,label:u.value.label||void 0,startDate:u.value.startDate,endDate:u.value.endDate,color:u.value.color||void 0}),c.value=!1)},D=()=>{window.confirm("Archive this sprint?")&&o("archiveSprint",{id:n.sprint.id})},$=()=>{o("unarchiveSprint",{id:n.sprint.id})};return(E,V)=>(r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["ao-sprint-section",{"ao-sprint-section--archived":!t.sprint.active}])},[c.value?(r.openBlock(),r.createElementBlock("div",{key:1,class:"ao-sprint-section__edit",onClick:V[6]||(V[6]=r.withModifiers(()=>{},["stop"]))},[r.createVNode(ai,{color:u.value.color,"onUpdate:color":V[2]||(V[2]=B=>u.value.color=B)},{clickable:r.withCtx(({openPicker:B,bgColor:H})=>[r.createElementVNode("button",{class:"ao-sprint-section__color-trigger",style:r.normalizeStyle({backgroundColor:H}),title:"Sprint color",onClick:Y=>B(Y.currentTarget)},null,12,Xve)]),_:1},8,["color"]),r.createElementVNode("div",Qve,[r.createElementVNode("span",e2e," Sprint "+r.toDisplayString(t.sprint.number)+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":V[3]||(V[3]=B=>u.value.label=B),type:"text",class:"ao-sprint-section__input ao-sprint-section__input--label",placeholder:"Label"},null,512),[[r.vModelText,u.value.label]])]),r.createElementVNode("div",t2e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":V[4]||(V[4]=B=>u.value.startDate=B),type:"date",class:"ao-sprint-section__input ao-sprint-section__input--date"},null,512),[[r.vModelText,u.value.startDate]]),V[7]||(V[7]=r.createElementVNode("span",null,"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":V[5]||(V[5]=B=>u.value.endDate=B),type:"date",class:"ao-sprint-section__input ao-sprint-section__input--date"},null,512),[[r.vModelText,u.value.endDate]])]),r.createElementVNode("div",n2e,[r.createVNode(de,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!S.value,title:"Save",onClick:F},null,8,["disabled"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:"Cancel",onClick:M})])])):(r.openBlock(),r.createElementBlock("div",{key:0,class:"ao-sprint-section__header",onClick:N},[r.createElementVNode("div",jve,[r.createElementVNode("span",qve,r.toDisplayString(l.value?"▾":"▸"),1),r.createElementVNode("span",{class:"ao-sprint-section__color-dot",style:r.normalizeStyle({backgroundColor:t.sprint.color||"var(--ao-color-primary-base)"})},null,4),r.createElementVNode("span",Wve,r.toDisplayString(f.value),1),t.sprint.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",Zve," Archived "))]),r.createElementVNode("div",Kve,[r.createElementVNode("span",Gve,r.toDisplayString(p.value),1),r.createElementVNode("span",Yve,r.toDisplayString(m.value)+" "+r.toDisplayString(m.value===1?"activity":"activities"),1),x.value?(r.openBlock(),r.createElementBlock("span",{key:0,class:r.normalizeClass(["ao-sprint-section__capacity",{"ao-sprint-section__capacity--over":k.value}]),title:A.value},r.toDisplayString(x.value),11,Jve)):r.createCommentVNode("",!0),t.isEditable?(r.openBlock(),r.createElementBlock("div",{key:1,class:"ao-sprint-section__actions",onClick:V[1]||(V[1]=r.withModifiers(()=>{},["stop"]))},[r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"EditOutline",title:"Edit sprint",onClick:I}),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm",corners:"round","icon-name":"ArchiveOutlineRounded",label:t.sprint.active?"Archive":"Unarchive",onClick:V[0]||(V[0]=B=>t.sprint.active?D():$())},null,8,["label"])])):r.createCommentVNode("",!0)])])),r.withDirectives(r.createElementVNode("div",o2e,[r.createVNode(r.unref(Pn),{list:t.activities,class:"ao-sprint-section__draggable",group:"sprint-planning-activities","item-key":"id",handle:".ao-activity-inline__drag-handle",disabled:!t.isEditable,"ghost-class":"ao-sprint-section__ghost",onChange:i},{item:r.withCtx(({element:B})=>[r.createVNode(m0,{activity:B,"is-draggable":t.isEditable,"is-editable":t.isEditable,clickable:!0,onOpenActivity:a,onUpdateActivity:s},null,8,["activity","is-draggable","is-editable"])]),_:1},8,["list","disabled"]),t.activities.length===0?(r.openBlock(),r.createElementBlock("div",r2e," No activities ")):r.createCommentVNode("",!0)],512),[[r.vShow,l.value&&!c.value]])],2))}});const s2e=te(i2e,[["__scopeId","data-v-520586f3"]]),a2e={class:"ao-sprint-list"},l2e={class:"ao-sprint-list__header"},c2e={class:"ao-sprint-list__title-group"},u2e={class:"ao-sprint-list__count"},d2e={class:"ao-sprint-list__actions"},f2e={key:0,class:"ao-sprint-list__toggle"},p2e={key:0,class:"ao-sprint-list__create"},m2e=["title","onClick"],h2e={class:"ao-sprint-list__create-title"},g2e={class:"ao-sprint-list__fixed-number"},v2e=["placeholder"],y2e={class:"ao-sprint-list__date-fields"},_2e={class:"ao-sprint-list__row-actions"},C2e={class:"ao-sprint-list__sections"},b2e={key:1,class:"ao-sprint-list__empty"},k2e=r.defineComponent({__name:"AoSprintList",props:{sprints:{},activities:{},isEditable:{type:Boolean,default:!1},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},emits:["updateSprint","archiveSprint","unarchiveSprint","createSprint","activityChange","updateActivity","openActivity"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=r.ref(!1),a=r.ref(!1),l=r.ref({label:"",startDate:"",endDate:"",color:"#4f5cff"}),c=r.computed(()=>(s.value?[...o.sprints]:o.sprints.filter(y=>y.active)).sort((y,g)=>g.number-y.number)),d=r.computed(()=>o.sprints.reduce((v,y)=>Math.max(v,y.number),0)+1),u=r.computed(()=>!!(l.value.startDate&&l.value.endDate)),f=r.computed(()=>{var y;const v={};for(const g of o.activities){const _=(y=g.sprint)==null?void 0:y.id;_&&(v[_]??(v[_]=[])).push(g)}return v}),p=v=>f.value[v]??[],m=()=>{a.value=!0,l.value={label:"",startDate:"",endDate:"",color:"#4f5cff"}},h=()=>{a.value=!1},C=()=>{u.value&&(i("createSprint",{label:l.value.label||void 0,startDate:l.value.startDate,endDate:l.value.endDate,color:l.value.color||void 0}),a.value=!1)};return(v,y)=>(r.openBlock(),r.createElementBlock("section",a2e,[r.createElementVNode("div",l2e,[r.createElementVNode("div",c2e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(n)("sprint.planning")),1),r.createElementVNode("span",u2e,r.toDisplayString(c.value.length),1)]),r.createElementVNode("div",d2e,[t.sprints.some(g=>!g.active)?(r.openBlock(),r.createElementBlock("label",f2e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":y[0]||(y[0]=g=>s.value=g),type:"checkbox"},null,512),[[r.vModelCheckbox,s.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(n)("sprint.showArchived")),1)])):r.createCommentVNode("",!0),t.isEditable&&!a.value?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"solid",size:"sm","icon-name":"Add","icon-position":"start",label:r.unref(n)("sprint.add"),onClick:m},null,8,["label"])):r.createCommentVNode("",!0)])]),a.value?(r.openBlock(),r.createElementBlock("div",p2e,[r.createVNode(ai,{color:l.value.color,"onUpdate:color":y[1]||(y[1]=g=>l.value.color=g)},{clickable:r.withCtx(({openPicker:g,bgColor:_})=>[r.createElementVNode("button",{class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:_}),title:r.unref(n)("sprint.color"),onClick:b=>g(b.currentTarget)},null,12,m2e)]),_:1},8,["color"]),r.createElementVNode("div",h2e,[r.createElementVNode("span",g2e,"Sprint "+r.toDisplayString(d.value)+":",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":y[2]||(y[2]=g=>l.value.label=g),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--label",placeholder:r.unref(n)("sprint.label")},null,8,v2e),[[r.vModelText,l.value.label]])]),r.createElementVNode("div",y2e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":y[3]||(y[3]=g=>l.value.startDate=g),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,l.value.startDate]]),y[11]||(y[11]=r.createElementVNode("span",null,"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":y[4]||(y[4]=g=>l.value.endDate=g),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,l.value.endDate]])]),r.createElementVNode("div",_2e,[r.createVNode(de,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!u.value,title:r.unref(n)("common.save"),onClick:C},null,8,["disabled","title"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:r.unref(n)("common.cancel"),onClick:h},null,8,["title"])])])):r.createCommentVNode("",!0),r.createElementVNode("div",C2e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,g=>(r.openBlock(),r.createBlock(s2e,{key:g.id,sprint:g,activities:p(g.id),"is-editable":t.isEditable,"planning-data":t.planningData,projects:t.projects,"business-day-hours":t.businessDayHours,onUpdateSprint:y[5]||(y[5]=_=>i("updateSprint",_)),onArchiveSprint:y[6]||(y[6]=_=>i("archiveSprint",_)),onUnarchiveSprint:y[7]||(y[7]=_=>i("unarchiveSprint",_)),onActivityChange:y[8]||(y[8]=_=>i("activityChange",_)),onUpdateActivity:y[9]||(y[9]=_=>i("updateActivity",_)),onOpenActivity:y[10]||(y[10]=_=>i("openActivity",_))},null,8,["sprint","activities","is-editable","planning-data","projects","business-day-hours"]))),128))]),c.value.length===0&&!a.value?(r.openBlock(),r.createElementBlock("div",b2e,r.toDisplayString(r.unref(n)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}});const w2e=te(k2e,[["__scopeId","data-v-83de1b43"]]),E2e={class:"ao-backlog-section"},S2e={class:"ao-backlog-section__header-left"},x2e={class:"ao-backlog-section__expand-icon"},A2e={class:"ao-backlog-section__name"},T2e={key:0,class:"ao-backlog-section__phase"},N2e={class:"ao-backlog-section__header-right"},D2e={class:"ao-backlog-section__count"},$2e={class:"ao-backlog-section__content"},B2e={key:1,class:"ao-backlog-section__empty"},M2e={class:"ao-backlog-section__drop-hint"},L2e=r.defineComponent({__name:"AoBacklogSection",props:{milestoneId:{},milestoneName:{},milestoneColor:{},phaseName:{},activities:{},isEditable:{type:Boolean,default:!1}},emits:["activityChange","openActivity","updateActivity"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=r.ref(!0),a=r.computed(()=>o.activities.length),l=r.computed(()=>{if(o.milestoneColor)return{"--milestone-color":o.milestoneColor}}),c=()=>{s.value=!s.value},d=p=>{if(!p.added)return;const m=o.milestoneId==="__no_milestone__"?null:o.milestoneId;i("activityChange",{id:p.added.element.id,sprintId:null,milestoneId:m})},u=p=>{i("openActivity",{activityId:p,activityIds:o.activities.map(m=>m.id)})},f=p=>{i("updateActivity",p)};return(p,m)=>(r.openBlock(),r.createElementBlock("div",E2e,[r.createElementVNode("div",{class:r.normalizeClass(["ao-backlog-section__header",{"ao-backlog-section__header--no-milestone":!t.milestoneColor}]),style:r.normalizeStyle(l.value),onClick:c},[r.createElementVNode("div",S2e,[r.createElementVNode("span",x2e,r.toDisplayString(s.value?"▾":"▸"),1),r.createElementVNode("span",A2e,r.toDisplayString(t.milestoneName),1),t.phaseName?(r.openBlock(),r.createElementBlock("span",T2e,r.toDisplayString(t.phaseName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",N2e,[r.createElementVNode("span",D2e,r.toDisplayString(a.value)+" "+r.toDisplayString(a.value===1?r.unref(n)("backlog.activity"):r.unref(n)("backlog.activities")),1)])],6),r.withDirectives(r.createElementVNode("div",$2e,[t.activities.length>0?(r.openBlock(),r.createBlock(r.unref(Pn),{key:0,list:t.activities,class:"ao-backlog-section__draggable",group:"sprint-planning-activities","item-key":"id",handle:".ao-activity-inline__drag-handle",disabled:!t.isEditable,"ghost-class":"ao-backlog-section__ghost",onChange:d},{item:r.withCtx(({element:h})=>[r.createVNode(m0,{activity:h,"is-draggable":t.isEditable,"is-editable":t.isEditable,"show-milestone":!1,clickable:!0,onOpenActivity:u,onUpdateActivity:f},null,8,["activity","is-draggable","is-editable"])]),_:1},8,["list","disabled"])):(r.openBlock(),r.createElementBlock("div",B2e,[r.createElementVNode("span",M2e,r.toDisplayString(r.unref(n)("backlog.dropHere")),1)]))],512),[[r.vShow,s.value]])]))}});const V2e=te(L2e,[["__scopeId","data-v-d8949009"]]),O2e={class:"ao-backlog"},I2e={class:"ao-backlog__header"},P2e={class:"ao-backlog__count"},F2e={key:0,class:"ao-backlog__sections"},R2e={key:1,class:"ao-backlog__empty"},U2e=r.defineComponent({__name:"AoBacklog",props:{activities:{},isEditable:{type:Boolean,default:!1}},emits:["activityChange","updateActivity","openActivity"],setup(t,{emit:e}){const{t:n}=Ge(),o=t,i=e,s=r.computed(()=>o.activities.filter(l=>{var u,f,p,m;if(l.sprint||l.active===!1)return!1;const c=((f=(u=l.status)==null?void 0:u.name)==null?void 0:f.toLowerCase())??"",d=((m=(p=l.devStatus)==null?void 0:p.name)==null?void 0:m.toLowerCase())??"";return!(c==="done"||d==="done")})),a=r.computed(()=>{var u;const l=new Map,c=new Map;let d=0;for(const f of o.activities){const p=((u=f.milestone)==null?void 0:u.id)??"__no_milestone__";c.has(p)||(c.set(p,d),d+=1)}for(const f of s.value){const p=f.milestone,m=p==null?void 0:p.phase,h=(p==null?void 0:p.id)??"__no_milestone__",C=l.get(h);if(C){C.activities.push(f);continue}l.set(h,{milestoneId:h,milestoneName:(p==null?void 0:p.name)??n("backlog.noMilestone"),milestoneColor:(p==null?void 0:p.color)||void 0,phaseName:m==null?void 0:m.name,activities:[f]})}return Array.from(l.values()).sort((f,p)=>{const m=c.get(f.milestoneId)??Number.MAX_SAFE_INTEGER,h=c.get(p.milestoneId)??Number.MAX_SAFE_INTEGER;return m-h})});return(l,c)=>(r.openBlock(),r.createElementBlock("section",O2e,[r.createElementVNode("div",I2e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(n)("backlog.title")),1),r.createElementVNode("span",P2e,r.toDisplayString(s.value.length),1)]),a.value.length>0?(r.openBlock(),r.createElementBlock("div",F2e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,d=>(r.openBlock(),r.createBlock(V2e,{key:d.milestoneId,"milestone-id":d.milestoneId,"milestone-name":d.milestoneName,"milestone-color":d.milestoneColor,"phase-name":d.phaseName,activities:d.activities,"is-editable":t.isEditable,onActivityChange:c[0]||(c[0]=u=>i("activityChange",u)),onUpdateActivity:c[1]||(c[1]=u=>i("updateActivity",u)),onOpenActivity:c[2]||(c[2]=u=>i("openActivity",u))},null,8,["milestone-id","milestone-name","milestone-color","phase-name","activities","is-editable"]))),128))])):(r.openBlock(),r.createElementBlock("div",R2e,r.toDisplayString(r.unref(n)("backlog.empty")),1))]))}});const z2e=te(U2e,[["__scopeId","data-v-c1e30a42"]]),H2e={class:"ao-sprint-planning"},j2e={class:"ao-sprint-planning__sprint"},q2e={class:"ao-sprint-planning__backlog"},W2e=r.defineComponent({__name:"AoSprintPlanning",props:{sprints:{},activities:{},selectedActivity:{default:void 0},isEditable:{type:[Boolean,String],default:!1},users:{default:()=>[]},userId:{default:void 0},statuses:{default:()=>[]},devStatuses:{default:()=>[]},isTaskCheckable:{type:Function,default:void 0},attachmentEnabled:{type:Boolean,default:!0},timeTrackingData:{default:()=>({})},loadAttachmentPreview:{type:Function,default:void 0},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},emits:["updateSprint","archiveSprint","unarchiveSprint","createSprint","activityChange","selectActivity","updateActivity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","fetchHistory"],setup(t,{emit:e}){const n=t,o=e,i=r.ref(null),s=r.ref([]),a=r.computed(()=>i.value?s.value.indexOf(i.value):-1),l=r.computed(()=>a.value>0),c=r.computed(()=>a.value>=0&&a.value<s.value.length-1),d=r.computed(()=>{var g,_;const y=(g=n.selectedActivity)==null?void 0:g.milestone;return y?`${((_=y.phase)==null?void 0:_.name)??""} / ${y.name??""}`:""}),u=r.computed(()=>{var g;const y=(g=n.selectedActivity)==null?void 0:g.project;return y?[y]:[]}),f=y=>{i.value=y,o("selectActivity",y)},p=y=>{s.value=y.activityIds,f(y.activityId)},m=()=>{s.value=[],f(null)},h=()=>{l.value&&f(s.value[a.value-1])},C=()=>{c.value&&f(s.value[a.value+1])},v=y=>{if(!i.value)return;const g=y.target;g instanceof HTMLInputElement||g instanceof HTMLTextAreaElement||g instanceof HTMLSelectElement||g.isContentEditable||(y.key==="ArrowLeft"?(y.preventDefault(),y.stopImmediatePropagation(),h()):y.key==="ArrowRight"?(y.preventDefault(),y.stopImmediatePropagation(),C()):y.key==="Escape"&&(y.preventDefault(),y.stopImmediatePropagation(),m()))};return r.onMounted(()=>{window.addEventListener("keydown",v)}),r.onUnmounted(()=>{window.removeEventListener("keydown",v)}),(y,g)=>{var _;return r.openBlock(),r.createElementBlock("div",H2e,[r.createElementVNode("div",j2e,[r.createVNode(w2e,{sprints:t.sprints,activities:t.activities,"is-editable":t.isEditable,"planning-data":t.planningData,projects:t.projects,"business-day-hours":t.businessDayHours,onUpdateSprint:g[0]||(g[0]=b=>o("updateSprint",b)),onArchiveSprint:g[1]||(g[1]=b=>o("archiveSprint",b)),onUnarchiveSprint:g[2]||(g[2]=b=>o("unarchiveSprint",b)),onCreateSprint:g[3]||(g[3]=b=>o("createSprint",b)),onActivityChange:g[4]||(g[4]=b=>o("activityChange",b)),onUpdateActivity:g[5]||(g[5]=b=>o("updateActivity",b)),onOpenActivity:p},null,8,["sprints","activities","is-editable","planning-data","projects","business-day-hours"])]),r.createElementVNode("div",q2e,[r.createVNode(z2e,{activities:t.activities,"is-editable":t.isEditable,onActivityChange:g[6]||(g[6]=b=>o("activityChange",b)),onUpdateActivity:g[7]||(g[7]=b=>o("updateActivity",b)),onOpenActivity:p},null,8,["activities","is-editable"])]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[i.value&&t.selectedActivity?(r.openBlock(),r.createBlock(_l,{key:0,activity:t.selectedActivity,"dev-statuses":t.devStatuses,"milestone-id":(_=t.selectedActivity.milestone)==null?void 0:_.id,"template-activities":t.activities,users:t.users,"user-id":t.userId,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,breadcrumbs:d.value,"is-editable":t.isEditable,"attachment-enabled":t.attachmentEnabled,projects:u.value,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":t.loadAttachmentPreview,sprints:t.sprints,onClose:m,"onUpdate:activity":g[8]||(g[8]=b=>o("updateActivity",b)),onAddSubtask:g[9]||(g[9]=b=>o("addSubtask",b)),onUpdateSubtask:g[10]||(g[10]=b=>o("updateSubtask",b)),onDeleteSubtask:g[11]||(g[11]=b=>o("deleteSubtask",b)),onAddFiles:g[12]||(g[12]=b=>o("addFiles",b)),onRemoveFile:g[13]||(g[13]=b=>o("removeFile",b)),onAddComment:g[14]||(g[14]=b=>o("addComment",b)),onUpdateComment:g[15]||(g[15]=b=>o("updateComment",b)),onRemoveComment:g[16]||(g[16]=b=>o("removeComment",b)),onFetchHistory:g[17]||(g[17]=b=>o("fetchHistory"))},null,8,["activity","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints"])):r.createCommentVNode("",!0)]))])}}});const Z2e=te(W2e,[["__scopeId","data-v-eef67722"]]);exports.AoAuditConfigTable=bve;exports.AoAvatar=Qt;exports.AoCardFeed=Ed;exports.AoCheckboxField=p0;exports.AoColorPicker=ai;exports.AoFeed=iu;exports.AoField=f0;exports.AoHistory=i0;exports.AoInputField=Q0e;exports.AoMultiselect=pt;exports.AoProjectPhases=wd;exports.AoSprintPlanning=Z2e;exports.AoTabBar=ks;exports.AoTemplateDetails=s0;exports.AoTemplates=w0;exports.AoTemplatesList=d0;exports.EstimationUnit=Vp;exports.TemplateItemTypeEnum=Lp;exports.activityFeedRoutes=Ro;exports.activityFeedStatus=t5;exports.durationTypes=e5;exports.feedFilterTypes=ln;exports.getProjectOverviewRoutes=G0e;exports.getTemplateRoutes=K0e;exports.listUpdateTypes=n5;exports.milestoneStatus=Hi;exports.projectOverviewRoutes=Pe;exports.ruleComparators=$p;exports.ruleDurationUnits=Mp;exports.ruleTriggerTypes=Bp;exports.templateItemType=qe;exports.templateRouteNames=qo;