diff --git a/dist/ActivityCommentAction-KqoFLlsS.chunk.mjs b/dist/ActivityCommentAction-DWdaVw2X.chunk.mjs
similarity index 90%
rename from dist/ActivityCommentAction-KqoFLlsS.chunk.mjs
rename to dist/ActivityCommentAction-DWdaVw2X.chunk.mjs
index 06f97a2c67033..234ffddb5eade 100644
--- a/dist/ActivityCommentAction-KqoFLlsS.chunk.mjs
+++ b/dist/ActivityCommentAction-DWdaVw2X.chunk.mjs
@@ -1,2 +1,2 @@
-import{b as t}from"./index-CAjMXx18.chunk.mjs";import{t as m}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{C as e,a as p}from"./CommentView-D4oJ1b3g.chunk.mjs";import{l as i}from"./activity-C7pDSEJs.chunk.mjs";import{b as a,e as s,r as n,o as c,f as u,m as l}from"./Web-0o0ZsUfo.chunk.mjs";import"./mdi-DGcEJzSa.chunk.mjs";import"./ArrowRight-Bs7cnqGk.chunk.mjs";import"./MapMarkerOutline-BL-F_JRn.chunk.mjs";import"./NcIconSvgWrapper-BVQJsMAt.chunk.mjs";import"./Link-BG7j_u2w.chunk.mjs";import"./Check-QdDOQaCe.chunk.mjs";import"./_plugin-vue_export-helper-DPNLE7fV.chunk.mjs";import"./star-outline-3oU1ox7V.chunk.mjs";import"./Plus-BvFExD7G.chunk.mjs";import"./NcModal-sd2PYzev.chunk.mjs";import"./index-DsbwZBFO.chunk.mjs";import"./NcActionButton-NiLnxAD4.chunk.mjs";import"./star-DcL0I5g8.chunk.mjs";import"./NcAvatar-BRdLWCVs.chunk.mjs";import"./PencilOutline-Cr5fPBe7.chunk.mjs";import"./autolink-BflwX-7S.chunk.mjs";import"./colors-Cc9RSgrJ.chunk.mjs";import"./NcUserStatusIcon-DRorX2P9.chunk.mjs";import"./NcActionLink-BZz5KtLo.chunk.mjs";import"./NcActionRouter-BRhYA82X.chunk.mjs";import"./MenuUp-BstQL5et.chunk.mjs";import"./history-dpxDOhiN.chunk.mjs";import"./GetComments-DzpQCqQO.chunk.mjs";import"./dav-ajmPPC2W.chunk.mjs";import"./previewUtils-BiOsv7h1.chunk.mjs";const d=a({components:{CommentEntry:p},mixins:[e],props:{reloadCallback:{type:Function,required:!0}},methods:{onNewComment(){try{this.reloadCallback()}catch(o){t(m("comments","Could not reload comments")),i.error("Could not reload comments",{error:o})}}}});function C(o,f,y,b,w,N){const r=n("CommentEntry");return c(),u(r,l(o.editorData,{autoComplete:o.autoComplete,resourceType:o.resourceType,editor:!0,userData:o.userData,resourceId:o.resourceId,class:"comments-action",onNew:o.onNewComment}),null,16,["autoComplete","resourceType","userData","resourceId","onNew"])}const X=s(d,[["render",C],["__scopeId","data-v-099b6b12"]]);export{X as default};
-//# sourceMappingURL=ActivityCommentAction-KqoFLlsS.chunk.mjs.map
+import{b as t}from"./index-CAjMXx18.chunk.mjs";import{t as m}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{C as e,a as p}from"./CommentView-BhF0LoGw.chunk.mjs";import{l as i}from"./activity-C7pDSEJs.chunk.mjs";import{b as a,e as s,r as n,o as c,f as u,m as l}from"./Web-0o0ZsUfo.chunk.mjs";import"./mdi-DGcEJzSa.chunk.mjs";import"./ArrowRight-Bs7cnqGk.chunk.mjs";import"./MapMarkerOutline-BL-F_JRn.chunk.mjs";import"./NcIconSvgWrapper-BVQJsMAt.chunk.mjs";import"./Link-BG7j_u2w.chunk.mjs";import"./Check-QdDOQaCe.chunk.mjs";import"./_plugin-vue_export-helper-DPNLE7fV.chunk.mjs";import"./star-outline-3oU1ox7V.chunk.mjs";import"./Plus-BvFExD7G.chunk.mjs";import"./NcModal-sd2PYzev.chunk.mjs";import"./index-DsbwZBFO.chunk.mjs";import"./NcActionButton-NiLnxAD4.chunk.mjs";import"./star-DcL0I5g8.chunk.mjs";import"./NcAvatar-BRdLWCVs.chunk.mjs";import"./PencilOutline-Cr5fPBe7.chunk.mjs";import"./autolink-BflwX-7S.chunk.mjs";import"./colors-Cc9RSgrJ.chunk.mjs";import"./NcUserStatusIcon-DRorX2P9.chunk.mjs";import"./NcActionLink-BZz5KtLo.chunk.mjs";import"./NcActionRouter-BRhYA82X.chunk.mjs";import"./MenuUp-BstQL5et.chunk.mjs";import"./history-dpxDOhiN.chunk.mjs";import"./GetComments-DJtGp6Zq.chunk.mjs";import"./dav-ajmPPC2W.chunk.mjs";import"./previewUtils-BiOsv7h1.chunk.mjs";const d=a({components:{CommentEntry:p},mixins:[e],props:{reloadCallback:{type:Function,required:!0}},methods:{onNewComment(){try{this.reloadCallback()}catch(o){t(m("comments","Could not reload comments")),i.error("Could not reload comments",{error:o})}}}});function C(o,f,y,b,w,N){const r=n("CommentEntry");return c(),u(r,l(o.editorData,{autoComplete:o.autoComplete,resourceType:o.resourceType,editor:!0,userData:o.userData,resourceId:o.resourceId,class:"comments-action",onNew:o.onNewComment}),null,16,["autoComplete","resourceType","userData","resourceId","onNew"])}const X=s(d,[["render",C],["__scopeId","data-v-099b6b12"]]);export{X as default};
+//# sourceMappingURL=ActivityCommentAction-DWdaVw2X.chunk.mjs.map
diff --git a/dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.license b/dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.license
similarity index 100%
rename from dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.license
rename to dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.license
diff --git a/dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.map b/dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.map
similarity index 96%
rename from dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.map
rename to dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.map
index dec4ceb184dc1..780ff63456136 100644
--- a/dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.map
+++ b/dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.map
@@ -1 +1 @@
-{"version":3,"file":"ActivityCommentAction-KqoFLlsS.chunk.mjs","sources":["../build/frontend/apps/comments/src/views/ActivityCommentAction.vue"],"sourcesContent":["\n\n\n\t\n\n\n\n\n\n"],"names":["_sfc_main","defineComponent","CommentEntry","CommentView","error","showError","t","logger","_createBlock","_component_CommentEntry","_mergeProps","_ctx"],"mappings":"0wCAyBA,MAAAA,EAAeC,EAAgB,CAC9B,WAAY,CACX,aAAAC,CAAA,EAGD,OAAQ,CAACC,CAAW,EACpB,MAAO,CACN,eAAgB,CACf,KAAM,SACN,SAAU,EAAA,CACX,EAGD,QAAS,CACR,cAAe,CACd,GAAI,CAEH,KAAK,eAAA,CACN,OAASC,EAAO,CACfC,EAAUC,EAAE,WAAY,2BAA2B,CAAC,EACpDC,EAAO,MAAM,4BAA6B,CAAE,MAAAH,CAAA,CAAO,CACpD,CACD,CAAA,CAEF,CAAC,+DA3CAI,EAQuBC,EARvBC,EAQuBC,EAPd,WAAU,CACjB,aAAcA,EAAA,aACd,aAAcA,EAAA,aACd,OAAQ,GACR,SAAUA,EAAA,SACV,WAAYA,EAAA,WACb,MAAM,kBACL,MAAKA,EAAA,YAAA,CAAA,EAAA,KAAA,GAAA,CAAA,eAAA,eAAA,WAAA,aAAA,OAAA,CAAA"}
\ No newline at end of file
+{"version":3,"file":"ActivityCommentAction-DWdaVw2X.chunk.mjs","sources":["../build/frontend/apps/comments/src/views/ActivityCommentAction.vue"],"sourcesContent":["\n\n\n\t\n\n\n\n\n\n"],"names":["_sfc_main","defineComponent","CommentEntry","CommentView","error","showError","t","logger","_createBlock","_component_CommentEntry","_mergeProps","_ctx"],"mappings":"0wCAyBA,MAAAA,EAAeC,EAAgB,CAC9B,WAAY,CACX,aAAAC,CAAA,EAGD,OAAQ,CAACC,CAAW,EACpB,MAAO,CACN,eAAgB,CACf,KAAM,SACN,SAAU,EAAA,CACX,EAGD,QAAS,CACR,cAAe,CACd,GAAI,CAEH,KAAK,eAAA,CACN,OAASC,EAAO,CACfC,EAAUC,EAAE,WAAY,2BAA2B,CAAC,EACpDC,EAAO,MAAM,4BAA6B,CAAE,MAAAH,CAAA,CAAO,CACpD,CACD,CAAA,CAEF,CAAC,+DA3CAI,EAQuBC,EARvBC,EAQuBC,EAPd,WAAU,CACjB,aAAcA,EAAA,aACd,aAAcA,EAAA,aACd,OAAQ,GACR,SAAUA,EAAA,SACV,WAAYA,EAAA,WACb,MAAM,kBACL,MAAKA,EAAA,YAAA,CAAA,EAAA,KAAA,GAAA,CAAA,eAAA,eAAA,WAAA,aAAA,OAAA,CAAA"}
\ No newline at end of file
diff --git a/dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.map.license b/dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.map.license
similarity index 100%
rename from dist/ActivityCommentAction-KqoFLlsS.chunk.mjs.map.license
rename to dist/ActivityCommentAction-DWdaVw2X.chunk.mjs.map.license
diff --git a/dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs b/dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs
similarity index 91%
rename from dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs
rename to dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs
index 1ced7703fecff..50953f662075a 100644
--- a/dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs
+++ b/dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs
@@ -1,2 +1,2 @@
-import{t as s}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{C as p,a as i}from"./CommentView-D4oJ1b3g.chunk.mjs";import{e as a,r as n,o as c,f as u,m as d}from"./Web-0o0ZsUfo.chunk.mjs";import"./_plugin-vue_export-helper-DPNLE7fV.chunk.mjs";import"./star-outline-3oU1ox7V.chunk.mjs";import"./NcActionButton-NiLnxAD4.chunk.mjs";import"./Check-QdDOQaCe.chunk.mjs";import"./NcIconSvgWrapper-BVQJsMAt.chunk.mjs";import"./Link-BG7j_u2w.chunk.mjs";import"./NcModal-sd2PYzev.chunk.mjs";import"./ArrowRight-Bs7cnqGk.chunk.mjs";import"./MapMarkerOutline-BL-F_JRn.chunk.mjs";import"./star-DcL0I5g8.chunk.mjs";import"./NcAvatar-BRdLWCVs.chunk.mjs";import"./PencilOutline-Cr5fPBe7.chunk.mjs";import"./autolink-BflwX-7S.chunk.mjs";import"./colors-Cc9RSgrJ.chunk.mjs";import"./NcUserStatusIcon-DRorX2P9.chunk.mjs";import"./NcActionLink-BZz5KtLo.chunk.mjs";import"./NcActionRouter-BRhYA82X.chunk.mjs";import"./MenuUp-BstQL5et.chunk.mjs";import"./Plus-BvFExD7G.chunk.mjs";import"./mdi-DGcEJzSa.chunk.mjs";import"./history-dpxDOhiN.chunk.mjs";import"./index-CAjMXx18.chunk.mjs";import"./index-DsbwZBFO.chunk.mjs";import"./activity-C7pDSEJs.chunk.mjs";import"./GetComments-DzpQCqQO.chunk.mjs";import"./dav-ajmPPC2W.chunk.mjs";import"./previewUtils-BiOsv7h1.chunk.mjs";const l={name:"ActivityCommentEntry",components:{CommentEntry:i},mixins:[p],props:{comment:{type:Object,required:!0},reloadCallback:{type:Function,required:!0}},data(){return{commentMessage:""}},watch:{comment(){this.commentMessage=this.comment.props.message}},mounted(){this.commentMessage=this.comment.props.message},methods:{t:s}};function g(t,e,o,y,m,C){const r=n("CommentEntry");return c(),u(r,d({ref:"comment",tag:"li"},o.comment.props,{autoComplete:t.autoComplete,resourceType:t.resourceType,message:m.commentMessage,resourceId:t.resourceId,userData:t.genMentionsData(o.comment.props.mentions),class:"comments-activity",onDelete:e[0]||(e[0]=f=>o.reloadCallback())}),null,16,["autoComplete","resourceType","message","resourceId","userData"])}const V=a(l,[["render",g],["__scopeId","data-v-2d51dbfd"]]);export{V as default};
-//# sourceMappingURL=ActivityCommentEntry-Ci5R0sO4.chunk.mjs.map
+import{t as s}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{C as p,a as i}from"./CommentView-BhF0LoGw.chunk.mjs";import{e as a,r as n,o as c,f as u,m as d}from"./Web-0o0ZsUfo.chunk.mjs";import"./_plugin-vue_export-helper-DPNLE7fV.chunk.mjs";import"./star-outline-3oU1ox7V.chunk.mjs";import"./NcActionButton-NiLnxAD4.chunk.mjs";import"./Check-QdDOQaCe.chunk.mjs";import"./NcIconSvgWrapper-BVQJsMAt.chunk.mjs";import"./Link-BG7j_u2w.chunk.mjs";import"./NcModal-sd2PYzev.chunk.mjs";import"./ArrowRight-Bs7cnqGk.chunk.mjs";import"./MapMarkerOutline-BL-F_JRn.chunk.mjs";import"./star-DcL0I5g8.chunk.mjs";import"./NcAvatar-BRdLWCVs.chunk.mjs";import"./PencilOutline-Cr5fPBe7.chunk.mjs";import"./autolink-BflwX-7S.chunk.mjs";import"./colors-Cc9RSgrJ.chunk.mjs";import"./NcUserStatusIcon-DRorX2P9.chunk.mjs";import"./NcActionLink-BZz5KtLo.chunk.mjs";import"./NcActionRouter-BRhYA82X.chunk.mjs";import"./MenuUp-BstQL5et.chunk.mjs";import"./Plus-BvFExD7G.chunk.mjs";import"./mdi-DGcEJzSa.chunk.mjs";import"./history-dpxDOhiN.chunk.mjs";import"./index-CAjMXx18.chunk.mjs";import"./index-DsbwZBFO.chunk.mjs";import"./activity-C7pDSEJs.chunk.mjs";import"./GetComments-DJtGp6Zq.chunk.mjs";import"./dav-ajmPPC2W.chunk.mjs";import"./previewUtils-BiOsv7h1.chunk.mjs";const l={name:"ActivityCommentEntry",components:{CommentEntry:i},mixins:[p],props:{comment:{type:Object,required:!0},reloadCallback:{type:Function,required:!0}},data(){return{commentMessage:""}},watch:{comment(){this.commentMessage=this.comment.props.message}},mounted(){this.commentMessage=this.comment.props.message},methods:{t:s}};function g(t,e,o,y,m,C){const r=n("CommentEntry");return c(),u(r,d({ref:"comment",tag:"li"},o.comment.props,{autoComplete:t.autoComplete,resourceType:t.resourceType,message:m.commentMessage,resourceId:t.resourceId,userData:t.genMentionsData(o.comment.props.mentions),class:"comments-activity",onDelete:e[0]||(e[0]=f=>o.reloadCallback())}),null,16,["autoComplete","resourceType","message","resourceId","userData"])}const V=a(l,[["render",g],["__scopeId","data-v-2d51dbfd"]]);export{V as default};
+//# sourceMappingURL=ActivityCommentEntry-BhtrC8kL.chunk.mjs.map
diff --git a/dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.license b/dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.license
similarity index 100%
rename from dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.license
rename to dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.license
diff --git a/dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.map b/dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.map
similarity index 97%
rename from dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.map
rename to dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.map
index 34fbb57d76726..3a4e718499c85 100644
--- a/dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.map
+++ b/dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.map
@@ -1 +1 @@
-{"version":3,"file":"ActivityCommentEntry-Ci5R0sO4.chunk.mjs","sources":["../build/frontend/apps/comments/src/views/ActivityCommentEntry.vue"],"sourcesContent":["\n\n\n\t\n\n\n\n\n\n"],"names":["_sfc_main","CommentEntry","CommentView","t","_openBlock","_createBlock","_component_CommentEntry","_mergeProps","$props","_ctx","$data","_cache"],"mappings":"2uCA0BA,MAAAA,EAAe,CACd,KAAM,uBAEN,WAAY,CACX,aAAAC,CAAA,EAGD,OAAQ,CAACC,CAAW,EACpB,MAAO,CACN,QAAS,CACR,KAAM,OACN,SAAU,EAAA,EAGX,eAAgB,CACf,KAAM,SACN,SAAU,EAAA,CACX,EAGD,MAAO,CACN,MAAO,CACN,eAAgB,EAAA,CAElB,EAEA,MAAO,CACN,SAAU,CACT,KAAK,eAAiB,KAAK,QAAQ,MAAM,OAC1C,CAAA,EAGD,SAAU,CACT,KAAK,eAAiB,KAAK,QAAQ,MAAM,OAC1C,EAEA,QAAS,CAAA,EACRC,CAAA,CAEF,oDA3DC,OAAAC,EAAA,EAAAC,EAU8BC,EAV9BC,EAU8B,CAT7B,IAAI,UACJ,IAAI,IAAA,EACIC,UAAQ,MAAK,CACpB,aAAcC,EAAA,aACd,aAAcA,EAAA,aACd,QAASC,EAAA,eACT,WAAYD,EAAA,WACZ,SAAUA,EAAA,gBAAgBD,EAAA,QAAQ,MAAM,QAAQ,EACjD,MAAM,oBACL,SAAMG,eAAEH,EAAA,eAAA,EAAc,CAAA,EAAA,KAAA,GAAA,CAAA,eAAA,eAAA,UAAA,aAAA,UAAA,CAAA"}
\ No newline at end of file
+{"version":3,"file":"ActivityCommentEntry-BhtrC8kL.chunk.mjs","sources":["../build/frontend/apps/comments/src/views/ActivityCommentEntry.vue"],"sourcesContent":["\n\n\n\t\n\n\n\n\n\n"],"names":["_sfc_main","CommentEntry","CommentView","t","_openBlock","_createBlock","_component_CommentEntry","_mergeProps","$props","_ctx","$data","_cache"],"mappings":"2uCA0BA,MAAAA,EAAe,CACd,KAAM,uBAEN,WAAY,CACX,aAAAC,CAAA,EAGD,OAAQ,CAACC,CAAW,EACpB,MAAO,CACN,QAAS,CACR,KAAM,OACN,SAAU,EAAA,EAGX,eAAgB,CACf,KAAM,SACN,SAAU,EAAA,CACX,EAGD,MAAO,CACN,MAAO,CACN,eAAgB,EAAA,CAElB,EAEA,MAAO,CACN,SAAU,CACT,KAAK,eAAiB,KAAK,QAAQ,MAAM,OAC1C,CAAA,EAGD,SAAU,CACT,KAAK,eAAiB,KAAK,QAAQ,MAAM,OAC1C,EAEA,QAAS,CAAA,EACRC,CAAA,CAEF,oDA3DC,OAAAC,EAAA,EAAAC,EAU8BC,EAV9BC,EAU8B,CAT7B,IAAI,UACJ,IAAI,IAAA,EACIC,UAAQ,MAAK,CACpB,aAAcC,EAAA,aACd,aAAcA,EAAA,aACd,QAASC,EAAA,eACT,WAAYD,EAAA,WACZ,SAAUA,EAAA,gBAAgBD,EAAA,QAAQ,MAAM,QAAQ,EACjD,MAAM,oBACL,SAAMG,eAAEH,EAAA,eAAA,EAAc,CAAA,EAAA,KAAA,GAAA,CAAA,eAAA,eAAA,UAAA,aAAA,UAAA,CAAA"}
\ No newline at end of file
diff --git a/dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.map.license b/dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.map.license
similarity index 100%
rename from dist/ActivityCommentEntry-Ci5R0sO4.chunk.mjs.map.license
rename to dist/ActivityCommentEntry-BhtrC8kL.chunk.mjs.map.license
diff --git a/dist/CommentView-D4oJ1b3g.chunk.mjs b/dist/CommentView-BhF0LoGw.chunk.mjs
similarity index 99%
rename from dist/CommentView-D4oJ1b3g.chunk.mjs
rename to dist/CommentView-BhF0LoGw.chunk.mjs
index ad4861aed34bc..9fdb7dc133eda 100644
--- a/dist/CommentView-D4oJ1b3g.chunk.mjs
+++ b/dist/CommentView-BhF0LoGw.chunk.mjs
@@ -1,5 +1,5 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.OC.filePath('', '', 'dist/index-DMO_O46v.chunk.mjs'),window.OC.filePath('', '', 'dist/Link-BG7j_u2w.chunk.mjs'),window.OC.filePath('', '', 'dist/Web-0o0ZsUfo.chunk.mjs'),window.OC.filePath('', '', 'dist/translation-DoG5ZELJ-DosHP9c_.chunk.mjs'),window.OC.filePath('', '', 'dist/_plugin-vue_export-helper-DPNLE7fV.chunk.mjs'),window.OC.filePath('', '', 'dist/star-outline-3oU1ox7V.chunk.mjs'),window.OC.filePath('', '', 'dist/NcAvatar-BRdLWCVs.chunk.mjs'),window.OC.filePath('', '', 'dist/PencilOutline-Cr5fPBe7.chunk.mjs'),window.OC.filePath('', '', 'dist/NcModal-sd2PYzev.chunk.mjs'),window.OC.filePath('', '', 'dist/Check-QdDOQaCe.chunk.mjs'),window.OC.filePath('', '', 'dist/common-Check-3plNpBrB.chunk.css'),window.OC.filePath('', '', 'dist/ArrowRight-Bs7cnqGk.chunk.mjs'),window.OC.filePath('', '', 'dist/NcIconSvgWrapper-BVQJsMAt.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcIconSvgWrapper-C_oBIsvc.chunk.css'),window.OC.filePath('', '', 'dist/MapMarkerOutline-BL-F_JRn.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcModal-Cclh_O_-.chunk.css'),window.OC.filePath('', '', 'dist/autolink-BflwX-7S.chunk.mjs'),window.OC.filePath('', '', 'dist/common-autolink-B8CEsDGb.chunk.css'),window.OC.filePath('', '', 'dist/colors-Cc9RSgrJ.chunk.mjs'),window.OC.filePath('', '', 'dist/NcUserStatusIcon-DRorX2P9.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcUserStatusIcon-Bq_6hmXG.chunk.css'),window.OC.filePath('', '', 'dist/NcActionButton-NiLnxAD4.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcActionButton-BQBDvDX2.chunk.css'),window.OC.filePath('', '', 'dist/NcActionLink-BZz5KtLo.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcActionLink-iJnZg6ii.chunk.css'),window.OC.filePath('', '', 'dist/NcActionRouter-BRhYA82X.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcActionRouter-C1KErZDl.chunk.css'),window.OC.filePath('', '', 'dist/MenuUp-BstQL5et.chunk.mjs'),window.OC.filePath('', '', 'dist/common-MenuUp-BzbAkUEn.chunk.css'),window.OC.filePath('', '', 'dist/Plus-BvFExD7G.chunk.mjs'),window.OC.filePath('', '', 'dist/common-Plus-BYHcrfvW.chunk.css'),window.OC.filePath('', '', 'dist/common-NcAvatar-o8Woel4F.chunk.css'),window.OC.filePath('', '', 'dist/emoji-CT5vTUpm.chunk.mjs'),window.OC.filePath('', '', 'dist/NcRichText-DYYEZNEt.chunk.mjs'),window.OC.filePath('', '', 'dist/NcCheckboxRadioSwitch-BqB4BfYn.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcCheckboxRadioSwitch-BAaFbykd.chunk.css'),window.OC.filePath('', '', 'dist/common-NcRichText-DVtX8ulO.chunk.css'),window.OC.filePath('', '', 'dist/index-B28D1CUs.chunk.mjs'),window.OC.filePath('', '', 'dist/index-CHrcTZDr.chunk.mjs'),window.OC.filePath('', '', 'dist/NcTextField.vue_vue_type_script_setup_true_lang-NycF1YRW.chunk.mjs'),window.OC.filePath('', '', 'dist/NcInputField-CTHzsNT3.chunk.mjs'),window.OC.filePath('', '', 'dist/common-NcInputField-B5YBBomo.chunk.css'),window.OC.filePath('', '', 'dist/common-index-CRfKBhKV.chunk.css'),window.OC.filePath('', '', 'dist/Folder-BxcsshGI.chunk.mjs'),window.OC.filePath('', '', 'dist/common-Folder-Don1d5Bd.chunk.css'),window.OC.filePath('', '', 'dist/common-index-Bkq_iXjX.chunk.css'),window.OC.filePath('', '', 'dist/common-index-DBjOe6uk.chunk.css')])))=>i.map(i=>d[i]);
-import{e as A,o as c,j as y,g as p,t as g,k as C,m as F,V as W,a9 as S,Z as H,a as D,_ as L,r as n,S as K,U as Z,f as u,w as m,h as d,I as G,C as I,N as J,n as T,K as Q,b as X}from"./Web-0o0ZsUfo.chunk.mjs";import{a as f,c as Y}from"./_plugin-vue_export-helper-DPNLE7fV.chunk.mjs";import{t as ee}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{N as te}from"./NcActionButton-NiLnxAD4.chunk.mjs";import{a as oe}from"./NcModal-sd2PYzev.chunk.mjs";import{N as ie}from"./star-DcL0I5g8.chunk.mjs";import{N as se}from"./NcAvatar-BRdLWCVs.chunk.mjs";import{N as ae}from"./Check-QdDOQaCe.chunk.mjs";import{_ as re}from"./mdi-DGcEJzSa.chunk.mjs";import{N as ne}from"./Plus-BvFExD7G.chunk.mjs";import{N as ce}from"./history-dpxDOhiN.chunk.mjs";import{A as me}from"./ArrowRight-Bs7cnqGk.chunk.mjs";import{c as x,P as de}from"./PencilOutline-Cr5fPBe7.chunk.mjs";import{b as N,T as le,i as ue}from"./index-CAjMXx18.chunk.mjs";import{l as h}from"./activity-C7pDSEJs.chunk.mjs";import{c as k,a as pe}from"./GetComments-DzpQCqQO.chunk.mjs";import{l as he}from"./star-outline-3oU1ox7V.chunk.mjs";const ge={name:"CloseIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ye=["aria-hidden","aria-label"],fe=["fill","width","height"],_e={d:"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"},be={key:0};function Ce(e,o,i,a,r,s){return c(),y("span",F(e.$attrs,{"aria-hidden":i.title?null:"true","aria-label":i.title,class:"material-design-icon close-icon",role:"img",onClick:o[0]||(o[0]=_=>e.$emit("click",_))}),[(c(),y("svg",{fill:i.fillColor,class:"material-design-icon__svg",width:i.size,height:i.size,viewBox:"0 0 24 24"},[p("path",_e,[i.title?(c(),y("title",be,g(i.title),1)):C("",!0)])],8,fe))],16,ye)}const Ie=A(ge,[["render",Ce]]);async function Ne(e,o,i){const a=["",e,o,i].join("/");await k.deleteFile(a)}async function De(e,o,i,a){const r=["",e,o,i].join("/");return await k.customRequest(r,{method:"PROPPATCH",data:`
+import{e as A,o as c,j as y,g as p,t as g,k as C,m as F,V as W,a9 as S,Z as H,a as D,_ as L,r as n,S as K,U as Z,f as u,w as m,h as d,I as G,C as I,N as J,n as T,K as Q,b as X}from"./Web-0o0ZsUfo.chunk.mjs";import{a as f,c as Y}from"./_plugin-vue_export-helper-DPNLE7fV.chunk.mjs";import{t as ee}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{N as te}from"./NcActionButton-NiLnxAD4.chunk.mjs";import{a as oe}from"./NcModal-sd2PYzev.chunk.mjs";import{N as ie}from"./star-DcL0I5g8.chunk.mjs";import{N as se}from"./NcAvatar-BRdLWCVs.chunk.mjs";import{N as ae}from"./Check-QdDOQaCe.chunk.mjs";import{_ as re}from"./mdi-DGcEJzSa.chunk.mjs";import{N as ne}from"./Plus-BvFExD7G.chunk.mjs";import{N as ce}from"./history-dpxDOhiN.chunk.mjs";import{A as me}from"./ArrowRight-Bs7cnqGk.chunk.mjs";import{c as x,P as de}from"./PencilOutline-Cr5fPBe7.chunk.mjs";import{b as N,T as le,i as ue}from"./index-CAjMXx18.chunk.mjs";import{l as h}from"./activity-C7pDSEJs.chunk.mjs";import{c as k,a as pe}from"./GetComments-DJtGp6Zq.chunk.mjs";import{l as he}from"./star-outline-3oU1ox7V.chunk.mjs";const ge={name:"CloseIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ye=["aria-hidden","aria-label"],fe=["fill","width","height"],_e={d:"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"},be={key:0};function Ce(e,o,i,a,r,s){return c(),y("span",F(e.$attrs,{"aria-hidden":i.title?null:"true","aria-label":i.title,class:"material-design-icon close-icon",role:"img",onClick:o[0]||(o[0]=_=>e.$emit("click",_))}),[(c(),y("svg",{fill:i.fillColor,class:"material-design-icon__svg",width:i.size,height:i.size,viewBox:"0 0 24 24"},[p("path",_e,[i.title?(c(),y("title",be,g(i.title),1)):C("",!0)])],8,fe))],16,ye)}const Ie=A(ge,[["render",Ce]]);async function Ne(e,o,i){const a=["",e,o,i].join("/");await k.deleteFile(a)}async function De(e,o,i,a){const r=["",e,o,i].join("/");return await k.customRequest(r,{method:"PROPPATCH",data:`
@@ -9,4 +9,4 @@ import{e as A,o as c,j as y,g as p,t as g,k as C,m as F,V as W,a9 as S,Z as H,a
`})}function v(e,o=1){const i=new DOMParser;let a=e;for(let r=0;r({idsInLimbo:[]}),actions:{addId(e){this.idsInLimbo.push(e)},removeId(e){const o=this.idsInLimbo.indexOf(e);o>-1&&this.idsInLimbo.splice(o,1)},checkForId(e){return this.idsInLimbo.includes(e)}}}),ke={props:{id:{type:Number,default:null},message:{type:String,default:""},resourceId:{type:[String,Number],required:!0},resourceType:{type:String,default:"files"}},data(){return{deleted:!1,editing:!1,loading:!1}},computed:{...S(E)},methods:{onEdit(){this.editing=!0},onEditCancel(){this.editing=!1,this.updateLocalMessage(this.message)},async onEditComment(e){this.loading=!0;try{await De(this.resourceType,this.resourceId,this.id,e),h.debug("Comment edited",{resourceType:this.resourceType,resourceId:this.resourceId,id:this.id,message:e}),this.$emit("update:message",e),this.editing=!1}catch(o){N(t("comments","An error occurred while trying to edit the comment")),h.error("An error occurred while trying to edit the comment",{error:o})}finally{this.loading=!1}},onDeleteWithUndo(){this.$emit("delete"),this.deleted=!0,this.deletedCommentLimboStore.addId(this.id);const e=setTimeout(this.onDelete,le);ue(t("comments","Comment deleted"),()=>{clearTimeout(e),this.deleted=!1,this.deletedCommentLimboStore.removeId(this.id)})},async onDelete(){try{await Ne(this.resourceType,this.resourceId,this.id),h.debug("Comment deleted",{resourceType:this.resourceType,resourceId:this.resourceId,id:this.id}),this.$emit("delete",this.id)}catch(e){N(t("comments","An error occurred while trying to delete the comment")),h.error("An error occurred while trying to delete the comment",{error:e}),this.deleted=!1,this.deletedCommentLimboStore.removeId(this.id)}},async onNewComment(e){this.loading=!0;try{const o=await Le(this.resourceType,this.resourceId,e);h.debug("New comment posted",{resourceType:this.resourceType,resourceId:this.resourceId,newComment:o}),this.$emit("new",o),this.$emit("update:message",""),this.localMessage=""}catch(o){N(t("comments","An error occurred while trying to create the comment")),h.error("An error occurred while trying to create the comment",{error:o})}finally{this.loading=!1}}}},we=D(()=>L(()=>import("./index-DMO_O46v.chunk.mjs"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46]),import.meta.url)),Te=D(()=>L(()=>import("./index-B28D1CUs.chunk.mjs"),__vite__mapDeps([37,33,2,1,3,4,5,34,12,13,29,30,14,35,7,11,9,10,16,17,36,38,8,15,39,40,41,42,43,44,45]),import.meta.url)),ve=D(()=>L(()=>import("./index-B28D1CUs.chunk.mjs"),__vite__mapDeps([37,33,2,1,3,4,5,34,12,13,29,30,14,35,7,11,9,10,16,17,36,38,8,15,39,40,41,42,43,44,45]),import.meta.url).then(e=>e.NcReferenceList)),Ae={name:"CommentEntry",components:{IconArrowRight:me,IconClose:Ie,IconTrashCanOutline:H,IconPencilOutline:de,NcActionButton:te,NcActions:oe,NcActionSeparator:ie,NcAvatar:se,NcButton:ae,NcDateTime:re,NcLoadingIcon:ne,NcReferenceList:ve,NcRichContenteditable:we,NcRichText:Te},mixins:[ke],inheritAttrs:!1,props:{actorDisplayName:{type:String,required:!0},actorId:{type:String,required:!0},creationDateTime:{type:String,default:null},editor:{type:Boolean,default:!1},autoComplete:{type:Function,required:!0},userData:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},data(){return{expanded:!1,localMessage:"",submitted:!1}},computed:{...S(E),isOwnComment(){return f().uid===this.actorId},richContent(){const e={};let o=this.localMessage;return Object.keys(this.userData).forEach((i,a)=>{const r=`mention-${a}`,s=new RegExp(`@${i}|@"${i}"`,"g");o=o.replace(s,`{${r}}`),e[r]={component:ce,props:{user:i,displayName:this.userData[i].label,primary:this.userData[i].primary}}}),{mentions:e,message:o}},isEmptyMessage(){return!this.localMessage||this.localMessage.trim()===""},timestamp(){return Date.parse(this.creationDateTime)},isLimbo(){return this.deletedCommentLimboStore.checkForId(this.id)}},watch:{message(e){this.updateLocalMessage(e)}},beforeMount(){this.updateLocalMessage(this.message)},methods:{t:ee,updateLocalMessage(e){this.localMessage=e.toString(),this.submitted=!1},onSubmit(){if(this.localMessage.trim()!==""){if(this.editor){this.onNewComment(this.localMessage.trim()),this.$nextTick(()=>{this.$refs.editor.$el.focus()});return}this.onEditComment(this.localMessage.trim())}},onExpand(){this.expanded=!0}}},Se={class:"comment__side"},xe={class:"comment__body"},Ee={class:"comment__header"},Me={class:"comment__author"},Re={key:1,class:"comment_loading icon-loading-small"},Oe={class:"comment__editor-group"},$e={class:"comment__submit"},Pe={id:"tab-comments__editor-description",class:"comment__editor-description"};function je(e,o,i,a,r,s){const _=n("NcAvatar"),b=n("IconPencilOutline"),l=n("NcActionButton"),M=n("NcActionSeparator"),R=n("IconTrashCanOutline"),O=n("IconClose"),$=n("NcActions"),P=n("NcDateTime"),j=n("NcRichContenteditable"),z=n("NcLoadingIcon"),V=n("IconArrowRight"),q=n("NcButton"),B=n("NcRichText"),U=n("NcReferenceList");return K((c(),u(Q(i.tag),{class:T([{"comment--loading":e.loading},"comment"])},{default:m(()=>[p("div",Se,[d(_,{class:"comment__avatar",displayName:i.actorDisplayName,user:i.actorId,size:32},null,8,["displayName","user"])]),p("div",xe,[p("div",Ee,[p("span",Me,g(i.actorDisplayName),1),s.isOwnComment&&e.id&&!e.loading?(c(),u($,{key:0,class:"comment__actions"},{default:m(()=>[e.editing?(c(),u(l,{key:1,onClick:e.onEditCancel},{icon:m(()=>[d(O,{size:20})]),default:m(()=>[I(" "+g(s.t("comments","Cancel edit")),1)]),_:1},8,["onClick"])):(c(),y(G,{key:0},[d(l,{closeAfterClick:"",onClick:e.onEdit},{icon:m(()=>[d(b,{size:20})]),default:m(()=>[I(" "+g(s.t("comments","Edit comment")),1)]),_:1},8,["onClick"]),d(M),d(l,{closeAfterClick:"",onClick:e.onDeleteWithUndo},{icon:m(()=>[d(R,{size:20})]),default:m(()=>[I(" "+g(s.t("comments","Delete comment")),1)]),_:1},8,["onClick"])],64))]),_:1})):C("",!0),e.id&&e.loading?(c(),y("div",Re)):i.creationDateTime?(c(),u(P,{key:2,class:"comment__timestamp",timestamp:s.timestamp,ignoreSeconds:!0},null,8,["timestamp"])):C("",!0)]),i.editor||e.editing?(c(),y("form",{key:0,class:"comment__editor",onSubmit:o[2]||(o[2]=J(()=>{},["prevent"]))},[p("div",Oe,[d(j,{ref:"editor",modelValue:r.localMessage,"onUpdate:modelValue":[o[0]||(o[0]=w=>r.localMessage=w),o[1]||(o[1]=w=>r.submitted=!1)],autoComplete:i.autoComplete,contenteditable:!e.loading,label:i.editor?s.t("comments","New comment"):s.t("comments","Edit comment"),placeholder:s.t("comments","Write a comment …"),userData:i.userData,"aria-describedby":"tab-comments__editor-description",onSubmit:s.onSubmit},null,8,["modelValue","autoComplete","contenteditable","label","placeholder","userData","onSubmit"]),p("div",$e,[d(q,{variant:"tertiary-no-background",type:"submit","aria-label":s.t("comments","Post comment"),disabled:s.isEmptyMessage,onClick:s.onSubmit},{icon:m(()=>[e.loading?(c(),u(z,{key:0})):(c(),u(V,{key:1,size:20}))]),_:1},8,["aria-label","disabled","onClick"])])]),p("div",Pe,g(s.t("comments","@ for mentions, : for emoji, / for smart picker")),1)],32)):(c(),u(B,{key:1,class:T(["comment__message",{"comment__message--expanded":r.expanded}]),text:s.richContent.message,arguments:s.richContent.mentions,useMarkdown:"",onClick:s.onExpand},null,8,["class","text","arguments","onClick"])),!i.editor&&!e.editing?(c(),u(U,{key:2,class:"comment__reference-list",text:s.richContent.message,interactiveOptIn:""},null,8,["text"])):C("",!0)])]),_:1},8,["class"])),[[Z,!e.deleted&&!s.isLimbo]])}const ot=A(Ae,[["render",je],["__scopeId","data-v-365fe8ac"]]),it=X({props:{resourceId:{type:Number,required:!0},resourceType:{type:String,default:"files"}},data(){return{editorData:{actorDisplayName:f().displayName,actorId:f().uid,key:"editor"},userData:{},currentResourceId:this.resourceId}},methods:{async autoComplete(e,o){const{data:i}=await x.get(Y("core/autocomplete/get"),{params:{search:e,itemType:this.resourceType,itemId:this.currentResourceId,sorter:"commenters|share-recipients",limit:he("comments","maxAutoCompleteResults")}});return i.ocs.data.forEach(a=>{this.userData[a.id]=a}),o(Object.values(this.userData))},genMentionsData(e){return Object.values(e).flat().forEach(o=>{this.userData[o.mentionId]={icon:"icon-user",id:o.mentionId,label:o.mentionDisplayName,source:"users",primary:f()?.uid===o.mentionId}}),this.userData}}});export{it as C,ot as a};
-//# sourceMappingURL=CommentView-D4oJ1b3g.chunk.mjs.map
+//# sourceMappingURL=CommentView-BhF0LoGw.chunk.mjs.map
diff --git a/dist/CommentView-D4oJ1b3g.chunk.mjs.license b/dist/CommentView-BhF0LoGw.chunk.mjs.license
similarity index 100%
rename from dist/CommentView-D4oJ1b3g.chunk.mjs.license
rename to dist/CommentView-BhF0LoGw.chunk.mjs.license
diff --git a/dist/CommentView-D4oJ1b3g.chunk.mjs.map b/dist/CommentView-BhF0LoGw.chunk.mjs.map
similarity index 99%
rename from dist/CommentView-D4oJ1b3g.chunk.mjs.map
rename to dist/CommentView-BhF0LoGw.chunk.mjs.map
index 82f5d3fbd6dee..901309fa97cdc 100644
--- a/dist/CommentView-D4oJ1b3g.chunk.mjs.map
+++ b/dist/CommentView-BhF0LoGw.chunk.mjs.map
@@ -1 +1 @@
-{"version":3,"mappings":"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","names":["_sfc_main","_hoisted_3","_createElementBlock","_mergeProps","_ctx","$props","_cache","$event","_createElementVNode","_openBlock","DeleteComment","resourceType","resourceId","commentId","commentPath","client","EditComment","message","decodeHtmlEntities","value","passes","parser","decoded","i","NewComment","resourcePath","response","axios","getRootPath","getCurrentUser","comment","props","useDeletedCommentLimbo","defineStore","id","index","CommentMixin","mapStores","logger","error","showError","timeOutDelete","TOAST_UNDO_TIMEOUT","showUndo","newComment","NcRichContenteditable","defineAsyncComponent","NcRichText","NcReferenceList","__vitePreload","module","IconArrowRight","IconClose","IconTrashCanOutline","IconPencilOutline","NcActionButton","NcActions","NcActionSeparator","NcAvatar","NcButton","NcDateTime","NcLoadingIcon","mentions","user","key","regex","NcUserBubble","t","_hoisted_1","_hoisted_2","_hoisted_4","_hoisted_6","_hoisted_7","_withDirectives","_createBlock","_resolveDynamicComponent","_normalizeClass","_createVNode","_component_NcAvatar","_toDisplayString","$options","_component_NcActions","_component_NcActionButton","_component_IconClose","_createTextVNode","_Fragment","_component_IconPencilOutline","_component_NcActionSeparator","_component_IconTrashCanOutline","_hoisted_5","_component_NcDateTime","_component_NcRichContenteditable","$data","_component_NcButton","_component_NcLoadingIcon","_component_IconArrowRight","_hoisted_8","_component_NcRichText","_component_NcReferenceList","_vShow","CommentView","defineComponent","search","callback","data","generateOcsUrl","loadState","mention"],"ignoreList":[0],"sources":["../node_modules/vue-material-design-icons/Close.vue","../build/frontend/apps/comments/src/services/DeleteComment.ts","../build/frontend/apps/comments/src/services/EditComment.ts","../build/frontend/apps/comments/src/utils/decodeHtmlEntities.ts","../build/frontend/apps/comments/src/services/NewComment.ts","../build/frontend/apps/comments/src/store/deletedCommentLimbo.ts","../build/frontend/apps/comments/src/mixins/CommentMixin.ts","../build/frontend/apps/comments/src/components/CommentEntry.vue","../build/frontend/apps/comments/src/mixins/CommentView.ts"],"sourcesContent":["\n \n \n \n\n\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport client from './DavClient.ts'\n\n/**\n * Delete a comment\n *\n * @param resourceType the resource type\n * @param resourceId the resource ID\n * @param commentId the comment iD\n */\nexport default async function(resourceType: string, resourceId: number, commentId: number) {\n\tconst commentPath = ['', resourceType, resourceId, commentId].join('/')\n\n\t// Fetch newly created comment data\n\tawait client.deleteFile(commentPath)\n}\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport client from './DavClient.ts'\n\n/**\n * Edit an existing comment\n *\n * @param resourceType the resource type\n * @param resourceId the resource ID\n * @param commentId the comment iD\n * @param message the message content\n */\nexport default async function(resourceType: string, resourceId: number, commentId: number, message: string) {\n\tconst commentPath = ['', resourceType, resourceId, commentId].join('/')\n\n\treturn await client.customRequest(commentPath, {\n\t\tmethod: 'PROPPATCH',\n\t\tdata: `\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t${message}\n\t\t\t\t\n\t\t\t\n\t\t\t`,\n\t})\n}\n","/**\n * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * @param value - the string to decode\n * @param passes - the number of times to decode the string, default is 1\n */\nexport function decodeHtmlEntities(value: string, passes = 1) {\n\tconst parser = new DOMParser()\n\tlet decoded = value\n\tfor (let i = 0; i < passes; i++) {\n\t\tdecoded = parser.parseFromString(decoded, 'text/html').documentElement.textContent\n\t}\n\treturn decoded\n}\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport axios from '@nextcloud/axios'\nimport { getRootPath } from '../utils/davUtils.ts'\nimport { decodeHtmlEntities } from '../utils/decodeHtmlEntities.ts'\nimport client from './DavClient.ts'\n\n/**\n * Retrieve the comments list\n *\n * @param resourceType the resource type\n * @param resourceId the resource ID\n * @param message the message\n * @return The new comment\n */\nexport default async function(resourceType: string, resourceId: number, message: string) {\n\tconst resourcePath = ['', resourceType, resourceId].join('/')\n\n\tconst response = await axios.post(getRootPath() + resourcePath, {\n\t\tactorDisplayName: getCurrentUser()!.displayName,\n\t\tactorId: getCurrentUser()!.uid,\n\t\tactorType: 'users',\n\t\tcreationDateTime: (new Date()).toUTCString(),\n\t\tmessage,\n\t\tobjectType: resourceType,\n\t\tverb: 'comment',\n\t})\n\n\t// Retrieve comment id from resource location\n\tconst commentId = parseInt(response.headers['content-location'].split('/').pop())\n\tconst commentPath = resourcePath + '/' + commentId\n\n\t// Fetch newly created comment data\n\tconst comment = await client.stat(commentPath, {\n\t\tdetails: true,\n\t})\n\n\tconst props = comment.data.props\n\t// Decode twice to handle potentially double-encoded entities\n\t// FIXME Remove this once https://github.com/nextcloud/server/issues/29306\n\t// is resolved\n\tprops.actorDisplayName = decodeHtmlEntities(props.actorDisplayName, 2)\n\tprops.message = decodeHtmlEntities(props.message, 2)\n\n\treturn comment.data\n}\n","/**\n * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { defineStore } from 'pinia'\n\nexport const useDeletedCommentLimbo = defineStore('deletedCommentLimbo', {\n\tstate: () => ({\n\t\tidsInLimbo: [],\n\t}),\n\tactions: {\n\t\taddId(id) {\n\t\t\tthis.idsInLimbo.push(id)\n\t\t},\n\n\t\tremoveId(id) {\n\t\t\tconst index = this.idsInLimbo.indexOf(id)\n\t\t\tif (index > -1) {\n\t\t\t\tthis.idsInLimbo.splice(index, 1)\n\t\t\t}\n\t\t},\n\n\t\tcheckForId(id) {\n\t\t\treturn this.idsInLimbo.includes(id)\n\t\t},\n\t},\n})\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { showError, showUndo, TOAST_UNDO_TIMEOUT } from '@nextcloud/dialogs'\nimport { mapStores } from 'pinia'\nimport logger from '../logger.ts'\nimport DeleteComment from '../services/DeleteComment.ts'\nimport EditComment from '../services/EditComment.ts'\nimport NewComment from '../services/NewComment.ts'\nimport { useDeletedCommentLimbo } from '../store/deletedCommentLimbo.ts'\n\nexport default {\n\tprops: {\n\t\tid: {\n\t\t\ttype: Number,\n\t\t\tdefault: null,\n\t\t},\n\t\tmessage: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t\tresourceId: {\n\t\t\ttype: [String, Number],\n\t\t\trequired: true,\n\t\t},\n\t\tresourceType: {\n\t\t\ttype: String,\n\t\t\tdefault: 'files',\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tdeleted: false,\n\t\t\tediting: false,\n\t\t\tloading: false,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t...mapStores(useDeletedCommentLimbo),\n\t},\n\n\tmethods: {\n\t\t// EDITION\n\t\tonEdit() {\n\t\t\tthis.editing = true\n\t\t},\n\t\tonEditCancel() {\n\t\t\tthis.editing = false\n\t\t\t// Restore original value\n\t\t\tthis.updateLocalMessage(this.message)\n\t\t},\n\t\tasync onEditComment(message) {\n\t\t\tthis.loading = true\n\t\t\ttry {\n\t\t\t\tawait EditComment(this.resourceType, this.resourceId, this.id, message)\n\t\t\t\tlogger.debug('Comment edited', { resourceType: this.resourceType, resourceId: this.resourceId, id: this.id, message })\n\t\t\t\tthis.$emit('update:message', message)\n\t\t\t\tthis.editing = false\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('comments', 'An error occurred while trying to edit the comment'))\n\t\t\t\tlogger.error('An error occurred while trying to edit the comment', { error })\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\n\t\t// DELETION\n\t\tonDeleteWithUndo() {\n\t\t\tthis.$emit('delete')\n\t\t\tthis.deleted = true\n\t\t\tthis.deletedCommentLimboStore.addId(this.id)\n\t\t\tconst timeOutDelete = setTimeout(this.onDelete, TOAST_UNDO_TIMEOUT)\n\t\t\tshowUndo(t('comments', 'Comment deleted'), () => {\n\t\t\t\tclearTimeout(timeOutDelete)\n\t\t\t\tthis.deleted = false\n\t\t\t\tthis.deletedCommentLimboStore.removeId(this.id)\n\t\t\t})\n\t\t},\n\t\tasync onDelete() {\n\t\t\ttry {\n\t\t\t\tawait DeleteComment(this.resourceType, this.resourceId, this.id)\n\t\t\t\tlogger.debug('Comment deleted', { resourceType: this.resourceType, resourceId: this.resourceId, id: this.id })\n\t\t\t\tthis.$emit('delete', this.id)\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('comments', 'An error occurred while trying to delete the comment'))\n\t\t\t\tlogger.error('An error occurred while trying to delete the comment', { error })\n\t\t\t\tthis.deleted = false\n\t\t\t\tthis.deletedCommentLimboStore.removeId(this.id)\n\t\t\t}\n\t\t},\n\n\t\t// CREATION\n\t\tasync onNewComment(message) {\n\t\t\tthis.loading = true\n\t\t\ttry {\n\t\t\t\tconst newComment = await NewComment(this.resourceType, this.resourceId, message)\n\t\t\t\tlogger.debug('New comment posted', { resourceType: this.resourceType, resourceId: this.resourceId, newComment })\n\t\t\t\tthis.$emit('new', newComment)\n\n\t\t\t\t// Clear old content\n\t\t\t\tthis.$emit('update:message', '')\n\t\t\t\tthis.localMessage = ''\n\t\t\t} catch (error) {\n\t\t\t\tshowError(t('comments', 'An error occurred while trying to create the comment'))\n\t\t\t\tlogger.error('An error occurred while trying to create the comment', { error })\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\t},\n}\n","\n\n\t\n\t\t\n\t\t
\n\t\n\n\n\n\n\n","/*!\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport { getCurrentUser } from '@nextcloud/auth'\nimport axios from '@nextcloud/axios'\nimport { loadState } from '@nextcloud/initial-state'\nimport { generateOcsUrl } from '@nextcloud/router'\nimport { defineComponent } from 'vue'\n\nexport default defineComponent({\n\tprops: {\n\t\tresourceId: {\n\t\t\ttype: Number,\n\t\t\trequired: true,\n\t\t},\n\t\tresourceType: {\n\t\t\ttype: String,\n\t\t\tdefault: 'files',\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\teditorData: {\n\t\t\t\tactorDisplayName: getCurrentUser()!.displayName as string,\n\t\t\t\tactorId: getCurrentUser()!.uid as string,\n\t\t\t\tkey: 'editor',\n\t\t\t},\n\t\t\tuserData: {},\n\t\t\tcurrentResourceId: this.resourceId,\n\t\t}\n\t},\n\tmethods: {\n\t\t/**\n\t\t * Autocomplete `@mentions`\n\t\t *\n\t\t * @param search the query\n\t\t * @param callback the callback to process the results with\n\t\t */\n\t\tasync autoComplete(search, callback) {\n\t\t\tconst { data } = await axios.get(generateOcsUrl('core/autocomplete/get'), {\n\t\t\t\tparams: {\n\t\t\t\t\tsearch,\n\t\t\t\t\titemType: this.resourceType,\n\t\t\t\t\titemId: this.currentResourceId,\n\t\t\t\t\tsorter: 'commenters|share-recipients',\n\t\t\t\t\tlimit: loadState('comments', 'maxAutoCompleteResults'),\n\t\t\t\t},\n\t\t\t})\n\t\t\t// Save user data so it can be used by the editor to replace mentions\n\t\t\tdata.ocs.data.forEach((user) => {\n\t\t\t\tthis.userData[user.id] = user\n\t\t\t})\n\t\t\treturn callback(Object.values(this.userData))\n\t\t},\n\n\t\t/**\n\t\t * Make sure we have all mentions as Array of objects\n\t\t *\n\t\t * @param mentions the mentions list\n\t\t */\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\tgenMentionsData(mentions: any[]): Record {\n\t\t\tObject.values(mentions)\n\t\t\t\t.flat()\n\t\t\t\t.forEach((mention) => {\n\t\t\t\t\tthis.userData[mention.mentionId] = {\n\t\t\t\t\t\t// TODO: support groups\n\t\t\t\t\t\ticon: 'icon-user',\n\t\t\t\t\t\tid: mention.mentionId,\n\t\t\t\t\t\tlabel: mention.mentionDisplayName,\n\t\t\t\t\t\tsource: 'users',\n\t\t\t\t\t\tprimary: getCurrentUser()?.uid === mention.mentionId,\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\treturn this.userData\n\t\t},\n\t},\n})\n"],"file":"CommentView-BhF0LoGw.chunk.mjs"}
\ No newline at end of file
diff --git a/dist/CommentView-D4oJ1b3g.chunk.mjs.map.license b/dist/CommentView-BhF0LoGw.chunk.mjs.map.license
similarity index 100%
rename from dist/CommentView-D4oJ1b3g.chunk.mjs.map.license
rename to dist/CommentView-BhF0LoGw.chunk.mjs.map.license
diff --git a/dist/FilesSidebarTab-B-KOoDDF.chunk.mjs b/dist/FilesSidebarTab-DksFRHhR.chunk.mjs
similarity index 97%
rename from dist/FilesSidebarTab-B-KOoDDF.chunk.mjs
rename to dist/FilesSidebarTab-DksFRHhR.chunk.mjs
index 9ea0d02319f0c..dcf4aac51cee8 100644
--- a/dist/FilesSidebarTab-B-KOoDDF.chunk.mjs
+++ b/dist/FilesSidebarTab-DksFRHhR.chunk.mjs
@@ -1,4 +1,4 @@
-import{b as N}from"./index-CAjMXx18.chunk.mjs";import{t as g}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{v as S}from"./NcAvatar-BRdLWCVs.chunk.mjs";import{N as M}from"./Check-QdDOQaCe.chunk.mjs";import{N as H}from"./Folder-BxcsshGI.chunk.mjs";import{e as _,o,j as i,g as k,t as h,k as u,m as f,av as A,r as c,an as L,S as O,h as m,I as y,f as C,w as p,J as z,C as F,n as q,b as B,A as $}from"./Web-0o0ZsUfo.chunk.mjs";import{C as E,a as P}from"./CommentView-D4oJ1b3g.chunk.mjs";import{l as b}from"./activity-C7pDSEJs.chunk.mjs";import{c as j,g as U,D as v}from"./GetComments-DzpQCqQO.chunk.mjs";const Z={name:"MessageReplyTextOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},J=["aria-hidden","aria-label"],G=["fill","width","height"],K={d:"M9 11H18V13H9V11M18 7H6V9H18V7M22 4V22L18 18H4C2.9 18 2 17.11 2 16V4C2 2.9 2.9 2 4 2H20C21.1 2 22 2.89 22 4M20 4H4V16H18.83L20 17.17V4Z"},Q={key:0};function W(e,s,t,a,r,n){return o(),i("span",f(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon message-reply-text-outline-icon",role:"img",onClick:s[0]||(s[0]=l=>e.$emit("click",l))}),[(o(),i("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[k("path",K,[t.title?(o(),i("title",Q,h(t.title),1)):u("",!0)])],8,G))],16,J)}const X=_(Z,[["render",W]]),Y={name:"RefreshIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ee=["aria-hidden","aria-label"],te=["fill","width","height"],se={d:"M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z"},oe={key:0};function re(e,s,t,a,r,n){return o(),i("span",f(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon refresh-icon",role:"img",onClick:s[0]||(s[0]=l=>e.$emit("click",l))}),[(o(),i("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[k("path",se,[t.title?(o(),i("title",oe,h(t.title),1)):u("",!0)])],8,te))],16,ee)}const ne=_(Y,[["render",re]]);function ie(e,s,t){const a=["",e,s].join("/"),r=t.toUTCString();return j.customRequest(a,{method:"PROPPATCH",data:`
+import{b as N}from"./index-CAjMXx18.chunk.mjs";import{t as g}from"./translation-DoG5ZELJ-DosHP9c_.chunk.mjs";import{v as S}from"./NcAvatar-BRdLWCVs.chunk.mjs";import{N as M}from"./Check-QdDOQaCe.chunk.mjs";import{N as H}from"./Folder-BxcsshGI.chunk.mjs";import{e as _,o,j as i,g as k,t as h,k as u,m as f,av as A,r as c,an as L,S as O,h as m,I as y,f as C,w as p,J as z,C as F,n as q,b as B,A as $}from"./Web-0o0ZsUfo.chunk.mjs";import{C as E,a as P}from"./CommentView-BhF0LoGw.chunk.mjs";import{l as b}from"./activity-C7pDSEJs.chunk.mjs";import{c as j,g as U,D as v}from"./GetComments-DJtGp6Zq.chunk.mjs";const Z={name:"MessageReplyTextOutlineIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},J=["aria-hidden","aria-label"],G=["fill","width","height"],K={d:"M9 11H18V13H9V11M18 7H6V9H18V7M22 4V22L18 18H4C2.9 18 2 17.11 2 16V4C2 2.9 2.9 2 4 2H20C21.1 2 22 2.89 22 4M20 4H4V16H18.83L20 17.17V4Z"},Q={key:0};function W(e,s,t,a,r,n){return o(),i("span",f(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon message-reply-text-outline-icon",role:"img",onClick:s[0]||(s[0]=l=>e.$emit("click",l))}),[(o(),i("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[k("path",K,[t.title?(o(),i("title",Q,h(t.title),1)):u("",!0)])],8,G))],16,J)}const X=_(Z,[["render",W]]),Y={name:"RefreshIcon",emits:["click"],props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}},ee=["aria-hidden","aria-label"],te=["fill","width","height"],se={d:"M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z"},oe={key:0};function re(e,s,t,a,r,n){return o(),i("span",f(e.$attrs,{"aria-hidden":t.title?null:"true","aria-label":t.title,class:"material-design-icon refresh-icon",role:"img",onClick:s[0]||(s[0]=l=>e.$emit("click",l))}),[(o(),i("svg",{fill:t.fillColor,class:"material-design-icon__svg",width:t.size,height:t.size,viewBox:"0 0 24 24"},[k("path",se,[t.title?(o(),i("title",oe,h(t.title),1)):u("",!0)])],8,te))],16,ee)}const ne=_(Y,[["render",re]]);function ie(e,s,t){const a=["",e,s].join("/"),r=t.toUTCString();return j.customRequest(a,{method:"PROPPATCH",data:`
@@ -8,4 +8,4 @@ import{b as N}from"./index-CAjMXx18.chunk.mjs";import{t as g}from"./translation-
`})}function ae(e){const s=new AbortController,t=s.signal;return{request:async function(a,r){return await e(a,{signal:t,...r})},abort:()=>s.abort()}}const le={name:"CommentsApp",components:{CommentEntry:P,NcEmptyContent:H,NcButton:M,IconRefresh:ne,IconMessageReplyTextOutline:X,IconAlertCircleOutline:A},directives:{elementVisibility:S},mixins:[E],expose:["update"],data(){return{error:"",loading:!1,done:!1,offset:0,comments:[],cancelRequest:()=>{},Comment,userData:{}}},computed:{hasComments(){return this.comments.length>0},isFirstLoading(){return this.loading&&this.offset===0}},watch:{resourceId(){this.currentResourceId=this.resourceId}},methods:{t:g,async onVisibilityChange(e){if(e)try{await ie(this.resourceType,this.currentResourceId,new Date)}catch(s){N(s.message||g("comments","Failed to mark comments as read"))}},async update(e){this.currentResourceId=e,this.resetState(),await this.getComments()},onScrollBottomReached(){this.error||this.done||this.loading||this.getComments()},async getComments(){this.cancelRequest("cancel");try{this.loading=!0,this.error="";const{request:e,abort:s}=ae(U);this.cancelRequest=s;const{data:t}=await e({resourceType:this.resourceType,resourceId:this.currentResourceId},{offset:this.offset})||{data:[]};this.logger.debug(`Processed ${t.length} comments`,{comments:t}),t.lengtht.props.id===e);s>-1?this.comments.splice(s,1):b.error("Could not find the deleted comment in the list",{id:e})},resetState(){this.error="",this.loading=!1,this.done=!1,this.offset=0,this.comments=[]}}},ce={key:1},me={key:2,class:"comments__info icon-loading"},de={key:3,class:"comments__info"};function ue(e,s,t,a,r,n){const l=c("CommentEntry"),w=c("IconMessageReplyTextOutline"),I=c("NcEmptyContent"),R=c("IconAlertCircleOutline"),T=c("IconRefresh"),V=c("NcButton"),D=L("element-visibility");return O((o(),i("div",{class:q(["comments",{"icon-loading":n.isFirstLoading}])},[m(l,f(e.editorData,{editor:"",autoComplete:e.autoComplete,resourceType:e.resourceType,userData:r.userData,resourceId:e.currentResourceId,class:"comments__writer",onNew:n.onNewComment}),null,16,["autoComplete","resourceType","userData","resourceId","onNew"]),n.isFirstLoading?u("",!0):(o(),i(y,{key:0},[!n.hasComments&&r.done?(o(),C(I,{key:0,class:"comments__empty",name:n.t("comments","No comments yet, start the conversation!")},{icon:p(()=>[m(w)]),_:1},8,["name"])):(o(),i("ul",ce,[(o(!0),i(y,null,z(r.comments,d=>(o(),C(l,f({key:d.props.id,modelValue:d.props.message,"onUpdate:modelValue":x=>d.props.message=x,tag:"li"},{ref_for:!0},d.props,{autoComplete:e.autoComplete,resourceType:e.resourceType,resourceId:e.currentResourceId,userData:e.genMentionsData(d.props.mentions),class:"comments__list",onDelete:n.onDelete}),null,16,["modelValue","onUpdate:modelValue","autoComplete","resourceType","resourceId","userData","onDelete"]))),128))])),r.loading&&!n.isFirstLoading?(o(),i("div",me)):n.hasComments&&r.done?(o(),i("div",de,h(n.t("comments","No more messages")),1)):r.error?(o(),i(y,{key:4},[m(I,{class:"comments__error",name:r.error},{icon:p(()=>[m(R)]),_:1},8,["name"]),m(V,{class:"comments__retry",onClick:n.getComments},{icon:p(()=>[m(T)]),default:p(()=>[F(" "+h(n.t("comments","Retry")),1)]),_:1},8,["onClick"])],64)):u("",!0)],64))],2)),[[D,n.onVisibilityChange]])}const pe=_(le,[["render",ue],["__scopeId","data-v-bc1f62ad"]]),he=B({__name:"FilesSidebarTab",props:{node:{},active:{type:Boolean},folder:{},view:{}},setup(e){const s=e,t=$(()=>s.node?.fileid);return(a,r)=>t.value!==void 0?(o(),C(pe,{key:t.value,resourceId:t.value,resourceType:"files"},null,8,["resourceId"])):u("",!0)}}),we=Object.freeze(Object.defineProperty({__proto__:null,default:he},Symbol.toStringTag,{value:"Module"}));export{pe as C,we as F};
-//# sourceMappingURL=FilesSidebarTab-B-KOoDDF.chunk.mjs.map
+//# sourceMappingURL=FilesSidebarTab-DksFRHhR.chunk.mjs.map
diff --git a/dist/FilesSidebarTab-B-KOoDDF.chunk.mjs.license b/dist/FilesSidebarTab-DksFRHhR.chunk.mjs.license
similarity index 100%
rename from dist/FilesSidebarTab-B-KOoDDF.chunk.mjs.license
rename to dist/FilesSidebarTab-DksFRHhR.chunk.mjs.license
diff --git a/dist/FilesSidebarTab-B-KOoDDF.chunk.mjs.map b/dist/FilesSidebarTab-DksFRHhR.chunk.mjs.map
similarity index 99%
rename from dist/FilesSidebarTab-B-KOoDDF.chunk.mjs.map
rename to dist/FilesSidebarTab-DksFRHhR.chunk.mjs.map
index be2afe1899c55..59e298188e190 100644
--- a/dist/FilesSidebarTab-B-KOoDDF.chunk.mjs.map
+++ b/dist/FilesSidebarTab-DksFRHhR.chunk.mjs.map
@@ -1 +1 @@
-{"version":3,"file":"FilesSidebarTab-B-KOoDDF.chunk.mjs","sources":["../node_modules/vue-material-design-icons/MessageReplyTextOutline.vue","../node_modules/vue-material-design-icons/Refresh.vue","../build/frontend/apps/comments/src/services/ReadComments.ts","../build/frontend/apps/comments/src/utils/cancelableRequest.ts","../build/frontend/apps/comments/src/views/CommentsApp.vue","../build/frontend/apps/comments/src/views/FilesSidebarTab.vue"],"sourcesContent":["\n \n \n \n\n\n","\n \n \n \n\n\n","/**\n * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\nimport type { Response } from 'webdav'\n\nimport client from './DavClient.ts'\n\n/**\n * Mark comments older than the date timestamp as read\n *\n * @param resourceType the resource type\n * @param resourceId the resource ID\n * @param date the date object\n */\nexport function markCommentsAsRead(\n\tresourceType: string,\n\tresourceId: number,\n\tdate: Date,\n): Promise {\n\tconst resourcePath = ['', resourceType, resourceId].join('/')\n\tconst readMarker = date.toUTCString()\n\n\treturn client.customRequest(resourcePath, {\n\t\tmethod: 'PROPPATCH',\n\t\tdata: `\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t${readMarker}\n\t\t\t\t\n\t\t\t\n\t\t\t`,\n\t})\n}\n","/**\n * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\n\n/**\n * Creates a cancelable axios 'request object'.\n *\n * @param request the axios promise request\n * @return\n */\nfunction cancelableRequest(request: (url: string, options?: Record) => Promise) {\n\tconst controller = new AbortController()\n\tconst signal = controller.signal\n\n\t/**\n\t * Execute the request\n\t *\n\t * @param url the url to send the request to\n\t * @param [options] optional config for the request\n\t */\n\tconst fetch = async function(url: string, options?: Record) {\n\t\tconst response = await request(\n\t\t\turl,\n\t\t\t{ signal, ...options },\n\t\t)\n\t\treturn response\n\t}\n\n\treturn {\n\t\trequest: fetch,\n\t\tabort: () => controller.abort(),\n\t}\n}\n\nexport default cancelableRequest\n","\n\n\n\t