@26lights/orcha 0.42.184 → 0.42.186

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.
@@ -11,14 +11,19 @@
11
11
  "project.bulk.modal.placeholder": "Discovery\nTechnical analysis\nImplementation\nTesting\nDeployment",
12
12
  "project.bulk.modal.count": "{{count}} item(s) ready",
13
13
  "project.bulk.modal.itemsReady": "item(s) ready",
14
+ "project.bulk.created": "{{count}} item(s) created successfully",
14
15
  "project.bulk.modal.lineError": "Line {{line}}: {{message}}",
15
16
  "project.bulk.modal.indentation": "Indentation",
16
17
  "project.bulk.modal.noSpace": "no space",
17
- "project.bulk.modal.space_one": "{{count}} space",
18
- "project.bulk.modal.space_other": "{{count}} spaces",
18
+ "project.bulk.modal.oneSpace": "1 space",
19
+ "project.bulk.modal.spaces": "{{count}} spaces",
19
20
  "project.bulk.parser.invalidIndentationCharacter": "Invalid indentation character",
20
21
  "project.bulk.parser.invalidIndentationSize": "Invalid indentation: expected {{expected}} indentation character(s) per level, found {{found}}",
21
22
  "project.bulk.parser.tooManyIndentationLevels": "Too many indentation levels: maximum depth is {{max}}",
23
+ "project.bulk.entity.phase": "Phase",
24
+ "project.bulk.entity.milestone": "Milestone",
25
+ "project.bulk.entity.activity": "Activity",
26
+ "project.bulk.entity.task": "Task",
22
27
  "project.bulk.parser.expectedParentBefore": "Expected {{parent}} before {{child}}",
23
28
  "templates.title": "My Templates",
24
29
  "templates.new": "Create template",
package/dist/orcha.cjs.js CHANGED
@@ -59,4 +59,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
59
59
  `)}function Fpe(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 Rpe(t,e){const n=md(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,u=a[l];if(u.trim().length===0)continue;const d=Fpe(u,n.indentCharacter,n.indentSize);if("code"in d){o.push({line:c,code:d.code,params:d.params});continue}const{level:f,content:p}=d,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 g=n.levels[f-1];o.push({line:c,code:"EXPECTED_PARENT_BEFORE",params:{parent:g,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 zpe=["onKeydown"],Upe={class:"ao-modal ao-bulk-insert-modal"},qpe={class:"ao-modal__header"},Hpe={class:"ao-modal__header-meta"},jpe={class:"ao-modal__title-group"},Wpe={class:"ao-modal__body ao-bulk-insert-modal__body"},Zpe={key:0,class:"ao-bulk-insert-modal__intro"},Kpe=["placeholder","disabled"],Gpe={key:1,class:"ao-bulk-insert-modal__errors"},Ype={key:2,class:"ao-bulk-insert-modal__count"},Jpe={class:"ao-bulk-insert-modal__help"},Xpe={class:"ao-bulk-insert-modal__help-title"},Qpe={class:"ao-bulk-insert-modal__help-list"},eme={class:"ao-bulk-insert-modal__help-entity"},tme={class:"ao-bulk-insert-modal__help-rule"},nme={class:"ao-bulk-insert-modal__footer"},hd=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}=Bt(),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"},u=r.computed(()=>md(n.rootType)),d=r.computed(()=>Rpe(s.value,n.rootType)),f=b=>String(i(l[b])),p=r.computed(()=>`${Ppe(n.rootType,f).split(`
60
60
  `).map(k=>k.trim()?`${k} 1`:k).join(`
61
61
  `)}
