@26lights/orcha 0.42.172 → 0.42.173
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/orcha.umd.js
CHANGED
|
@@ -57,4 +57,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
57
57
|
* (c) 2023
|
|
58
58
|
* @license MIT
|
|
59
59
|
*/function sr(t){let e={r:0,g:0,b:0,a:1};/#/.test(t)?e=oT(t):/rgb/.test(t)?e=Ng(t):typeof t=="string"?e=Ng(`rgba(${t})`):Object.prototype.toString.call(t)==="[object Object]"&&(e=t);const{r:n,g:o,b:a,a:i}=e,{h:s,s:l,v:c}=rT(e);return{r:n,g:o,b:a,a:i===void 0?1:i,h:s,s:l,v:c}}function Xd(t){const e=document.createElement("canvas"),n=e.getContext("2d"),o=t*2;return e.width=o,e.height=o,n.fillStyle="#ffffff",n.fillRect(0,0,o,o),n.fillStyle="#ccd5db",n.fillRect(0,0,t,t),n.fillRect(t,t,t,t),e}function Qd(t,e,n,o,a,i){const s=t==="l",l=e.createLinearGradient(0,0,s?n:0,s?0:o);l.addColorStop(.01,a),l.addColorStop(.99,i),e.fillStyle=l,e.fillRect(0,0,n,o)}function nT({r:t,g:e,b:n},o){const a=s=>("0"+Number(s).toString(16)).slice(-2),i=`#${a(t)}${a(e)}${a(n)}`;return o?i.toUpperCase():i}function oT(t){t=t.slice(1);const e=n=>parseInt(n,16)||0;return{r:e(t.slice(0,2)),g:e(t.slice(2,4)),b:e(t.slice(4,6))}}function Ng(t){return typeof t=="string"?(t=(/rgba?\((.*?)\)/.exec(t)||["","0,0,0,1"])[1].split(","),{r:Number(t[0])||0,g:Number(t[1])||0,b:Number(t[2])||0,a:Number(t[3]?t[3]:1)}):t}function rT({r:t,g:e,b:n}){t=t/255,e=e/255,n=n/255;const o=Math.max(t,e,n),a=Math.min(t,e,n),i=o-a;let s=0;o===a?s=0:o===t?e>=n?s=60*(e-n)/i:s=60*(e-n)/i+360:o===e?s=60*(n-t)/i+120:o===n&&(s=60*(t-e)/i+240),s=Math.floor(s);let l=parseFloat((o===0?0:1-a/o).toFixed(2)),c=parseFloat(o.toFixed(2));return{h:s,s:l,v:c}}var eu=r.defineComponent({props:{color:{type:String,default:"#000000"},hsv:{type:Object,default:null},size:{type:Number,default:152}},emits:["selectSaturation"],data(){return{slideSaturationStyle:{}}},mounted(){this.renderColor(),this.renderSlide()},methods:{renderColor(){const t=this.$refs.canvasSaturation,e=this.size,n=t.getContext("2d");t.width=e,t.height=e,n.fillStyle=this.color,n.fillRect(0,0,e,e),Qd("l",n,e,e,"#FFFFFF","rgba(255,255,255,0)"),Qd("p",n,e,e,"rgba(0,0,0,0)","#000000")},renderSlide(){this.slideSaturationStyle={left:this.hsv.s*this.size-5+"px",top:(1-this.hsv.v)*this.size-5+"px"}},selectSaturation(t){const{top:e,left:n}=this.$el.getBoundingClientRect(),o=t.target.getContext("2d"),a=s=>{let l=s.clientX-n,c=s.clientY-e;l<0&&(l=0),c<0&&(c=0),l>this.size&&(l=this.size),c>this.size&&(c=this.size),this.slideSaturationStyle={left:l-5+"px",top:c-5+"px"};const d=o.getImageData(Math.min(l,this.size-1),Math.min(c,this.size-1),1,1),[u,p,f]=d.data;this.$emit("selectSaturation",{r:u,g:p,b:f})};a(t);const i=()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",i)};document.addEventListener("mousemove",a),document.addEventListener("mouseup",i)}}});const aT={ref:"canvasSaturation"};function iT(t,e,n,o,a,i){return r.openBlock(),r.createBlock("div",{class:"saturation",onMousedown:e[1]||(e[1]=r.withModifiers((...s)=>t.selectSaturation&&t.selectSaturation(...s),["prevent","stop"]))},[r.createVNode("canvas",aT,null,512),r.createVNode("div",{style:t.slideSaturationStyle,class:"slide"},null,4)],32)}eu.render=iT,eu.__file="src/color/Saturation.vue";var tu=r.defineComponent({props:{hsv:{type:Object,default:null},width:{type:Number,default:15},height:{type:Number,default:152}},emits:["selectHue"],data(){return{slideHueStyle:{}}},mounted(){this.renderColor(),this.renderSlide()},methods:{renderColor(){const t=this.$refs.canvasHue,e=this.width,n=this.height,o=t.getContext("2d");t.width=e,t.height=n;const a=o.createLinearGradient(0,0,0,n);a.addColorStop(0,"#FF0000"),a.addColorStop(.17*1,"#FF00FF"),a.addColorStop(.17*2,"#0000FF"),a.addColorStop(.17*3,"#00FFFF"),a.addColorStop(.17*4,"#00FF00"),a.addColorStop(.17*5,"#FFFF00"),a.addColorStop(1,"#FF0000"),o.fillStyle=a,o.fillRect(0,0,e,n)},renderSlide(){this.slideHueStyle={top:(1-this.hsv.h/360)*this.height-2+"px"}},selectHue(t){const{top:e}=this.$el.getBoundingClientRect(),n=t.target.getContext("2d"),o=i=>{let s=i.clientY-e;s<0&&(s=0),s>this.height&&(s=this.height),this.slideHueStyle={top:s-2+"px"};const l=n.getImageData(0,Math.min(s,this.height-1),1,1),[c,d,u]=l.data;this.$emit("selectHue",{r:c,g:d,b:u})};o(t);const a=()=>{document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",a)};document.addEventListener("mousemove",o),document.addEventListener("mouseup",a)}}});const sT={ref:"canvasHue"};function lT(t,e,n,o,a,i){return r.openBlock(),r.createBlock("div",{class:"hue",onMousedown:e[1]||(e[1]=r.withModifiers((...s)=>t.selectHue&&t.selectHue(...s),["prevent","stop"]))},[r.createVNode("canvas",sT,null,512),r.createVNode("div",{style:t.slideHueStyle,class:"slide"},null,4)],32)}tu.render=lT,tu.__file="src/color/Hue.vue";var nu=r.defineComponent({props:{color:{type:String,default:"#000000"},rgba:{type:Object,default:null},width:{type:Number,default:15},height:{type:Number,default:152}},emits:["selectAlpha"],data(){return{slideAlphaStyle:{},alphaSize:5}},watch:{color(){this.renderColor()},"rgba.a"(){this.renderSlide()}},mounted(){this.renderColor(),this.renderSlide()},methods:{renderColor(){const t=this.$refs.canvasAlpha,e=this.width,n=this.height,o=this.alphaSize,a=Xd(o),i=t.getContext("2d");t.width=e,t.height=n,i.fillStyle=i.createPattern(a,"repeat"),i.fillRect(0,0,e,n),Qd("p",i,e,n,"rgba(255,255,255,0)",this.color)},renderSlide(){this.slideAlphaStyle={top:this.rgba.a*this.height-2+"px"}},selectAlpha(t){const{top:e}=this.$el.getBoundingClientRect(),n=a=>{let i=a.clientY-e;i<0&&(i=0),i>this.height&&(i=this.height);let s=parseFloat((i/this.height).toFixed(2));this.$emit("selectAlpha",s)};n(t);const o=()=>{document.removeEventListener("mousemove",n),document.removeEventListener("mouseup",o)};document.addEventListener("mousemove",n),document.addEventListener("mouseup",o)}}});const cT={ref:"canvasAlpha"};function dT(t,e,n,o,a,i){return r.openBlock(),r.createBlock("div",{class:"color-alpha",onMousedown:e[1]||(e[1]=r.withModifiers((...s)=>t.selectAlpha&&t.selectAlpha(...s),["prevent","stop"]))},[r.createVNode("canvas",cT,null,512),r.createVNode("div",{style:t.slideAlphaStyle,class:"slide"},null,4)],32)}nu.render=dT,nu.__file="src/color/Alpha.vue";var ou=r.defineComponent({props:{color:{type:String,default:"#000000"},width:{type:Number,default:100},height:{type:Number,default:30}},data(){return{alphaSize:5}},watch:{color(){this.renderColor()}},mounted(){this.renderColor()},methods:{renderColor(){const t=this.$el,e=this.width,n=this.height,o=this.alphaSize,a=Xd(o),i=t.getContext("2d");t.width=e,t.height=n,i.fillStyle=i.createPattern(a,"repeat"),i.fillRect(0,0,e,n),i.fillStyle=this.color,i.fillRect(0,0,e,n)}}});function uT(t,e,n,o,a,i){return r.openBlock(),r.createBlock("canvas")}ou.render=uT,ou.__file="src/color/Preview.vue";var ru=r.defineComponent({props:{suckerCanvas:{type:Object,default:null},suckerArea:{type:Array,default:()=>[]}},data(){return{isOpenSucker:!1,suckerPreview:null,isSucking:!1}},watch:{suckerCanvas(t){this.isSucking=!1,this.suckColor(t)}},methods:{openSucker(){this.isOpenSucker?this.keydownHandler({keyCode:27}):(this.isOpenSucker=!0,this.isSucking=!0,this.$emit("openSucker",!0),document.addEventListener("keydown",this.keydownHandler))},keydownHandler(t){t.keyCode===27&&(this.isOpenSucker=!1,this.isSucking=!1,this.$emit("openSucker",!1),document.removeEventListener("keydown",this.keydownHandler),document.removeEventListener("mousemove",this.mousemoveHandler),document.removeEventListener("mouseup",this.mousemoveHandler),this.suckerPreview&&(document.body.removeChild(this.suckerPreview),this.suckerPreview=null))},mousemoveHandler(t){const{clientX:e,clientY:n}=t,{top:o,left:a,width:i,height:s}=this.suckerCanvas.getBoundingClientRect(),l=e-a,c=n-o,u=this.suckerCanvas.getContext("2d").getImageData(Math.min(l,i-1),Math.min(c,s-1),1,1);let[p,f,m,h]=u.data;h=parseFloat((h/255).toFixed(2));const g=this.suckerPreview.style;Object.assign(g,{position:"absolute",left:e+20+"px",top:n-36+"px",width:"24px",height:"24px",borderRadius:"50%",border:"2px solid #fff",boxShadow:"0 0 8px 0 rgba(0, 0, 0, 0.16)",background:`rgba(${p}, ${f}, ${m}, ${h})`,zIndex:95}),this.suckerArea.length&&e>=this.suckerArea[0]&&n>=this.suckerArea[1]&&e<=this.suckerArea[2]&&n<=this.suckerArea[3]?g.display="":g.display="none"},suckColor(t){t&&t.tagName!=="CANVAS"||(this.suckerPreview=document.createElement("div"),this.suckerPreview&&document.body.appendChild(this.suckerPreview),document.addEventListener("mousemove",this.mousemoveHandler),document.addEventListener("mouseup",this.mousemoveHandler),t.addEventListener("click",e=>{const{clientX:n,clientY:o}=e,{top:a,left:i,width:s,height:l}=t.getBoundingClientRect(),c=n-i,d=o-a,p=t.getContext("2d").getImageData(Math.min(c,s-1),Math.min(d,l-1),1,1);let[f,m,h,g]=p.data;g=parseFloat((g/255).toFixed(2)),this.$emit("selectSucker",{r:f,g:m,b:h,a:g})}))}}});const pT=r.createVNode("path",{d:"M13.1,8.2l5.6,5.6c0.4,0.4,0.5,1.1,0.1,1.5s-1.1,0.5-1.5,0.1c0,0-0.1,0-0.1-0.1l-1.4-1.4l-7.7,7.7C7.9,21.9,7.6,22,7.3,22H3.1C2.5,22,2,21.5,2,20.9l0,0v-4.2c0-0.3,0.1-0.6,0.3-0.8l5.8-5.8C8.5,9.7,9.2,9.6,9.7,10s0.5,1.1,0.1,1.5c0,0,0,0.1-0.1,0.1l-5.5,5.5v2.7h2.7l7.4-7.4L8.7,6.8c-0.5-0.4-0.5-1-0.1-1.5s1.1-0.5,1.5-0.1c0,0,0.1,0,0.1,0.1l1.4,1.4l3.5-3.5c1.6-1.6,4.1-1.6,5.8-0.1c1.6,1.6,1.6,4.1,0.1,5.8L20.9,9l-3.6,3.6c-0.4,0.4-1.1,0.5-1.5,0.1"},null,-1),fT={key:1,class:"sucker",viewBox:"-16 -16 68 68",xmlns:"http://www.w3.org/2000/svg",stroke:"#9099a4"},mT=r.createVNode("g",{fill:"none","fill-rule":"evenodd"},[r.createVNode("g",{transform:"translate(1 1)","stroke-width":"4"},[r.createVNode("circle",{"stroke-opacity":".5",cx:"18",cy:"18",r:"18"}),r.createVNode("path",{d:"M36 18c0-9.94-8.06-18-18-18"},[r.createVNode("animateTransform",{attributeName:"transform",type:"rotate",from:"0 18 18",to:"360 18 18",dur:"1s",repeatCount:"indefinite"})])])],-1);function hT(t,e,n,o,a,i){return r.openBlock(),r.createBlock("div",null,[t.isSucking?r.createCommentVNode("v-if",!0):(r.openBlock(),r.createBlock("svg",{key:0,class:[{active:t.isOpenSucker},"sucker"],xmlns:"http://www.w3.org/2000/svg",viewBox:"-12 -12 48 48",onClick:e[1]||(e[1]=(...s)=>t.openSucker&&t.openSucker(...s))},[pT],2)),t.isSucking?(r.openBlock(),r.createBlock("svg",fT,[mT])):r.createCommentVNode("v-if",!0)])}ru.render=hT,ru.__file="src/color/Sucker.vue";var au=r.defineComponent({props:{name:{type:String,default:""},color:{type:String,default:""}},emits:["inputColor","inputFocus","inputBlur"],setup(t,{emit:e}){return{modelColor:r.computed({get(){return t.color||""},set(i){e("inputColor",i)}}),handleFocus:i=>{e("inputFocus",i)},handleBlur:i=>{e("inputBlur",i)}}}});const gT={class:"color-type"},bT={class:"name"};function _T(t,e,n,o,a,i){return r.openBlock(),r.createBlock("div",gT,[r.createVNode("span",bT,r.toDisplayString(t.name),1),r.withDirectives(r.createVNode("input",{"onUpdate:modelValue":e[1]||(e[1]=s=>t.modelColor=s),class:"value",onFocus:e[2]||(e[2]=(...s)=>t.handleFocus&&t.handleFocus(...s)),onBlur:e[3]||(e[3]=(...s)=>t.handleBlur&&t.handleBlur(...s))},null,544),[[r.vModelText,t.modelColor]])])}au.render=_T,au.__file="src/color/Box.vue";var iu=r.defineComponent({name:"ColorPicker",props:{color:{type:String,default:"#000000"},colorsDefault:{type:Array,default:()=>[]},colorsHistoryKey:{type:String,default:""}},emits:["selectColor"],setup(t,{emit:e}){const n=r.ref(),o=r.ref([]),a=r.ref();t.colorsHistoryKey&&localStorage&&(o.value=JSON.parse(localStorage.getItem(t.colorsHistoryKey))||[]),a.value=Xd(4).toDataURL(),r.onUnmounted(()=>{i(n.value)});function i(l){if(!l)return;const c=o.value||[],d=c.indexOf(l);d>=0&&c.splice(d,1),c.length>=8&&(c.length=7),c.unshift(l),o.value=c||[],localStorage&&t.colorsHistoryKey&&localStorage.setItem(t.colorsHistoryKey,JSON.stringify(c))}function s(l){e("selectColor",l)}return{setColorsHistory:i,colorsHistory:o,color:n,imgAlphaBase64:a,selectColor:s}}});const yT={class:"colors"},vT={key:0,class:"colors history"};function CT(t,e,n,o,a,i){return r.openBlock(),r.createBlock("div",null,[r.createVNode("ul",yT,[(r.openBlock(!0),r.createBlock(r.Fragment,null,r.renderList(t.colorsDefault,s=>(r.openBlock(),r.createBlock("li",{key:s,class:"item",onClick:l=>t.selectColor(s)},[r.createVNode("div",{style:{background:`url(${t.imgAlphaBase64})`},class:"alpha"},null,4),r.createVNode("div",{style:{background:s},class:"color"},null,4)],8,["onClick"]))),128))]),t.colorsHistory.length?(r.openBlock(),r.createBlock("ul",vT,[(r.openBlock(!0),r.createBlock(r.Fragment,null,r.renderList(t.colorsHistory,s=>(r.openBlock(),r.createBlock("li",{key:s,class:"item",onClick:l=>t.selectColor(s)},[r.createVNode("div",{style:{background:`url(${t.imgAlphaBase64})`},class:"alpha"},null,4),r.createVNode("div",{style:{background:s},class:"color"},null,4)],8,["onClick"]))),128))])):r.createCommentVNode("v-if",!0)])}iu.render=CT,iu.__file="src/color/Colors.vue";var Jr=r.defineComponent({components:{Saturation:eu,Hue:tu,Alpha:nu,Preview:ou,Sucker:ru,Box:au,Colors:iu},emits:["changeColor","openSucker","inputFocus","inputBlur"],props:{color:{type:String,default:"#000000"},theme:{type:String,default:"dark"},suckerHide:{type:Boolean,default:!0},suckerCanvas:{type:null,default:null},suckerArea:{type:Array,default:()=>[]},colorsDefault:{type:Array,default:()=>["#000000","#FFFFFF","#FF1900","#F47365","#FFB243","#FFE623","#6EFF2A","#1BC7B1","#00BEFF","#2E81FF","#5D61FF","#FF89CF","#FC3CAD","#BF3DCE","#8E00A7","rgba(0,0,0,0)"]},colorsHistoryKey:{type:String,default:"vue-colorpicker-history"}},data(){return{hueWidth:15,hueHeight:152,previewHeight:30,modelRgba:"",modelHex:"",r:0,g:0,b:0,a:1,h:0,s:0,v:0}},computed:{isLightTheme(){return this.theme==="light"},totalWidth(){return this.hueHeight+(this.hueWidth+8)*2},previewWidth(){return this.totalWidth-(this.suckerHide?0:this.previewHeight)},rgba(){return{r:this.r,g:this.g,b:this.b,a:this.a}},hsv(){return{h:this.h,s:this.s,v:this.v}},rgbString(){return`rgb(${this.r}, ${this.g}, ${this.b})`},rgbaStringShort(){return`${this.r}, ${this.g}, ${this.b}, ${this.a}`},rgbaString(){return`rgba(${this.rgbaStringShort})`},hexString(){return nT(this.rgba,!0)}},created(){Object.assign(this,sr(this.color)),this.setText(),this.$watch("rgba",()=>{this.$emit("changeColor",{rgba:this.rgba,hsv:this.hsv,hex:this.modelHex})})},methods:{selectSaturation(t){const{r:e,g:n,b:o,h:a,s:i,v:s}=sr(t);Object.assign(this,{r:e,g:n,b:o,h:a,s:i,v:s}),this.setText()},handleFocus(t){this.$emit("inputFocus",t)},handleBlur(t){this.$emit("inputBlur",t)},selectHue(t){const{r:e,g:n,b:o,h:a,s:i,v:s}=sr(t);Object.assign(this,{r:e,g:n,b:o,h:a,s:i,v:s}),this.setText(),this.$nextTick(()=>{this.$refs.saturation.renderColor(),this.$refs.saturation.renderSlide()})},selectAlpha(t){this.a=t,this.setText()},inputHex(t){const{r:e,g:n,b:o,a,h:i,s,v:l}=sr(t);Object.assign(this,{r:e,g:n,b:o,a,h:i,s,v:l}),this.modelHex=t,this.modelRgba=this.rgbaStringShort,this.$nextTick(()=>{this.$refs.saturation.renderColor(),this.$refs.saturation.renderSlide(),this.$refs.hue.renderSlide()})},inputRgba(t){const{r:e,g:n,b:o,a,h:i,s,v:l}=sr(t);Object.assign(this,{r:e,g:n,b:o,a,h:i,s,v:l}),this.modelHex=this.hexString,this.modelRgba=t,this.$nextTick(()=>{this.$refs.saturation.renderColor(),this.$refs.saturation.renderSlide(),this.$refs.hue.renderSlide()})},setText(){this.modelHex=this.hexString,this.modelRgba=this.rgbaStringShort},openSucker(t){this.$emit("openSucker",t)},selectSucker(t){const{r:e,g:n,b:o,a,h:i,s,v:l}=sr(t);Object.assign(this,{r:e,g:n,b:o,a,h:i,s,v:l}),this.setText(),this.$nextTick(()=>{this.$refs.saturation.renderColor(),this.$refs.saturation.renderSlide(),this.$refs.hue.renderSlide()})},selectColor(t){const{r:e,g:n,b:o,a,h:i,s,v:l}=sr(t);Object.assign(this,{r:e,g:n,b:o,a,h:i,s,v:l}),this.setText(),this.$nextTick(()=>{this.$refs.saturation.renderColor(),this.$refs.saturation.renderSlide(),this.$refs.hue.renderSlide()})}}});const kT={class:"color-set"};function wT(t,e,n,o,a,i){const s=r.resolveComponent("Saturation"),l=r.resolveComponent("Hue"),c=r.resolveComponent("Alpha"),d=r.resolveComponent("Preview"),u=r.resolveComponent("Sucker"),p=r.resolveComponent("Box"),f=r.resolveComponent("Colors");return r.openBlock(),r.createBlock("div",{class:["hu-color-picker",{light:t.isLightTheme}],style:{width:t.totalWidth+"px"}},[r.createVNode("div",kT,[r.createVNode(s,{ref:"saturation",color:t.rgbString,hsv:t.hsv,size:t.hueHeight,onSelectSaturation:t.selectSaturation},null,8,["color","hsv","size","onSelectSaturation"]),r.createVNode(l,{ref:"hue",hsv:t.hsv,width:t.hueWidth,height:t.hueHeight,onSelectHue:t.selectHue},null,8,["hsv","width","height","onSelectHue"]),r.createVNode(c,{ref:"alpha",color:t.rgbString,rgba:t.rgba,width:t.hueWidth,height:t.hueHeight,onSelectAlpha:t.selectAlpha},null,8,["color","rgba","width","height","onSelectAlpha"])]),r.createVNode("div",{style:{height:t.previewHeight+"px"},class:"color-show"},[r.createVNode(d,{color:t.rgbaString,width:t.previewWidth,height:t.previewHeight},null,8,["color","width","height"]),t.suckerHide?r.createCommentVNode("v-if",!0):(r.openBlock(),r.createBlock(u,{key:0,"sucker-canvas":t.suckerCanvas,"sucker-area":t.suckerArea,onOpenSucker:t.openSucker,onSelectSucker:t.selectSucker},null,8,["sucker-canvas","sucker-area","onOpenSucker","onSelectSucker"]))],4),r.createVNode(p,{name:"HEX",color:t.modelHex,onInputColor:t.inputHex,onInputFocus:t.handleFocus,onInputBlur:t.handleBlur},null,8,["color","onInputColor","onInputFocus","onInputBlur"]),r.createVNode(p,{name:"RGBA",color:t.modelRgba,onInputColor:t.inputRgba,onInputFocus:t.handleFocus,onInputBlur:t.handleBlur},null,8,["color","onInputColor","onInputFocus","onInputBlur"]),r.createVNode(f,{color:t.rgbaString,"colors-default":t.colorsDefault,"colors-history-key":t.colorsHistoryKey,onSelectColor:t.selectColor},null,8,["color","colors-default","colors-history-key","onSelectColor"]),r.createCommentVNode(" custom options "),r.renderSlot(t.$slots,"default")],6)}Jr.render=wT,Jr.__file="src/color/ColorPicker.vue",Jr.install=t=>{t.component(Jr.name,Jr)};const p2e="",xT={class:"color-picker-wrapper"},Xr=r.defineComponent({__name:"AoColorPicker",props:{color:{}},emits:["update:color"],setup(t,{emit:e}){const n=t,o=e,a=r.ref(!1),i=r.ref(null),s=r.ref(null),l=r.ref(0),c=r.ref(0),d=async h=>{s.value=h,a.value=!0,await r.nextTick();const g=h.getBoundingClientRect(),y=i.value,v=(y==null?void 0:y.offsetHeight)||300,b=window.innerHeight-g.bottom,_=g.top,C=b<v&&_>v;console.log("pickerHeight = "+v),l.value=C?g.top-v-8:g.bottom+8,c.value=g.left,setTimeout(()=>{window.addEventListener("click",p)},0)},u=r.computed(()=>({position:"fixed",top:`${l.value}px`,left:`${c.value}px`,zIndex:1e3})),p=h=>{const g=h.target;i.value&&!i.value.contains(g)&&(a.value=!1,o("update:color",f.value),window.removeEventListener("click",p))};r.onBeforeUnmount(()=>{window.removeEventListener("click",p)}),r.watch(()=>n.color,h=>{a.value||(f.value=h)});const f=r.ref(n.color),m=h=>{const{r:g,g:y,b:v,a:b}=h.rgba;f.value=`rgba(${g}, ${y}, ${v}, ${b})`};return(h,g)=>(r.openBlock(),r.createElementBlock("div",xT,[r.renderSlot(h.$slots,"clickable",{openPicker:d,bgColor:t.color}),a.value?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"pickerRef",ref:i,class:"color-picker",style:r.normalizeStyle(u.value)},[r.createVNode(r.unref(Jr),{class:"color-picker-box",theme:"light",color:t.color,onChangeColor:m},null,8,["color"])],4)):r.createCommentVNode("",!0)]))}}),f2e="",ET={class:"ao-card-project-phase__header"},ST={class:"ao-card-project-item__title-line"},AT={key:0,class:"ao-card-project-item-phase__estimation"},TT={class:"ao-card-project-phase__footer"},NT={key:0,class:"ao-card-project-phase__footer-row ao-card-project-phase__footer-row--progress"},DT={class:"ao-card-project-phase__subitem"},$T={class:"ao-card-project-phase__subitem"},BT={key:0,class:"ao-card-project-phase__secondary"},MT={class:"ao-card-project-phase__deadline ao-card-project-phase__deadline--readonly"},LT=r.defineComponent({__name:"AoCardProjectItemPhase",props:{id:{},projectName:{},name:{},milestones:{},isEditable:{type:Boolean},deadline:{},active:{type:Boolean},color:{},timeTrackingData:{},estimationUnit:{}},emits:["update:title","update:deadline","archivePhase","unarchivePhase","updatePhase"],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(()=>Di(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(v)};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(al,{class:"ao-card-project-phase","is-clickable":t.isEditable,color:b,"with-left-border":!0,onClick:_=>h(_,v)},r.createSlots({default:r.withCtx(()=>[r.createElementVNode("div",ST,[r.createVNode(pt,{id:t.id,class:"ao-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",AT," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(i.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",TT,[d.value?(r.openBlock(),r.createElementBlock("div",NT,[r.createElementVNode("div",DT,[r.createVNode(ke,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",$T,r.toDisplayString(u.value)+" / "+r.toDisplayString(d.value),1)]),r.createVNode(il,{percentages:p.value,class:"ao-card-project-phase__progress",color:t.color},null,8,["percentages","color"]),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",BT,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",{class:r.normalizeClass(["ao-card-project-phase__footer-row",f.value?"":"ao-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-card-project-phase__deadline ao-card-project-phase__deadline--input",type:"date"},null,512)),[[r.vModelText,f.value,void 0,{lazy:!0}]]):r.createCommentVNode("",!0),r.createElementVNode("span",MT,r.toDisplayString(r.unref($i)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",ET,[r.createVNode(de,{class:"ao-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"]))}}),m2e="",OT=r.defineComponent({__name:"AoBadge",props:{color:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("span",{class:"aoBadge",style:r.normalizeStyle({backgroundColor:t.color})},null,4))}}),h2e="",VT={class:"ao-card-project-milestone__default"},IT={class:"ao-title-with-badge-wrapper"},RT={class:"ao-card-project-item__title-line"},PT={key:0,class:"ao-card-project-item-milestone__estimation"},FT={key:0,class:"ao-card-project-milestone__archive"},zT={class:"ao-card-project-milestone__activities"},qT={class:"ao-card-project-milestone__activities-row"},jT={class:"ao-card-project-milestone__subitem"},UT={class:"ao-card-project-milestone__subitem"},HT={key:1,class:"ao-card-project-milestone__secondary"},WT={class:"ao-card-project-milestone__footer"},ZT={key:1,class:"ao-field ao-card-project-milestone__deadline"},GT={class:"ao-field__label"},KT={key:2,class:"ao-card-project-milestone__assignee"},YT=r.defineComponent({__name:"AoCardProjectItemMilestone",props:{id:{},name:{},color:{},phaseColor:{},activities:{},closedStatus:{},isEditable:{type:Boolean},deadline:{},active:{type:Boolean},isSelected:{type:Boolean},assignee:{},important:{type:Boolean},readonly:{type:Boolean},timeTrackingData:{},estimationUnit:{}},emits:["updateMilestone","archiveMilestone","unarchiveMilestone"],setup(t,{emit:e}){const n=t,o=e,a=r.computed(()=>{var f;return((f=n.activities)==null?void 0:f.reduce((m,h)=>m+(h.estimation||0),0))||0}),i=r.computed(()=>!n.activities||!n.timeTrackingData?0:n.activities.reduce((f,m)=>{var g;const h=(g=n.timeTrackingData)==null?void 0:g[m.id];return f+((h==null?void 0:h.timeSpent)||0)},0)),s=r.computed(()=>n.estimationUnit==="days"?"d":"h"),l=r.computed(()=>Di(i.value,n.estimationUnit));r.computed(()=>{const f=i.value/60;return f%1===0?f.toString():f.toFixed(2)});const c=r.computed(()=>{var f;return(f=n.activities)==null?void 0:f.length}),d=r.computed(()=>{var f;return(f=n.activities)==null?void 0:f.filter(m=>wl(m,n.closedStatus)).length}),u=r.computed(()=>(d.value||0)/(c.value||1)),p=f=>{o("updateMilestone",{id:n.id,name:f})};return(f,m)=>(r.openBlock(),r.createBlock(al,{class:r.normalizeClass(["ao-card-project-milestone"]),"is-clickable":!t.readonly,"tag-name":"li","is-selected":t.isSelected,color:t.phaseColor},{default:r.withCtx(()=>[r.createElementVNode("div",VT,[r.createElementVNode("div",IT,[r.createVNode(OT,{color:t.color||""},null,8,["color"]),r.createElementVNode("div",RT,[r.createVNode(pt,{id:t.id,title:t.name||"",level:5,"is-editable":!t.readonly&&t.isEditable,class:"ao-card-project-milestone__title","onUpdate:title":p},null,8,["id","title","is-editable"]),a.value||i.value?(r.openBlock(),r.createElementBlock("span",PT," ("+r.toDisplayString(l.value)+"/"+r.toDisplayString(a.value)+r.toDisplayString(s.value)+")",1)):r.createCommentVNode("",!0)])]),!t.readonly&&t.isEditable?(r.openBlock(),r.createElementBlock("div",FT,[r.createVNode(de,{color:"primary",variant:"ghost","icon-name":"ArchiveOutlineRounded",size:"sm","icon-position":"start",corners:"round",label:t.active?f.$t("archive"):f.$t("unarchive"),onClick:m[0]||(m[0]=r.withModifiers(()=>t.active?f.$emit("archiveMilestone",{id:t.id}):f.$emit("unarchiveMilestone",{id:t.id}),["stop"]))},null,8,["label"])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",zT,[r.createElementVNode("div",qT,[c.value?(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[r.createElementVNode("div",jT,[r.createVNode(ke,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",UT,r.toDisplayString(d.value)+" / "+r.toDisplayString(c.value),1)]),r.createVNode(il,{percentages:u.value,color:t.phaseColor,class:"ao-card-project-milestone__progress"},null,8,["percentages","color"])],64)):r.createCommentVNode("",!0),f.$slots.secondary?(r.openBlock(),r.createElementBlock("div",HT,[r.renderSlot(f.$slots,"secondary")])):r.createCommentVNode("",!0)])])]),footer:r.withCtx(()=>[r.createElementVNode("div",WT,[t.important?(r.openBlock(),r.createBlock(ke,{key:0,name:"FlagRounded",class:r.normalizeClass(t.isSelected?"ao-card-project-milestone__important--selected":"ao-card-project-milestone__important"),size:"sm"},null,8,["class"])):r.createCommentVNode("",!0),t.deadline?(r.openBlock(),r.createElementBlock("label",ZT,[r.createElementVNode("span",GT,r.toDisplayString(r.unref($i)(t.deadline)),1)])):r.createCommentVNode("",!0),t.assignee?(r.openBlock(),r.createElementBlock("div",KT,[r.createVNode(In,{"user-name":r.unref(Hu)(t.assignee),"avatar-url":t.assignee.avatarUrl,color:t.isSelected?"black":"primary",size:"sm"},null,8,["user-name","avatar-url","color"])])):r.createCommentVNode("",!0)])]),_:3},8,["is-clickable","is-selected","color"]))}}),g2e="",JT=["onKeydown"],si=r.defineComponent({__name:"AoPopoverMenu",props:{placement:{default:"bottom-start"}},emits:["open","close"],setup(t,{expose:e,emit:n}){const o=t,a=n,i=r.ref(!1),s=r.ref(null),l=r.ref(null),c=r.ref(null),d=()=>{const v=s.value;if(!v)return;const b=v.getBoundingClientRect();c.value={top:b.top,left:b.left,width:b.width,height:b.height}},u=r.computed(()=>{const v=c.value;if(!v)return{};const b=v.top+v.height+window.scrollY+4;return o.placement==="bottom-end"?{position:"absolute",top:`${b}px`,left:"auto",right:`${Math.max(0,window.innerWidth-(v.left+v.width+window.scrollX))}px`,zIndex:200}:{position:"absolute",top:`${b}px`,left:`${v.left+window.scrollX}px`,zIndex:200}}),p=async()=>{if(i.value)return;d(),i.value=!0,a("open"),await r.nextTick();const v=l.value;if(v){const b=v.querySelector('button, [href], [tabindex]:not([tabindex="-1"])');b==null||b.focus()}},f=()=>{i.value&&(i.value=!1,a("close"))},m=()=>{i.value?f():p()},h=v=>{var _,C;if(!i.value)return;const b=v.target;b&&((_=s.value)!=null&&_.contains(b)||(C=l.value)!=null&&C.contains(b)||f())},g=v=>{i.value&&v.key==="Escape"&&(v.preventDefault(),f())},y=()=>{i.value&&d()};return r.watch(i,v=>{v?(document.addEventListener("mousedown",h,!0),document.addEventListener("keydown",g,!0),window.addEventListener("resize",y),window.addEventListener("scroll",y,!0)):(document.removeEventListener("mousedown",h,!0),document.removeEventListener("keydown",g,!0),window.removeEventListener("resize",y),window.removeEventListener("scroll",y,!0))}),r.onBeforeUnmount(()=>{document.removeEventListener("mousedown",h,!0),document.removeEventListener("keydown",g,!0),window.removeEventListener("resize",y),window.removeEventListener("scroll",y,!0)}),e({open:p,close:f,toggle:m}),(v,b)=>(r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("span",{ref_key:"triggerRef",ref:s,class:"ao-popover-menu"},[r.renderSlot(v.$slots,"trigger",{open:p,toggle:m})],512),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[i.value?(r.openBlock(),r.createElementBlock("div",{key:0,ref_key:"menuRef",ref:l,class:"ao-popover-menu__menu",style:r.normalizeStyle(u.value),role:"menu",onKeydown:r.withKeys(r.withModifiers(f,["stop"]),["esc"])},[r.renderSlot(v.$slots,"menu",{close:f})],44,JT)):r.createCommentVNode("",!0)]))],64))}}),b2e="",XT=["onKeydown"],QT={class:"ao-modal"},eN={class:"ao-modal__header"},tN={class:"ao-modal__header-meta"},nN={class:"ao-modal__title-group"},oN={class:"ao-modal__body"},rN={key:0,class:"ao-bulk-insert-modal__hint"},aN=["placeholder","disabled"],iN={key:1,class:"ao-bulk-insert-modal__count"},sN={class:"ao-bulk-insert-modal__footer"},su=r.defineComponent({__name:"AoBulkInsertModal",props:{open:{type:Boolean},title:{},hint:{default:""},placeholder:{default:""},isLoading:{type:Boolean,default:!1},size:{default:"md"}},emits:["update:open","submit","close"],setup(t,{expose:e,emit:n}){const o=t,a=n,i=r.ref(""),s=r.ref(null),l=r.computed(()=>i.value.split(`
|
|
60
|
-
`).map(p=>p.trim()).filter(p=>p.length>0)),c=r.computed(()=>l.value.length>0&&!o.isLoading);r.watch(()=>o.open,async p=>{var f;p&&(i.value="",await r.nextTick(),(f=s.value)==null||f.focus())},{immediate:!0});const d=()=>{o.isLoading||(a("update:open",!1),a("close"))},u=()=>{c.value&&a("submit",l.value)};return e({parsedNames:l}),(p,f)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(d,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:d}),r.createElementVNode("div",QT,[r.createElementVNode("div",eN,[r.createElementVNode("div",tN,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:d})]),r.createElementVNode("header",nN,[r.createVNode(pt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",oN,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(u,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",rN,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:s,"onUpdate:modelValue":f[0]||(f[0]=m=>i.value=m),class:"ao-bulk-insert-modal__textarea",placeholder:t.placeholder,rows:"10",disabled:t.isLoading},null,8,aN),[[r.vModelText,i.value]]),l.value.length>0?(r.openBlock(),r.createElementBlock("p",iN,r.toDisplayString(l.value.length)+" "+r.toDisplayString(p.$t("project.bulk.modal.itemsReady")),1)):r.createCommentVNode("",!0),r.createElementVNode("footer",sN,[r.createVNode(de,{color:"primary",variant:"ghost",label:p.$t("common.cancel"),disabled:t.isLoading,onClick:d},null,8,["label","disabled"]),r.createVNode(de,{type:"submit",color:"primary",variant:"solid",label:p.$t("common.create"),"is-loading":t.isLoading,disabled:!c.value},null,8,["label","is-loading","disabled"])])],32)])])],42,XT)):r.createCommentVNode("",!0)]))}}),_2e="",lN={class:"ao-mapping-card-project-phase__header"},cN={class:"ao-card-project-item__title-line"},dN={key:0,class:"ao-card-project-item-phase__estimation"},uN={class:"ao-mapping-card-project-phase__footer"},pN={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},fN={class:"ao-mapping-card-project-phase__subitem"},mN={class:"ao-mapping-card-project-phase__subitem"},hN={key:0,class:"ao-mapping-card-project-phase__secondary"},gN={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},bN=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(()=>Di(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(al,{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",cN,[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",dN," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(i.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",uN,[d.value?(r.openBlock(),r.createElementBlock("div",pN,[r.createElementVNode("div",fN,[r.createVNode(ke,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",mN,r.toDisplayString(u.value)+" / "+r.toDisplayString(d.value),1)]),r.createVNode(il,{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",hN,[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",gN,r.toDisplayString(r.unref($i)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",lN,[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"]))}}),y2e="",_N={class:"ao-project-phase"},yN={key:0,class:"ao-project-phase__drag ao-card__drag"},vN={key:1,class:"ao-project-phase__col-phase"},CN={key:2,class:"ao-mapping-project-phase__col-phase"},kN={key:0,class:"ao-project-phase__col-milestones"},wN=["title","onClick"],xN=["onClick"],EN=["onClick"],SN={class:"ao-project-phase__milestones-list-footer"},AN=["onClick"],TN=["onClick"],NN=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}=Vt(),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=>d5(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=kl(o.phase.milestones??[],A.length),x=A.map((D,S)=>({name:D,rank:E[S]}));a("bulkAddMilestone",{phaseId:o.phase.id,milestones:x,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:p5(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(A,E)=>(r.openBlock(),r.createElementBlock("li",_N,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",yN,[r.createVNode(ke,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",CN,[r.createVNode(bN,{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",vN,[r.createVNode(LT,{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",kN,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createBlock(si,{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(ke,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,wN)]),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,xN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),v.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,EN)]),_: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(YT,{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",SN,[t.isEditable?(r.openBlock(),r.createBlock(si,{key:0,class:"ao-project-phase__milestone-add"},{trigger:r.withCtx(({open:x})=>[r.createVNode(io,{label:A.$t("project.milestone.add"),"icon-name":"Add",onClick:x},null,8,["label","onClick"])]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),d(t.phase.id)}},r.toDisplayString(A.$t("project.bulk.menu.single")),9,AN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),v.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,TN)]),_:1})):r.createCommentVNode("",!0)])],4)])),v.value?(r.openBlock(),r.createBlock(su,{key:1,open:v.value,"onUpdate:open":E[0]||(E[0]=x=>v.value=x),title:A.$t("project.bulk.modal.milestone.title"),hint:A.$t("project.bulk.modal.hint"),placeholder:A.$t("project.bulk.modal.placeholder"),"is-loading":b.value,onSubmit:_},null,8,["open","title","hint","placeholder","is-loading"])):r.createCommentVNode("",!0)]))}}),v2e="",DN={class:"ao-project__phases"},$N={key:0,class:"ao-project-phase__phases-list-footer"},BN={class:"ao-project-phase__col-phase"},lu=r.defineComponent({__name:"AoProjectPhases",props:{phases:{},closedStatus:{},isEditable:{type:Boolean},users:{},readonly:{type:Boolean},timeTrackingData:{},estimationUnit:{}},emits:["addMilestone","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",DN,[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(NN,{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,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",$N,[h[0]||(h[0]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",BN,[r.createVNode(io,{label:m.$t("project.phases.add"),"icon-name":"Add",class:"ao-project-phase__add-phase",onClick:f},null,8,["label"])]),h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__col-milestones"},null,-1))])):r.createCommentVNode("",!0)]))}}),C2e="",MN={class:"ao-add-template-modal__form-body"},LN={class:"field__row"},ON={class:"ao-add-template-modal__form-footer"},Dg=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",MN,[r.createElementVNode("div",LN,[r.createVNode(yt,{value:i.value,options:a.value,detached:!0,onChange:s},null,8,["value","options"])])]),r.createElementVNode("footer",ON,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}}),k2e="",VN={class:"ao-save-template-modal__form-body"},IN={class:"field__row"},RN={class:"ao-field ao-field--inline"},PN={class:"ao-field__label"},FN={class:"ao-save-template-modal__phases"},zN={class:"ao-field__label"},qN={class:"ao-save-template-modal__phases-list"},jN=["value"],UN={class:"ao-save-template-modal__form-footer"},$g=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",VN,[r.createElementVNode("div",IN,[r.createElementVNode("label",RN,[r.createElementVNode("span",PN,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",FN,[r.createElementVNode("div",zN,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",qN,[(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,jN),[[r.vModelCheckbox,i.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",UN,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:s},null,8,["label"])])],32)]),_:1}))}}),w2e="",HN={class:"ao-project"},WN=["onClick"],ZN=["onClick"],GN={class:"ao-project__body"},KN=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}=Vt(),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)},$=R=>{a("removeFile",R)},B=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 Ce;const xe=(Ce=o.templates)==null?void 0:Ce.at(-1),ze=xe?et.LexoRank.parse(xe.rank).genNext():et.LexoRank.middle();a("saveTemplate",{templateName:R,rank:ze.format(),phaseIds:ie}),P.value=!1},ve=R=>{Q.value=!0;const ie=kl(o.phases,R.length),xe=R.map((ze,Ce)=>({name:ze,rank:ie[Ce]}));a("bulkAddPhase",{projectId:o.project.id,phases:xe,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 xe=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",HN,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createVNode(ii,{modelValue:ae.value,"onUpdate:modelValue":ie[0]||(ie[0]=Ce=>ae.value=Ce),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]=Ce=>R.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(si,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:Ce})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:Ce},null,8,["label","onClick"])]),menu:r.withCtx(({close:Ce})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ce(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,WN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ce(),j.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,ZN)]),_: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]=Ce=>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]=Ce=>H.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",GN,[r.createVNode(lu,{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(xe,{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]=Ce=>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(xe,{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:$,onAddComment:B,onUpdateComment:V,onRemoveComment:I},{default:r.withCtx(({Component:Ce})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(Ce),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($g,{key:0,phases:t.phases,onClose:ie[5]||(ie[5]=Ce=>P.value=!1),onSave:ne},null,8,["phases"])):r.createCommentVNode("",!0),H.value?(r.openBlock(),r.createBlock(Dg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:ie[6]||(ie[6]=Ce=>H.value=!1),onApply:se},null,8,["project-id","templates"])):r.createCommentVNode("",!0),j.value?(r.openBlock(),r.createBlock(su,{key:2,open:j.value,"onUpdate:open":ie[7]||(ie[7]=Ce=>j.value=Ce),title:R.$t("project.bulk.modal.phase.title"),hint:R.$t("project.bulk.modal.hint"),placeholder:R.$t("project.bulk.modal.placeholder"),"is-loading":Q.value,onSubmit:ve},null,8,["open","title","hint","placeholder","is-loading"])):r.createCommentVNode("",!0)]))],64)}}}),x2e="",YN={class:"ao-card-feed__header"},JN={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},XN={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},QN={class:"ao-card-feed__body"},eD={key:0,class:"ao-card-feed__breadcrumbs"},tD={class:r.normalizeClass(["ao-card-feed__title-group"])},nD={class:"ao-card-feed__title-line"},oD={key:0,class:"ao-card-feed__slug"},rD={key:1,class:"ao-card-feed__deadline"},aD={class:"ao-card-feed__footer"},iD={class:"ao-card-feed__footer-row"},sD={class:"ao-assignees"},lD={key:0,class:"ao-assignee"},cD={key:0,class:"ao-card-feed__subitems"},dD={key:0,class:"ao-card-feed__subitem"},uD={class:"ao-card-feed__subitem"},pD={key:1,class:"ao-card-feed__subitem"},fD={class:"ao-card-feed__subitem"},mD={class:"ao-card-feed__timer-wrapper"},hD={class:"ao-card-feed__footer-row"},gD={key:0,class:"ao-card-feed__progress-wrapper"},bD={class:"ao-card-feed__subitem"},_D={class:"ao-card-feed__subitem"},cu=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(()=>$i(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(al,{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",YN,[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",JN,[t.isPrivate?(r.openBlock(),r.createBlock(ke,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.important?(r.openBlock(),r.createBlock(ke,{key:1,name:"FlagRounded",class:"ao-card-feed__important",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(ke,{key:2,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",XN,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",QN,[l.value?(r.openBlock(),r.createElementBlock("span",eD,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",tD,[r.createElementVNode("div",nD,[t.slug?(r.openBlock(),r.createElementBlock("span",oD,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",rD,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",aD,[r.createElementVNode("div",iD,[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",lD,[r.createVNode(In,{"user-name":r.unref(Hu)(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",cD,[t.comments?(r.openBlock(),r.createElementBlock("li",dD,[r.createVNode(ke,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",uD,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",pD,[r.createVNode(ke,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",fD,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",mD,[r.createVNode(ke,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",hD,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",gD,[r.createElementVNode("div",bD,[r.createVNode(ke,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",_D,r.toDisplayString(m.value)+" / "+r.toDisplayString(f.value),1)]),r.createVNode(il,{percentages:h.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}}),E2e="",yD={class:"ao-project-milestone"},vD={class:"ao-project-milestone__header"},CD={class:"ao-project-milestone__header_line"},kD={class:"ao-project-milestone__header_line"},wD={class:"ao-project-milestone__title"},xD={key:0,class:"ao-fieldset ao-milestone__fieldset"},ED={class:"ao-field__row ao-milestone__field-row"},SD={class:"ao-field ao-field--inline"},AD={class:"ao-field__row ao-milestone__field-row"},TD={class:"ao-field ao-milestone__field-multiselect"},ND={class:"ao-milestone__color-actions"},DD=["onClick"],$D=["title","onClick"],BD=["onClick"],MD=["onClick"],LD={class:"ao-project-milestone__body"},OD={key:0,class:"ao-project-milestone__footer"},VD=["onClick"],ID=["onClick"],Bg=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}=Vt(),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=kl(D.value??[],E.length),D=E.map((S,$)=>({name:S,rank:x[$]}));a("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:D,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==null?void 0: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?wl(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",yD,[r.createElementVNode("header",vD,[r.createElementVNode("div",CD,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:u})]),r.createElementVNode("div",kD,[r.createElementVNode("div",wD,[r.createVNode(pt,{title:((D=c.value)==null?void 0:D.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(Yd,{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",xD,[r.createElementVNode("div",ED,[r.createElementVNode("label",SD,[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",AD,[r.createElementVNode("label",TD,[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:$})=>[r.createVNode(In,{"user-name":S.label,"avatar-url":S.avatar,"is-closable":!0,onClose:B=>$(S,B)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",ND,[r.createVNode(Xr,{color:b.value,"onUpdate:color":x[3]||(x[3]=S=>b.value=S)},{clickable:r.withCtx(({openPicker:S,bgColor:$})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:$}),class:"color-button",onClick:B=>A(B,S)},null,12,DD)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(si,{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(ke,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,$D)]),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,BD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,MD)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",LD,[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(cu,{id:S.id,name:S.name||S.id,"project-id":t.projectId,"phase-name":($=s.value)==null?void 0:$.name,"milestone-name":(B=c.value)==null?void 0:B.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",OD,[r.createVNode(si,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,VD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,ID)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(su,{key:0,open:m.value,"onUpdate:open":x[4]||(x[4]=S=>m.value=S),title:E.$t("project.bulk.modal.activity.title"),hint:E.$t("project.bulk.modal.hint"),placeholder:E.$t("project.bulk.modal.placeholder"),"is-loading":h.value,onSubmit:g},null,8,["open","title","hint","placeholder","is-loading"])):r.createCommentVNode("",!0)])}}}),S2e="",RD=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(Jd,{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)}}}),PD={class:"ao-col-header"},FD=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",PD,[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)]))}}),A2e="";function zD(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function sl(t){return typeof t=="function"?t():r.unref(t)}const qD=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const jD=t=>t!=null,li=()=>{};function UD(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 HD(t,e={}){let n,o,a=li;const i=l=>{clearTimeout(l),a(),a=li};return l=>{const c=sl(t),d=sl(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 WD(t,e=200,n={}){return UD(HD(e,n),t)}function du(t){var e;const n=sl(t);return(e=n==null?void 0:n.$el)!=null?e:n}const ZD=qD?window:void 0;function GD(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function KD(t){const e=GD();return r.computed(()=>(e.value,!!t()))}function YD(t,e,n={}){const{root:o,rootMargin:a="0px",threshold:i=.1,window:s=ZD,immediate:l=!0}=n,c=KD(()=>s&&"IntersectionObserver"in s),d=r.computed(()=>{const h=sl(t);return(Array.isArray(h)?h:[h]).map(du).filter(jD)});let u=li;const p=r.ref(l),f=c.value?r.watch(()=>[d.value,du(o),p.value],([h,g])=>{if(u(),!p.value||!h.length)return;const y=new IntersectionObserver(e,{root:du(g),rootMargin:a,threshold:i});h.forEach(v=>v&&y.observe(v)),u=()=>{y.disconnect(),u=li}},{immediate:l,flush:"post"}):li,m=()=>{u(),f(),p.value=!1};return zD(m),{isSupported:c,isActive:p,pause(){u(),p.value=!1},resume(){p.value=!0},stop:m}}const JD={class:r.normalizeClass(["ao-list-kanban"])},XD={class:"ao-list-kanban__header"},QD=["title"],e$={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},t$={key:1,class:"ao-list-kanban__end"},n$={key:0,class:"ao-list-kanban__no-more"},o$={key:1,class:"ao-list-kanban__divider"},r$={key:1,class:"ao-list-kanban__footer"},a$=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);YD(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",JD,[t.title||p.$slots.header?r.renderSlot(p.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",XD,[t.title?(r.openBlock(),r.createBlock(FD,{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(ke,{name:"Add"})],8,QD)):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(cu,{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",e$,[r.createVNode(ke,{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",t$,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",n$,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",o$)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),p.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",r$,[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)]))}}),T2e="",i$={class:"ao-field ao-search-field"},s$=["value","placeholder"],l$=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=WD(a,n.delay),s=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",i$,[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,s$),r.createVNode(ke,{name:"SearchRounded",class:r.normalizeClass(`ao-search-field__icon ao-search-field__action ${t.modelValue?"":"ao-search-field__action--visible"}`)},null,8,["class"]),r.createVNode(de,{"icon-name":"CloseRounded",size:"sm",color:"primary",corners:"round",class:r.normalizeClass(`ao-search-field__button ao-search-field__action ${t.modelValue?"ao-search-field__action--visible":""}`),onClick:s},null,8,["class"])]))}}),N2e="",c$={class:"ao-sprint-metrics"},d$=["onClick"],u$={class:"ao-sprint-metrics__header-left"},p$={class:"ao-sprint-metrics__icon"},f$={class:"ao-sprint-metrics__title"},m$={class:"ao-sprint-metrics__dates"},h$={key:0,class:"ao-sprint-metrics__project"},g$={class:"ao-sprint-metrics__advancement"},b$={class:"ao-sprint-metrics__progress-bar"},_$={class:"ao-sprint-metrics__percent"},y$={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},v$={class:"ao-sprint-metrics__tooltip-row"},C$={class:"ao-sprint-metrics__tooltip-row"},k$={class:"ao-sprint-metrics__tooltip-row"},w$={class:"ao-sprint-metrics__tooltip-row"},x$={class:"ao-sprint-metrics__tooltip-row"},E$={class:"ao-sprint-metrics__tooltip-row"},S$={class:"ao-sprint-metrics__tooltip-row"},A$={class:"ao-sprint-metrics__content"},T$={class:"ao-sprint-metrics__grid"},N$={class:"ao-sprint-metrics__item"},D$={class:"ao-sprint-metrics__label"},$$={class:"ao-sprint-metrics__value"},B$={key:0,class:"ao-sprint-metrics__tooltip"},M$={class:"ao-sprint-metrics__tooltip-title"},L$={class:"ao-sprint-metrics__item"},O$={class:"ao-sprint-metrics__label"},V$={class:"ao-sprint-metrics__value"},I$={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},R$={class:"ao-sprint-metrics__label"},P$={class:"ao-sprint-metrics__input-row"},F$=["value","placeholder","onInput"],z$={key:0,class:"ao-sprint-metrics__secondary"},q$={class:"ao-sprint-metrics__item"},j$={class:"ao-sprint-metrics__label"},U$={class:"ao-sprint-metrics__value"},H$=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]}},setup(t){const e=t,{t:n}=Vt(),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((($=D.sprint)==null?void 0:$.id)!==x)return!1;const S=(B=D.devStatus)==null?void 0:B.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),$=new Date(D),B={day:"numeric",month:"short"};return`${S.toLocaleDateString("en-UK",B)} – ${$.toLocaleDateString("en-UK",B)}`};return(x,D)=>(r.openBlock(),r.createElementBlock("div",c$,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,S=>{var $;return r.openBlock(),r.createElementBlock("div",{key:S.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:B=>s(S.id)},[r.createElementVNode("div",u$,[r.createElementVNode("span",p$,r.toDisplayString(a.value.has(S.id)?"▸":"▾"),1),r.createElementVNode("span",f$,r.toDisplayString(S.name),1),r.createElementVNode("span",m$," · "+r.toDisplayString(E(S.startDate,S.endDate)),1),!a.value.has(S.id)&&l(S)?(r.openBlock(),r.createElementBlock("span",h$," · "+r.toDisplayString(($=l(S))==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(S.id)}])},[r.createElementVNode("div",g$,[r.createElementVNode("div",b$,[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",_$,r.toDisplayString(_(S.id))+"% ",1),r.createElementVNode("div",y$,[D[7]||(D[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",v$,[D[0]||(D[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(_(S.id))+"%",1)]),r.createElementVNode("span",C$,[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",k$,[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",w$,[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",x$,[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",E$,[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",S$,[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,d$),r.withDirectives(r.createElementVNode("div",A$,[r.createElementVNode("div",T$,[r.createElementVNode("div",N$,[r.createElementVNode("div",D$,r.toDisplayString(r.unref(n)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",$$,[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",B$,[r.createElementVNode("span",M$,r.toDisplayString(T(c(S.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u(S.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(T(B.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",L$,[r.createElementVNode("div",O$,r.toDisplayString(r.unref(n)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",V$,r.toDisplayString(T(p(S.id)))+" pts ",1)]),r.createElementVNode("div",I$,[r.createElementVNode("div",R$,r.toDisplayString(r.unref(n)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",P$,[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:B=>g(S.id,B.target.value)},null,40,F$),D[10]||(D[10]=r.createElementVNode("span",{class:"ao-sprint-metrics__unit"},"pts / MD",-1))]),m(S.id)>0?(r.openBlock(),r.createElementBlock("div",z$,r.toDisplayString(r.unref(n)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(A(m(S.id))),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",q$,[r.createElementVNode("div",j$,r.toDisplayString(r.unref(n)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",U$,[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))]))}}),D2e="",W$=te(H$,[["__scopeId","data-v-98b799f1"]]),Z$={class:"ao-feed"},G$={class:"ao-feed__filters"},K$={class:"ao-feed__body"},uu=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}=Vt(),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],[Ee,je])=>{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,je)},{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(),Ee=((De=o.activities)==null?void 0:De.length)??0,je=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:Ee+1}),rank:me.format(),...je?{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),Ee=((Pe=o.activities)==null?void 0:Pe.length)??0,je=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:Ee+1}),rank:me,...je?{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)},$=F=>{f.value=!1,a("clear:searchText",F)},B=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),xe=r.computed(()=>R.value?cr.dev:Re.dev),ze=r.computed(()=>Re.project),Ce=r.computed(()=>Re.mapping);return r.watch(re,F=>{F==="feed"?ne.push({name:ie.value}):F==="dev"?ne.push({name:xe.value}):F==="overview"?ne.push({name:ze.value}):F==="mapping"&&ne.push({name:Ce.value})}),(F,le)=>{var be;return r.openBlock(),r.createElementBlock("div",Z$,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createElementVNode("div",G$,[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(l$,{"model-value":t.searchText,placeholder:F.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":S,onClear:$},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:Ee})=>[r.createVNode(In,{"user-name":me.label,"avatar-url":me.avatar,"is-closable":!0,onClose:je=>Ee(me,je)},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(W$,{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",K$,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,me=>(r.openBlock(),r.createBlock(a$,{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(Jd,{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:B,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)]))])}}}),$2e="",Y$={class:"ao-project-mapping"},J$={class:"ao-project-mapping-mapping__body"},X$={class:"ao-project-mapping-mapping__phases"},Q$={key:0,class:"ao-project-mapping-mapping__image-wrapper"},eB=["src","alt"],tB=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}=Vt(),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",Y$,[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",J$,[r.createElementVNode("div",X$,[r.createVNode(lu,{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",Q$,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,eB)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[f.value?(r.openBlock(),r.createBlock($g,{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(Dg,{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)}}}),B2e="",lr={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},nB=(t,e={})=>[{path:t,name:lr.TEMPLATES,redirect:{name:lr.TEMPLATES_LIST},...e,children:[{path:"",name:lr.TEMPLATES_LIST,component:Mg},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:lr.TEMPLATE_DETAILS,component:Tg,props:!0}]}],Re={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},cr={feed:"ActivityFeed",dev:"ActivityFeedDev"},oB=(t,e={})=>[{path:t,...e,redirect:{name:Re.project},children:[{path:"",name:Re.project,component:KN,props:!0,children:[{path:":phaseId/:milestoneId",name:Re.milestone,component:Bg,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Re.activity,props:{default:!0,modal:!0},components:{default:Bg,modal:RD}}]},{path:"feed",name:Re.feed,component:uu,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Re.dev,component:uu,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Re.mapping,component:tB,props:!0}]}],rB={class:"ao-templates"},Mg=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Vt(),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:He.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{a("removeItem",{itemType:He.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=ha(d,o.templates??[]);a("updateItem",{itemType:He.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",rB,[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(V5,{id:p.id,title:p.name,phases:p.phases,milestones:(f=p.phases)!=null&&f.length?r.unref(i5)(p.phases):0,activities:p.phases?r.unref(s5)(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"])]))}}),M2e="",aB={class:"ao-field__label"},Lg=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",aB,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),iB=["type","value","disabled","readonly"],sB=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(Lg,{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,iB)]),_:1},8,["label"]))}}),lB={class:"ao-field"},cB={class:"ao-field__label"},dB=["checked","disabled"],Og=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",lB,[r.createElementVNode("span",cB,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,dB)]))}}),uB={class:"ao-audit-config"},pB={key:0,class:"ao-audit-config__loading"},fB={key:1,class:"ao-audit-config__error"},mB={key:2,class:"ao-audit-config__empty"},hB={key:3,class:"ao-audit-config__table"},gB={class:"ao-audit-config__th ao-audit-config__th--table"},bB={class:"ao-audit-config__th ao-audit-config__th--audit"},_B={class:"ao-audit-config__th ao-audit-config__th--excluded"},yB={class:"ao-audit-config__td ao-audit-config__td--table"},vB={class:"ao-audit-config__table-name"},CB={key:0,class:"ao-audit-config__schema"},kB={class:"ao-audit-config__td ao-audit-config__td--audit"},wB={class:"ao-audit-config__checkbox"},xB={class:"ao-audit-config__td ao-audit-config__td--excluded"},EB={key:0,class:"ao-audit-config__disabled-note"},SB={class:"ao-audit-config__option"},AB=["title"],TB={key:0,class:"ao-audit-config__all-tracked"},NB=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}=Vt(),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",uB,[t.loading?(r.openBlock(),r.createElementBlock("div",pB,r.toDisplayString(r.unref(a)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",fB,r.toDisplayString(r.unref(a)("audit.error",{message:t.error})),1)):i.value.length?(r.openBlock(),r.createElementBlock("table",hB,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",gB,r.toDisplayString(r.unref(a)("audit.tableHeader")),1),r.createElementVNode("th",bB,r.toDisplayString(r.unref(a)("audit.auditHeader")),1),r.createElementVNode("th",_B,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",yB,[r.createElementVNode("span",vB,r.toDisplayString(p.tableName),1),p.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",CB,r.toDisplayString(p.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",kB,[r.createElementVNode("div",wB,[r.createVNode(Og,{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",xB,[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",SB,[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,AB)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[p.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",TB,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",EB,r.toDisplayString(r.unref(a)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",mB,r.toDisplayString(r.unref(a)("audit.empty")),1))]))}}),L2e="",DB={class:"ao-sprint-list"},$B={class:"ao-sprint-list__header"},BB={class:"ao-sprint-list__title-group"},MB={class:"ao-sprint-list__count"},LB={class:"ao-sprint-list__actions"},OB={key:0,class:"ao-sprint-list__toggle"},VB={key:0,class:"ao-sprint-list__row ao-sprint-list__row--editing"},IB=["title","onClick"],RB=["placeholder"],PB={class:"ao-sprint-list__date-fields"},FB={class:"ao-sprint-list__row-actions"},zB={class:"ao-sprint-list__rows"},qB={class:"ao-sprint-list__identity"},jB={class:"ao-sprint-list__name-group"},UB={class:"ao-sprint-list__name"},HB={key:0,class:"ao-sprint-list__archived-badge"},WB={class:"ao-sprint-list__dates"},ZB={key:0,class:"ao-sprint-list__row-actions"},GB=["title","onClick"],KB={class:"ao-sprint-list__date-fields"},YB={class:"ao-sprint-list__row-actions"},JB={key:1,class:"ao-sprint-list__empty"},XB=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}=Vt(),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=>yl(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",DB,[r.createElementVNode("div",$B,[r.createElementVNode("div",BB,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(a)("sprint.planning")),1),r.createElementVNode("span",MB,r.toDisplayString(s.value.length),1)]),r.createElementVNode("div",LB,[t.sprints.some(x=>!x.active)?(r.openBlock(),r.createElementBlock("label",OB,[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",VB,[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,IB)]),_: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,RB),[[r.vModelText,_.value.name]]),r.createElementVNode("div",PB,[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",FB,[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",zB,[(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",qB,[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",jB,[r.createElementVNode("span",UB,r.toDisplayString(x.name),1),x.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",HB,r.toDisplayString(r.unref(a)("sprint.archived")),1))])]),r.createElementVNode("div",WB,[r.createVNode(ke,{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",ZB,[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:$=>D($.currentTarget)},null,12,GB)]),_: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",KB,[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",YB,[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",JB,r.toDisplayString(r.unref(a)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}}),O2e="",QB=te(XB,[["__scopeId","data-v-698944ea"]]);ge.AoAuditConfigTable=NB,ge.AoAvatar=In,ge.AoCardFeed=cu,ge.AoCheckboxField=Og,ge.AoColorPicker=Xr,ge.AoFeed=uu,ge.AoField=Lg,ge.AoInputField=sB,ge.AoMultiselect=yt,ge.AoProjectPhases=lu,ge.AoSprintList=QB,ge.AoTabBar=ii,ge.AoTemplateDetails=Tg,ge.AoTemplates=Gg,ge.AoTemplatesList=Mg,ge.EstimationUnit=wu,ge.TemplateItemTypeEnum=ku,ge.activityFeedRoutes=cr,ge.activityFeedStatus=vv,ge.durationTypes=yv,ge.feedFilterTypes=ro,ge.getProjectOverviewRoutes=oB,ge.getTemplateRoutes=nB,ge.listUpdateTypes=Cv,ge.milestoneStatus=ra,ge.projectOverviewRoutes=Re,ge.ruleComparators=yu,ge.ruleDurationUnits=Cu,ge.ruleTriggerTypes=vu,ge.templateItemType=He,ge.templateRouteNames=lr,Object.defineProperty(ge,Symbol.toStringTag,{value:"Module"})});
|
|
60
|
+
`).map(p=>p.trim()).filter(p=>p.length>0)),c=r.computed(()=>l.value.length>0&&!o.isLoading);r.watch(()=>o.open,async p=>{var f;p&&(i.value="",await r.nextTick(),(f=s.value)==null||f.focus())},{immediate:!0});const d=()=>{o.isLoading||(a("update:open",!1),a("close"))},u=()=>{c.value&&a("submit",l.value)};return e({parsedNames:l}),(p,f)=>(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[t.open?(r.openBlock(),r.createElementBlock("div",{key:0,class:r.normalizeClass(["ao-modal__wrapper",`ao-modal__wrapper--${t.size}`]),onKeydown:r.withKeys(r.withModifiers(d,["stop"]),["esc"])},[r.createElementVNode("div",{class:"ao-modal__backdrop",onClick:d}),r.createElementVNode("div",QT,[r.createElementVNode("div",eN,[r.createElementVNode("div",tN,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",color:"primary",onClick:d})]),r.createElementVNode("header",nN,[r.createVNode(pt,{title:t.title,level:3},null,8,["title"])])]),r.createElementVNode("div",oN,[r.createElementVNode("form",{class:"ao-bulk-insert-modal__form",onSubmit:r.withModifiers(u,["prevent"])},[t.hint?(r.openBlock(),r.createElementBlock("p",rN,r.toDisplayString(t.hint),1)):r.createCommentVNode("",!0),r.withDirectives(r.createElementVNode("textarea",{ref_key:"textareaRef",ref:s,"onUpdate:modelValue":f[0]||(f[0]=m=>i.value=m),class:"ao-bulk-insert-modal__textarea",placeholder:t.placeholder,rows:"10",disabled:t.isLoading},null,8,aN),[[r.vModelText,i.value]]),l.value.length>0?(r.openBlock(),r.createElementBlock("p",iN,r.toDisplayString(l.value.length)+" "+r.toDisplayString(p.$t("project.bulk.modal.itemsReady")),1)):r.createCommentVNode("",!0),r.createElementVNode("footer",sN,[r.createVNode(de,{color:"primary",variant:"ghost",label:p.$t("common.cancel"),disabled:t.isLoading,onClick:d},null,8,["label","disabled"]),r.createVNode(de,{type:"submit",color:"primary",variant:"solid",label:p.$t("common.create"),"is-loading":t.isLoading,disabled:!c.value},null,8,["label","is-loading","disabled"])])],32)])])],42,XT)):r.createCommentVNode("",!0)]))}}),_2e="",lN={class:"ao-mapping-card-project-phase__header"},cN={class:"ao-card-project-item__title-line"},dN={key:0,class:"ao-card-project-item-phase__estimation"},uN={class:"ao-mapping-card-project-phase__footer"},pN={key:0,class:"ao-mapping-card-project-phase__footer-row ao-mapping-card-project-phase__footer-row--progress"},fN={class:"ao-mapping-card-project-phase__subitem"},mN={class:"ao-mapping-card-project-phase__subitem"},hN={key:0,class:"ao-mapping-card-project-phase__secondary"},gN={class:"ao-mapping-card-project-phase__deadline ao-mapping-card-project-phase__deadline--readonly"},bN=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(()=>Di(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(al,{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",cN,[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",dN," ("+r.toDisplayString(c.value)+"/"+r.toDisplayString(i.value)+r.toDisplayString(l.value)+")",1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",uN,[d.value?(r.openBlock(),r.createElementBlock("div",pN,[r.createElementVNode("div",fN,[r.createVNode(ke,{name:"MountainFlagOutlineRounded",size:"sm"}),r.createElementVNode("span",mN,r.toDisplayString(u.value)+" / "+r.toDisplayString(d.value),1)]),r.createVNode(il,{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",hN,[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",gN,r.toDisplayString(r.unref($i)(t.deadline)),1)],2)])]),_:2},[t.isEditable?{name:"header",fn:r.withCtx(()=>[r.createElementVNode("div",lN,[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"]))}}),y2e="",_N={class:"ao-project-phase"},yN={key:0,class:"ao-project-phase__drag ao-card__drag"},vN={key:1,class:"ao-project-phase__col-phase"},CN={key:2,class:"ao-mapping-project-phase__col-phase"},kN={key:0,class:"ao-project-phase__col-milestones"},wN=["title","onClick"],xN=["onClick"],EN=["onClick"],SN={class:"ao-project-phase__milestones-list-footer"},AN=["onClick"],TN=["onClick"],NN=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}=Vt(),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=>d5(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=kl(o.phase.milestones??[],A.length),x=A.map((D,S)=>({name:D,rank:E[S]}));a("bulkAddMilestone",{phaseId:o.phase.id,milestones:x,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:p5(o.phase.color)}:{backgroundColor:"var(--ao-color-primary-lightest)"}});return(A,E)=>(r.openBlock(),r.createElementBlock("li",_N,[r.createElementVNode("div",{class:"ao-project-phases__draggable-card",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createElementBlock("div",yN,[r.createVNode(ke,{name:"DragIndicator",class:"ao-project-phase__drag-handle"})])):r.createCommentVNode("",!0),w.value?(r.openBlock(),r.createElementBlock("div",CN,[r.createVNode(bN,{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",vN,[r.createVNode(LT,{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",kN,[r.createElementVNode("div",{class:"ao-project-phase__milestones ao-project-phase__milestones--hoverable",style:r.normalizeStyle(T.value)},[t.isEditable?(r.openBlock(),r.createBlock(si,{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(ke,{name:"Add",class:"ao-project-phase__milestone-quick-add-icon"})],8,wN)]),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,xN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),v.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,EN)]),_: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(YT,{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",SN,[t.isEditable?(r.openBlock(),r.createBlock(si,{key:0,class:"ao-project-phase__milestone-add"},{trigger:r.withCtx(({open:x})=>[r.createVNode(io,{label:A.$t("project.milestone.add"),"icon-name":"Add",onClick:x},null,8,["label","onClick"])]),menu:r.withCtx(({close:x})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),d(t.phase.id)}},r.toDisplayString(A.$t("project.bulk.menu.single")),9,AN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{x(),v.value=!0}},r.toDisplayString(A.$t("project.bulk.menu.bulkInsert")),9,TN)]),_:1})):r.createCommentVNode("",!0)])],4)])),v.value?(r.openBlock(),r.createBlock(su,{key:1,open:v.value,"onUpdate:open":E[0]||(E[0]=x=>v.value=x),title:A.$t("project.bulk.modal.milestone.title"),hint:A.$t("project.bulk.modal.hint"),placeholder:A.$t("project.bulk.modal.placeholder"),"is-loading":b.value,onSubmit:_},null,8,["open","title","hint","placeholder","is-loading"])):r.createCommentVNode("",!0)]))}}),v2e="",DN={class:"ao-project__phases"},$N={key:0,class:"ao-project-phase__phases-list-footer"},BN={class:"ao-project-phase__col-phase"},lu=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",DN,[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(NN,{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",$N,[h[1]||(h[1]=r.createElementVNode("div",{class:"ao-project-phase__empty_drag"},null,-1)),r.createElementVNode("div",BN,[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)]))}}),C2e="",MN={class:"ao-add-template-modal__form-body"},LN={class:"field__row"},ON={class:"ao-add-template-modal__form-footer"},Dg=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",MN,[r.createElementVNode("div",LN,[r.createVNode(yt,{value:i.value,options:a.value,detached:!0,onChange:s},null,8,["value","options"])])]),r.createElementVNode("footer",ON,[r.createVNode(de,{label:c.$t("project.template.apply.label"),type:"submit",color:"primary",variant:"solid",onClick:l},null,8,["label"])])],32)]),_:1}))}}),k2e="",VN={class:"ao-save-template-modal__form-body"},IN={class:"field__row"},RN={class:"ao-field ao-field--inline"},PN={class:"ao-field__label"},FN={class:"ao-save-template-modal__phases"},zN={class:"ao-field__label"},qN={class:"ao-save-template-modal__phases-list"},jN=["value"],UN={class:"ao-save-template-modal__form-footer"},$g=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",VN,[r.createElementVNode("div",IN,[r.createElementVNode("label",RN,[r.createElementVNode("span",PN,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",FN,[r.createElementVNode("div",zN,r.toDisplayString(l.$t("project.template.phases.label")),1),r.createElementVNode("div",qN,[(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,jN),[[r.vModelCheckbox,i.value]]),r.createElementVNode("span",null,r.toDisplayString(d.name),1)]))),128))])])]),r.createElementVNode("footer",UN,[r.createVNode(de,{label:l.$t("project.template.save.label"),type:"submit",color:"primary",variant:"solid",onClick:s},null,8,["label"])])],32)]),_:1}))}}),w2e="",HN={class:"ao-project"},WN=["onClick"],ZN=["onClick"],GN={class:"ao-project__body"},KN=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}=Vt(),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)},$=R=>{a("removeFile",R)},B=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 Ce;const xe=(Ce=o.templates)==null?void 0:Ce.at(-1),ze=xe?et.LexoRank.parse(xe.rank).genNext():et.LexoRank.middle();a("saveTemplate",{templateName:R,rank:ze.format(),phaseIds:ie}),P.value=!1},ve=R=>{Q.value=!0;const ie=kl(o.phases,R.length),xe=R.map((ze,Ce)=>({name:ze,rank:ie[Ce]}));a("bulkAddPhase",{projectId:o.project.id,phases:xe,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 xe=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",HN,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createVNode(ii,{modelValue:ae.value,"onUpdate:modelValue":ie[0]||(ie[0]=Ce=>ae.value=Ce),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]=Ce=>R.$emit("update:showsArchived",!t.showsArchived))},null,8,["icon-name","label","aria-checked"])]),secondary:r.withCtx(()=>[t.isEditable===!0?(r.openBlock(),r.createBlock(si,{key:0,class:"ao-project-overview__quick-add-phase"},{trigger:r.withCtx(({open:Ce})=>[r.createVNode(de,{size:"sm","icon-name":"Add","icon-position":"start",color:"primary",variant:"ghost",label:R.$t("project.phase.add"),onClick:Ce},null,8,["label","onClick"])]),menu:r.withCtx(({close:Ce})=>[r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ce(),l()}},r.toDisplayString(R.$t("project.bulk.menu.single")),9,WN),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{Ce(),j.value=!0}},r.toDisplayString(R.$t("project.bulk.menu.bulkInsert")),9,ZN)]),_: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]=Ce=>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]=Ce=>H.value=!0)},null,8,["label"])):r.createCommentVNode("",!0)]),_:1}),r.createElementVNode("div",GN,[r.createVNode(lu,{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(xe,{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]=Ce=>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(xe,{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:$,onAddComment:B,onUpdateComment:V,onRemoveComment:I},{default:r.withCtx(({Component:Ce})=>[(r.openBlock(),r.createBlock(r.resolveDynamicComponent(Ce),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($g,{key:0,phases:t.phases,onClose:ie[5]||(ie[5]=Ce=>P.value=!1),onSave:ne},null,8,["phases"])):r.createCommentVNode("",!0),H.value?(r.openBlock(),r.createBlock(Dg,{key:1,"project-id":t.project.id,templates:t.templates,onClose:ie[6]||(ie[6]=Ce=>H.value=!1),onApply:se},null,8,["project-id","templates"])):r.createCommentVNode("",!0),j.value?(r.openBlock(),r.createBlock(su,{key:2,open:j.value,"onUpdate:open":ie[7]||(ie[7]=Ce=>j.value=Ce),title:R.$t("project.bulk.modal.phase.title"),hint:R.$t("project.bulk.modal.hint"),placeholder:R.$t("project.bulk.modal.placeholder"),"is-loading":Q.value,onSubmit:ve},null,8,["open","title","hint","placeholder","is-loading"])):r.createCommentVNode("",!0)]))],64)}}}),x2e="",YN={class:"ao-card-feed__header"},JN={key:1,class:"ao-card-feed__header-secondary ao-card-feed__header-icons"},XN={key:2,class:"ao-card-feed__header-secondary ao-card-feed__secondary"},QN={class:"ao-card-feed__body"},eD={key:0,class:"ao-card-feed__breadcrumbs"},tD={class:r.normalizeClass(["ao-card-feed__title-group"])},nD={class:"ao-card-feed__title-line"},oD={key:0,class:"ao-card-feed__slug"},rD={key:1,class:"ao-card-feed__deadline"},aD={class:"ao-card-feed__footer"},iD={class:"ao-card-feed__footer-row"},sD={class:"ao-assignees"},lD={key:0,class:"ao-assignee"},cD={key:0,class:"ao-card-feed__subitems"},dD={key:0,class:"ao-card-feed__subitem"},uD={class:"ao-card-feed__subitem"},pD={key:1,class:"ao-card-feed__subitem"},fD={class:"ao-card-feed__subitem"},mD={class:"ao-card-feed__timer-wrapper"},hD={class:"ao-card-feed__footer-row"},gD={key:0,class:"ao-card-feed__progress-wrapper"},bD={class:"ao-card-feed__subitem"},_D={class:"ao-card-feed__subitem"},cu=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(()=>$i(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(al,{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",YN,[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",JN,[t.isPrivate?(r.openBlock(),r.createBlock(ke,{key:0,name:"Lock",class:"ao-card-feed__warning",size:"sm"})):r.createCommentVNode("",!0),t.important?(r.openBlock(),r.createBlock(ke,{key:1,name:"FlagRounded",class:"ao-card-feed__important",size:"sm"})):r.createCommentVNode("",!0),t.isClosed?(r.openBlock(),r.createBlock(ke,{key:2,name:"CheckSmallRounded",class:"ao-card-feed__closed"})):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),g.$slots.secondary?(r.openBlock(),r.createElementBlock("div",XN,[r.renderSlot(g.$slots,"secondary")])):r.createCommentVNode("",!0)])]),default:r.withCtx(()=>[r.createElementVNode("div",QN,[l.value?(r.openBlock(),r.createElementBlock("span",eD,r.toDisplayString(l.value),1)):r.createCommentVNode("",!0),r.createElementVNode("div",tD,[r.createElementVNode("div",nD,[t.slug?(r.openBlock(),r.createElementBlock("span",oD,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",rD,r.toDisplayString(d.value),1)):r.createCommentVNode("",!0)])]),footer:r.withCtx(()=>[r.createElementVNode("div",aD,[r.createElementVNode("div",iD,[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",lD,[r.createVNode(In,{"user-name":r.unref(Hu)(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",cD,[t.comments?(r.openBlock(),r.createElementBlock("li",dD,[r.createVNode(ke,{name:"ChatOutline",size:"sm"}),r.createElementVNode("span",uD,r.toDisplayString(t.comments),1)])):r.createCommentVNode("",!0),t.attachments?(r.openBlock(),r.createElementBlock("li",pD,[r.createVNode(ke,{name:"AttachFileRounded",size:"sm"}),r.createElementVNode("span",fD,r.toDisplayString(t.attachments),1)])):r.createCommentVNode("",!0)])):r.createCommentVNode("",!0),r.createElementVNode("div",mD,[r.createVNode(ke,{name:"TimerOutline",class:"ao-card-feed__timer",size:"md",onClick:r.withModifiers(p,["stop"])})])]),r.createElementVNode("div",hD,[t.tasks&&t.tasks.length?(r.openBlock(),r.createElementBlock("div",gD,[r.createElementVNode("div",bD,[r.createVNode(ke,{name:"SelectCheckBox",size:"sm"}),r.createElementVNode("span",_D,r.toDisplayString(m.value)+" / "+r.toDisplayString(f.value),1)]),r.createVNode(il,{percentages:h.value,class:"ao-card-feed__progress"},null,8,["percentages"])])):r.createCommentVNode("",!0)])])]),_:3},8,["class","variant"]))}}),E2e="",yD={class:"ao-project-milestone"},vD={class:"ao-project-milestone__header"},CD={class:"ao-project-milestone__header_line"},kD={class:"ao-project-milestone__header_line"},wD={class:"ao-project-milestone__title"},xD={key:0,class:"ao-fieldset ao-milestone__fieldset"},ED={class:"ao-field__row ao-milestone__field-row"},SD={class:"ao-field ao-field--inline"},AD={class:"ao-field__row ao-milestone__field-row"},TD={class:"ao-field ao-milestone__field-multiselect"},ND={class:"ao-milestone__color-actions"},DD=["onClick"],$D=["title","onClick"],BD=["onClick"],MD=["onClick"],LD={class:"ao-project-milestone__body"},OD={key:0,class:"ao-project-milestone__footer"},VD=["onClick"],ID=["onClick"],Bg=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}=Vt(),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=kl(D.value??[],E.length),D=E.map((S,$)=>({name:S,rank:x[$]}));a("bulkAddActivity",{projectId:o.projectId,phaseId:o.phaseId,milestoneId:o.milestoneId,activities:D,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==null?void 0: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?wl(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",yD,[r.createElementVNode("header",vD,[r.createElementVNode("div",CD,[r.createVNode(de,{"icon-name":"CloseRounded",variant:"ghost",size:"sm",class:"ao-milestone__close",onClick:u})]),r.createElementVNode("div",kD,[r.createElementVNode("div",wD,[r.createVNode(pt,{title:((D=c.value)==null?void 0:D.name)||t.milestoneId,level:5},null,8,["title"]),r.createVNode(Yd,{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",xD,[r.createElementVNode("div",ED,[r.createElementVNode("label",SD,[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",AD,[r.createElementVNode("label",TD,[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:$})=>[r.createVNode(In,{"user-name":S.label,"avatar-url":S.avatar,"is-closable":!0,onClose:B=>$(S,B)},null,8,["user-name","avatar-url","onClose"])]),_:1},8,["modelValue","options","placeholder","disabled","caret"])])]),r.createElementVNode("div",ND,[r.createVNode(Xr,{color:b.value,"onUpdate:color":x[3]||(x[3]=S=>b.value=S)},{clickable:r.withCtx(({openPicker:S,bgColor:$})=>[r.createElementVNode("button",{style:r.normalizeStyle({background:$}),class:"color-button",onClick:B=>A(B,S)},null,12,DD)]),_:1},8,["color"]),t.isEditable?(r.openBlock(),r.createBlock(si,{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(ke,{name:"Add",class:"ao-project-milestone__quick-add-icon"})],8,$D)]),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,BD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,MD)]),_:1})):r.createCommentVNode("",!0)])])):r.createCommentVNode("",!0)]),r.createElementVNode("div",LD,[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(cu,{id:S.id,name:S.name||S.id,"project-id":t.projectId,"phase-name":($=s.value)==null?void 0:$.name,"milestone-name":(B=c.value)==null?void 0:B.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",OD,[r.createVNode(si,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,VD),r.createElementVNode("button",{type:"button",class:"ao-popover-menu__item",onClick:()=>{S(),m.value=!0}},r.toDisplayString(E.$t("project.bulk.menu.bulkInsert")),9,ID)]),_:1})])):r.createCommentVNode("",!0)]),m.value?(r.openBlock(),r.createBlock(su,{key:0,open:m.value,"onUpdate:open":x[4]||(x[4]=S=>m.value=S),title:E.$t("project.bulk.modal.activity.title"),hint:E.$t("project.bulk.modal.hint"),placeholder:E.$t("project.bulk.modal.placeholder"),"is-loading":h.value,onSubmit:g},null,8,["open","title","hint","placeholder","is-loading"])):r.createCommentVNode("",!0)])}}}),S2e="",RD=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(Jd,{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)}}}),PD={class:"ao-col-header"},FD=r.defineComponent({__name:"AoColHeader",props:{title:{},items:{}},setup(t){return(e,n)=>(r.openBlock(),r.createElementBlock("header",PD,[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)]))}}),A2e="";function zD(t){return r.getCurrentScope()?(r.onScopeDispose(t),!0):!1}function sl(t){return typeof t=="function"?t():r.unref(t)}const qD=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const jD=t=>t!=null,li=()=>{};function UD(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 HD(t,e={}){let n,o,a=li;const i=l=>{clearTimeout(l),a(),a=li};return l=>{const c=sl(t),d=sl(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 WD(t,e=200,n={}){return UD(HD(e,n),t)}function du(t){var e;const n=sl(t);return(e=n==null?void 0:n.$el)!=null?e:n}const ZD=qD?window:void 0;function GD(){const t=r.ref(!1),e=r.getCurrentInstance();return e&&r.onMounted(()=>{t.value=!0},e),t}function KD(t){const e=GD();return r.computed(()=>(e.value,!!t()))}function YD(t,e,n={}){const{root:o,rootMargin:a="0px",threshold:i=.1,window:s=ZD,immediate:l=!0}=n,c=KD(()=>s&&"IntersectionObserver"in s),d=r.computed(()=>{const h=sl(t);return(Array.isArray(h)?h:[h]).map(du).filter(jD)});let u=li;const p=r.ref(l),f=c.value?r.watch(()=>[d.value,du(o),p.value],([h,g])=>{if(u(),!p.value||!h.length)return;const y=new IntersectionObserver(e,{root:du(g),rootMargin:a,threshold:i});h.forEach(v=>v&&y.observe(v)),u=()=>{y.disconnect(),u=li}},{immediate:l,flush:"post"}):li,m=()=>{u(),f(),p.value=!1};return zD(m),{isSupported:c,isActive:p,pause(){u(),p.value=!1},resume(){p.value=!0},stop:m}}const JD={class:r.normalizeClass(["ao-list-kanban"])},XD={class:"ao-list-kanban__header"},QD=["title"],e$={key:0,class:"ao-list-kanban__end ao-list-kanban__end--loading"},t$={key:1,class:"ao-list-kanban__end"},n$={key:0,class:"ao-list-kanban__no-more"},o$={key:1,class:"ao-list-kanban__divider"},r$={key:1,class:"ao-list-kanban__footer"},a$=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);YD(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",JD,[t.title||p.$slots.header?r.renderSlot(p.$slots,"header",{},()=>{var m;return[r.createElementVNode("div",XD,[t.title?(r.openBlock(),r.createBlock(FD,{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(ke,{name:"Add"})],8,QD)):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(cu,{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",e$,[r.createVNode(ke,{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",t$,[t.noMoreLabel?(r.openBlock(),r.createElementBlock("span",n$,r.toDisplayString(t.noMoreLabel),1)):t.isEditable?(r.openBlock(),r.createElementBlock("span",o$)):r.createCommentVNode("",!0)]))]),_:1},16,["class","list","disabled"]),p.$slots.footer||t.footerLabel?(r.openBlock(),r.createElementBlock("div",r$,[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)]))}}),T2e="",i$={class:"ao-field ao-search-field"},s$=["value","placeholder"],l$=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=WD(a,n.delay),s=l=>{o("clear",l)};return(l,c)=>(r.openBlock(),r.createElementBlock("div",i$,[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,s$),r.createVNode(ke,{name:"SearchRounded",class:r.normalizeClass(`ao-search-field__icon ao-search-field__action ${t.modelValue?"":"ao-search-field__action--visible"}`)},null,8,["class"]),r.createVNode(de,{"icon-name":"CloseRounded",size:"sm",color:"primary",corners:"round",class:r.normalizeClass(`ao-search-field__button ao-search-field__action ${t.modelValue?"ao-search-field__action--visible":""}`),onClick:s},null,8,["class"])]))}}),N2e="",c$={class:"ao-sprint-metrics"},d$=["onClick"],u$={class:"ao-sprint-metrics__header-left"},p$={class:"ao-sprint-metrics__icon"},f$={class:"ao-sprint-metrics__title"},m$={class:"ao-sprint-metrics__dates"},h$={key:0,class:"ao-sprint-metrics__project"},g$={class:"ao-sprint-metrics__advancement"},b$={class:"ao-sprint-metrics__progress-bar"},_$={class:"ao-sprint-metrics__percent"},y$={class:"ao-sprint-metrics__tooltip ao-sprint-metrics__tooltip--advancement"},v$={class:"ao-sprint-metrics__tooltip-row"},C$={class:"ao-sprint-metrics__tooltip-row"},k$={class:"ao-sprint-metrics__tooltip-row"},w$={class:"ao-sprint-metrics__tooltip-row"},x$={class:"ao-sprint-metrics__tooltip-row"},E$={class:"ao-sprint-metrics__tooltip-row"},S$={class:"ao-sprint-metrics__tooltip-row"},A$={class:"ao-sprint-metrics__content"},T$={class:"ao-sprint-metrics__grid"},N$={class:"ao-sprint-metrics__item"},D$={class:"ao-sprint-metrics__label"},$$={class:"ao-sprint-metrics__value"},B$={key:0,class:"ao-sprint-metrics__tooltip"},M$={class:"ao-sprint-metrics__tooltip-title"},L$={class:"ao-sprint-metrics__item"},O$={class:"ao-sprint-metrics__label"},V$={class:"ao-sprint-metrics__value"},I$={class:"ao-sprint-metrics__item ao-sprint-metrics__item--editable"},R$={class:"ao-sprint-metrics__label"},P$={class:"ao-sprint-metrics__input-row"},F$=["value","placeholder","onInput"],z$={key:0,class:"ao-sprint-metrics__secondary"},q$={class:"ao-sprint-metrics__item"},j$={class:"ao-sprint-metrics__label"},U$={class:"ao-sprint-metrics__value"},H$=r.defineComponent({__name:"AoSprintMetrics",props:{sprints:{},activities:{},planningData:{default:()=>({})},projects:{default:()=>[]}},setup(t){const e=t,{t:n}=Vt(),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((($=D.sprint)==null?void 0:$.id)!==x)return!1;const S=(B=D.devStatus)==null?void 0:B.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),$=new Date(D),B={day:"numeric",month:"short"};return`${S.toLocaleDateString("en-UK",B)} – ${$.toLocaleDateString("en-UK",B)}`};return(x,D)=>(r.openBlock(),r.createElementBlock("div",c$,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.sprints,S=>{var $;return r.openBlock(),r.createElementBlock("div",{key:S.id,class:"ao-sprint-metrics__section"},[r.createElementVNode("div",{class:"ao-sprint-metrics__header",onClick:B=>s(S.id)},[r.createElementVNode("div",u$,[r.createElementVNode("span",p$,r.toDisplayString(a.value.has(S.id)?"▸":"▾"),1),r.createElementVNode("span",f$,r.toDisplayString(S.name),1),r.createElementVNode("span",m$," · "+r.toDisplayString(E(S.startDate,S.endDate)),1),!a.value.has(S.id)&&l(S)?(r.openBlock(),r.createElementBlock("span",h$," · "+r.toDisplayString(($=l(S))==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(S.id)}])},[r.createElementVNode("div",g$,[r.createElementVNode("div",b$,[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",_$,r.toDisplayString(_(S.id))+"% ",1),r.createElementVNode("div",y$,[D[7]||(D[7]=r.createElementVNode("span",{class:"ao-sprint-metrics__tooltip-title"}," Sprint advancement ",-1)),r.createElementVNode("span",v$,[D[0]||(D[0]=r.createElementVNode("span",null,"Advancement",-1)),r.createElementVNode("span",null,r.toDisplayString(_(S.id))+"%",1)]),r.createElementVNode("span",C$,[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",k$,[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",w$,[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",x$,[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",E$,[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",S$,[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,d$),r.withDirectives(r.createElementVNode("div",A$,[r.createElementVNode("div",T$,[r.createElementVNode("div",N$,[r.createElementVNode("div",D$,r.toDisplayString(r.unref(n)("sprintMetrics.manDaysPlanned")),1),r.createElementVNode("div",$$,[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",B$,[r.createElementVNode("span",M$,r.toDisplayString(T(c(S.id)))+" MD planned ",1),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(u(S.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(T(B.plannedManDays))+" MD",1)]))),128))])):r.createCommentVNode("",!0)],2)])]),r.createElementVNode("div",L$,[r.createElementVNode("div",O$,r.toDisplayString(r.unref(n)("sprintMetrics.estimatedPoints")),1),r.createElementVNode("div",V$,r.toDisplayString(T(p(S.id)))+" pts ",1)]),r.createElementVNode("div",I$,[r.createElementVNode("div",R$,r.toDisplayString(r.unref(n)("sprintMetrics.targetVelocity")),1),r.createElementVNode("div",P$,[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:B=>g(S.id,B.target.value)},null,40,F$),D[10]||(D[10]=r.createElementVNode("span",{class:"ao-sprint-metrics__unit"},"pts / MD",-1))]),m(S.id)>0?(r.openBlock(),r.createElementBlock("div",z$,r.toDisplayString(r.unref(n)("sprintMetrics.currentlyEstimated"))+": "+r.toDisplayString(A(m(S.id))),1)):r.createCommentVNode("",!0)]),r.createElementVNode("div",q$,[r.createElementVNode("div",j$,r.toDisplayString(r.unref(n)("sprintMetrics.planningProgress")),1),r.createElementVNode("div",U$,[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))]))}}),D2e="",W$=te(H$,[["__scopeId","data-v-98b799f1"]]),Z$={class:"ao-feed"},G$={class:"ao-feed__filters"},K$={class:"ao-feed__body"},uu=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}=Vt(),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],[Ee,je])=>{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,je)},{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(),Ee=((De=o.activities)==null?void 0:De.length)??0,je=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:Ee+1}),rank:me.format(),...je?{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),Ee=((Pe=o.activities)==null?void 0:Pe.length)??0,je=o.feedMode==="dev",Me={name:n("activity.defaultName",{idx:Ee+1}),rank:me,...je?{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)},$=F=>{f.value=!1,a("clear:searchText",F)},B=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),xe=r.computed(()=>R.value?cr.dev:Re.dev),ze=r.computed(()=>Re.project),Ce=r.computed(()=>Re.mapping);return r.watch(re,F=>{F==="feed"?ne.push({name:ie.value}):F==="dev"?ne.push({name:xe.value}):F==="overview"?ne.push({name:ze.value}):F==="mapping"&&ne.push({name:Ce.value})}),(F,le)=>{var be;return r.openBlock(),r.createElementBlock("div",Z$,[r.createVNode(ba,null,{primary:r.withCtx(()=>[r.createElementVNode("div",G$,[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(l$,{"model-value":t.searchText,placeholder:F.$t("feed.search.placeholder"),class:"ao-feed__search","onUpdate:modelValue":S,onClear:$},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:Ee})=>[r.createVNode(In,{"user-name":me.label,"avatar-url":me.avatar,"is-closable":!0,onClose:je=>Ee(me,je)},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(W$,{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",K$,[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(l.value,me=>(r.openBlock(),r.createBlock(a$,{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(Jd,{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:B,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)]))])}}}),$2e="",Y$={class:"ao-project-mapping"},J$={class:"ao-project-mapping-mapping__body"},X$={class:"ao-project-mapping-mapping__phases"},Q$={key:0,class:"ao-project-mapping-mapping__image-wrapper"},eB=["src","alt"],tB=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}=Vt(),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",Y$,[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",J$,[r.createElementVNode("div",X$,[r.createVNode(lu,{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",Q$,[r.createElementVNode("img",{class:"architecture-image",src:t.project.architectureImage.url,alt:r.unref(n)("architectureImage.alt")},null,8,eB)])):r.createCommentVNode("",!0)])])],16),(r.openBlock(),r.createBlock(r.Teleport,{to:"body"},[f.value?(r.openBlock(),r.createBlock($g,{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(Dg,{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)}}}),B2e="",lr={TEMPLATES:"templates",TEMPLATE_DETAILS:"template_details",TEMPLATES_LIST:"templates_list"},nB=(t,e={})=>[{path:t,name:lr.TEMPLATES,redirect:{name:lr.TEMPLATES_LIST},...e,children:[{path:"",name:lr.TEMPLATES_LIST,component:Mg},{path:":templateId/:phaseId?/:milestoneId?/:activityId?",name:lr.TEMPLATE_DETAILS,component:Tg,props:!0}]}],Re={project:"AoProject",feed:"AoProjectFeed",dev:"AoProjectDev",mapping:"AoProjectMapping",milestone:"AoMilestone",activity:"AoActivity"},cr={feed:"ActivityFeed",dev:"ActivityFeedDev"},oB=(t,e={})=>[{path:t,...e,redirect:{name:Re.project},children:[{path:"",name:Re.project,component:KN,props:!0,children:[{path:":phaseId/:milestoneId",name:Re.milestone,component:Bg,props:!0},{path:":phaseId/:milestoneId/:activityId",name:Re.activity,props:{default:!0,modal:!0},components:{default:Bg,modal:RD}}]},{path:"feed",name:Re.feed,component:uu,props:n=>({...n.params,feedMode:"standard"})},{path:"dev",name:Re.dev,component:uu,props:n=>({...n.params,feedMode:"dev"})},{path:"mapping",name:Re.mapping,component:tB,props:!0}]}],rB={class:"ao-templates"},Mg=r.defineComponent({__name:"AoTemplatesList",props:{templates:{}},emits:["addTemplate","updateTemplates","updateItem","removeItem"],setup(t,{emit:e}){const{t:n}=Vt(),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:He.TEMPLATES,id:d,templateId:d,data:{name:u}})},l=(d,u)=>{a("removeItem",{itemType:He.TEMPLATES,templateId:d,data:{id:d,...u?{name:u}:{}}})},c=d=>{if(d.moved){const u=ha(d,o.templates??[]);a("updateItem",{itemType:He.TEMPLATES,id:d.moved.element.id,templateId:d.moved.element.id,data:{rank:u}})}};return(d,u)=>(r.openBlock(),r.createElementBlock("div",rB,[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(V5,{id:p.id,title:p.name,phases:p.phases,milestones:(f=p.phases)!=null&&f.length?r.unref(i5)(p.phases):0,activities:p.phases?r.unref(s5)(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"])]))}}),M2e="",aB={class:"ao-field__label"},Lg=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",aB,r.toDisplayString(t.label),1),r.renderSlot(e.$slots,"default")],2))}}),iB=["type","value","disabled","readonly"],sB=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(Lg,{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,iB)]),_:1},8,["label"]))}}),lB={class:"ao-field"},cB={class:"ao-field__label"},dB=["checked","disabled"],Og=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",lB,[r.createElementVNode("span",cB,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,dB)]))}}),uB={class:"ao-audit-config"},pB={key:0,class:"ao-audit-config__loading"},fB={key:1,class:"ao-audit-config__error"},mB={key:2,class:"ao-audit-config__empty"},hB={key:3,class:"ao-audit-config__table"},gB={class:"ao-audit-config__th ao-audit-config__th--table"},bB={class:"ao-audit-config__th ao-audit-config__th--audit"},_B={class:"ao-audit-config__th ao-audit-config__th--excluded"},yB={class:"ao-audit-config__td ao-audit-config__td--table"},vB={class:"ao-audit-config__table-name"},CB={key:0,class:"ao-audit-config__schema"},kB={class:"ao-audit-config__td ao-audit-config__td--audit"},wB={class:"ao-audit-config__checkbox"},xB={class:"ao-audit-config__td ao-audit-config__td--excluded"},EB={key:0,class:"ao-audit-config__disabled-note"},SB={class:"ao-audit-config__option"},AB=["title"],TB={key:0,class:"ao-audit-config__all-tracked"},NB=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}=Vt(),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",uB,[t.loading?(r.openBlock(),r.createElementBlock("div",pB,r.toDisplayString(r.unref(a)("audit.loading")),1)):t.error?(r.openBlock(),r.createElementBlock("div",fB,r.toDisplayString(r.unref(a)("audit.error",{message:t.error})),1)):i.value.length?(r.openBlock(),r.createElementBlock("table",hB,[r.createElementVNode("thead",null,[r.createElementVNode("tr",null,[r.createElementVNode("th",gB,r.toDisplayString(r.unref(a)("audit.tableHeader")),1),r.createElementVNode("th",bB,r.toDisplayString(r.unref(a)("audit.auditHeader")),1),r.createElementVNode("th",_B,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",yB,[r.createElementVNode("span",vB,r.toDisplayString(p.tableName),1),p.schemaName!=="public"?(r.openBlock(),r.createElementBlock("span",CB,r.toDisplayString(p.schemaName),1)):r.createCommentVNode("",!0)]),r.createElementVNode("td",kB,[r.createElementVNode("div",wB,[r.createVNode(Og,{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",xB,[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",SB,[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,AB)):r.createCommentVNode("",!0)])]),placeholder:r.withCtx(()=>[p.excludeColumns.length===0?(r.openBlock(),r.createElementBlock("span",TB,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",EB,r.toDisplayString(r.unref(a)("audit.auditDisabled")),1))])]))),128))])])):(r.openBlock(),r.createElementBlock("div",mB,r.toDisplayString(r.unref(a)("audit.empty")),1))]))}}),L2e="",DB={class:"ao-sprint-list"},$B={class:"ao-sprint-list__header"},BB={class:"ao-sprint-list__title-group"},MB={class:"ao-sprint-list__count"},LB={class:"ao-sprint-list__actions"},OB={key:0,class:"ao-sprint-list__toggle"},VB={key:0,class:"ao-sprint-list__row ao-sprint-list__row--editing"},IB=["title","onClick"],RB=["placeholder"],PB={class:"ao-sprint-list__date-fields"},FB={class:"ao-sprint-list__row-actions"},zB={class:"ao-sprint-list__rows"},qB={class:"ao-sprint-list__identity"},jB={class:"ao-sprint-list__name-group"},UB={class:"ao-sprint-list__name"},HB={key:0,class:"ao-sprint-list__archived-badge"},WB={class:"ao-sprint-list__dates"},ZB={key:0,class:"ao-sprint-list__row-actions"},GB=["title","onClick"],KB={class:"ao-sprint-list__date-fields"},YB={class:"ao-sprint-list__row-actions"},JB={key:1,class:"ao-sprint-list__empty"},XB=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}=Vt(),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=>yl(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",DB,[r.createElementVNode("div",$B,[r.createElementVNode("div",BB,[r.createElementVNode("h3",null,r.toDisplayString(r.unref(a)("sprint.planning")),1),r.createElementVNode("span",MB,r.toDisplayString(s.value.length),1)]),r.createElementVNode("div",LB,[t.sprints.some(x=>!x.active)?(r.openBlock(),r.createElementBlock("label",OB,[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",VB,[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,IB)]),_: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,RB),[[r.vModelText,_.value.name]]),r.createElementVNode("div",PB,[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",FB,[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",zB,[(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",qB,[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",jB,[r.createElementVNode("span",UB,r.toDisplayString(x.name),1),x.active?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("span",HB,r.toDisplayString(r.unref(a)("sprint.archived")),1))])]),r.createElementVNode("div",WB,[r.createVNode(ke,{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",ZB,[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:$=>D($.currentTarget)},null,12,GB)]),_: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",KB,[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",YB,[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",JB,r.toDisplayString(r.unref(a)("sprint.noSprints")),1)):r.createCommentVNode("",!0)]))}}),O2e="",QB=te(XB,[["__scopeId","data-v-698944ea"]]);ge.AoAuditConfigTable=NB,ge.AoAvatar=In,ge.AoCardFeed=cu,ge.AoCheckboxField=Og,ge.AoColorPicker=Xr,ge.AoFeed=uu,ge.AoField=Lg,ge.AoInputField=sB,ge.AoMultiselect=yt,ge.AoProjectPhases=lu,ge.AoSprintList=QB,ge.AoTabBar=ii,ge.AoTemplateDetails=Tg,ge.AoTemplates=Gg,ge.AoTemplatesList=Mg,ge.EstimationUnit=wu,ge.TemplateItemTypeEnum=ku,ge.activityFeedRoutes=cr,ge.activityFeedStatus=vv,ge.durationTypes=yv,ge.feedFilterTypes=ro,ge.getProjectOverviewRoutes=oB,ge.getTemplateRoutes=nB,ge.listUpdateTypes=Cv,ge.milestoneStatus=ra,ge.projectOverviewRoutes=Re,ge.ruleComparators=yu,ge.ruleDurationUnits=Cu,ge.ruleTriggerTypes=vu,ge.templateItemType=He,ge.templateRouteNames=lr,Object.defineProperty(ge,Symbol.toStringTag,{value:"Module"})});
|