@26lights/orcha 0.42.271 → 0.42.273
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 +2 -2
- package/dist/orcha.css +1 -1
- package/dist/orcha.es.js +279 -281
- package/dist/orcha.umd.js +9 -9
- package/package.json +1 -1
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 Bme(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 Mme(t,e){const n=kd(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=Bme(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 Lme=["onKeydown"],Vme={class:"ao-modal ao-bulk-insert-modal"},Ome={class:"ao-modal__header"},Ime={class:"ao-modal__header-meta"},Pme={class:"ao-modal__title-group"},Fme={class:"ao-modal__body ao-bulk-insert-modal__body"},Rme={key:0,class:"ao-bulk-insert-modal__intro"},Ume=["placeholder","disabled"],zme={key:1,class:"ao-bulk-insert-modal__errors"},Hme={key:2,class:"ao-bulk-insert-modal__count"},jme={class:"ao-bulk-insert-modal__help"},qme={class:"ao-bulk-insert-modal__help-title"},Wme={class:"ao-bulk-insert-modal__help-list"},Zme={class:"ao-bulk-insert-modal__help-entity"},Kme={class:"ao-bulk-insert-modal__help-rule"},Gme={class:"ao-bulk-insert-modal__footer"},wd=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}=Ye(),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(()=>kd(n.rootType)),u=r.computed(()=>Mme(s.value,n.rootType)),f=b=>String(i(l[b])),p=r.computed(()=>`${$me(n.rootType,f).split(`
|
|
60
60
|
`).map(w=>w.trim()?`${w} 1`:w).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=E=>E.reduce((w,S)=>w+1+b(S.children??[]),0);return b(u.value.data)});r.watch(()=>n.open,async b=>{var E;b&&(s.value="",await r.nextTick(),(E=a.value)==null||E.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,E)=>(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",Vme,[r.createElementVNode("div",Ome,[r.createElementVNode("div",Ime,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:v})]),r.createElementVNode("header",Pme,[r.createVNode(mt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",Fme,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(y,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",Rme,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:a,"onUpdate:modelValue":E[0]||(E[0]=w=>s.value=w),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,Ume),[[r.vModelText,s.value]]),u.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",zme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.errors,w=>(r.openBlock(),r.createElementBlock("p",{key:`${w.line}-${w.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(i)("project.bulk.modal.lineError",{line:w.line,message:_(w)})),1))),128))])):s.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",Hme,r.toDisplayString(r.unref(i)("project.bulk.modal.count",{count:C.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",jme,[r.createElementVNode("span",qme,r.toDisplayString(r.unref(i)("project.bulk.modal.indentation")),1),r.createElementVNode("div",Wme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.levels,(w,S)=>(r.openBlock(),r.createElementBlock("div",{key:w,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",Zme,r.toDisplayString(f(w)),1),r.createElementVNode("span",Kme,r.toDisplayString(g(S)),1)]))),128))])]),r.createElementVNode("footer",Gme,[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,Lme)):r.createCommentVNode("",!0)]))}});function Ed(t,e){return(t.children??[]).filter(n=>n.type===e)}function Yme(t){return Ed(t,"task").map(e=>({name:e.name}))}function l0(t,e=[]){const n=t.filter(i=>i.type==="activity"),o=cu(e,n.length);return n.map((i,s)=>{const a=Yme(i);return{name:i.name,rank:o[s],...a.length?{tasks:a}:{}}})}function Jme(t,e){return l0(t,e)}function c0(t,e){const n=t.filter(i=>i.type==="milestone"),o=cu(e,n.length);return n.map((i,s)=>{const a=l0(Ed(i,"activity"));return{name:i.name,rank:o[s],...a.length?{activities:a}:{}}})}function Xme(t,e){const n=t.filter(i=>i.type==="phase"),o=cu(e,n.length);return n.map((i,s)=>{const a=c0(Ed(i,"milestone"),[]);return{name:i.name,rank:o[s],...a.length?{milestones:a}:{}}})}const Qme={class:"ao-mapping-card-project-phase__header"},ehe={class:"ao-card-project-item__title-line"},the={key:0,class:"ao-card-project-item-phase__estimation"},nhe={class:"ao-mapping-card-project-phase__footer"},ohe={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},rhe={class:"ao-mapping-card-project-phase__subitem"},ihe={class:"ao-mapping-card-project-phase__subitem"},she={key:0,class:"ao-mapping-card-project-phase__secondary"},ahe={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},lhe=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,E)=>b+(E.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 w;const E=(w=n.timeTrackingData)==null?void 0:w[b.id];return _+((E==null?void 0:E.timeSpent)||0)},0))||0)},0)),{t:l}=Ye(),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===ji.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(li,{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",ehe,[r.createVNode(mt,{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",the," ("+r.toDisplayString(d.value)+"/"+r.toDisplayString(s.value)+r.toDisplayString(c.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",nhe,[u.value?(r.openBlock(),r.createElementBlock("div",ohe,[r.createElementVNode("div",rhe,[r.createVNode(ke,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",ihe,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",she,[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",ahe,r.toDisplayString(r.unref(Fr)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",Qme,[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 che={class:"ao-project-phase"},uhe={key:0,class:"ao-project-phase__drag ao-card__drag"},dhe={key:1,class:"ao-project-phase__col-phase"},fhe={key:2,class:"ao-mapping-project-phase__col-phase"},phe={key:0,class:"ao-project-phase__col-milestones"},mhe=["title","onClick"],hhe=["onClick"],ghe=["onClick"],vhe={class:"ao-project-phase__milestones-list-footer"},yhe=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}=Ye(),o=t,i=e;r.watch(()=>o.phase.milestones,(x,N)=>{Yn(x,N)});const s=x=>{i("updatePhase",{id:o.phase.id,name:x})},a=x=>{i("updatePhase",{id:o.phase.id,deadline:x})},l=x=>{i("updatePhase",x)},c=r.computed(()=>o.phase.milestones.map(x=>KC(x,o.closedStatus))),d=x=>{const{name:N,rank:D}=Jo(c.value??[],"milestone",n);i("addMilestone",{name:N,rank:D,phaseId:x})},u=x=>{const N=n("template.defaultName.milestone",{idx:1}),D=cs(c.value??[]);i("addMilestone",{name:N,rank:D,phaseId:x})},f=x=>{i("updateMilestone",x)},p=x=>{i("archiveMilestone",x)},m=x=>{i("unarchiveMilestone",x)},h=x=>{i("archivePhase",x)},C=x=>{i("unarchivePhase",x)},v=x=>{"added"in x?i("updateMilestone",{id:x.added.element.id,phaseId:o.phase.id,rank:Pr(c.value,x.added.newIndex)}):"removed"in x||"moved"in x&&i("updateMilestone",{id:x.moved.element.id,rank:Pr(c.value,x.moved.newIndex)})},y=r.ref(!1),g=r.ref(!1),_=x=>{g.value=!0;const N=c0(x,o.phase.milestones??[]);i("bulkAddMilestone",{phaseId:o.phase.id,milestones:N,onSuccess:()=>{g.value=!1,y.value=!1},onError:()=>{g.value=!1}})};r.watch(y,x=>{x&&(g.value=!1)});const b=Xo.useRoute(),E=r.computed(()=>b.path.includes("/mapping")),w=r.computed(()=>{var x;return o.phase.id===((x=b.params)==null?void 0:x.phaseId)});r.ref(!1);const S=r.computed(()=>{var x;return o.phase.id!==((x=b.params)==null?void 0:x.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:YC(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(x,N)=>(r.openBlock(),r.createElementBlock("li",che,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(S.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",uhe,[r.createVNode(ke,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),E.value?(r.openBlock(),r.createElementBlock("div",fhe,[r.createVNode(lhe,{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",dhe,[r.createVNode(ume,{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),E.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",phe,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(S.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":w.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:D})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:x.$t("project.milestone.add"),onClick:D},[r.createVNode(ke,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,mhe)]),menu:r.withCtx(({close:D})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{D(),u(t.phase.id)}},r.toDisplayString(x.$t("project.bulk.menu.single")),9,hhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{D(),y.value=!0}},r.toDisplayString(x.$t("project.bulk.menu.bulkInsert")),9,ghe)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(On),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},x.$attrs,{onChange:v}),{item:r.withCtx(({element:D})=>{var I;return[r.createVNode(xme,{id:D.id,name:D.name,color:D.color,"phase-color":t.phase.color,activities:D.activities,deadline:D.deadline,active:D.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":D.id===((I=x.$route.params)==null?void 0:I.milestoneId),assignee:D.assignee,important:D.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:U=>!t.readonly&&x.$router.push({name:r.unref(Pe).milestone,params:{phaseId:t.phase.id,milestoneId:D.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",vhe,[t.isEditable?(r.openBlock(),r.createBlock(Ao,{key:0,label:x.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:N[0]||(N[0]=D=>d(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),y.value?(r.openBlock(),r.createBlock(wd,{key:1,open:y.value,"onUpdate:open":N[1]||(N[1]=D=>y.value=D),title:x.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":g.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}});const _he={class:"ao-project__phases"},Che={key:0,class:"ao-project-phase__phases-list-footer"},bhe={class:"ao-project-phase__col-phase"},Sd=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)=>{Yn(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=ls(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",_he,[r.createVNode(r.unref(On),{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(yhe,{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",Che,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",bhe,[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 khe={class:"ao-add-template-modal__form-body"},whe={class:"field__row"},Ehe={class:"ao-add-template-modal__form-footer"},u0=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(mt,{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",khe,[r.createElementVNode("div",whe,[r.createVNode(vt,{value:s.value,options:i.value,detached:!0,onChange:a},null,8,["value","options"])])]),r.createElementVNode("footer",Ehe,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}});const She={class:"ao-save-template-modal__form-body"},xhe={class:"field__row"},Ahe={class:"ao-field ao-field--inline"},The={class:"ao-field__label"},Nhe={class:"ao-save-template-modal__phases"},Dhe={class:"ao-field__label"},$he={class:"ao-save-template-modal__phases-list"},Bhe=["value"],Mhe={class:"ao-save-template-modal__form-footer"},d0=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(mt,{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",She,[r.createElementVNode("div",xhe,[r.createElementVNode("label",Ahe,[r.createElementVNode("span",The,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",Nhe,[r.createElementVNode("div",Dhe,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",$he,[(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,Bhe),[[r.vModelCheckbox,s.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",Mhe,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:a},null,8,["label"])])],32)]),_:1}))}});const Lhe={class:"ao-project"},Vhe=["onClick"],Ohe=["onClick"],Ihe={class:"ao-project__body"},Phe=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}=Ye(),o=t,i=e,s=r.computed(()=>o.phases.flatMap(R=>R.milestones)),a=()=>{const{name:R,rank:se}=Jo(o.phases,"phase",n);i("addPhase",{name:R,rank:se,projectId:o.project.id})},l=()=>{const R=n("template.defaultName.phase",{idx:1}),se=cs(o.phases);i("addPhase",{name:R,rank:se,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)},E=R=>{i("unarchiveActivity",R)},w=R=>{i("addSubtask",R)},S=R=>{i("updateSubtask",R)},x=R=>{i("deleteSubtask",R)},N=r.computed(()=>s.value.flatMap(R=>R.activities)),D=r.computed(()=>o.devStatuses??[]),I=r.computed(()=>o.sprints??[]),U=R=>{i("addFiles",R)},F=R=>{i("removeFile",R)},T=R=>{i("addComment",R)},$=R=>{i("updateComment",R)},k=R=>{i("removeComment",R)},B=r.ref(!1),M=r.ref(!1),V=r.ref(!1),K=r.ref(!1),re=(R,se)=>{i("applyTemplate",{templateId:R,projectId:se}),B.value=!1},te=(R,se)=>{var Se;const Ee=(Se=o.templates)==null?void 0:Se.at(-1),ze=Ee?Qe.LexoRank.parse(Ee.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:R,rank:ze.format(),phaseIds:se}),M.value=!1},be=R=>{K.value=!0;const se=Xme(R,o.phases);i("bulkAddPhase",{projectId:o.project.id,phases:se,onSuccess:()=>{K.value=!1,V.value=!1},onError:()=>{K.value=!1}})};r.watch(V,R=>{R&&(K.value=!1)});const ie=Xo.useRouter(),oe=r.ref("overview"),H=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(oe,R=>{R==="feed"?(ie.push({name:Pe.feed}),console.log("Navigating to feed...")):R==="dev"?(ie.push({name:Pe.dev}),console.log("Navigating to dev...")):R==="overview"?(ie.push({name:Pe.project}),console.log("Navigating to feed...")):R==="mapping"&&(ie.push({name:Pe.mapping}),console.log("Navigating to feed..."))}),(R,se)=>{var ze;const Ee=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",Lhe,[r.createVNode(us,null,{primary:r.withCtx(()=>[r.createVNode(ws,{modelValue:oe.value,"onUpdate:modelValue":se[0]||(se[0]=Se=>oe.value=Se),tabs:H},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:se[1]||(se[1]=Se=>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:Se})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:Se},null,8,["label","onClick"])]),menu:r.withCtx(({close:Se})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Se(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,Vhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Se(),V.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,Ohe)]),_: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:se[2]||(se[2]=Se=>M.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:se[3]||(se[3]=Se=>B.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Ihe,[r.createVNode(Sd,{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(Ee,{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:se[4]||(se[4]=Se=>R.$router.push({name:r.unref(Pe).project})),onUpdateMilestone:h,onAddActivity:y,onBulkAddActivity:g,onUpdateActivity:_,onArchiveActivity:b,onUnarchiveActivity:E},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(Ee,{name:"modal",activities:N.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":D.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:w,onUpdateSubtask:S,onDeleteSubtask:x,onAddFiles:U,onRemoveFile:F,onAddComment:T,onUpdateComment:$,onRemoveComment:k,onFetchHistory:se[5]||(se[5]=()=>i("fetchHistory"))},{default:r.withCtx(({Component:Se})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(Se),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"},[M.value?(r.openBlock(),r.createBlock(d0,{key:0,phases:t.phases,onClose:se[6]||(se[6]=Se=>M.value=!1),onSave:te},null,8,["phases"])):r.createCommentVNode("",!0),B.value?(r.openBlock(),r.createBlock(u0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:se[7]||(se[7]=Se=>B.value=!1),onApply:re},null,8,["project-id","templates"])):r.createCommentVNode("",!0),V.value?(r.openBlock(),r.createBlock(wd,{key:2,open:V.value,"onUpdate:open":se[8]||(se[8]=Se=>V.value=Se),title:R.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":K.value,onSubmit:be},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}});const Fhe=["disabled"],Rhe={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",Rhe,r.toDisplayString(t.priority),1),s[0]||(s[0]=r.createElementVNode("span",{class:"ao-priority-badge__hover"},"+",-1))],10,Fhe)):r.createCommentVNode("",!0)}});const Uhe={class:"ao-card-feed__header"},zhe={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},Hhe={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},jhe={class:"ao-card-feed__body"},qhe={key:0,class:"ao-card-feed__breadcrumbs"},Whe={class:r.normalizeClass(["ao-card-feed__title-group"])},Zhe={class:"ao-card-feed__title-line"},Khe={key:0,class:"ao-card-feed__slug"},Ghe={key:1,class:"ao-card-feed__deadline"},Yhe={class:"ao-card-feed__footer"},Jhe={class:"ao-card-feed__footer-row"},Xhe={class:"ao-assignees"},Qhe={key:0,class:"ao-assignee"},ege=["title"],tge={key:2,class:"ao-card-feed__subitems"},nge={key:0,class:"ao-card-feed__subitem"},oge={class:"ao-card-feed__subitem"},rge={key:1,class:"ao-card-feed__subitem"},ige={class:"ao-card-feed__subitem"},sge={class:"ao-card-feed__timer-wrapper"},age={class:"ao-card-feed__footer-row"},lge={key:0,class:"ao-card-feed__progress-wrapper"},cge={class:"ao-card-feed__subitem"},uge={class:"ao-card-feed__subitem"},xd=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(()=>Fr(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",Uhe,[i.value?(r.openBlock(),r.createBlock(Hi,{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",zhe,[t.isPrivate?(r.openBlock(),r.createBlock(ke,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(ke,{key:1,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),v.$slots.secondary?(r.openBlock(),r.createElementBlock("div",Hhe,[r.renderSlot(v.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",jhe,[l.value?(r.openBlock(),r.createElementBlock("span",qhe,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Whe,[r.createElementVNode("div",Zhe,[t.slug?(r.openBlock(),r.createElementBlock("span",Khe,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(mt,{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",Ghe,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",Yhe,[r.createElementVNode("div",Jhe,[r.createElementVNode("ul",Xhe,[(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",Qhe,[r.createVNode(Xt,{"user-name":r.unref(Xp)(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,ege)):r.createCommentVNode("",!0),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",tge,[t.comments?(r.openBlock(),r.createElementBlock("li",nge,[r.createVNode(ke,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",oge,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",rge,[r.createVNode(ke,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",ige,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",sge,[r.createVNode(ke,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",age,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",lge,[r.createElementVNode("div",cge,[r.createVNode(ke,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",uge,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 dge={key:0,class:"ao-project-milestone-details"},fge={class:"ao-project-milestone-details__header"},pge={class:"ao-project-milestone-details__content"},mge={key:1,class:"ao-project-milestone-details__placeholder"},hge={class:"ao-project-milestone"},gge={class:"ao-project-milestone__header"},vge={class:"ao-project-milestone__header_line"},yge={class:"ao-project-milestone__header-actions"},_ge={class:"ao-project-milestone__header_line"},Cge={class:"ao-project-milestone__title"},bge={key:0,class:"ao-fieldset ao-milestone__fieldset"},kge={class:"ao-field__row ao-milestone__field-row"},wge={class:"ao-field ao-field--inline"},Ege={class:"ao-field__row ao-milestone__field-row"},Sge={class:"ao-field ao-milestone__field-multiselect"},xge={class:"ao-milestone__color-actions"},Age=["onClick"],Tge=["title","onClick"],Nge=["onClick"],Dge=["onClick"],$ge={class:"ao-project-milestone__body"},Bge={key:0,class:"ao-project-milestone__footer"},Mge=["onClick"],Lge=["onClick"],Dp=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}=Ye(),o=t,i=e,s=k=>{var B;i("startTimer",k),(B=window.parent)==null||B.postMessage({type:"startTimer",data:k},"*")},a=r.ref(!1),l=r.ref(!1),c=()=>{a.value&&(l.value=!1),a.value=!a.value},d=r.computed(()=>{var k;return(k=o.phases)==null?void 0:k.find(B=>B.id===o.phaseId)}),u=r.computed(()=>{var k;return(k=o.phases)==null?void 0:k.flatMap(B=>B.milestones)}),f=r.computed(()=>{var k;return(k=u.value)==null?void 0:k.find(B=>B.id===o.milestoneId)}),p=r.computed(()=>{var k;return(k=f.value)==null?void 0:k.activities});r.watch(p,(k,B)=>{Yn(k,B)});const m=k=>{i("close",k)},h=()=>{const{name:k,rank:B}=Jo(p.value??[],"activity",n);i("addActivity",{milestoneId:o.milestoneId,name:k,rank:B,projectId:o.projectId})},C=()=>{const k=n("template.defaultName.activity",{idx:1}),B=cs(p.value??[]);i("addActivity",{milestoneId:o.milestoneId,name:k,rank:B,projectId:o.projectId})},v=r.ref(!1),y=r.ref(!1),g=k=>{y.value=!0;const B=Jme(k,p.value??[]);i("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:B,onSuccess:()=>{y.value=!1,v.value=!1},onError:()=>{y.value=!1}})};r.watch(v,k=>{k&&(y.value=!1)});const _=k=>{i("updateActivity",k)},b=k=>{p.value&&"moved"in k&&i("updateActivity",{id:k.moved.element.id,rank:Pr(p.value,k.moved.newIndex)})},E=r.computed({get:()=>{var k;return(k=f.value)==null?void 0:k.color},set:k=>{f.value&&i("updateMilestone",{id:f.value.id,color:k})}}),w=r.computed({get:()=>{var k;return((k=f.value)==null?void 0:k.deadline)??""},set:k=>{f.value&&i("updateMilestone",{id:f.value.id,deadline:k!=null&&k.length?k:null})}}),S=k=>o.closedStatus?uu(k,o.closedStatus):!1,x=r.computed(()=>{var k;return((k=o.users)==null?void 0:k.map(B=>({label:`${B.firstName} ${B.lastName}`,value:B.id,avatar:B.avatarUrl})))||[]}),N=r.computed({get(){var k,B;return(B=(k=f.value)==null?void 0:k.assignee)!=null&&B.id?[f.value.assignee.id]:[]},set(k){i("updateMilestone",{id:o.milestoneId,assigneeId:k[0]??null})}}),D=r.computed({get(){var k;return((k=f.value)==null?void 0:k.important)??!1},set(k){i("updateMilestone",{id:o.milestoneId,important:k})}}),I=r.computed(()=>{var k;return((k=f.value)==null?void 0:k.description)??""}),U=k=>{(k==null?void 0:k.target)instanceof Element&&k.target.closest("a")||o.isEditable&&(l.value=!0)},F=k=>{i("updateMilestone",{id:o.milestoneId,description:k.trim().length?k:null}),l.value=!1},T=()=>{l.value=!1};r.watch(()=>o.milestoneId,()=>{l.value=!1});const $=(k,B)=>{const M=k.currentTarget;M instanceof HTMLElement&&B(M)};return(k,B)=>{var M;return r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["ao-project-milestone-container",{"ao-project-milestone-container--expanded":a.value}])},[a.value?(r.openBlock(),r.createElementBlock("aside",dge,[r.createElementVNode("div",fge,[r.createVNode(mt,{title:k.$t("project.milestone.description.label"),level:5},null,8,["title"])]),r.createElementVNode("div",pge,[l.value?(r.openBlock(),r.createBlock(s0,{key:1,"initial-markdown":I.value,onSave:F,onCancel:T},null,8,["initial-markdown"])):(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-project-milestone-details__description",{"ao-project-milestone-details__description--editable":t.isEditable}]),onClick:U},[I.value?(r.openBlock(),r.createBlock(Mu,{key:0,content:I.value},null,8,["content"])):(r.openBlock(),r.createElementBlock("span",mge,r.toDisplayString(k.$t("project.milestone.description.placeholder")),1))],2))])])):r.createCommentVNode("",!0),r.createElementVNode("div",hge,[r.createElementVNode("header",gge,[r.createElementVNode("div",vge,[r.createElementVNode("div",yge,[r.createVNode(de,{"icon-name":a.value?"ChevronRight":"ChevronLeft",variant:"ghost",size:"sm",class:"ao-milestone__expand",title:a.value?k.$t("project.milestone.collapse"):k.$t("project.milestone.expand"),onClick:c},null,8,["icon-name","title"]),r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:m})])]),r.createElementVNode("div",_ge,[r.createElementVNode("div",Cge,[r.createVNode(mt,{title:((M=f.value)==null?void 0:M.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(ru,{modelValue:D.value,"onUpdate:modelValue":B[0]||(B[0]=V=>D.value=V),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:k.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),f.value?(r.openBlock(),r.createElementBlock("div",bge,[r.createElementVNode("div",kge,[r.createElementVNode("label",wge,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[1]||(B[1]=V=>w.value=V),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,w.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",Ege,[r.createElementVNode("label",Sge,[r.createVNode(vt,{modelValue:N.value,"onUpdate:modelValue":B[2]||(B[2]=V=>N.value=V),options:x.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:k.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:V,handleTagRemove:K})=>[r.createVNode(Xt,{"user-name":V.label,"avatar-url":V.avatar,"is-closable":!0,onClose:re=>K(V,re)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",xge,[r.createVNode(li,{color:E.value,"onUpdate:color":B[3]||(B[3]=V=>E.value=V)},{clickable:r.withCtx(({openPicker:V,bgColor:K})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:K}),class:"color-button",onClick:re=>$(re,V)},null,12,Age)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(Ba,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:V})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:k.$t("project.activity.add"),onClick:V},[r.createVNode(ke,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,Tge)]),menu:r.withCtx(({close:V})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),C()}},r.toDisplayString(k.$t("project.bulk.menu.single")),9,Nge),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),v.value=!0}},r.toDisplayString(k.$t("project.bulk.menu.bulkInsert")),9,Dge)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",$ge,[r.createVNode(r.unref(On),r.mergeProps({class:"ao-project-milestone__activities",list:p.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},k.$attrs,{onChange:b}),{item:r.withCtx(({element:V})=>{var K,re,te,be,ie;return[r.createVNode(xd,{id:V.id,name:V.name||V.id,"project-id":t.projectId,"phase-name":(K=d.value)==null?void 0:K.name,"milestone-name":(re=f.value)==null?void 0:re.name,"milestone-color":(te=f.value)==null?void 0:te.color,deadline:V.deadline,priority:V.priority,sprint:V.sprint,blocked:V.blocked,users:t.users,assignee:V.assignee,slug:V.slug,comments:(be=V.comments)==null?void 0:be.length,attachments:(ie=V.attachments)==null?void 0:ie.length,tasks:V.tasks,"is-editable":t.isEditable,"is-private":V.private,"is-closed":S(V),onClick:oe=>k.$router.push({name:r.unref(Pe).activity,params:{milestoneId:t.milestoneId,activityId:V.id}}),onUpdateActivity:_,onRemoveAssignee:()=>_({id:V.id,assigneeId:null}),onStartTimer:s},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&V.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:k.$t("archive"),onClick:r.withModifiers(()=>k.$emit("archiveActivity",{id:V.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!V.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:k.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>k.$emit("unarchiveActivity",{id:V.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",Bge,[r.createVNode(Ba,null,{trigger:r.withCtx(({open:V})=>[r.createVNode(Ao,{"icon-name":"Add",label:k.$t("project.activity.add"),onClick:V},null,8,["label","onClick"])]),menu:r.withCtx(({close:V})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),h()}},r.toDisplayString(k.$t("project.bulk.menu.single")),9,Mge),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),v.value=!0}},r.toDisplayString(k.$t("project.bulk.menu.bulkInsert")),9,Lge)]),_:1})])):r.createCommentVNode("",!0)]),v.value?(r.openBlock(),r.createBlock(wd,{key:0,open:v.value,"onUpdate:open":B[4]||(B[4]=V=>v.value=V),title:k.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":y.value,onSubmit:g},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])],2)}}});const Vge=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]=E=>o("createSprint",E)),onFetchHistory:g[1]||(g[1]=()=>o("fetchHistory"))},{default:r.withCtx(E=>[r.renderSlot(y.$slots,"default",r.normalizeProps(r.guardReactiveProps(E)))]),_: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)}}}),Oge={class:"ao-col-header"},Ige=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",Oge,[r.createVNode(mt,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(Hi,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}});function Pge(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function La(t){return typeof t=="function"?t():r.unref(t)}const Fge=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Rge=t=>t!=null,zi=()=>{};function Uge(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 zge(t,e={}){let n,o,i=zi;const s=l=>{clearTimeout(l),i(),i=zi};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 Hge(t,e=200,n={}){return Uge(zge(e,n),t)}function gc(t){var e;const n=La(t);return(e=n==null?void 0:n.$el)!=null?e:n}const jge=Fge?window:void 0;function qge(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function Wge(t){const e=qge();return r.computed(()=>(e.value,!!t()))}function Zge(t,e,n={}){const{root:o,rootMargin:i="0px",threshold:s=.1,window:a=jge,immediate:l=!0}=n,c=Wge(()=>a&&"IntersectionObserver"in a),d=r.computed(()=>{const h=La(t);return(Array.isArray(h)?h:[h]).map(gc).filter(Rge)});let u=zi;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=zi}},{immediate:l,flush:"post"}):zi,m=()=>{u(),p(),f.value=!1};return Pge(m),{isSupported:c,isActive:f,pause(){u(),f.value=!1},resume(){f.value=!0},stop:m}}const Kge={class:r.normalizeClass(["ao-list-kanban"])},Gge={class:"ao-list-kanban__header"},Yge=["title"],Jge={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},Xge={key:1,class:"ao-list-kanban__end"},Qge={key:0,class:"ao-list-kanban__no-more"},e0e={key:1,class:"ao-list-kanban__divider"},t0e={key:1,class:"ao-list-kanban__footer"},n0e=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);Zge(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:Pr(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:Pr(n.list,f.moved.newIndex)})},u=r.ref(!1);return(f,p)=>(r.openBlock(),r.createElementBlock("div",Kge,[t.title||f.$slots.header?r.renderSlot(f.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",Gge,[t.title?(r.openBlock(),r.createBlock(Ige,{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(ke,{name:"Add"})],8,Yge)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(On),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,E,w,S;return[r.createVNode(xd,{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:((E=m.rules)==null?void 0:E.length)||0,tasks:m.tasks,description:m.description,priority:m.priority,sprint:m.sprint,blocked:m.blocked,type:m.type,comments:(w=m.comments)==null?void 0:w.length,attachments:(S=m.attachments)==null?void 0:S.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":a(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[x=>a(m)&&c(x),()=>a(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>a(m)&&c({id:m.id,assigneeId:null}),onStartTimer:p[1]||(p[1]=x=>f.$emit("startTimer",x))},{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",Jge,[r.createVNode(ke,{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",Xge,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",Qge,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",e0e)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),f.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",t0e,[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 o0e={class:"ao-field ao-search-field"},r0e=["value","placeholder"],i0e=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=Hge(i,n.delay),a=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",o0e,[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,r0e),r.createVNode(ke,{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 s0e={class:"ao-sprint-metrics"},a0e=["onClick"],l0e={class:"ao-sprint-metrics__header-left"},c0e={class:"ao-sprint-metrics__icon"},u0e={class:"ao-sprint-metrics__title"},d0e={class:"ao-sprint-metrics__dates"},f0e={key:0,class:"ao-sprint-metrics__project"},p0e={class:"ao-sprint-metrics__advancement"},m0e={class:"ao-sprint-metrics__progress-bar"},h0e={class:"ao-sprint-metrics__percent"},g0e={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},v0e={class:"ao-sprint-metrics__tooltip-row"},y0e={class:"ao-sprint-metrics__tooltip-row"},_0e={class:"ao-sprint-metrics__tooltip-row"},C0e={class:"ao-sprint-metrics__tooltip-row"},b0e={class:"ao-sprint-metrics__tooltip-row"},k0e={class:"ao-sprint-metrics__tooltip-row"},w0e={class:"ao-sprint-metrics__tooltip-row"},E0e={class:"ao-sprint-metrics__content"},S0e={class:"ao-sprint-metrics__grid"},x0e={class:"ao-sprint-metrics__item"},A0e={class:"ao-sprint-metrics__label"},T0e={class:"ao-sprint-metrics__value"},N0e={key:0,class:"ao-sprint-metrics__tooltip"},D0e={class:"ao-sprint-metrics__tooltip-title"},$0e={class:"ao-sprint-metrics__item"},B0e={class:"ao-sprint-metrics__label"},M0e={class:"ao-sprint-metrics__value"},L0e={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},V0e={class:"ao-sprint-metrics__label"},O0e={class:"ao-sprint-metrics__input-row"},I0e=["value","placeholder","onInput"],P0e={class:"ao-sprint-metrics__unit"},F0e={key:0,class:"ao-sprint-metrics__secondary"},R0e={class:"ao-sprint-metrics__item"},U0e={class:"ao-sprint-metrics__label"},z0e={class:"ao-sprint-metrics__value"},H0e=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},setup(t){const e=T=>T.label?`Sprint ${T.number}: ${T.label}`:`Sprint ${T.number}`,n=t,{t:o}=Ye(),i=["Ok for prod","Done"],s=r.ref(new Set),a=r.ref({}),l=T=>{s.value.has(T)?s.value.delete(T):s.value.add(T)},c=T=>n.projects.find($=>$.id===T.projectId),d=T=>{var $;return(($=n.planningData[T])==null?void 0:$.plannedManDays)??0},u=T=>{var $;return(($=n.planningData[T])==null?void 0:$.remainingPlannedManDays)??0},f=T=>{var $;return(($=n.planningData[T])==null?void 0:$.users)??[]},p=T=>n.activities.filter($=>{var k;return((k=$.sprint)==null?void 0:k.id)===T}).reduce(($,k)=>$+(k.estimation??0),0),m=T=>n.activities.filter($=>{var B,M;if(((B=$.sprint)==null?void 0:B.id)!==T)return!1;const k=(M=$.devStatus)==null?void 0:M.name;return k&&i.includes(k)}).reduce(($,k)=>$+(k.estimation??0),0),h=T=>{const $=n.sprints.find(B=>B.id===T),k=$?c($):void 0;return(k==null?void 0:k.estimationUnit)==="hours"?"hours":"points"},C=(T,$)=>h(T)==="hours"?$*n.businessDayHours:$,v=T=>h(T)==="hours"?o("activity.estimationUnit.hoursShort"):o("activity.estimationUnit.pointsShort"),y=T=>{const $=C(T,d(T));return $<=0?0:p(T)/$},g=T=>{if(a.value[T]!==void 0)return a.value[T];const $=n.sprints.find(k=>k.id===T);if($){const k=c($);if((k==null?void 0:k.velocity)!==void 0&&k.velocity>0)return k.velocity}return 1},_=(T,$)=>{const k=parseFloat($);isNaN(k)||k<=0?delete a.value[T]:a.value[T]=k},b=T=>{const $=g(T);return $===void 0?0:C(T,d(T))*$},E=T=>{const $=b(T);return $<=0?null:p(T)/$},w=T=>{const $=E(T);return $===null?0:Math.round($*100)},S=T=>{const $=p(T);if($<=0)return 0;const k=m(T);return Math.round(k/$*100)},x=T=>{const $=p(T),k=m(T);return Math.max(0,$-k)},N=T=>{const $=C(T,u(T)),k=y(T);return $*k},D=T=>{const $=N(T),k=x(T);return $<=0&&k>0?!1:$<k},I=T=>T.toFixed(1),U=(T,$)=>`${T.toFixed(2)} pts / ${v($)}`,F=(T,$)=>{const k=new Date(T),B=new Date($),M={day:"numeric",month:"short"};return`${k.toLocaleDateString("en-UK",M)} – ${B.toLocaleDateString("en-UK",M)}`};return(T,$)=>(r.openBlock(),r.createElementBlock("div",s0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,k=>{var B;return r.openBlock(),r.createElementBlock("div",{key:k.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:M=>l(k.id)},[r.createElementVNode("div",l0e,[r.createElementVNode("span",c0e,r.toDisplayString(s.value.has(k.id)?"▸":"▾"),1),r.createElementVNode("span",u0e,r.toDisplayString(e(k)),1),r.createElementVNode("span",d0e," · "+r.toDisplayString(F(k.startDate,k.endDate)),1),!s.value.has(k.id)&&c(k)?(r.openBlock(),r.createElementBlock("span",f0e," · "+r.toDisplayString((B=c(k))==null?void 0:B.name),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__header-right",{"ao-sprint-metrics__header-right--behind":D(k.id)}])},[r.createElementVNode("div",p0e,[r.createElementVNode("div",m0e,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":D(k.id)}]),style:r.normalizeStyle({width:S(k.id)+"%"})},null,6)]),r.createElementVNode("span",h0e,r.toDisplayString(S(k.id))+"% ",1),r.createElementVNode("div",g0e,[$[7]||($[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",v0e,[$[0]||($[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(S(k.id))+"%",1)]),r.createElementVNode("span",y0e,[$[1]||($[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(I(m(k.id)))+" / "+r.toDisplayString(I(p(k.id)))+" pts ",1)]),r.createElementVNode("span",_0e,[$[2]||($[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(I(x(k.id)))+" pts",1)]),$[8]||($[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",C0e,[$[3]||($[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(I(N(k.id)))+" pts",1)]),r.createElementVNode("span",b0e,[$[4]||($[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(I(u(k.id)))+" MD",1)]),r.createElementVNode("span",k0e,[$[5]||($[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(U(y(k.id),k.id)),1)]),$[9]||($[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",w0e,[$[6]||($[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(D(k.id)?"Behind plan":"On track"),1)])])])],2)],8,a0e),r.withDirectives(r.createElementVNode("div",E0e,[r.createElementVNode("div",S0e,[r.createElementVNode("div",x0e,[r.createElementVNode("div",A0e,r.toDisplayString(r.unref(o)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",T0e,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":f(k.id).length>0}])},[r.createTextVNode(r.toDisplayString(I(d(k.id)))+" MD ",1),f(k.id).length>0?(r.openBlock(),r.createElementBlock("span",N0e,[r.createElementVNode("span",D0e,r.toDisplayString(I(d(k.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f(k.id),M=>(r.openBlock(),r.createElementBlock("span",{key:M.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString(M.fullName),1),r.createElementVNode("span",null,r.toDisplayString(I(M.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",$0e,[r.createElementVNode("div",B0e,r.toDisplayString(r.unref(o)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",M0e,r.toDisplayString(I(p(k.id)))+" pts ",1)]),r.createElementVNode("div",L0e,[r.createElementVNode("div",V0e,r.toDisplayString(r.unref(o)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",O0e,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:g(k.id),placeholder:r.unref(o)("sprintMetrics.targetVelocityPlaceholder"),onInput:M=>_(k.id,M.target.value)},null,40,I0e),r.createElementVNode("span",P0e," pts / "+r.toDisplayString(v(k.id)),1)]),y(k.id)>0?(r.openBlock(),r.createElementBlock("div",F0e,r.toDisplayString(r.unref(o)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(U(y(k.id),k.id)),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",R0e,[r.createElementVNode("div",U0e,r.toDisplayString(r.unref(o)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",z0e,[E(k.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(w(k.id))+"% · "+r.toDisplayString(I(p(k.id)))+" / "+r.toDisplayString(I(b(k.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!s.value.has(k.id)]])])}),128))]))}});const j0e=ne(H0e,[["__scopeId","data-v-f3ddff2c"]]),q0e={class:"ao-feed"},W0e={class:"ao-feed__filters"},Z0e={class:"ao-feed__body"},su=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},columnStatuses:{default:void 0},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}=Ye(),o=t,i=e;function s(z,ae){i("toast",z,ae)}const a=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.columnStatuses??o.statuses),c=r.computed(()=>o.feedMode==="dev"?a.value.filter(z=>z.activityType==="dev"):a.value),d=async(z,ae)=>{await i("selectActivity",z,ae)},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([z,ae,ve,fe],[He,De])=>{const Be=o.feedMode==="dev"?"devStatus":"status";u.value=Object.fromEntries(z.map(Fe=>[Fe.id,ae.filter(Ge=>{const Je=Ge[Be];return(Je==null?void 0:Je.id)===Fe.id})])),ve&&!f.value?(d(ve,null),f.value=!0):fe&&!f.value&&(d(null,fe),f.value=!0),p.value&&Yn(ae,De)},{immediate:!0});const h=r.computed(()=>{var z;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((z=o.selectedActivity.milestone.phase)==null?void 0:z.name)??""} / ${o.selectedActivity.milestone.name??""}`}),C=z=>{var Fe;const ae=o.feedMode==="dev"?o.activities.filter(Ge=>Ge.activityType==="dev"):o.activities,ve=ae==null?void 0:ae.at(-1),fe=ve?Qe.LexoRank.parse(ve.rank).genNext():Qe.LexoRank.middle(),He=((Fe=o.activities)==null?void 0:Fe.length)??0,De=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:He+1}),rank:fe.format(),...De?{statusDevId:z.id,type:"dev"}:{statusId:z.id}};if(o.filters.assigneeId.length>0&&(Be.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Be.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Ge=o.sprints.find(Je=>Je.id===o.filters.sprintId[0]);Ge&&(Be.sprintId=Ge.id,Be.projectId=Ge.projectId)}p.value=!0,i("addActivity",Be)},v=z=>{var Fe,Ge;const ae=o.feedMode==="dev"?"devStatus":"status",ve=((Fe=o.activities)==null?void 0:Fe.filter(Je=>{const Me=Je[ae];return(Me==null?void 0:Me.id)===z.id}))??[],fe=cs(ve),He=((Ge=o.activities)==null?void 0:Ge.length)??0,De=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:He+1}),rank:fe,...De?{statusDevId:z.id,type:"dev"}:{statusId:z.id}};if(o.filters.assigneeId.length>0&&(Be.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Be.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&&(Be.sprintId=Je.id,Be.projectId=Je.projectId)}p.value=!0,i("addActivity",Be)},y=(z,ae)=>{p.value=!1,i("update:filters",{...o.filters,[z]:ae})},g=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>g.value.map(z=>({value:z.id,label:z.name}))),b=r.computed(()=>o.sprints.map(z=>({value:z.id,label:n("activity.sprint.filterLabel",{number:z.number,label:z.label}),startDate:z.startDate,endDate:z.endDate,projectId:z.projectId}))),E=r.computed(()=>{const z=o.filters[ln.sprint]??[];return o.sprints.filter(ae=>z.includes(ae.id))}),w=r.computed(()=>{var ve;const z=o.filters[ln.project]??[],ae=(ve=o.project)!=null&&ve.id?[o.project.id]:[];return[...z,...ae]}),S=r.computed(()=>o.milestones.map(z=>{var ae;return{value:z.id,label:(ae=z.phase)!=null&&ae.name?`${z.phase.name} - ${z.name}`:z.name,color:z.color,important:z.important}}));r.computed(()=>{var z;return(z=o.activityTypes)==null?void 0:z.map(ae=>({value:ae.id,label:ae.name}))});const x=r.computed(()=>o.users.map(z=>({value:z.id,label:`${z.firstName} ${z.lastName}`,avatar:z.avatarUrl}))),N=z=>{o.selectedActivity&&i("update:activity",z)},D=z=>{i("update:activity",z)},I=z=>{i("archiveActivity",z)},U=z=>{i("unarchiveActivity",z)},F=z=>{var ae;i("startTimer",z),(ae=window.parent)==null||ae.postMessage({type:"startTimer",data:z},"*")},T=z=>{p.value=!1,i("update:searchText",z)},$=z=>{p.value=!1,i("clear:searchText",z)},k=z=>{o.selectedActivity&&i("addSubtask",z)},B=z=>{o.selectedActivity&&i("updateSubtask",z)},M=z=>{o.selectedActivity&&i("deleteSubtask",z)},V=z=>{i("addFiles",z)},K=z=>{i("removeFile",z)},re=z=>{o.selectedActivity&&i("addComment",{...z,activityId:o.selectedActivity.id})},te=z=>{const{id:ae}=o.selectedActivity||{};ae&&i("updateComment",z)},be=z=>{const{id:ae}=o.selectedActivity||{};ae&&i("removeComment",z)},ie=Xo.useRouter(),oe=Xo.useRoute(),H=r.ref("feed");r.watch(()=>oe.name,z=>{z===Ro.feed||z==="ActivityFeed"||z==="ActivityFeedWithActivity"?H.value="feed":z===Ro.dev||z==="ActivityFeedDev"||z==="ActivityFeedDevWithActivity"?H.value="dev":z===Pe.feed?H.value="feed":z===Pe.dev?H.value="dev":z===Pe.project?H.value="overview":z===Pe.mapping&&(H.value="mapping")},{immediate:!0});const R=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],se=r.computed(()=>Ee.value?R.filter(z=>z.value==="feed"||z.value==="dev"):R),Ee=r.computed(()=>!o.project&&oe.name&&(oe.name===Ro.feed||oe.name===Ro.dev||oe.name==="ActivityFeed"||oe.name==="ActivityFeedDev"||oe.name==="ActivityFeedWithActivity"||oe.name==="ActivityFeedDevWithActivity")),ze=r.computed(()=>Ee.value?Ro.feed:Pe.feed),Se=r.computed(()=>Ee.value?Ro.dev:Pe.dev),Ce=r.computed(()=>Pe.project),kt=r.computed(()=>Pe.mapping);return r.watch(H,z=>{z==="feed"?ie.push({name:ze.value}):z==="dev"?ie.push({name:Se.value}):z==="overview"?ie.push({name:Ce.value}):z==="mapping"&&ie.push({name:kt.value})}),(z,ae)=>{var ve;return r.openBlock(),r.createElementBlock("div",q0e,[r.createVNode(us,null,{primary:r.withCtx(()=>[r.createElementVNode("div",W0e,[r.createVNode(ws,{modelValue:H.value,"onUpdate:modelValue":ae[0]||(ae[0]=fe=>H.value=fe),tabs:se.value},null,8,["modelValue","tabs"]),r.createVNode(i0e,{"model-value":t.searchText,placeholder:z.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":T,onClear:$},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(vt,{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:z.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":ae[1]||(ae[1]=fe=>y(r.unref(ln).project,fe))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(vt,{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:z.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":ae[2]||(ae[2]=fe=>y(r.unref(ln).sprint,fe))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),r.createVNode(vt,{"model-value":t.filters[r.unref(ln).milestone],mode:"tags",options:S.value,"close-on-select":!1,"clear-on-select":!1,searchable:!0,disabled:w.value.length===0,class:"ao-feed__filter ao-feed__filter__milestones",placeholder:z.$t("feed.filters.milestone.placeholder"),"onUpdate:modelValue":ae[3]||(ae[3]=fe=>y(r.unref(ln).milestone,fe))},null,8,["model-value","options","disabled","placeholder"]),x.value.length?(r.openBlock(),r.createBlock(vt,{key:2,"model-value":t.filters[r.unref(ln).assignee],mode:"tags",options:x.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:z.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":ae[4]||(ae[4]=fe=>y(r.unref(ln).assignee,fe))},{tag:r.withCtx(({option:fe,handleTagRemove:He})=>[r.createVNode(Xt,{"user-name":fe.label,"avatar-url":fe.avatar,"is-closable":!0,onClose:De=>He(fe,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:z.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:ae[5]||(ae[5]=fe=>z.$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:z.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:ae[6]||(ae[6]=fe=>z.$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:z.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:ae[7]||(ae[7]=fe=>z.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&E.value.length>0?(r.openBlock(),r.createBlock(j0e,{key:0,sprints:E.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:g.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",Z0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,fe=>(r.openBlock(),r.createBlock(n0e,{key:fe.id,status:fe,list:u.value[fe.id],title:fe.name,"footer-label":z.$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(fe),onAddAtBeginning:()=>v(fe),onSelectActivity:d,onArchiveActivity:I,onUnarchiveActivity:U,onUpdateActivity:D,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":(ve=t.selectedActivity.milestone)==null?void 0:ve.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:ae[8]||(ae[8]=()=>d(null,null)),onFetchHistory:ae[9]||(ae[9]=()=>i("fetchHistory")),"onUpdate:activity":N,onAddSubtask:k,onUpdateSubtask:B,onDeleteSubtask:M,onAddFiles:V,onRemoveFile:K,onAddComment:re,onUpdateComment:te,onRemoveComment:be,onToast:s,onCreateSprint:ae[10]||(ae[10]=fe=>i("createSprint",fe))},{default:r.withCtx(fe=>[r.renderSlot(z.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(fe)))]),_: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 K0e={class:"ao-project-mapping"},G0e={class:"ao-project-mapping-mapping__body"},Y0e={class:"ao-project-mapping-mapping__phases"},J0e={key:0,class:"ao-project-mapping-mapping__image-wrapper"},X0e=["src","alt"],Q0e=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}=Ye(),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}),_=cs(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 w;const b=(w=o.templates)==null?void 0:w.at(-1),E=b?Qe.LexoRank.parse(b.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:g,rank:E.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",K0e,[r.createVNode(us,null,{primary:r.withCtx(()=>[r.createVNode(ws,{modelValue:v.value,"onUpdate:modelValue":_[0]||(_[0]=E=>v.value=E),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]=E=>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]=E=>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]=E=>f.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",G0e,[r.createElementVNode("div",Y0e,[r.createVNode(Sd,{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",J0e,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,X0e)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[p.value?(r.openBlock(),r.createBlock(d0,{key:0,phases:t.phases,onClose:_[4]||(_[4]=E=>p.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createBlock(u0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=E=>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"},eve=(t,e={})=>[{path:t,name:qo.TEMPLATES,redirect:{name:qo.TEMPLATES_LIST},...e,children:[{path:"",name:qo.TEMPLATES_LIST,component:f0},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:qo.TEMPLATE_DETAILS,component:a0,props:!0}]}],Pe={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},Ro={feed:"ActivityFeed",dev:"ActivityFeedDev"},tve=(t,e={})=>[{path:t,...e,redirect:{name:Pe.project},children:[{path:"",name:Pe.project,component:Phe,props:!0,children:[{path:":phaseId/:milestoneId",name:Pe.milestone,component:Dp,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Pe.activity,props:{default:!0,modal:!0},components:{default:Dp,modal:Vge}}]},{path:"feed",name:Pe.feed,component:su,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Pe.dev,component:su,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Pe.mapping,component:Q0e,props:!0}]}],nve={class:"ao-templates"},f0=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Ye(),o=t,i=e;r.watch(()=>o.templates,(d,u)=>{Yn(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:We.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{i("removeItem",{itemType:We.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=ls(d,o.templates??[]);i("updateItem",{itemType:We.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",nve,[r.createVNode(us,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(On),{"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(Cb,{id:f.id,title:f.name,phases:f.phases,milestones:(p=f.phases)!=null&&p.length?r.unref(jC)(f.phases):0,activities:f.phases?r.unref(qC)(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 ove={class:"ao-field__label"},p0=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",ove,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),rve=["type","value","disabled","readonly"],ive=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(p0,{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,rve)]),_:1},8,["label"]))}}),sve={class:"ao-field"},ave={class:"ao-field__label"},lve=["checked","disabled"],m0=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",sve,[r.createElementVNode("span",ave,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,lve)]))}}),cve={class:"ao-audit-config"},uve={key:0,class:"ao-audit-config__loading"},dve={key:1,class:"ao-audit-config__error"},fve={key:2,class:"ao-audit-config__empty"},pve={key:3,class:"ao-audit-config__table"},mve={class:"ao-audit-config__th ao-audit-config__th--table"},hve={class:"ao-audit-config__th ao-audit-config__th--audit"},gve={class:"ao-audit-config__th ao-audit-config__th--excluded"},vve={class:"ao-audit-config__td ao-audit-config__td--table"},yve={class:"ao-audit-config__table-name"},_ve={key:0,class:"ao-audit-config__schema"},Cve={class:"ao-audit-config__td ao-audit-config__td--audit"},bve={class:"ao-audit-config__checkbox"},kve={class:"ao-audit-config__td ao-audit-config__td--excluded"},wve={key:0,class:"ao-audit-config__disabled-note"},Eve={class:"ao-audit-config__option"},Sve=["title"],xve={key:0,class:"ao-audit-config__all-tracked"},Ave=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}=Ye(),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",cve,[t.loading?(r.openBlock(),r.createElementBlock("div",uve,r.toDisplayString(r.unref(i)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",dve,r.toDisplayString(r.unref(i)("audit.error",{message:t.error})),1)):s.value.length?(r.openBlock(),r.createElementBlock("table",pve,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",mve,r.toDisplayString(r.unref(i)("audit.tableHeader")),1),r.createElementVNode("th",hve,r.toDisplayString(r.unref(i)("audit.auditHeader")),1),r.createElementVNode("th",gve,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",vve,[r.createElementVNode("span",yve,r.toDisplayString(f.tableName),1),f.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",_ve,r.toDisplayString(f.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",Cve,[r.createElementVNode("div",bve,[r.createVNode(m0,{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",kve,[f.isEnabled?(r.openBlock(),r.createBlock(vt,{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",Eve,[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,Sve)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[f.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",xve,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",wve,r.toDisplayString(r.unref(i)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",fve,r.toDisplayString(r.unref(i)("audit.empty")),1))]))}});const Tve={key:0,class:"ao-activity-inline__drag-handle"},Nve=["onKeydown"],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={class:"ao-activity-inline__title"},Ive={class:"ao-activity-inline__name"},Pve={class:"ao-activity-inline__assignee"},Fve={key:1,class:"ao-activity-inline__unassigned"},Rve={class:"ao-activity-inline__estimation"},Uve={class:"ao-activity-inline__status"},zve={key:3,class:"ao-activity-inline__content ao-activity-inline--disabled"},Hve={class:"ao-activity-inline__title"},jve={class:"ao-activity-inline__name"},qve={class:"ao-activity-inline__assignee"},Wve={key:1},Zve={class:"ao-activity-inline__estimation"},Kve={class:"ao-activity-inline__status"},Gve=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}=Ye(),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",Tve,[r.createVNode(ke,{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",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(Xt,{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",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)],40,Nve)):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",Ove,[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",Ive,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",Pve,[t.activity.assignee?(r.openBlock(),r.createBlock(Xt,{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",Fve," — ")),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",Rve,[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",Uve,r.toDisplayString(c.value),1)]),_:1},8,["to"])):(r.openBlock(),r.createElementBlock("div",zve,[r.createElementVNode("div",Hve,[r.createElementVNode("span",jve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",qve,[t.activity.assignee?(r.openBlock(),r.createBlock(Xt,{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",Wve,"—")),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",Zve,[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",Kve,r.toDisplayString(c.value),1)]))],2))}});const h0=ne(Gve,[["__scopeId","data-v-76d2bf8e"]]),Yve={class:"ao-sprint-section__header-left"},Jve={class:"ao-sprint-section__expand-icon"},Xve={class:"ao-sprint-section__title"},Qve={key:0,class:"ao-sprint-section__archived-badge"},e2e={class:"ao-sprint-section__header-right"},t2e={class:"ao-sprint-section__dates"},n2e={class:"ao-sprint-section__meta"},o2e=["title"],r2e=["onClick"],i2e={class:"ao-sprint-section__edit-title"},s2e={class:"ao-sprint-section__fixed-number"},a2e={class:"ao-sprint-section__date-fields"},l2e={class:"ao-sprint-section__actions"},c2e={class:"ao-sprint-section__content"},u2e={key:0,class:"ao-sprint-section__empty"},d2e=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=k=>{k.added&&o("activityChange",{id:k.added.element.id,sprintId:n.sprint.id})},s=k=>{o("updateActivity",k)},a=k=>{o("openActivity",{activityId:k,activityIds:n.activities.map(B=>B.id)})},l=r.ref(!0),c=r.ref(!1),{t:d}=Ye(),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 k=Fr(n.sprint.startDate,"dd/MM/yy"),B=Fr(n.sprint.endDate,"dd/MM/yy");return`${k} – ${B}`}),m=r.computed(()=>n.activities.length),h=r.computed(()=>n.activities.reduce((k,B)=>k+(B.estimation??0),0)),C=r.computed(()=>{var k;return(k=n.planningData)==null?void 0:k[n.sprint.id]}),v=r.computed(()=>{var B;const k=n.projects.find(M=>M.id===n.sprint.projectId);return k||((B=n.activities.find(M=>M.project))==null?void 0:B.project)}),y=r.computed(()=>{var k;return((k=v.value)==null?void 0:k.velocity)??1}),g=r.computed(()=>{var k;return((k=v.value)==null?void 0:k.estimationUnit)??""}),_=r.computed(()=>{const k=C.value;return k!=null&&k.plannedManDays?g.value==="hours"?k.plannedManDays*n.businessDayHours:k.plannedManDays:null}),b=r.computed(()=>{const k=_.value;return k==null?null:k*y.value}),E=r.computed(()=>{const k=b.value;return k==null||k===0?null:Math.round(h.value/k*100)}),w=r.computed(()=>{const k=b.value;return k==null?!1:h.value>k}),S=r.computed(()=>{const k=b.value;if(k==null)return null;const B=Math.round(h.value*10)/10,M=Math.round(k*10)/10,V=E.value;return V!=null?`${B} / ${M} pts · ${V}%`:`${B} / ${M} pts`}),x=r.computed(()=>{const k=b.value;if(k==null)return;const B=g.value==="hours"?d("activity.estimationUnit.hours"):d("activity.estimationUnit.points"),M=g.value==="hours"?d("activity.estimationUnit.hoursShort"):d("activity.estimationUnit.pointsShort");return[`Estimated work: ${h.value} ${d("activity.estimationUnit.pointsShort")}`,`Planned capacity: ${_.value} ${B}`,`Velocity: ${y.value} ${d("activity.estimationUnit.pointsShort")} / ${M}`,`Sprint capacity: ${k} ${d("activity.estimationUnit.pointsShort")}`,`Load: ${E.value}%`].join(`
|
|
63
|
-
`)}),N=r.computed(()=>!!(u.value.startDate&&u.value.endDate)),D=()=>{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||""}},U=()=>{c.value=!1},F=()=>{N.value&&(o("updateSprint",{id:n.sprint.id,projectId:n.sprint.projectId,label:u.value.label||void 0,startDate:u.value.startDate,endDate:u.value.endDate,color:u.value.color||void 0}),c.value=!1)},T=()=>{window.confirm("Archive this sprint?")&&o("archiveSprint",{id:n.sprint.id,projectId:n.sprint.projectId})},$=()=>{o("unarchiveSprint",{id:n.sprint.id,projectId:n.sprint.projectId})};return(k,B)=>(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:B[6]||(B[6]=r.withModifiers(()=>{},["stop"]))},[r.createVNode(li,{color:u.value.color,"onUpdate:color":B[2]||(B[2]=M=>u.value.color=M)},{clickable:r.withCtx(({openPicker:M,bgColor:V})=>[r.createElementVNode("button",{class:"ao-sprint-section__color-trigger",style:r.normalizeStyle({backgroundColor:V}),title:"Sprint color",onClick:K=>M(K.currentTarget)},null,12,r2e)]),_:1},8,["color"]),r.createElementVNode("div",i2e,[r.createElementVNode("span",s2e," Sprint "+r.toDisplayString(t.sprint.number)+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[3]||(B[3]=M=>u.value.label=M),type:"text",class:"ao-sprint-section__input ao-sprint-section__input--label",placeholder:"Label"},null,512),[[r.vModelText,u.value.label]])]),r.createElementVNode("div",a2e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[4]||(B[4]=M=>u.value.startDate=M),type:"date",class:"ao-sprint-section__input ao-sprint-section__input--date"},null,512),[[r.vModelText,u.value.startDate]]),B[7]||(B[7]=r.createElementVNode("span",null,"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[5]||(B[5]=M=>u.value.endDate=M),type:"date",class:"ao-sprint-section__input ao-sprint-section__input--date"},null,512),[[r.vModelText,u.value.endDate]])]),r.createElementVNode("div",l2e,[r.createVNode(de,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!N.value,title:"Save",onClick:F},null,8,["disabled"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:"Cancel",onClick:U})])])):(r.openBlock(),r.createElementBlock("div",{key:0,class:"ao-sprint-section__header",onClick:D},[r.createElementVNode("div",Yve,[r.createElementVNode("span",Jve,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",Xve,r.toDisplayString(f.value),1),t.sprint.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",Qve," Archived "))]),r.createElementVNode("div",e2e,[r.createElementVNode("span",t2e,r.toDisplayString(p.value),1),r.createElementVNode("span",n2e,r.toDisplayString(m.value)+" "+r.toDisplayString(m.value===1?"activity":"activities"),1),S.value?(r.openBlock(),r.createElementBlock("span",{key:0,class:r.normalizeClass(["ao-sprint-section__capacity",{"ao-sprint-section__capacity--over":w.value}]),title:x.value},r.toDisplayString(S.value),11,o2e)):r.createCommentVNode("",!0),t.isEditable?(r.openBlock(),r.createElementBlock("div",{key:1,class:"ao-sprint-section__actions",onClick:B[1]||(B[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:B[0]||(B[0]=M=>t.sprint.active?T():$())},null,8,["label"])])):r.createCommentVNode("",!0)])])),r.withDirectives(r.createElementVNode("div",c2e,[r.createVNode(r.unref(On),{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:M})=>[r.createVNode(h0,{activity:M,"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",u2e," No activities ")):r.createCommentVNode("",!0)],512),[[r.vShow,l.value&&!c.value]])],2))}});const f2e=ne(d2e,[["__scopeId","data-v-f3ec7254"]]),p2e={class:"ao-sprint-list"},m2e={class:"ao-sprint-list__header"},h2e={class:"ao-sprint-list__title-group"},g2e={class:"ao-sprint-list__count"},v2e={class:"ao-sprint-list__actions"},y2e={key:0,class:"ao-sprint-list__toggle"},_2e={key:0,class:"ao-sprint-list__create"},C2e=["title","onClick"],b2e={class:"ao-sprint-list__create-title"},k2e={class:"ao-sprint-list__fixed-number"},w2e=["placeholder"],E2e={class:"ao-sprint-list__date-fields"},S2e={class:"ao-sprint-list__row-actions"},x2e={class:"ao-sprint-list__sections"},A2e={key:1,class:"ao-sprint-list__empty"},T2e=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}=Ye(),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",p2e,[r.createElementVNode("div",m2e,[r.createElementVNode("div",h2e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(n)("sprint.planning")),1),r.createElementVNode("span",g2e,r.toDisplayString(c.value.length),1)]),r.createElementVNode("div",v2e,[t.sprints.some(g=>!g.active)?(r.openBlock(),r.createElementBlock("label",y2e,[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",_2e,[r.createVNode(li,{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,C2e)]),_:1},8,["color"]),r.createElementVNode("div",b2e,[r.createElementVNode("span",k2e,"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,w2e),[[r.vModelText,l.value.label]])]),r.createElementVNode("div",E2e,[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",S2e,[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",x2e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,g=>(r.openBlock(),r.createBlock(f2e,{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",A2e,r.toDisplayString(r.unref(n)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}});const N2e=ne(T2e,[["__scopeId","data-v-0d65cf51"]]),D2e={class:"ao-backlog-section"},$2e={class:"ao-backlog-section__header-left"},B2e={class:"ao-backlog-section__expand-icon"},M2e={class:"ao-backlog-section__name"},L2e={key:0,class:"ao-backlog-section__phase"},V2e={class:"ao-backlog-section__header-right"},O2e={class:"ao-backlog-section__count"},I2e={class:"ao-backlog-section__content"},P2e={key:1,class:"ao-backlog-section__empty"},F2e={class:"ao-backlog-section__drop-hint"},R2e=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}=Ye(),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",D2e,[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",$2e,[r.createElementVNode("span",B2e,r.toDisplayString(s.value?"▾":"▸"),1),r.createElementVNode("span",M2e,r.toDisplayString(t.milestoneName),1),t.phaseName?(r.openBlock(),r.createElementBlock("span",L2e,r.toDisplayString(t.phaseName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",V2e,[r.createElementVNode("span",O2e,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",I2e,[t.activities.length>0?(r.openBlock(),r.createBlock(r.unref(On),{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(h0,{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",P2e,[r.createElementVNode("span",F2e,r.toDisplayString(r.unref(n)("backlog.dropHere")),1)]))],512),[[r.vShow,s.value]])]))}});const U2e=ne(R2e,[["__scopeId","data-v-d8949009"]]),z2e={class:"ao-backlog"},H2e={class:"ao-backlog__header"},j2e={class:"ao-backlog__count"},q2e={key:0,class:"ao-backlog__sections"},W2e={key:1,class:"ao-backlog__empty"},Z2e=r.defineComponent({__name:"AoBacklog",props:{activities:{},isEditable:{type:Boolean,default:!1}},emits:["activityChange","updateActivity","openActivity"],setup(t,{emit:e}){const{t:n}=Ye(),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",z2e,[r.createElementVNode("div",H2e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(n)("backlog.title")),1),r.createElementVNode("span",j2e,r.toDisplayString(s.value.length),1)]),a.value.length>0?(r.openBlock(),r.createElementBlock("div",q2e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,d=>(r.openBlock(),r.createBlock(U2e,{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",W2e,r.toDisplayString(r.unref(n)("backlog.empty")),1))]))}});const K2e=ne(Z2e,[["__scopeId","data-v-c1e30a42"]]),G2e={class:"ao-sprint-planning"},Y2e={class:"ao-sprint-planning__sprint"},J2e={class:"ao-sprint-planning__backlog"},X2e=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",G2e,[r.createElementVNode("div",Y2e,[r.createVNode(N2e,{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",J2e,[r.createVNode(K2e,{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 Q2e=ne(X2e,[["__scopeId","data-v-f4798bd5"]]);exports.AoAuditConfigTable=Ave;exports.AoAvatar=Xt;exports.AoCardFeed=xd;exports.AoCheckboxField=m0;exports.AoColorPicker=li;exports.AoFeed=su;exports.AoField=p0;exports.AoHistory=i0;exports.AoInputField=ive;exports.AoMultiselect=vt;exports.AoProjectPhases=Sd;exports.AoSprintPlanning=Q2e;exports.AoTabBar=ws;exports.AoTemplateDetails=a0;exports.AoTemplates=E0;exports.AoTemplatesList=f0;exports.EstimationUnit=Ip;exports.TemplateItemTypeEnum=Op;exports.activityFeedRoutes=Ro;exports.activityFeedStatus=n5;exports.durationTypes=t5;exports.feedFilterTypes=ln;exports.getProjectOverviewRoutes=tve;exports.getTemplateRoutes=eve;exports.listUpdateTypes=o5;exports.milestoneStatus=ji;exports.projectOverviewRoutes=Pe;exports.ruleComparators=Mp;exports.ruleDurationUnits=Vp;exports.ruleTriggerTypes=Lp;exports.templateItemType=We;exports.templateRouteNames=qo;
|
|
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=E=>E.reduce((w,S)=>w+1+b(S.children??[]),0);return b(u.value.data)});r.watch(()=>n.open,async b=>{var E;b&&(s.value="",await r.nextTick(),(E=a.value)==null||E.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,E)=>(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",Vme,[r.createElementVNode("div",Ome,[r.createElementVNode("div",Ime,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:v})]),r.createElementVNode("header",Pme,[r.createVNode(mt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",Fme,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(y,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",Rme,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:a,"onUpdate:modelValue":E[0]||(E[0]=w=>s.value=w),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,Ume),[[r.vModelText,s.value]]),u.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",zme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.errors,w=>(r.openBlock(),r.createElementBlock("p",{key:`${w.line}-${w.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(i)("project.bulk.modal.lineError",{line:w.line,message:_(w)})),1))),128))])):s.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",Hme,r.toDisplayString(r.unref(i)("project.bulk.modal.count",{count:C.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",jme,[r.createElementVNode("span",qme,r.toDisplayString(r.unref(i)("project.bulk.modal.indentation")),1),r.createElementVNode("div",Wme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.levels,(w,S)=>(r.openBlock(),r.createElementBlock("div",{key:w,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",Zme,r.toDisplayString(f(w)),1),r.createElementVNode("span",Kme,r.toDisplayString(g(S)),1)]))),128))])]),r.createElementVNode("footer",Gme,[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,Lme)):r.createCommentVNode("",!0)]))}});function Ed(t,e){return(t.children??[]).filter(n=>n.type===e)}function Yme(t){return Ed(t,"task").map(e=>({name:e.name}))}function l0(t,e=[]){const n=t.filter(i=>i.type==="activity"),o=cu(e,n.length);return n.map((i,s)=>{const a=Yme(i);return{name:i.name,rank:o[s],...a.length?{tasks:a}:{}}})}function Jme(t,e){return l0(t,e)}function c0(t,e){const n=t.filter(i=>i.type==="milestone"),o=cu(e,n.length);return n.map((i,s)=>{const a=l0(Ed(i,"activity"));return{name:i.name,rank:o[s],...a.length?{activities:a}:{}}})}function Xme(t,e){const n=t.filter(i=>i.type==="phase"),o=cu(e,n.length);return n.map((i,s)=>{const a=c0(Ed(i,"milestone"),[]);return{name:i.name,rank:o[s],...a.length?{milestones:a}:{}}})}const Qme={class:"ao-mapping-card-project-phase__header"},ehe={class:"ao-card-project-item__title-line"},the={key:0,class:"ao-card-project-item-phase__estimation"},nhe={class:"ao-mapping-card-project-phase__footer"},ohe={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},rhe={class:"ao-mapping-card-project-phase__subitem"},ihe={class:"ao-mapping-card-project-phase__subitem"},she={key:0,class:"ao-mapping-card-project-phase__secondary"},ahe={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},lhe=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,E)=>b+(E.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 w;const E=(w=n.timeTrackingData)==null?void 0:w[b.id];return _+((E==null?void 0:E.timeSpent)||0)},0))||0)},0)),{t:l}=Ye(),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===ji.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(li,{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",ehe,[r.createVNode(mt,{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",the," ("+r.toDisplayString(d.value)+"/"+r.toDisplayString(s.value)+r.toDisplayString(c.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",nhe,[u.value?(r.openBlock(),r.createElementBlock("div",ohe,[r.createElementVNode("div",rhe,[r.createVNode(ke,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",ihe,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",she,[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",ahe,r.toDisplayString(r.unref(Fr)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",Qme,[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 che={class:"ao-project-phase"},uhe={key:0,class:"ao-project-phase__drag ao-card__drag"},dhe={key:1,class:"ao-project-phase__col-phase"},fhe={key:2,class:"ao-mapping-project-phase__col-phase"},phe={key:0,class:"ao-project-phase__col-milestones"},mhe=["title","onClick"],hhe=["onClick"],ghe=["onClick"],vhe={class:"ao-project-phase__milestones-list-footer"},yhe=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}=Ye(),o=t,i=e;r.watch(()=>o.phase.milestones,(x,N)=>{Yn(x,N)});const s=x=>{i("updatePhase",{id:o.phase.id,name:x})},a=x=>{i("updatePhase",{id:o.phase.id,deadline:x})},l=x=>{i("updatePhase",x)},c=r.computed(()=>o.phase.milestones.map(x=>KC(x,o.closedStatus))),d=x=>{const{name:N,rank:D}=Jo(c.value??[],"milestone",n);i("addMilestone",{name:N,rank:D,phaseId:x})},u=x=>{const N=n("template.defaultName.milestone",{idx:1}),D=cs(c.value??[]);i("addMilestone",{name:N,rank:D,phaseId:x})},f=x=>{i("updateMilestone",x)},p=x=>{i("archiveMilestone",x)},m=x=>{i("unarchiveMilestone",x)},h=x=>{i("archivePhase",x)},C=x=>{i("unarchivePhase",x)},v=x=>{"added"in x?i("updateMilestone",{id:x.added.element.id,phaseId:o.phase.id,rank:Pr(c.value,x.added.newIndex)}):"removed"in x||"moved"in x&&i("updateMilestone",{id:x.moved.element.id,rank:Pr(c.value,x.moved.newIndex)})},y=r.ref(!1),g=r.ref(!1),_=x=>{g.value=!0;const N=c0(x,o.phase.milestones??[]);i("bulkAddMilestone",{phaseId:o.phase.id,milestones:N,onSuccess:()=>{g.value=!1,y.value=!1},onError:()=>{g.value=!1}})};r.watch(y,x=>{x&&(g.value=!1)});const b=Xo.useRoute(),E=r.computed(()=>b.path.includes("/mapping")),w=r.computed(()=>{var x;return o.phase.id===((x=b.params)==null?void 0:x.phaseId)});r.ref(!1);const S=r.computed(()=>{var x;return o.phase.id!==((x=b.params)==null?void 0:x.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:YC(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(x,N)=>(r.openBlock(),r.createElementBlock("li",che,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(S.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",uhe,[r.createVNode(ke,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),E.value?(r.openBlock(),r.createElementBlock("div",fhe,[r.createVNode(lhe,{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",dhe,[r.createVNode(ume,{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),E.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",phe,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(S.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":w.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:D})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:x.$t("project.milestone.add"),onClick:D},[r.createVNode(ke,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,mhe)]),menu:r.withCtx(({close:D})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{D(),u(t.phase.id)}},r.toDisplayString(x.$t("project.bulk.menu.single")),9,hhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{D(),y.value=!0}},r.toDisplayString(x.$t("project.bulk.menu.bulkInsert")),9,ghe)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(On),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},x.$attrs,{onChange:v}),{item:r.withCtx(({element:D})=>{var I;return[r.createVNode(xme,{id:D.id,name:D.name,color:D.color,"phase-color":t.phase.color,activities:D.activities,deadline:D.deadline,active:D.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":D.id===((I=x.$route.params)==null?void 0:I.milestoneId),assignee:D.assignee,important:D.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:U=>!t.readonly&&x.$router.push({name:r.unref(Pe).milestone,params:{phaseId:t.phase.id,milestoneId:D.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",vhe,[t.isEditable?(r.openBlock(),r.createBlock(Ao,{key:0,label:x.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:N[0]||(N[0]=D=>d(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),y.value?(r.openBlock(),r.createBlock(wd,{key:1,open:y.value,"onUpdate:open":N[1]||(N[1]=D=>y.value=D),title:x.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":g.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}});const _he={class:"ao-project__phases"},Che={key:0,class:"ao-project-phase__phases-list-footer"},bhe={class:"ao-project-phase__col-phase"},Sd=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)=>{Yn(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=ls(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",_he,[r.createVNode(r.unref(On),{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(yhe,{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",Che,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",bhe,[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 khe={class:"ao-add-template-modal__form-body"},whe={class:"field__row"},Ehe={class:"ao-add-template-modal__form-footer"},u0=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(mt,{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",khe,[r.createElementVNode("div",whe,[r.createVNode(vt,{value:s.value,options:i.value,detached:!0,onChange:a},null,8,["value","options"])])]),r.createElementVNode("footer",Ehe,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}});const She={class:"ao-save-template-modal__form-body"},xhe={class:"field__row"},Ahe={class:"ao-field ao-field--inline"},The={class:"ao-field__label"},Nhe={class:"ao-save-template-modal__phases"},Dhe={class:"ao-field__label"},$he={class:"ao-save-template-modal__phases-list"},Bhe=["value"],Mhe={class:"ao-save-template-modal__form-footer"},d0=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(mt,{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",She,[r.createElementVNode("div",xhe,[r.createElementVNode("label",Ahe,[r.createElementVNode("span",The,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",Nhe,[r.createElementVNode("div",Dhe,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",$he,[(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,Bhe),[[r.vModelCheckbox,s.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",Mhe,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:a},null,8,["label"])])],32)]),_:1}))}});const Lhe={class:"ao-project"},Vhe=["onClick"],Ohe=["onClick"],Ihe={class:"ao-project__body"},Phe=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}=Ye(),o=t,i=e,s=r.computed(()=>o.phases.flatMap(R=>R.milestones)),a=()=>{const{name:R,rank:se}=Jo(o.phases,"phase",n);i("addPhase",{name:R,rank:se,projectId:o.project.id})},l=()=>{const R=n("template.defaultName.phase",{idx:1}),se=cs(o.phases);i("addPhase",{name:R,rank:se,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)},E=R=>{i("unarchiveActivity",R)},w=R=>{i("addSubtask",R)},S=R=>{i("updateSubtask",R)},x=R=>{i("deleteSubtask",R)},N=r.computed(()=>s.value.flatMap(R=>R.activities)),D=r.computed(()=>o.devStatuses??[]),I=r.computed(()=>o.sprints??[]),U=R=>{i("addFiles",R)},F=R=>{i("removeFile",R)},T=R=>{i("addComment",R)},$=R=>{i("updateComment",R)},k=R=>{i("removeComment",R)},B=r.ref(!1),M=r.ref(!1),V=r.ref(!1),K=r.ref(!1),re=(R,se)=>{i("applyTemplate",{templateId:R,projectId:se}),B.value=!1},te=(R,se)=>{var Se;const Ee=(Se=o.templates)==null?void 0:Se.at(-1),ze=Ee?Qe.LexoRank.parse(Ee.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:R,rank:ze.format(),phaseIds:se}),M.value=!1},be=R=>{K.value=!0;const se=Xme(R,o.phases);i("bulkAddPhase",{projectId:o.project.id,phases:se,onSuccess:()=>{K.value=!1,V.value=!1},onError:()=>{K.value=!1}})};r.watch(V,R=>{R&&(K.value=!1)});const ie=Xo.useRouter(),oe=r.ref("overview"),H=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(oe,R=>{R==="feed"?(ie.push({name:Pe.feed}),console.log("Navigating to feed...")):R==="dev"?(ie.push({name:Pe.dev}),console.log("Navigating to dev...")):R==="overview"?(ie.push({name:Pe.project}),console.log("Navigating to feed...")):R==="mapping"&&(ie.push({name:Pe.mapping}),console.log("Navigating to feed..."))}),(R,se)=>{var ze;const Ee=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",Lhe,[r.createVNode(us,null,{primary:r.withCtx(()=>[r.createVNode(ws,{modelValue:oe.value,"onUpdate:modelValue":se[0]||(se[0]=Se=>oe.value=Se),tabs:H},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:se[1]||(se[1]=Se=>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:Se})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:Se},null,8,["label","onClick"])]),menu:r.withCtx(({close:Se})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Se(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,Vhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Se(),V.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,Ohe)]),_: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:se[2]||(se[2]=Se=>M.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:se[3]||(se[3]=Se=>B.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Ihe,[r.createVNode(Sd,{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(Ee,{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:se[4]||(se[4]=Se=>R.$router.push({name:r.unref(Pe).project})),onUpdateMilestone:h,onAddActivity:y,onBulkAddActivity:g,onUpdateActivity:_,onArchiveActivity:b,onUnarchiveActivity:E},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(Ee,{name:"modal",activities:N.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":D.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:w,onUpdateSubtask:S,onDeleteSubtask:x,onAddFiles:U,onRemoveFile:F,onAddComment:T,onUpdateComment:$,onRemoveComment:k,onFetchHistory:se[5]||(se[5]=()=>i("fetchHistory"))},{default:r.withCtx(({Component:Se})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(Se),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"},[M.value?(r.openBlock(),r.createBlock(d0,{key:0,phases:t.phases,onClose:se[6]||(se[6]=Se=>M.value=!1),onSave:te},null,8,["phases"])):r.createCommentVNode("",!0),B.value?(r.openBlock(),r.createBlock(u0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:se[7]||(se[7]=Se=>B.value=!1),onApply:re},null,8,["project-id","templates"])):r.createCommentVNode("",!0),V.value?(r.openBlock(),r.createBlock(wd,{key:2,open:V.value,"onUpdate:open":se[8]||(se[8]=Se=>V.value=Se),title:R.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":K.value,onSubmit:be},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}});const Fhe=["disabled"],Rhe={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",Rhe,r.toDisplayString(t.priority),1),s[0]||(s[0]=r.createElementVNode("span",{class:"ao-priority-badge__hover"},"+",-1))],10,Fhe)):r.createCommentVNode("",!0)}});const Uhe={class:"ao-card-feed__header"},zhe={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},Hhe={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},jhe={class:"ao-card-feed__body"},qhe={key:0,class:"ao-card-feed__breadcrumbs"},Whe={class:r.normalizeClass(["ao-card-feed__title-group"])},Zhe={class:"ao-card-feed__title-line"},Khe={key:0,class:"ao-card-feed__slug"},Ghe={key:1,class:"ao-card-feed__deadline"},Yhe={class:"ao-card-feed__footer"},Jhe={class:"ao-card-feed__footer-row"},Xhe={class:"ao-assignees"},Qhe={key:0,class:"ao-assignee"},ege=["title"],tge={key:2,class:"ao-card-feed__subitems"},nge={key:0,class:"ao-card-feed__subitem"},oge={class:"ao-card-feed__subitem"},rge={key:1,class:"ao-card-feed__subitem"},ige={class:"ao-card-feed__subitem"},sge={class:"ao-card-feed__timer-wrapper"},age={class:"ao-card-feed__footer-row"},lge={key:0,class:"ao-card-feed__progress-wrapper"},cge={class:"ao-card-feed__subitem"},uge={class:"ao-card-feed__subitem"},xd=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(()=>Fr(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",Uhe,[i.value?(r.openBlock(),r.createBlock(Hi,{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",zhe,[t.isPrivate?(r.openBlock(),r.createBlock(ke,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(ke,{key:1,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),v.$slots.secondary?(r.openBlock(),r.createElementBlock("div",Hhe,[r.renderSlot(v.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",jhe,[l.value?(r.openBlock(),r.createElementBlock("span",qhe,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Whe,[r.createElementVNode("div",Zhe,[t.slug?(r.openBlock(),r.createElementBlock("span",Khe,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(mt,{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",Ghe,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",Yhe,[r.createElementVNode("div",Jhe,[r.createElementVNode("ul",Xhe,[(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",Qhe,[r.createVNode(Xt,{"user-name":r.unref(Xp)(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,ege)):r.createCommentVNode("",!0),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",tge,[t.comments?(r.openBlock(),r.createElementBlock("li",nge,[r.createVNode(ke,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",oge,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",rge,[r.createVNode(ke,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",ige,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",sge,[r.createVNode(ke,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",age,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",lge,[r.createElementVNode("div",cge,[r.createVNode(ke,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",uge,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 dge={key:0,class:"ao-project-milestone-details"},fge={class:"ao-project-milestone-details__header"},pge={class:"ao-project-milestone-details__content"},mge={key:1,class:"ao-project-milestone-details__placeholder"},hge={class:"ao-project-milestone"},gge={class:"ao-project-milestone__header"},vge={class:"ao-project-milestone__header_line"},yge={class:"ao-project-milestone__header_line"},_ge={class:"ao-project-milestone__title"},Cge={key:0,class:"ao-fieldset ao-milestone__fieldset"},bge={class:"ao-field__row ao-milestone__field-row"},kge={class:"ao-field ao-field--inline"},wge={class:"ao-field__row ao-milestone__field-row"},Ege={class:"ao-field ao-milestone__field-multiselect"},Sge={class:"ao-milestone__color-actions"},xge=["onClick"],Age=["title","onClick"],Tge=["onClick"],Nge=["onClick"],Dge={class:"ao-project-milestone__body"},$ge={key:0,class:"ao-project-milestone__footer"},Bge=["onClick"],Mge=["onClick"],Dp=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}=Ye(),o=t,i=e,s=k=>{var B;i("startTimer",k),(B=window.parent)==null||B.postMessage({type:"startTimer",data:k},"*")},a=r.ref(!1),l=r.ref(!1),c=()=>{a.value&&(l.value=!1),a.value=!a.value},d=r.computed(()=>{var k;return(k=o.phases)==null?void 0:k.find(B=>B.id===o.phaseId)}),u=r.computed(()=>{var k;return(k=o.phases)==null?void 0:k.flatMap(B=>B.milestones)}),f=r.computed(()=>{var k;return(k=u.value)==null?void 0:k.find(B=>B.id===o.milestoneId)}),p=r.computed(()=>{var k;return(k=f.value)==null?void 0:k.activities});r.watch(p,(k,B)=>{Yn(k,B)});const m=k=>{i("close",k)},h=()=>{const{name:k,rank:B}=Jo(p.value??[],"activity",n);i("addActivity",{milestoneId:o.milestoneId,name:k,rank:B,projectId:o.projectId})},C=()=>{const k=n("template.defaultName.activity",{idx:1}),B=cs(p.value??[]);i("addActivity",{milestoneId:o.milestoneId,name:k,rank:B,projectId:o.projectId})},v=r.ref(!1),y=r.ref(!1),g=k=>{y.value=!0;const B=Jme(k,p.value??[]);i("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:B,onSuccess:()=>{y.value=!1,v.value=!1},onError:()=>{y.value=!1}})};r.watch(v,k=>{k&&(y.value=!1)});const _=k=>{i("updateActivity",k)},b=k=>{p.value&&"moved"in k&&i("updateActivity",{id:k.moved.element.id,rank:Pr(p.value,k.moved.newIndex)})},E=r.computed({get:()=>{var k;return(k=f.value)==null?void 0:k.color},set:k=>{f.value&&i("updateMilestone",{id:f.value.id,color:k})}}),w=r.computed({get:()=>{var k;return((k=f.value)==null?void 0:k.deadline)??""},set:k=>{f.value&&i("updateMilestone",{id:f.value.id,deadline:k!=null&&k.length?k:null})}}),S=k=>o.closedStatus?uu(k,o.closedStatus):!1,x=r.computed(()=>{var k;return((k=o.users)==null?void 0:k.map(B=>({label:`${B.firstName} ${B.lastName}`,value:B.id,avatar:B.avatarUrl})))||[]}),N=r.computed({get(){var k,B;return(B=(k=f.value)==null?void 0:k.assignee)!=null&&B.id?[f.value.assignee.id]:[]},set(k){i("updateMilestone",{id:o.milestoneId,assigneeId:k[0]??null})}}),D=r.computed({get(){var k;return((k=f.value)==null?void 0:k.important)??!1},set(k){i("updateMilestone",{id:o.milestoneId,important:k})}}),I=r.computed(()=>{var k;return((k=f.value)==null?void 0:k.description)??""}),U=k=>{(k==null?void 0:k.target)instanceof Element&&k.target.closest("a")||o.isEditable&&(l.value=!0)},F=k=>{i("updateMilestone",{id:o.milestoneId,description:k.trim().length?k:null}),l.value=!1},T=()=>{l.value=!1};r.watch(()=>o.milestoneId,()=>{l.value=!1});const $=(k,B)=>{const M=k.currentTarget;M instanceof HTMLElement&&B(M)};return(k,B)=>{var M;return r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(["ao-project-milestone-container",{"ao-project-milestone-container--expanded":a.value}])},[a.value?(r.openBlock(),r.createElementBlock("aside",dge,[r.createElementVNode("div",fge,[r.createVNode(mt,{title:k.$t("project.milestone.description.label"),level:5},null,8,["title"])]),r.createElementVNode("div",pge,[l.value?(r.openBlock(),r.createBlock(s0,{key:1,"initial-markdown":I.value,onSave:F,onCancel:T},null,8,["initial-markdown"])):(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-project-milestone-details__description",{"ao-project-milestone-details__description--editable":t.isEditable}]),onClick:U},[I.value?(r.openBlock(),r.createBlock(Mu,{key:0,content:I.value},null,8,["content"])):(r.openBlock(),r.createElementBlock("span",mge,r.toDisplayString(k.$t("project.milestone.description.placeholder")),1))],2))])])):r.createCommentVNode("",!0),r.createElementVNode("div",hge,[r.createElementVNode("header",gge,[r.createElementVNode("div",vge,[r.createVNode(de,{"icon-name":a.value?"ChevronRight":"ChevronLeft",variant:"ghost",size:"sm",class:"ao-milestone__expand",title:a.value?k.$t("project.milestone.collapse"):k.$t("project.milestone.expand"),onClick:c},null,8,["icon-name","title"]),r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:m})]),r.createElementVNode("div",yge,[r.createElementVNode("div",_ge,[r.createVNode(mt,{title:((M=f.value)==null?void 0:M.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(ru,{modelValue:D.value,"onUpdate:modelValue":B[0]||(B[0]=V=>D.value=V),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:k.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),f.value?(r.openBlock(),r.createElementBlock("div",Cge,[r.createElementVNode("div",bge,[r.createElementVNode("label",kge,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[1]||(B[1]=V=>w.value=V),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,w.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",wge,[r.createElementVNode("label",Ege,[r.createVNode(vt,{modelValue:N.value,"onUpdate:modelValue":B[2]||(B[2]=V=>N.value=V),options:x.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:k.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:V,handleTagRemove:K})=>[r.createVNode(Xt,{"user-name":V.label,"avatar-url":V.avatar,"is-closable":!0,onClose:re=>K(V,re)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",Sge,[r.createVNode(li,{color:E.value,"onUpdate:color":B[3]||(B[3]=V=>E.value=V)},{clickable:r.withCtx(({openPicker:V,bgColor:K})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:K}),class:"color-button",onClick:re=>$(re,V)},null,12,xge)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(Ba,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:V})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:k.$t("project.activity.add"),onClick:V},[r.createVNode(ke,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,Age)]),menu:r.withCtx(({close:V})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),C()}},r.toDisplayString(k.$t("project.bulk.menu.single")),9,Tge),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),v.value=!0}},r.toDisplayString(k.$t("project.bulk.menu.bulkInsert")),9,Nge)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Dge,[r.createVNode(r.unref(On),r.mergeProps({class:"ao-project-milestone__activities",list:p.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},k.$attrs,{onChange:b}),{item:r.withCtx(({element:V})=>{var K,re,te,be,ie;return[r.createVNode(xd,{id:V.id,name:V.name||V.id,"project-id":t.projectId,"phase-name":(K=d.value)==null?void 0:K.name,"milestone-name":(re=f.value)==null?void 0:re.name,"milestone-color":(te=f.value)==null?void 0:te.color,deadline:V.deadline,priority:V.priority,sprint:V.sprint,blocked:V.blocked,users:t.users,assignee:V.assignee,slug:V.slug,comments:(be=V.comments)==null?void 0:be.length,attachments:(ie=V.attachments)==null?void 0:ie.length,tasks:V.tasks,"is-editable":t.isEditable,"is-private":V.private,"is-closed":S(V),onClick:oe=>k.$router.push({name:r.unref(Pe).activity,params:{milestoneId:t.milestoneId,activityId:V.id}}),onUpdateActivity:_,onRemoveAssignee:()=>_({id:V.id,assigneeId:null}),onStartTimer:s},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&V.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:k.$t("archive"),onClick:r.withModifiers(()=>k.$emit("archiveActivity",{id:V.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!V.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:k.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>k.$emit("unarchiveActivity",{id:V.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",$ge,[r.createVNode(Ba,null,{trigger:r.withCtx(({open:V})=>[r.createVNode(Ao,{"icon-name":"Add",label:k.$t("project.activity.add"),onClick:V},null,8,["label","onClick"])]),menu:r.withCtx(({close:V})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),h()}},r.toDisplayString(k.$t("project.bulk.menu.single")),9,Bge),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{V(),v.value=!0}},r.toDisplayString(k.$t("project.bulk.menu.bulkInsert")),9,Mge)]),_:1})])):r.createCommentVNode("",!0)]),v.value?(r.openBlock(),r.createBlock(wd,{key:0,open:v.value,"onUpdate:open":B[4]||(B[4]=V=>v.value=V),title:k.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":y.value,onSubmit:g},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])],2)}}});const Lge=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]=E=>o("createSprint",E)),onFetchHistory:g[1]||(g[1]=()=>o("fetchHistory"))},{default:r.withCtx(E=>[r.renderSlot(y.$slots,"default",r.normalizeProps(r.guardReactiveProps(E)))]),_: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)}}}),Vge={class:"ao-col-header"},Oge=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",Vge,[r.createVNode(mt,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(Hi,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}});function Ige(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function La(t){return typeof t=="function"?t():r.unref(t)}const Pge=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Fge=t=>t!=null,zi=()=>{};function Rge(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 Uge(t,e={}){let n,o,i=zi;const s=l=>{clearTimeout(l),i(),i=zi};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 zge(t,e=200,n={}){return Rge(Uge(e,n),t)}function gc(t){var e;const n=La(t);return(e=n==null?void 0:n.$el)!=null?e:n}const Hge=Pge?window:void 0;function jge(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function qge(t){const e=jge();return r.computed(()=>(e.value,!!t()))}function Wge(t,e,n={}){const{root:o,rootMargin:i="0px",threshold:s=.1,window:a=Hge,immediate:l=!0}=n,c=qge(()=>a&&"IntersectionObserver"in a),d=r.computed(()=>{const h=La(t);return(Array.isArray(h)?h:[h]).map(gc).filter(Fge)});let u=zi;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=zi}},{immediate:l,flush:"post"}):zi,m=()=>{u(),p(),f.value=!1};return Ige(m),{isSupported:c,isActive:f,pause(){u(),f.value=!1},resume(){f.value=!0},stop:m}}const Zge={class:r.normalizeClass(["ao-list-kanban"])},Kge={class:"ao-list-kanban__header"},Gge=["title"],Yge={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},Jge={key:1,class:"ao-list-kanban__end"},Xge={key:0,class:"ao-list-kanban__no-more"},Qge={key:1,class:"ao-list-kanban__divider"},e0e={key:1,class:"ao-list-kanban__footer"},t0e=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);Wge(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:Pr(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:Pr(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",Kge,[t.title?(r.openBlock(),r.createBlock(Oge,{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(ke,{name:"Add"})],8,Gge)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(On),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,E,w,S;return[r.createVNode(xd,{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:((E=m.rules)==null?void 0:E.length)||0,tasks:m.tasks,description:m.description,priority:m.priority,sprint:m.sprint,blocked:m.blocked,type:m.type,comments:(w=m.comments)==null?void 0:w.length,attachments:(S=m.attachments)==null?void 0:S.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":a(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[x=>a(m)&&c(x),()=>a(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>a(m)&&c({id:m.id,assigneeId:null}),onStartTimer:p[1]||(p[1]=x=>f.$emit("startTimer",x))},{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",Yge,[r.createVNode(ke,{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",Jge,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",Xge,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",Qge)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),f.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",e0e,[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 n0e={class:"ao-field ao-search-field"},o0e=["value","placeholder"],r0e=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=zge(i,n.delay),a=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",n0e,[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,o0e),r.createVNode(ke,{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 i0e={class:"ao-sprint-metrics"},s0e=["onClick"],a0e={class:"ao-sprint-metrics__header-left"},l0e={class:"ao-sprint-metrics__icon"},c0e={class:"ao-sprint-metrics__title"},u0e={class:"ao-sprint-metrics__dates"},d0e={key:0,class:"ao-sprint-metrics__project"},f0e={class:"ao-sprint-metrics__advancement"},p0e={class:"ao-sprint-metrics__progress-bar"},m0e={class:"ao-sprint-metrics__percent"},h0e={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},g0e={class:"ao-sprint-metrics__tooltip-row"},v0e={class:"ao-sprint-metrics__tooltip-row"},y0e={class:"ao-sprint-metrics__tooltip-row"},_0e={class:"ao-sprint-metrics__tooltip-row"},C0e={class:"ao-sprint-metrics__tooltip-row"},b0e={class:"ao-sprint-metrics__tooltip-row"},k0e={class:"ao-sprint-metrics__tooltip-row"},w0e={class:"ao-sprint-metrics__content"},E0e={class:"ao-sprint-metrics__grid"},S0e={class:"ao-sprint-metrics__item"},x0e={class:"ao-sprint-metrics__label"},A0e={class:"ao-sprint-metrics__value"},T0e={key:0,class:"ao-sprint-metrics__tooltip"},N0e={class:"ao-sprint-metrics__tooltip-title"},D0e={class:"ao-sprint-metrics__item"},$0e={class:"ao-sprint-metrics__label"},B0e={class:"ao-sprint-metrics__value"},M0e={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},L0e={class:"ao-sprint-metrics__label"},V0e={class:"ao-sprint-metrics__input-row"},O0e=["value","placeholder","onInput"],I0e={class:"ao-sprint-metrics__unit"},P0e={key:0,class:"ao-sprint-metrics__secondary"},F0e={class:"ao-sprint-metrics__item"},R0e={class:"ao-sprint-metrics__label"},U0e={class:"ao-sprint-metrics__value"},z0e=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]},businessDayHours:{default:8}},setup(t){const e=T=>T.label?`Sprint ${T.number}: ${T.label}`:`Sprint ${T.number}`,n=t,{t:o}=Ye(),i=["Ok for prod","Done"],s=r.ref(new Set),a=r.ref({}),l=T=>{s.value.has(T)?s.value.delete(T):s.value.add(T)},c=T=>n.projects.find($=>$.id===T.projectId),d=T=>{var $;return(($=n.planningData[T])==null?void 0:$.plannedManDays)??0},u=T=>{var $;return(($=n.planningData[T])==null?void 0:$.remainingPlannedManDays)??0},f=T=>{var $;return(($=n.planningData[T])==null?void 0:$.users)??[]},p=T=>n.activities.filter($=>{var k;return((k=$.sprint)==null?void 0:k.id)===T}).reduce(($,k)=>$+(k.estimation??0),0),m=T=>n.activities.filter($=>{var B,M;if(((B=$.sprint)==null?void 0:B.id)!==T)return!1;const k=(M=$.devStatus)==null?void 0:M.name;return k&&i.includes(k)}).reduce(($,k)=>$+(k.estimation??0),0),h=T=>{const $=n.sprints.find(B=>B.id===T),k=$?c($):void 0;return(k==null?void 0:k.estimationUnit)==="hours"?"hours":"points"},C=(T,$)=>h(T)==="hours"?$*n.businessDayHours:$,v=T=>h(T)==="hours"?o("activity.estimationUnit.hoursShort"):o("activity.estimationUnit.pointsShort"),y=T=>{const $=C(T,d(T));return $<=0?0:p(T)/$},g=T=>{if(a.value[T]!==void 0)return a.value[T];const $=n.sprints.find(k=>k.id===T);if($){const k=c($);if((k==null?void 0:k.velocity)!==void 0&&k.velocity>0)return k.velocity}return 1},_=(T,$)=>{const k=parseFloat($);isNaN(k)||k<=0?delete a.value[T]:a.value[T]=k},b=T=>{const $=g(T);return $===void 0?0:C(T,d(T))*$},E=T=>{const $=b(T);return $<=0?null:p(T)/$},w=T=>{const $=E(T);return $===null?0:Math.round($*100)},S=T=>{const $=p(T);if($<=0)return 0;const k=m(T);return Math.round(k/$*100)},x=T=>{const $=p(T),k=m(T);return Math.max(0,$-k)},N=T=>{const $=C(T,u(T)),k=y(T);return $*k},D=T=>{const $=N(T),k=x(T);return $<=0&&k>0?!1:$<k},I=T=>T.toFixed(1),U=(T,$)=>`${T.toFixed(2)} pts / ${v($)}`,F=(T,$)=>{const k=new Date(T),B=new Date($),M={day:"numeric",month:"short"};return`${k.toLocaleDateString("en-UK",M)} – ${B.toLocaleDateString("en-UK",M)}`};return(T,$)=>(r.openBlock(),r.createElementBlock("div",i0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,k=>{var B;return r.openBlock(),r.createElementBlock("div",{key:k.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:M=>l(k.id)},[r.createElementVNode("div",a0e,[r.createElementVNode("span",l0e,r.toDisplayString(s.value.has(k.id)?"▸":"▾"),1),r.createElementVNode("span",c0e,r.toDisplayString(e(k)),1),r.createElementVNode("span",u0e," · "+r.toDisplayString(F(k.startDate,k.endDate)),1),!s.value.has(k.id)&&c(k)?(r.openBlock(),r.createElementBlock("span",d0e," · "+r.toDisplayString((B=c(k))==null?void 0:B.name),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__header-right",{"ao-sprint-metrics__header-right--behind":D(k.id)}])},[r.createElementVNode("div",f0e,[r.createElementVNode("div",p0e,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":D(k.id)}]),style:r.normalizeStyle({width:S(k.id)+"%"})},null,6)]),r.createElementVNode("span",m0e,r.toDisplayString(S(k.id))+"% ",1),r.createElementVNode("div",h0e,[$[7]||($[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",g0e,[$[0]||($[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(S(k.id))+"%",1)]),r.createElementVNode("span",v0e,[$[1]||($[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(I(m(k.id)))+" / "+r.toDisplayString(I(p(k.id)))+" pts ",1)]),r.createElementVNode("span",y0e,[$[2]||($[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(I(x(k.id)))+" pts",1)]),$[8]||($[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",_0e,[$[3]||($[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(I(N(k.id)))+" pts",1)]),r.createElementVNode("span",C0e,[$[4]||($[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(I(u(k.id)))+" MD",1)]),r.createElementVNode("span",b0e,[$[5]||($[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(U(y(k.id),k.id)),1)]),$[9]||($[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",k0e,[$[6]||($[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(D(k.id)?"Behind plan":"On track"),1)])])])],2)],8,s0e),r.withDirectives(r.createElementVNode("div",w0e,[r.createElementVNode("div",E0e,[r.createElementVNode("div",S0e,[r.createElementVNode("div",x0e,r.toDisplayString(r.unref(o)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",A0e,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":f(k.id).length>0}])},[r.createTextVNode(r.toDisplayString(I(d(k.id)))+" MD ",1),f(k.id).length>0?(r.openBlock(),r.createElementBlock("span",T0e,[r.createElementVNode("span",N0e,r.toDisplayString(I(d(k.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(f(k.id),M=>(r.openBlock(),r.createElementBlock("span",{key:M.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString(M.fullName),1),r.createElementVNode("span",null,r.toDisplayString(I(M.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",D0e,[r.createElementVNode("div",$0e,r.toDisplayString(r.unref(o)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",B0e,r.toDisplayString(I(p(k.id)))+" pts ",1)]),r.createElementVNode("div",M0e,[r.createElementVNode("div",L0e,r.toDisplayString(r.unref(o)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",V0e,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:g(k.id),placeholder:r.unref(o)("sprintMetrics.targetVelocityPlaceholder"),onInput:M=>_(k.id,M.target.value)},null,40,O0e),r.createElementVNode("span",I0e," pts / "+r.toDisplayString(v(k.id)),1)]),y(k.id)>0?(r.openBlock(),r.createElementBlock("div",P0e,r.toDisplayString(r.unref(o)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(U(y(k.id),k.id)),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",F0e,[r.createElementVNode("div",R0e,r.toDisplayString(r.unref(o)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",U0e,[E(k.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(w(k.id))+"% · "+r.toDisplayString(I(p(k.id)))+" / "+r.toDisplayString(I(b(k.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!s.value.has(k.id)]])])}),128))]))}});const H0e=ne(z0e,[["__scopeId","data-v-f3ddff2c"]]),j0e={class:"ao-feed"},q0e={class:"ao-feed__filters"},W0e={class:"ao-feed__body"},su=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},columnStatuses:{default:void 0},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}=Ye(),o=t,i=e;function s(z,ae){i("toast",z,ae)}const a=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.columnStatuses??o.statuses),c=r.computed(()=>o.feedMode==="dev"?a.value.filter(z=>z.activityType==="dev"):a.value),d=async(z,ae)=>{await i("selectActivity",z,ae)},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([z,ae,ve,fe],[He,De])=>{const Be=o.feedMode==="dev"?"devStatus":"status";u.value=Object.fromEntries(z.map(Fe=>[Fe.id,ae.filter(Ge=>{const Je=Ge[Be];return(Je==null?void 0:Je.id)===Fe.id})])),ve&&!f.value?(d(ve,null),f.value=!0):fe&&!f.value&&(d(null,fe),f.value=!0),p.value&&Yn(ae,De)},{immediate:!0});const h=r.computed(()=>{var z;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((z=o.selectedActivity.milestone.phase)==null?void 0:z.name)??""} / ${o.selectedActivity.milestone.name??""}`}),C=z=>{var Fe;const ae=o.feedMode==="dev"?o.activities.filter(Ge=>Ge.activityType==="dev"):o.activities,ve=ae==null?void 0:ae.at(-1),fe=ve?Qe.LexoRank.parse(ve.rank).genNext():Qe.LexoRank.middle(),He=((Fe=o.activities)==null?void 0:Fe.length)??0,De=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:He+1}),rank:fe.format(),...De?{statusDevId:z.id,type:"dev"}:{statusId:z.id}};if(o.filters.assigneeId.length>0&&(Be.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Be.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Ge=o.sprints.find(Je=>Je.id===o.filters.sprintId[0]);Ge&&(Be.sprintId=Ge.id,Be.projectId=Ge.projectId)}p.value=!0,i("addActivity",Be)},v=z=>{var Fe,Ge;const ae=o.feedMode==="dev"?"devStatus":"status",ve=((Fe=o.activities)==null?void 0:Fe.filter(Je=>{const Me=Je[ae];return(Me==null?void 0:Me.id)===z.id}))??[],fe=cs(ve),He=((Ge=o.activities)==null?void 0:Ge.length)??0,De=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:He+1}),rank:fe,...De?{statusDevId:z.id,type:"dev"}:{statusId:z.id}};if(o.filters.assigneeId.length>0&&(Be.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Be.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&&(Be.sprintId=Je.id,Be.projectId=Je.projectId)}p.value=!0,i("addActivity",Be)},y=(z,ae)=>{p.value=!1,i("update:filters",{...o.filters,[z]:ae})},g=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>g.value.map(z=>({value:z.id,label:z.name}))),b=r.computed(()=>o.sprints.map(z=>({value:z.id,label:n("activity.sprint.filterLabel",{number:z.number,label:z.label}),startDate:z.startDate,endDate:z.endDate,projectId:z.projectId}))),E=r.computed(()=>{const z=o.filters[ln.sprint]??[];return o.sprints.filter(ae=>z.includes(ae.id))}),w=r.computed(()=>{var ve;const z=o.filters[ln.project]??[],ae=(ve=o.project)!=null&&ve.id?[o.project.id]:[];return[...z,...ae]}),S=r.computed(()=>o.milestones.map(z=>{var ae;return{value:z.id,label:(ae=z.phase)!=null&&ae.name?`${z.phase.name} - ${z.name}`:z.name,color:z.color,important:z.important}}));r.computed(()=>{var z;return(z=o.activityTypes)==null?void 0:z.map(ae=>({value:ae.id,label:ae.name}))});const x=r.computed(()=>o.users.map(z=>({value:z.id,label:`${z.firstName} ${z.lastName}`,avatar:z.avatarUrl}))),N=z=>{o.selectedActivity&&i("update:activity",z)},D=z=>{i("update:activity",z)},I=z=>{i("archiveActivity",z)},U=z=>{i("unarchiveActivity",z)},F=z=>{var ae;i("startTimer",z),(ae=window.parent)==null||ae.postMessage({type:"startTimer",data:z},"*")},T=z=>{p.value=!1,i("update:searchText",z)},$=z=>{p.value=!1,i("clear:searchText",z)},k=z=>{o.selectedActivity&&i("addSubtask",z)},B=z=>{o.selectedActivity&&i("updateSubtask",z)},M=z=>{o.selectedActivity&&i("deleteSubtask",z)},V=z=>{i("addFiles",z)},K=z=>{i("removeFile",z)},re=z=>{o.selectedActivity&&i("addComment",{...z,activityId:o.selectedActivity.id})},te=z=>{const{id:ae}=o.selectedActivity||{};ae&&i("updateComment",z)},be=z=>{const{id:ae}=o.selectedActivity||{};ae&&i("removeComment",z)},ie=Xo.useRouter(),oe=Xo.useRoute(),H=r.ref("feed");r.watch(()=>oe.name,z=>{z===Ro.feed||z==="ActivityFeed"||z==="ActivityFeedWithActivity"?H.value="feed":z===Ro.dev||z==="ActivityFeedDev"||z==="ActivityFeedDevWithActivity"?H.value="dev":z===Pe.feed?H.value="feed":z===Pe.dev?H.value="dev":z===Pe.project?H.value="overview":z===Pe.mapping&&(H.value="mapping")},{immediate:!0});const R=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],se=r.computed(()=>Ee.value?R.filter(z=>z.value==="feed"||z.value==="dev"):R),Ee=r.computed(()=>!o.project&&oe.name&&(oe.name===Ro.feed||oe.name===Ro.dev||oe.name==="ActivityFeed"||oe.name==="ActivityFeedDev"||oe.name==="ActivityFeedWithActivity"||oe.name==="ActivityFeedDevWithActivity")),ze=r.computed(()=>Ee.value?Ro.feed:Pe.feed),Se=r.computed(()=>Ee.value?Ro.dev:Pe.dev),Ce=r.computed(()=>Pe.project),kt=r.computed(()=>Pe.mapping);return r.watch(H,z=>{z==="feed"?ie.push({name:ze.value}):z==="dev"?ie.push({name:Se.value}):z==="overview"?ie.push({name:Ce.value}):z==="mapping"&&ie.push({name:kt.value})}),(z,ae)=>{var ve;return r.openBlock(),r.createElementBlock("div",j0e,[r.createVNode(us,null,{primary:r.withCtx(()=>[r.createElementVNode("div",q0e,[r.createVNode(ws,{modelValue:H.value,"onUpdate:modelValue":ae[0]||(ae[0]=fe=>H.value=fe),tabs:se.value},null,8,["modelValue","tabs"]),r.createVNode(r0e,{"model-value":t.searchText,placeholder:z.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":T,onClear:$},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(vt,{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:z.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":ae[1]||(ae[1]=fe=>y(r.unref(ln).project,fe))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(vt,{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:z.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":ae[2]||(ae[2]=fe=>y(r.unref(ln).sprint,fe))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),r.createVNode(vt,{"model-value":t.filters[r.unref(ln).milestone],mode:"tags",options:S.value,"close-on-select":!1,"clear-on-select":!1,searchable:!0,disabled:w.value.length===0,class:"ao-feed__filter ao-feed__filter__milestones",placeholder:z.$t("feed.filters.milestone.placeholder"),"onUpdate:modelValue":ae[3]||(ae[3]=fe=>y(r.unref(ln).milestone,fe))},null,8,["model-value","options","disabled","placeholder"]),x.value.length?(r.openBlock(),r.createBlock(vt,{key:2,"model-value":t.filters[r.unref(ln).assignee],mode:"tags",options:x.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:z.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":ae[4]||(ae[4]=fe=>y(r.unref(ln).assignee,fe))},{tag:r.withCtx(({option:fe,handleTagRemove:He})=>[r.createVNode(Xt,{"user-name":fe.label,"avatar-url":fe.avatar,"is-closable":!0,onClose:De=>He(fe,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:z.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:ae[5]||(ae[5]=fe=>z.$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:z.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:ae[6]||(ae[6]=fe=>z.$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:z.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:ae[7]||(ae[7]=fe=>z.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&E.value.length>0?(r.openBlock(),r.createBlock(H0e,{key:0,sprints:E.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:g.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",W0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,fe=>(r.openBlock(),r.createBlock(t0e,{key:fe.id,status:fe,list:u.value[fe.id],title:fe.name,"footer-label":z.$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(fe),onAddAtBeginning:()=>v(fe),onSelectActivity:d,onArchiveActivity:I,onUnarchiveActivity:U,onUpdateActivity:D,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":(ve=t.selectedActivity.milestone)==null?void 0:ve.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:ae[8]||(ae[8]=()=>d(null,null)),onFetchHistory:ae[9]||(ae[9]=()=>i("fetchHistory")),"onUpdate:activity":N,onAddSubtask:k,onUpdateSubtask:B,onDeleteSubtask:M,onAddFiles:V,onRemoveFile:K,onAddComment:re,onUpdateComment:te,onRemoveComment:be,onToast:s,onCreateSprint:ae[10]||(ae[10]=fe=>i("createSprint",fe))},{default:r.withCtx(fe=>[r.renderSlot(z.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(fe)))]),_: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"},K0e={class:"ao-project-mapping-mapping__body"},G0e={class:"ao-project-mapping-mapping__phases"},Y0e={key:0,class:"ao-project-mapping-mapping__image-wrapper"},J0e=["src","alt"],X0e=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}=Ye(),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}),_=cs(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 w;const b=(w=o.templates)==null?void 0:w.at(-1),E=b?Qe.LexoRank.parse(b.rank).genNext():Qe.LexoRank.middle();i("saveTemplate",{templateName:g,rank:E.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(us,null,{primary:r.withCtx(()=>[r.createVNode(ws,{modelValue:v.value,"onUpdate:modelValue":_[0]||(_[0]=E=>v.value=E),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]=E=>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]=E=>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]=E=>f.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",K0e,[r.createElementVNode("div",G0e,[r.createVNode(Sd,{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",Y0e,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,J0e)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[p.value?(r.openBlock(),r.createBlock(d0,{key:0,phases:t.phases,onClose:_[4]||(_[4]=E=>p.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createBlock(u0,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=E=>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"},Q0e=(t,e={})=>[{path:t,name:qo.TEMPLATES,redirect:{name:qo.TEMPLATES_LIST},...e,children:[{path:"",name:qo.TEMPLATES_LIST,component:f0},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:qo.TEMPLATE_DETAILS,component:a0,props:!0}]}],Pe={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},Ro={feed:"ActivityFeed",dev:"ActivityFeedDev"},eve=(t,e={})=>[{path:t,...e,redirect:{name:Pe.project},children:[{path:"",name:Pe.project,component:Phe,props:!0,children:[{path:":phaseId/:milestoneId",name:Pe.milestone,component:Dp,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Pe.activity,props:{default:!0,modal:!0},components:{default:Dp,modal:Lge}}]},{path:"feed",name:Pe.feed,component:su,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Pe.dev,component:su,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Pe.mapping,component:X0e,props:!0}]}],tve={class:"ao-templates"},f0=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Ye(),o=t,i=e;r.watch(()=>o.templates,(d,u)=>{Yn(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:We.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{i("removeItem",{itemType:We.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=ls(d,o.templates??[]);i("updateItem",{itemType:We.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",tve,[r.createVNode(us,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(On),{"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(Cb,{id:f.id,title:f.name,phases:f.phases,milestones:(p=f.phases)!=null&&p.length?r.unref(jC)(f.phases):0,activities:f.phases?r.unref(qC)(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 nve={class:"ao-field__label"},p0=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",nve,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),ove=["type","value","disabled","readonly"],rve=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(p0,{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,ove)]),_:1},8,["label"]))}}),ive={class:"ao-field"},sve={class:"ao-field__label"},ave=["checked","disabled"],m0=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",ive,[r.createElementVNode("span",sve,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,ave)]))}}),lve={class:"ao-audit-config"},cve={key:0,class:"ao-audit-config__loading"},uve={key:1,class:"ao-audit-config__error"},dve={key:2,class:"ao-audit-config__empty"},fve={key:3,class:"ao-audit-config__table"},pve={class:"ao-audit-config__th ao-audit-config__th--table"},mve={class:"ao-audit-config__th ao-audit-config__th--audit"},hve={class:"ao-audit-config__th ao-audit-config__th--excluded"},gve={class:"ao-audit-config__td ao-audit-config__td--table"},vve={class:"ao-audit-config__table-name"},yve={key:0,class:"ao-audit-config__schema"},_ve={class:"ao-audit-config__td ao-audit-config__td--audit"},Cve={class:"ao-audit-config__checkbox"},bve={class:"ao-audit-config__td ao-audit-config__td--excluded"},kve={key:0,class:"ao-audit-config__disabled-note"},wve={class:"ao-audit-config__option"},Eve=["title"],Sve={key:0,class:"ao-audit-config__all-tracked"},xve=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}=Ye(),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",lve,[t.loading?(r.openBlock(),r.createElementBlock("div",cve,r.toDisplayString(r.unref(i)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",uve,r.toDisplayString(r.unref(i)("audit.error",{message:t.error})),1)):s.value.length?(r.openBlock(),r.createElementBlock("table",fve,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",pve,r.toDisplayString(r.unref(i)("audit.tableHeader")),1),r.createElementVNode("th",mve,r.toDisplayString(r.unref(i)("audit.auditHeader")),1),r.createElementVNode("th",hve,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",gve,[r.createElementVNode("span",vve,r.toDisplayString(f.tableName),1),f.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",yve,r.toDisplayString(f.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",_ve,[r.createElementVNode("div",Cve,[r.createVNode(m0,{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",bve,[f.isEnabled?(r.openBlock(),r.createBlock(vt,{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",wve,[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,Eve)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[f.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",Sve,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",kve,r.toDisplayString(r.unref(i)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",dve,r.toDisplayString(r.unref(i)("audit.empty")),1))]))}});const Ave={key:0,class:"ao-activity-inline__drag-handle"},Tve=["onKeydown"],Nve={class:"ao-activity-inline__title"},Dve={class:"ao-activity-inline__name"},$ve={class:"ao-activity-inline__assignee"},Bve={key:1,class:"ao-activity-inline__unassigned"},Mve={class:"ao-activity-inline__estimation"},Lve={class:"ao-activity-inline__status"},Vve={class:"ao-activity-inline__title"},Ove={class:"ao-activity-inline__name"},Ive={class:"ao-activity-inline__assignee"},Pve={key:1,class:"ao-activity-inline__unassigned"},Fve={class:"ao-activity-inline__estimation"},Rve={class:"ao-activity-inline__status"},Uve={key:3,class:"ao-activity-inline__content ao-activity-inline--disabled"},zve={class:"ao-activity-inline__title"},Hve={class:"ao-activity-inline__name"},jve={class:"ao-activity-inline__assignee"},qve={key:1},Wve={class:"ao-activity-inline__estimation"},Zve={class:"ao-activity-inline__status"},Kve=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}=Ye(),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",Ave,[r.createVNode(ke,{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",Nve,[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",Dve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",$ve,[t.activity.assignee?(r.openBlock(),r.createBlock(Xt,{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",Bve," — ")),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",Mve,[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",Lve,r.toDisplayString(c.value),1)],40,Tve)):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",Vve,[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",Ove,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",Ive,[t.activity.assignee?(r.openBlock(),r.createBlock(Xt,{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",Pve," — ")),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",Fve,[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",Rve,r.toDisplayString(c.value),1)]),_:1},8,["to"])):(r.openBlock(),r.createElementBlock("div",Uve,[r.createElementVNode("div",zve,[r.createElementVNode("span",Hve,r.toDisplayString(t.activity.name),1)]),r.createElementVNode("div",jve,[t.activity.assignee?(r.openBlock(),r.createBlock(Xt,{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",qve,"—")),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",Wve,[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 h0=ne(Kve,[["__scopeId","data-v-76d2bf8e"]]),Gve={class:"ao-sprint-section__header-left"},Yve={class:"ao-sprint-section__expand-icon"},Jve={class:"ao-sprint-section__title"},Xve={key:0,class:"ao-sprint-section__archived-badge"},Qve={class:"ao-sprint-section__header-right"},e2e={class:"ao-sprint-section__dates"},t2e={class:"ao-sprint-section__meta"},n2e=["title"],o2e=["onClick"],r2e={class:"ao-sprint-section__edit-title"},i2e={class:"ao-sprint-section__fixed-number"},s2e={class:"ao-sprint-section__date-fields"},a2e={class:"ao-sprint-section__actions"},l2e={class:"ao-sprint-section__content"},c2e={key:0,class:"ao-sprint-section__empty"},u2e=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=k=>{k.added&&o("activityChange",{id:k.added.element.id,sprintId:n.sprint.id})},s=k=>{o("updateActivity",k)},a=k=>{o("openActivity",{activityId:k,activityIds:n.activities.map(B=>B.id)})},l=r.ref(!0),c=r.ref(!1),{t:d}=Ye(),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 k=Fr(n.sprint.startDate,"dd/MM/yy"),B=Fr(n.sprint.endDate,"dd/MM/yy");return`${k} – ${B}`}),m=r.computed(()=>n.activities.length),h=r.computed(()=>n.activities.reduce((k,B)=>k+(B.estimation??0),0)),C=r.computed(()=>{var k;return(k=n.planningData)==null?void 0:k[n.sprint.id]}),v=r.computed(()=>{var B;const k=n.projects.find(M=>M.id===n.sprint.projectId);return k||((B=n.activities.find(M=>M.project))==null?void 0:B.project)}),y=r.computed(()=>{var k;return((k=v.value)==null?void 0:k.velocity)??1}),g=r.computed(()=>{var k;return((k=v.value)==null?void 0:k.estimationUnit)??""}),_=r.computed(()=>{const k=C.value;return k!=null&&k.plannedManDays?g.value==="hours"?k.plannedManDays*n.businessDayHours:k.plannedManDays:null}),b=r.computed(()=>{const k=_.value;return k==null?null:k*y.value}),E=r.computed(()=>{const k=b.value;return k==null||k===0?null:Math.round(h.value/k*100)}),w=r.computed(()=>{const k=b.value;return k==null?!1:h.value>k}),S=r.computed(()=>{const k=b.value;if(k==null)return null;const B=Math.round(h.value*10)/10,M=Math.round(k*10)/10,V=E.value;return V!=null?`${B} / ${M} pts · ${V}%`:`${B} / ${M} pts`}),x=r.computed(()=>{const k=b.value;if(k==null)return;const B=g.value==="hours"?d("activity.estimationUnit.hours"):d("activity.estimationUnit.points"),M=g.value==="hours"?d("activity.estimationUnit.hoursShort"):d("activity.estimationUnit.pointsShort");return[`Estimated work: ${h.value} ${d("activity.estimationUnit.pointsShort")}`,`Planned capacity: ${_.value} ${B}`,`Velocity: ${y.value} ${d("activity.estimationUnit.pointsShort")} / ${M}`,`Sprint capacity: ${k} ${d("activity.estimationUnit.pointsShort")}`,`Load: ${E.value}%`].join(`
|
|
63
|
+
`)}),N=r.computed(()=>!!(u.value.startDate&&u.value.endDate)),D=()=>{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||""}},U=()=>{c.value=!1},F=()=>{N.value&&(o("updateSprint",{id:n.sprint.id,projectId:n.sprint.projectId,label:u.value.label||void 0,startDate:u.value.startDate,endDate:u.value.endDate,color:u.value.color||void 0}),c.value=!1)},T=()=>{window.confirm("Archive this sprint?")&&o("archiveSprint",{id:n.sprint.id,projectId:n.sprint.projectId})},$=()=>{o("unarchiveSprint",{id:n.sprint.id,projectId:n.sprint.projectId})};return(k,B)=>(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:B[6]||(B[6]=r.withModifiers(()=>{},["stop"]))},[r.createVNode(li,{color:u.value.color,"onUpdate:color":B[2]||(B[2]=M=>u.value.color=M)},{clickable:r.withCtx(({openPicker:M,bgColor:V})=>[r.createElementVNode("button",{class:"ao-sprint-section__color-trigger",style:r.normalizeStyle({backgroundColor:V}),title:"Sprint color",onClick:K=>M(K.currentTarget)},null,12,o2e)]),_:1},8,["color"]),r.createElementVNode("div",r2e,[r.createElementVNode("span",i2e," Sprint "+r.toDisplayString(t.sprint.number)+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[3]||(B[3]=M=>u.value.label=M),type:"text",class:"ao-sprint-section__input ao-sprint-section__input--label",placeholder:"Label"},null,512),[[r.vModelText,u.value.label]])]),r.createElementVNode("div",s2e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[4]||(B[4]=M=>u.value.startDate=M),type:"date",class:"ao-sprint-section__input ao-sprint-section__input--date"},null,512),[[r.vModelText,u.value.startDate]]),B[7]||(B[7]=r.createElementVNode("span",null,"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":B[5]||(B[5]=M=>u.value.endDate=M),type:"date",class:"ao-sprint-section__input ao-sprint-section__input--date"},null,512),[[r.vModelText,u.value.endDate]])]),r.createElementVNode("div",a2e,[r.createVNode(de,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!N.value,title:"Save",onClick:F},null,8,["disabled"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:"Cancel",onClick:U})])])):(r.openBlock(),r.createElementBlock("div",{key:0,class:"ao-sprint-section__header",onClick:D},[r.createElementVNode("div",Gve,[r.createElementVNode("span",Yve,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",Jve,r.toDisplayString(f.value),1),t.sprint.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",Xve," Archived "))]),r.createElementVNode("div",Qve,[r.createElementVNode("span",e2e,r.toDisplayString(p.value),1),r.createElementVNode("span",t2e,r.toDisplayString(m.value)+" "+r.toDisplayString(m.value===1?"activity":"activities"),1),S.value?(r.openBlock(),r.createElementBlock("span",{key:0,class:r.normalizeClass(["ao-sprint-section__capacity",{"ao-sprint-section__capacity--over":w.value}]),title:x.value},r.toDisplayString(S.value),11,n2e)):r.createCommentVNode("",!0),t.isEditable?(r.openBlock(),r.createElementBlock("div",{key:1,class:"ao-sprint-section__actions",onClick:B[1]||(B[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:B[0]||(B[0]=M=>t.sprint.active?T():$())},null,8,["label"])])):r.createCommentVNode("",!0)])])),r.withDirectives(r.createElementVNode("div",l2e,[r.createVNode(r.unref(On),{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:M})=>[r.createVNode(h0,{activity:M,"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",c2e," No activities ")):r.createCommentVNode("",!0)],512),[[r.vShow,l.value&&!c.value]])],2))}});const d2e=ne(u2e,[["__scopeId","data-v-f3ec7254"]]),f2e={class:"ao-sprint-list"},p2e={class:"ao-sprint-list__header"},m2e={class:"ao-sprint-list__title-group"},h2e={class:"ao-sprint-list__count"},g2e={class:"ao-sprint-list__actions"},v2e={key:0,class:"ao-sprint-list__toggle"},y2e={key:0,class:"ao-sprint-list__create"},_2e=["title","onClick"],C2e={class:"ao-sprint-list__create-title"},b2e={class:"ao-sprint-list__fixed-number"},k2e=["placeholder"],w2e={class:"ao-sprint-list__date-fields"},E2e={class:"ao-sprint-list__row-actions"},S2e={class:"ao-sprint-list__sections"},x2e={key:1,class:"ao-sprint-list__empty"},A2e=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}=Ye(),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",f2e,[r.createElementVNode("div",p2e,[r.createElementVNode("div",m2e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(n)("sprint.planning")),1),r.createElementVNode("span",h2e,r.toDisplayString(c.value.length),1)]),r.createElementVNode("div",g2e,[t.sprints.some(g=>!g.active)?(r.openBlock(),r.createElementBlock("label",v2e,[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",y2e,[r.createVNode(li,{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,_2e)]),_:1},8,["color"]),r.createElementVNode("div",C2e,[r.createElementVNode("span",b2e,"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,k2e),[[r.vModelText,l.value.label]])]),r.createElementVNode("div",w2e,[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",E2e,[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",S2e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,g=>(r.openBlock(),r.createBlock(d2e,{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",x2e,r.toDisplayString(r.unref(n)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}});const T2e=ne(A2e,[["__scopeId","data-v-0d65cf51"]]),N2e={class:"ao-backlog-section"},D2e={class:"ao-backlog-section__header-left"},$2e={class:"ao-backlog-section__expand-icon"},B2e={class:"ao-backlog-section__name"},M2e={key:0,class:"ao-backlog-section__phase"},L2e={class:"ao-backlog-section__header-right"},V2e={class:"ao-backlog-section__count"},O2e={class:"ao-backlog-section__content"},I2e={key:1,class:"ao-backlog-section__empty"},P2e={class:"ao-backlog-section__drop-hint"},F2e=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}=Ye(),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",N2e,[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",D2e,[r.createElementVNode("span",$2e,r.toDisplayString(s.value?"▾":"▸"),1),r.createElementVNode("span",B2e,r.toDisplayString(t.milestoneName),1),t.phaseName?(r.openBlock(),r.createElementBlock("span",M2e,r.toDisplayString(t.phaseName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",L2e,[r.createElementVNode("span",V2e,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",O2e,[t.activities.length>0?(r.openBlock(),r.createBlock(r.unref(On),{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(h0,{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",I2e,[r.createElementVNode("span",P2e,r.toDisplayString(r.unref(n)("backlog.dropHere")),1)]))],512),[[r.vShow,s.value]])]))}});const R2e=ne(F2e,[["__scopeId","data-v-d8949009"]]),U2e={class:"ao-backlog"},z2e={class:"ao-backlog__header"},H2e={class:"ao-backlog__count"},j2e={key:0,class:"ao-backlog__sections"},q2e={key:1,class:"ao-backlog__empty"},W2e=r.defineComponent({__name:"AoBacklog",props:{activities:{},isEditable:{type:Boolean,default:!1}},emits:["activityChange","updateActivity","openActivity"],setup(t,{emit:e}){const{t:n}=Ye(),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",U2e,[r.createElementVNode("div",z2e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(n)("backlog.title")),1),r.createElementVNode("span",H2e,r.toDisplayString(s.value.length),1)]),a.value.length>0?(r.openBlock(),r.createElementBlock("div",j2e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,d=>(r.openBlock(),r.createBlock(R2e,{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",q2e,r.toDisplayString(r.unref(n)("backlog.empty")),1))]))}});const Z2e=ne(W2e,[["__scopeId","data-v-c1e30a42"]]),K2e={class:"ao-sprint-planning"},G2e={class:"ao-sprint-planning__sprint"},Y2e={class:"ao-sprint-planning__backlog"},J2e=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",K2e,[r.createElementVNode("div",G2e,[r.createVNode(T2e,{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",Y2e,[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 X2e=ne(J2e,[["__scopeId","data-v-f4798bd5"]]);exports.AoAuditConfigTable=xve;exports.AoAvatar=Xt;exports.AoCardFeed=xd;exports.AoCheckboxField=m0;exports.AoColorPicker=li;exports.AoFeed=su;exports.AoField=p0;exports.AoHistory=i0;exports.AoInputField=rve;exports.AoMultiselect=vt;exports.AoProjectPhases=Sd;exports.AoSprintPlanning=X2e;exports.AoTabBar=ws;exports.AoTemplateDetails=a0;exports.AoTemplates=E0;exports.AoTemplatesList=f0;exports.EstimationUnit=Ip;exports.TemplateItemTypeEnum=Op;exports.activityFeedRoutes=Ro;exports.activityFeedStatus=n5;exports.durationTypes=t5;exports.feedFilterTypes=ln;exports.getProjectOverviewRoutes=eve;exports.getTemplateRoutes=Q0e;exports.listUpdateTypes=o5;exports.milestoneStatus=ji;exports.projectOverviewRoutes=Pe;exports.ruleComparators=Mp;exports.ruleDurationUnits=Vp;exports.ruleTriggerTypes=Lp;exports.templateItemType=We;exports.templateRouteNames=qo;
|