62
- ...`),m=r.computed(()=>n.placeholder||p.value),h=r.computed(()=>s.value.trim().length>0&&d.value.valid&&d.value.data.length>0&&!n.isLoading),g=r.computed(()=>{const b=w=>w.reduce((k,A)=>k+1+b(A.children??[]),0);return b(d.value.data)});r.watch(()=>n.open,async b=>{var w;b&&(s.value="",await r.nextTick(),(w=a.value)==null||w.focus())},{immediate:!0});const y=()=>{n.isLoading||(o("update:open",!1),o("close"))},C=()=>{h.value&&o("submit",d.value.data)},v=b=>String(b===0?i("project.bulk.modal.noSpace"):i("project.bulk.modal.space",{count:b})),_=b=>String(i(c[b.code],b.params??{}));return(b,w)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper","ao-bulk-insert-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(y,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:y}),r.createElementVNode("div",Upe,[r.createElementVNode("div",qpe,[r.createElementVNode("div",Hpe,[r.createVNode(ue,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:y})]),r.createElementVNode("header",jpe,[r.createVNode(ht,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",Wpe,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(C,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",Zpe,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:a,"onUpdate:modelValue":w[0]||(w[0]=k=>s.value=k),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,Kpe),[[r.vModelText,s.value]]),d.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",Gpe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.errors,k=>(r.openBlock(),r.createElementBlock("p",{key:`${k.line}-${k.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(i)("project.bulk.modal.lineError",{line:k.line,message:_(k)})),1))),128))])):s.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",Ype,r.toDisplayString(r.unref(i)("project.bulk.modal.count",{count:g.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Jpe,[r.createElementVNode("span",Xpe,r.toDisplayString(r.unref(i)("project.bulk.modal.indentation")),1),r.createElementVNode("div",Qpe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.levels,(k,A)=>(r.openBlock(),r.createElementBlock("div",{key:k,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",eme,r.toDisplayString(f(k)),1),r.createElementVNode("span",tme,r.toDisplayString(v(A)),1)]))),128))])]),r.createElementVNode("footer",nme,[r.createVNode(ue,{color:"primary",variant:"ghost",label:r.unref(i)("common.cancel"),disabled:t.isLoading,onClick:y},null,8,["label","disabled"]),r.createVNode(ue,{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,zpe)):r.createCommentVNode("",!0)]))}});function gd(t,e){return(t.children??[]).filter(n=>n.type===e)}function ome(t){return gd(t,"task").map(e=>({name:e.name}))}function Wg(t,e=[]){const n=t.filter(i=>i.type==="activity"),o=tu(e,n.length);return n.map((i,s)=>{const a=ome(i);return{name:i.name,rank:o[s],...a.length?{tasks:a}:{}}})}function rme(t,e){return Wg(t,e)}function Zg(t,e){const n=t.filter(i=>i.type==="milestone"),o=tu(e,n.length);return n.map((i,s)=>{const a=Wg(gd(i,"activity"));return{name:i.name,rank:o[s],...a.length?{activities:a}:{}}})}function ime(t,e){const n=t.filter(i=>i.type==="phase"),o=tu(e,n.length);return n.map((i,s)=>{const a=Zg(gd(i,"milestone"),[]);return{name:i.name,rank:o[s],...a.length?{milestones:a}:{}}})}const sme={class:"ao-mapping-card-project-phase__header"},ame={class:"ao-card-project-item__title-line"},lme={key:0,class:"ao-card-project-item-phase__estimation"},cme={class:"ao-mapping-card-project-phase__footer"},ume={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},dme={class:"ao-mapping-card-project-phase__subitem"},fme={class:"ao-mapping-card-project-phase__subitem"},pme={key:0,class:"ao-mapping-card-project-phase__secondary"},mme={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},hme=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=g=>{o("update:title",g)},s=r.computed(()=>{var g;return((g=n.milestones)==null?void 0:g.reduce((y,C)=>{var v;return y+((v=C.activities)==null?void 0:v.reduce((_,b)=>_+(b.estimation||0),0))},0))||0}),a=r.computed(()=>!n.milestones||!n.timeTrackingData?0:n.milestones.reduce((g,y)=>{var C;return g+(((C=y.activities)==null?void 0:C.reduce((v,_)=>{var w;const b=(w=n.timeTrackingData)==null?void 0:w[_.id];return v+((b==null?void 0:b.timeSpent)||0)},0))||0)},0)),l=r.computed(()=>n.estimationUnit==="days"?"d":"h"),c=r.computed(()=>Ma(a.value,n.estimationUnit)),u=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.length}),d=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.filter(y=>y.status===Pi.done).length}),f=r.computed(()=>(d.value||0)/(u.value||1)),p=r.computed({get:()=>n.deadline??"",set:g=>o("update:deadline",g!=null&&g.length?g:null)}),m=r.computed({get:()=>n.color,set:g=>{o("updatePhase",{id:n.id,color:g})}}),h=(g,y)=>{const C=g.target;C.closest("button")||C.closest("input")||C.closest(".ao-title")||y()};return(g,y)=>(r.openBlock(),r.createBlock(jr,{color:m.value,"onUpdate:color":y[2]||(y[2]=C=>m.value=C)},{clickable:r.withCtx(({openPicker:C,bgColor:v})=>[r.createVNode(ml,{class:"ao-mapping-card-project-phase","is-clickable":t.isEditable,color:v,"with-left-border":!0,onClick:_=>h(_,C)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",ame,[r.createVNode(ht,{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",lme," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(s.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",cme,[u.value?(r.openBlock(),r.createElementBlock("div",ume,[r.createElementVNode("div",dme,[r.createVNode(be,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",fme,r.toDisplayString(d.value)+" / "+r.toDisplayString(u.value),1)]),r.createVNode(hl,{percentages:f.value,class:"ao-mapping-card-project-phase__progress",color:m.value},null,8,["percentages","color"]),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",pme,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-mapping-card-project-phase__footer-row",p.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]=_=>p.value=_),class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,p.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",mme,r.toDisplayString(r.unref(La)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",sme,[r.createVNode(ue,{class:"ao-mapping-card-project-phase__archive",color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:t.active?g.$t("archive"):g.$t("unarchive"),onClick:y[0]||(y[0]=r.withModifiers(()=>t.active?g.$emit("archivePhase",{id:t.id}):g.$emit("unarchivePhase",{id:t.id}),["stop"]))},null,8,["label"])])]),key:"0"}:void 0]),1032,["is-clickable","color","onClick"])]),_:3},8,["color"]))}});const gme={class:"ao-project-phase"},vme={key:0,class:"ao-project-phase__drag ao-card__drag"},_me={key:1,class:"ao-project-phase__col-phase"},yme={key:2,class:"ao-mapping-project-phase__col-phase"},Cme={key:0,class:"ao-project-phase__col-milestones"},bme=["title","onClick"],kme=["onClick"],wme=["onClick"],Eme={class:"ao-project-phase__milestones-list-footer"},Sme=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}=Bt(),o=t,i=e;r.watch(()=>o.phase.milestones,(T,S)=>{Wn(T,S)});const s=T=>{i("updatePhase",{id:o.phase.id,name:T})},a=T=>{i("updatePhase",{id:o.phase.id,deadline:T})},l=T=>{i("updatePhase",T)},c=r.computed(()=>o.phase.milestones.map(T=>T7(T,o.closedStatus))),u=T=>{const{name:S,rank:E}=Zo(c.value??[],"milestone",n);i("addMilestone",{name:S,rank:E,phaseId:T})},d=T=>{const S=n("template.defaultName.milestone",{idx:1}),E=ns(c.value??[]);i("addMilestone",{name:S,rank:E,phaseId:T})},f=T=>{i("updateMilestone",T)},p=T=>{i("archiveMilestone",T)},m=T=>{i("unarchiveMilestone",T)},h=T=>{i("archivePhase",T)},g=T=>{i("unarchivePhase",T)},y=T=>{"added"in T?i("updateMilestone",{id:T.added.element.id,phaseId:o.phase.id,rank:Mr(c.value,T.added.newIndex)}):"removed"in T||"moved"in T&&i("updateMilestone",{id:T.moved.element.id,rank:Mr(c.value,T.moved.newIndex)})},C=r.ref(!1),v=r.ref(!1),_=T=>{v.value=!0;const S=Zg(T,o.phase.milestones??[]);i("bulkAddMilestone",{phaseId:o.phase.id,milestones:S,onSuccess:()=>{v.value=!1,C.value=!1},onError:()=>{v.value=!1}})};r.watch(C,T=>{T&&(v.value=!1)});const b=$r.useRoute(),w=r.computed(()=>b.path.includes("/mapping")),k=r.computed(()=>{var T;return o.phase.id===((T=b.params)==null?void 0:T.phaseId)});r.ref(!1);const A=r.computed(()=>{var T;return o.phase.id!==((T=b.params)==null?void 0:T.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:N7(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(T,S)=>(r.openBlock(),r.createElementBlock("li",gme,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(A.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",vme,[r.createVNode(be,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",yme,[r.createVNode(hme,{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:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","estimation-unit"])])):(r.openBlock(),r.createElementBlock("div",_me,[r.createVNode(vpe,{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:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","time-tracking-data","estimation-unit"])]))],4),w.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",Cme,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(A.value)},[t.isEditable?(r.openBlock(),r.createBlock(Sa,{key:0,class:r.normalizeClass(["ao-project-phase__milestone-quick-add",{"ao-project-phase__milestone-quick-add--visible":k.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:E})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:T.$t("project.milestone.add"),onClick:E},[r.createVNode(be,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,bme)]),menu:r.withCtx(({close:E})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{E(),d(t.phase.id)}},r.toDisplayString(T.$t("project.bulk.menu.single")),9,kme),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{E(),C.value=!0}},r.toDisplayString(T.$t("project.bulk.menu.bulkInsert")),9,wme)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(ko),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},T.$attrs,{onChange:y}),{item:r.withCtx(({element:E})=>{var D;return[r.createVNode(Mpe,{id:E.id,name:E.name,color:E.color,"phase-color":t.phase.color,activities:E.activities,deadline:E.deadline,active:E.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":E.id===((D=T.$route.params)==null?void 0:D.milestoneId),assignee:E.assignee,important:E.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:x=>!t.readonly&&T.$router.push({name:r.unref(Fe).milestone,params:{phaseId:t.phase.id,milestoneId:E.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",Eme,[t.isEditable?(r.openBlock(),r.createBlock(wo,{key:0,label:T.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:S[0]||(S[0]=E=>u(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),C.value?(r.openBlock(),r.createBlock(hd,{key:1,open:C.value,"onUpdate:open":S[1]||(S[1]=E=>C.value=E),title:T.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":v.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}});const xme={class:"ao-project__phases"},Tme={key:0,class:"ao-project-phase__phases-list-footer"},Ame={class:"ao-project-phase__col-phase"},vd=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)=>{Wn(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)},u=m=>{o("unarchivePhase",m)},d=m=>{if(m.moved){const h=ts(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",xme,[r.createVNode(r.unref(ko),{class:"ao-project-phase__phases-list","model-value":t.phases,"item-key":"id",handle:".ao-card__drag",onChange:d},{item:r.withCtx(({element:g})=>[r.createVNode(Sme,{phase:g,"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]=y=>m.$emit("bulkAddMilestone",y)),onUpdateMilestone:s,onArchiveMilestone:a,onUnarchiveMilestone:l,onUpdatePhase:f,onArchivePhase:c,onUnarchivePhase:u},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",Tme,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",Ame,[r.createVNode(wo,{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 Nme={class:"ao-add-template-modal__form-body"},Dme={class:"field__row"},$me={class:"ao-add-template-modal__form-footer"},Kg=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,u)=>(r.openBlock(),r.createBlock(Oa,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(ht,{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",Nme,[r.createElementVNode("div",Dme,[r.createVNode(Ct,{value:s.value,options:i.value,detached:!0,onChange:a},null,8,["value","options"])])]),r.createElementVNode("footer",$me,[r.createVNode(ue,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}});const Bme={class:"ao-save-template-modal__form-body"},Mme={class:"field__row"},Lme={class:"ao-field ao-field--inline"},Ome={class:"ao-field__label"},Ime={class:"ao-save-template-modal__phases"},Vme={class:"ao-field__label"},Pme={class:"ao-save-template-modal__phases-list"},Fme=["value"],Rme={class:"ao-save-template-modal__form-footer"},Gg=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(Oa,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(ht,{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",Bme,[r.createElementVNode("div",Mme,[r.createElementVNode("label",Lme,[r.createElementVNode("span",Ome,r.toDisplayString(l.$t("project.template.name.label"))+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=u=>i.value=u),type:"text"},null,512),[[r.vModelText,i.value]])])]),r.createElementVNode("div",Ime,[r.createElementVNode("div",Vme,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",Pme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(n.phases,u=>(r.openBlock(),r.createElementBlock("label",{key:u.id,class:"ao-field ao-field--checkbox"},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[1]||(c[1]=d=>s.value=d),type:"checkbox",value:u.id},null,8,Fme),[[r.vModelCheckbox,s.value]]),r.createElementVNode("span",null,r.toDisplayString(u.name),1)]))),128))])])]),r.createElementVNode("footer",Rme,[r.createVNode(ue,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:a},null,8,["label"])])],32)]),_:1}))}});const zme={class:"ao-project"},Ume=["onClick"],qme=["onClick"],Hme={class:"ao-project__body"},jme=r.defineComponent({__name:"AoProjectOverviewProject",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{type:Function},statuses:{},activityTypes:{},devStatuses:{},sprints:{},selectedActivity:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function}},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"],setup(t,{emit:e}){const{t:n}=Bt(),o=t,i=e,s=r.computed(()=>o.phases.flatMap(P=>P.milestones)),a=()=>{const{name:P,rank:se}=Zo(o.phases,"phase",n);i("addPhase",{name:P,rank:se,projectId:o.project.id})},l=()=>{const P=n("template.defaultName.phase",{idx:1}),se=ns(o.phases);i("addPhase",{name:P,rank:se,projectId:o.project.id})},c=P=>{i("updatePhase",P)},u=P=>{i("archivePhase",P)},d=P=>{i("unarchivePhase",P)},f=P=>{i("copyPhaseToTemplate",P)},p=P=>{i("addMilestone",P)},m=P=>{i("bulkAddMilestone",P)},h=P=>{i("updateMilestone",P)},g=P=>{i("archiveMilestone",P)},y=P=>{i("unarchiveMilestone",P)},C=P=>{i("addActivity",P)},v=P=>{i("bulkAddActivity",P)},_=P=>{i("update:activity",P)},b=P=>{i("archiveActivity",P)},w=P=>{i("unarchiveActivity",P)},k=P=>{i("addSubtask",P)},A=P=>{i("updateSubtask",P)},T=P=>{i("deleteSubtask",P)},S=r.computed(()=>s.value.flatMap(P=>P.activities)),E=r.computed(()=>o.devStatuses??[]),D=r.computed(()=>o.sprints??[]),x=P=>{i("addFiles",P)},$=P=>{i("removeFile",P)},B=P=>{i("addComment",P)},I=P=>{i("updateComment",P)},V=P=>{i("removeComment",P)},j=r.ref(!1),F=r.ref(!1),q=r.ref(!1),Q=r.ref(!1),ae=(P,se)=>{i("applyTemplate",{templateId:P,projectId:se}),j.value=!1},ne=(P,se)=>{var ke;const Se=(ke=o.templates)==null?void 0:ke.at(-1),qe=Se?Xe.LexoRank.parse(Se.rank).genNext():Xe.LexoRank.middle();i("saveTemplate",{templateName:P,rank:qe.format(),phaseIds:se}),F.value=!1},ye=P=>{Q.value=!0;const se=ime(P,o.phases);i("bulkAddPhase",{projectId:o.project.id,phases:se,onSuccess:()=>{Q.value=!1,q.value=!1},onError:()=>{Q.value=!1}})};r.watch(q,P=>{P&&(Q.value=!1)});const re=$r.useRouter(),ie=r.ref("overview"),U=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(ie,P=>{P==="feed"?(re.push({name:Fe.feed}),console.log("Navigating to feed...")):P==="dev"?(re.push({name:Fe.dev}),console.log("Navigating to dev...")):P==="overview"?(re.push({name:Fe.project}),console.log("Navigating to feed...")):P==="mapping"&&(re.push({name:Fe.mapping}),console.log("Navigating to feed..."))}),(P,se)=>{var qe;const Se=r.resolveComponent("RouterView");return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-overview"},P.$attrs),[r.createElementVNode("div",zme,[r.createVNode(os,null,{primary:r.withCtx(()=>[r.createVNode(gs,{modelValue:ie.value,"onUpdate:modelValue":se[0]||(se[0]=ke=>ie.value=ke),tabs:U},null,8,["modelValue"]),r.createVNode(ue,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:P.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:se[1]||(se[1]=ke=>P.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(Sa,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:ke})=>[r.createVNode(ue,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:P.$t("project.phase.add"),onClick:ke},null,8,["label","onClick"])]),menu:r.withCtx(({close:ke})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{ke(),l()}},r.toDisplayString(P.$t("project.bulk.menu.single")),9,Ume),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{ke(),q.value=!0}},r.toDisplayString(P.$t("project.bulk.menu.bulkInsert")),9,qme)]),_:1})):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:1,class:"ao-project-overview__save-as-template",color:"primary",label:P.$t("project.template.save.label"),onClick:se[2]||(se[2]=ke=>F.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:2,class:"ao-project-overview__add-template",color:"primary",label:P.$t("project.template.apply.label"),onClick:se[3]||(se[3]=ke=>j.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Hme,[r.createVNode(vd,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"time-tracking-data":t.timeTrackingData,"estimation-unit":(qe=t.project)==null?void 0:qe.estimationUnit,onAddMilestone:p,onBulkAddMilestone:m,onUpdateMilestone:h,onArchiveMilestone:g,onUnarchiveMilestone:y,onAddPhase:a,onUpdatePhase:c,onArchivePhase:u,onUnarchivePhase:d,onCopyPhaseToTemplate:f},null,8,["phases","closed-status","is-editable","users","time-tracking-data","estimation-unit"])])]),r.createVNode(Se,{class:"ao-project__sidebar",phases:t.phases,"project-id":t.project.id,"project-name":t.project.name,users:t.users,"is-editable":t.isEditable===!0,"closed-status":t.closedStatus,"time-tracking-data":t.timeTrackingData,onClose:se[4]||(se[4]=ke=>P.$router.push({name:r.unref(Fe).project})),onUpdateMilestone:h,onAddActivity:C,onBulkAddActivity:v,onUpdateActivity:_,onArchiveActivity:b,onUnarchiveActivity:w},null,8,["phases","project-id","project-name","users","is-editable","closed-status","time-tracking-data"]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(Se,{name:"modal",activities:S.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":E.value,sprints:D.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,"onUpdate:activity":_,onAddSubtask:k,onUpdateSubtask:A,onDeleteSubtask:T,onAddFiles:x,onRemoveFile:$,onAddComment:B,onUpdateComment:I,onRemoveComment:V},{default:r.withCtx(({Component:ke})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(ke),null,{default:r.withCtx(R=>[r.renderSlot(P.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(R)))]),_: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"])]))],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[F.value?(r.openBlock(),r.createBlock(Gg,{key:0,phases:t.phases,onClose:se[5]||(se[5]=ke=>F.value=!1),onSave:ne},null,8,["phases"])):r.createCommentVNode("",!0),j.value?(r.openBlock(),r.createBlock(Kg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:se[6]||(se[6]=ke=>j.value=!1),onApply:ae},null,8,["project-id","templates"])):r.createCommentVNode("",!0),q.value?(r.openBlock(),r.createBlock(hd,{key:2,open:q.value,"onUpdate:open":se[7]||(se[7]=ke=>q.value=ke),title:P.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":Q.value,onSubmit:ye},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}});const Wme={class:"ao-card-feed__header"},Zme={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},Kme={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},Gme={class:"ao-card-feed__body"},Yme={key:0,class:"ao-card-feed__breadcrumbs"},Jme={class:r.normalizeClass(["ao-card-feed__title-group"])},Xme={class:"ao-card-feed__title-line"},Qme={key:0,class:"ao-card-feed__slug"},ehe={key:1,class:"ao-card-feed__deadline"},the={class:"ao-card-feed__footer"},nhe={class:"ao-card-feed__footer-row"},ohe={class:"ao-assignees"},rhe={key:0,class:"ao-assignee"},ihe={key:0,class:"ao-card-feed__subitems"},she={key:0,class:"ao-card-feed__subitem"},ahe={class:"ao-card-feed__subitem"},lhe={key:1,class:"ao-card-feed__subitem"},che={class:"ao-card-feed__subitem"},uhe={class:"ao-card-feed__timer-wrapper"},dhe={class:"ao-card-feed__footer-row"},fhe={key:0,class:"ao-card-feed__progress-wrapper"},phe={class:"ao-card-feed__subitem"},mhe={class:"ao-card-feed__subitem"},_d=r.defineComponent({__name:"AoCardFeed",props:{id:{},name:{},projectName:{},projectId:{},projectColor:{},phaseName:{},milestoneName:{},milestoneColor:{},deadline:{},important:{type:Boolean},blocked:{type:Boolean},assignee:{},slug:{},comments:{},attachments:{},tasks:{},isEditable:{type:Boolean},isPrivate:{type:Boolean},isClosed:{type:Boolean},tagType:{}},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=g=>{o("updateActivity",{id:n.id,name:g})},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]:[]),u=r.computed(()=>La(n.deadline)),d=g=>{o("removeAssignee",g)},f=()=>{o("startTimer",{activityId:n.id,name:n.name,project:n.projectName,projectId:n.projectId,slug:n.slug})},p=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.length}),m=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.filter(y=>y.isDone).length}),h=r.computed(()=>(m.value||0)/(p.value||1));return(g,y)=>(r.openBlock(),r.createBlock(ml,{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",Wme,[i.value?(r.openBlock(),r.createBlock(Vi,{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.important||t.isClosed||t.blocked?(r.openBlock(),r.createElementBlock("div",Zme,[t.isPrivate?(r.openBlock(),r.createBlock(be,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.important?(r.openBlock(),r.createBlock(be,{key:1,name:"FlagRounded",class:"ao-card-feed__important",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(be,{key:2,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",Kme,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",Gme,[l.value?(r.openBlock(),r.createElementBlock("span",Yme,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Jme,[r.createElementVNode("div",Xme,[t.slug?(r.openBlock(),r.createElementBlock("span",Qme,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(ht,{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",ehe,r.toDisplayString(u.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",the,[r.createElementVNode("div",nhe,[r.createElementVNode("ul",ohe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,C=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:C.id},[C?(r.openBlock(),r.createElementBlock("li",rhe,[r.createVNode(Xn,{"user-name":r.unref(Up)(C),"avatar-url":C.avatarUrl,"is-closable":!0,onClose:()=>d(C.id)},null,8,["user-name","avatar-url","onClose"])])):r.createCommentVNode("",!0)],64))),128))]),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",ihe,[t.comments?(r.openBlock(),r.createElementBlock("li",she,[r.createVNode(be,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",ahe,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",lhe,[r.createVNode(be,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",che,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",uhe,[r.createVNode(be,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(f,["stop"])})])]),r.createElementVNode("div",dhe,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",fhe,[r.createElementVNode("div",phe,[r.createVNode(be,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",mhe,r.toDisplayString(m.value)+" / "+r.toDisplayString(p.value),1)]),r.createVNode(hl,{percentages:h.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}});const hhe={class:"ao-project-milestone"},ghe={class:"ao-project-milestone__header"},vhe={class:"ao-project-milestone__header_line"},_he={class:"ao-project-milestone__header_line"},yhe={class:"ao-project-milestone__title"},Che={key:0,class:"ao-fieldset ao-milestone__fieldset"},bhe={class:"ao-field__row ao-milestone__field-row"},khe={class:"ao-field ao-field--inline"},whe={class:"ao-field__row ao-milestone__field-row"},Ehe={class:"ao-field ao-milestone__field-multiselect"},She={class:"ao-milestone__color-actions"},xhe=["onClick"],The=["title","onClick"],Ahe=["onClick"],Nhe=["onClick"],Dhe={class:"ao-project-milestone__body"},$he={key:0,class:"ao-project-milestone__footer"},Bhe=["onClick"],Mhe=["onClick"],bp=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}=Bt(),o=t,i=e,s=S=>{var E;i("startTimer",S),(E=window.parent)==null||E.postMessage({type:"startTimer",data:S},"*")},a=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.find(E=>E.id===o.phaseId)}),l=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.flatMap(E=>E.milestones)}),c=r.computed(()=>{var S;return(S=l.value)==null?void 0:S.find(E=>E.id===o.milestoneId)}),u=r.computed(()=>{var S;return(S=c.value)==null?void 0:S.activities});r.watch(u,(S,E)=>{Wn(S,E)});const d=S=>{i("close",S)},f=()=>{const{name:S,rank:E}=Zo(u.value??[],"activity",n);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:E,projectId:o.projectId})},p=()=>{const S=n("template.defaultName.activity",{idx:1}),E=ns(u.value??[]);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:E,projectId:o.projectId})},m=r.ref(!1),h=r.ref(!1),g=S=>{h.value=!0;const E=rme(S,u.value??[]);i("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:E,onSuccess:()=>{h.value=!1,m.value=!1},onError:()=>{h.value=!1}})};r.watch(m,S=>{S&&(h.value=!1)});const y=S=>{i("updateActivity",S)},C=S=>{u.value&&"moved"in S&&i("updateActivity",{id:S.moved.element.id,rank:Mr(u.value,S.moved.newIndex)})},v=r.computed({get:()=>{var S;return(S=c.value)==null?void 0:S.color},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,color:S})}}),_=r.computed({get:()=>{var S;return((S=c.value)==null?void 0:S.deadline)??""},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,deadline:S!=null&&S.length?S:null})}}),b=S=>o.closedStatus?nu(S,o.closedStatus):!1,w=r.computed(()=>{var S;return((S=o.users)==null?void 0:S.map(E=>({label:`${E.firstName} ${E.lastName}`,value:E.id,avatar:E.avatarUrl})))||[]}),k=r.computed({get(){var S,E;return(E=(S=c.value)==null?void 0:S.assignee)!=null&&E.id?[c.value.assignee.id]:[]},set(S){i("updateMilestone",{id:o.milestoneId,assigneeId:S[0]??null})}}),A=r.computed({get(){var S;return((S=c.value)==null?void 0:S.important)??!1},set(S){i("updateMilestone",{id:o.milestoneId,important:S})}}),T=(S,E)=>{const D=S.currentTarget;D instanceof HTMLElement&&E(D)};return(S,E)=>{var D;return r.openBlock(),r.createElementBlock("div",hhe,[r.createElementVNode("header",ghe,[r.createElementVNode("div",vhe,[r.createVNode(ue,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:d})]),r.createElementVNode("div",_he,[r.createElementVNode("div",yhe,[r.createVNode(ht,{title:((D=c.value)==null?void 0:D.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(Gc,{modelValue:A.value,"onUpdate:modelValue":E[0]||(E[0]=x=>A.value=x),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:S.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),c.value?(r.openBlock(),r.createElementBlock("div",Che,[r.createElementVNode("div",bhe,[r.createElementVNode("label",khe,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[1]||(E[1]=x=>_.value=x),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,_.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",whe,[r.createElementVNode("label",Ehe,[r.createVNode(Ct,{modelValue:k.value,"onUpdate:modelValue":E[2]||(E[2]=x=>k.value=x),options:w.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:S.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:x,handleTagRemove:$})=>[r.createVNode(Xn,{"user-name":x.label,"avatar-url":x.avatar,"is-closable":!0,onClose:B=>$(x,B)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",She,[r.createVNode(jr,{color:v.value,"onUpdate:color":E[3]||(E[3]=x=>v.value=x)},{clickable:r.withCtx(({openPicker:x,bgColor:$})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:$}),class:"color-button",onClick:B=>T(B,x)},null,12,xhe)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(Sa,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:x})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:S.$t("project.activity.add"),onClick:x},[r.createVNode(be,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,The)]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),p()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,Ahe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Nhe)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Dhe,[r.createVNode(r.unref(ko),r.mergeProps({class:"ao-project-milestone__activities",list:u.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},S.$attrs,{onChange:C}),{item:r.withCtx(({element:x})=>{var $,B,I,V,j;return[r.createVNode(_d,{id:x.id,name:x.name||x.id,"project-id":t.projectId,"phase-name":($=a.value)==null?void 0:$.name,"milestone-name":(B=c.value)==null?void 0:B.name,"milestone-color":(I=c.value)==null?void 0:I.color,deadline:x.deadline,important:x.important,blocked:x.blocked,users:t.users,assignee:x.assignee,slug:x.slug,comments:(V=x.comments)==null?void 0:V.length,attachments:(j=x.attachments)==null?void 0:j.length,tasks:x.tasks,"is-editable":t.isEditable,"is-private":x.private,"is-closed":b(x),onClick:F=>S.$router.push({name:r.unref(Fe).activity,params:{milestoneId:t.milestoneId,activityId:x.id}}),onUpdateActivity:y,onRemoveAssignee:()=>y({id:x.id,assigneeId:null}),onStartTimer:s},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&x.active?(r.openBlock(),r.createBlock(ue,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("archive"),onClick:r.withModifiers(()=>S.$emit("archiveActivity",{id:x.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!x.active?(r.openBlock(),r.createBlock(ue,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>S.$emit("unarchiveActivity",{id:x.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","important","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",$he,[r.createVNode(Sa,null,{trigger:r.withCtx(({open:x})=>[r.createVNode(wo,{"icon-name":"Add",label:S.$t("project.activity.add"),onClick:x},null,8,["label","onClick"])]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),f()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,Bhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Mhe)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(hd,{key:0,open:m.value,"onUpdate:open":E[4]||(E[4]=x=>m.value=x),title:S.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":h.value,onSubmit:g},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])}}});const Lhe=r.defineComponent({__name:"AoProjectOverviewActivityDetails",props:{phaseId:{},milestoneId:{},activityId:{},activityTypes:{},devStatuses:{},activities:{},selectedActivity:{},isTaskCheckable:{type:Function},statuses:{},phases:{},users:{},project:{},userId:{},isEditable:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function},sprints:{}},emits:["update:activity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","createSprint"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>{var C;return(C=n.phases)==null?void 0:C.find(v=>v.id===n.phaseId)}),s=r.computed(()=>{var C;return(C=n.phases)==null?void 0:C.flatMap(v=>v.milestones)}),a=r.computed(()=>{var C;return(C=s.value)==null?void 0:C.find(v=>v.id===n.milestoneId)}),l=r.computed(()=>{var C;return n.selectedActivity??((C=n.activities)==null?void 0:C.find(v=>v.id===n.activityId))}),c=C=>{o("update:activity",C)},u=C=>{o("addSubtask",C)},d=C=>{o("updateSubtask",C)},f=C=>{o("deleteSubtask",C)},p=C=>{o("addFiles",C)},m=C=>{o("removeFile",C)},h=C=>{o("addComment",C)},g=C=>{o("updateComment",C)},y=C=>{o("removeComment",C)};return(C,v)=>{var _,b;return l.value?(r.openBlock(),r.createBlock(id,{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,onClose:C.$router.back,"onUpdate:activity":c,onAddSubtask:u,onUpdateSubtask:d,onDeleteSubtask:f,onAddFiles:p,onRemoveFile:m,onAddComment:h,onUpdateComment:g,onRemoveComment:y,onCreateSprint:v[0]||(v[0]=w=>o("createSprint",w))},{default:r.withCtx(w=>[r.renderSlot(C.$slots,"default",r.normalizeProps(r.guardReactiveProps(w)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints","onClose"])):r.createCommentVNode("",!0)}}}),Ohe={class:"ao-col-header"},Ihe=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",Ohe,[r.createVNode(ht,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(Vi,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}});function Vhe(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function Ta(t){return typeof t=="function"?t():r.unref(t)}const Phe=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Fhe=t=>t!=null,Ii=()=>{};function Rhe(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 zhe(t,e={}){let n,o,i=Ii;const s=l=>{clearTimeout(l),i(),i=Ii};return l=>{const c=Ta(t),u=Ta(e.maxWait);return n&&s(n),c<=0||u!==void 0&&u<=0?(o&&(s(o),o=null),Promise.resolve(l())):new Promise((d,f)=>{i=e.rejectOnCancel?f:d,u&&!o&&(o=setTimeout(()=>{n&&s(n),o=null,d(l())},u)),n=setTimeout(()=>{o&&s(o),o=null,d(l())},c)})}}function Uhe(t,e=200,n={}){return Rhe(zhe(e,n),t)}function cc(t){var e;const n=Ta(t);return(e=n==null?void 0:n.$el)!=null?e:n}const qhe=Phe?window:void 0;function Hhe(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function jhe(t){const e=Hhe();return r.computed(()=>(e.value,!!t()))}function Whe(t,e,n={}){const{root:o,rootMargin:i="0px",threshold:s=.1,window:a=qhe,immediate:l=!0}=n,c=jhe(()=>a&&"IntersectionObserver"in a),u=r.computed(()=>{const h=Ta(t);return(Array.isArray(h)?h:[h]).map(cc).filter(Fhe)});let d=Ii;const f=r.ref(l),p=c.value?r.watch(()=>[u.value,cc(o),f.value],([h,g])=>{if(d(),!f.value||!h.length)return;const y=new IntersectionObserver(e,{root:cc(g),rootMargin:i,threshold:s});h.forEach(C=>C&&y.observe(C)),d=()=>{y.disconnect(),d=Ii}},{immediate:l,flush:"post"}):Ii,m=()=>{d(),p(),f.value=!1};return Vhe(m),{isSupported:c,isActive:f,pause(){d(),f.value=!1},resume(){f.value=!0},stop:m}}const Zhe={class:r.normalizeClass(["ao-list-kanban"])},Khe={class:"ao-list-kanban__header"},Ghe=["title"],Yhe={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},Jhe={key:1,class:"ao-list-kanban__end"},Xhe={key:0,class:"ao-list-kanban__no-more"},Qhe={key:1,class:"ao-list-kanban__divider"},ege={key:1,class:"ao-list-kanban__footer"},tge=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);Whe(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)},u=f=>{if("added"in f){const p={id:f.added.element.id,rank:Mr(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:Mr(n.list,f.moved.newIndex)})},d=r.ref(!1);return(f,p)=>(r.openBlock(),r.createElementBlock("div",Zhe,[t.title||f.$slots.header?r.renderSlot(f.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",Khe,[t.title?(r.openBlock(),r.createBlock(Ihe,{key:0,class:"ao-list-kanban__col-header",title:t.title,level:3,items:(m=t.list)==null?void 0:m.length},null,8,["title","items"])):r.createCommentVNode("",!0),t.showHeaderAdd?(r.openBlock(),r.createElementBlock("button",{key:1,class:"ao-list-kanban__header-add",title:f.$t("feed.activity.add"),onClick:p[0]||(p[0]=h=>f.$emit("addAtBeginning"))},[r.createVNode(be,{name:"Add"})],8,Ghe)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(ko),r.mergeProps({class:["ao-list-kanban__list",d.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:u,onStart:p[2]||(p[2]=m=>d.value=!0),onEnd:p[3]||(p[3]=m=>d.value=!1)}),{item:r.withCtx(({element:m})=>{var h,g,y,C,v,_,b,w,k,A;return[r.createVNode(_d,{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":(g=m.project)==null?void 0:g.id,"project-color":(y=m.project)==null?void 0:y.color,"phase-name":(v=(C=m.milestone)==null?void 0:C.phase)==null?void 0:v.name,"milestone-name":(_=m.milestone)==null?void 0:_.name,"milestone-color":(b=m.milestone)==null?void 0:b.color,deadline:m.deadline,rules:((w=m.rules)==null?void 0:w.length)||0,tasks:m.tasks,description:m.description,important:m.important,blocked:m.blocked,type:m.type,comments:(k=m.comments)==null?void 0:k.length,attachments:(A=m.attachments)==null?void 0:A.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":a(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[T=>a(m)&&c(T),()=>a(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>a(m)&&c({id:m.id,assigneeId:null}),onStartTimer:p[1]||(p[1]=T=>f.$emit("startTimer",T))},{secondary:r.withCtx(()=>[a(m)&&m.active?(r.openBlock(),r.createBlock(ue,{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(ue,{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","important","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",Yhe,[r.createVNode(be,{name:"Loading"})])):t.hasMore?(r.openBlock(),r.createElementBlock("div",{key:2,ref_key:"scrollEnd",ref:s,class:"ao-list-kanban__end"},null,512)):(r.openBlock(),r.createElementBlock("div",Jhe,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",Xhe,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",Qhe)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),f.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",ege,[r.renderSlot(f.$slots,"footer",{},()=>[t.isEditable?(r.openBlock(),r.createBlock(wo,{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 nge={class:"ao-field ao-search-field"},oge=["value","placeholder"],rge=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 u=l.target.value;o("update:modelValue",u,l)},s=Uhe(i,n.delay),a=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",nge,[r.createElementVNode("input",{value:t.modelValue,type:"text",class:"ao-field__input ao-search-field__input",placeholder:t.placeholder,onInput:c[0]||(c[0]=(...u)=>r.unref(s)&&r.unref(s)(...u)),onKeypress:r.withKeys(i,["enter"])},null,40,oge),r.createVNode(be,{name:"SearchRounded",class:r.normalizeClass(`ao-search-field__icon ao-search-field__action ${t.modelValue?"":"ao-search-field__action--visible"}`)},null,8,["class"]),r.createVNode(ue,{"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 ige={class:"ao-sprint-metrics"},sge=["onClick"],age={class:"ao-sprint-metrics__header-left"},lge={class:"ao-sprint-metrics__icon"},cge={class:"ao-sprint-metrics__title"},uge={class:"ao-sprint-metrics__dates"},dge={key:0,class:"ao-sprint-metrics__project"},fge={class:"ao-sprint-metrics__advancement"},pge={class:"ao-sprint-metrics__progress-bar"},mge={class:"ao-sprint-metrics__percent"},hge={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},gge={class:"ao-sprint-metrics__tooltip-row"},vge={class:"ao-sprint-metrics__tooltip-row"},_ge={class:"ao-sprint-metrics__tooltip-row"},yge={class:"ao-sprint-metrics__tooltip-row"},Cge={class:"ao-sprint-metrics__tooltip-row"},bge={class:"ao-sprint-metrics__tooltip-row"},kge={class:"ao-sprint-metrics__tooltip-row"},wge={class:"ao-sprint-metrics__content"},Ege={class:"ao-sprint-metrics__grid"},Sge={class:"ao-sprint-metrics__item"},xge={class:"ao-sprint-metrics__label"},Tge={class:"ao-sprint-metrics__value"},Age={key:0,class:"ao-sprint-metrics__tooltip"},Nge={class:"ao-sprint-metrics__tooltip-title"},Dge={class:"ao-sprint-metrics__item"},$ge={class:"ao-sprint-metrics__label"},Bge={class:"ao-sprint-metrics__value"},Mge={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},Lge={class:"ao-sprint-metrics__label"},Oge={class:"ao-sprint-metrics__input-row"},Ige=["value","placeholder","onInput"],Vge={key:0,class:"ao-sprint-metrics__secondary"},Pge={class:"ao-sprint-metrics__item"},Fge={class:"ao-sprint-metrics__label"},Rge={class:"ao-sprint-metrics__value"},zge=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]}},setup(t){const e=t,{t:n}=Bt(),o=["Ok for prod","Done"],i=r.ref(new Set),s=r.ref({}),a=E=>{i.value.has(E)?i.value.delete(E):i.value.add(E)},l=E=>e.projects.find(D=>D.id===E.projectId),c=E=>{var D;return((D=e.planningData[E])==null?void 0:D.plannedManDays)??0},u=E=>{var D;return((D=e.planningData[E])==null?void 0:D.remainingPlannedManDays)??0},d=E=>{var D;return((D=e.planningData[E])==null?void 0:D.users)??[]},f=E=>e.activities.filter(D=>{var x;return((x=D.sprint)==null?void 0:x.id)===E}).reduce((D,x)=>D+(x.estimation??0),0),p=E=>e.activities.filter(D=>{var $,B;if((($=D.sprint)==null?void 0:$.id)!==E)return!1;const x=(B=D.devStatus)==null?void 0:B.name;return x&&o.includes(x)}).reduce((D,x)=>D+(x.estimation??0),0),m=E=>{const D=c(E);return D<=0?0:f(E)/D},h=E=>s.value[E],g=(E,D)=>{const x=parseFloat(D);isNaN(x)||x<=0?delete s.value[E]:s.value[E]=x},y=E=>{const D=h(E);return D===void 0?0:c(E)*D},C=E=>{const D=y(E);return D<=0?null:f(E)/D},v=E=>{const D=C(E);return D===null?0:Math.round(D*100)},_=E=>{const D=f(E);if(D<=0)return 0;const x=p(E);return Math.round(x/D*100)},b=E=>{const D=f(E),x=p(E);return Math.max(0,D-x)},w=E=>{const D=u(E),x=m(E);return D*x},k=E=>{const D=w(E),x=b(E);return D<=0&&x>0?!1:D<x},A=E=>E.toFixed(1),T=E=>`${E.toFixed(2)} pts / MD`,S=(E,D)=>{const x=new Date(E),$=new Date(D),B={day:"numeric",month:"short"};return`${x.toLocaleDateString("en-UK",B)} – ${$.toLocaleDateString("en-UK",B)}`};return(E,D)=>(r.openBlock(),r.createElementBlock("div",ige,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,x=>{var $;return r.openBlock(),r.createElementBlock("div",{key:x.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:B=>a(x.id)},[r.createElementVNode("div",age,[r.createElementVNode("span",lge,r.toDisplayString(i.value.has(x.id)?"▸":"▾"),1),r.createElementVNode("span",cge,r.toDisplayString(x.name),1),r.createElementVNode("span",uge," · "+r.toDisplayString(S(x.startDate,x.endDate)),1),!i.value.has(x.id)&&l(x)?(r.openBlock(),r.createElementBlock("span",dge," · "+r.toDisplayString(($=l(x))==null?void 0:$.name),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__header-right",{"ao-sprint-metrics__header-right--behind":k(x.id)}])},[r.createElementVNode("div",fge,[r.createElementVNode("div",pge,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":k(x.id)}]),style:r.normalizeStyle({width:_(x.id)+"%"})},null,6)]),r.createElementVNode("span",mge,r.toDisplayString(_(x.id))+"% ",1),r.createElementVNode("div",hge,[D[7]||(D[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",gge,[D[0]||(D[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(_(x.id))+"%",1)]),r.createElementVNode("span",vge,[D[1]||(D[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(A(p(x.id)))+" / "+r.toDisplayString(A(f(x.id)))+" pts ",1)]),r.createElementVNode("span",_ge,[D[2]||(D[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(A(b(x.id)))+" pts",1)]),D[8]||(D[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",yge,[D[3]||(D[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(A(w(x.id)))+" pts",1)]),r.createElementVNode("span",Cge,[D[4]||(D[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(A(u(x.id)))+" MD",1)]),r.createElementVNode("span",bge,[D[5]||(D[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(T(m(x.id))),1)]),D[9]||(D[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",kge,[D[6]||(D[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(k(x.id)?"Behind plan":"On track"),1)])])])],2)],8,sge),r.withDirectives(r.createElementVNode("div",wge,[r.createElementVNode("div",Ege,[r.createElementVNode("div",Sge,[r.createElementVNode("div",xge,r.toDisplayString(r.unref(n)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",Tge,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":d(x.id).length>0}])},[r.createTextVNode(r.toDisplayString(A(c(x.id)))+" MD ",1),d(x.id).length>0?(r.openBlock(),r.createElementBlock("span",Age,[r.createElementVNode("span",Nge,r.toDisplayString(A(c(x.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d(x.id),B=>(r.openBlock(),r.createElementBlock("span",{key:B.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString(B.fullName),1),r.createElementVNode("span",null,r.toDisplayString(A(B.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",Dge,[r.createElementVNode("div",$ge,r.toDisplayString(r.unref(n)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",Bge,r.toDisplayString(A(f(x.id)))+" pts ",1)]),r.createElementVNode("div",Mge,[r.createElementVNode("div",Lge,r.toDisplayString(r.unref(n)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",Oge,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:s.value[x.id]??"",placeholder:r.unref(n)("sprintMetrics.targetVelocityPlaceholder"),onInput:B=>g(x.id,B.target.value)},null,40,Ige),D[10]||(D[10]=r.createElementVNode("span",{class:"ao-sprint-metrics__unit"},"pts / MD",-1))]),m(x.id)>0?(r.openBlock(),r.createElementBlock("div",Vge,r.toDisplayString(r.unref(n)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(T(m(x.id))),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",Pge,[r.createElementVNode("div",Fge,r.toDisplayString(r.unref(n)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",Rge,[C(x.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(v(x.id))+"% · "+r.toDisplayString(A(f(x.id)))+" / "+r.toDisplayString(A(y(x.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!i.value.has(x.id)]])])}),128))]))}});const Uge=te(zge,[["__scopeId","data-v-98b799f1"]]),qge={class:"ao-feed"},Hge={class:"ao-feed__filters"},jge={class:"ao-feed__body"},Jc=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},devStatuses:{default:()=>[]},project:{default:void 0},projects:{default:()=>[]},filters:{},activityTypes:{default:()=>[]},users:{},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:()=>[]},sprintPlanningData:{default:()=>({})}},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"],setup(t,{emit:e}){const{t:n}=Bt(),o=t,i=e;function s(R,le){i("toast",R,le)}const a=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.statuses),c=r.computed(()=>o.feedMode==="dev"?a.value.filter(R=>R.activityType==="dev"):a.value),u=async(R,le)=>{await i("selectActivity",R,le)},d=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([R,le,ge,me],[we,Re])=>{const Be=o.feedMode==="dev"?"devStatus":"status";d.value=Object.fromEntries(R.map(Ae=>[Ae.id,le.filter(Ve=>{const Pe=Ve[Be];return(Pe==null?void 0:Pe.id)===Ae.id})])),ge&&!f.value?(u(ge,null),f.value=!0):me&&!f.value&&(u(null,me),f.value=!0),p.value&&Wn(le,Re)},{immediate:!0});const h=r.computed(()=>{var R;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((R=o.selectedActivity.milestone.phase)==null?void 0:R.name)??""} / ${o.selectedActivity.milestone.name??""}`}),g=R=>{var Ae;const le=o.feedMode==="dev"?o.activities.filter(Ve=>Ve.activityType==="dev"):o.activities,ge=le==null?void 0:le.at(-1),me=ge?Xe.LexoRank.parse(ge.rank).genNext():Xe.LexoRank.middle(),we=((Ae=o.activities)==null?void 0:Ae.length)??0,Re=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:we+1}),rank:me.format(),...Re?{statusDevId:R.id,type:"dev"}:{statusId:R.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 Ve=o.sprints.find(Pe=>Pe.id===o.filters.sprintId[0]);Ve&&(Be.sprintId=Ve.id,Be.projectId=Ve.projectId)}p.value=!0,i("addActivity",Be)},y=R=>{var Ae,Ve;const le=o.feedMode==="dev"?"devStatus":"status",ge=((Ae=o.activities)==null?void 0:Ae.filter(Pe=>{const dt=Pe[le];return(dt==null?void 0:dt.id)===R.id}))??[],me=ns(ge),we=((Ve=o.activities)==null?void 0:Ve.length)??0,Re=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:we+1}),rank:me,...Re?{statusDevId:R.id,type:"dev"}:{statusId:R.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 Pe=o.sprints.find(dt=>dt.id===o.filters.sprintId[0]);Pe&&(Be.sprintId=Pe.id,Be.projectId=Pe.projectId)}p.value=!0,i("addActivity",Be)},C=(R,le)=>{p.value=!1,i("update:filters",{...o.filters,[R]:le})},v=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>v.value.map(R=>({value:R.id,label:R.name}))),b=r.computed(()=>o.sprints.map(R=>({value:R.id,label:`${R.name} · ${R.startDate} – ${R.endDate}`,startDate:R.startDate,endDate:R.endDate,projectId:R.projectId}))),w=r.computed(()=>{const R=o.filters[so.sprint]??[];return o.sprints.filter(le=>R.includes(le.id))});r.computed(()=>{var R;return(R=o.activityTypes)==null?void 0:R.map(le=>({value:le.id,label:le.name}))});const k=r.computed(()=>o.users.map(R=>({value:R.id,label:`${R.firstName} ${R.lastName}`,avatar:R.avatarUrl}))),A=R=>{o.selectedActivity&&i("update:activity",R)},T=R=>{i("update:activity",R)},S=R=>{i("archiveActivity",R)},E=R=>{i("unarchiveActivity",R)},D=R=>{var le;i("startTimer",R),(le=window.parent)==null||le.postMessage({type:"startTimer",data:R},"*")},x=R=>{p.value=!1,i("update:searchText",R)},$=R=>{p.value=!1,i("clear:searchText",R)},B=R=>{o.selectedActivity&&i("addSubtask",R)},I=R=>{o.selectedActivity&&i("updateSubtask",R)},V=R=>{o.selectedActivity&&i("deleteSubtask",R)},j=R=>{i("addFiles",R)},F=R=>{i("removeFile",R)},q=R=>{o.selectedActivity&&i("addComment",{...R,activityId:o.selectedActivity.id})},Q=R=>{const{id:le}=o.selectedActivity||{};le&&i("updateComment",R)},ae=R=>{const{id:le}=o.selectedActivity||{};le&&i("removeComment",R)},ne=$r.useRouter(),ye=$r.useRoute(),re=r.ref("feed");r.watch(()=>ye.name,R=>{R===Vo.feed||R==="ActivityFeed"||R==="ActivityFeedWithActivity"?re.value="feed":R===Vo.dev||R==="ActivityFeedDev"||R==="ActivityFeedDevWithActivity"?re.value="dev":R===Fe.feed?re.value="feed":R===Fe.dev?re.value="dev":R===Fe.project?re.value="overview":R===Fe.mapping&&(re.value="mapping")},{immediate:!0});const ie=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],U=r.computed(()=>P.value?ie.filter(R=>R.value==="feed"||R.value==="dev"):ie),P=r.computed(()=>!o.project&&ye.name&&(ye.name===Vo.feed||ye.name===Vo.dev||ye.name==="ActivityFeed"||ye.name==="ActivityFeedDev"||ye.name==="ActivityFeedWithActivity"||ye.name==="ActivityFeedDevWithActivity")),se=r.computed(()=>P.value?Vo.feed:Fe.feed),Se=r.computed(()=>P.value?Vo.dev:Fe.dev),qe=r.computed(()=>Fe.project),ke=r.computed(()=>Fe.mapping);return r.watch(re,R=>{R==="feed"?ne.push({name:se.value}):R==="dev"?ne.push({name:Se.value}):R==="overview"?ne.push({name:qe.value}):R==="mapping"&&ne.push({name:ke.value})}),(R,le)=>{var ge;return r.openBlock(),r.createElementBlock("div",qge,[r.createVNode(os,null,{primary:r.withCtx(()=>[r.createElementVNode("div",Hge,[r.createVNode(gs,{modelValue:re.value,"onUpdate:modelValue":le[0]||(le[0]=me=>re.value=me),tabs:U.value},null,8,["modelValue","tabs"]),r.createVNode(rge,{"model-value":t.searchText,placeholder:R.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":x,onClear:$},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(Ct,{key:0,"model-value":t.filters[r.unref(so).project],mode:"tags",options:_.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__projects",placeholder:R.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":le[1]||(le[1]=me=>C(r.unref(so).project,me))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(Ct,{key:1,"model-value":t.filters[r.unref(so).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:R.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":le[2]||(le[2]=me=>C(r.unref(so).sprint,me))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),k.value.length?(r.openBlock(),r.createBlock(Ct,{key:2,"model-value":t.filters[r.unref(so).assignee],mode:"tags",options:k.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:R.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":le[3]||(le[3]=me=>C(r.unref(so).assignee,me))},{tag:r.withCtx(({option:me,handleTagRemove:we})=>[r.createVNode(Xn,{"user-name":me.label,"avatar-url":me.avatar,"is-closable":!0,onClose:Re=>we(me,Re)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["model-value","options","placeholder"])):r.createCommentVNode("",!0)]),r.createVNode(ue,{class:"ao-feed__only-non-assigned",size:"sm","icon-name":t.showsOnlyNonAssigned?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:le[4]||(le[4]=me=>R.$emit("update:showsOnlyNonAssigned",!t.showsOnlyNonAssigned))},null,8,["icon-name","label","aria-checked"]),r.createVNode(ue,{class:"ao-feed__only-important",size:"sm","icon-name":t.showsOnlyImportant?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:le[5]||(le[5]=me=>R.$emit("update:showsOnlyImportant",!t.showsOnlyImportant))},null,8,["icon-name","label","aria-checked"]),r.createVNode(ue,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchivedActivities?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:le[6]||(le[6]=me=>R.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&w.value.length>0?(r.openBlock(),r.createBlock(Uge,{key:0,sprints:w.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:v.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",jge,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,me=>(r.openBlock(),r.createBlock(tge,{key:me.id,status:me,list:d.value[me.id],title:me.name,"footer-label":R.$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:()=>g(me),onAddAtBeginning:()=>y(me),onSelectActivity:u,onArchiveActivity:S,onUnarchiveActivity:E,onUpdateActivity:T,onStartTimer:D},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(id,{key:0,activity:t.selectedActivity,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":(ge=t.selectedActivity.milestone)==null?void 0:ge.id,"template-activities":a.value,users: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:v.value,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":o.loadAttachmentPreview,sprints:t.activitySprints,onClose:le[7]||(le[7]=()=>u(null,null)),"onUpdate:activity":A,onAddSubtask:B,onUpdateSubtask:I,onDeleteSubtask:V,onAddFiles:j,onRemoveFile:F,onAddComment:q,onUpdateComment:Q,onRemoveComment:ae,onToast:s,onCreateSprint:le[8]||(le[8]=me=>i("createSprint",me))},{default:r.withCtx(me=>[r.renderSlot(R.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(me)))]),_: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"])):r.createCommentVNode("",!0)]))])}}});const Wge={class:"ao-project-mapping"},Zge={class:"ao-project-mapping-mapping__body"},Kge={class:"ao-project-mapping-mapping__phases"},Gge={key:0,class:"ao-project-mapping-mapping__image-wrapper"},Yge=["src","alt"],Jge=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}=Bt(),o=t,i=e,s=()=>{const{name:v,rank:_}=Zo(o.phases,"phase",n);i("addPhase",{name:v,rank:_,projectId:o.project.id})},a=()=>{const v=n("template.defaultName.phase",{idx:1}),_=ns(o.phases);i("addPhase",{name:v,rank:_,projectId:o.project.id})},l=v=>{i("updatePhase",v)},c=v=>{i("archivePhase",v)},u=v=>{i("unarchivePhase",v)},d=v=>{i("copyPhaseToTemplate",v)},f=r.ref(!1),p=r.ref(!1),m=(v,_)=>{i("applyTemplate",{templateId:v,projectId:_}),f.value=!1},h=(v,_)=>{var k;const b=(k=o.templates)==null?void 0:k.at(-1),w=b?Xe.LexoRank.parse(b.rank).genNext():Xe.LexoRank.middle();i("saveTemplate",{templateName:v,rank:w.format(),phaseIds:_}),p.value=!1},g=$r.useRouter(),y=r.ref("mapping"),C=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(y,v=>{v==="feed"?(g.push({name:Fe.feed}),console.log("Navigating to feed...")):v==="dev"?(g.push({name:Fe.dev}),console.log("Navigating to dev...")):v==="overview"?(g.push({name:Fe.project}),console.log("Navigating to feed...")):v==="mapping"&&(g.push({name:Fe.mapping}),console.log("Navigating to feed..."))}),(v,_)=>{var b;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-mapping-overview"},v.$attrs),[r.createElementVNode("div",Wge,[r.createVNode(os,null,{primary:r.withCtx(()=>[r.createVNode(gs,{modelValue:y.value,"onUpdate:modelValue":_[0]||(_[0]=w=>y.value=w),tabs:C},null,8,["modelValue"]),r.createVNode(ue,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:v.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:_[1]||(_[1]=w=>v.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:0,class:"ao-mapping__quick-add-phase",size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:v.$t("project.phase.add"),onClick:a},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:1,class:"ao-project-mapping-overview__save-as-template",color:"primary",label:v.$t("project.template.save.label"),onClick:_[2]||(_[2]=w=>p.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:2,class:"ao-project-mapping-overview__add-template",color:"primary",label:v.$t("project.template.apply.label"),onClick:_[3]||(_[3]=w=>f.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Zge,[r.createElementVNode("div",Kge,[r.createVNode(vd,{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:u,onCopyPhaseToTemplate:d},null,8,["phases","closed-status","is-editable","users","estimation-unit"])]),t.project.architectureImage?(r.openBlock(),r.createElementBlock("div",Gge,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,Yge)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[p.value?(r.openBlock(),r.createBlock(Gg,{key:0,phases:t.phases,onClose:_[4]||(_[4]=w=>p.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createBlock(Kg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=w=>f.value=!1),onApply:m},null,8,["project-id","templates"])):r.createCommentVNode("",!0)]))],64)}}});const Uo={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},Xge=(t,e={})=>[{path:t,name:Uo.TEMPLATES,redirect:{name:Uo.TEMPLATES_LIST},...e,children:[{path:"",name:Uo.TEMPLATES_LIST,component:Yg},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:Uo.TEMPLATE_DETAILS,component:jg,props:!0}]}],Fe={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},Vo={feed:"ActivityFeed",dev:"ActivityFeedDev"},Qge=(t,e={})=>[{path:t,...e,redirect:{name:Fe.project},children:[{path:"",name:Fe.project,component:jme,props:!0,children:[{path:":phaseId/:milestoneId",name:Fe.milestone,component:bp,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Fe.activity,props:{default:!0,modal:!0},components:{default:bp,modal:Lhe}}]},{path:"feed",name:Fe.feed,component:Jc,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Fe.dev,component:Jc,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Fe.mapping,component:Jge,props:!0}]}],e0e={class:"ao-templates"},Yg=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Bt(),o=t,i=e;r.watch(()=>o.templates,(u,d)=>{Wn(u,d)});const s=()=>{var m,h;const u=(m=o.templates)==null?void 0:m.at(-1),d=u?Xe.LexoRank.parse(u.rank).genNext():Xe.LexoRank.middle(),f=((h=o.templates)==null?void 0:h.length)??0,p={name:n("template.defaultName.template",{idx:f+1}),rank:d.format()};i("addTemplate",p)},a=(u,d)=>{i("updateItem",{itemType:Ze.TEMPLATES,id:u,templateId:u,data:{name:d}})},l=(u,d)=>{i("removeItem",{itemType:Ze.TEMPLATES,templateId:u,data:{id:u,...d?{name:d}:{}}})},c=u=>{if(u.moved){const d=ts(u,o.templates??[]);i("updateItem",{itemType:Ze.TEMPLATES,id:u.moved.element.id,templateId:u.moved.element.id,data:{rank:d}})}};return(u,d)=>(r.openBlock(),r.createElementBlock("div",e0e,[r.createVNode(os,null,{secondary:r.withCtx(()=>[r.createVNode(ue,{label:u.$t("templates.new"),color:"primary","icon-name":"Add","icon-position":"start",onClick:s},null,8,["label"])]),_:1}),r.createVNode(r.unref(ko),{"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(Q7,{id:f.id,title:f.name,phases:f.phases,milestones:(p=f.phases)!=null&&p.length?r.unref(w7)(f.phases):0,activities:f.phases?r.unref(E7)(f.phases):0,"updated-at":f.updatedAt,"updated-by":f.updatedBy,onUpdateTitle:m=>a(f.id,m),onClick:m=>u.$router.push({name:r.unref(Uo).TEMPLATE_DETAILS,params:{templateId:f.id}}),onDeleteItem:d[0]||(d[0]=(m,h)=>l(m,h))},null,8,["id","title","phases","milestones","activities","updated-at","updated-by","onUpdateTitle","onClick"])]}),_:1},8,["model-value"])]))}});const t0e={class:"ao-field__label"},Jg=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",t0e,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),n0e=["type","value","disabled","readonly"],o0e=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(Jg,{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,n0e)]),_:1},8,["label"]))}}),r0e={class:"ao-field"},i0e={class:"ao-field__label"},s0e=["checked","disabled"],Xg=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",r0e,[r.createElementVNode("span",i0e,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,s0e)]))}}),a0e={class:"ao-audit-config"},l0e={key:0,class:"ao-audit-config__loading"},c0e={key:1,class:"ao-audit-config__error"},u0e={key:2,class:"ao-audit-config__empty"},d0e={key:3,class:"ao-audit-config__table"},f0e={class:"ao-audit-config__th ao-audit-config__th--table"},p0e={class:"ao-audit-config__th ao-audit-config__th--audit"},m0e={class:"ao-audit-config__th ao-audit-config__th--excluded"},h0e={class:"ao-audit-config__td ao-audit-config__td--table"},g0e={class:"ao-audit-config__table-name"},v0e={key:0,class:"ao-audit-config__schema"},_0e={class:"ao-audit-config__td ao-audit-config__td--audit"},y0e={class:"ao-audit-config__checkbox"},C0e={class:"ao-audit-config__td ao-audit-config__td--excluded"},b0e={key:0,class:"ao-audit-config__disabled-note"},k0e={class:"ao-audit-config__option"},w0e=["title"],E0e={key:0,class:"ao-audit-config__all-tracked"},S0e=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}=Bt(),s=r.computed(()=>n.tables);function a(u){return u.columns.map(d=>({value:d.name,label:d.name,isPrimaryKey:d.isPrimaryKey}))}function l(u,d){o("update",{schemaName:u.schemaName,tableName:u.tableName,isEnabled:d,excludeColumns:u.excludeColumns})}function c(u,d){const f=Array.from(new Set(d??[]));o("update",{schemaName:u.schemaName,tableName:u.tableName,isEnabled:u.isEnabled,excludeColumns:f})}return(u,d)=>(r.openBlock(),r.createElementBlock("div",a0e,[t.loading?(r.openBlock(),r.createElementBlock("div",l0e,r.toDisplayString(r.unref(i)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",c0e,r.toDisplayString(r.unref(i)("audit.error",{message:t.error})),1)):s.value.length?(r.openBlock(),r.createElementBlock("table",d0e,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",f0e,r.toDisplayString(r.unref(i)("audit.tableHeader")),1),r.createElementVNode("th",p0e,r.toDisplayString(r.unref(i)("audit.auditHeader")),1),r.createElementVNode("th",m0e,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",h0e,[r.createElementVNode("span",g0e,r.toDisplayString(f.tableName),1),f.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",v0e,r.toDisplayString(f.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",_0e,[r.createElementVNode("div",y0e,[r.createVNode(Xg,{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",C0e,[f.isEnabled?(r.openBlock(),r.createBlock(Ct,{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",k0e,[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,w0e)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[f.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",E0e,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",b0e,r.toDisplayString(r.unref(i)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",u0e,r.toDisplayString(r.unref(i)("audit.empty")),1))]))}});const x0e={class:"ao-sprint-list"},T0e={class:"ao-sprint-list__header"},A0e={class:"ao-sprint-list__title-group"},N0e={class:"ao-sprint-list__count"},D0e={class:"ao-sprint-list__actions"},$0e={key:0,class:"ao-sprint-list__toggle"},B0e={key:0,class:"ao-sprint-list__row ao-sprint-list__row--editing"},M0e=["title","onClick"],L0e=["placeholder"],O0e={class:"ao-sprint-list__date-fields"},I0e={class:"ao-sprint-list__row-actions"},V0e={class:"ao-sprint-list__rows"},P0e={class:"ao-sprint-list__identity"},F0e={class:"ao-sprint-list__name-group"},R0e={class:"ao-sprint-list__name"},z0e={key:0,class:"ao-sprint-list__archived-badge"},U0e={class:"ao-sprint-list__dates"},q0e={key:0,class:"ao-sprint-list__row-actions"},H0e=["title","onClick"],j0e={class:"ao-sprint-list__date-fields"},W0e={class:"ao-sprint-list__row-actions"},Z0e={key:1,class:"ao-sprint-list__empty"},K0e=r.defineComponent({__name:"AoSprintList",props:{sprints:{},isEditable:{type:Boolean}},emits:["updateSprint","archiveSprint","unarchiveSprint","createSprint"],setup(t,{emit:e}){const n=t,o=e,{t:i}=Bt(),s=r.ref(!1),a=r.computed(()=>s.value?n.sprints:n.sprints.filter(T=>T.active)),l=r.ref(null),c=r.ref({name:"",startDate:"",endDate:"",color:""}),u=r.ref(null),d=r.ref(null),f=T=>{l.value=T.id,c.value={name:T.name,startDate:T.startDate,endDate:T.endDate,color:T.color||""}},p=()=>{l.value=null,c.value={name:"",startDate:"",endDate:"",color:""}},m=T=>{o("updateSprint",{id:T,name:c.value.name||void 0,startDate:c.value.startDate||void 0,endDate:c.value.endDate||void 0,color:c.value.color||void 0}),p()},h=T=>{confirm(i("sprint.confirmArchive"))&&o("archiveSprint",{id:T})},g=T=>{o("unarchiveSprint",{id:T})},y=T=>Qc(Br(T),"dd/MM/yy"),C=()=>n.sprints.reduce((S,E)=>{const D=E.name.match(/^Sprint\s*(\d+)$/);return D?Math.max(S,parseInt(D[1],10)):S},0)+1,v=r.ref(!1),_=r.ref({name:"",startDate:"",endDate:"",color:"#4f5cff"}),b=()=>{v.value=!0,l.value=null,_.value={name:`Sprint ${C()}`,startDate:"",endDate:"",color:"#4f5cff"}},w=()=>{v.value=!1,_.value={name:"",startDate:"",endDate:"",color:"#4f5cff"}},k=()=>{!_.value.name||!_.value.startDate||!_.value.endDate||(o("createSprint",{name:_.value.name,startDate:_.value.startDate,endDate:_.value.endDate,color:_.value.color||void 0}),w())},A=r.computed(()=>v.value?!!(_.value.name&&_.value.startDate&&_.value.endDate):l.value?!!(c.value.name&&c.value.startDate&&c.value.endDate):!1);return(T,S)=>(r.openBlock(),r.createElementBlock("section",x0e,[r.createElementVNode("div",T0e,[r.createElementVNode("div",A0e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(i)("sprint.planning")),1),r.createElementVNode("span",N0e,r.toDisplayString(a.value.length),1)]),r.createElementVNode("div",D0e,[t.sprints.some(E=>!E.active)?(r.openBlock(),r.createElementBlock("label",$0e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[0]||(S[0]=E=>s.value=E),type:"checkbox"},null,512),[[r.vModelCheckbox,s.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("sprint.showArchived")),1)])):r.createCommentVNode("",!0),t.isEditable&&!v.value?(r.openBlock(),r.createBlock(ue,{key:1,color:"primary",variant:"solid",size:"sm","icon-name":"Add","icon-position":"start",label:r.unref(i)("sprint.add"),onClick:b},null,8,["label"])):r.createCommentVNode("",!0)])]),v.value?(r.openBlock(),r.createElementBlock("div",B0e,[r.createVNode(jr,{color:_.value.color,"onUpdate:color":S[1]||(S[1]=E=>_.value.color=E)},{clickable:r.withCtx(({openPicker:E,bgColor:D})=>[r.createElementVNode("button",{ref_key:"colorTriggerRef",ref:u,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:D}),title:r.unref(i)("sprint.color"),onClick:x=>E(x.currentTarget)},null,12,M0e)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[2]||(S[2]=E=>_.value.name=E),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name",placeholder:r.unref(i)("sprint.name")},null,8,L0e),[[r.vModelText,_.value.name]]),r.createElementVNode("div",O0e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[3]||(S[3]=E=>_.value.startDate=E),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.startDate]]),S[9]||(S[9]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[4]||(S[4]=E=>_.value.endDate=E),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.endDate]])]),r.createElementVNode("div",I0e,[r.createVNode(ue,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!A.value,title:r.unref(i)("common.save"),onClick:k},null,8,["disabled","title"]),r.createVNode(ue,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:r.unref(i)("common.cancel"),onClick:w},null,8,["title"])])])):r.createCommentVNode("",!0),r.createElementVNode("div",V0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,E=>(r.openBlock(),r.createElementBlock("div",{key:E.id,class:r.normalizeClass(["ao-sprint-list__row",{"ao-sprint-list__row--archived":!E.active,"ao-sprint-list__row--editing":l.value===E.id}])},[l.value!==E.id?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",P0e,[r.createElementVNode("span",{class:"ao-sprint-list__color-dot",style:r.normalizeStyle({backgroundColor:E.color||"var(--ao-color-primary-base)"})},null,4),r.createElementVNode("div",F0e,[r.createElementVNode("span",R0e,r.toDisplayString(E.name),1),E.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",z0e,r.toDisplayString(r.unref(i)("sprint.archived")),1))])]),r.createElementVNode("div",U0e,[r.createVNode(be,{name:"CalendarTodayOutlineRounded",size:"sm"}),r.createElementVNode("span",null,r.toDisplayString(y(E.startDate))+" – "+r.toDisplayString(y(E.endDate)),1)]),t.isEditable?(r.openBlock(),r.createElementBlock("div",q0e,[r.createVNode(ue,{color:"neutral",variant:"ghost",size:"md","icon-name":"EditOutline","icon-position":"start",title:r.unref(i)("common.edit"),onClick:D=>f(E)},null,8,["title","onClick"]),r.createVNode(ue,{color:"neutral",variant:"ghost",size:"md",corners:"round","icon-position":"start","icon-name":(E.active,"ArchiveOutlineRounded"),label:E.active?r.unref(i)("sprint.archive"):r.unref(i)("sprint.unarchive"),onClick:D=>E.active?h(E.id):g(E.id)},null,8,["icon-name","label","onClick"])])):r.createCommentVNode("",!0)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createVNode(jr,{color:c.value.color,"onUpdate:color":S[5]||(S[5]=D=>c.value.color=D)},{clickable:r.withCtx(({openPicker:D,bgColor:x})=>[r.createElementVNode("button",{ref_for:!0,ref_key:"colorTriggerEditRef",ref:d,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:x}),title:r.unref(i)("sprint.color"),onClick:$=>D($.currentTarget)},null,12,H0e)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[6]||(S[6]=D=>c.value.name=D),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name"},null,512),[[r.vModelText,c.value.name]]),r.createElementVNode("div",j0e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[7]||(S[7]=D=>c.value.startDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.startDate]]),S[10]||(S[10]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[8]||(S[8]=D=>c.value.endDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.endDate]])]),r.createElementVNode("div",W0e,[r.createVNode(ue,{color:"success",variant:"ghost",size:"md","icon-name":"CheckSmallRounded",disabled:!A.value,title:r.unref(i)("common.save"),onClick:D=>m(E.id)},null,8,["disabled","title","onClick"]),r.createVNode(ue,{color:"neutral",variant:"ghost",size:"md","icon-name":"CloseRounded",title:r.unref(i)("common.cancel"),onClick:p},null,8,["title"])])],64))],2))),128))]),a.value.length===0&&!v.value?(r.openBlock(),r.createElementBlock("div",Z0e,r.toDisplayString(r.unref(i)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}});const G0e=te(K0e,[["__scopeId","data-v-698944ea"]]);exports.AoAuditConfigTable=S0e;exports.AoAvatar=Xn;exports.AoCardFeed=_d;exports.AoCheckboxField=Xg;exports.AoColorPicker=jr;exports.AoFeed=Jc;exports.AoField=Jg;exports.AoInputField=o0e;exports.AoMultiselect=Ct;exports.AoProjectPhases=vd;exports.AoSprintList=G0e;exports.AoTabBar=gs;exports.AoTemplateDetails=jg;exports.AoTemplates=a0;exports.AoTemplatesList=Yg;exports.EstimationUnit=Ap;exports.TemplateItemTypeEnum=Tp;exports.activityFeedRoutes=Vo;exports.activityFeedStatus=Oy;exports.durationTypes=Ly;exports.feedFilterTypes=so;exports.getProjectOverviewRoutes=Qge;exports.getTemplateRoutes=Xge;exports.listUpdateTypes=Iy;exports.milestoneStatus=Pi;exports.projectOverviewRoutes=Fe;exports.ruleComparators=Ep;exports.ruleDurationUnits=xp;exports.ruleTriggerTypes=Sp;exports.templateItemType=Ze;exports.templateRouteNames=Uo;
62
+ ...`),m=r.computed(()=>n.placeholder||p.value),h=r.computed(()=>s.value.trim().length>0&&d.value.valid&&d.value.data.length>0&&!n.isLoading),g=r.computed(()=>{const b=w=>w.reduce((k,A)=>k+1+b(A.children??[]),0);return b(d.value.data)});r.watch(()=>n.open,async b=>{var w;b&&(s.value="",await r.nextTick(),(w=a.value)==null||w.focus())},{immediate:!0});const y=()=>{n.isLoading||(o("update:open",!1),o("close"))},C=()=>{h.value&&o("submit",d.value.data)},v=b=>String(b===0?i("project.bulk.modal.noSpace"):b===1?i("project.bulk.modal.oneSpace"):i("project.bulk.modal.spaces",{count:b})),_=b=>String(i(c[b.code],b.params??{}));return(b,w)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper","ao-bulk-insert-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(y,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:y}),r.createElementVNode("div",Upe,[r.createElementVNode("div",qpe,[r.createElementVNode("div",Hpe,[r.createVNode(ue,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:y})]),r.createElementVNode("header",jpe,[r.createVNode(ht,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",Wpe,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(C,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",Zpe,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:a,"onUpdate:modelValue":w[0]||(w[0]=k=>s.value=k),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,Kpe),[[r.vModelText,s.value]]),d.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",Gpe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.errors,k=>(r.openBlock(),r.createElementBlock("p",{key:`${k.line}-${k.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(i)("project.bulk.modal.lineError",{line:k.line,message:_(k)})),1))),128))])):s.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",Ype,r.toDisplayString(r.unref(i)("project.bulk.modal.count",{count:g.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Jpe,[r.createElementVNode("span",Xpe,r.toDisplayString(r.unref(i)("project.bulk.modal.indentation")),1),r.createElementVNode("div",Qpe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.levels,(k,A)=>(r.openBlock(),r.createElementBlock("div",{key:k,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",eme,r.toDisplayString(f(k)),1),r.createElementVNode("span",tme,r.toDisplayString(v(A)),1)]))),128))])]),r.createElementVNode("footer",nme,[r.createVNode(ue,{color:"primary",variant:"ghost",label:r.unref(i)("common.cancel"),disabled:t.isLoading,onClick:y},null,8,["label","disabled"]),r.createVNode(ue,{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,zpe)):r.createCommentVNode("",!0)]))}});function gd(t,e){return(t.children??[]).filter(n=>n.type===e)}function ome(t){return gd(t,"task").map(e=>({name:e.name}))}function Wg(t,e=[]){const n=t.filter(i=>i.type==="activity"),o=tu(e,n.length);return n.map((i,s)=>{const a=ome(i);return{name:i.name,rank:o[s],...a.length?{tasks:a}:{}}})}function rme(t,e){return Wg(t,e)}function Zg(t,e){const n=t.filter(i=>i.type==="milestone"),o=tu(e,n.length);return n.map((i,s)=>{const a=Wg(gd(i,"activity"));return{name:i.name,rank:o[s],...a.length?{activities:a}:{}}})}function ime(t,e){const n=t.filter(i=>i.type==="phase"),o=tu(e,n.length);return n.map((i,s)=>{const a=Zg(gd(i,"milestone"),[]);return{name:i.name,rank:o[s],...a.length?{milestones:a}:{}}})}const sme={class:"ao-mapping-card-project-phase__header"},ame={class:"ao-card-project-item__title-line"},lme={key:0,class:"ao-card-project-item-phase__estimation"},cme={class:"ao-mapping-card-project-phase__footer"},ume={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},dme={class:"ao-mapping-card-project-phase__subitem"},fme={class:"ao-mapping-card-project-phase__subitem"},pme={key:0,class:"ao-mapping-card-project-phase__secondary"},mme={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},hme=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=g=>{o("update:title",g)},s=r.computed(()=>{var g;return((g=n.milestones)==null?void 0:g.reduce((y,C)=>{var v;return y+((v=C.activities)==null?void 0:v.reduce((_,b)=>_+(b.estimation||0),0))},0))||0}),a=r.computed(()=>!n.milestones||!n.timeTrackingData?0:n.milestones.reduce((g,y)=>{var C;return g+(((C=y.activities)==null?void 0:C.reduce((v,_)=>{var w;const b=(w=n.timeTrackingData)==null?void 0:w[_.id];return v+((b==null?void 0:b.timeSpent)||0)},0))||0)},0)),l=r.computed(()=>n.estimationUnit==="days"?"d":"h"),c=r.computed(()=>Ma(a.value,n.estimationUnit)),u=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.length}),d=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.filter(y=>y.status===Pi.done).length}),f=r.computed(()=>(d.value||0)/(u.value||1)),p=r.computed({get:()=>n.deadline??"",set:g=>o("update:deadline",g!=null&&g.length?g:null)}),m=r.computed({get:()=>n.color,set:g=>{o("updatePhase",{id:n.id,color:g})}}),h=(g,y)=>{const C=g.target;C.closest("button")||C.closest("input")||C.closest(".ao-title")||y()};return(g,y)=>(r.openBlock(),r.createBlock(jr,{color:m.value,"onUpdate:color":y[2]||(y[2]=C=>m.value=C)},{clickable:r.withCtx(({openPicker:C,bgColor:v})=>[r.createVNode(ml,{class:"ao-mapping-card-project-phase","is-clickable":t.isEditable,color:v,"with-left-border":!0,onClick:_=>h(_,C)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",ame,[r.createVNode(ht,{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",lme," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(s.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",cme,[u.value?(r.openBlock(),r.createElementBlock("div",ume,[r.createElementVNode("div",dme,[r.createVNode(be,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",fme,r.toDisplayString(d.value)+" / "+r.toDisplayString(u.value),1)]),r.createVNode(hl,{percentages:f.value,class:"ao-mapping-card-project-phase__progress",color:m.value},null,8,["percentages","color"]),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",pme,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-mapping-card-project-phase__footer-row",p.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]=_=>p.value=_),class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,p.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",mme,r.toDisplayString(r.unref(La)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",sme,[r.createVNode(ue,{class:"ao-mapping-card-project-phase__archive",color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:t.active?g.$t("archive"):g.$t("unarchive"),onClick:y[0]||(y[0]=r.withModifiers(()=>t.active?g.$emit("archivePhase",{id:t.id}):g.$emit("unarchivePhase",{id:t.id}),["stop"]))},null,8,["label"])])]),key:"0"}:void 0]),1032,["is-clickable","color","onClick"])]),_:3},8,["color"]))}});const gme={class:"ao-project-phase"},vme={key:0,class:"ao-project-phase__drag ao-card__drag"},_me={key:1,class:"ao-project-phase__col-phase"},yme={key:2,class:"ao-mapping-project-phase__col-phase"},Cme={key:0,class:"ao-project-phase__col-milestones"},bme=["title","onClick"],kme=["onClick"],wme=["onClick"],Eme={class:"ao-project-phase__milestones-list-footer"},Sme=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}=Bt(),o=t,i=e;r.watch(()=>o.phase.milestones,(T,S)=>{Wn(T,S)});const s=T=>{i("updatePhase",{id:o.phase.id,name:T})},a=T=>{i("updatePhase",{id:o.phase.id,deadline:T})},l=T=>{i("updatePhase",T)},c=r.computed(()=>o.phase.milestones.map(T=>T7(T,o.closedStatus))),u=T=>{const{name:S,rank:E}=Zo(c.value??[],"milestone",n);i("addMilestone",{name:S,rank:E,phaseId:T})},d=T=>{const S=n("template.defaultName.milestone",{idx:1}),E=ns(c.value??[]);i("addMilestone",{name:S,rank:E,phaseId:T})},f=T=>{i("updateMilestone",T)},p=T=>{i("archiveMilestone",T)},m=T=>{i("unarchiveMilestone",T)},h=T=>{i("archivePhase",T)},g=T=>{i("unarchivePhase",T)},y=T=>{"added"in T?i("updateMilestone",{id:T.added.element.id,phaseId:o.phase.id,rank:Mr(c.value,T.added.newIndex)}):"removed"in T||"moved"in T&&i("updateMilestone",{id:T.moved.element.id,rank:Mr(c.value,T.moved.newIndex)})},C=r.ref(!1),v=r.ref(!1),_=T=>{v.value=!0;const S=Zg(T,o.phase.milestones??[]);i("bulkAddMilestone",{phaseId:o.phase.id,milestones:S,onSuccess:()=>{v.value=!1,C.value=!1},onError:()=>{v.value=!1}})};r.watch(C,T=>{T&&(v.value=!1)});const b=$r.useRoute(),w=r.computed(()=>b.path.includes("/mapping")),k=r.computed(()=>{var T;return o.phase.id===((T=b.params)==null?void 0:T.phaseId)});r.ref(!1);const A=r.computed(()=>{var T;return o.phase.id!==((T=b.params)==null?void 0:T.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:N7(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(T,S)=>(r.openBlock(),r.createElementBlock("li",gme,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(A.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",vme,[r.createVNode(be,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",yme,[r.createVNode(hme,{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:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","estimation-unit"])])):(r.openBlock(),r.createElementBlock("div",_me,[r.createVNode(vpe,{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:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","time-tracking-data","estimation-unit"])]))],4),w.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",Cme,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(A.value)},[t.isEditable?(r.openBlock(),r.createBlock(Sa,{key:0,class:r.normalizeClass(["ao-project-phase__milestone-quick-add",{"ao-project-phase__milestone-quick-add--visible":k.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:E})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:T.$t("project.milestone.add"),onClick:E},[r.createVNode(be,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,bme)]),menu:r.withCtx(({close:E})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{E(),d(t.phase.id)}},r.toDisplayString(T.$t("project.bulk.menu.single")),9,kme),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{E(),C.value=!0}},r.toDisplayString(T.$t("project.bulk.menu.bulkInsert")),9,wme)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(ko),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},T.$attrs,{onChange:y}),{item:r.withCtx(({element:E})=>{var D;return[r.createVNode(Mpe,{id:E.id,name:E.name,color:E.color,"phase-color":t.phase.color,activities:E.activities,deadline:E.deadline,active:E.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":E.id===((D=T.$route.params)==null?void 0:D.milestoneId),assignee:E.assignee,important:E.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:x=>!t.readonly&&T.$router.push({name:r.unref(Fe).milestone,params:{phaseId:t.phase.id,milestoneId:E.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",Eme,[t.isEditable?(r.openBlock(),r.createBlock(wo,{key:0,label:T.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:S[0]||(S[0]=E=>u(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),C.value?(r.openBlock(),r.createBlock(hd,{key:1,open:C.value,"onUpdate:open":S[1]||(S[1]=E=>C.value=E),title:T.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":v.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}});const xme={class:"ao-project__phases"},Tme={key:0,class:"ao-project-phase__phases-list-footer"},Ame={class:"ao-project-phase__col-phase"},vd=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)=>{Wn(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)},u=m=>{o("unarchivePhase",m)},d=m=>{if(m.moved){const h=ts(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",xme,[r.createVNode(r.unref(ko),{class:"ao-project-phase__phases-list","model-value":t.phases,"item-key":"id",handle:".ao-card__drag",onChange:d},{item:r.withCtx(({element:g})=>[r.createVNode(Sme,{phase:g,"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]=y=>m.$emit("bulkAddMilestone",y)),onUpdateMilestone:s,onArchiveMilestone:a,onUnarchiveMilestone:l,onUpdatePhase:f,onArchivePhase:c,onUnarchivePhase:u},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",Tme,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",Ame,[r.createVNode(wo,{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 Nme={class:"ao-add-template-modal__form-body"},Dme={class:"field__row"},$me={class:"ao-add-template-modal__form-footer"},Kg=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,u)=>(r.openBlock(),r.createBlock(Oa,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(ht,{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",Nme,[r.createElementVNode("div",Dme,[r.createVNode(Ct,{value:s.value,options:i.value,detached:!0,onChange:a},null,8,["value","options"])])]),r.createElementVNode("footer",$me,[r.createVNode(ue,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}});const Bme={class:"ao-save-template-modal__form-body"},Mme={class:"field__row"},Lme={class:"ao-field ao-field--inline"},Ome={class:"ao-field__label"},Ime={class:"ao-save-template-modal__phases"},Vme={class:"ao-field__label"},Pme={class:"ao-save-template-modal__phases-list"},Fme=["value"],Rme={class:"ao-save-template-modal__form-footer"},Gg=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(Oa,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(ht,{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",Bme,[r.createElementVNode("div",Mme,[r.createElementVNode("label",Lme,[r.createElementVNode("span",Ome,r.toDisplayString(l.$t("project.template.name.label"))+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=u=>i.value=u),type:"text"},null,512),[[r.vModelText,i.value]])])]),r.createElementVNode("div",Ime,[r.createElementVNode("div",Vme,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",Pme,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(n.phases,u=>(r.openBlock(),r.createElementBlock("label",{key:u.id,class:"ao-field ao-field--checkbox"},[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[1]||(c[1]=d=>s.value=d),type:"checkbox",value:u.id},null,8,Fme),[[r.vModelCheckbox,s.value]]),r.createElementVNode("span",null,r.toDisplayString(u.name),1)]))),128))])])]),r.createElementVNode("footer",Rme,[r.createVNode(ue,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:a},null,8,["label"])])],32)]),_:1}))}});const zme={class:"ao-project"},Ume=["onClick"],qme=["onClick"],Hme={class:"ao-project__body"},jme=r.defineComponent({__name:"AoProjectOverviewProject",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{type:Function},statuses:{},activityTypes:{},devStatuses:{},sprints:{},selectedActivity:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function}},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"],setup(t,{emit:e}){const{t:n}=Bt(),o=t,i=e,s=r.computed(()=>o.phases.flatMap(P=>P.milestones)),a=()=>{const{name:P,rank:se}=Zo(o.phases,"phase",n);i("addPhase",{name:P,rank:se,projectId:o.project.id})},l=()=>{const P=n("template.defaultName.phase",{idx:1}),se=ns(o.phases);i("addPhase",{name:P,rank:se,projectId:o.project.id})},c=P=>{i("updatePhase",P)},u=P=>{i("archivePhase",P)},d=P=>{i("unarchivePhase",P)},f=P=>{i("copyPhaseToTemplate",P)},p=P=>{i("addMilestone",P)},m=P=>{i("bulkAddMilestone",P)},h=P=>{i("updateMilestone",P)},g=P=>{i("archiveMilestone",P)},y=P=>{i("unarchiveMilestone",P)},C=P=>{i("addActivity",P)},v=P=>{i("bulkAddActivity",P)},_=P=>{i("update:activity",P)},b=P=>{i("archiveActivity",P)},w=P=>{i("unarchiveActivity",P)},k=P=>{i("addSubtask",P)},A=P=>{i("updateSubtask",P)},T=P=>{i("deleteSubtask",P)},S=r.computed(()=>s.value.flatMap(P=>P.activities)),E=r.computed(()=>o.devStatuses??[]),D=r.computed(()=>o.sprints??[]),x=P=>{i("addFiles",P)},$=P=>{i("removeFile",P)},B=P=>{i("addComment",P)},I=P=>{i("updateComment",P)},V=P=>{i("removeComment",P)},j=r.ref(!1),F=r.ref(!1),q=r.ref(!1),Q=r.ref(!1),ae=(P,se)=>{i("applyTemplate",{templateId:P,projectId:se}),j.value=!1},ne=(P,se)=>{var ke;const Se=(ke=o.templates)==null?void 0:ke.at(-1),qe=Se?Xe.LexoRank.parse(Se.rank).genNext():Xe.LexoRank.middle();i("saveTemplate",{templateName:P,rank:qe.format(),phaseIds:se}),F.value=!1},ye=P=>{Q.value=!0;const se=ime(P,o.phases);i("bulkAddPhase",{projectId:o.project.id,phases:se,onSuccess:()=>{Q.value=!1,q.value=!1},onError:()=>{Q.value=!1}})};r.watch(q,P=>{P&&(Q.value=!1)});const re=$r.useRouter(),ie=r.ref("overview"),U=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(ie,P=>{P==="feed"?(re.push({name:Fe.feed}),console.log("Navigating to feed...")):P==="dev"?(re.push({name:Fe.dev}),console.log("Navigating to dev...")):P==="overview"?(re.push({name:Fe.project}),console.log("Navigating to feed...")):P==="mapping"&&(re.push({name:Fe.mapping}),console.log("Navigating to feed..."))}),(P,se)=>{var qe;const Se=r.resolveComponent("RouterView");return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-overview"},P.$attrs),[r.createElementVNode("div",zme,[r.createVNode(os,null,{primary:r.withCtx(()=>[r.createVNode(gs,{modelValue:ie.value,"onUpdate:modelValue":se[0]||(se[0]=ke=>ie.value=ke),tabs:U},null,8,["modelValue"]),r.createVNode(ue,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:P.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:se[1]||(se[1]=ke=>P.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(Sa,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:ke})=>[r.createVNode(ue,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:P.$t("project.phase.add"),onClick:ke},null,8,["label","onClick"])]),menu:r.withCtx(({close:ke})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{ke(),l()}},r.toDisplayString(P.$t("project.bulk.menu.single")),9,Ume),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{ke(),q.value=!0}},r.toDisplayString(P.$t("project.bulk.menu.bulkInsert")),9,qme)]),_:1})):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:1,class:"ao-project-overview__save-as-template",color:"primary",label:P.$t("project.template.save.label"),onClick:se[2]||(se[2]=ke=>F.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:2,class:"ao-project-overview__add-template",color:"primary",label:P.$t("project.template.apply.label"),onClick:se[3]||(se[3]=ke=>j.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Hme,[r.createVNode(vd,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"time-tracking-data":t.timeTrackingData,"estimation-unit":(qe=t.project)==null?void 0:qe.estimationUnit,onAddMilestone:p,onBulkAddMilestone:m,onUpdateMilestone:h,onArchiveMilestone:g,onUnarchiveMilestone:y,onAddPhase:a,onUpdatePhase:c,onArchivePhase:u,onUnarchivePhase:d,onCopyPhaseToTemplate:f},null,8,["phases","closed-status","is-editable","users","time-tracking-data","estimation-unit"])])]),r.createVNode(Se,{class:"ao-project__sidebar",phases:t.phases,"project-id":t.project.id,"project-name":t.project.name,users:t.users,"is-editable":t.isEditable===!0,"closed-status":t.closedStatus,"time-tracking-data":t.timeTrackingData,onClose:se[4]||(se[4]=ke=>P.$router.push({name:r.unref(Fe).project})),onUpdateMilestone:h,onAddActivity:C,onBulkAddActivity:v,onUpdateActivity:_,onArchiveActivity:b,onUnarchiveActivity:w},null,8,["phases","project-id","project-name","users","is-editable","closed-status","time-tracking-data"]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(Se,{name:"modal",activities:S.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":E.value,sprints:D.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,"onUpdate:activity":_,onAddSubtask:k,onUpdateSubtask:A,onDeleteSubtask:T,onAddFiles:x,onRemoveFile:$,onAddComment:B,onUpdateComment:I,onRemoveComment:V},{default:r.withCtx(({Component:ke})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(ke),null,{default:r.withCtx(R=>[r.renderSlot(P.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(R)))]),_: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"])]))],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[F.value?(r.openBlock(),r.createBlock(Gg,{key:0,phases:t.phases,onClose:se[5]||(se[5]=ke=>F.value=!1),onSave:ne},null,8,["phases"])):r.createCommentVNode("",!0),j.value?(r.openBlock(),r.createBlock(Kg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:se[6]||(se[6]=ke=>j.value=!1),onApply:ae},null,8,["project-id","templates"])):r.createCommentVNode("",!0),q.value?(r.openBlock(),r.createBlock(hd,{key:2,open:q.value,"onUpdate:open":se[7]||(se[7]=ke=>q.value=ke),title:P.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":Q.value,onSubmit:ye},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}});const Wme={class:"ao-card-feed__header"},Zme={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},Kme={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},Gme={class:"ao-card-feed__body"},Yme={key:0,class:"ao-card-feed__breadcrumbs"},Jme={class:r.normalizeClass(["ao-card-feed__title-group"])},Xme={class:"ao-card-feed__title-line"},Qme={key:0,class:"ao-card-feed__slug"},ehe={key:1,class:"ao-card-feed__deadline"},the={class:"ao-card-feed__footer"},nhe={class:"ao-card-feed__footer-row"},ohe={class:"ao-assignees"},rhe={key:0,class:"ao-assignee"},ihe={key:0,class:"ao-card-feed__subitems"},she={key:0,class:"ao-card-feed__subitem"},ahe={class:"ao-card-feed__subitem"},lhe={key:1,class:"ao-card-feed__subitem"},che={class:"ao-card-feed__subitem"},uhe={class:"ao-card-feed__timer-wrapper"},dhe={class:"ao-card-feed__footer-row"},fhe={key:0,class:"ao-card-feed__progress-wrapper"},phe={class:"ao-card-feed__subitem"},mhe={class:"ao-card-feed__subitem"},_d=r.defineComponent({__name:"AoCardFeed",props:{id:{},name:{},projectName:{},projectId:{},projectColor:{},phaseName:{},milestoneName:{},milestoneColor:{},deadline:{},important:{type:Boolean},blocked:{type:Boolean},assignee:{},slug:{},comments:{},attachments:{},tasks:{},isEditable:{type:Boolean},isPrivate:{type:Boolean},isClosed:{type:Boolean},tagType:{}},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=g=>{o("updateActivity",{id:n.id,name:g})},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]:[]),u=r.computed(()=>La(n.deadline)),d=g=>{o("removeAssignee",g)},f=()=>{o("startTimer",{activityId:n.id,name:n.name,project:n.projectName,projectId:n.projectId,slug:n.slug})},p=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.length}),m=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.filter(y=>y.isDone).length}),h=r.computed(()=>(m.value||0)/(p.value||1));return(g,y)=>(r.openBlock(),r.createBlock(ml,{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",Wme,[i.value?(r.openBlock(),r.createBlock(Vi,{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.important||t.isClosed||t.blocked?(r.openBlock(),r.createElementBlock("div",Zme,[t.isPrivate?(r.openBlock(),r.createBlock(be,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.important?(r.openBlock(),r.createBlock(be,{key:1,name:"FlagRounded",class:"ao-card-feed__important",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(be,{key:2,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",Kme,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",Gme,[l.value?(r.openBlock(),r.createElementBlock("span",Yme,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",Jme,[r.createElementVNode("div",Xme,[t.slug?(r.openBlock(),r.createElementBlock("span",Qme,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(ht,{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",ehe,r.toDisplayString(u.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",the,[r.createElementVNode("div",nhe,[r.createElementVNode("ul",ohe,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,C=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:C.id},[C?(r.openBlock(),r.createElementBlock("li",rhe,[r.createVNode(Xn,{"user-name":r.unref(Up)(C),"avatar-url":C.avatarUrl,"is-closable":!0,onClose:()=>d(C.id)},null,8,["user-name","avatar-url","onClose"])])):r.createCommentVNode("",!0)],64))),128))]),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",ihe,[t.comments?(r.openBlock(),r.createElementBlock("li",she,[r.createVNode(be,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",ahe,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",lhe,[r.createVNode(be,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",che,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",uhe,[r.createVNode(be,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(f,["stop"])})])]),r.createElementVNode("div",dhe,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",fhe,[r.createElementVNode("div",phe,[r.createVNode(be,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",mhe,r.toDisplayString(m.value)+" / "+r.toDisplayString(p.value),1)]),r.createVNode(hl,{percentages:h.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}});const hhe={class:"ao-project-milestone"},ghe={class:"ao-project-milestone__header"},vhe={class:"ao-project-milestone__header_line"},_he={class:"ao-project-milestone__header_line"},yhe={class:"ao-project-milestone__title"},Che={key:0,class:"ao-fieldset ao-milestone__fieldset"},bhe={class:"ao-field__row ao-milestone__field-row"},khe={class:"ao-field ao-field--inline"},whe={class:"ao-field__row ao-milestone__field-row"},Ehe={class:"ao-field ao-milestone__field-multiselect"},She={class:"ao-milestone__color-actions"},xhe=["onClick"],The=["title","onClick"],Ahe=["onClick"],Nhe=["onClick"],Dhe={class:"ao-project-milestone__body"},$he={key:0,class:"ao-project-milestone__footer"},Bhe=["onClick"],Mhe=["onClick"],bp=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}=Bt(),o=t,i=e,s=S=>{var E;i("startTimer",S),(E=window.parent)==null||E.postMessage({type:"startTimer",data:S},"*")},a=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.find(E=>E.id===o.phaseId)}),l=r.computed(()=>{var S;return(S=o.phases)==null?void 0:S.flatMap(E=>E.milestones)}),c=r.computed(()=>{var S;return(S=l.value)==null?void 0:S.find(E=>E.id===o.milestoneId)}),u=r.computed(()=>{var S;return(S=c.value)==null?void 0:S.activities});r.watch(u,(S,E)=>{Wn(S,E)});const d=S=>{i("close",S)},f=()=>{const{name:S,rank:E}=Zo(u.value??[],"activity",n);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:E,projectId:o.projectId})},p=()=>{const S=n("template.defaultName.activity",{idx:1}),E=ns(u.value??[]);i("addActivity",{milestoneId:o.milestoneId,name:S,rank:E,projectId:o.projectId})},m=r.ref(!1),h=r.ref(!1),g=S=>{h.value=!0;const E=rme(S,u.value??[]);i("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:E,onSuccess:()=>{h.value=!1,m.value=!1},onError:()=>{h.value=!1}})};r.watch(m,S=>{S&&(h.value=!1)});const y=S=>{i("updateActivity",S)},C=S=>{u.value&&"moved"in S&&i("updateActivity",{id:S.moved.element.id,rank:Mr(u.value,S.moved.newIndex)})},v=r.computed({get:()=>{var S;return(S=c.value)==null?void 0:S.color},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,color:S})}}),_=r.computed({get:()=>{var S;return((S=c.value)==null?void 0:S.deadline)??""},set:S=>{c.value&&i("updateMilestone",{id:c.value.id,deadline:S!=null&&S.length?S:null})}}),b=S=>o.closedStatus?nu(S,o.closedStatus):!1,w=r.computed(()=>{var S;return((S=o.users)==null?void 0:S.map(E=>({label:`${E.firstName} ${E.lastName}`,value:E.id,avatar:E.avatarUrl})))||[]}),k=r.computed({get(){var S,E;return(E=(S=c.value)==null?void 0:S.assignee)!=null&&E.id?[c.value.assignee.id]:[]},set(S){i("updateMilestone",{id:o.milestoneId,assigneeId:S[0]??null})}}),A=r.computed({get(){var S;return((S=c.value)==null?void 0:S.important)??!1},set(S){i("updateMilestone",{id:o.milestoneId,important:S})}}),T=(S,E)=>{const D=S.currentTarget;D instanceof HTMLElement&&E(D)};return(S,E)=>{var D;return r.openBlock(),r.createElementBlock("div",hhe,[r.createElementVNode("header",ghe,[r.createElementVNode("div",vhe,[r.createVNode(ue,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:d})]),r.createElementVNode("div",_he,[r.createElementVNode("div",yhe,[r.createVNode(ht,{title:((D=c.value)==null?void 0:D.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(Gc,{modelValue:A.value,"onUpdate:modelValue":E[0]||(E[0]=x=>A.value=x),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:S.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),c.value?(r.openBlock(),r.createElementBlock("div",Che,[r.createElementVNode("div",bhe,[r.createElementVNode("label",khe,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[1]||(E[1]=x=>_.value=x),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,_.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",whe,[r.createElementVNode("label",Ehe,[r.createVNode(Ct,{modelValue:k.value,"onUpdate:modelValue":E[2]||(E[2]=x=>k.value=x),options:w.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:S.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:x,handleTagRemove:$})=>[r.createVNode(Xn,{"user-name":x.label,"avatar-url":x.avatar,"is-closable":!0,onClose:B=>$(x,B)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",She,[r.createVNode(jr,{color:v.value,"onUpdate:color":E[3]||(E[3]=x=>v.value=x)},{clickable:r.withCtx(({openPicker:x,bgColor:$})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:$}),class:"color-button",onClick:B=>T(B,x)},null,12,xhe)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(Sa,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:x})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:S.$t("project.activity.add"),onClick:x},[r.createVNode(be,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,The)]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),p()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,Ahe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Nhe)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",Dhe,[r.createVNode(r.unref(ko),r.mergeProps({class:"ao-project-milestone__activities",list:u.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},S.$attrs,{onChange:C}),{item:r.withCtx(({element:x})=>{var $,B,I,V,j;return[r.createVNode(_d,{id:x.id,name:x.name||x.id,"project-id":t.projectId,"phase-name":($=a.value)==null?void 0:$.name,"milestone-name":(B=c.value)==null?void 0:B.name,"milestone-color":(I=c.value)==null?void 0:I.color,deadline:x.deadline,important:x.important,blocked:x.blocked,users:t.users,assignee:x.assignee,slug:x.slug,comments:(V=x.comments)==null?void 0:V.length,attachments:(j=x.attachments)==null?void 0:j.length,tasks:x.tasks,"is-editable":t.isEditable,"is-private":x.private,"is-closed":b(x),onClick:F=>S.$router.push({name:r.unref(Fe).activity,params:{milestoneId:t.milestoneId,activityId:x.id}}),onUpdateActivity:y,onRemoveAssignee:()=>y({id:x.id,assigneeId:null}),onStartTimer:s},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&x.active?(r.openBlock(),r.createBlock(ue,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("archive"),onClick:r.withModifiers(()=>S.$emit("archiveActivity",{id:x.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!x.active?(r.openBlock(),r.createBlock(ue,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:S.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>S.$emit("unarchiveActivity",{id:x.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","important","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",$he,[r.createVNode(Sa,null,{trigger:r.withCtx(({open:x})=>[r.createVNode(wo,{"icon-name":"Add",label:S.$t("project.activity.add"),onClick:x},null,8,["label","onClick"])]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),f()}},r.toDisplayString(S.$t("project.bulk.menu.single")),9,Bhe),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),m.value=!0}},r.toDisplayString(S.$t("project.bulk.menu.bulkInsert")),9,Mhe)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(hd,{key:0,open:m.value,"onUpdate:open":E[4]||(E[4]=x=>m.value=x),title:S.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":h.value,onSubmit:g},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])}}});const Lhe=r.defineComponent({__name:"AoProjectOverviewActivityDetails",props:{phaseId:{},milestoneId:{},activityId:{},activityTypes:{},devStatuses:{},activities:{},selectedActivity:{},isTaskCheckable:{type:Function},statuses:{},phases:{},users:{},project:{},userId:{},isEditable:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function},sprints:{}},emits:["update:activity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","createSprint"],setup(t,{emit:e}){const n=t,o=e,i=r.computed(()=>{var C;return(C=n.phases)==null?void 0:C.find(v=>v.id===n.phaseId)}),s=r.computed(()=>{var C;return(C=n.phases)==null?void 0:C.flatMap(v=>v.milestones)}),a=r.computed(()=>{var C;return(C=s.value)==null?void 0:C.find(v=>v.id===n.milestoneId)}),l=r.computed(()=>{var C;return n.selectedActivity??((C=n.activities)==null?void 0:C.find(v=>v.id===n.activityId))}),c=C=>{o("update:activity",C)},u=C=>{o("addSubtask",C)},d=C=>{o("updateSubtask",C)},f=C=>{o("deleteSubtask",C)},p=C=>{o("addFiles",C)},m=C=>{o("removeFile",C)},h=C=>{o("addComment",C)},g=C=>{o("updateComment",C)},y=C=>{o("removeComment",C)};return(C,v)=>{var _,b;return l.value?(r.openBlock(),r.createBlock(id,{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,onClose:C.$router.back,"onUpdate:activity":c,onAddSubtask:u,onUpdateSubtask:d,onDeleteSubtask:f,onAddFiles:p,onRemoveFile:m,onAddComment:h,onUpdateComment:g,onRemoveComment:y,onCreateSprint:v[0]||(v[0]=w=>o("createSprint",w))},{default:r.withCtx(w=>[r.renderSlot(C.$slots,"default",r.normalizeProps(r.guardReactiveProps(w)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints","onClose"])):r.createCommentVNode("",!0)}}}),Ohe={class:"ao-col-header"},Ihe=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",Ohe,[r.createVNode(ht,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(Vi,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}});function Vhe(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function Ta(t){return typeof t=="function"?t():r.unref(t)}const Phe=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Fhe=t=>t!=null,Ii=()=>{};function Rhe(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 zhe(t,e={}){let n,o,i=Ii;const s=l=>{clearTimeout(l),i(),i=Ii};return l=>{const c=Ta(t),u=Ta(e.maxWait);return n&&s(n),c<=0||u!==void 0&&u<=0?(o&&(s(o),o=null),Promise.resolve(l())):new Promise((d,f)=>{i=e.rejectOnCancel?f:d,u&&!o&&(o=setTimeout(()=>{n&&s(n),o=null,d(l())},u)),n=setTimeout(()=>{o&&s(o),o=null,d(l())},c)})}}function Uhe(t,e=200,n={}){return Rhe(zhe(e,n),t)}function cc(t){var e;const n=Ta(t);return(e=n==null?void 0:n.$el)!=null?e:n}const qhe=Phe?window:void 0;function Hhe(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function jhe(t){const e=Hhe();return r.computed(()=>(e.value,!!t()))}function Whe(t,e,n={}){const{root:o,rootMargin:i="0px",threshold:s=.1,window:a=qhe,immediate:l=!0}=n,c=jhe(()=>a&&"IntersectionObserver"in a),u=r.computed(()=>{const h=Ta(t);return(Array.isArray(h)?h:[h]).map(cc).filter(Fhe)});let d=Ii;const f=r.ref(l),p=c.value?r.watch(()=>[u.value,cc(o),f.value],([h,g])=>{if(d(),!f.value||!h.length)return;const y=new IntersectionObserver(e,{root:cc(g),rootMargin:i,threshold:s});h.forEach(C=>C&&y.observe(C)),d=()=>{y.disconnect(),d=Ii}},{immediate:l,flush:"post"}):Ii,m=()=>{d(),p(),f.value=!1};return Vhe(m),{isSupported:c,isActive:f,pause(){d(),f.value=!1},resume(){f.value=!0},stop:m}}const Zhe={class:r.normalizeClass(["ao-list-kanban"])},Khe={class:"ao-list-kanban__header"},Ghe=["title"],Yhe={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},Jhe={key:1,class:"ao-list-kanban__end"},Xhe={key:0,class:"ao-list-kanban__no-more"},Qhe={key:1,class:"ao-list-kanban__divider"},ege={key:1,class:"ao-list-kanban__footer"},tge=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);Whe(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)},u=f=>{if("added"in f){const p={id:f.added.element.id,rank:Mr(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:Mr(n.list,f.moved.newIndex)})},d=r.ref(!1);return(f,p)=>(r.openBlock(),r.createElementBlock("div",Zhe,[t.title||f.$slots.header?r.renderSlot(f.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",Khe,[t.title?(r.openBlock(),r.createBlock(Ihe,{key:0,class:"ao-list-kanban__col-header",title:t.title,level:3,items:(m=t.list)==null?void 0:m.length},null,8,["title","items"])):r.createCommentVNode("",!0),t.showHeaderAdd?(r.openBlock(),r.createElementBlock("button",{key:1,class:"ao-list-kanban__header-add",title:f.$t("feed.activity.add"),onClick:p[0]||(p[0]=h=>f.$emit("addAtBeginning"))},[r.createVNode(be,{name:"Add"})],8,Ghe)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(ko),r.mergeProps({class:["ao-list-kanban__list",d.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:u,onStart:p[2]||(p[2]=m=>d.value=!0),onEnd:p[3]||(p[3]=m=>d.value=!1)}),{item:r.withCtx(({element:m})=>{var h,g,y,C,v,_,b,w,k,A;return[r.createVNode(_d,{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":(g=m.project)==null?void 0:g.id,"project-color":(y=m.project)==null?void 0:y.color,"phase-name":(v=(C=m.milestone)==null?void 0:C.phase)==null?void 0:v.name,"milestone-name":(_=m.milestone)==null?void 0:_.name,"milestone-color":(b=m.milestone)==null?void 0:b.color,deadline:m.deadline,rules:((w=m.rules)==null?void 0:w.length)||0,tasks:m.tasks,description:m.description,important:m.important,blocked:m.blocked,type:m.type,comments:(k=m.comments)==null?void 0:k.length,attachments:(A=m.attachments)==null?void 0:A.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":a(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[T=>a(m)&&c(T),()=>a(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>a(m)&&c({id:m.id,assigneeId:null}),onStartTimer:p[1]||(p[1]=T=>f.$emit("startTimer",T))},{secondary:r.withCtx(()=>[a(m)&&m.active?(r.openBlock(),r.createBlock(ue,{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(ue,{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","important","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",Yhe,[r.createVNode(be,{name:"Loading"})])):t.hasMore?(r.openBlock(),r.createElementBlock("div",{key:2,ref_key:"scrollEnd",ref:s,class:"ao-list-kanban__end"},null,512)):(r.openBlock(),r.createElementBlock("div",Jhe,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",Xhe,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",Qhe)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),f.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",ege,[r.renderSlot(f.$slots,"footer",{},()=>[t.isEditable?(r.openBlock(),r.createBlock(wo,{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 nge={class:"ao-field ao-search-field"},oge=["value","placeholder"],rge=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 u=l.target.value;o("update:modelValue",u,l)},s=Uhe(i,n.delay),a=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",nge,[r.createElementVNode("input",{value:t.modelValue,type:"text",class:"ao-field__input ao-search-field__input",placeholder:t.placeholder,onInput:c[0]||(c[0]=(...u)=>r.unref(s)&&r.unref(s)(...u)),onKeypress:r.withKeys(i,["enter"])},null,40,oge),r.createVNode(be,{name:"SearchRounded",class:r.normalizeClass(`ao-search-field__icon ao-search-field__action ${t.modelValue?"":"ao-search-field__action--visible"}`)},null,8,["class"]),r.createVNode(ue,{"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 ige={class:"ao-sprint-metrics"},sge=["onClick"],age={class:"ao-sprint-metrics__header-left"},lge={class:"ao-sprint-metrics__icon"},cge={class:"ao-sprint-metrics__title"},uge={class:"ao-sprint-metrics__dates"},dge={key:0,class:"ao-sprint-metrics__project"},fge={class:"ao-sprint-metrics__advancement"},pge={class:"ao-sprint-metrics__progress-bar"},mge={class:"ao-sprint-metrics__percent"},hge={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},gge={class:"ao-sprint-metrics__tooltip-row"},vge={class:"ao-sprint-metrics__tooltip-row"},_ge={class:"ao-sprint-metrics__tooltip-row"},yge={class:"ao-sprint-metrics__tooltip-row"},Cge={class:"ao-sprint-metrics__tooltip-row"},bge={class:"ao-sprint-metrics__tooltip-row"},kge={class:"ao-sprint-metrics__tooltip-row"},wge={class:"ao-sprint-metrics__content"},Ege={class:"ao-sprint-metrics__grid"},Sge={class:"ao-sprint-metrics__item"},xge={class:"ao-sprint-metrics__label"},Tge={class:"ao-sprint-metrics__value"},Age={key:0,class:"ao-sprint-metrics__tooltip"},Nge={class:"ao-sprint-metrics__tooltip-title"},Dge={class:"ao-sprint-metrics__item"},$ge={class:"ao-sprint-metrics__label"},Bge={class:"ao-sprint-metrics__value"},Mge={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},Lge={class:"ao-sprint-metrics__label"},Oge={class:"ao-sprint-metrics__input-row"},Ige=["value","placeholder","onInput"],Vge={key:0,class:"ao-sprint-metrics__secondary"},Pge={class:"ao-sprint-metrics__item"},Fge={class:"ao-sprint-metrics__label"},Rge={class:"ao-sprint-metrics__value"},zge=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]}},setup(t){const e=t,{t:n}=Bt(),o=["Ok for prod","Done"],i=r.ref(new Set),s=r.ref({}),a=E=>{i.value.has(E)?i.value.delete(E):i.value.add(E)},l=E=>e.projects.find(D=>D.id===E.projectId),c=E=>{var D;return((D=e.planningData[E])==null?void 0:D.plannedManDays)??0},u=E=>{var D;return((D=e.planningData[E])==null?void 0:D.remainingPlannedManDays)??0},d=E=>{var D;return((D=e.planningData[E])==null?void 0:D.users)??[]},f=E=>e.activities.filter(D=>{var x;return((x=D.sprint)==null?void 0:x.id)===E}).reduce((D,x)=>D+(x.estimation??0),0),p=E=>e.activities.filter(D=>{var $,B;if((($=D.sprint)==null?void 0:$.id)!==E)return!1;const x=(B=D.devStatus)==null?void 0:B.name;return x&&o.includes(x)}).reduce((D,x)=>D+(x.estimation??0),0),m=E=>{const D=c(E);return D<=0?0:f(E)/D},h=E=>s.value[E],g=(E,D)=>{const x=parseFloat(D);isNaN(x)||x<=0?delete s.value[E]:s.value[E]=x},y=E=>{const D=h(E);return D===void 0?0:c(E)*D},C=E=>{const D=y(E);return D<=0?null:f(E)/D},v=E=>{const D=C(E);return D===null?0:Math.round(D*100)},_=E=>{const D=f(E);if(D<=0)return 0;const x=p(E);return Math.round(x/D*100)},b=E=>{const D=f(E),x=p(E);return Math.max(0,D-x)},w=E=>{const D=u(E),x=m(E);return D*x},k=E=>{const D=w(E),x=b(E);return D<=0&&x>0?!1:D<x},A=E=>E.toFixed(1),T=E=>`${E.toFixed(2)} pts / MD`,S=(E,D)=>{const x=new Date(E),$=new Date(D),B={day:"numeric",month:"short"};return`${x.toLocaleDateString("en-UK",B)} – ${$.toLocaleDateString("en-UK",B)}`};return(E,D)=>(r.openBlock(),r.createElementBlock("div",ige,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,x=>{var $;return r.openBlock(),r.createElementBlock("div",{key:x.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:B=>a(x.id)},[r.createElementVNode("div",age,[r.createElementVNode("span",lge,r.toDisplayString(i.value.has(x.id)?"▸":"▾"),1),r.createElementVNode("span",cge,r.toDisplayString(x.name),1),r.createElementVNode("span",uge," · "+r.toDisplayString(S(x.startDate,x.endDate)),1),!i.value.has(x.id)&&l(x)?(r.openBlock(),r.createElementBlock("span",dge," · "+r.toDisplayString(($=l(x))==null?void 0:$.name),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__header-right",{"ao-sprint-metrics__header-right--behind":k(x.id)}])},[r.createElementVNode("div",fge,[r.createElementVNode("div",pge,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":k(x.id)}]),style:r.normalizeStyle({width:_(x.id)+"%"})},null,6)]),r.createElementVNode("span",mge,r.toDisplayString(_(x.id))+"% ",1),r.createElementVNode("div",hge,[D[7]||(D[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",gge,[D[0]||(D[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(_(x.id))+"%",1)]),r.createElementVNode("span",vge,[D[1]||(D[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(A(p(x.id)))+" / "+r.toDisplayString(A(f(x.id)))+" pts ",1)]),r.createElementVNode("span",_ge,[D[2]||(D[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(A(b(x.id)))+" pts",1)]),D[8]||(D[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",yge,[D[3]||(D[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(A(w(x.id)))+" pts",1)]),r.createElementVNode("span",Cge,[D[4]||(D[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(A(u(x.id)))+" MD",1)]),r.createElementVNode("span",bge,[D[5]||(D[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(T(m(x.id))),1)]),D[9]||(D[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",kge,[D[6]||(D[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(k(x.id)?"Behind plan":"On track"),1)])])])],2)],8,sge),r.withDirectives(r.createElementVNode("div",wge,[r.createElementVNode("div",Ege,[r.createElementVNode("div",Sge,[r.createElementVNode("div",xge,r.toDisplayString(r.unref(n)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",Tge,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":d(x.id).length>0}])},[r.createTextVNode(r.toDisplayString(A(c(x.id)))+" MD ",1),d(x.id).length>0?(r.openBlock(),r.createElementBlock("span",Age,[r.createElementVNode("span",Nge,r.toDisplayString(A(c(x.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d(x.id),B=>(r.openBlock(),r.createElementBlock("span",{key:B.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString(B.fullName),1),r.createElementVNode("span",null,r.toDisplayString(A(B.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",Dge,[r.createElementVNode("div",$ge,r.toDisplayString(r.unref(n)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",Bge,r.toDisplayString(A(f(x.id)))+" pts ",1)]),r.createElementVNode("div",Mge,[r.createElementVNode("div",Lge,r.toDisplayString(r.unref(n)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",Oge,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:s.value[x.id]??"",placeholder:r.unref(n)("sprintMetrics.targetVelocityPlaceholder"),onInput:B=>g(x.id,B.target.value)},null,40,Ige),D[10]||(D[10]=r.createElementVNode("span",{class:"ao-sprint-metrics__unit"},"pts / MD",-1))]),m(x.id)>0?(r.openBlock(),r.createElementBlock("div",Vge,r.toDisplayString(r.unref(n)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(T(m(x.id))),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",Pge,[r.createElementVNode("div",Fge,r.toDisplayString(r.unref(n)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",Rge,[C(x.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(v(x.id))+"% · "+r.toDisplayString(A(f(x.id)))+" / "+r.toDisplayString(A(y(x.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!i.value.has(x.id)]])])}),128))]))}});const Uge=te(zge,[["__scopeId","data-v-98b799f1"]]),qge={class:"ao-feed"},Hge={class:"ao-feed__filters"},jge={class:"ao-feed__body"},Jc=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},devStatuses:{default:()=>[]},project:{default:void 0},projects:{default:()=>[]},filters:{},activityTypes:{default:()=>[]},users:{},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:()=>[]},sprintPlanningData:{default:()=>({})}},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"],setup(t,{emit:e}){const{t:n}=Bt(),o=t,i=e;function s(R,le){i("toast",R,le)}const a=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.statuses),c=r.computed(()=>o.feedMode==="dev"?a.value.filter(R=>R.activityType==="dev"):a.value),u=async(R,le)=>{await i("selectActivity",R,le)},d=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([R,le,ge,me],[we,Re])=>{const Be=o.feedMode==="dev"?"devStatus":"status";d.value=Object.fromEntries(R.map(Ae=>[Ae.id,le.filter(Ve=>{const Pe=Ve[Be];return(Pe==null?void 0:Pe.id)===Ae.id})])),ge&&!f.value?(u(ge,null),f.value=!0):me&&!f.value&&(u(null,me),f.value=!0),p.value&&Wn(le,Re)},{immediate:!0});const h=r.computed(()=>{var R;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((R=o.selectedActivity.milestone.phase)==null?void 0:R.name)??""} / ${o.selectedActivity.milestone.name??""}`}),g=R=>{var Ae;const le=o.feedMode==="dev"?o.activities.filter(Ve=>Ve.activityType==="dev"):o.activities,ge=le==null?void 0:le.at(-1),me=ge?Xe.LexoRank.parse(ge.rank).genNext():Xe.LexoRank.middle(),we=((Ae=o.activities)==null?void 0:Ae.length)??0,Re=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:we+1}),rank:me.format(),...Re?{statusDevId:R.id,type:"dev"}:{statusId:R.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 Ve=o.sprints.find(Pe=>Pe.id===o.filters.sprintId[0]);Ve&&(Be.sprintId=Ve.id,Be.projectId=Ve.projectId)}p.value=!0,i("addActivity",Be)},y=R=>{var Ae,Ve;const le=o.feedMode==="dev"?"devStatus":"status",ge=((Ae=o.activities)==null?void 0:Ae.filter(Pe=>{const dt=Pe[le];return(dt==null?void 0:dt.id)===R.id}))??[],me=ns(ge),we=((Ve=o.activities)==null?void 0:Ve.length)??0,Re=o.feedMode==="dev",Be={name:n("activity.defaultName",{idx:we+1}),rank:me,...Re?{statusDevId:R.id,type:"dev"}:{statusId:R.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 Pe=o.sprints.find(dt=>dt.id===o.filters.sprintId[0]);Pe&&(Be.sprintId=Pe.id,Be.projectId=Pe.projectId)}p.value=!0,i("addActivity",Be)},C=(R,le)=>{p.value=!1,i("update:filters",{...o.filters,[R]:le})},v=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>v.value.map(R=>({value:R.id,label:R.name}))),b=r.computed(()=>o.sprints.map(R=>({value:R.id,label:`${R.name} · ${R.startDate} – ${R.endDate}`,startDate:R.startDate,endDate:R.endDate,projectId:R.projectId}))),w=r.computed(()=>{const R=o.filters[so.sprint]??[];return o.sprints.filter(le=>R.includes(le.id))});r.computed(()=>{var R;return(R=o.activityTypes)==null?void 0:R.map(le=>({value:le.id,label:le.name}))});const k=r.computed(()=>o.users.map(R=>({value:R.id,label:`${R.firstName} ${R.lastName}`,avatar:R.avatarUrl}))),A=R=>{o.selectedActivity&&i("update:activity",R)},T=R=>{i("update:activity",R)},S=R=>{i("archiveActivity",R)},E=R=>{i("unarchiveActivity",R)},D=R=>{var le;i("startTimer",R),(le=window.parent)==null||le.postMessage({type:"startTimer",data:R},"*")},x=R=>{p.value=!1,i("update:searchText",R)},$=R=>{p.value=!1,i("clear:searchText",R)},B=R=>{o.selectedActivity&&i("addSubtask",R)},I=R=>{o.selectedActivity&&i("updateSubtask",R)},V=R=>{o.selectedActivity&&i("deleteSubtask",R)},j=R=>{i("addFiles",R)},F=R=>{i("removeFile",R)},q=R=>{o.selectedActivity&&i("addComment",{...R,activityId:o.selectedActivity.id})},Q=R=>{const{id:le}=o.selectedActivity||{};le&&i("updateComment",R)},ae=R=>{const{id:le}=o.selectedActivity||{};le&&i("removeComment",R)},ne=$r.useRouter(),ye=$r.useRoute(),re=r.ref("feed");r.watch(()=>ye.name,R=>{R===Vo.feed||R==="ActivityFeed"||R==="ActivityFeedWithActivity"?re.value="feed":R===Vo.dev||R==="ActivityFeedDev"||R==="ActivityFeedDevWithActivity"?re.value="dev":R===Fe.feed?re.value="feed":R===Fe.dev?re.value="dev":R===Fe.project?re.value="overview":R===Fe.mapping&&(re.value="mapping")},{immediate:!0});const ie=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],U=r.computed(()=>P.value?ie.filter(R=>R.value==="feed"||R.value==="dev"):ie),P=r.computed(()=>!o.project&&ye.name&&(ye.name===Vo.feed||ye.name===Vo.dev||ye.name==="ActivityFeed"||ye.name==="ActivityFeedDev"||ye.name==="ActivityFeedWithActivity"||ye.name==="ActivityFeedDevWithActivity")),se=r.computed(()=>P.value?Vo.feed:Fe.feed),Se=r.computed(()=>P.value?Vo.dev:Fe.dev),qe=r.computed(()=>Fe.project),ke=r.computed(()=>Fe.mapping);return r.watch(re,R=>{R==="feed"?ne.push({name:se.value}):R==="dev"?ne.push({name:Se.value}):R==="overview"?ne.push({name:qe.value}):R==="mapping"&&ne.push({name:ke.value})}),(R,le)=>{var ge;return r.openBlock(),r.createElementBlock("div",qge,[r.createVNode(os,null,{primary:r.withCtx(()=>[r.createElementVNode("div",Hge,[r.createVNode(gs,{modelValue:re.value,"onUpdate:modelValue":le[0]||(le[0]=me=>re.value=me),tabs:U.value},null,8,["modelValue","tabs"]),r.createVNode(rge,{"model-value":t.searchText,placeholder:R.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":x,onClear:$},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(Ct,{key:0,"model-value":t.filters[r.unref(so).project],mode:"tags",options:_.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__projects",placeholder:R.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":le[1]||(le[1]=me=>C(r.unref(so).project,me))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(Ct,{key:1,"model-value":t.filters[r.unref(so).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:R.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":le[2]||(le[2]=me=>C(r.unref(so).sprint,me))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),k.value.length?(r.openBlock(),r.createBlock(Ct,{key:2,"model-value":t.filters[r.unref(so).assignee],mode:"tags",options:k.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:R.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":le[3]||(le[3]=me=>C(r.unref(so).assignee,me))},{tag:r.withCtx(({option:me,handleTagRemove:we})=>[r.createVNode(Xn,{"user-name":me.label,"avatar-url":me.avatar,"is-closable":!0,onClose:Re=>we(me,Re)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["model-value","options","placeholder"])):r.createCommentVNode("",!0)]),r.createVNode(ue,{class:"ao-feed__only-non-assigned",size:"sm","icon-name":t.showsOnlyNonAssigned?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:le[4]||(le[4]=me=>R.$emit("update:showsOnlyNonAssigned",!t.showsOnlyNonAssigned))},null,8,["icon-name","label","aria-checked"]),r.createVNode(ue,{class:"ao-feed__only-important",size:"sm","icon-name":t.showsOnlyImportant?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:le[5]||(le[5]=me=>R.$emit("update:showsOnlyImportant",!t.showsOnlyImportant))},null,8,["icon-name","label","aria-checked"]),r.createVNode(ue,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchivedActivities?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:le[6]||(le[6]=me=>R.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&w.value.length>0?(r.openBlock(),r.createBlock(Uge,{key:0,sprints:w.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:v.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",jge,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,me=>(r.openBlock(),r.createBlock(tge,{key:me.id,status:me,list:d.value[me.id],title:me.name,"footer-label":R.$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:()=>g(me),onAddAtBeginning:()=>y(me),onSelectActivity:u,onArchiveActivity:S,onUnarchiveActivity:E,onUpdateActivity:T,onStartTimer:D},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(id,{key:0,activity:t.selectedActivity,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":(ge=t.selectedActivity.milestone)==null?void 0:ge.id,"template-activities":a.value,users: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:v.value,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":o.loadAttachmentPreview,sprints:t.activitySprints,onClose:le[7]||(le[7]=()=>u(null,null)),"onUpdate:activity":A,onAddSubtask:B,onUpdateSubtask:I,onDeleteSubtask:V,onAddFiles:j,onRemoveFile:F,onAddComment:q,onUpdateComment:Q,onRemoveComment:ae,onToast:s,onCreateSprint:le[8]||(le[8]=me=>i("createSprint",me))},{default:r.withCtx(me=>[r.renderSlot(R.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(me)))]),_: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"])):r.createCommentVNode("",!0)]))])}}});const Wge={class:"ao-project-mapping"},Zge={class:"ao-project-mapping-mapping__body"},Kge={class:"ao-project-mapping-mapping__phases"},Gge={key:0,class:"ao-project-mapping-mapping__image-wrapper"},Yge=["src","alt"],Jge=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}=Bt(),o=t,i=e,s=()=>{const{name:v,rank:_}=Zo(o.phases,"phase",n);i("addPhase",{name:v,rank:_,projectId:o.project.id})},a=()=>{const v=n("template.defaultName.phase",{idx:1}),_=ns(o.phases);i("addPhase",{name:v,rank:_,projectId:o.project.id})},l=v=>{i("updatePhase",v)},c=v=>{i("archivePhase",v)},u=v=>{i("unarchivePhase",v)},d=v=>{i("copyPhaseToTemplate",v)},f=r.ref(!1),p=r.ref(!1),m=(v,_)=>{i("applyTemplate",{templateId:v,projectId:_}),f.value=!1},h=(v,_)=>{var k;const b=(k=o.templates)==null?void 0:k.at(-1),w=b?Xe.LexoRank.parse(b.rank).genNext():Xe.LexoRank.middle();i("saveTemplate",{templateName:v,rank:w.format(),phaseIds:_}),p.value=!1},g=$r.useRouter(),y=r.ref("mapping"),C=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(y,v=>{v==="feed"?(g.push({name:Fe.feed}),console.log("Navigating to feed...")):v==="dev"?(g.push({name:Fe.dev}),console.log("Navigating to dev...")):v==="overview"?(g.push({name:Fe.project}),console.log("Navigating to feed...")):v==="mapping"&&(g.push({name:Fe.mapping}),console.log("Navigating to feed..."))}),(v,_)=>{var b;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-mapping-overview"},v.$attrs),[r.createElementVNode("div",Wge,[r.createVNode(os,null,{primary:r.withCtx(()=>[r.createVNode(gs,{modelValue:y.value,"onUpdate:modelValue":_[0]||(_[0]=w=>y.value=w),tabs:C},null,8,["modelValue"]),r.createVNode(ue,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:v.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:_[1]||(_[1]=w=>v.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:0,class:"ao-mapping__quick-add-phase",size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:v.$t("project.phase.add"),onClick:a},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:1,class:"ao-project-mapping-overview__save-as-template",color:"primary",label:v.$t("project.template.save.label"),onClick:_[2]||(_[2]=w=>p.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(ue,{key:2,class:"ao-project-mapping-overview__add-template",color:"primary",label:v.$t("project.template.apply.label"),onClick:_[3]||(_[3]=w=>f.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",Zge,[r.createElementVNode("div",Kge,[r.createVNode(vd,{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:u,onCopyPhaseToTemplate:d},null,8,["phases","closed-status","is-editable","users","estimation-unit"])]),t.project.architectureImage?(r.openBlock(),r.createElementBlock("div",Gge,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,Yge)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[p.value?(r.openBlock(),r.createBlock(Gg,{key:0,phases:t.phases,onClose:_[4]||(_[4]=w=>p.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),f.value?(r.openBlock(),r.createBlock(Kg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=w=>f.value=!1),onApply:m},null,8,["project-id","templates"])):r.createCommentVNode("",!0)]))],64)}}});const Uo={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},Xge=(t,e={})=>[{path:t,name:Uo.TEMPLATES,redirect:{name:Uo.TEMPLATES_LIST},...e,children:[{path:"",name:Uo.TEMPLATES_LIST,component:Yg},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:Uo.TEMPLATE_DETAILS,component:jg,props:!0}]}],Fe={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},Vo={feed:"ActivityFeed",dev:"ActivityFeedDev"},Qge=(t,e={})=>[{path:t,...e,redirect:{name:Fe.project},children:[{path:"",name:Fe.project,component:jme,props:!0,children:[{path:":phaseId/:milestoneId",name:Fe.milestone,component:bp,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Fe.activity,props:{default:!0,modal:!0},components:{default:bp,modal:Lhe}}]},{path:"feed",name:Fe.feed,component:Jc,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Fe.dev,component:Jc,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Fe.mapping,component:Jge,props:!0}]}],e0e={class:"ao-templates"},Yg=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Bt(),o=t,i=e;r.watch(()=>o.templates,(u,d)=>{Wn(u,d)});const s=()=>{var m,h;const u=(m=o.templates)==null?void 0:m.at(-1),d=u?Xe.LexoRank.parse(u.rank).genNext():Xe.LexoRank.middle(),f=((h=o.templates)==null?void 0:h.length)??0,p={name:n("template.defaultName.template",{idx:f+1}),rank:d.format()};i("addTemplate",p)},a=(u,d)=>{i("updateItem",{itemType:Ze.TEMPLATES,id:u,templateId:u,data:{name:d}})},l=(u,d)=>{i("removeItem",{itemType:Ze.TEMPLATES,templateId:u,data:{id:u,...d?{name:d}:{}}})},c=u=>{if(u.moved){const d=ts(u,o.templates??[]);i("updateItem",{itemType:Ze.TEMPLATES,id:u.moved.element.id,templateId:u.moved.element.id,data:{rank:d}})}};return(u,d)=>(r.openBlock(),r.createElementBlock("div",e0e,[r.createVNode(os,null,{secondary:r.withCtx(()=>[r.createVNode(ue,{label:u.$t("templates.new"),color:"primary","icon-name":"Add","icon-position":"start",onClick:s},null,8,["label"])]),_:1}),r.createVNode(r.unref(ko),{"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(Q7,{id:f.id,title:f.name,phases:f.phases,milestones:(p=f.phases)!=null&&p.length?r.unref(w7)(f.phases):0,activities:f.phases?r.unref(E7)(f.phases):0,"updated-at":f.updatedAt,"updated-by":f.updatedBy,onUpdateTitle:m=>a(f.id,m),onClick:m=>u.$router.push({name:r.unref(Uo).TEMPLATE_DETAILS,params:{templateId:f.id}}),onDeleteItem:d[0]||(d[0]=(m,h)=>l(m,h))},null,8,["id","title","phases","milestones","activities","updated-at","updated-by","onUpdateTitle","onClick"])]}),_:1},8,["model-value"])]))}});const t0e={class:"ao-field__label"},Jg=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",t0e,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),n0e=["type","value","disabled","readonly"],o0e=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(Jg,{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,n0e)]),_:1},8,["label"]))}}),r0e={class:"ao-field"},i0e={class:"ao-field__label"},s0e=["checked","disabled"],Xg=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",r0e,[r.createElementVNode("span",i0e,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,s0e)]))}}),a0e={class:"ao-audit-config"},l0e={key:0,class:"ao-audit-config__loading"},c0e={key:1,class:"ao-audit-config__error"},u0e={key:2,class:"ao-audit-config__empty"},d0e={key:3,class:"ao-audit-config__table"},f0e={class:"ao-audit-config__th ao-audit-config__th--table"},p0e={class:"ao-audit-config__th ao-audit-config__th--audit"},m0e={class:"ao-audit-config__th ao-audit-config__th--excluded"},h0e={class:"ao-audit-config__td ao-audit-config__td--table"},g0e={class:"ao-audit-config__table-name"},v0e={key:0,class:"ao-audit-config__schema"},_0e={class:"ao-audit-config__td ao-audit-config__td--audit"},y0e={class:"ao-audit-config__checkbox"},C0e={class:"ao-audit-config__td ao-audit-config__td--excluded"},b0e={key:0,class:"ao-audit-config__disabled-note"},k0e={class:"ao-audit-config__option"},w0e=["title"],E0e={key:0,class:"ao-audit-config__all-tracked"},S0e=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}=Bt(),s=r.computed(()=>n.tables);function a(u){return u.columns.map(d=>({value:d.name,label:d.name,isPrimaryKey:d.isPrimaryKey}))}function l(u,d){o("update",{schemaName:u.schemaName,tableName:u.tableName,isEnabled:d,excludeColumns:u.excludeColumns})}function c(u,d){const f=Array.from(new Set(d??[]));o("update",{schemaName:u.schemaName,tableName:u.tableName,isEnabled:u.isEnabled,excludeColumns:f})}return(u,d)=>(r.openBlock(),r.createElementBlock("div",a0e,[t.loading?(r.openBlock(),r.createElementBlock("div",l0e,r.toDisplayString(r.unref(i)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",c0e,r.toDisplayString(r.unref(i)("audit.error",{message:t.error})),1)):s.value.length?(r.openBlock(),r.createElementBlock("table",d0e,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",f0e,r.toDisplayString(r.unref(i)("audit.tableHeader")),1),r.createElementVNode("th",p0e,r.toDisplayString(r.unref(i)("audit.auditHeader")),1),r.createElementVNode("th",m0e,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",h0e,[r.createElementVNode("span",g0e,r.toDisplayString(f.tableName),1),f.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",v0e,r.toDisplayString(f.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",_0e,[r.createElementVNode("div",y0e,[r.createVNode(Xg,{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",C0e,[f.isEnabled?(r.openBlock(),r.createBlock(Ct,{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",k0e,[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,w0e)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[f.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",E0e,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",b0e,r.toDisplayString(r.unref(i)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",u0e,r.toDisplayString(r.unref(i)("audit.empty")),1))]))}});const x0e={class:"ao-sprint-list"},T0e={class:"ao-sprint-list__header"},A0e={class:"ao-sprint-list__title-group"},N0e={class:"ao-sprint-list__count"},D0e={class:"ao-sprint-list__actions"},$0e={key:0,class:"ao-sprint-list__toggle"},B0e={key:0,class:"ao-sprint-list__row ao-sprint-list__row--editing"},M0e=["title","onClick"],L0e=["placeholder"],O0e={class:"ao-sprint-list__date-fields"},I0e={class:"ao-sprint-list__row-actions"},V0e={class:"ao-sprint-list__rows"},P0e={class:"ao-sprint-list__identity"},F0e={class:"ao-sprint-list__name-group"},R0e={class:"ao-sprint-list__name"},z0e={key:0,class:"ao-sprint-list__archived-badge"},U0e={class:"ao-sprint-list__dates"},q0e={key:0,class:"ao-sprint-list__row-actions"},H0e=["title","onClick"],j0e={class:"ao-sprint-list__date-fields"},W0e={class:"ao-sprint-list__row-actions"},Z0e={key:1,class:"ao-sprint-list__empty"},K0e=r.defineComponent({__name:"AoSprintList",props:{sprints:{},isEditable:{type:Boolean}},emits:["updateSprint","archiveSprint","unarchiveSprint","createSprint"],setup(t,{emit:e}){const n=t,o=e,{t:i}=Bt(),s=r.ref(!1),a=r.computed(()=>s.value?n.sprints:n.sprints.filter(T=>T.active)),l=r.ref(null),c=r.ref({name:"",startDate:"",endDate:"",color:""}),u=r.ref(null),d=r.ref(null),f=T=>{l.value=T.id,c.value={name:T.name,startDate:T.startDate,endDate:T.endDate,color:T.color||""}},p=()=>{l.value=null,c.value={name:"",startDate:"",endDate:"",color:""}},m=T=>{o("updateSprint",{id:T,name:c.value.name||void 0,startDate:c.value.startDate||void 0,endDate:c.value.endDate||void 0,color:c.value.color||void 0}),p()},h=T=>{confirm(i("sprint.confirmArchive"))&&o("archiveSprint",{id:T})},g=T=>{o("unarchiveSprint",{id:T})},y=T=>Qc(Br(T),"dd/MM/yy"),C=()=>n.sprints.reduce((S,E)=>{const D=E.name.match(/^Sprint\s*(\d+)$/);return D?Math.max(S,parseInt(D[1],10)):S},0)+1,v=r.ref(!1),_=r.ref({name:"",startDate:"",endDate:"",color:"#4f5cff"}),b=()=>{v.value=!0,l.value=null,_.value={name:`Sprint ${C()}`,startDate:"",endDate:"",color:"#4f5cff"}},w=()=>{v.value=!1,_.value={name:"",startDate:"",endDate:"",color:"#4f5cff"}},k=()=>{!_.value.name||!_.value.startDate||!_.value.endDate||(o("createSprint",{name:_.value.name,startDate:_.value.startDate,endDate:_.value.endDate,color:_.value.color||void 0}),w())},A=r.computed(()=>v.value?!!(_.value.name&&_.value.startDate&&_.value.endDate):l.value?!!(c.value.name&&c.value.startDate&&c.value.endDate):!1);return(T,S)=>(r.openBlock(),r.createElementBlock("section",x0e,[r.createElementVNode("div",T0e,[r.createElementVNode("div",A0e,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(i)("sprint.planning")),1),r.createElementVNode("span",N0e,r.toDisplayString(a.value.length),1)]),r.createElementVNode("div",D0e,[t.sprints.some(E=>!E.active)?(r.openBlock(),r.createElementBlock("label",$0e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[0]||(S[0]=E=>s.value=E),type:"checkbox"},null,512),[[r.vModelCheckbox,s.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(i)("sprint.showArchived")),1)])):r.createCommentVNode("",!0),t.isEditable&&!v.value?(r.openBlock(),r.createBlock(ue,{key:1,color:"primary",variant:"solid",size:"sm","icon-name":"Add","icon-position":"start",label:r.unref(i)("sprint.add"),onClick:b},null,8,["label"])):r.createCommentVNode("",!0)])]),v.value?(r.openBlock(),r.createElementBlock("div",B0e,[r.createVNode(jr,{color:_.value.color,"onUpdate:color":S[1]||(S[1]=E=>_.value.color=E)},{clickable:r.withCtx(({openPicker:E,bgColor:D})=>[r.createElementVNode("button",{ref_key:"colorTriggerRef",ref:u,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:D}),title:r.unref(i)("sprint.color"),onClick:x=>E(x.currentTarget)},null,12,M0e)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[2]||(S[2]=E=>_.value.name=E),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name",placeholder:r.unref(i)("sprint.name")},null,8,L0e),[[r.vModelText,_.value.name]]),r.createElementVNode("div",O0e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[3]||(S[3]=E=>_.value.startDate=E),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.startDate]]),S[9]||(S[9]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[4]||(S[4]=E=>_.value.endDate=E),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.endDate]])]),r.createElementVNode("div",I0e,[r.createVNode(ue,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!A.value,title:r.unref(i)("common.save"),onClick:k},null,8,["disabled","title"]),r.createVNode(ue,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:r.unref(i)("common.cancel"),onClick:w},null,8,["title"])])])):r.createCommentVNode("",!0),r.createElementVNode("div",V0e,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(a.value,E=>(r.openBlock(),r.createElementBlock("div",{key:E.id,class:r.normalizeClass(["ao-sprint-list__row",{"ao-sprint-list__row--archived":!E.active,"ao-sprint-list__row--editing":l.value===E.id}])},[l.value!==E.id?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",P0e,[r.createElementVNode("span",{class:"ao-sprint-list__color-dot",style:r.normalizeStyle({backgroundColor:E.color||"var(--ao-color-primary-base)"})},null,4),r.createElementVNode("div",F0e,[r.createElementVNode("span",R0e,r.toDisplayString(E.name),1),E.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",z0e,r.toDisplayString(r.unref(i)("sprint.archived")),1))])]),r.createElementVNode("div",U0e,[r.createVNode(be,{name:"CalendarTodayOutlineRounded",size:"sm"}),r.createElementVNode("span",null,r.toDisplayString(y(E.startDate))+" – "+r.toDisplayString(y(E.endDate)),1)]),t.isEditable?(r.openBlock(),r.createElementBlock("div",q0e,[r.createVNode(ue,{color:"neutral",variant:"ghost",size:"md","icon-name":"EditOutline","icon-position":"start",title:r.unref(i)("common.edit"),onClick:D=>f(E)},null,8,["title","onClick"]),r.createVNode(ue,{color:"neutral",variant:"ghost",size:"md",corners:"round","icon-position":"start","icon-name":(E.active,"ArchiveOutlineRounded"),label:E.active?r.unref(i)("sprint.archive"):r.unref(i)("sprint.unarchive"),onClick:D=>E.active?h(E.id):g(E.id)},null,8,["icon-name","label","onClick"])])):r.createCommentVNode("",!0)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createVNode(jr,{color:c.value.color,"onUpdate:color":S[5]||(S[5]=D=>c.value.color=D)},{clickable:r.withCtx(({openPicker:D,bgColor:x})=>[r.createElementVNode("button",{ref_for:!0,ref_key:"colorTriggerEditRef",ref:d,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:x}),title:r.unref(i)("sprint.color"),onClick:$=>D($.currentTarget)},null,12,H0e)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[6]||(S[6]=D=>c.value.name=D),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name"},null,512),[[r.vModelText,c.value.name]]),r.createElementVNode("div",j0e,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[7]||(S[7]=D=>c.value.startDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.startDate]]),S[10]||(S[10]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":S[8]||(S[8]=D=>c.value.endDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.endDate]])]),r.createElementVNode("div",W0e,[r.createVNode(ue,{color:"success",variant:"ghost",size:"md","icon-name":"CheckSmallRounded",disabled:!A.value,title:r.unref(i)("common.save"),onClick:D=>m(E.id)},null,8,["disabled","title","onClick"]),r.createVNode(ue,{color:"neutral",variant:"ghost",size:"md","icon-name":"CloseRounded",title:r.unref(i)("common.cancel"),onClick:p},null,8,["title"])])],64))],2))),128))]),a.value.length===0&&!v.value?(r.openBlock(),r.createElementBlock("div",Z0e,r.toDisplayString(r.unref(i)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}});const G0e=te(K0e,[["__scopeId","data-v-698944ea"]]);exports.AoAuditConfigTable=S0e;exports.AoAvatar=Xn;exports.AoCardFeed=_d;exports.AoCheckboxField=Xg;exports.AoColorPicker=jr;exports.AoFeed=Jc;exports.AoField=Jg;exports.AoInputField=o0e;exports.AoMultiselect=Ct;exports.AoProjectPhases=vd;exports.AoSprintList=G0e;exports.AoTabBar=gs;exports.AoTemplateDetails=jg;exports.AoTemplates=a0;exports.AoTemplatesList=Yg;exports.EstimationUnit=Ap;exports.TemplateItemTypeEnum=Tp;exports.activityFeedRoutes=Vo;exports.activityFeedStatus=Oy;exports.durationTypes=Ly;exports.feedFilterTypes=so;exports.getProjectOverviewRoutes=Qge;exports.getTemplateRoutes=Xge;exports.listUpdateTypes=Iy;exports.milestoneStatus=Pi;exports.projectOverviewRoutes=Fe;exports.ruleComparators=Ep;exports.ruleDurationUnits=xp;exports.ruleTriggerTypes=Sp;exports.templateItemType=Ze;exports.templateRouteNames=Uo;
package/dist/orcha.es.js CHANGED
@@ -29280,12 +29280,9 @@ const Lhe = ["onKeydown"], Ihe = { class: "ao-modal ao-bulk-insert-modal" }, Nhe
29280
29280
  u.value.data
29281
29281
  );
29282
29282
  }, g = (C) => String(
29283
- C === 0 ? o("project.bulk.modal.noSpace") : o(
29284
- "project.bulk.modal.space",
29285
- {
29286
- count: C
29287
- }
29288
- )
29283
+ C === 0 ? o("project.bulk.modal.noSpace") : C === 1 ? o("project.bulk.modal.oneSpace") : o("project.bulk.modal.spaces", {
29284
+ count: C
29285
+ })
29289
29286
  ), v = (C) => String(
29290
29287
  o(
29291
29288
  l[C.code],
package/dist/orcha.umd.js CHANGED
@@ -60,4 +60,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
60
60
  `)}function lN(t,e,n){var a;const o=((a=t.match(/^\s*/))==null?void 0:a[0])??"";return[...o].some(i=>i!==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 cN(t,e){const n=lu(e),o=[],a=[],i=[];if(!t||t.trim().length===0)return{valid:!0,data:[],errors:[]};const s=t.split(/\r?\n/);for(let l=0;l<s.length;l+=1){const c=l+1,d=s[l];if(d.trim().length===0)continue;const u=lN(d,n.indentCharacter,n.indentSize);if("code"in u){o.push({line:c,code:u.code,params:u.params});continue}const{level:p,content:f}=u,m=n.levels[p];if(!m){o.push({line:c,code:"TOO_MANY_INDENTATION_LEVELS",params:{max:n.levels.length-1}});continue}if(p>0&&!i[p-1]){const g=n.levels[p-1];o.push({line:c,code:"EXPECTED_PARENT_BEFORE",params:{parent:g,child:m}});continue}const h={type:m,name:f,children:[]};p===0?a.push(h):i[p-1].children.push(h),i[p]=h,i.length=p+1}return{valid:o.length===0,data:a,errors:o}}const dN=["onKeydown"],uN={class:"ao-modal ao-bulk-insert-modal"},pN={class:"ao-modal__header"},fN={class:"ao-modal__header-meta"},mN={class:"ao-modal__title-group"},hN={class:"ao-modal__body ao-bulk-insert-modal__body"},gN={key:0,class:"ao-bulk-insert-modal__intro"},bN=["placeholder","disabled"],_N={key:1,class:"ao-bulk-insert-modal__errors"},yN={key:2,class:"ao-bulk-insert-modal__count"},vN={class:"ao-bulk-insert-modal__help"},CN={class:"ao-bulk-insert-modal__help-title"},kN={class:"ao-bulk-insert-modal__help-list"},wN={class:"ao-bulk-insert-modal__help-entity"},xN={class:"ao-bulk-insert-modal__help-rule"},EN={class:"ao-bulk-insert-modal__footer"},cu=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:a}=Dt(),i=r.ref(""),s=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(()=>lu(n.rootType)),u=r.computed(()=>cN(i.value,n.rootType)),p=C=>String(a(l[C])),f=r.computed(()=>`${sN(n.rootType,p).split(`
61
61
  `).map(k=>k.trim()?`${k} 1`:k).join(`
62
62
  `)}
63
- ...`),m=r.computed(()=>n.placeholder||f.value),h=r.computed(()=>i.value.trim().length>0&&u.value.valid&&u.value.data.length>0&&!n.isLoading),g=r.computed(()=>{const C=w=>w.reduce((k,T)=>k+1+C(T.children??[]),0);return C(u.value.data)});r.watch(()=>n.open,async C=>{var w;C&&(i.value="",await r.nextTick(),(w=s.value)==null||w.focus())},{immediate:!0});const y=()=>{n.isLoading||(o("update:open",!1),o("close"))},v=()=>{h.value&&o("submit",u.value.data)},b=C=>String(C===0?a("project.bulk.modal.noSpace"):a("project.bulk.modal.space",{count:C})),_=C=>String(a(c[C.code],C.params??{}));return(C,w)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper","ao-bulk-insert-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(y,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:y}),r.createElementVNode("div",uN,[r.createElementVNode("div",pN,[r.createElementVNode("div",fN,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:y})]),r.createElementVNode("header",mN,[r.createVNode(pt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",hN,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(v,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",gN,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:s,"onUpdate:modelValue":w[0]||(w[0]=k=>i.value=k),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,bN),[[r.vModelText,i.value]]),u.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",_N,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.errors,k=>(r.openBlock(),r.createElementBlock("p",{key:`${k.line}-${k.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(a)("project.bulk.modal.lineError",{line:k.line,message:_(k)})),1))),128))])):i.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",yN,r.toDisplayString(r.unref(a)("project.bulk.modal.count",{count:g.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",vN,[r.createElementVNode("span",CN,r.toDisplayString(r.unref(a)("project.bulk.modal.indentation")),1),r.createElementVNode("div",kN,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.levels,(k,T)=>(r.openBlock(),r.createElementBlock("div",{key:k,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",wN,r.toDisplayString(p(k)),1),r.createElementVNode("span",xN,r.toDisplayString(b(T)),1)]))),128))])]),r.createElementVNode("footer",EN,[r.createVNode(de,{color:"primary",variant:"ghost",label:r.unref(a)("common.cancel"),disabled:t.isLoading,onClick:y},null,8,["label","disabled"]),r.createVNode(de,{type:"submit",color:"primary",variant:"solid",label:r.unref(a)("common.create"),"is-loading":t.isLoading,disabled:!h.value},null,8,["label","is-loading","disabled"])])],32)])])],42,dN)):r.createCommentVNode("",!0)]))}}),I2e="";function du(t,e){return(t.children??[]).filter(n=>n.type===e)}function SN(t){return du(t,"task").map(e=>({name:e.name}))}function Lg(t,e=[]){const n=t.filter(a=>a.type==="activity"),o=wl(e,n.length);return n.map((a,i)=>{const s=SN(a);return{name:a.name,rank:o[i],...s.length?{tasks:s}:{}}})}function AN(t,e){return Lg(t,e)}function Og(t,e){const n=t.filter(a=>a.type==="milestone"),o=wl(e,n.length);return n.map((a,i)=>{const s=Lg(du(a,"activity"));return{name:a.name,rank:o[i],...s.length?{activities:s}:{}}})}function TN(t,e){const n=t.filter(a=>a.type==="phase"),o=wl(e,n.length);return n.map((a,i)=>{const s=Og(du(a,"milestone"),[]);return{name:a.name,rank:o[i],...s.length?{milestones:s}:{}}})}const NN={class:"ao-mapping-card-project-phase__header"},DN={class:"ao-card-project-item__title-line"},BN={key:0,class:"ao-card-project-item-phase__estimation"},$N={class:"ao-mapping-card-project-phase__footer"},MN={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},LN={class:"ao-mapping-card-project-phase__subitem"},ON={class:"ao-mapping-card-project-phase__subitem"},VN={key:0,class:"ao-mapping-card-project-phase__secondary"},IN={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},RN=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,a=g=>{o("update:title",g)},i=r.computed(()=>{var g;return((g=n.milestones)==null?void 0:g.reduce((y,v)=>{var b;return y+((b=v.activities)==null?void 0:b.reduce((_,C)=>_+(C.estimation||0),0))},0))||0}),s=r.computed(()=>!n.milestones||!n.timeTrackingData?0:n.milestones.reduce((g,y)=>{var v;return g+(((v=y.activities)==null?void 0:v.reduce((b,_)=>{var w;const C=(w=n.timeTrackingData)==null?void 0:w[_.id];return b+((C==null?void 0:C.timeSpent)||0)},0))||0)},0)),l=r.computed(()=>n.estimationUnit==="days"?"d":"h"),c=r.computed(()=>Ni(s.value,n.estimationUnit)),d=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.length}),u=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.filter(y=>y.status===ra.done).length}),p=r.computed(()=>(u.value||0)/(d.value||1)),f=r.computed({get:()=>n.deadline??"",set:g=>o("update:deadline",g!=null&&g.length?g:null)}),m=r.computed({get:()=>n.color,set:g=>{o("updatePhase",{id:n.id,color:g})}}),h=(g,y)=>{const v=g.target;v.closest("button")||v.closest("input")||v.closest(".ao-title")||y()};return(g,y)=>(r.openBlock(),r.createBlock(Xr,{color:m.value,"onUpdate:color":y[2]||(y[2]=v=>m.value=v)},{clickable:r.withCtx(({openPicker:v,bgColor:b})=>[r.createVNode(rl,{class:"ao-mapping-card-project-phase","is-clickable":t.isEditable,color:b,"with-left-border":!0,onClick:_=>h(_,v)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",DN,[r.createVNode(pt,{id:t.id,class:"ao-mapping-card-project-phase__title",title:t.name||"",level:4,"is-editable":t.isEditable,"onUpdate:title":a},null,8,["id","title","is-editable"]),i.value||s.value?(r.openBlock(),r.createElementBlock("span",BN," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(i.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",$N,[d.value?(r.openBlock(),r.createElementBlock("div",MN,[r.createElementVNode("div",LN,[r.createVNode(Ce,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",ON,r.toDisplayString(u.value)+" / "+r.toDisplayString(d.value),1)]),r.createVNode(al,{percentages:p.value,class:"ao-mapping-card-project-phase__progress",color:m.value},null,8,["percentages","color"]),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",VN,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-mapping-card-project-phase__footer-row",f.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]=_=>f.value=_),class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,f.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",IN,r.toDisplayString(r.unref(Di)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",NN,[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?g.$t("archive"):g.$t("unarchive"),onClick:y[0]||(y[0]=r.withModifiers(()=>t.active?g.$emit("archivePhase",{id:t.id}):g.$emit("unarchivePhase",{id:t.id}),["stop"]))},null,8,["label"])])]),key:"0"}:void 0]),1032,["is-clickable","color","onClick"])]),_:3},8,["color"]))}}),R2e="",PN={class:"ao-project-phase"},FN={key:0,class:"ao-project-phase__drag ao-card__drag"},zN={key:1,class:"ao-project-phase__col-phase"},qN={key:2,class:"ao-mapping-project-phase__col-phase"},jN={key:0,class:"ao-project-phase__col-milestones"},UN=["title","onClick"],HN=["onClick"],WN=["onClick"],ZN={class:"ao-project-phase__milestones-list-footer"},GN=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}=Dt(),o=t,a=e;r.watch(()=>o.phase.milestones,(A,E)=>{qn(A,E)});const i=A=>{a("updatePhase",{id:o.phase.id,name:A})},s=A=>{a("updatePhase",{id:o.phase.id,deadline:A})},l=A=>{a("updatePhase",A)},c=r.computed(()=>o.phase.milestones.map(A=>g5(A,o.closedStatus))),d=A=>{const{name:E,rank:x}=ir(c.value??[],"milestone",n);a("addMilestone",{name:E,rank:x,phaseId:A})},u=A=>{const E=n("template.defaultName.milestone",{idx:1}),x=ga(c.value??[]);a("addMilestone",{name:E,rank:x,phaseId:A})},p=A=>{a("updateMilestone",A)},f=A=>{a("archiveMilestone",A)},m=A=>{a("unarchiveMilestone",A)},h=A=>{a("archivePhase",A)},g=A=>{a("unarchivePhase",A)},y=A=>{"added"in A?a("updateMilestone",{id:A.added.element.id,phaseId:o.phase.id,rank:hr(c.value,A.added.newIndex)}):"removed"in A||"moved"in A&&a("updateMilestone",{id:A.moved.element.id,rank:hr(c.value,A.moved.newIndex)})},v=r.ref(!1),b=r.ref(!1),_=A=>{b.value=!0;const E=Og(A,o.phase.milestones??[]);a("bulkAddMilestone",{phaseId:o.phase.id,milestones:E,onSuccess:()=>{b.value=!1,v.value=!1},onError:()=>{b.value=!1}})};r.watch(v,A=>{A&&(b.value=!1)});const C=wt.useRoute(),w=r.computed(()=>C.path.includes("/mapping")),k=r.computed(()=>{var A;return o.phase.id===((A=C.params)==null?void 0:A.phaseId)});r.ref(!1);const T=r.computed(()=>{var A;return o.phase.id!==((A=C.params)==null?void 0:A.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:_5(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(A,E)=>(r.openBlock(),r.createElementBlock("li",PN,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",FN,[r.createVNode(Ce,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",qN,[r.createVNode(RN,{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":s,"onUpdate:title":i,onArchivePhase:h,onUnarchivePhase:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","estimation-unit"])])):(r.openBlock(),r.createElementBlock("div",zN,[r.createVNode(FT,{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":s,"onUpdate:title":i,onArchivePhase:h,onUnarchivePhase:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","time-tracking-data","estimation-unit"])]))],4),w.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",jN,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createBlock(il,{key:0,class:r.normalizeClass(["ao-project-phase__milestone-quick-add",{"ao-project-phase__milestone-quick-add--visible":k.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:x})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:A.$t("project.milestone.add"),onClick:x},[r.createVNode(Ce,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,UN)]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),u(t.phase.id)}},r.toDisplayString(A.$t("project.bulk.menu.single")),9,HN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),v.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,WN)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(oo),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},A.$attrs,{onChange:y}),{item:r.withCtx(({element:x})=>{var D;return[r.createVNode(nN,{id:x.id,name:x.name,color:x.color,"phase-color":t.phase.color,activities:x.activities,deadline:x.deadline,active:x.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":x.id===((D=A.$route.params)==null?void 0:D.milestoneId),assignee:x.assignee,important:x.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:S=>!t.readonly&&A.$router.push({name:r.unref(Re).milestone,params:{phaseId:t.phase.id,milestoneId:x.id}}),onUpdateMilestone:p,onArchiveMilestone:f,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",ZN,[t.isEditable?(r.openBlock(),r.createBlock(io,{key:0,label:A.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:E[0]||(E[0]=x=>d(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),v.value?(r.openBlock(),r.createBlock(cu,{key:1,open:v.value,"onUpdate:open":E[1]||(E[1]=x=>v.value=x),title:A.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":b.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}}),P2e="",KN={class:"ao-project__phases"},YN={key:0,class:"ao-project-phase__phases-list-footer"},JN={class:"ao-project-phase__col-phase"},uu=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)=>{qn(m,h)});const a=m=>{o("addMilestone",m)},i=m=>{o("updateMilestone",m)},s=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=ha(m,n.phases??[]);o("updatePhase",{id:m.moved.element.id,rank:h})}},p=m=>{o("updatePhase",m)},f=m=>{o("addPhase",m)};return(m,h)=>(r.openBlock(),r.createElementBlock("div",KN,[r.createVNode(r.unref(oo),{class:"ao-project-phase__phases-list","model-value":t.phases,"item-key":"id",handle:".ao-card__drag",onChange:u},{item:r.withCtx(({element:g})=>[r.createVNode(GN,{phase:g,"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:a,onBulkAddMilestone:h[0]||(h[0]=y=>m.$emit("bulkAddMilestone",y)),onUpdateMilestone:i,onArchiveMilestone:s,onUnarchiveMilestone:l,onUpdatePhase:p,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",YN,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",JN,[r.createVNode(io,{label:m.$t("project.phases.add"),"icon-name":"Add",class:"ao-project-phase__add-phase",onClick:f},null,8,["label"])]),h[2]||(h[2]=r.createElementVNode("div",{class:"ao-project-phase__col-milestones"},null,-1))])):r.createCommentVNode("",!0)]))}}),F2e="",XN={class:"ao-add-template-modal__form-body"},QN={class:"field__row"},eD={class:"ao-add-template-modal__form-footer"},Vg=r.defineComponent({__name:"AoAddTemplateModal",props:{projectId:{},templates:{}},emits:["apply"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>n.templates.map(c=>({value:c.id,label:c.name}))),i=r.ref(null),s=c=>{i.value=c},l=()=>{i.value&&o("apply",i.value,n.projectId)};return(c,d)=>(r.openBlock(),r.createBlock(Bi,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(pt,{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",XN,[r.createElementVNode("div",QN,[r.createVNode(yt,{value:i.value,options:a.value,detached:!0,onChange:s},null,8,["value","options"])])]),r.createElementVNode("footer",eD,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}}),z2e="",tD={class:"ao-save-template-modal__form-body"},nD={class:"field__row"},oD={class:"ao-field ao-field--inline"},rD={class:"ao-field__label"},aD={class:"ao-save-template-modal__phases"},iD={class:"ao-field__label"},sD={class:"ao-save-template-modal__phases-list"},lD=["value"],cD={class:"ao-save-template-modal__form-footer"},Ig=r.defineComponent({__name:"AoSaveTemplateModal",props:{phases:{}},emits:["save"],setup(t,{emit:e}){const n=t,o=e,a=r.ref(""),i=r.ref([]);r.onMounted(()=>{i.value=n.phases.map(l=>l.id)});const s=()=>{a.value&&o("save",a.value,i.value)};return(l,c)=>(r.openBlock(),r.createBlock(Bi,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(pt,{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(s,["prevent"])},[r.createElementVNode("div",tD,[r.createElementVNode("div",nD,[r.createElementVNode("label",oD,[r.createElementVNode("span",rD,r.toDisplayString(l.$t("project.template.name.label"))+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=d=>a.value=d),type:"text"},null,512),[[r.vModelText,a.value]])])]),r.createElementVNode("div",aD,[r.createElementVNode("div",iD,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",sD,[(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=>i.value=u),type:"checkbox",value:d.id},null,8,lD),[[r.vModelCheckbox,i.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",cD,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:s},null,8,["label"])])],32)]),_:1}))}}),q2e="",dD={class:"ao-project"},uD=["onClick"],pD=["onClick"],fD={class:"ao-project__body"},mD=r.defineComponent({__name:"AoProjectOverviewProject",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{type:Function},statuses:{},activityTypes:{},devStatuses:{},sprints:{},selectedActivity:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function}},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"],setup(t,{emit:e}){const{t:n}=Dt(),o=t,a=e,i=r.computed(()=>o.phases.flatMap(R=>R.milestones)),s=()=>{const{name:R,rank:ie}=ir(o.phases,"phase",n);a("addPhase",{name:R,rank:ie,projectId:o.project.id})},l=()=>{const R=n("template.defaultName.phase",{idx:1}),ie=ga(o.phases);a("addPhase",{name:R,rank:ie,projectId:o.project.id})},c=R=>{a("updatePhase",R)},d=R=>{a("archivePhase",R)},u=R=>{a("unarchivePhase",R)},p=R=>{a("copyPhaseToTemplate",R)},f=R=>{a("addMilestone",R)},m=R=>{a("bulkAddMilestone",R)},h=R=>{a("updateMilestone",R)},g=R=>{a("archiveMilestone",R)},y=R=>{a("unarchiveMilestone",R)},v=R=>{a("addActivity",R)},b=R=>{a("bulkAddActivity",R)},_=R=>{a("update:activity",R)},C=R=>{a("archiveActivity",R)},w=R=>{a("unarchiveActivity",R)},k=R=>{a("addSubtask",R)},T=R=>{a("updateSubtask",R)},A=R=>{a("deleteSubtask",R)},E=r.computed(()=>i.value.flatMap(R=>R.activities)),x=r.computed(()=>o.devStatuses??[]),D=r.computed(()=>o.sprints??[]),S=R=>{a("addFiles",R)},B=R=>{a("removeFile",R)},$=R=>{a("addComment",R)},V=R=>{a("updateComment",R)},I=R=>{a("removeComment",R)},H=r.ref(!1),P=r.ref(!1),j=r.ref(!1),Q=r.ref(!1),se=(R,ie)=>{a("applyTemplate",{templateId:R,projectId:ie}),H.value=!1},ne=(R,ie)=>{var we;const Te=(we=o.templates)==null?void 0:we.at(-1),Ze=Te?et.LexoRank.parse(Te.rank).genNext():et.LexoRank.middle();a("saveTemplate",{templateName:R,rank:Ze.format(),phaseIds:ie}),P.value=!1},ve=R=>{Q.value=!0;const ie=TN(R,o.phases);a("bulkAddPhase",{projectId:o.project.id,phases:ie,onSuccess:()=>{Q.value=!1,j.value=!1},onError:()=>{Q.value=!1}})};r.watch(j,R=>{R&&(Q.value=!1)});const re=wt.useRouter(),ae=r.ref("overview"),q=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(ae,R=>{R==="feed"?(re.push({name:Re.feed}),console.log("Navigating to feed...")):R==="dev"?(re.push({name:Re.dev}),console.log("Navigating to dev...")):R==="overview"?(re.push({name:Re.project}),console.log("Navigating to feed...")):R==="mapping"&&(re.push({name:Re.mapping}),console.log("Navigating to feed..."))}),(R,ie)=>{var Ze;const Te=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",dD,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createVNode(ii,{modelValue:ae.value,"onUpdate:modelValue":ie[0]||(ie[0]=we=>ae.value=we),tabs:q},null,8,["modelValue"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:ie[1]||(ie[1]=we=>R.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(il,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:we})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:we},null,8,["label","onClick"])]),menu:r.withCtx(({close:we})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{we(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,uD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{we(),j.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,pD)]),_:1})):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:1,class:"ao-project-overview__save-as-template",color:"primary",label:R.$t("project.template.save.label"),onClick:ie[2]||(ie[2]=we=>P.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:2,class:"ao-project-overview__add-template",color:"primary",label:R.$t("project.template.apply.label"),onClick:ie[3]||(ie[3]=we=>H.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",fD,[r.createVNode(uu,{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:f,onBulkAddMilestone:m,onUpdateMilestone:h,onArchiveMilestone:g,onUnarchiveMilestone:y,onAddPhase:s,onUpdatePhase:c,onArchivePhase:d,onUnarchivePhase:u,onCopyPhaseToTemplate:p},null,8,["phases","closed-status","is-editable","users","time-tracking-data","estimation-unit"])])]),r.createVNode(Te,{class:"ao-project__sidebar",phases:t.phases,"project-id":t.project.id,"project-name":t.project.name,users:t.users,"is-editable":t.isEditable===!0,"closed-status":t.closedStatus,"time-tracking-data":t.timeTrackingData,onClose:ie[4]||(ie[4]=we=>R.$router.push({name:r.unref(Re).project})),onUpdateMilestone:h,onAddActivity:v,onBulkAddActivity:b,onUpdateActivity:_,onArchiveActivity:C,onUnarchiveActivity:w},null,8,["phases","project-id","project-name","users","is-editable","closed-status","time-tracking-data"]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(Te,{name:"modal",activities:E.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":x.value,sprints:D.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,"onUpdate:activity":_,onAddSubtask:k,onUpdateSubtask:T,onDeleteSubtask:A,onAddFiles:S,onRemoveFile:B,onAddComment:$,onUpdateComment:V,onRemoveComment:I},{default:r.withCtx(({Component:we})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(we),null,{default:r.withCtx(F=>[r.renderSlot(R.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(F)))]),_: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"])]))],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[P.value?(r.openBlock(),r.createBlock(Ig,{key:0,phases:t.phases,onClose:ie[5]||(ie[5]=we=>P.value=!1),onSave:ne},null,8,["phases"])):r.createCommentVNode("",!0),H.value?(r.openBlock(),r.createBlock(Vg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:ie[6]||(ie[6]=we=>H.value=!1),onApply:se},null,8,["project-id","templates"])):r.createCommentVNode("",!0),j.value?(r.openBlock(),r.createBlock(cu,{key:2,open:j.value,"onUpdate:open":ie[7]||(ie[7]=we=>j.value=we),title:R.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":Q.value,onSubmit:ve},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}}),j2e="",hD={class:"ao-card-feed__header"},gD={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},bD={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},_D={class:"ao-card-feed__body"},yD={key:0,class:"ao-card-feed__breadcrumbs"},vD={class:r.normalizeClass(["ao-card-feed__title-group"])},CD={class:"ao-card-feed__title-line"},kD={key:0,class:"ao-card-feed__slug"},wD={key:1,class:"ao-card-feed__deadline"},xD={class:"ao-card-feed__footer"},ED={class:"ao-card-feed__footer-row"},SD={class:"ao-assignees"},AD={key:0,class:"ao-assignee"},TD={key:0,class:"ao-card-feed__subitems"},ND={key:0,class:"ao-card-feed__subitem"},DD={class:"ao-card-feed__subitem"},BD={key:1,class:"ao-card-feed__subitem"},$D={class:"ao-card-feed__subitem"},MD={class:"ao-card-feed__timer-wrapper"},LD={class:"ao-card-feed__footer-row"},OD={key:0,class:"ao-card-feed__progress-wrapper"},VD={class:"ao-card-feed__subitem"},ID={class:"ao-card-feed__subitem"},pu=r.defineComponent({__name:"AoCardFeed",props:{id:{},name:{},projectName:{},projectId:{},projectColor:{},phaseName:{},milestoneName:{},milestoneColor:{},deadline:{},important:{type:Boolean},blocked:{type:Boolean},assignee:{},slug:{},comments:{},attachments:{},tasks:{},isEditable:{type:Boolean},isPrivate:{type:Boolean},isClosed:{type:Boolean},tagType:{}},emits:["removeAssignee","updateActivity","startTimer"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>n.tagType==="milestone"?n.milestoneName:n.projectName),i=r.computed(()=>n.tagType==="milestone"?n.milestoneColor:n.projectColor),s=g=>{o("updateActivity",{id:n.id,name:g})},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(()=>Di(n.deadline)),u=g=>{o("removeAssignee",g)},p=()=>{o("startTimer",{activityId:n.id,name:n.name,project:n.projectName,projectId:n.projectId,slug:n.slug})},f=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.length}),m=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.filter(y=>y.isDone).length}),h=r.computed(()=>(m.value||0)/(f.value||1));return(g,y)=>(r.openBlock(),r.createBlock(rl,{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",hD,[a.value?(r.openBlock(),r.createBlock(oa,{key:0,label:a.value,class:"ao-card-feed__project",variant:"solid",color:t.projectColor?void 0:"primary","raw-color":i.value},null,8,["label","color","raw-color"])):r.createCommentVNode("",!0),t.isPrivate||t.important||t.isClosed||t.blocked?(r.openBlock(),r.createElementBlock("div",gD,[t.isPrivate?(r.openBlock(),r.createBlock(Ce,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.important?(r.openBlock(),r.createBlock(Ce,{key:1,name:"FlagRounded",class:"ao-card-feed__important",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(Ce,{key:2,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",bD,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",_D,[l.value?(r.openBlock(),r.createElementBlock("span",yD,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",vD,[r.createElementVNode("div",CD,[t.slug?(r.openBlock(),r.createElementBlock("span",kD,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(pt,{id:t.id,title:t.name,level:5,"is-editable":t.isEditable,class:"ao-card-feed__title-inline","onUpdate:title":s},null,8,["id","title","is-editable"])])]),t.deadline?(r.openBlock(),r.createElementBlock("span",wD,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",xD,[r.createElementVNode("div",ED,[r.createElementVNode("ul",SD,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,v=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:v.id},[v?(r.openBlock(),r.createElementBlock("li",AD,[r.createVNode(In,{"user-name":r.unref(Gu)(v),"avatar-url":v.avatarUrl,"is-closable":!0,onClose:()=>u(v.id)},null,8,["user-name","avatar-url","onClose"])])):r.createCommentVNode("",!0)],64))),128))]),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",TD,[t.comments?(r.openBlock(),r.createElementBlock("li",ND,[r.createVNode(Ce,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",DD,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",BD,[r.createVNode(Ce,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",$D,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",MD,[r.createVNode(Ce,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",LD,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",OD,[r.createElementVNode("div",VD,[r.createVNode(Ce,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",ID,r.toDisplayString(m.value)+" / "+r.toDisplayString(f.value),1)]),r.createVNode(al,{percentages:h.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}}),U2e="",RD={class:"ao-project-milestone"},PD={class:"ao-project-milestone__header"},FD={class:"ao-project-milestone__header_line"},zD={class:"ao-project-milestone__header_line"},qD={class:"ao-project-milestone__title"},jD={key:0,class:"ao-fieldset ao-milestone__fieldset"},UD={class:"ao-field__row ao-milestone__field-row"},HD={class:"ao-field ao-field--inline"},WD={class:"ao-field__row ao-milestone__field-row"},ZD={class:"ao-field ao-milestone__field-multiselect"},GD={class:"ao-milestone__color-actions"},KD=["onClick"],YD=["title","onClick"],JD=["onClick"],XD=["onClick"],QD={class:"ao-project-milestone__body"},eB={key:0,class:"ao-project-milestone__footer"},tB=["onClick"],nB=["onClick"],Rg=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}=Dt(),o=t,a=e,i=E=>{var x;a("startTimer",E),(x=window.parent)==null||x.postMessage({type:"startTimer",data:E},"*")},s=r.computed(()=>{var E;return(E=o.phases)==null?void 0:E.find(x=>x.id===o.phaseId)}),l=r.computed(()=>{var E;return(E=o.phases)==null?void 0:E.flatMap(x=>x.milestones)}),c=r.computed(()=>{var E;return(E=l.value)==null?void 0:E.find(x=>x.id===o.milestoneId)}),d=r.computed(()=>{var E;return(E=c.value)==null?void 0:E.activities});r.watch(d,(E,x)=>{qn(E,x)});const u=E=>{a("close",E)},p=()=>{const{name:E,rank:x}=ir(d.value??[],"activity",n);a("addActivity",{milestoneId:o.milestoneId,name:E,rank:x,projectId:o.projectId})},f=()=>{const E=n("template.defaultName.activity",{idx:1}),x=ga(d.value??[]);a("addActivity",{milestoneId:o.milestoneId,name:E,rank:x,projectId:o.projectId})},m=r.ref(!1),h=r.ref(!1),g=E=>{h.value=!0;const x=AN(E,d.value??[]);a("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:x,onSuccess:()=>{h.value=!1,m.value=!1},onError:()=>{h.value=!1}})};r.watch(m,E=>{E&&(h.value=!1)});const y=E=>{a("updateActivity",E)},v=E=>{d.value&&"moved"in E&&a("updateActivity",{id:E.moved.element.id,rank:hr(d.value,E.moved.newIndex)})},b=r.computed({get:()=>{var E;return(E=c.value)==null?void 0:E.color},set:E=>{c.value&&a("updateMilestone",{id:c.value.id,color:E})}}),_=r.computed({get:()=>{var E;return((E=c.value)==null?void 0:E.deadline)??""},set:E=>{c.value&&a("updateMilestone",{id:c.value.id,deadline:E!=null&&E.length?E:null})}}),C=E=>o.closedStatus?xl(E,o.closedStatus):!1,w=r.computed(()=>{var E;return((E=o.users)==null?void 0:E.map(x=>({label:`${x.firstName} ${x.lastName}`,value:x.id,avatar:x.avatarUrl})))||[]}),k=r.computed({get(){var E,x;return(x=(E=c.value)==null?void 0:E.assignee)!=null&&x.id?[c.value.assignee.id]:[]},set(E){a("updateMilestone",{id:o.milestoneId,assigneeId:E[0]??null})}}),T=r.computed({get(){var E;return((E=c.value)==null?void 0:E.important)??!1},set(E){a("updateMilestone",{id:o.milestoneId,important:E})}}),A=(E,x)=>{const D=E.currentTarget;D instanceof HTMLElement&&x(D)};return(E,x)=>{var D;return r.openBlock(),r.createElementBlock("div",RD,[r.createElementVNode("header",PD,[r.createElementVNode("div",FD,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:u})]),r.createElementVNode("div",zD,[r.createElementVNode("div",qD,[r.createVNode(pt,{title:((D=c.value)==null?void 0:D.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(Jd,{modelValue:T.value,"onUpdate:modelValue":x[0]||(x[0]=S=>T.value=S),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:E.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),c.value?(r.openBlock(),r.createElementBlock("div",jD,[r.createElementVNode("div",UD,[r.createElementVNode("label",HD,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":x[1]||(x[1]=S=>_.value=S),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,_.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",WD,[r.createElementVNode("label",ZD,[r.createVNode(yt,{modelValue:k.value,"onUpdate:modelValue":x[2]||(x[2]=S=>k.value=S),options:w.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:E.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:S,handleTagRemove:B})=>[r.createVNode(In,{"user-name":S.label,"avatar-url":S.avatar,"is-closable":!0,onClose:$=>B(S,$)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",GD,[r.createVNode(Xr,{color:b.value,"onUpdate:color":x[3]||(x[3]=S=>b.value=S)},{clickable:r.withCtx(({openPicker:S,bgColor:B})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:B}),class:"color-button",onClick:$=>A($,S)},null,12,KD)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(il,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:S})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:E.$t("project.activity.add"),onClick:S},[r.createVNode(Ce,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,YD)]),menu:r.withCtx(({close:S})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),f()}},r.toDisplayString(E.$t("project.bulk.menu.single")),9,JD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,XD)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",QD,[r.createVNode(r.unref(oo),r.mergeProps({class:"ao-project-milestone__activities",list:d.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},E.$attrs,{onChange:v}),{item:r.withCtx(({element:S})=>{var B,$,V,I,H;return[r.createVNode(pu,{id:S.id,name:S.name||S.id,"project-id":t.projectId,"phase-name":(B=s.value)==null?void 0:B.name,"milestone-name":($=c.value)==null?void 0:$.name,"milestone-color":(V=c.value)==null?void 0:V.color,deadline:S.deadline,important:S.important,blocked:S.blocked,users:t.users,assignee:S.assignee,slug:S.slug,comments:(I=S.comments)==null?void 0:I.length,attachments:(H=S.attachments)==null?void 0:H.length,tasks:S.tasks,"is-editable":t.isEditable,"is-private":S.private,"is-closed":C(S),onClick:P=>E.$router.push({name:r.unref(Re).activity,params:{milestoneId:t.milestoneId,activityId:S.id}}),onUpdateActivity:y,onRemoveAssignee:()=>y({id:S.id,assigneeId:null}),onStartTimer:i},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&S.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:E.$t("archive"),onClick:r.withModifiers(()=>E.$emit("archiveActivity",{id:S.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!S.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:E.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>E.$emit("unarchiveActivity",{id:S.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","important","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",eB,[r.createVNode(il,null,{trigger:r.withCtx(({open:S})=>[r.createVNode(io,{"icon-name":"Add",label:E.$t("project.activity.add"),onClick:S},null,8,["label","onClick"])]),menu:r.withCtx(({close:S})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),p()}},r.toDisplayString(E.$t("project.bulk.menu.single")),9,tB),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,nB)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(cu,{key:0,open:m.value,"onUpdate:open":x[4]||(x[4]=S=>m.value=S),title:E.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":h.value,onSubmit:g},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])}}}),H2e="",oB=r.defineComponent({__name:"AoProjectOverviewActivityDetails",props:{phaseId:{},milestoneId:{},activityId:{},activityTypes:{},devStatuses:{},activities:{},selectedActivity:{},isTaskCheckable:{type:Function},statuses:{},phases:{},users:{},project:{},userId:{},isEditable:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function},sprints:{}},emits:["update:activity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","createSprint"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>{var v;return(v=n.phases)==null?void 0:v.find(b=>b.id===n.phaseId)}),i=r.computed(()=>{var v;return(v=n.phases)==null?void 0:v.flatMap(b=>b.milestones)}),s=r.computed(()=>{var v;return(v=i.value)==null?void 0:v.find(b=>b.id===n.milestoneId)}),l=r.computed(()=>{var v;return n.selectedActivity??((v=n.activities)==null?void 0:v.find(b=>b.id===n.activityId))}),c=v=>{o("update:activity",v)},d=v=>{o("addSubtask",v)},u=v=>{o("updateSubtask",v)},p=v=>{o("deleteSubtask",v)},f=v=>{o("addFiles",v)},m=v=>{o("removeFile",v)},h=v=>{o("addComment",v)},g=v=>{o("updateComment",v)},y=v=>{o("removeComment",v)};return(v,b)=>{var _,C;return l.value?(r.openBlock(),r.createBlock(Xd,{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:`${(_=a.value)==null?void 0:_.name} / ${(C=s.value)==null?void 0:C.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,onClose:v.$router.back,"onUpdate:activity":c,onAddSubtask:d,onUpdateSubtask:u,onDeleteSubtask:p,onAddFiles:f,onRemoveFile:m,onAddComment:h,onUpdateComment:g,onRemoveComment:y,onCreateSprint:b[0]||(b[0]=w=>o("createSprint",w))},{default:r.withCtx(w=>[r.renderSlot(v.$slots,"default",r.normalizeProps(r.guardReactiveProps(w)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints","onClose"])):r.createCommentVNode("",!0)}}}),rB={class:"ao-col-header"},aB=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",rB,[r.createVNode(pt,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(oa,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}}),W2e="";function iB(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function ll(t){return typeof t=="function"?t():r.unref(t)}const sB=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const lB=t=>t!=null,si=()=>{};function cB(t,e){function n(...o){return new Promise((a,i)=>{Promise.resolve(t(()=>e.apply(this,o),{fn:e,thisArg:this,args:o})).then(a).catch(i)})}return n}function dB(t,e={}){let n,o,a=si;const i=l=>{clearTimeout(l),a(),a=si};return l=>{const c=ll(t),d=ll(e.maxWait);return n&&i(n),c<=0||d!==void 0&&d<=0?(o&&(i(o),o=null),Promise.resolve(l())):new Promise((u,p)=>{a=e.rejectOnCancel?p:u,d&&!o&&(o=setTimeout(()=>{n&&i(n),o=null,u(l())},d)),n=setTimeout(()=>{o&&i(o),o=null,u(l())},c)})}}function uB(t,e=200,n={}){return cB(dB(e,n),t)}function fu(t){var e;const n=ll(t);return(e=n==null?void 0:n.$el)!=null?e:n}const pB=sB?window:void 0;function fB(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function mB(t){const e=fB();return r.computed(()=>(e.value,!!t()))}function hB(t,e,n={}){const{root:o,rootMargin:a="0px",threshold:i=.1,window:s=pB,immediate:l=!0}=n,c=mB(()=>s&&"IntersectionObserver"in s),d=r.computed(()=>{const h=ll(t);return(Array.isArray(h)?h:[h]).map(fu).filter(lB)});let u=si;const p=r.ref(l),f=c.value?r.watch(()=>[d.value,fu(o),p.value],([h,g])=>{if(u(),!p.value||!h.length)return;const y=new IntersectionObserver(e,{root:fu(g),rootMargin:a,threshold:i});h.forEach(v=>v&&y.observe(v)),u=()=>{y.disconnect(),u=si}},{immediate:l,flush:"post"}):si,m=()=>{u(),f(),p.value=!1};return iB(m),{isSupported:c,isActive:p,pause(){u(),p.value=!1},resume(){p.value=!0},stop:m}}const gB={class:r.normalizeClass(["ao-list-kanban"])},bB={class:"ao-list-kanban__header"},_B=["title"],yB={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},vB={key:1,class:"ao-list-kanban__end"},CB={key:0,class:"ao-list-kanban__no-more"},kB={key:1,class:"ao-list-kanban__divider"},wB={key:1,class:"ao-list-kanban__footer"},xB=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,a=r.ref(!1),i=r.ref(null);hB(i,([{isIntersecting:p}])=>{a.value=p}),r.watch(a,p=>{p&&n.hasMore&&!n.isLoading&&o("loadMore")});const s=p=>{var f;return n.isEditable===!0?!0:n.userId&&n.isEditable==="only-own"?n.userId===((f=p.assignee)==null?void 0:f.id):!1},l=p=>{o("selectActivity",p)},c=p=>{o("updateActivity",p)},d=p=>{if("added"in p){const f={id:p.added.element.id,rank:hr(n.list,p.added.newIndex)};n.isDevMode?f.statusDevId=n.status.id:f.statusId=n.status.id,o("updateActivity",f)}else"removed"in p||"moved"in p&&o("updateActivity",{id:p.moved.element.id,rank:hr(n.list,p.moved.newIndex)})},u=r.ref(!1);return(p,f)=>(r.openBlock(),r.createElementBlock("div",gB,[t.title||p.$slots.header?r.renderSlot(p.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",bB,[t.title?(r.openBlock(),r.createBlock(aB,{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:p.$t("feed.activity.add"),onClick:f[0]||(f[0]=h=>p.$emit("addAtBeginning"))},[r.createVNode(Ce,{name:"Add"})],8,_B)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(oo),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"},p.$attrs,{draggable:".ao-list-draggable",disabled:!t.isEditable,"component-data":{tag:"transition-group",name:"ao-list-kanban__transition"},onChange:d,onStart:f[2]||(f[2]=m=>u.value=!0),onEnd:f[3]||(f[3]=m=>u.value=!1)}),{item:r.withCtx(({element:m})=>{var h,g,y,v,b,_,C,w,k,T;return[r.createVNode(pu,{id:m.id,class:r.normalizeClass(s(m)?"ao-list-draggable":""),name:m.name,"project-name":(h=m.project)==null?void 0:h.name,"project-id":(g=m.project)==null?void 0:g.id,"project-color":(y=m.project)==null?void 0:y.color,"phase-name":(b=(v=m.milestone)==null?void 0:v.phase)==null?void 0:b.name,"milestone-name":(_=m.milestone)==null?void 0:_.name,"milestone-color":(C=m.milestone)==null?void 0:C.color,deadline:m.deadline,rules:((w=m.rules)==null?void 0:w.length)||0,tasks:m.tasks,description:m.description,important:m.important,blocked:m.blocked,type:m.type,comments:(k=m.comments)==null?void 0:k.length,attachments:(T=m.attachments)==null?void 0:T.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":s(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[A=>s(m)&&c(A),()=>s(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>s(m)&&c({id:m.id,assigneeId:null}),onStartTimer:f[1]||(f[1]=A=>p.$emit("startTimer",A))},{secondary:r.withCtx(()=>[s(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:p.$t("feed.activity.archive"),onClick:r.withModifiers(()=>p.$emit("archiveActivity",{id:m.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),s(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:p.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>p.$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","important","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",yB,[r.createVNode(Ce,{name:"Loading"})])):t.hasMore?(r.openBlock(),r.createElementBlock("div",{key:2,ref_key:"scrollEnd",ref:i,class:"ao-list-kanban__end"},null,512)):(r.openBlock(),r.createElementBlock("div",vB,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",CB,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",kB)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),p.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",wB,[r.renderSlot(p.$slots,"footer",{},()=>[t.isEditable?(r.openBlock(),r.createBlock(io,{key:0,"icon-name":"AddBoxOutlineRounded",label:t.footerLabel,onClick:f[4]||(f[4]=m=>p.$emit("add"))},null,8,["label"])):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]))}}),Z2e="",EB={class:"ao-field ao-search-field"},SB=["value","placeholder"],AB=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,a=async l=>{const d=l.target.value;o("update:modelValue",d,l)},i=uB(a,n.delay),s=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",EB,[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(i)&&r.unref(i)(...d)),onKeypress:r.withKeys(a,["enter"])},null,40,SB),r.createVNode(Ce,{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:s},null,8,["class"])]))}}),G2e="",TB={class:"ao-sprint-metrics"},NB=["onClick"],DB={class:"ao-sprint-metrics__header-left"},BB={class:"ao-sprint-metrics__icon"},$B={class:"ao-sprint-metrics__title"},MB={class:"ao-sprint-metrics__dates"},LB={key:0,class:"ao-sprint-metrics__project"},OB={class:"ao-sprint-metrics__advancement"},VB={class:"ao-sprint-metrics__progress-bar"},IB={class:"ao-sprint-metrics__percent"},RB={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},PB={class:"ao-sprint-metrics__tooltip-row"},FB={class:"ao-sprint-metrics__tooltip-row"},zB={class:"ao-sprint-metrics__tooltip-row"},qB={class:"ao-sprint-metrics__tooltip-row"},jB={class:"ao-sprint-metrics__tooltip-row"},UB={class:"ao-sprint-metrics__tooltip-row"},HB={class:"ao-sprint-metrics__tooltip-row"},WB={class:"ao-sprint-metrics__content"},ZB={class:"ao-sprint-metrics__grid"},GB={class:"ao-sprint-metrics__item"},KB={class:"ao-sprint-metrics__label"},YB={class:"ao-sprint-metrics__value"},JB={key:0,class:"ao-sprint-metrics__tooltip"},XB={class:"ao-sprint-metrics__tooltip-title"},QB={class:"ao-sprint-metrics__item"},e$={class:"ao-sprint-metrics__label"},t$={class:"ao-sprint-metrics__value"},n$={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},o$={class:"ao-sprint-metrics__label"},r$={class:"ao-sprint-metrics__input-row"},a$=["value","placeholder","onInput"],i$={key:0,class:"ao-sprint-metrics__secondary"},s$={class:"ao-sprint-metrics__item"},l$={class:"ao-sprint-metrics__label"},c$={class:"ao-sprint-metrics__value"},d$=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]}},setup(t){const e=t,{t:n}=Dt(),o=["Ok for prod","Done"],a=r.ref(new Set),i=r.ref({}),s=x=>{a.value.has(x)?a.value.delete(x):a.value.add(x)},l=x=>e.projects.find(D=>D.id===x.projectId),c=x=>{var D;return((D=e.planningData[x])==null?void 0:D.plannedManDays)??0},d=x=>{var D;return((D=e.planningData[x])==null?void 0:D.remainingPlannedManDays)??0},u=x=>{var D;return((D=e.planningData[x])==null?void 0:D.users)??[]},p=x=>e.activities.filter(D=>{var S;return((S=D.sprint)==null?void 0:S.id)===x}).reduce((D,S)=>D+(S.estimation??0),0),f=x=>e.activities.filter(D=>{var B,$;if(((B=D.sprint)==null?void 0:B.id)!==x)return!1;const S=($=D.devStatus)==null?void 0:$.name;return S&&o.includes(S)}).reduce((D,S)=>D+(S.estimation??0),0),m=x=>{const D=c(x);return D<=0?0:p(x)/D},h=x=>i.value[x],g=(x,D)=>{const S=parseFloat(D);isNaN(S)||S<=0?delete i.value[x]:i.value[x]=S},y=x=>{const D=h(x);return D===void 0?0:c(x)*D},v=x=>{const D=y(x);return D<=0?null:p(x)/D},b=x=>{const D=v(x);return D===null?0:Math.round(D*100)},_=x=>{const D=p(x);if(D<=0)return 0;const S=f(x);return Math.round(S/D*100)},C=x=>{const D=p(x),S=f(x);return Math.max(0,D-S)},w=x=>{const D=d(x),S=m(x);return D*S},k=x=>{const D=w(x),S=C(x);return D<=0&&S>0?!1:D<S},T=x=>x.toFixed(1),A=x=>`${x.toFixed(2)} pts / MD`,E=(x,D)=>{const S=new Date(x),B=new Date(D),$={day:"numeric",month:"short"};return`${S.toLocaleDateString("en-UK",$)} – ${B.toLocaleDateString("en-UK",$)}`};return(x,D)=>(r.openBlock(),r.createElementBlock("div",TB,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,S=>{var B;return r.openBlock(),r.createElementBlock("div",{key:S.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:$=>s(S.id)},[r.createElementVNode("div",DB,[r.createElementVNode("span",BB,r.toDisplayString(a.value.has(S.id)?"▸":"▾"),1),r.createElementVNode("span",$B,r.toDisplayString(S.name),1),r.createElementVNode("span",MB," · "+r.toDisplayString(E(S.startDate,S.endDate)),1),!a.value.has(S.id)&&l(S)?(r.openBlock(),r.createElementBlock("span",LB," · "+r.toDisplayString((B=l(S))==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":k(S.id)}])},[r.createElementVNode("div",OB,[r.createElementVNode("div",VB,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":k(S.id)}]),style:r.normalizeStyle({width:_(S.id)+"%"})},null,6)]),r.createElementVNode("span",IB,r.toDisplayString(_(S.id))+"% ",1),r.createElementVNode("div",RB,[D[7]||(D[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",PB,[D[0]||(D[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(_(S.id))+"%",1)]),r.createElementVNode("span",FB,[D[1]||(D[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(T(f(S.id)))+" / "+r.toDisplayString(T(p(S.id)))+" pts ",1)]),r.createElementVNode("span",zB,[D[2]||(D[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(T(C(S.id)))+" pts",1)]),D[8]||(D[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",qB,[D[3]||(D[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(T(w(S.id)))+" pts",1)]),r.createElementVNode("span",jB,[D[4]||(D[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(T(d(S.id)))+" MD",1)]),r.createElementVNode("span",UB,[D[5]||(D[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(A(m(S.id))),1)]),D[9]||(D[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",HB,[D[6]||(D[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(k(S.id)?"Behind plan":"On track"),1)])])])],2)],8,NB),r.withDirectives(r.createElementVNode("div",WB,[r.createElementVNode("div",ZB,[r.createElementVNode("div",GB,[r.createElementVNode("div",KB,r.toDisplayString(r.unref(n)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",YB,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":u(S.id).length>0}])},[r.createTextVNode(r.toDisplayString(T(c(S.id)))+" MD ",1),u(S.id).length>0?(r.openBlock(),r.createElementBlock("span",JB,[r.createElementVNode("span",XB,r.toDisplayString(T(c(S.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u(S.id),$=>(r.openBlock(),r.createElementBlock("span",{key:$.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString($.fullName),1),r.createElementVNode("span",null,r.toDisplayString(T($.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",QB,[r.createElementVNode("div",e$,r.toDisplayString(r.unref(n)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",t$,r.toDisplayString(T(p(S.id)))+" pts ",1)]),r.createElementVNode("div",n$,[r.createElementVNode("div",o$,r.toDisplayString(r.unref(n)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",r$,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:i.value[S.id]??"",placeholder:r.unref(n)("sprintMetrics.targetVelocityPlaceholder"),onInput:$=>g(S.id,$.target.value)},null,40,a$),D[10]||(D[10]=r.createElementVNode("span",{class:"ao-sprint-metrics__unit"},"pts / MD",-1))]),m(S.id)>0?(r.openBlock(),r.createElementBlock("div",i$,r.toDisplayString(r.unref(n)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(A(m(S.id))),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",s$,[r.createElementVNode("div",l$,r.toDisplayString(r.unref(n)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",c$,[v(S.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(b(S.id))+"% · "+r.toDisplayString(T(p(S.id)))+" / "+r.toDisplayString(T(y(S.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!a.value.has(S.id)]])])}),128))]))}}),K2e="",u$=te(d$,[["__scopeId","data-v-98b799f1"]]),p$={class:"ao-feed"},f$={class:"ao-feed__filters"},m$={class:"ao-feed__body"},mu=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},devStatuses:{default:()=>[]},project:{default:void 0},projects:{default:()=>[]},filters:{},activityTypes:{default:()=>[]},users:{},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:()=>[]},sprintPlanningData:{default:()=>({})}},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"],setup(t,{emit:e}){const{t:n}=Dt(),o=t,a=e;function i(F,le){a("toast",F,le)}const s=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.statuses),c=r.computed(()=>o.feedMode==="dev"?s.value.filter(F=>F.activityType==="dev"):s.value),d=async(F,le)=>{await a("selectActivity",F,le)},u=r.ref({}),p=r.ref(!1),f=r.ref(!1),m=r.computed(()=>o.project?"milestone":"project");r.watch([()=>l.value,()=>c.value,()=>o.initialActivityId,()=>o.initialActivitySlug,()=>o.feedMode],async([F,le,be,me],[xe,qe])=>{const Me=o.feedMode==="dev"?"devStatus":"status";u.value=Object.fromEntries(F.map(De=>[De.id,le.filter(Pe=>{const Fe=Pe[Me];return(Fe==null?void 0:Fe.id)===De.id})])),be&&!p.value?(d(be,null),p.value=!0):me&&!p.value&&(d(null,me),p.value=!0),f.value&&qn(le,qe)},{immediate:!0});const h=r.computed(()=>{var F;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((F=o.selectedActivity.milestone.phase)==null?void 0:F.name)??""} / ${o.selectedActivity.milestone.name??""}`}),g=F=>{var De;const le=o.feedMode==="dev"?o.activities.filter(Pe=>Pe.activityType==="dev"):o.activities,be=le==null?void 0:le.at(-1),me=be?et.LexoRank.parse(be.rank).genNext():et.LexoRank.middle(),xe=((De=o.activities)==null?void 0:De.length)??0,qe=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:xe+1}),rank:me.format(),...qe?{statusDevId:F.id,type:"dev"}:{statusId:F.id}};if(o.filters.assigneeId.length>0&&(Me.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Me.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Pe=o.sprints.find(Fe=>Fe.id===o.filters.sprintId[0]);Pe&&(Me.sprintId=Pe.id,Me.projectId=Pe.projectId)}f.value=!0,a("addActivity",Me)},y=F=>{var De,Pe;const le=o.feedMode==="dev"?"devStatus":"status",be=((De=o.activities)==null?void 0:De.filter(Fe=>{const _t=Fe[le];return(_t==null?void 0:_t.id)===F.id}))??[],me=ga(be),xe=((Pe=o.activities)==null?void 0:Pe.length)??0,qe=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:xe+1}),rank:me,...qe?{statusDevId:F.id,type:"dev"}:{statusId:F.id}};if(o.filters.assigneeId.length>0&&(Me.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Me.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Fe=o.sprints.find(_t=>_t.id===o.filters.sprintId[0]);Fe&&(Me.sprintId=Fe.id,Me.projectId=Fe.projectId)}f.value=!0,a("addActivity",Me)},v=(F,le)=>{f.value=!1,a("update:filters",{...o.filters,[F]:le})},b=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>b.value.map(F=>({value:F.id,label:F.name}))),C=r.computed(()=>o.sprints.map(F=>({value:F.id,label:`${F.name} · ${F.startDate} – ${F.endDate}`,startDate:F.startDate,endDate:F.endDate,projectId:F.projectId}))),w=r.computed(()=>{const F=o.filters[ro.sprint]??[];return o.sprints.filter(le=>F.includes(le.id))});r.computed(()=>{var F;return(F=o.activityTypes)==null?void 0:F.map(le=>({value:le.id,label:le.name}))});const k=r.computed(()=>o.users.map(F=>({value:F.id,label:`${F.firstName} ${F.lastName}`,avatar:F.avatarUrl}))),T=F=>{o.selectedActivity&&a("update:activity",F)},A=F=>{a("update:activity",F)},E=F=>{a("archiveActivity",F)},x=F=>{a("unarchiveActivity",F)},D=F=>{var le;a("startTimer",F),(le=window.parent)==null||le.postMessage({type:"startTimer",data:F},"*")},S=F=>{f.value=!1,a("update:searchText",F)},B=F=>{f.value=!1,a("clear:searchText",F)},$=F=>{o.selectedActivity&&a("addSubtask",F)},V=F=>{o.selectedActivity&&a("updateSubtask",F)},I=F=>{o.selectedActivity&&a("deleteSubtask",F)},H=F=>{a("addFiles",F)},P=F=>{a("removeFile",F)},j=F=>{o.selectedActivity&&a("addComment",{...F,activityId:o.selectedActivity.id})},Q=F=>{const{id:le}=o.selectedActivity||{};le&&a("updateComment",F)},se=F=>{const{id:le}=o.selectedActivity||{};le&&a("removeComment",F)},ne=wt.useRouter(),ve=wt.useRoute(),re=r.ref("feed");r.watch(()=>ve.name,F=>{F===cr.feed||F==="ActivityFeed"||F==="ActivityFeedWithActivity"?re.value="feed":F===cr.dev||F==="ActivityFeedDev"||F==="ActivityFeedDevWithActivity"?re.value="dev":F===Re.feed?re.value="feed":F===Re.dev?re.value="dev":F===Re.project?re.value="overview":F===Re.mapping&&(re.value="mapping")},{immediate:!0});const ae=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],q=r.computed(()=>R.value?ae.filter(F=>F.value==="feed"||F.value==="dev"):ae),R=r.computed(()=>!o.project&&ve.name&&(ve.name===cr.feed||ve.name===cr.dev||ve.name==="ActivityFeed"||ve.name==="ActivityFeedDev"||ve.name==="ActivityFeedWithActivity"||ve.name==="ActivityFeedDevWithActivity")),ie=r.computed(()=>R.value?cr.feed:Re.feed),Te=r.computed(()=>R.value?cr.dev:Re.dev),Ze=r.computed(()=>Re.project),we=r.computed(()=>Re.mapping);return r.watch(re,F=>{F==="feed"?ne.push({name:ie.value}):F==="dev"?ne.push({name:Te.value}):F==="overview"?ne.push({name:Ze.value}):F==="mapping"&&ne.push({name:we.value})}),(F,le)=>{var be;return r.openBlock(),r.createElementBlock("div",p$,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createElementVNode("div",f$,[r.createVNode(ii,{modelValue:re.value,"onUpdate:modelValue":le[0]||(le[0]=me=>re.value=me),tabs:q.value},null,8,["modelValue","tabs"]),r.createVNode(AB,{"model-value":t.searchText,placeholder:F.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":S,onClear:B},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(yt,{key:0,"model-value":t.filters[r.unref(ro).project],mode:"tags",options:_.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__projects",placeholder:F.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":le[1]||(le[1]=me=>v(r.unref(ro).project,me))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(yt,{key:1,"model-value":t.filters[r.unref(ro).sprint],mode:"tags",options:C.value,"close-on-select":!1,searchable:!0,disabled:!C.value.length,class:"ao-feed__filter ao-feed__filter__sprints",placeholder:F.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":le[2]||(le[2]=me=>v(r.unref(ro).sprint,me))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),k.value.length?(r.openBlock(),r.createBlock(yt,{key:2,"model-value":t.filters[r.unref(ro).assignee],mode:"tags",options:k.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:F.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":le[3]||(le[3]=me=>v(r.unref(ro).assignee,me))},{tag:r.withCtx(({option:me,handleTagRemove:xe})=>[r.createVNode(In,{"user-name":me.label,"avatar-url":me.avatar,"is-closable":!0,onClose:qe=>xe(me,qe)},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:F.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:le[4]||(le[4]=me=>F.$emit("update:showsOnlyNonAssigned",!t.showsOnlyNonAssigned))},null,8,["icon-name","label","aria-checked"]),r.createVNode(de,{class:"ao-feed__only-important",size:"sm","icon-name":t.showsOnlyImportant?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:F.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:le[5]||(le[5]=me=>F.$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:F.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:le[6]||(le[6]=me=>F.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&w.value.length>0?(r.openBlock(),r.createBlock(u$,{key:0,sprints:w.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:b.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",m$,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,me=>(r.openBlock(),r.createBlock(xB,{key:me.id,status:me,list:u.value[me.id],title:me.name,"footer-label":F.$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:()=>g(me),onAddAtBeginning:()=>y(me),onSelectActivity:d,onArchiveActivity:E,onUnarchiveActivity:x,onUpdateActivity:A,onStartTimer:D},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(Xd,{key:0,activity:t.selectedActivity,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":(be=t.selectedActivity.milestone)==null?void 0:be.id,"template-activities":s.value,users: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:b.value,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":o.loadAttachmentPreview,sprints:t.activitySprints,onClose:le[7]||(le[7]=()=>d(null,null)),"onUpdate:activity":T,onAddSubtask:$,onUpdateSubtask:V,onDeleteSubtask:I,onAddFiles:H,onRemoveFile:P,onAddComment:j,onUpdateComment:Q,onRemoveComment:se,onToast:i,onCreateSprint:le[8]||(le[8]=me=>a("createSprint",me))},{default:r.withCtx(me=>[r.renderSlot(F.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(me)))]),_: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"])):r.createCommentVNode("",!0)]))])}}}),Y2e="",h$={class:"ao-project-mapping"},g$={class:"ao-project-mapping-mapping__body"},b$={class:"ao-project-mapping-mapping__phases"},_$={key:0,class:"ao-project-mapping-mapping__image-wrapper"},y$=["src","alt"],v$=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}=Dt(),o=t,a=e,i=()=>{const{name:b,rank:_}=ir(o.phases,"phase",n);a("addPhase",{name:b,rank:_,projectId:o.project.id})},s=()=>{const b=n("template.defaultName.phase",{idx:1}),_=ga(o.phases);a("addPhase",{name:b,rank:_,projectId:o.project.id})},l=b=>{a("updatePhase",b)},c=b=>{a("archivePhase",b)},d=b=>{a("unarchivePhase",b)},u=b=>{a("copyPhaseToTemplate",b)},p=r.ref(!1),f=r.ref(!1),m=(b,_)=>{a("applyTemplate",{templateId:b,projectId:_}),p.value=!1},h=(b,_)=>{var k;const C=(k=o.templates)==null?void 0:k.at(-1),w=C?et.LexoRank.parse(C.rank).genNext():et.LexoRank.middle();a("saveTemplate",{templateName:b,rank:w.format(),phaseIds:_}),f.value=!1},g=wt.useRouter(),y=r.ref("mapping"),v=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(y,b=>{b==="feed"?(g.push({name:Re.feed}),console.log("Navigating to feed...")):b==="dev"?(g.push({name:Re.dev}),console.log("Navigating to dev...")):b==="overview"?(g.push({name:Re.project}),console.log("Navigating to feed...")):b==="mapping"&&(g.push({name:Re.mapping}),console.log("Navigating to feed..."))}),(b,_)=>{var C;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-mapping-overview"},b.$attrs),[r.createElementVNode("div",h$,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createVNode(ii,{modelValue:y.value,"onUpdate:modelValue":_[0]||(_[0]=w=>y.value=w),tabs:v},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:b.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:_[1]||(_[1]=w=>b.$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:b.$t("project.phase.add"),onClick:s},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:b.$t("project.template.save.label"),onClick:_[2]||(_[2]=w=>f.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:b.$t("project.template.apply.label"),onClick:_[3]||(_[3]=w=>p.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",g$,[r.createElementVNode("div",b$,[r.createVNode(uu,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"estimation-unit":(C=t.project)==null?void 0:C.estimationUnit,onAddPhase:i,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",_$,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,y$)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[f.value?(r.openBlock(),r.createBlock(Ig,{key:0,phases:t.phases,onClose:_[4]||(_[4]=w=>f.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),p.value?(r.openBlock(),r.createBlock(Vg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=w=>p.value=!1),onApply:m},null,8,["project-id","templates"])):r.createCommentVNode("",!0)]))],64)}}}),J2e="",lr={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},C$=(t,e={})=>[{path:t,name:lr.TEMPLATES,redirect:{name:lr.TEMPLATES_LIST},...e,children:[{path:"",name:lr.TEMPLATES_LIST,component:Pg},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:lr.TEMPLATE_DETAILS,component:Bg,props:!0}]}],Re={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},cr={feed:"ActivityFeed",dev:"ActivityFeedDev"},k$=(t,e={})=>[{path:t,...e,redirect:{name:Re.project},children:[{path:"",name:Re.project,component:mD,props:!0,children:[{path:":phaseId/:milestoneId",name:Re.milestone,component:Rg,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Re.activity,props:{default:!0,modal:!0},components:{default:Rg,modal:oB}}]},{path:"feed",name:Re.feed,component:mu,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Re.dev,component:mu,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Re.mapping,component:v$,props:!0}]}],w$={class:"ao-templates"},Pg=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Dt(),o=t,a=e;r.watch(()=>o.templates,(d,u)=>{qn(d,u)});const i=()=>{var m,h;const d=(m=o.templates)==null?void 0:m.at(-1),u=d?et.LexoRank.parse(d.rank).genNext():et.LexoRank.middle(),p=((h=o.templates)==null?void 0:h.length)??0,f={name:n("template.defaultName.template",{idx:p+1}),rank:u.format()};a("addTemplate",f)},s=(d,u)=>{a("updateItem",{itemType:Ue.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{a("removeItem",{itemType:Ue.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=ha(d,o.templates??[]);a("updateItem",{itemType:Ue.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",w$,[r.createVNode(ba,null,{secondary:r.withCtx(()=>[r.createVNode(de,{label:d.$t("templates.new"),color:"primary","icon-name":"Add","icon-position":"start",onClick:i},null,8,["label"])]),_:1}),r.createVNode(r.unref(oo),{"model-value":t.templates,class:"ao-templates__list","item-key":"id",handle:".ao-card__drag",onChange:c},{item:r.withCtx(({element:p})=>{var f;return[r.createVNode(q5,{id:p.id,title:p.name,phases:p.phases,milestones:(f=p.phases)!=null&&f.length?r.unref(p5)(p.phases):0,activities:p.phases?r.unref(f5)(p.phases):0,"updated-at":p.updatedAt,"updated-by":p.updatedBy,onUpdateTitle:m=>s(p.id,m),onClick:m=>d.$router.push({name:r.unref(lr).TEMPLATE_DETAILS,params:{templateId:p.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"])]))}}),X2e="",x$={class:"ao-field__label"},Fg=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",x$,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),E$=["type","value","disabled","readonly"],S$=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,a=r.computed(()=>n.modelModifiers.lazy?"change":"input"),i=s=>{n.modelModifiers.number&&(s=Number(s)),o("update:modelValue",s)};return(s,l)=>(r.openBlock(),r.createBlock(Fg,{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(a.value)]:l[0]||(l[0]=c=>i(c.target.value))}),null,16,E$)]),_:1},8,["label"]))}}),A$={class:"ao-field"},T$={class:"ao-field__label"},N$=["checked","disabled"],zg=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",A$,[r.createElementVNode("span",T$,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 a;return e.$emit("update:modelValue",((a=o.target)==null?void 0:a.checked)??!1)})},null,40,N$)]))}}),D$={class:"ao-audit-config"},B$={key:0,class:"ao-audit-config__loading"},$$={key:1,class:"ao-audit-config__error"},M$={key:2,class:"ao-audit-config__empty"},L$={key:3,class:"ao-audit-config__table"},O$={class:"ao-audit-config__th ao-audit-config__th--table"},V$={class:"ao-audit-config__th ao-audit-config__th--audit"},I$={class:"ao-audit-config__th ao-audit-config__th--excluded"},R$={class:"ao-audit-config__td ao-audit-config__td--table"},P$={class:"ao-audit-config__table-name"},F$={key:0,class:"ao-audit-config__schema"},z$={class:"ao-audit-config__td ao-audit-config__td--audit"},q$={class:"ao-audit-config__checkbox"},j$={class:"ao-audit-config__td ao-audit-config__td--excluded"},U$={key:0,class:"ao-audit-config__disabled-note"},H$={class:"ao-audit-config__option"},W$=["title"],Z$={key:0,class:"ao-audit-config__all-tracked"},G$=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:a}=Dt(),i=r.computed(()=>n.tables);function s(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 p=Array.from(new Set(u??[]));o("update",{schemaName:d.schemaName,tableName:d.tableName,isEnabled:d.isEnabled,excludeColumns:p})}return(d,u)=>(r.openBlock(),r.createElementBlock("div",D$,[t.loading?(r.openBlock(),r.createElementBlock("div",B$,r.toDisplayString(r.unref(a)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",$$,r.toDisplayString(r.unref(a)("audit.error",{message:t.error})),1)):i.value.length?(r.openBlock(),r.createElementBlock("table",L$,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",O$,r.toDisplayString(r.unref(a)("audit.tableHeader")),1),r.createElementVNode("th",V$,r.toDisplayString(r.unref(a)("audit.auditHeader")),1),r.createElementVNode("th",I$,r.toDisplayString(r.unref(a)("audit.ignoredHeader")),1)])]),r.createElementVNode("tbody",null,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.value,p=>(r.openBlock(),r.createElementBlock("tr",{key:`${p.schemaName}.${p.tableName}`},[r.createElementVNode("td",R$,[r.createElementVNode("span",P$,r.toDisplayString(p.tableName),1),p.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",F$,r.toDisplayString(p.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",z$,[r.createElementVNode("div",q$,[r.createVNode(zg,{label:"","model-value":p.isEnabled,"is-disabled":t.disabled,"is-readonly":!1,"onUpdate:modelValue":f=>l(p,f)},null,8,["model-value","is-disabled","onUpdate:modelValue"])])]),r.createElementVNode("td",j$,[p.isEnabled?(r.openBlock(),r.createBlock(yt,{key:1,"model-value":p.excludeColumns,class:"ao-audit-config__multiselect",mode:"tags","value-prop":"value",label:"label","track-by":"label","close-on-select":!1,searchable:!0,options:s(p),disabled:t.disabled,caret:!t.disabled,"onUpdate:modelValue":f=>c(p,f)},{option:r.withCtx(({option:f})=>[r.createElementVNode("span",H$,[r.createTextVNode(r.toDisplayString(f.label)+" ",1),f.isPrimaryKey?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-audit-config__pk",title:r.unref(a)("audit.primaryKey")}," PK ",8,W$)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[p.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",Z$,r.toDisplayString(r.unref(a)("audit.allTracked")),1)):r.createCommentVNode("",!0)]),_:2},1032,["model-value","options","disabled","caret","onUpdate:modelValue"])):(r.openBlock(),r.createElementBlock("div",U$,r.toDisplayString(r.unref(a)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",M$,r.toDisplayString(r.unref(a)("audit.empty")),1))]))}}),Q2e="",K$={class:"ao-sprint-list"},Y$={class:"ao-sprint-list__header"},J$={class:"ao-sprint-list__title-group"},X$={class:"ao-sprint-list__count"},Q$={class:"ao-sprint-list__actions"},eM={key:0,class:"ao-sprint-list__toggle"},tM={key:0,class:"ao-sprint-list__row ao-sprint-list__row--editing"},nM=["title","onClick"],oM=["placeholder"],rM={class:"ao-sprint-list__date-fields"},aM={class:"ao-sprint-list__row-actions"},iM={class:"ao-sprint-list__rows"},sM={class:"ao-sprint-list__identity"},lM={class:"ao-sprint-list__name-group"},cM={class:"ao-sprint-list__name"},dM={key:0,class:"ao-sprint-list__archived-badge"},uM={class:"ao-sprint-list__dates"},pM={key:0,class:"ao-sprint-list__row-actions"},fM=["title","onClick"],mM={class:"ao-sprint-list__date-fields"},hM={class:"ao-sprint-list__row-actions"},gM={key:1,class:"ao-sprint-list__empty"},bM=r.defineComponent({__name:"AoSprintList",props:{sprints:{},isEditable:{type:Boolean}},emits:["updateSprint","archiveSprint","unarchiveSprint","createSprint"],setup(t,{emit:e}){const n=t,o=e,{t:a}=Dt(),i=r.ref(!1),s=r.computed(()=>i.value?n.sprints:n.sprints.filter(A=>A.active)),l=r.ref(null),c=r.ref({name:"",startDate:"",endDate:"",color:""}),d=r.ref(null),u=r.ref(null),p=A=>{l.value=A.id,c.value={name:A.name,startDate:A.startDate,endDate:A.endDate,color:A.color||""}},f=()=>{l.value=null,c.value={name:"",startDate:"",endDate:"",color:""}},m=A=>{o("updateSprint",{id:A,name:c.value.name||void 0,startDate:c.value.startDate||void 0,endDate:c.value.endDate||void 0,color:c.value.color||void 0}),f()},h=A=>{confirm(a("sprint.confirmArchive"))&&o("archiveSprint",{id:A})},g=A=>{o("unarchiveSprint",{id:A})},y=A=>vl(fr(A),"dd/MM/yy"),v=()=>n.sprints.reduce((E,x)=>{const D=x.name.match(/^Sprint\s*(\d+)$/);return D?Math.max(E,parseInt(D[1],10)):E},0)+1,b=r.ref(!1),_=r.ref({name:"",startDate:"",endDate:"",color:"#4f5cff"}),C=()=>{b.value=!0,l.value=null,_.value={name:`Sprint ${v()}`,startDate:"",endDate:"",color:"#4f5cff"}},w=()=>{b.value=!1,_.value={name:"",startDate:"",endDate:"",color:"#4f5cff"}},k=()=>{!_.value.name||!_.value.startDate||!_.value.endDate||(o("createSprint",{name:_.value.name,startDate:_.value.startDate,endDate:_.value.endDate,color:_.value.color||void 0}),w())},T=r.computed(()=>b.value?!!(_.value.name&&_.value.startDate&&_.value.endDate):l.value?!!(c.value.name&&c.value.startDate&&c.value.endDate):!1);return(A,E)=>(r.openBlock(),r.createElementBlock("section",K$,[r.createElementVNode("div",Y$,[r.createElementVNode("div",J$,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(a)("sprint.planning")),1),r.createElementVNode("span",X$,r.toDisplayString(s.value.length),1)]),r.createElementVNode("div",Q$,[t.sprints.some(x=>!x.active)?(r.openBlock(),r.createElementBlock("label",eM,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[0]||(E[0]=x=>i.value=x),type:"checkbox"},null,512),[[r.vModelCheckbox,i.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(a)("sprint.showArchived")),1)])):r.createCommentVNode("",!0),t.isEditable&&!b.value?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"solid",size:"sm","icon-name":"Add","icon-position":"start",label:r.unref(a)("sprint.add"),onClick:C},null,8,["label"])):r.createCommentVNode("",!0)])]),b.value?(r.openBlock(),r.createElementBlock("div",tM,[r.createVNode(Xr,{color:_.value.color,"onUpdate:color":E[1]||(E[1]=x=>_.value.color=x)},{clickable:r.withCtx(({openPicker:x,bgColor:D})=>[r.createElementVNode("button",{ref_key:"colorTriggerRef",ref:d,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:D}),title:r.unref(a)("sprint.color"),onClick:S=>x(S.currentTarget)},null,12,nM)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[2]||(E[2]=x=>_.value.name=x),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name",placeholder:r.unref(a)("sprint.name")},null,8,oM),[[r.vModelText,_.value.name]]),r.createElementVNode("div",rM,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[3]||(E[3]=x=>_.value.startDate=x),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.startDate]]),E[9]||(E[9]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[4]||(E[4]=x=>_.value.endDate=x),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.endDate]])]),r.createElementVNode("div",aM,[r.createVNode(de,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!T.value,title:r.unref(a)("common.save"),onClick:k},null,8,["disabled","title"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:r.unref(a)("common.cancel"),onClick:w},null,8,["title"])])])):r.createCommentVNode("",!0),r.createElementVNode("div",iM,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,x=>(r.openBlock(),r.createElementBlock("div",{key:x.id,class:r.normalizeClass(["ao-sprint-list__row",{"ao-sprint-list__row--archived":!x.active,"ao-sprint-list__row--editing":l.value===x.id}])},[l.value!==x.id?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",sM,[r.createElementVNode("span",{class:"ao-sprint-list__color-dot",style:r.normalizeStyle({backgroundColor:x.color||"var(--ao-color-primary-base)"})},null,4),r.createElementVNode("div",lM,[r.createElementVNode("span",cM,r.toDisplayString(x.name),1),x.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",dM,r.toDisplayString(r.unref(a)("sprint.archived")),1))])]),r.createElementVNode("div",uM,[r.createVNode(Ce,{name:"CalendarTodayOutlineRounded",size:"sm"}),r.createElementVNode("span",null,r.toDisplayString(y(x.startDate))+" – "+r.toDisplayString(y(x.endDate)),1)]),t.isEditable?(r.openBlock(),r.createElementBlock("div",pM,[r.createVNode(de,{color:"neutral",variant:"ghost",size:"md","icon-name":"EditOutline","icon-position":"start",title:r.unref(a)("common.edit"),onClick:D=>p(x)},null,8,["title","onClick"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"md",corners:"round","icon-position":"start","icon-name":(x.active,"ArchiveOutlineRounded"),label:x.active?r.unref(a)("sprint.archive"):r.unref(a)("sprint.unarchive"),onClick:D=>x.active?h(x.id):g(x.id)},null,8,["icon-name","label","onClick"])])):r.createCommentVNode("",!0)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createVNode(Xr,{color:c.value.color,"onUpdate:color":E[5]||(E[5]=D=>c.value.color=D)},{clickable:r.withCtx(({openPicker:D,bgColor:S})=>[r.createElementVNode("button",{ref_for:!0,ref_key:"colorTriggerEditRef",ref:u,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:S}),title:r.unref(a)("sprint.color"),onClick:B=>D(B.currentTarget)},null,12,fM)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[6]||(E[6]=D=>c.value.name=D),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name"},null,512),[[r.vModelText,c.value.name]]),r.createElementVNode("div",mM,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[7]||(E[7]=D=>c.value.startDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.startDate]]),E[10]||(E[10]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[8]||(E[8]=D=>c.value.endDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.endDate]])]),r.createElementVNode("div",hM,[r.createVNode(de,{color:"success",variant:"ghost",size:"md","icon-name":"CheckSmallRounded",disabled:!T.value,title:r.unref(a)("common.save"),onClick:D=>m(x.id)},null,8,["disabled","title","onClick"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"md","icon-name":"CloseRounded",title:r.unref(a)("common.cancel"),onClick:f},null,8,["title"])])],64))],2))),128))]),s.value.length===0&&!b.value?(r.openBlock(),r.createElementBlock("div",gM,r.toDisplayString(r.unref(a)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}}),ebe="",_M=te(bM,[["__scopeId","data-v-698944ea"]]);ge.AoAuditConfigTable=G$,ge.AoAvatar=In,ge.AoCardFeed=pu,ge.AoCheckboxField=zg,ge.AoColorPicker=Xr,ge.AoFeed=mu,ge.AoField=Fg,ge.AoInputField=S$,ge.AoMultiselect=yt,ge.AoProjectPhases=uu,ge.AoSprintList=_M,ge.AoTabBar=ii,ge.AoTemplateDetails=Bg,ge.AoTemplates=e0,ge.AoTemplatesList=Pg,ge.EstimationUnit=Su,ge.TemplateItemTypeEnum=Eu,ge.activityFeedRoutes=cr,ge.activityFeedStatus=Sv,ge.durationTypes=Ev,ge.feedFilterTypes=ro,ge.getProjectOverviewRoutes=k$,ge.getTemplateRoutes=C$,ge.listUpdateTypes=Av,ge.milestoneStatus=ra,ge.projectOverviewRoutes=Re,ge.ruleComparators=ku,ge.ruleDurationUnits=xu,ge.ruleTriggerTypes=wu,ge.templateItemType=Ue,ge.templateRouteNames=lr,Object.defineProperty(ge,Symbol.toStringTag,{value:"Module"})});
63
+ ...`),m=r.computed(()=>n.placeholder||f.value),h=r.computed(()=>i.value.trim().length>0&&u.value.valid&&u.value.data.length>0&&!n.isLoading),g=r.computed(()=>{const C=w=>w.reduce((k,T)=>k+1+C(T.children??[]),0);return C(u.value.data)});r.watch(()=>n.open,async C=>{var w;C&&(i.value="",await r.nextTick(),(w=s.value)==null||w.focus())},{immediate:!0});const y=()=>{n.isLoading||(o("update:open",!1),o("close"))},v=()=>{h.value&&o("submit",u.value.data)},b=C=>String(C===0?a("project.bulk.modal.noSpace"):C===1?a("project.bulk.modal.oneSpace"):a("project.bulk.modal.spaces",{count:C})),_=C=>String(a(c[C.code],C.params??{}));return(C,w)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper","ao-bulk-insert-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(y,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:y}),r.createElementVNode("div",uN,[r.createElementVNode("div",pN,[r.createElementVNode("div",fN,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:y})]),r.createElementVNode("header",mN,[r.createVNode(pt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",hN,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(v,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",gN,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:s,"onUpdate:modelValue":w[0]||(w[0]=k=>i.value=k),class:"ao-bulk-insert-modal__textarea",placeholder:m.value,disabled:t.isLoading,rows:"9",spellcheck:"false"},null,8,bN),[[r.vModelText,i.value]]),u.value.errors.length>0?(r.openBlock(),r.createElementBlock("div",_N,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u.value.errors,k=>(r.openBlock(),r.createElementBlock("p",{key:`${k.line}-${k.code}`,class:"ao-bulk-insert-modal__error"},r.toDisplayString(r.unref(a)("project.bulk.modal.lineError",{line:k.line,message:_(k)})),1))),128))])):i.value.trim().length>0?(r.openBlock(),r.createElementBlock("p",yN,r.toDisplayString(r.unref(a)("project.bulk.modal.count",{count:g.value})),1)):r.createCommentVNode("",!0),r.createElementVNode("div",vN,[r.createElementVNode("span",CN,r.toDisplayString(r.unref(a)("project.bulk.modal.indentation")),1),r.createElementVNode("div",kN,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(d.value.levels,(k,T)=>(r.openBlock(),r.createElementBlock("div",{key:k,class:"ao-bulk-insert-modal__help-row"},[r.createElementVNode("span",wN,r.toDisplayString(p(k)),1),r.createElementVNode("span",xN,r.toDisplayString(b(T)),1)]))),128))])]),r.createElementVNode("footer",EN,[r.createVNode(de,{color:"primary",variant:"ghost",label:r.unref(a)("common.cancel"),disabled:t.isLoading,onClick:y},null,8,["label","disabled"]),r.createVNode(de,{type:"submit",color:"primary",variant:"solid",label:r.unref(a)("common.create"),"is-loading":t.isLoading,disabled:!h.value},null,8,["label","is-loading","disabled"])])],32)])])],42,dN)):r.createCommentVNode("",!0)]))}}),I2e="";function du(t,e){return(t.children??[]).filter(n=>n.type===e)}function SN(t){return du(t,"task").map(e=>({name:e.name}))}function Lg(t,e=[]){const n=t.filter(a=>a.type==="activity"),o=wl(e,n.length);return n.map((a,i)=>{const s=SN(a);return{name:a.name,rank:o[i],...s.length?{tasks:s}:{}}})}function AN(t,e){return Lg(t,e)}function Og(t,e){const n=t.filter(a=>a.type==="milestone"),o=wl(e,n.length);return n.map((a,i)=>{const s=Lg(du(a,"activity"));return{name:a.name,rank:o[i],...s.length?{activities:s}:{}}})}function TN(t,e){const n=t.filter(a=>a.type==="phase"),o=wl(e,n.length);return n.map((a,i)=>{const s=Og(du(a,"milestone"),[]);return{name:a.name,rank:o[i],...s.length?{milestones:s}:{}}})}const NN={class:"ao-mapping-card-project-phase__header"},DN={class:"ao-card-project-item__title-line"},BN={key:0,class:"ao-card-project-item-phase__estimation"},$N={class:"ao-mapping-card-project-phase__footer"},MN={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},LN={class:"ao-mapping-card-project-phase__subitem"},ON={class:"ao-mapping-card-project-phase__subitem"},VN={key:0,class:"ao-mapping-card-project-phase__secondary"},IN={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},RN=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,a=g=>{o("update:title",g)},i=r.computed(()=>{var g;return((g=n.milestones)==null?void 0:g.reduce((y,v)=>{var b;return y+((b=v.activities)==null?void 0:b.reduce((_,C)=>_+(C.estimation||0),0))},0))||0}),s=r.computed(()=>!n.milestones||!n.timeTrackingData?0:n.milestones.reduce((g,y)=>{var v;return g+(((v=y.activities)==null?void 0:v.reduce((b,_)=>{var w;const C=(w=n.timeTrackingData)==null?void 0:w[_.id];return b+((C==null?void 0:C.timeSpent)||0)},0))||0)},0)),l=r.computed(()=>n.estimationUnit==="days"?"d":"h"),c=r.computed(()=>Ni(s.value,n.estimationUnit)),d=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.length}),u=r.computed(()=>{var g;return(g=n.milestones)==null?void 0:g.filter(y=>y.status===ra.done).length}),p=r.computed(()=>(u.value||0)/(d.value||1)),f=r.computed({get:()=>n.deadline??"",set:g=>o("update:deadline",g!=null&&g.length?g:null)}),m=r.computed({get:()=>n.color,set:g=>{o("updatePhase",{id:n.id,color:g})}}),h=(g,y)=>{const v=g.target;v.closest("button")||v.closest("input")||v.closest(".ao-title")||y()};return(g,y)=>(r.openBlock(),r.createBlock(Xr,{color:m.value,"onUpdate:color":y[2]||(y[2]=v=>m.value=v)},{clickable:r.withCtx(({openPicker:v,bgColor:b})=>[r.createVNode(rl,{class:"ao-mapping-card-project-phase","is-clickable":t.isEditable,color:b,"with-left-border":!0,onClick:_=>h(_,v)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",DN,[r.createVNode(pt,{id:t.id,class:"ao-mapping-card-project-phase__title",title:t.name||"",level:4,"is-editable":t.isEditable,"onUpdate:title":a},null,8,["id","title","is-editable"]),i.value||s.value?(r.openBlock(),r.createElementBlock("span",BN," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(i.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",$N,[d.value?(r.openBlock(),r.createElementBlock("div",MN,[r.createElementVNode("div",LN,[r.createVNode(Ce,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",ON,r.toDisplayString(u.value)+" / "+r.toDisplayString(d.value),1)]),r.createVNode(al,{percentages:p.value,class:"ao-mapping-card-project-phase__progress",color:m.value},null,8,["percentages","color"]),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",VN,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-mapping-card-project-phase__footer-row",f.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]=_=>f.value=_),class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,f.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",IN,r.toDisplayString(r.unref(Di)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",NN,[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?g.$t("archive"):g.$t("unarchive"),onClick:y[0]||(y[0]=r.withModifiers(()=>t.active?g.$emit("archivePhase",{id:t.id}):g.$emit("unarchivePhase",{id:t.id}),["stop"]))},null,8,["label"])])]),key:"0"}:void 0]),1032,["is-clickable","color","onClick"])]),_:3},8,["color"]))}}),R2e="",PN={class:"ao-project-phase"},FN={key:0,class:"ao-project-phase__drag ao-card__drag"},zN={key:1,class:"ao-project-phase__col-phase"},qN={key:2,class:"ao-mapping-project-phase__col-phase"},jN={key:0,class:"ao-project-phase__col-milestones"},UN=["title","onClick"],HN=["onClick"],WN=["onClick"],ZN={class:"ao-project-phase__milestones-list-footer"},GN=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}=Dt(),o=t,a=e;r.watch(()=>o.phase.milestones,(A,E)=>{qn(A,E)});const i=A=>{a("updatePhase",{id:o.phase.id,name:A})},s=A=>{a("updatePhase",{id:o.phase.id,deadline:A})},l=A=>{a("updatePhase",A)},c=r.computed(()=>o.phase.milestones.map(A=>g5(A,o.closedStatus))),d=A=>{const{name:E,rank:x}=ir(c.value??[],"milestone",n);a("addMilestone",{name:E,rank:x,phaseId:A})},u=A=>{const E=n("template.defaultName.milestone",{idx:1}),x=ga(c.value??[]);a("addMilestone",{name:E,rank:x,phaseId:A})},p=A=>{a("updateMilestone",A)},f=A=>{a("archiveMilestone",A)},m=A=>{a("unarchiveMilestone",A)},h=A=>{a("archivePhase",A)},g=A=>{a("unarchivePhase",A)},y=A=>{"added"in A?a("updateMilestone",{id:A.added.element.id,phaseId:o.phase.id,rank:hr(c.value,A.added.newIndex)}):"removed"in A||"moved"in A&&a("updateMilestone",{id:A.moved.element.id,rank:hr(c.value,A.moved.newIndex)})},v=r.ref(!1),b=r.ref(!1),_=A=>{b.value=!0;const E=Og(A,o.phase.milestones??[]);a("bulkAddMilestone",{phaseId:o.phase.id,milestones:E,onSuccess:()=>{b.value=!1,v.value=!1},onError:()=>{b.value=!1}})};r.watch(v,A=>{A&&(b.value=!1)});const C=wt.useRoute(),w=r.computed(()=>C.path.includes("/mapping")),k=r.computed(()=>{var A;return o.phase.id===((A=C.params)==null?void 0:A.phaseId)});r.ref(!1);const T=r.computed(()=>{var A;return o.phase.id!==((A=C.params)==null?void 0:A.phaseId)?{backgroundColor:"var(--ao-color-sheet)"}:o.phase.color?{backgroundColor:_5(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(A,E)=>(r.openBlock(),r.createElementBlock("li",PN,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",FN,[r.createVNode(Ce,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",qN,[r.createVNode(RN,{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":s,"onUpdate:title":i,onArchivePhase:h,onUnarchivePhase:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","estimation-unit"])])):(r.openBlock(),r.createElementBlock("div",zN,[r.createVNode(FT,{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":s,"onUpdate:title":i,onArchivePhase:h,onUnarchivePhase:g,onUpdatePhase:l},null,8,["id","milestones","name","deadline","active","is-editable","color","time-tracking-data","estimation-unit"])]))],4),w.value?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",jN,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createBlock(il,{key:0,class:r.normalizeClass(["ao-project-phase__milestone-quick-add",{"ao-project-phase__milestone-quick-add--visible":k.value}]),placement:"bottom-end"},{trigger:r.withCtx(({open:x})=>[r.createElementVNode("button",{type:"button",class:"ao-project-phase__milestone-quick-add-trigger",title:A.$t("project.milestone.add"),onClick:x},[r.createVNode(Ce,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,UN)]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),u(t.phase.id)}},r.toDisplayString(A.$t("project.bulk.menu.single")),9,HN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),v.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,WN)]),_:1},8,["class"])):r.createCommentVNode("",!0),r.createVNode(r.unref(oo),r.mergeProps({class:"ao-project-phase__milestones-list",list:c.value,disabled:t.readonly||!t.isEditable,"item-key":"id",group:"kanban"},A.$attrs,{onChange:y}),{item:r.withCtx(({element:x})=>{var D;return[r.createVNode(nN,{id:x.id,name:x.name,color:x.color,"phase-color":t.phase.color,activities:x.activities,deadline:x.deadline,active:x.active,"is-editable":!t.readonly&&t.isEditable,"is-draggable":!t.readonly&&t.isEditable,"closed-status":t.closedStatus,"is-selected":x.id===((D=A.$route.params)==null?void 0:D.milestoneId),assignee:x.assignee,important:x.important,readonly:t.readonly,"time-tracking-data":t.timeTrackingData,"estimation-unit":t.estimationUnit,class:r.normalizeClass(["ao-project-phase__milestone"]),onClick:S=>!t.readonly&&A.$router.push({name:r.unref(Re).milestone,params:{phaseId:t.phase.id,milestoneId:x.id}}),onUpdateMilestone:p,onArchiveMilestone:f,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",ZN,[t.isEditable?(r.openBlock(),r.createBlock(io,{key:0,label:A.$t("project.milestone.add"),"icon-name":"Add",class:"ao-project-phase__milestone-add",onClick:E[0]||(E[0]=x=>d(t.phase.id))},null,8,["label"])):r.createCommentVNode("",!0)])],4)])),v.value?(r.openBlock(),r.createBlock(cu,{key:1,open:v.value,"onUpdate:open":E[1]||(E[1]=x=>v.value=x),title:A.$t("project.bulk.modal.milestone.title"),"root-type":"milestone","is-loading":b.value,onSubmit:_},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))}}),P2e="",KN={class:"ao-project__phases"},YN={key:0,class:"ao-project-phase__phases-list-footer"},JN={class:"ao-project-phase__col-phase"},uu=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)=>{qn(m,h)});const a=m=>{o("addMilestone",m)},i=m=>{o("updateMilestone",m)},s=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=ha(m,n.phases??[]);o("updatePhase",{id:m.moved.element.id,rank:h})}},p=m=>{o("updatePhase",m)},f=m=>{o("addPhase",m)};return(m,h)=>(r.openBlock(),r.createElementBlock("div",KN,[r.createVNode(r.unref(oo),{class:"ao-project-phase__phases-list","model-value":t.phases,"item-key":"id",handle:".ao-card__drag",onChange:u},{item:r.withCtx(({element:g})=>[r.createVNode(GN,{phase:g,"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:a,onBulkAddMilestone:h[0]||(h[0]=y=>m.$emit("bulkAddMilestone",y)),onUpdateMilestone:i,onArchiveMilestone:s,onUnarchiveMilestone:l,onUpdatePhase:p,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",YN,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",JN,[r.createVNode(io,{label:m.$t("project.phases.add"),"icon-name":"Add",class:"ao-project-phase__add-phase",onClick:f},null,8,["label"])]),h[2]||(h[2]=r.createElementVNode("div",{class:"ao-project-phase__col-milestones"},null,-1))])):r.createCommentVNode("",!0)]))}}),F2e="",XN={class:"ao-add-template-modal__form-body"},QN={class:"field__row"},eD={class:"ao-add-template-modal__form-footer"},Vg=r.defineComponent({__name:"AoAddTemplateModal",props:{projectId:{},templates:{}},emits:["apply"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>n.templates.map(c=>({value:c.id,label:c.name}))),i=r.ref(null),s=c=>{i.value=c},l=()=>{i.value&&o("apply",i.value,n.projectId)};return(c,d)=>(r.openBlock(),r.createBlock(Bi,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(pt,{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",XN,[r.createElementVNode("div",QN,[r.createVNode(yt,{value:i.value,options:a.value,detached:!0,onChange:s},null,8,["value","options"])])]),r.createElementVNode("footer",eD,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}}),z2e="",tD={class:"ao-save-template-modal__form-body"},nD={class:"field__row"},oD={class:"ao-field ao-field--inline"},rD={class:"ao-field__label"},aD={class:"ao-save-template-modal__phases"},iD={class:"ao-field__label"},sD={class:"ao-save-template-modal__phases-list"},lD=["value"],cD={class:"ao-save-template-modal__form-footer"},Ig=r.defineComponent({__name:"AoSaveTemplateModal",props:{phases:{}},emits:["save"],setup(t,{emit:e}){const n=t,o=e,a=r.ref(""),i=r.ref([]);r.onMounted(()=>{i.value=n.phases.map(l=>l.id)});const s=()=>{a.value&&o("save",a.value,i.value)};return(l,c)=>(r.openBlock(),r.createBlock(Bi,{size:"sm"},{header:r.withCtx(()=>[r.createVNode(pt,{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(s,["prevent"])},[r.createElementVNode("div",tD,[r.createElementVNode("div",nD,[r.createElementVNode("label",oD,[r.createElementVNode("span",rD,r.toDisplayString(l.$t("project.template.name.label"))+": ",1),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":c[0]||(c[0]=d=>a.value=d),type:"text"},null,512),[[r.vModelText,a.value]])])]),r.createElementVNode("div",aD,[r.createElementVNode("div",iD,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",sD,[(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=>i.value=u),type:"checkbox",value:d.id},null,8,lD),[[r.vModelCheckbox,i.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",cD,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:s},null,8,["label"])])],32)]),_:1}))}}),q2e="",dD={class:"ao-project"},uD=["onClick"],pD=["onClick"],fD={class:"ao-project__body"},mD=r.defineComponent({__name:"AoProjectOverviewProject",props:{project:{},phases:{},closedStatus:{},users:{},userId:{},templates:{},isTaskCheckable:{type:Function},statuses:{},activityTypes:{},devStatuses:{},sprints:{},selectedActivity:{},isEditable:{type:[Boolean,String]},showsArchived:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function}},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"],setup(t,{emit:e}){const{t:n}=Dt(),o=t,a=e,i=r.computed(()=>o.phases.flatMap(R=>R.milestones)),s=()=>{const{name:R,rank:ie}=ir(o.phases,"phase",n);a("addPhase",{name:R,rank:ie,projectId:o.project.id})},l=()=>{const R=n("template.defaultName.phase",{idx:1}),ie=ga(o.phases);a("addPhase",{name:R,rank:ie,projectId:o.project.id})},c=R=>{a("updatePhase",R)},d=R=>{a("archivePhase",R)},u=R=>{a("unarchivePhase",R)},p=R=>{a("copyPhaseToTemplate",R)},f=R=>{a("addMilestone",R)},m=R=>{a("bulkAddMilestone",R)},h=R=>{a("updateMilestone",R)},g=R=>{a("archiveMilestone",R)},y=R=>{a("unarchiveMilestone",R)},v=R=>{a("addActivity",R)},b=R=>{a("bulkAddActivity",R)},_=R=>{a("update:activity",R)},C=R=>{a("archiveActivity",R)},w=R=>{a("unarchiveActivity",R)},k=R=>{a("addSubtask",R)},T=R=>{a("updateSubtask",R)},A=R=>{a("deleteSubtask",R)},E=r.computed(()=>i.value.flatMap(R=>R.activities)),x=r.computed(()=>o.devStatuses??[]),D=r.computed(()=>o.sprints??[]),S=R=>{a("addFiles",R)},B=R=>{a("removeFile",R)},$=R=>{a("addComment",R)},V=R=>{a("updateComment",R)},I=R=>{a("removeComment",R)},H=r.ref(!1),P=r.ref(!1),j=r.ref(!1),Q=r.ref(!1),se=(R,ie)=>{a("applyTemplate",{templateId:R,projectId:ie}),H.value=!1},ne=(R,ie)=>{var we;const Te=(we=o.templates)==null?void 0:we.at(-1),Ze=Te?et.LexoRank.parse(Te.rank).genNext():et.LexoRank.middle();a("saveTemplate",{templateName:R,rank:Ze.format(),phaseIds:ie}),P.value=!1},ve=R=>{Q.value=!0;const ie=TN(R,o.phases);a("bulkAddPhase",{projectId:o.project.id,phases:ie,onSuccess:()=>{Q.value=!1,j.value=!1},onError:()=>{Q.value=!1}})};r.watch(j,R=>{R&&(Q.value=!1)});const re=wt.useRouter(),ae=r.ref("overview"),q=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(ae,R=>{R==="feed"?(re.push({name:Re.feed}),console.log("Navigating to feed...")):R==="dev"?(re.push({name:Re.dev}),console.log("Navigating to dev...")):R==="overview"?(re.push({name:Re.project}),console.log("Navigating to feed...")):R==="mapping"&&(re.push({name:Re.mapping}),console.log("Navigating to feed..."))}),(R,ie)=>{var Ze;const Te=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",dD,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createVNode(ii,{modelValue:ae.value,"onUpdate:modelValue":ie[0]||(ie[0]=we=>ae.value=we),tabs:q},null,8,["modelValue"]),r.createVNode(de,{class:"ao-feed__show-archived",size:"sm","icon-name":t.showsArchived?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:ie[1]||(ie[1]=we=>R.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(il,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:we})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:we},null,8,["label","onClick"])]),menu:r.withCtx(({close:we})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{we(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,uD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{we(),j.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,pD)]),_:1})):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:1,class:"ao-project-overview__save-as-template",color:"primary",label:R.$t("project.template.save.label"),onClick:ie[2]||(ie[2]=we=>P.value=!0)},null,8,["label"])):r.createCommentVNode("",!0),t.isEditable===!0?(r.openBlock(),r.createBlock(de,{key:2,class:"ao-project-overview__add-template",color:"primary",label:R.$t("project.template.apply.label"),onClick:ie[3]||(ie[3]=we=>H.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",fD,[r.createVNode(uu,{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:f,onBulkAddMilestone:m,onUpdateMilestone:h,onArchiveMilestone:g,onUnarchiveMilestone:y,onAddPhase:s,onUpdatePhase:c,onArchivePhase:d,onUnarchivePhase:u,onCopyPhaseToTemplate:p},null,8,["phases","closed-status","is-editable","users","time-tracking-data","estimation-unit"])])]),r.createVNode(Te,{class:"ao-project__sidebar",phases:t.phases,"project-id":t.project.id,"project-name":t.project.name,users:t.users,"is-editable":t.isEditable===!0,"closed-status":t.closedStatus,"time-tracking-data":t.timeTrackingData,onClose:ie[4]||(ie[4]=we=>R.$router.push({name:r.unref(Re).project})),onUpdateMilestone:h,onAddActivity:v,onBulkAddActivity:b,onUpdateActivity:_,onArchiveActivity:C,onUnarchiveActivity:w},null,8,["phases","project-id","project-name","users","is-editable","closed-status","time-tracking-data"]),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[r.createVNode(Te,{name:"modal",activities:E.value,"is-task-checkable":t.isTaskCheckable,statuses:t.statuses,"activity-types":t.activityTypes,"dev-statuses":x.value,sprints:D.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,"onUpdate:activity":_,onAddSubtask:k,onUpdateSubtask:T,onDeleteSubtask:A,onAddFiles:S,onRemoveFile:B,onAddComment:$,onUpdateComment:V,onRemoveComment:I},{default:r.withCtx(({Component:we})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(we),null,{default:r.withCtx(F=>[r.renderSlot(R.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(F)))]),_: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"])]))],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[P.value?(r.openBlock(),r.createBlock(Ig,{key:0,phases:t.phases,onClose:ie[5]||(ie[5]=we=>P.value=!1),onSave:ne},null,8,["phases"])):r.createCommentVNode("",!0),H.value?(r.openBlock(),r.createBlock(Vg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:ie[6]||(ie[6]=we=>H.value=!1),onApply:se},null,8,["project-id","templates"])):r.createCommentVNode("",!0),j.value?(r.openBlock(),r.createBlock(cu,{key:2,open:j.value,"onUpdate:open":ie[7]||(ie[7]=we=>j.value=we),title:R.$t("project.bulk.modal.phase.title"),"root-type":"phase","is-loading":Q.value,onSubmit:ve},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)]))],64)}}}),j2e="",hD={class:"ao-card-feed__header"},gD={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},bD={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},_D={class:"ao-card-feed__body"},yD={key:0,class:"ao-card-feed__breadcrumbs"},vD={class:r.normalizeClass(["ao-card-feed__title-group"])},CD={class:"ao-card-feed__title-line"},kD={key:0,class:"ao-card-feed__slug"},wD={key:1,class:"ao-card-feed__deadline"},xD={class:"ao-card-feed__footer"},ED={class:"ao-card-feed__footer-row"},SD={class:"ao-assignees"},AD={key:0,class:"ao-assignee"},TD={key:0,class:"ao-card-feed__subitems"},ND={key:0,class:"ao-card-feed__subitem"},DD={class:"ao-card-feed__subitem"},BD={key:1,class:"ao-card-feed__subitem"},$D={class:"ao-card-feed__subitem"},MD={class:"ao-card-feed__timer-wrapper"},LD={class:"ao-card-feed__footer-row"},OD={key:0,class:"ao-card-feed__progress-wrapper"},VD={class:"ao-card-feed__subitem"},ID={class:"ao-card-feed__subitem"},pu=r.defineComponent({__name:"AoCardFeed",props:{id:{},name:{},projectName:{},projectId:{},projectColor:{},phaseName:{},milestoneName:{},milestoneColor:{},deadline:{},important:{type:Boolean},blocked:{type:Boolean},assignee:{},slug:{},comments:{},attachments:{},tasks:{},isEditable:{type:Boolean},isPrivate:{type:Boolean},isClosed:{type:Boolean},tagType:{}},emits:["removeAssignee","updateActivity","startTimer"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>n.tagType==="milestone"?n.milestoneName:n.projectName),i=r.computed(()=>n.tagType==="milestone"?n.milestoneColor:n.projectColor),s=g=>{o("updateActivity",{id:n.id,name:g})},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(()=>Di(n.deadline)),u=g=>{o("removeAssignee",g)},p=()=>{o("startTimer",{activityId:n.id,name:n.name,project:n.projectName,projectId:n.projectId,slug:n.slug})},f=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.length}),m=r.computed(()=>{var g;return(g=n.tasks)==null?void 0:g.filter(y=>y.isDone).length}),h=r.computed(()=>(m.value||0)/(f.value||1));return(g,y)=>(r.openBlock(),r.createBlock(rl,{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",hD,[a.value?(r.openBlock(),r.createBlock(oa,{key:0,label:a.value,class:"ao-card-feed__project",variant:"solid",color:t.projectColor?void 0:"primary","raw-color":i.value},null,8,["label","color","raw-color"])):r.createCommentVNode("",!0),t.isPrivate||t.important||t.isClosed||t.blocked?(r.openBlock(),r.createElementBlock("div",gD,[t.isPrivate?(r.openBlock(),r.createBlock(Ce,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.important?(r.openBlock(),r.createBlock(Ce,{key:1,name:"FlagRounded",class:"ao-card-feed__important",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(Ce,{key:2,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",bD,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",_D,[l.value?(r.openBlock(),r.createElementBlock("span",yD,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",vD,[r.createElementVNode("div",CD,[t.slug?(r.openBlock(),r.createElementBlock("span",kD,r.toDisplayString(t.slug)+": ",1)):r.createCommentVNode("",!0),r.createVNode(pt,{id:t.id,title:t.name,level:5,"is-editable":t.isEditable,class:"ao-card-feed__title-inline","onUpdate:title":s},null,8,["id","title","is-editable"])])]),t.deadline?(r.openBlock(),r.createElementBlock("span",wD,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",xD,[r.createElementVNode("div",ED,[r.createElementVNode("ul",SD,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(c.value,v=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:v.id},[v?(r.openBlock(),r.createElementBlock("li",AD,[r.createVNode(In,{"user-name":r.unref(Gu)(v),"avatar-url":v.avatarUrl,"is-closable":!0,onClose:()=>u(v.id)},null,8,["user-name","avatar-url","onClose"])])):r.createCommentVNode("",!0)],64))),128))]),t.comments||t.attachments?(r.openBlock(),r.createElementBlock("ul",TD,[t.comments?(r.openBlock(),r.createElementBlock("li",ND,[r.createVNode(Ce,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",DD,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",BD,[r.createVNode(Ce,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",$D,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",MD,[r.createVNode(Ce,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",LD,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",OD,[r.createElementVNode("div",VD,[r.createVNode(Ce,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",ID,r.toDisplayString(m.value)+" / "+r.toDisplayString(f.value),1)]),r.createVNode(al,{percentages:h.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}}),U2e="",RD={class:"ao-project-milestone"},PD={class:"ao-project-milestone__header"},FD={class:"ao-project-milestone__header_line"},zD={class:"ao-project-milestone__header_line"},qD={class:"ao-project-milestone__title"},jD={key:0,class:"ao-fieldset ao-milestone__fieldset"},UD={class:"ao-field__row ao-milestone__field-row"},HD={class:"ao-field ao-field--inline"},WD={class:"ao-field__row ao-milestone__field-row"},ZD={class:"ao-field ao-milestone__field-multiselect"},GD={class:"ao-milestone__color-actions"},KD=["onClick"],YD=["title","onClick"],JD=["onClick"],XD=["onClick"],QD={class:"ao-project-milestone__body"},eB={key:0,class:"ao-project-milestone__footer"},tB=["onClick"],nB=["onClick"],Rg=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}=Dt(),o=t,a=e,i=E=>{var x;a("startTimer",E),(x=window.parent)==null||x.postMessage({type:"startTimer",data:E},"*")},s=r.computed(()=>{var E;return(E=o.phases)==null?void 0:E.find(x=>x.id===o.phaseId)}),l=r.computed(()=>{var E;return(E=o.phases)==null?void 0:E.flatMap(x=>x.milestones)}),c=r.computed(()=>{var E;return(E=l.value)==null?void 0:E.find(x=>x.id===o.milestoneId)}),d=r.computed(()=>{var E;return(E=c.value)==null?void 0:E.activities});r.watch(d,(E,x)=>{qn(E,x)});const u=E=>{a("close",E)},p=()=>{const{name:E,rank:x}=ir(d.value??[],"activity",n);a("addActivity",{milestoneId:o.milestoneId,name:E,rank:x,projectId:o.projectId})},f=()=>{const E=n("template.defaultName.activity",{idx:1}),x=ga(d.value??[]);a("addActivity",{milestoneId:o.milestoneId,name:E,rank:x,projectId:o.projectId})},m=r.ref(!1),h=r.ref(!1),g=E=>{h.value=!0;const x=AN(E,d.value??[]);a("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:x,onSuccess:()=>{h.value=!1,m.value=!1},onError:()=>{h.value=!1}})};r.watch(m,E=>{E&&(h.value=!1)});const y=E=>{a("updateActivity",E)},v=E=>{d.value&&"moved"in E&&a("updateActivity",{id:E.moved.element.id,rank:hr(d.value,E.moved.newIndex)})},b=r.computed({get:()=>{var E;return(E=c.value)==null?void 0:E.color},set:E=>{c.value&&a("updateMilestone",{id:c.value.id,color:E})}}),_=r.computed({get:()=>{var E;return((E=c.value)==null?void 0:E.deadline)??""},set:E=>{c.value&&a("updateMilestone",{id:c.value.id,deadline:E!=null&&E.length?E:null})}}),C=E=>o.closedStatus?xl(E,o.closedStatus):!1,w=r.computed(()=>{var E;return((E=o.users)==null?void 0:E.map(x=>({label:`${x.firstName} ${x.lastName}`,value:x.id,avatar:x.avatarUrl})))||[]}),k=r.computed({get(){var E,x;return(x=(E=c.value)==null?void 0:E.assignee)!=null&&x.id?[c.value.assignee.id]:[]},set(E){a("updateMilestone",{id:o.milestoneId,assigneeId:E[0]??null})}}),T=r.computed({get(){var E;return((E=c.value)==null?void 0:E.important)??!1},set(E){a("updateMilestone",{id:o.milestoneId,important:E})}}),A=(E,x)=>{const D=E.currentTarget;D instanceof HTMLElement&&x(D)};return(E,x)=>{var D;return r.openBlock(),r.createElementBlock("div",RD,[r.createElementVNode("header",PD,[r.createElementVNode("div",FD,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:u})]),r.createElementVNode("div",zD,[r.createElementVNode("div",qD,[r.createVNode(pt,{title:((D=c.value)==null?void 0:D.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(Jd,{modelValue:T.value,"onUpdate:modelValue":x[0]||(x[0]=S=>T.value=S),modelModifiers:{lazy:!0},disabled:!t.isEditable,class:"ao-milestone__important",color:"danger",label:E.$t("activity.important.label"),"icon-name":"FlagRounded",variant:"ghost",size:"sm"},null,8,["modelValue","disabled","label"])])]),c.value?(r.openBlock(),r.createElementBlock("div",jD,[r.createElementVNode("div",UD,[r.createElementVNode("label",HD,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":x[1]||(x[1]=S=>_.value=S),class:"ao-milestone__field ao-milestone__date-field",type:"date"},null,512),[[r.vModelText,_.value,void 0,{lazy:!0}]])])]),r.createElementVNode("div",WD,[r.createElementVNode("label",ZD,[r.createVNode(yt,{modelValue:k.value,"onUpdate:modelValue":x[2]||(x[2]=S=>k.value=S),options:w.value,"close-on-select":!0,searchable:!0,max:1,class:"ao-milestone__field ao-milestone__multiselect",placeholder:E.$t("activity.filters.assignee.placeholder"),mode:"tags",disabled:!t.isEditable,caret:t.isEditable},{tag:r.withCtx(({option:S,handleTagRemove:B})=>[r.createVNode(In,{"user-name":S.label,"avatar-url":S.avatar,"is-closable":!0,onClose:$=>B(S,$)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",GD,[r.createVNode(Xr,{color:b.value,"onUpdate:color":x[3]||(x[3]=S=>b.value=S)},{clickable:r.withCtx(({openPicker:S,bgColor:B})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:B}),class:"color-button",onClick:$=>A($,S)},null,12,KD)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(il,{key:0,placement:"bottom-end"},{trigger:r.withCtx(({open:S})=>[r.createElementVNode("button",{type:"button",class:"ao-project-milestone__quick-add",title:E.$t("project.activity.add"),onClick:S},[r.createVNode(Ce,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,YD)]),menu:r.withCtx(({close:S})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),f()}},r.toDisplayString(E.$t("project.bulk.menu.single")),9,JD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,XD)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",QD,[r.createVNode(r.unref(oo),r.mergeProps({class:"ao-project-milestone__activities",list:d.value,disabled:!t.isEditable,"item-key":"id",group:"kanban"},E.$attrs,{onChange:v}),{item:r.withCtx(({element:S})=>{var B,$,V,I,H;return[r.createVNode(pu,{id:S.id,name:S.name||S.id,"project-id":t.projectId,"phase-name":(B=s.value)==null?void 0:B.name,"milestone-name":($=c.value)==null?void 0:$.name,"milestone-color":(V=c.value)==null?void 0:V.color,deadline:S.deadline,important:S.important,blocked:S.blocked,users:t.users,assignee:S.assignee,slug:S.slug,comments:(I=S.comments)==null?void 0:I.length,attachments:(H=S.attachments)==null?void 0:H.length,tasks:S.tasks,"is-editable":t.isEditable,"is-private":S.private,"is-closed":C(S),onClick:P=>E.$router.push({name:r.unref(Re).activity,params:{milestoneId:t.milestoneId,activityId:S.id}}),onUpdateActivity:y,onRemoveAssignee:()=>y({id:S.id,assigneeId:null}),onStartTimer:i},r.createSlots({_:2},[t.isEditable?{name:"secondary",fn:r.withCtx(()=>[t.isEditable&&S.active?(r.openBlock(),r.createBlock(de,{key:0,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:E.$t("archive"),onClick:r.withModifiers(()=>E.$emit("archiveActivity",{id:S.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),t.isEditable&&!S.active?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:E.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>E.$emit("unarchiveActivity",{id:S.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","important","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",eB,[r.createVNode(il,null,{trigger:r.withCtx(({open:S})=>[r.createVNode(io,{"icon-name":"Add",label:E.$t("project.activity.add"),onClick:S},null,8,["label","onClick"])]),menu:r.withCtx(({close:S})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),p()}},r.toDisplayString(E.$t("project.bulk.menu.single")),9,tB),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,nB)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(cu,{key:0,open:m.value,"onUpdate:open":x[4]||(x[4]=S=>m.value=S),title:E.$t("project.bulk.modal.activity.title"),"root-type":"activity","is-loading":h.value,onSubmit:g},null,8,["open","title","is-loading"])):r.createCommentVNode("",!0)])}}}),H2e="",oB=r.defineComponent({__name:"AoProjectOverviewActivityDetails",props:{phaseId:{},milestoneId:{},activityId:{},activityTypes:{},devStatuses:{},activities:{},selectedActivity:{},isTaskCheckable:{type:Function},statuses:{},phases:{},users:{},project:{},userId:{},isEditable:{type:Boolean},attachmentEnabled:{type:Boolean},timeTrackingData:{},loadAttachmentPreview:{type:Function},sprints:{}},emits:["update:activity","addSubtask","updateSubtask","deleteSubtask","addFiles","removeFile","addComment","updateComment","removeComment","createSprint"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>{var v;return(v=n.phases)==null?void 0:v.find(b=>b.id===n.phaseId)}),i=r.computed(()=>{var v;return(v=n.phases)==null?void 0:v.flatMap(b=>b.milestones)}),s=r.computed(()=>{var v;return(v=i.value)==null?void 0:v.find(b=>b.id===n.milestoneId)}),l=r.computed(()=>{var v;return n.selectedActivity??((v=n.activities)==null?void 0:v.find(b=>b.id===n.activityId))}),c=v=>{o("update:activity",v)},d=v=>{o("addSubtask",v)},u=v=>{o("updateSubtask",v)},p=v=>{o("deleteSubtask",v)},f=v=>{o("addFiles",v)},m=v=>{o("removeFile",v)},h=v=>{o("addComment",v)},g=v=>{o("updateComment",v)},y=v=>{o("removeComment",v)};return(v,b)=>{var _,C;return l.value?(r.openBlock(),r.createBlock(Xd,{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:`${(_=a.value)==null?void 0:_.name} / ${(C=s.value)==null?void 0:C.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,onClose:v.$router.back,"onUpdate:activity":c,onAddSubtask:d,onUpdateSubtask:u,onDeleteSubtask:p,onAddFiles:f,onRemoveFile:m,onAddComment:h,onUpdateComment:g,onRemoveComment:y,onCreateSprint:b[0]||(b[0]=w=>o("createSprint",w))},{default:r.withCtx(w=>[r.renderSlot(v.$slots,"default",r.normalizeProps(r.guardReactiveProps(w)))]),_:3},8,["activity","activity-types","dev-statuses","milestone-id","template-activities","users","user-id","is-task-checkable","statuses","breadcrumbs","is-editable","attachment-enabled","projects","time-tracking-data","load-attachment-preview","sprints","onClose"])):r.createCommentVNode("",!0)}}}),rB={class:"ao-col-header"},aB=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",rB,[r.createVNode(pt,{title:t.title,class:"ao-col-header__title",level:4},null,8,["title"]),t.items?(r.openBlock(),r.createBlock(oa,{key:0,label:t.items,class:"ao-col-header__items",variant:"solid",color:"primary"},null,8,["label"])):r.createCommentVNode("",!0)]))}}),W2e="";function iB(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function ll(t){return typeof t=="function"?t():r.unref(t)}const sB=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const lB=t=>t!=null,si=()=>{};function cB(t,e){function n(...o){return new Promise((a,i)=>{Promise.resolve(t(()=>e.apply(this,o),{fn:e,thisArg:this,args:o})).then(a).catch(i)})}return n}function dB(t,e={}){let n,o,a=si;const i=l=>{clearTimeout(l),a(),a=si};return l=>{const c=ll(t),d=ll(e.maxWait);return n&&i(n),c<=0||d!==void 0&&d<=0?(o&&(i(o),o=null),Promise.resolve(l())):new Promise((u,p)=>{a=e.rejectOnCancel?p:u,d&&!o&&(o=setTimeout(()=>{n&&i(n),o=null,u(l())},d)),n=setTimeout(()=>{o&&i(o),o=null,u(l())},c)})}}function uB(t,e=200,n={}){return cB(dB(e,n),t)}function fu(t){var e;const n=ll(t);return(e=n==null?void 0:n.$el)!=null?e:n}const pB=sB?window:void 0;function fB(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function mB(t){const e=fB();return r.computed(()=>(e.value,!!t()))}function hB(t,e,n={}){const{root:o,rootMargin:a="0px",threshold:i=.1,window:s=pB,immediate:l=!0}=n,c=mB(()=>s&&"IntersectionObserver"in s),d=r.computed(()=>{const h=ll(t);return(Array.isArray(h)?h:[h]).map(fu).filter(lB)});let u=si;const p=r.ref(l),f=c.value?r.watch(()=>[d.value,fu(o),p.value],([h,g])=>{if(u(),!p.value||!h.length)return;const y=new IntersectionObserver(e,{root:fu(g),rootMargin:a,threshold:i});h.forEach(v=>v&&y.observe(v)),u=()=>{y.disconnect(),u=si}},{immediate:l,flush:"post"}):si,m=()=>{u(),f(),p.value=!1};return iB(m),{isSupported:c,isActive:p,pause(){u(),p.value=!1},resume(){p.value=!0},stop:m}}const gB={class:r.normalizeClass(["ao-list-kanban"])},bB={class:"ao-list-kanban__header"},_B=["title"],yB={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},vB={key:1,class:"ao-list-kanban__end"},CB={key:0,class:"ao-list-kanban__no-more"},kB={key:1,class:"ao-list-kanban__divider"},wB={key:1,class:"ao-list-kanban__footer"},xB=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,a=r.ref(!1),i=r.ref(null);hB(i,([{isIntersecting:p}])=>{a.value=p}),r.watch(a,p=>{p&&n.hasMore&&!n.isLoading&&o("loadMore")});const s=p=>{var f;return n.isEditable===!0?!0:n.userId&&n.isEditable==="only-own"?n.userId===((f=p.assignee)==null?void 0:f.id):!1},l=p=>{o("selectActivity",p)},c=p=>{o("updateActivity",p)},d=p=>{if("added"in p){const f={id:p.added.element.id,rank:hr(n.list,p.added.newIndex)};n.isDevMode?f.statusDevId=n.status.id:f.statusId=n.status.id,o("updateActivity",f)}else"removed"in p||"moved"in p&&o("updateActivity",{id:p.moved.element.id,rank:hr(n.list,p.moved.newIndex)})},u=r.ref(!1);return(p,f)=>(r.openBlock(),r.createElementBlock("div",gB,[t.title||p.$slots.header?r.renderSlot(p.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",bB,[t.title?(r.openBlock(),r.createBlock(aB,{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:p.$t("feed.activity.add"),onClick:f[0]||(f[0]=h=>p.$emit("addAtBeginning"))},[r.createVNode(Ce,{name:"Add"})],8,_B)):r.createCommentVNode("",!0)])]},void 0,0):r.createCommentVNode("",!0),r.createVNode(r.unref(oo),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"},p.$attrs,{draggable:".ao-list-draggable",disabled:!t.isEditable,"component-data":{tag:"transition-group",name:"ao-list-kanban__transition"},onChange:d,onStart:f[2]||(f[2]=m=>u.value=!0),onEnd:f[3]||(f[3]=m=>u.value=!1)}),{item:r.withCtx(({element:m})=>{var h,g,y,v,b,_,C,w,k,T;return[r.createVNode(pu,{id:m.id,class:r.normalizeClass(s(m)?"ao-list-draggable":""),name:m.name,"project-name":(h=m.project)==null?void 0:h.name,"project-id":(g=m.project)==null?void 0:g.id,"project-color":(y=m.project)==null?void 0:y.color,"phase-name":(b=(v=m.milestone)==null?void 0:v.phase)==null?void 0:b.name,"milestone-name":(_=m.milestone)==null?void 0:_.name,"milestone-color":(C=m.milestone)==null?void 0:C.color,deadline:m.deadline,rules:((w=m.rules)==null?void 0:w.length)||0,tasks:m.tasks,description:m.description,important:m.important,blocked:m.blocked,type:m.type,comments:(k=m.comments)==null?void 0:k.length,attachments:(T=m.attachments)==null?void 0:T.length,users:t.users,assignee:m.assignee,slug:m.slug,"is-editable":s(m),"is-private":m.private,"tag-type":t.tagType,onUpdateActivity:[A=>s(m)&&c(A),()=>s(m)&&c],onClick:()=>l(m.id),onRemoveAssignee:()=>s(m)&&c({id:m.id,assigneeId:null}),onStartTimer:f[1]||(f[1]=A=>p.$emit("startTimer",A))},{secondary:r.withCtx(()=>[s(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:p.$t("feed.activity.archive"),onClick:r.withModifiers(()=>p.$emit("archiveActivity",{id:m.id}),["stop"])},null,8,["label","onClick"])):r.createCommentVNode("",!0),s(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:p.$t("feed.activity.unarchive"),onClick:r.withModifiers(()=>p.$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","important","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",yB,[r.createVNode(Ce,{name:"Loading"})])):t.hasMore?(r.openBlock(),r.createElementBlock("div",{key:2,ref_key:"scrollEnd",ref:i,class:"ao-list-kanban__end"},null,512)):(r.openBlock(),r.createElementBlock("div",vB,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",CB,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",kB)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),p.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",wB,[r.renderSlot(p.$slots,"footer",{},()=>[t.isEditable?(r.openBlock(),r.createBlock(io,{key:0,"icon-name":"AddBoxOutlineRounded",label:t.footerLabel,onClick:f[4]||(f[4]=m=>p.$emit("add"))},null,8,["label"])):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]))}}),Z2e="",EB={class:"ao-field ao-search-field"},SB=["value","placeholder"],AB=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,a=async l=>{const d=l.target.value;o("update:modelValue",d,l)},i=uB(a,n.delay),s=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",EB,[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(i)&&r.unref(i)(...d)),onKeypress:r.withKeys(a,["enter"])},null,40,SB),r.createVNode(Ce,{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:s},null,8,["class"])]))}}),G2e="",TB={class:"ao-sprint-metrics"},NB=["onClick"],DB={class:"ao-sprint-metrics__header-left"},BB={class:"ao-sprint-metrics__icon"},$B={class:"ao-sprint-metrics__title"},MB={class:"ao-sprint-metrics__dates"},LB={key:0,class:"ao-sprint-metrics__project"},OB={class:"ao-sprint-metrics__advancement"},VB={class:"ao-sprint-metrics__progress-bar"},IB={class:"ao-sprint-metrics__percent"},RB={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},PB={class:"ao-sprint-metrics__tooltip-row"},FB={class:"ao-sprint-metrics__tooltip-row"},zB={class:"ao-sprint-metrics__tooltip-row"},qB={class:"ao-sprint-metrics__tooltip-row"},jB={class:"ao-sprint-metrics__tooltip-row"},UB={class:"ao-sprint-metrics__tooltip-row"},HB={class:"ao-sprint-metrics__tooltip-row"},WB={class:"ao-sprint-metrics__content"},ZB={class:"ao-sprint-metrics__grid"},GB={class:"ao-sprint-metrics__item"},KB={class:"ao-sprint-metrics__label"},YB={class:"ao-sprint-metrics__value"},JB={key:0,class:"ao-sprint-metrics__tooltip"},XB={class:"ao-sprint-metrics__tooltip-title"},QB={class:"ao-sprint-metrics__item"},e$={class:"ao-sprint-metrics__label"},t$={class:"ao-sprint-metrics__value"},n$={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},o$={class:"ao-sprint-metrics__label"},r$={class:"ao-sprint-metrics__input-row"},a$=["value","placeholder","onInput"],i$={key:0,class:"ao-sprint-metrics__secondary"},s$={class:"ao-sprint-metrics__item"},l$={class:"ao-sprint-metrics__label"},c$={class:"ao-sprint-metrics__value"},d$=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]}},setup(t){const e=t,{t:n}=Dt(),o=["Ok for prod","Done"],a=r.ref(new Set),i=r.ref({}),s=x=>{a.value.has(x)?a.value.delete(x):a.value.add(x)},l=x=>e.projects.find(D=>D.id===x.projectId),c=x=>{var D;return((D=e.planningData[x])==null?void 0:D.plannedManDays)??0},d=x=>{var D;return((D=e.planningData[x])==null?void 0:D.remainingPlannedManDays)??0},u=x=>{var D;return((D=e.planningData[x])==null?void 0:D.users)??[]},p=x=>e.activities.filter(D=>{var S;return((S=D.sprint)==null?void 0:S.id)===x}).reduce((D,S)=>D+(S.estimation??0),0),f=x=>e.activities.filter(D=>{var B,$;if(((B=D.sprint)==null?void 0:B.id)!==x)return!1;const S=($=D.devStatus)==null?void 0:$.name;return S&&o.includes(S)}).reduce((D,S)=>D+(S.estimation??0),0),m=x=>{const D=c(x);return D<=0?0:p(x)/D},h=x=>i.value[x],g=(x,D)=>{const S=parseFloat(D);isNaN(S)||S<=0?delete i.value[x]:i.value[x]=S},y=x=>{const D=h(x);return D===void 0?0:c(x)*D},v=x=>{const D=y(x);return D<=0?null:p(x)/D},b=x=>{const D=v(x);return D===null?0:Math.round(D*100)},_=x=>{const D=p(x);if(D<=0)return 0;const S=f(x);return Math.round(S/D*100)},C=x=>{const D=p(x),S=f(x);return Math.max(0,D-S)},w=x=>{const D=d(x),S=m(x);return D*S},k=x=>{const D=w(x),S=C(x);return D<=0&&S>0?!1:D<S},T=x=>x.toFixed(1),A=x=>`${x.toFixed(2)} pts / MD`,E=(x,D)=>{const S=new Date(x),B=new Date(D),$={day:"numeric",month:"short"};return`${S.toLocaleDateString("en-UK",$)} – ${B.toLocaleDateString("en-UK",$)}`};return(x,D)=>(r.openBlock(),r.createElementBlock("div",TB,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,S=>{var B;return r.openBlock(),r.createElementBlock("div",{key:S.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:$=>s(S.id)},[r.createElementVNode("div",DB,[r.createElementVNode("span",BB,r.toDisplayString(a.value.has(S.id)?"▸":"▾"),1),r.createElementVNode("span",$B,r.toDisplayString(S.name),1),r.createElementVNode("span",MB," · "+r.toDisplayString(E(S.startDate,S.endDate)),1),!a.value.has(S.id)&&l(S)?(r.openBlock(),r.createElementBlock("span",LB," · "+r.toDisplayString((B=l(S))==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":k(S.id)}])},[r.createElementVNode("div",OB,[r.createElementVNode("div",VB,[r.createElementVNode("div",{class:r.normalizeClass(["ao-sprint-metrics__progress-fill",{"ao-sprint-metrics__progress-fill--behind":k(S.id)}]),style:r.normalizeStyle({width:_(S.id)+"%"})},null,6)]),r.createElementVNode("span",IB,r.toDisplayString(_(S.id))+"% ",1),r.createElementVNode("div",RB,[D[7]||(D[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",PB,[D[0]||(D[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(_(S.id))+"%",1)]),r.createElementVNode("span",FB,[D[1]||(D[1]=r.createElementVNode("span",null,"Completed",-1)),r.createElementVNode("span",null,r.toDisplayString(T(f(S.id)))+" / "+r.toDisplayString(T(p(S.id)))+" pts ",1)]),r.createElementVNode("span",zB,[D[2]||(D[2]=r.createElementVNode("span",null,"Remaining",-1)),r.createElementVNode("span",null,r.toDisplayString(T(C(S.id)))+" pts",1)]),D[8]||(D[8]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",qB,[D[3]||(D[3]=r.createElementVNode("span",null,"Remaining capacity",-1)),r.createElementVNode("span",null,r.toDisplayString(T(w(S.id)))+" pts",1)]),r.createElementVNode("span",jB,[D[4]||(D[4]=r.createElementVNode("span",null,"Remaining planning",-1)),r.createElementVNode("span",null,r.toDisplayString(T(d(S.id)))+" MD",1)]),r.createElementVNode("span",UB,[D[5]||(D[5]=r.createElementVNode("span",null,"Estimated velocity",-1)),r.createElementVNode("span",null,r.toDisplayString(A(m(S.id))),1)]),D[9]||(D[9]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-separator"},null,-1)),r.createElementVNode("span",HB,[D[6]||(D[6]=r.createElementVNode("span",null,"Status",-1)),r.createElementVNode("span",null,r.toDisplayString(k(S.id)?"Behind plan":"On track"),1)])])])],2)],8,NB),r.withDirectives(r.createElementVNode("div",WB,[r.createElementVNode("div",ZB,[r.createElementVNode("div",GB,[r.createElementVNode("div",KB,r.toDisplayString(r.unref(n)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",YB,[r.createElementVNode("span",{class:r.normalizeClass(["ao-sprint-metrics__man-days",{"ao-sprint-metrics__man-days--has-tooltip":u(S.id).length>0}])},[r.createTextVNode(r.toDisplayString(T(c(S.id)))+" MD ",1),u(S.id).length>0?(r.openBlock(),r.createElementBlock("span",JB,[r.createElementVNode("span",XB,r.toDisplayString(T(c(S.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u(S.id),$=>(r.openBlock(),r.createElementBlock("span",{key:$.userId,class:"ao-sprint-metrics__tooltip-row"},[r.createElementVNode("span",null,r.toDisplayString($.fullName),1),r.createElementVNode("span",null,r.toDisplayString(T($.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",QB,[r.createElementVNode("div",e$,r.toDisplayString(r.unref(n)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",t$,r.toDisplayString(T(p(S.id)))+" pts ",1)]),r.createElementVNode("div",n$,[r.createElementVNode("div",o$,r.toDisplayString(r.unref(n)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",r$,[r.createElementVNode("input",{type:"number",step:"0.1",min:"0",class:"ao-sprint-metrics__input",value:i.value[S.id]??"",placeholder:r.unref(n)("sprintMetrics.targetVelocityPlaceholder"),onInput:$=>g(S.id,$.target.value)},null,40,a$),D[10]||(D[10]=r.createElementVNode("span",{class:"ao-sprint-metrics__unit"},"pts / MD",-1))]),m(S.id)>0?(r.openBlock(),r.createElementBlock("div",i$,r.toDisplayString(r.unref(n)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(A(m(S.id))),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",s$,[r.createElementVNode("div",l$,r.toDisplayString(r.unref(n)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",c$,[v(S.id)!==null?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createTextVNode(r.toDisplayString(b(S.id))+"% · "+r.toDisplayString(T(p(S.id)))+" / "+r.toDisplayString(T(y(S.id)))+" pts ",1)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createTextVNode(" — ")],64))])])])],512),[[r.vShow,!a.value.has(S.id)]])])}),128))]))}}),K2e="",u$=te(d$,[["__scopeId","data-v-98b799f1"]]),p$={class:"ao-feed"},f$={class:"ao-feed__filters"},m$={class:"ao-feed__body"},mu=r.defineComponent({__name:"AoFeed",props:{activities:{},statuses:{},devStatuses:{default:()=>[]},project:{default:void 0},projects:{default:()=>[]},filters:{},activityTypes:{default:()=>[]},users:{},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:()=>[]},sprintPlanningData:{default:()=>({})}},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"],setup(t,{emit:e}){const{t:n}=Dt(),o=t,a=e;function i(F,le){a("toast",F,le)}const s=r.toRef(o,"activities"),l=r.computed(()=>o.feedMode==="dev"?o.devStatuses:o.statuses),c=r.computed(()=>o.feedMode==="dev"?s.value.filter(F=>F.activityType==="dev"):s.value),d=async(F,le)=>{await a("selectActivity",F,le)},u=r.ref({}),p=r.ref(!1),f=r.ref(!1),m=r.computed(()=>o.project?"milestone":"project");r.watch([()=>l.value,()=>c.value,()=>o.initialActivityId,()=>o.initialActivitySlug,()=>o.feedMode],async([F,le,be,me],[xe,qe])=>{const Me=o.feedMode==="dev"?"devStatus":"status";u.value=Object.fromEntries(F.map(De=>[De.id,le.filter(Pe=>{const Fe=Pe[Me];return(Fe==null?void 0:Fe.id)===De.id})])),be&&!p.value?(d(be,null),p.value=!0):me&&!p.value&&(d(null,me),p.value=!0),f.value&&qn(le,qe)},{immediate:!0});const h=r.computed(()=>{var F;return!o.selectedActivity||!o.selectedActivity.milestone?"":`${((F=o.selectedActivity.milestone.phase)==null?void 0:F.name)??""} / ${o.selectedActivity.milestone.name??""}`}),g=F=>{var De;const le=o.feedMode==="dev"?o.activities.filter(Pe=>Pe.activityType==="dev"):o.activities,be=le==null?void 0:le.at(-1),me=be?et.LexoRank.parse(be.rank).genNext():et.LexoRank.middle(),xe=((De=o.activities)==null?void 0:De.length)??0,qe=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:xe+1}),rank:me.format(),...qe?{statusDevId:F.id,type:"dev"}:{statusId:F.id}};if(o.filters.assigneeId.length>0&&(Me.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Me.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Pe=o.sprints.find(Fe=>Fe.id===o.filters.sprintId[0]);Pe&&(Me.sprintId=Pe.id,Me.projectId=Pe.projectId)}f.value=!0,a("addActivity",Me)},y=F=>{var De,Pe;const le=o.feedMode==="dev"?"devStatus":"status",be=((De=o.activities)==null?void 0:De.filter(Fe=>{const _t=Fe[le];return(_t==null?void 0:_t.id)===F.id}))??[],me=ga(be),xe=((Pe=o.activities)==null?void 0:Pe.length)??0,qe=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:xe+1}),rank:me,...qe?{statusDevId:F.id,type:"dev"}:{statusId:F.id}};if(o.filters.assigneeId.length>0&&(Me.assigneeId=o.filters.assigneeId[0]),o.filters.projectId.length>0&&(Me.projectId=o.filters.projectId[0]),o.filters.sprintId&&o.filters.sprintId.length===1){const Fe=o.sprints.find(_t=>_t.id===o.filters.sprintId[0]);Fe&&(Me.sprintId=Fe.id,Me.projectId=Fe.projectId)}f.value=!0,a("addActivity",Me)},v=(F,le)=>{f.value=!1,a("update:filters",{...o.filters,[F]:le})},b=r.computed(()=>o.project?[o.project]:o.projects??[]),_=r.computed(()=>b.value.map(F=>({value:F.id,label:F.name}))),C=r.computed(()=>o.sprints.map(F=>({value:F.id,label:`${F.name} · ${F.startDate} – ${F.endDate}`,startDate:F.startDate,endDate:F.endDate,projectId:F.projectId}))),w=r.computed(()=>{const F=o.filters[ro.sprint]??[];return o.sprints.filter(le=>F.includes(le.id))});r.computed(()=>{var F;return(F=o.activityTypes)==null?void 0:F.map(le=>({value:le.id,label:le.name}))});const k=r.computed(()=>o.users.map(F=>({value:F.id,label:`${F.firstName} ${F.lastName}`,avatar:F.avatarUrl}))),T=F=>{o.selectedActivity&&a("update:activity",F)},A=F=>{a("update:activity",F)},E=F=>{a("archiveActivity",F)},x=F=>{a("unarchiveActivity",F)},D=F=>{var le;a("startTimer",F),(le=window.parent)==null||le.postMessage({type:"startTimer",data:F},"*")},S=F=>{f.value=!1,a("update:searchText",F)},B=F=>{f.value=!1,a("clear:searchText",F)},$=F=>{o.selectedActivity&&a("addSubtask",F)},V=F=>{o.selectedActivity&&a("updateSubtask",F)},I=F=>{o.selectedActivity&&a("deleteSubtask",F)},H=F=>{a("addFiles",F)},P=F=>{a("removeFile",F)},j=F=>{o.selectedActivity&&a("addComment",{...F,activityId:o.selectedActivity.id})},Q=F=>{const{id:le}=o.selectedActivity||{};le&&a("updateComment",F)},se=F=>{const{id:le}=o.selectedActivity||{};le&&a("removeComment",F)},ne=wt.useRouter(),ve=wt.useRoute(),re=r.ref("feed");r.watch(()=>ve.name,F=>{F===cr.feed||F==="ActivityFeed"||F==="ActivityFeedWithActivity"?re.value="feed":F===cr.dev||F==="ActivityFeedDev"||F==="ActivityFeedDevWithActivity"?re.value="dev":F===Re.feed?re.value="feed":F===Re.dev?re.value="dev":F===Re.project?re.value="overview":F===Re.mapping&&(re.value="mapping")},{immediate:!0});const ae=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}],q=r.computed(()=>R.value?ae.filter(F=>F.value==="feed"||F.value==="dev"):ae),R=r.computed(()=>!o.project&&ve.name&&(ve.name===cr.feed||ve.name===cr.dev||ve.name==="ActivityFeed"||ve.name==="ActivityFeedDev"||ve.name==="ActivityFeedWithActivity"||ve.name==="ActivityFeedDevWithActivity")),ie=r.computed(()=>R.value?cr.feed:Re.feed),Te=r.computed(()=>R.value?cr.dev:Re.dev),Ze=r.computed(()=>Re.project),we=r.computed(()=>Re.mapping);return r.watch(re,F=>{F==="feed"?ne.push({name:ie.value}):F==="dev"?ne.push({name:Te.value}):F==="overview"?ne.push({name:Ze.value}):F==="mapping"&&ne.push({name:we.value})}),(F,le)=>{var be;return r.openBlock(),r.createElementBlock("div",p$,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createElementVNode("div",f$,[r.createVNode(ii,{modelValue:re.value,"onUpdate:modelValue":le[0]||(le[0]=me=>re.value=me),tabs:q.value},null,8,["modelValue","tabs"]),r.createVNode(AB,{"model-value":t.searchText,placeholder:F.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":S,onClear:B},null,8,["model-value","placeholder"]),o.project?r.createCommentVNode("",!0):(r.openBlock(),r.createBlock(yt,{key:0,"model-value":t.filters[r.unref(ro).project],mode:"tags",options:_.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__projects",placeholder:F.$t("feed.filters.project.placeholder"),"onUpdate:modelValue":le[1]||(le[1]=me=>v(r.unref(ro).project,me))},null,8,["model-value","options","placeholder"])),t.feedMode==="dev"?(r.openBlock(),r.createBlock(yt,{key:1,"model-value":t.filters[r.unref(ro).sprint],mode:"tags",options:C.value,"close-on-select":!1,searchable:!0,disabled:!C.value.length,class:"ao-feed__filter ao-feed__filter__sprints",placeholder:F.$t("feed.filters.sprint.placeholder"),"onUpdate:modelValue":le[2]||(le[2]=me=>v(r.unref(ro).sprint,me))},null,8,["model-value","options","disabled","placeholder"])):r.createCommentVNode("",!0),k.value.length?(r.openBlock(),r.createBlock(yt,{key:2,"model-value":t.filters[r.unref(ro).assignee],mode:"tags",options:k.value,"close-on-select":!1,searchable:!0,class:"ao-feed__filter ao-feed__filter__assignees",placeholder:F.$t("feed.filters.assignee.placeholder"),"onUpdate:modelValue":le[3]||(le[3]=me=>v(r.unref(ro).assignee,me))},{tag:r.withCtx(({option:me,handleTagRemove:xe})=>[r.createVNode(In,{"user-name":me.label,"avatar-url":me.avatar,"is-closable":!0,onClose:qe=>xe(me,qe)},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:F.$t("feed.filters.showsOnlyNonAssigned.label"),role:"checkbox","aria-checked":t.showsOnlyNonAssigned,onClick:le[4]||(le[4]=me=>F.$emit("update:showsOnlyNonAssigned",!t.showsOnlyNonAssigned))},null,8,["icon-name","label","aria-checked"]),r.createVNode(de,{class:"ao-feed__only-important",size:"sm","icon-name":t.showsOnlyImportant?"CheckBoxOutlineRounded":"CheckBoxOutlineBlank","icon-position":"start",color:"primary",variant:"ghost",label:F.$t("feed.filters.showsOnlyImportant.label"),role:"checkbox","aria-checked":t.showsOnlyImportant,onClick:le[5]||(le[5]=me=>F.$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:F.$t("feed.filters.showsArchivedActivities.label"),role:"checkbox","aria-checked":t.showsArchivedActivities,onClick:le[6]||(le[6]=me=>F.$emit("update:showsArchivedActivities",!t.showsArchivedActivities))},null,8,["icon-name","label","aria-checked"])]),_:1}),t.feedMode==="dev"&&w.value.length>0?(r.openBlock(),r.createBlock(u$,{key:0,sprints:w.value,activities:c.value,"planning-data":t.sprintPlanningData,projects:b.value},null,8,["sprints","activities","planning-data","projects"])):r.createCommentVNode("",!0),r.createElementVNode("div",m$,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,me=>(r.openBlock(),r.createBlock(xB,{key:me.id,status:me,list:u.value[me.id],title:me.name,"footer-label":F.$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:()=>g(me),onAddAtBeginning:()=>y(me),onSelectActivity:d,onArchiveActivity:E,onUnarchiveActivity:x,onUpdateActivity:A,onStartTimer:D},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(Xd,{key:0,activity:t.selectedActivity,"activity-types":t.activityTypes,"dev-statuses":t.devStatuses,"milestone-id":(be=t.selectedActivity.milestone)==null?void 0:be.id,"template-activities":s.value,users: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:b.value,"time-tracking-data":t.timeTrackingData,"load-attachment-preview":o.loadAttachmentPreview,sprints:t.activitySprints,onClose:le[7]||(le[7]=()=>d(null,null)),"onUpdate:activity":T,onAddSubtask:$,onUpdateSubtask:V,onDeleteSubtask:I,onAddFiles:H,onRemoveFile:P,onAddComment:j,onUpdateComment:Q,onRemoveComment:se,onToast:i,onCreateSprint:le[8]||(le[8]=me=>a("createSprint",me))},{default:r.withCtx(me=>[r.renderSlot(F.$slots,"activityDetailsBody",r.normalizeProps(r.guardReactiveProps(me)))]),_: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"])):r.createCommentVNode("",!0)]))])}}}),Y2e="",h$={class:"ao-project-mapping"},g$={class:"ao-project-mapping-mapping__body"},b$={class:"ao-project-mapping-mapping__phases"},_$={key:0,class:"ao-project-mapping-mapping__image-wrapper"},y$=["src","alt"],v$=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}=Dt(),o=t,a=e,i=()=>{const{name:b,rank:_}=ir(o.phases,"phase",n);a("addPhase",{name:b,rank:_,projectId:o.project.id})},s=()=>{const b=n("template.defaultName.phase",{idx:1}),_=ga(o.phases);a("addPhase",{name:b,rank:_,projectId:o.project.id})},l=b=>{a("updatePhase",b)},c=b=>{a("archivePhase",b)},d=b=>{a("unarchivePhase",b)},u=b=>{a("copyPhaseToTemplate",b)},p=r.ref(!1),f=r.ref(!1),m=(b,_)=>{a("applyTemplate",{templateId:b,projectId:_}),p.value=!1},h=(b,_)=>{var k;const C=(k=o.templates)==null?void 0:k.at(-1),w=C?et.LexoRank.parse(C.rank).genNext():et.LexoRank.middle();a("saveTemplate",{templateName:b,rank:w.format(),phaseIds:_}),f.value=!1},g=wt.useRouter(),y=r.ref("mapping"),v=[{label:"Overview",value:"overview"},{label:"Feed",value:"feed"},{label:"Dev",value:"dev"},{label:"Mapping",value:"mapping"}];return r.watch(y,b=>{b==="feed"?(g.push({name:Re.feed}),console.log("Navigating to feed...")):b==="dev"?(g.push({name:Re.dev}),console.log("Navigating to dev...")):b==="overview"?(g.push({name:Re.project}),console.log("Navigating to feed...")):b==="mapping"&&(g.push({name:Re.mapping}),console.log("Navigating to feed..."))}),(b,_)=>{var C;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("div",r.mergeProps({class:"ao-project-mapping-overview"},b.$attrs),[r.createElementVNode("div",h$,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createVNode(ii,{modelValue:y.value,"onUpdate:modelValue":_[0]||(_[0]=w=>y.value=w),tabs:v},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:b.$t("feed.filters.showsArchived.label"),role:"checkbox","aria-checked":t.showsArchived,onClick:_[1]||(_[1]=w=>b.$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:b.$t("project.phase.add"),onClick:s},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:b.$t("project.template.save.label"),onClick:_[2]||(_[2]=w=>f.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:b.$t("project.template.apply.label"),onClick:_[3]||(_[3]=w=>p.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",g$,[r.createElementVNode("div",b$,[r.createVNode(uu,{phases:t.phases,"closed-status":t.closedStatus,"is-editable":t.isEditable===!0,users:t.users,"estimation-unit":(C=t.project)==null?void 0:C.estimationUnit,onAddPhase:i,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",_$,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,y$)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[f.value?(r.openBlock(),r.createBlock(Ig,{key:0,phases:t.phases,onClose:_[4]||(_[4]=w=>f.value=!1),onSave:h},null,8,["phases"])):r.createCommentVNode("",!0),p.value?(r.openBlock(),r.createBlock(Vg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:_[5]||(_[5]=w=>p.value=!1),onApply:m},null,8,["project-id","templates"])):r.createCommentVNode("",!0)]))],64)}}}),J2e="",lr={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},C$=(t,e={})=>[{path:t,name:lr.TEMPLATES,redirect:{name:lr.TEMPLATES_LIST},...e,children:[{path:"",name:lr.TEMPLATES_LIST,component:Pg},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:lr.TEMPLATE_DETAILS,component:Bg,props:!0}]}],Re={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},cr={feed:"ActivityFeed",dev:"ActivityFeedDev"},k$=(t,e={})=>[{path:t,...e,redirect:{name:Re.project},children:[{path:"",name:Re.project,component:mD,props:!0,children:[{path:":phaseId/:milestoneId",name:Re.milestone,component:Rg,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Re.activity,props:{default:!0,modal:!0},components:{default:Rg,modal:oB}}]},{path:"feed",name:Re.feed,component:mu,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Re.dev,component:mu,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Re.mapping,component:v$,props:!0}]}],w$={class:"ao-templates"},Pg=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Dt(),o=t,a=e;r.watch(()=>o.templates,(d,u)=>{qn(d,u)});const i=()=>{var m,h;const d=(m=o.templates)==null?void 0:m.at(-1),u=d?et.LexoRank.parse(d.rank).genNext():et.LexoRank.middle(),p=((h=o.templates)==null?void 0:h.length)??0,f={name:n("template.defaultName.template",{idx:p+1}),rank:u.format()};a("addTemplate",f)},s=(d,u)=>{a("updateItem",{itemType:Ue.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{a("removeItem",{itemType:Ue.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=ha(d,o.templates??[]);a("updateItem",{itemType:Ue.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",w$,[r.createVNode(ba,null,{secondary:r.withCtx(()=>[r.createVNode(de,{label:d.$t("templates.new"),color:"primary","icon-name":"Add","icon-position":"start",onClick:i},null,8,["label"])]),_:1}),r.createVNode(r.unref(oo),{"model-value":t.templates,class:"ao-templates__list","item-key":"id",handle:".ao-card__drag",onChange:c},{item:r.withCtx(({element:p})=>{var f;return[r.createVNode(q5,{id:p.id,title:p.name,phases:p.phases,milestones:(f=p.phases)!=null&&f.length?r.unref(p5)(p.phases):0,activities:p.phases?r.unref(f5)(p.phases):0,"updated-at":p.updatedAt,"updated-by":p.updatedBy,onUpdateTitle:m=>s(p.id,m),onClick:m=>d.$router.push({name:r.unref(lr).TEMPLATE_DETAILS,params:{templateId:p.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"])]))}}),X2e="",x$={class:"ao-field__label"},Fg=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",x$,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),E$=["type","value","disabled","readonly"],S$=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,a=r.computed(()=>n.modelModifiers.lazy?"change":"input"),i=s=>{n.modelModifiers.number&&(s=Number(s)),o("update:modelValue",s)};return(s,l)=>(r.openBlock(),r.createBlock(Fg,{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(a.value)]:l[0]||(l[0]=c=>i(c.target.value))}),null,16,E$)]),_:1},8,["label"]))}}),A$={class:"ao-field"},T$={class:"ao-field__label"},N$=["checked","disabled"],zg=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",A$,[r.createElementVNode("span",T$,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 a;return e.$emit("update:modelValue",((a=o.target)==null?void 0:a.checked)??!1)})},null,40,N$)]))}}),D$={class:"ao-audit-config"},B$={key:0,class:"ao-audit-config__loading"},$$={key:1,class:"ao-audit-config__error"},M$={key:2,class:"ao-audit-config__empty"},L$={key:3,class:"ao-audit-config__table"},O$={class:"ao-audit-config__th ao-audit-config__th--table"},V$={class:"ao-audit-config__th ao-audit-config__th--audit"},I$={class:"ao-audit-config__th ao-audit-config__th--excluded"},R$={class:"ao-audit-config__td ao-audit-config__td--table"},P$={class:"ao-audit-config__table-name"},F$={key:0,class:"ao-audit-config__schema"},z$={class:"ao-audit-config__td ao-audit-config__td--audit"},q$={class:"ao-audit-config__checkbox"},j$={class:"ao-audit-config__td ao-audit-config__td--excluded"},U$={key:0,class:"ao-audit-config__disabled-note"},H$={class:"ao-audit-config__option"},W$=["title"],Z$={key:0,class:"ao-audit-config__all-tracked"},G$=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:a}=Dt(),i=r.computed(()=>n.tables);function s(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 p=Array.from(new Set(u??[]));o("update",{schemaName:d.schemaName,tableName:d.tableName,isEnabled:d.isEnabled,excludeColumns:p})}return(d,u)=>(r.openBlock(),r.createElementBlock("div",D$,[t.loading?(r.openBlock(),r.createElementBlock("div",B$,r.toDisplayString(r.unref(a)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",$$,r.toDisplayString(r.unref(a)("audit.error",{message:t.error})),1)):i.value.length?(r.openBlock(),r.createElementBlock("table",L$,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",O$,r.toDisplayString(r.unref(a)("audit.tableHeader")),1),r.createElementVNode("th",V$,r.toDisplayString(r.unref(a)("audit.auditHeader")),1),r.createElementVNode("th",I$,r.toDisplayString(r.unref(a)("audit.ignoredHeader")),1)])]),r.createElementVNode("tbody",null,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.value,p=>(r.openBlock(),r.createElementBlock("tr",{key:`${p.schemaName}.${p.tableName}`},[r.createElementVNode("td",R$,[r.createElementVNode("span",P$,r.toDisplayString(p.tableName),1),p.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",F$,r.toDisplayString(p.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",z$,[r.createElementVNode("div",q$,[r.createVNode(zg,{label:"","model-value":p.isEnabled,"is-disabled":t.disabled,"is-readonly":!1,"onUpdate:modelValue":f=>l(p,f)},null,8,["model-value","is-disabled","onUpdate:modelValue"])])]),r.createElementVNode("td",j$,[p.isEnabled?(r.openBlock(),r.createBlock(yt,{key:1,"model-value":p.excludeColumns,class:"ao-audit-config__multiselect",mode:"tags","value-prop":"value",label:"label","track-by":"label","close-on-select":!1,searchable:!0,options:s(p),disabled:t.disabled,caret:!t.disabled,"onUpdate:modelValue":f=>c(p,f)},{option:r.withCtx(({option:f})=>[r.createElementVNode("span",H$,[r.createTextVNode(r.toDisplayString(f.label)+" ",1),f.isPrimaryKey?(r.openBlock(),r.createElementBlock("span",{key:0,class:"ao-audit-config__pk",title:r.unref(a)("audit.primaryKey")}," PK ",8,W$)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[p.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",Z$,r.toDisplayString(r.unref(a)("audit.allTracked")),1)):r.createCommentVNode("",!0)]),_:2},1032,["model-value","options","disabled","caret","onUpdate:modelValue"])):(r.openBlock(),r.createElementBlock("div",U$,r.toDisplayString(r.unref(a)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",M$,r.toDisplayString(r.unref(a)("audit.empty")),1))]))}}),Q2e="",K$={class:"ao-sprint-list"},Y$={class:"ao-sprint-list__header"},J$={class:"ao-sprint-list__title-group"},X$={class:"ao-sprint-list__count"},Q$={class:"ao-sprint-list__actions"},eM={key:0,class:"ao-sprint-list__toggle"},tM={key:0,class:"ao-sprint-list__row ao-sprint-list__row--editing"},nM=["title","onClick"],oM=["placeholder"],rM={class:"ao-sprint-list__date-fields"},aM={class:"ao-sprint-list__row-actions"},iM={class:"ao-sprint-list__rows"},sM={class:"ao-sprint-list__identity"},lM={class:"ao-sprint-list__name-group"},cM={class:"ao-sprint-list__name"},dM={key:0,class:"ao-sprint-list__archived-badge"},uM={class:"ao-sprint-list__dates"},pM={key:0,class:"ao-sprint-list__row-actions"},fM=["title","onClick"],mM={class:"ao-sprint-list__date-fields"},hM={class:"ao-sprint-list__row-actions"},gM={key:1,class:"ao-sprint-list__empty"},bM=r.defineComponent({__name:"AoSprintList",props:{sprints:{},isEditable:{type:Boolean}},emits:["updateSprint","archiveSprint","unarchiveSprint","createSprint"],setup(t,{emit:e}){const n=t,o=e,{t:a}=Dt(),i=r.ref(!1),s=r.computed(()=>i.value?n.sprints:n.sprints.filter(A=>A.active)),l=r.ref(null),c=r.ref({name:"",startDate:"",endDate:"",color:""}),d=r.ref(null),u=r.ref(null),p=A=>{l.value=A.id,c.value={name:A.name,startDate:A.startDate,endDate:A.endDate,color:A.color||""}},f=()=>{l.value=null,c.value={name:"",startDate:"",endDate:"",color:""}},m=A=>{o("updateSprint",{id:A,name:c.value.name||void 0,startDate:c.value.startDate||void 0,endDate:c.value.endDate||void 0,color:c.value.color||void 0}),f()},h=A=>{confirm(a("sprint.confirmArchive"))&&o("archiveSprint",{id:A})},g=A=>{o("unarchiveSprint",{id:A})},y=A=>vl(fr(A),"dd/MM/yy"),v=()=>n.sprints.reduce((E,x)=>{const D=x.name.match(/^Sprint\s*(\d+)$/);return D?Math.max(E,parseInt(D[1],10)):E},0)+1,b=r.ref(!1),_=r.ref({name:"",startDate:"",endDate:"",color:"#4f5cff"}),C=()=>{b.value=!0,l.value=null,_.value={name:`Sprint ${v()}`,startDate:"",endDate:"",color:"#4f5cff"}},w=()=>{b.value=!1,_.value={name:"",startDate:"",endDate:"",color:"#4f5cff"}},k=()=>{!_.value.name||!_.value.startDate||!_.value.endDate||(o("createSprint",{name:_.value.name,startDate:_.value.startDate,endDate:_.value.endDate,color:_.value.color||void 0}),w())},T=r.computed(()=>b.value?!!(_.value.name&&_.value.startDate&&_.value.endDate):l.value?!!(c.value.name&&c.value.startDate&&c.value.endDate):!1);return(A,E)=>(r.openBlock(),r.createElementBlock("section",K$,[r.createElementVNode("div",Y$,[r.createElementVNode("div",J$,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(a)("sprint.planning")),1),r.createElementVNode("span",X$,r.toDisplayString(s.value.length),1)]),r.createElementVNode("div",Q$,[t.sprints.some(x=>!x.active)?(r.openBlock(),r.createElementBlock("label",eM,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[0]||(E[0]=x=>i.value=x),type:"checkbox"},null,512),[[r.vModelCheckbox,i.value]]),r.createTextVNode(" "+r.toDisplayString(r.unref(a)("sprint.showArchived")),1)])):r.createCommentVNode("",!0),t.isEditable&&!b.value?(r.openBlock(),r.createBlock(de,{key:1,color:"primary",variant:"solid",size:"sm","icon-name":"Add","icon-position":"start",label:r.unref(a)("sprint.add"),onClick:C},null,8,["label"])):r.createCommentVNode("",!0)])]),b.value?(r.openBlock(),r.createElementBlock("div",tM,[r.createVNode(Xr,{color:_.value.color,"onUpdate:color":E[1]||(E[1]=x=>_.value.color=x)},{clickable:r.withCtx(({openPicker:x,bgColor:D})=>[r.createElementVNode("button",{ref_key:"colorTriggerRef",ref:d,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:D}),title:r.unref(a)("sprint.color"),onClick:S=>x(S.currentTarget)},null,12,nM)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[2]||(E[2]=x=>_.value.name=x),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name",placeholder:r.unref(a)("sprint.name")},null,8,oM),[[r.vModelText,_.value.name]]),r.createElementVNode("div",rM,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[3]||(E[3]=x=>_.value.startDate=x),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.startDate]]),E[9]||(E[9]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[4]||(E[4]=x=>_.value.endDate=x),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,_.value.endDate]])]),r.createElementVNode("div",aM,[r.createVNode(de,{color:"success",variant:"ghost",size:"sm","icon-name":"CheckSmallRounded",disabled:!T.value,title:r.unref(a)("common.save"),onClick:k},null,8,["disabled","title"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"sm","icon-name":"CloseRounded",title:r.unref(a)("common.cancel"),onClick:w},null,8,["title"])])])):r.createCommentVNode("",!0),r.createElementVNode("div",iM,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(s.value,x=>(r.openBlock(),r.createElementBlock("div",{key:x.id,class:r.normalizeClass(["ao-sprint-list__row",{"ao-sprint-list__row--archived":!x.active,"ao-sprint-list__row--editing":l.value===x.id}])},[l.value!==x.id?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",sM,[r.createElementVNode("span",{class:"ao-sprint-list__color-dot",style:r.normalizeStyle({backgroundColor:x.color||"var(--ao-color-primary-base)"})},null,4),r.createElementVNode("div",lM,[r.createElementVNode("span",cM,r.toDisplayString(x.name),1),x.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",dM,r.toDisplayString(r.unref(a)("sprint.archived")),1))])]),r.createElementVNode("div",uM,[r.createVNode(Ce,{name:"CalendarTodayOutlineRounded",size:"sm"}),r.createElementVNode("span",null,r.toDisplayString(y(x.startDate))+" – "+r.toDisplayString(y(x.endDate)),1)]),t.isEditable?(r.openBlock(),r.createElementBlock("div",pM,[r.createVNode(de,{color:"neutral",variant:"ghost",size:"md","icon-name":"EditOutline","icon-position":"start",title:r.unref(a)("common.edit"),onClick:D=>p(x)},null,8,["title","onClick"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"md",corners:"round","icon-position":"start","icon-name":(x.active,"ArchiveOutlineRounded"),label:x.active?r.unref(a)("sprint.archive"):r.unref(a)("sprint.unarchive"),onClick:D=>x.active?h(x.id):g(x.id)},null,8,["icon-name","label","onClick"])])):r.createCommentVNode("",!0)],64)):(r.openBlock(),r.createElementBlock(r.Fragment,{key:1},[r.createVNode(Xr,{color:c.value.color,"onUpdate:color":E[5]||(E[5]=D=>c.value.color=D)},{clickable:r.withCtx(({openPicker:D,bgColor:S})=>[r.createElementVNode("button",{ref_for:!0,ref_key:"colorTriggerEditRef",ref:u,class:"ao-sprint-list__color-trigger",style:r.normalizeStyle({backgroundColor:S}),title:r.unref(a)("sprint.color"),onClick:B=>D(B.currentTarget)},null,12,fM)]),_:1},8,["color"]),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[6]||(E[6]=D=>c.value.name=D),type:"text",class:"ao-sprint-list__input ao-sprint-list__input--name"},null,512),[[r.vModelText,c.value.name]]),r.createElementVNode("div",mM,[r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[7]||(E[7]=D=>c.value.startDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.startDate]]),E[10]||(E[10]=r.createElementVNode("span",{class:"ao-sprint-list__date-separator"},"–",-1)),r.withDirectives(r.createElementVNode("input",{"onUpdate:modelValue":E[8]||(E[8]=D=>c.value.endDate=D),type:"date",class:"ao-sprint-list__input ao-sprint-list__input--date"},null,512),[[r.vModelText,c.value.endDate]])]),r.createElementVNode("div",hM,[r.createVNode(de,{color:"success",variant:"ghost",size:"md","icon-name":"CheckSmallRounded",disabled:!T.value,title:r.unref(a)("common.save"),onClick:D=>m(x.id)},null,8,["disabled","title","onClick"]),r.createVNode(de,{color:"neutral",variant:"ghost",size:"md","icon-name":"CloseRounded",title:r.unref(a)("common.cancel"),onClick:f},null,8,["title"])])],64))],2))),128))]),s.value.length===0&&!b.value?(r.openBlock(),r.createElementBlock("div",gM,r.toDisplayString(r.unref(a)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}}),ebe="",_M=te(bM,[["__scopeId","data-v-698944ea"]]);ge.AoAuditConfigTable=G$,ge.AoAvatar=In,ge.AoCardFeed=pu,ge.AoCheckboxField=zg,ge.AoColorPicker=Xr,ge.AoFeed=mu,ge.AoField=Fg,ge.AoInputField=S$,ge.AoMultiselect=yt,ge.AoProjectPhases=uu,ge.AoSprintList=_M,ge.AoTabBar=ii,ge.AoTemplateDetails=Bg,ge.AoTemplates=e0,ge.AoTemplatesList=Pg,ge.EstimationUnit=Su,ge.TemplateItemTypeEnum=Eu,ge.activityFeedRoutes=cr,ge.activityFeedStatus=Sv,ge.durationTypes=Ev,ge.feedFilterTypes=ro,ge.getProjectOverviewRoutes=k$,ge.getTemplateRoutes=C$,ge.listUpdateTypes=Av,ge.milestoneStatus=ra,ge.projectOverviewRoutes=Re,ge.ruleComparators=ku,ge.ruleDurationUnits=xu,ge.ruleTriggerTypes=wu,ge.templateItemType=Ue,ge.templateRouteNames=lr,Object.defineProperty(ge,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "type": "module",
5
5
  "license": "CC-BY-NC-ND-4.0",
6
6
  "author": "26lights <dev@26lights.com> (https://www.26lights.com)",
7
- "version": "0.42.184",
7
+ "version": "0.42.186",
8
8
  "workspaces": [
9
9
  "packages/*"
10
10
  ],