@univerjs/docs-thread-comment-ui 0.16.1 → 0.17.0

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/lib/cjs/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var ne=Object.defineProperty;var re=(e,t,r)=>t in e?ne(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var F=(e,t,r)=>re(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("@univerjs/core"),w=require("@univerjs/docs-ui"),A=require("@univerjs/thread-comment"),S=require("@univerjs/thread-comment-ui"),p=require("@univerjs/docs"),O=require("@univerjs/engine-render"),u=require("@univerjs/ui"),x=require("rxjs"),ie=require("react/jsx-runtime"),D=require("react"),oe="DOC_THREAD_COMMENT_UI_PLUGIN",M="default_doc",Z={id:"docs.command.add-comment",type:s.CommandType.COMMAND,async handler(e,t){if(!t)return!1;const{comment:r,unitId:n}=t,o=await e.get(A.IThreadCommentDataSourceService).addComment(r),c=e.get(s.ICommandService),d=w.addCustomDecorationBySelectionFactory(e,{id:o.threadId,type:s.CustomDecorationType.COMMENT,unitId:n});if(d){const C={id:A.AddCommentMutation.id,params:{unitId:n,subUnitId:M,comment:o}},v={id:S.SetActiveCommentOperation.id,params:{unitId:n,subUnitId:M,commentId:o.id}};return(await s.sequenceExecute([C,d,v],c)).result}return!1}},K={id:"docs.command.delete-comment",type:s.CommandType.COMMAND,async handler(e,t){if(!t)return!1;const{commentId:r,unitId:n}=t,i=e.get(s.ICommandService),o=w.deleteCustomDecorationFactory(e,{id:r,unitId:n});return o?(await s.sequenceExecute([o],i)).result:!1}};var se=Object.getOwnPropertyDescriptor,ce=(e,t,r,n)=>{for(var i=n>1?void 0:n?se(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},J=(e,t)=>(r,n)=>t(r,n,e);let E=class extends s.Disposable{constructor(t,r){super();F(this,"_addingComment$",new x.BehaviorSubject(void 0));F(this,"addingComment$",this._addingComment$.asObservable());this._sidebarService=t,this._threadCommentPanelService=r,this.disposeWithMe(()=>{this._addingComment$.complete()})}get addingComment(){return this._addingComment$.getValue()}startAdd(t){this._addingComment$.next(t)}endAdd(){this._addingComment$.next(void 0)}};E=ce([J(0,u.ISidebarService),J(1,s.Inject(S.ThreadCommentPanelService))],E);const z=e=>{var c;const t=e.get(O.IRenderManagerService),r=e.get(p.DocSelectionManagerService),n=(c=O.withCurrentTypeOfRenderer(s.UniverInstanceType.UNIVER_DOC,p.DocSkeletonManagerService,e.get(s.IUniverInstanceService),t))==null?void 0:c.getSkeleton(),i=n==null?void 0:n.getViewModel().getEditArea();if(i===O.DocumentEditArea.FOOTER||i===O.DocumentEditArea.HEADER)return!0;const o=r.getActiveTextRange();return!!(o==null||o.collapsed)};function de(e){return{id:N.id,type:u.MenuItemType.BUTTON,icon:"CommentIcon",title:"threadCommentUI.panel.addComment",tooltip:"threadCommentUI.panel.addComment",hidden$:u.getMenuHiddenObservable(e,s.UniverInstanceType.UNIVER_DOC,void 0,s.SHEET_EDITOR_UNITS),disabled$:new x.Observable(function(t){const n=e.get(p.DocSelectionManagerService).textSelection$.pipe(x.debounceTime(16)).subscribe(()=>{t.next(z(e))});return()=>{n.unsubscribe()}})}}function ae(e){return{id:G.id,type:u.MenuItemType.BUTTON,icon:"CommentIcon",title:"threadCommentUI.panel.addComment",tooltip:"threadCommentUI.panel.addComment",hidden$:u.getMenuHiddenObservable(e,s.UniverInstanceType.UNIVER_DOC)}}const U=()=>{const e=u.useDependency(s.IUniverInstanceService),t=u.useDependency(s.Injector),r=D.useMemo(()=>e.getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_DOC).pipe(x.filter(a=>!!a&&!s.isInternalEditorID(a.getUnitId()))),[e]),n=u.useObservable(r),i=D.useMemo(()=>new x.Observable(a=>a.next(M)),[]),o=u.useDependency(p.DocSelectionManagerService),c=D.useMemo(()=>o.textSelection$.pipe(x.debounceTime(16)),[o.textSelection$]);u.useObservable(c);const d=u.useDependency(s.ICommandService),C=u.useDependency(E),v=u.useObservable(C.addingComment$),[m,I]=D.useState([]);if(D.useEffect(()=>{var b;const a=new Set,l=n==null?void 0:n.getCustomDecorations();I((b=l==null?void 0:l.map(h=>h.id).filter(h=>{const T=a.has(h);return a.add(h),!T}))!=null?b:[]);const _=d.onCommandExecuted(h=>{var T;if(h.id===p.RichTextEditingMutation.id){const P=new Set,q=n==null?void 0:n.getCustomDecorations();I((T=q==null?void 0:q.map(V=>V.id).filter(V=>{const te=P.has(V);return P.add(V),!te}))!=null?T:[])}});return()=>{_.dispose()}},[d,n]),!n)return null;const g=z(t),f=n.getUnitId();return ie.jsx(S.ThreadCommentPanel,{unitId:f,subUnitId$:i,type:s.UniverInstanceType.UNIVER_DOC,onAdd:()=>{d.executeCommand(N.id)},getSubUnitName:()=>"",disableAdd:g,tempComment:v,onAddComment:a=>{if(!a.parentId){const l={unitId:f,range:v,comment:a};return d.executeCommand(Z.id,l),C.endAdd(),!1}return!0},onDeleteComment:a=>{if(!a.parentId){const l={unitId:f,commentId:a.id};return d.executeCommand(K.id,l),!1}return!0},showComments:m})};U.componentKey="univer.doc.thread-comment-panel";const $={id:"docs.operation.show-comment-panel",type:s.CommandType.OPERATION,handler(e,t){var i;const r=e.get(S.ThreadCommentPanelService),n=e.get(u.ISidebarService);return(!r.panelVisible||((i=n.options.children)==null?void 0:i.label)!==U.componentKey)&&(n.open({header:{title:"threadCommentUI.panel.title"},children:{label:U.componentKey},width:320,onClose:()=>r.setPanelVisible(!1)}),r.setPanelVisible(!0)),t&&r.setActiveComment(t==null?void 0:t.activeComment),!0}},G={id:"docs.operation.toggle-comment-panel",type:s.CommandType.OPERATION,handler(e){var n;const t=e.get(S.ThreadCommentPanelService),r=e.get(u.ISidebarService);return!t.panelVisible||((n=r.options.children)==null?void 0:n.label)!==U.componentKey?(r.open({header:{title:"threadCommentUI.panel.title"},children:{label:U.componentKey},width:320,onClose:()=>t.setPanelVisible(!1)}),t.setPanelVisible(!0)):(r.close(),t.setPanelVisible(!1),t.setActiveComment(null)),!0}},N={id:"docs.operation.start-add-comment",type:s.CommandType.OPERATION,handler(e){var h,T,P;const t=e.get(S.ThreadCommentPanelService),n=e.get(s.IUniverInstanceService).getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC),i=e.get(p.DocSelectionManagerService),o=e.get(O.IRenderManagerService),c=e.get(s.UserManagerService),d=e.get(E),C=e.get(s.ICommandService),v=e.get(u.ISidebarService),m=i.getActiveTextRange();if(!n||!m)return!1;const I=(h=o.getRenderById(n.getUnitId()))==null?void 0:h.with(w.DocSelectionRenderService);if(I==null||I.setReserveRangesStatus(!0),m.collapsed)return t.panelVisible?(t.setPanelVisible(!1),v.close()):C.executeCommand($.id),!0;C.executeCommand($.id);const g=n.getUnitId(),f=((P=(T=n.getBody())==null?void 0:T.dataStream)!=null?P:"").slice(m.startOffset,m.endOffset),a=s.BuildTextUtils.transform.getPlainText(f),l=M,_="",b={unitId:g,subUnitId:l,id:_,ref:a,dT:A.getDT(),personId:c.getCurrentUser().userID,text:{dataStream:`\r
2
- `},startOffset:m.startOffset,endOffset:m.endOffset,collapsed:!0,threadId:_};return I==null||I.blur(),d.startAdd(b),t.setActiveComment({unitId:g,subUnitId:l,commentId:_}),!0}},me="docs-thread-comment-ui.config",Y={};var le=Object.getOwnPropertyDescriptor,ue=(e,t,r,n)=>{for(var i=n>1?void 0:n?le(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},y=(e,t)=>(r,n)=>t(r,n,e);let j=class extends s.Disposable{constructor(e,t,r,n,i,o){super(),this._threadCommentPanelService=e,this._univerInstanceService=t,this._commandService=r,this._docThreadCommentService=n,this._renderManagerService=i,this._threadCommentModel=o,this._initSelectionChange(),this._initActiveCommandChange()}_initSelectionChange(){let e;this.disposeWithMe(this._commandService.onCommandExecuted(t=>{var r,n,i,o;if(t.id===p.SetTextSelectionsOperation.id){const c=t.params,{unitId:d,ranges:C}=c;if(s.isInternalEditorID(d))return;const v=this._univerInstanceService.getUnit(d,s.UniverInstanceType.UNIVER_DOC),m=C[0];if((e==null?void 0:e.startOffset)===(m==null?void 0:m.startOffset)&&(e==null?void 0:e.endOffset)===(m==null?void 0:m.endOffset))return;if(e=m,m&&v){const{startOffset:I,endOffset:g,collapsed:f}=m;let a;if(f?a=(n=(r=v.getBody())==null?void 0:r.customDecorations)==null?void 0:n.find(l=>l.startIndex<=I&&l.endIndex>=g-1):a=(o=(i=v.getBody())==null?void 0:i.customDecorations)==null?void 0:o.find(l=>l.startIndex<=I&&l.endIndex>=g-1),a){const l=this._threadCommentModel.getComment(d,M,a.id);l&&!l.resolved&&this._commandService.executeCommand($.id,{activeComment:{unitId:d,subUnitId:M,commentId:a.id}});return}}if(!this._threadCommentPanelService.activeCommentId)return;this._commandService.executeCommand(S.SetActiveCommentOperation.id)}}))}_initActiveCommandChange(){this.disposeWithMe(this._threadCommentPanelService.activeCommentId$.subscribe(e=>{var t,r,n,i;if(e){const o=this._univerInstanceService.getUnit(e.unitId);if(o){const c=(t=this._renderManagerService.getRenderById(e.unitId))==null?void 0:t.with(w.DocBackScrollRenderController),d=(n=(r=o.getBody())==null?void 0:r.customDecorations)==null?void 0:n.find(C=>C.id===e.commentId);d&&c&&c.scrollToRange({startOffset:d.startIndex,endOffset:d.endIndex,collapsed:!1})}}(!e||e.commentId!==((i=this._docThreadCommentService.addingComment)==null?void 0:i.id))&&this._docThreadCommentService.endAdd()}))}};j=ue([y(0,s.Inject(S.ThreadCommentPanelService)),y(1,s.IUniverInstanceService),y(2,s.ICommandService),y(3,s.Inject(E)),y(4,O.IRenderManagerService),y(5,s.Inject(A.ThreadCommentModel))],j);function Q({ref:e,...t}){const{icon:r,id:n,className:i,extend:o,...c}=t,d=`univerjs-icon univerjs-icon-${n} ${i||""}`.trim(),C=D.useRef(`_${ve()}`);return X(r,`${n}`,{defIds:r.defIds,idSuffix:C.current},{ref:e,className:d,...c},o)}function X(e,t,r,n,i){return D.createElement(e.tag,{key:t,...Ce(e,r,i),...n},(he(e,r).children||[]).map((o,c)=>X(o,`${t}-${e.tag}-${c}`,r,void 0,i)))}function Ce(e,t,r){const n={...e.attrs};r!=null&&r.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=r.colorChannel1),e.tag==="mask"&&n.id&&(n.id=n.id+t.idSuffix),Object.entries(n).forEach(([o,c])=>{o==="mask"&&typeof c=="string"&&(n[o]=c.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});const{defIds:i}=t;return!i||i.length===0||(e.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+t.idSuffix),Object.entries(n).forEach(([o,c])=>{typeof c=="string"&&(n[o]=c.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))})),n}function he(e,t){var n;const{defIds:r}=t;return!r||r.length===0?e:e.tag==="defs"&&((n=e.children)!=null&&n.length)?{...e,children:e.children.map(i=>typeof i.attrs.id=="string"&&r&&r.includes(i.attrs.id)?{...i,attrs:{...i.attrs,id:i.attrs.id+t.idSuffix}}:i)}:e}function ve(){return Math.random().toString(36).substring(2,8)}Q.displayName="UniverIcon";const Ie={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 17 17",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.83725 6.78345C6.22188 6.78345 6.53368 7.10742 6.53368 7.50706V8.41159C6.53368 8.81123 6.22188 9.13521 5.83725 9.13521C5.45263 9.13521 5.14082 8.81123 5.14082 8.41159V7.50706C5.14082 7.10742 5.45263 6.78345 5.83725 6.78345ZM8.73904 6.78345C9.12366 6.78345 9.43546 7.10742 9.43546 7.50706V8.41159C9.43546 8.81123 9.12366 9.13521 8.73904 9.13521C8.35441 9.13521 8.04261 8.81123 8.04261 8.41159V7.50706C8.04261 7.10742 8.35441 6.78345 8.73904 6.78345ZM11.6408 6.78345C12.0254 6.78345 12.3372 7.10742 12.3372 7.50706V8.41159C12.3372 8.81123 12.0254 9.13521 11.6408 9.13521C11.2562 9.13521 10.9444 8.81123 10.9444 8.41159V7.50706C10.9444 7.10742 11.2562 6.78345 11.6408 6.78345Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M5.83725 6.78345C6.22188 6.78345 6.53368 7.10742 6.53368 7.50706V8.41159C6.53368 8.81123 6.22188 9.13521 5.83725 9.13521C5.45263 9.13521 5.14082 8.81123 5.14082 8.41159V7.50706C5.14082 7.10742 5.45263 6.78345 5.83725 6.78345Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M8.73904 6.78345C9.12366 6.78345 9.43546 7.10742 9.43546 7.50706V8.41159C9.43546 8.81123 9.12366 9.13521 8.73904 9.13521C8.35441 9.13521 8.04261 8.81123 8.04261 8.41159V7.50706C8.04261 7.10742 8.35441 6.78345 8.73904 6.78345Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M11.6408 6.78345C12.0254 6.78345 12.3372 7.10742 12.3372 7.50706V8.41159C12.3372 8.81123 12.0254 9.13521 11.6408 9.13521C11.2562 9.13521 10.9444 8.81123 10.9444 8.41159V7.50706C10.9444 7.10742 11.2562 6.78345 11.6408 6.78345Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.84351 3.41861C1.84351 3.01861 2.15531 2.69434 2.53993 2.69434H14.9381C15.3228 2.69434 15.6346 3.01861 15.6346 3.41861V12.4611C15.6346 12.8612 15.3228 13.1854 14.9381 13.1854H8.82117L6.06643 14.6179C5.85054 14.7301 5.59416 14.7181 5.38884 14.5862C5.18352 14.4542 5.05855 14.2211 5.05855 13.9701V13.1854H2.53993C2.15531 13.1854 1.84351 12.8612 1.84351 12.4611L1.84351 3.41861ZM6.45141 12.7982L8.34531 12.0135C8.44201 11.9632 8.54864 11.9371 8.65676 11.9371H14.2417C14.3522 11.9371 14.4417 11.8475 14.4417 11.7371V4.14271C14.4417 4.03225 14.3522 3.94271 14.2417 3.94271H3.23636C3.12591 3.94271 3.03636 4.03225 3.03636 4.14271L3.03636 11.7371C3.03636 11.8475 3.12591 11.9371 3.23636 11.9371L5.75498 11.9371C6.1396 11.9371 6.45141 12.0611 6.45141 12.4611V12.7982Z",fillRule:"evenodd",clipRule:"evenodd"}}]},k=D.forwardRef(function(t,r){return D.createElement(Q,Object.assign({},t,{id:"comment-icon",ref:r,icon:Ie}))});k.displayName="CommentIcon";const fe={[u.RibbonInsertGroup.MEDIA]:{[G.id]:{order:3,menuItemFactory:ae}},[u.ContextMenuPosition.MAIN_AREA]:{[u.ContextMenuGroup.DATA]:{[N.id]:{order:1,menuItemFactory:de}}}};var ge=Object.getOwnPropertyDescriptor,pe=(e,t,r,n)=>{for(var i=n>1?void 0:n?ge(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},H=(e,t)=>(r,n)=>t(r,n,e);let B=class extends s.Disposable{constructor(e,t,r){super(),this._commandService=e,this._menuManagerService=t,this._componentManager=r,this._initCommands(),this._initMenus(),this._initComponents()}_initCommands(){[Z,K,$,N,G].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initMenus(){this._menuManagerService.mergeMenu(fe)}_initComponents(){[[U.componentKey,U],["CommentIcon",k]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}};B=pe([H(0,s.ICommandService),H(1,u.IMenuManagerService),H(2,s.Inject(u.ComponentManager))],B);var Se=Object.getOwnPropertyDescriptor,_e=(e,t,r,n)=>{for(var i=n>1?void 0:n?Se(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},R=(e,t)=>(r,n)=>t(r,n,e);let W=class extends s.Disposable{constructor(e,t,r,n,i,o,c){super(),this._context=e,this._docInterceptorService=t,this._threadCommentPanelService=r,this._docRenderController=n,this._univerInstanceService=i,this._threadCommentModel=o,this._commandService=c,this._interceptorViewModel(),this._initReRender(),this._initSyncComments()}_initReRender(){this.disposeWithMe(this._threadCommentPanelService.activeCommentId$.subscribe(e=>{var r;if(e){this._docRenderController.reRender(e.unitId);return}const t=(r=this._univerInstanceService.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC))==null?void 0:r.getUnitId();t&&this._docRenderController.reRender(t)})),this.disposeWithMe(this._threadCommentModel.commentUpdate$.subscribe(e=>{e.type==="resolve"&&this._docRenderController.reRender(e.unitId)}))}_interceptorViewModel(){this._docInterceptorService.intercept(p.DOC_INTERCEPTOR_POINT.CUSTOM_DECORATION,{handler:(e,t,r)=>{if(!e)return r(e);const{unitId:n,index:i,customDecorations:o}=t,c=this._threadCommentPanelService.activeCommentId,{commentId:d,unitId:C}=c||{},v=o.find(f=>f.id===d),m=this._threadCommentModel.getComment(n,M,e.id);if(!m)return r({...e,show:!1});const I=v&&i>=v.startIndex&&i<=v.endIndex,g=C===n&&e.id===d;return r({...e,active:g||I,show:!m.resolved})}})}_initSyncComments(){var i,o,c;const e=this._context.unit.getUnitId(),t=M,r=(c=(o=(i=this._context.unit.getBody())==null?void 0:i.customDecorations)==null?void 0:o.filter(d=>d.type===s.CustomDecorationType.COMMENT).map(d=>d.id))!=null?c:[];r.forEach(d=>{this._threadCommentModel.getComment(e,t,d)||this._threadCommentModel.addComment(e,t,{id:d,threadId:d,ref:"",dT:"",personId:"",text:{dataStream:""},unitId:e,subUnitId:t})}),r.length&&this._threadCommentModel.syncThreadComments(this._context.unit.getUnitId(),M,r);let n=r.sort();this.disposeWithMe(this._commandService.onCommandExecuted(d=>{var C,v,m;if(d.id===p.RichTextEditingMutation.id){if(d.params.unitId!==this._context.unit.getUnitId())return;const g=(m=(v=(C=this._context.unit.getBody())==null?void 0:C.customDecorations)==null?void 0:v.filter(a=>a.type===s.CustomDecorationType.COMMENT).map(a=>a.id))!=null?m:[],f=g.sort();if(JSON.stringify(n)!==JSON.stringify(f)){const a=new Set(n),l=new Set(f),_=new Set,b=new Set;g.forEach(h=>{a.has(h)||_.add(h)}),n.forEach(h=>{l.has(h)||b.add(h)}),n=f,_.forEach(h=>{this._threadCommentModel.getComment(e,t,h)||this._threadCommentModel.addComment(e,t,{id:h,threadId:h,ref:"",dT:"",personId:"",text:{dataStream:""},unitId:e,subUnitId:t})}),this._threadCommentModel.syncThreadComments(e,t,[..._])}}}))}};W=_e([R(1,s.Inject(p.DocInterceptorService)),R(2,s.Inject(S.ThreadCommentPanelService)),R(3,s.Inject(w.DocRenderController)),R(4,s.IUniverInstanceService),R(5,s.Inject(A.ThreadCommentModel)),R(6,s.ICommandService)],W);var De=Object.defineProperty,Me=Object.getOwnPropertyDescriptor,Te=(e,t,r)=>t in e?De(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Oe=(e,t,r,n)=>{for(var i=n>1?void 0:n?Me(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},L=(e,t)=>(r,n)=>t(r,n,e),ee=(e,t,r)=>Te(e,typeof t!="symbol"?t+"":t,r);exports.UniverDocsThreadCommentUIPlugin=class extends s.Plugin{constructor(t=Y,r,n,i){super(),this._config=t,this._injector=r,this._renderManagerSrv=n,this._configService=i;const{menu:o,...c}=s.merge({},Y,this._config);o&&this._configService.setConfig("menu",o,{merge:!0}),this._configService.setConfig(me,c)}onStarting(){[[B],[j],[E]].forEach(t=>{this._injector.add(t)})}onRendered(){this._initRenderModule(),this._injector.get(j),this._injector.get(B)}_initRenderModule(){[W].forEach(t=>{this._renderManagerSrv.registerRenderModule(s.UniverInstanceType.UNIVER_DOC,t)})}};ee(exports.UniverDocsThreadCommentUIPlugin,"pluginName",oe);ee(exports.UniverDocsThreadCommentUIPlugin,"type",s.UniverInstanceType.UNIVER_DOC);exports.UniverDocsThreadCommentUIPlugin=Oe([s.DependentOn(S.UniverThreadCommentUIPlugin),L(1,s.Inject(s.Injector)),L(2,O.IRenderManagerService),L(3,s.IConfigService)],exports.UniverDocsThreadCommentUIPlugin);exports.AddDocCommentComment=Z;exports.DeleteDocCommentComment=K;exports.ShowCommentPanelOperation=$;exports.StartAddCommentOperation=N;
1
+ "use strict";var re=Object.defineProperty;var ie=(e,t,r)=>t in e?re(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var H=(e,t,r)=>ie(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("@univerjs/core"),w=require("@univerjs/docs-ui"),A=require("@univerjs/thread-comment"),S=require("@univerjs/thread-comment-ui"),p=require("@univerjs/docs"),O=require("@univerjs/engine-render"),u=require("@univerjs/ui"),x=require("rxjs"),oe=require("react/jsx-runtime"),D=require("react"),se="DOC_THREAD_COMMENT_UI_PLUGIN",T="default_doc",K={id:"docs.command.add-comment",type:s.CommandType.COMMAND,async handler(e,t){if(!t)return!1;const{comment:r,unitId:n}=t,o=await e.get(A.IThreadCommentDataSourceService).addComment(r),c=e.get(s.ICommandService),d=w.addCustomDecorationBySelectionFactory(e,{id:o.threadId,type:s.CustomDecorationType.COMMENT,unitId:n});if(d){const C={id:A.AddCommentMutation.id,params:{unitId:n,subUnitId:T,comment:o}},v={id:S.SetActiveCommentOperation.id,params:{unitId:n,subUnitId:T,commentId:o.id}};return(await s.sequenceExecute([C,d,v],c)).result}return!1}},G={id:"docs.command.delete-comment",type:s.CommandType.COMMAND,async handler(e,t){if(!t)return!1;const{commentId:r,unitId:n}=t,i=e.get(s.ICommandService),o=w.deleteCustomDecorationFactory(e,{id:r,unitId:n});return o?(await s.sequenceExecute([o],i)).result:!1}};var ce=Object.getOwnPropertyDescriptor,de=(e,t,r,n)=>{for(var i=n>1?void 0:n?ce(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},k=(e,t)=>(r,n)=>t(r,n,e);let E=class extends s.Disposable{constructor(t,r){super();H(this,"_addingComment$",new x.BehaviorSubject(void 0));H(this,"addingComment$",this._addingComment$.asObservable());this._sidebarService=t,this._threadCommentPanelService=r,this.disposeWithMe(()=>{this._addingComment$.complete()})}get addingComment(){return this._addingComment$.getValue()}startAdd(t){this._addingComment$.next(t)}endAdd(){this._addingComment$.next(void 0)}};E=de([k(0,u.ISidebarService),k(1,s.Inject(S.ThreadCommentPanelService))],E);const z=e=>{var c;const t=e.get(O.IRenderManagerService),r=e.get(p.DocSelectionManagerService),n=(c=O.withCurrentTypeOfRenderer(s.UniverInstanceType.UNIVER_DOC,p.DocSkeletonManagerService,e.get(s.IUniverInstanceService),t))==null?void 0:c.getSkeleton(),i=n==null?void 0:n.getViewModel().getEditArea();if(i===O.DocumentEditArea.FOOTER||i===O.DocumentEditArea.HEADER)return!0;const o=r.getActiveTextRange();return!!(o==null||o.collapsed)};function ae(e){return{id:N.id,type:u.MenuItemType.BUTTON,icon:"CommentIcon",title:"threadCommentUI.panel.addComment",tooltip:"threadCommentUI.panel.addComment",hidden$:u.getMenuHiddenObservable(e,s.UniverInstanceType.UNIVER_DOC,void 0,s.SHEET_EDITOR_UNITS),disabled$:new x.Observable(function(t){const n=e.get(p.DocSelectionManagerService).textSelection$.pipe(x.debounceTime(16)).subscribe(()=>{t.next(z(e))});return()=>{n.unsubscribe()}})}}function me(e){return{id:J.id,type:u.MenuItemType.BUTTON,icon:"CommentIcon",title:"threadCommentUI.panel.addComment",tooltip:"threadCommentUI.panel.addComment",hidden$:u.getMenuHiddenObservable(e,s.UniverInstanceType.UNIVER_DOC)}}const U=()=>{const e=u.useDependency(s.IUniverInstanceService),t=u.useDependency(s.Injector),r=D.useMemo(()=>e.getCurrentTypeOfUnit$(s.UniverInstanceType.UNIVER_DOC).pipe(x.filter(a=>!!a&&!s.isInternalEditorID(a.getUnitId()))),[e]),n=u.useObservable(r),i=D.useMemo(()=>new x.Observable(a=>a.next(T)),[]),o=u.useDependency(p.DocSelectionManagerService),c=D.useMemo(()=>o.textSelection$.pipe(x.debounceTime(16)),[o.textSelection$]);u.useObservable(c);const d=u.useDependency(s.ICommandService),C=u.useDependency(E),v=u.useObservable(C.addingComment$),[m,I]=D.useState([]);if(D.useEffect(()=>{var b;const a=new Set,l=n==null?void 0:n.getCustomDecorations();I((b=l==null?void 0:l.map(h=>h.id).filter(h=>{const M=a.has(h);return a.add(h),!M}))!=null?b:[]);const _=d.onCommandExecuted(h=>{var M;if(h.id===p.RichTextEditingMutation.id){const P=new Set,F=n==null?void 0:n.getCustomDecorations();I((M=F==null?void 0:F.map(V=>V.id).filter(V=>{const ne=P.has(V);return P.add(V),!ne}))!=null?M:[])}});return()=>{_.dispose()}},[d,n]),!n)return null;const g=z(t),f=n.getUnitId();return oe.jsx(S.ThreadCommentPanel,{unitId:f,subUnitId$:i,type:s.UniverInstanceType.UNIVER_DOC,onAdd:()=>{d.executeCommand(N.id)},getSubUnitName:()=>"",disableAdd:g,tempComment:v,onAddComment:a=>{if(!a.parentId){const l={unitId:f,range:v,comment:a};return d.executeCommand(K.id,l),C.endAdd(),!1}return!0},onDeleteComment:a=>{if(!a.parentId){const l={unitId:f,commentId:a.id};return d.executeCommand(G.id,l),!1}return!0},showComments:m})};U.componentKey="univer.doc.thread-comment-panel";const $={id:"docs.operation.show-comment-panel",type:s.CommandType.OPERATION,handler(e,t){var i;const r=e.get(S.ThreadCommentPanelService),n=e.get(u.ISidebarService);return(!r.panelVisible||((i=n.options.children)==null?void 0:i.label)!==U.componentKey)&&(n.open({header:{title:"threadCommentUI.panel.title"},children:{label:U.componentKey},width:320,onClose:()=>r.setPanelVisible(!1)}),r.setPanelVisible(!0)),t&&r.setActiveComment(t==null?void 0:t.activeComment),!0}},J={id:"docs.operation.toggle-comment-panel",type:s.CommandType.OPERATION,handler(e){var n;const t=e.get(S.ThreadCommentPanelService),r=e.get(u.ISidebarService);return!t.panelVisible||((n=r.options.children)==null?void 0:n.label)!==U.componentKey?(r.open({header:{title:"threadCommentUI.panel.title"},children:{label:U.componentKey},width:320,onClose:()=>t.setPanelVisible(!1)}),t.setPanelVisible(!0)):(r.close(),t.setPanelVisible(!1),t.setActiveComment(null)),!0}},N={id:"docs.operation.start-add-comment",type:s.CommandType.OPERATION,handler(e){var h,M,P;const t=e.get(S.ThreadCommentPanelService),n=e.get(s.IUniverInstanceService).getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC),i=e.get(p.DocSelectionManagerService),o=e.get(O.IRenderManagerService),c=e.get(s.UserManagerService),d=e.get(E),C=e.get(s.ICommandService),v=e.get(u.ISidebarService),m=i.getActiveTextRange();if(!n||!m)return!1;const I=(h=o.getRenderById(n.getUnitId()))==null?void 0:h.with(w.DocSelectionRenderService);if(I==null||I.setReserveRangesStatus(!0),m.collapsed)return t.panelVisible?(t.setPanelVisible(!1),v.close()):C.executeCommand($.id),!0;C.executeCommand($.id);const g=n.getUnitId(),f=((P=(M=n.getBody())==null?void 0:M.dataStream)!=null?P:"").slice(m.startOffset,m.endOffset),a=s.BuildTextUtils.transform.getPlainText(f),l=T,_="",b={unitId:g,subUnitId:l,id:_,ref:a,dT:A.getDT(),personId:c.getCurrentUser().userID,text:{dataStream:`\r
2
+ `},startOffset:m.startOffset,endOffset:m.endOffset,collapsed:!0,threadId:_};return I==null||I.blur(),d.startAdd(b),t.setActiveComment({unitId:g,subUnitId:l,commentId:_}),!0}},le="@univerjs/docs-thread-comment-ui",ue="0.17.0",Q={name:le,version:ue},Ce="docs-thread-comment-ui.config",Y={};var he=Object.getOwnPropertyDescriptor,ve=(e,t,r,n)=>{for(var i=n>1?void 0:n?he(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},y=(e,t)=>(r,n)=>t(r,n,e);let j=class extends s.Disposable{constructor(e,t,r,n,i,o){super(),this._threadCommentPanelService=e,this._univerInstanceService=t,this._commandService=r,this._docThreadCommentService=n,this._renderManagerService=i,this._threadCommentModel=o,this._initSelectionChange(),this._initActiveCommandChange()}_initSelectionChange(){let e;this.disposeWithMe(this._commandService.onCommandExecuted(t=>{var r,n,i,o;if(t.id===p.SetTextSelectionsOperation.id){const c=t.params,{unitId:d,ranges:C}=c;if(s.isInternalEditorID(d))return;const v=this._univerInstanceService.getUnit(d,s.UniverInstanceType.UNIVER_DOC),m=C[0];if((e==null?void 0:e.startOffset)===(m==null?void 0:m.startOffset)&&(e==null?void 0:e.endOffset)===(m==null?void 0:m.endOffset))return;if(e=m,m&&v){const{startOffset:I,endOffset:g,collapsed:f}=m;let a;if(f?a=(n=(r=v.getBody())==null?void 0:r.customDecorations)==null?void 0:n.find(l=>l.startIndex<=I&&l.endIndex>=g-1):a=(o=(i=v.getBody())==null?void 0:i.customDecorations)==null?void 0:o.find(l=>l.startIndex<=I&&l.endIndex>=g-1),a){const l=this._threadCommentModel.getComment(d,T,a.id);l&&!l.resolved&&this._commandService.executeCommand($.id,{activeComment:{unitId:d,subUnitId:T,commentId:a.id}});return}}if(!this._threadCommentPanelService.activeCommentId)return;this._commandService.executeCommand(S.SetActiveCommentOperation.id)}}))}_initActiveCommandChange(){this.disposeWithMe(this._threadCommentPanelService.activeCommentId$.subscribe(e=>{var t,r,n,i;if(e){const o=this._univerInstanceService.getUnit(e.unitId);if(o){const c=(t=this._renderManagerService.getRenderById(e.unitId))==null?void 0:t.with(w.DocBackScrollRenderController),d=(n=(r=o.getBody())==null?void 0:r.customDecorations)==null?void 0:n.find(C=>C.id===e.commentId);d&&c&&c.scrollToRange({startOffset:d.startIndex,endOffset:d.endIndex,collapsed:!1})}}(!e||e.commentId!==((i=this._docThreadCommentService.addingComment)==null?void 0:i.id))&&this._docThreadCommentService.endAdd()}))}};j=ve([y(0,s.Inject(S.ThreadCommentPanelService)),y(1,s.IUniverInstanceService),y(2,s.ICommandService),y(3,s.Inject(E)),y(4,O.IRenderManagerService),y(5,s.Inject(A.ThreadCommentModel))],j);function X({ref:e,...t}){const{icon:r,id:n,className:i,extend:o,...c}=t,d=`univerjs-icon univerjs-icon-${n} ${i||""}`.trim(),C=D.useRef(`_${ge()}`);return ee(r,`${n}`,{defIds:r.defIds,idSuffix:C.current},{ref:e,className:d,...c},o)}function ee(e,t,r,n,i){return D.createElement(e.tag,{key:t,...Ie(e,r,i),...n},(fe(e,r).children||[]).map((o,c)=>ee(o,`${t}-${e.tag}-${c}`,r,void 0,i)))}function Ie(e,t,r){const n={...e.attrs};r!=null&&r.colorChannel1&&n.fill==="colorChannel1"&&(n.fill=r.colorChannel1),e.tag==="mask"&&n.id&&(n.id=n.id+t.idSuffix),Object.entries(n).forEach(([o,c])=>{o==="mask"&&typeof c=="string"&&(n[o]=c.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))});const{defIds:i}=t;return!i||i.length===0||(e.tag==="use"&&n["xlink:href"]&&(n["xlink:href"]=n["xlink:href"]+t.idSuffix),Object.entries(n).forEach(([o,c])=>{typeof c=="string"&&(n[o]=c.replace(/url\(#(.*)\)/,`url(#$1${t.idSuffix})`))})),n}function fe(e,t){var n;const{defIds:r}=t;return!r||r.length===0?e:e.tag==="defs"&&((n=e.children)!=null&&n.length)?{...e,children:e.children.map(i=>typeof i.attrs.id=="string"&&r&&r.includes(i.attrs.id)?{...i,attrs:{...i.attrs,id:i.attrs.id+t.idSuffix}}:i)}:e}function ge(){return Math.random().toString(36).substring(2,8)}X.displayName="UniverIcon";const pe={tag:"svg",attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 17 17",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.83725 6.78345C6.22188 6.78345 6.53368 7.10742 6.53368 7.50706V8.41159C6.53368 8.81123 6.22188 9.13521 5.83725 9.13521C5.45263 9.13521 5.14082 8.81123 5.14082 8.41159V7.50706C5.14082 7.10742 5.45263 6.78345 5.83725 6.78345ZM8.73904 6.78345C9.12366 6.78345 9.43546 7.10742 9.43546 7.50706V8.41159C9.43546 8.81123 9.12366 9.13521 8.73904 9.13521C8.35441 9.13521 8.04261 8.81123 8.04261 8.41159V7.50706C8.04261 7.10742 8.35441 6.78345 8.73904 6.78345ZM11.6408 6.78345C12.0254 6.78345 12.3372 7.10742 12.3372 7.50706V8.41159C12.3372 8.81123 12.0254 9.13521 11.6408 9.13521C11.2562 9.13521 10.9444 8.81123 10.9444 8.41159V7.50706C10.9444 7.10742 11.2562 6.78345 11.6408 6.78345Z",fillRule:"evenodd",clipRule:"evenodd"}},{tag:"path",attrs:{fill:"currentColor",d:"M5.83725 6.78345C6.22188 6.78345 6.53368 7.10742 6.53368 7.50706V8.41159C6.53368 8.81123 6.22188 9.13521 5.83725 9.13521C5.45263 9.13521 5.14082 8.81123 5.14082 8.41159V7.50706C5.14082 7.10742 5.45263 6.78345 5.83725 6.78345Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M8.73904 6.78345C9.12366 6.78345 9.43546 7.10742 9.43546 7.50706V8.41159C9.43546 8.81123 9.12366 9.13521 8.73904 9.13521C8.35441 9.13521 8.04261 8.81123 8.04261 8.41159V7.50706C8.04261 7.10742 8.35441 6.78345 8.73904 6.78345Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M11.6408 6.78345C12.0254 6.78345 12.3372 7.10742 12.3372 7.50706V8.41159C12.3372 8.81123 12.0254 9.13521 11.6408 9.13521C11.2562 9.13521 10.9444 8.81123 10.9444 8.41159V7.50706C10.9444 7.10742 11.2562 6.78345 11.6408 6.78345Z"}},{tag:"path",attrs:{fill:"currentColor",d:"M1.84351 3.41861C1.84351 3.01861 2.15531 2.69434 2.53993 2.69434H14.9381C15.3228 2.69434 15.6346 3.01861 15.6346 3.41861V12.4611C15.6346 12.8612 15.3228 13.1854 14.9381 13.1854H8.82117L6.06643 14.6179C5.85054 14.7301 5.59416 14.7181 5.38884 14.5862C5.18352 14.4542 5.05855 14.2211 5.05855 13.9701V13.1854H2.53993C2.15531 13.1854 1.84351 12.8612 1.84351 12.4611L1.84351 3.41861ZM6.45141 12.7982L8.34531 12.0135C8.44201 11.9632 8.54864 11.9371 8.65676 11.9371H14.2417C14.3522 11.9371 14.4417 11.8475 14.4417 11.7371V4.14271C14.4417 4.03225 14.3522 3.94271 14.2417 3.94271H3.23636C3.12591 3.94271 3.03636 4.03225 3.03636 4.14271L3.03636 11.7371C3.03636 11.8475 3.12591 11.9371 3.23636 11.9371L5.75498 11.9371C6.1396 11.9371 6.45141 12.0611 6.45141 12.4611V12.7982Z",fillRule:"evenodd",clipRule:"evenodd"}}]},te=D.forwardRef(function(t,r){return D.createElement(X,Object.assign({},t,{id:"comment-icon",ref:r,icon:pe}))});te.displayName="CommentIcon";const Se={[u.RibbonInsertGroup.MEDIA]:{[J.id]:{order:3,menuItemFactory:me}},[u.ContextMenuPosition.MAIN_AREA]:{[u.ContextMenuGroup.DATA]:{[N.id]:{order:1,menuItemFactory:ae}}}};var _e=Object.getOwnPropertyDescriptor,De=(e,t,r,n)=>{for(var i=n>1?void 0:n?_e(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},L=(e,t)=>(r,n)=>t(r,n,e);let B=class extends s.Disposable{constructor(e,t,r){super(),this._commandService=e,this._menuManagerService=t,this._componentManager=r,this._initCommands(),this._initMenus(),this._initComponents()}_initCommands(){[K,G,$,N,J].forEach(e=>{this.disposeWithMe(this._commandService.registerCommand(e))})}_initMenus(){this._menuManagerService.mergeMenu(Se)}_initComponents(){[[U.componentKey,U],["CommentIcon",te]].forEach(([e,t])=>{this.disposeWithMe(this._componentManager.register(e,t))})}};B=De([L(0,s.ICommandService),L(1,u.IMenuManagerService),L(2,s.Inject(u.ComponentManager))],B);var Te=Object.getOwnPropertyDescriptor,Me=(e,t,r,n)=>{for(var i=n>1?void 0:n?Te(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},R=(e,t)=>(r,n)=>t(r,n,e);let Z=class extends s.Disposable{constructor(e,t,r,n,i,o,c){super(),this._context=e,this._docInterceptorService=t,this._threadCommentPanelService=r,this._docRenderController=n,this._univerInstanceService=i,this._threadCommentModel=o,this._commandService=c,this._interceptorViewModel(),this._initReRender(),this._initSyncComments()}_initReRender(){this.disposeWithMe(this._threadCommentPanelService.activeCommentId$.subscribe(e=>{var r;if(e){this._docRenderController.reRender(e.unitId);return}const t=(r=this._univerInstanceService.getCurrentUnitForType(s.UniverInstanceType.UNIVER_DOC))==null?void 0:r.getUnitId();t&&this._docRenderController.reRender(t)})),this.disposeWithMe(this._threadCommentModel.commentUpdate$.subscribe(e=>{e.type==="resolve"&&this._docRenderController.reRender(e.unitId)}))}_interceptorViewModel(){this._docInterceptorService.intercept(p.DOC_INTERCEPTOR_POINT.CUSTOM_DECORATION,{handler:(e,t,r)=>{if(!e)return r(e);const{unitId:n,index:i,customDecorations:o}=t,c=this._threadCommentPanelService.activeCommentId,{commentId:d,unitId:C}=c||{},v=o.find(f=>f.id===d),m=this._threadCommentModel.getComment(n,T,e.id);if(!m)return r({...e,show:!1});const I=v&&i>=v.startIndex&&i<=v.endIndex,g=C===n&&e.id===d;return r({...e,active:g||I,show:!m.resolved})}})}_initSyncComments(){var i,o,c;const e=this._context.unit.getUnitId(),t=T,r=(c=(o=(i=this._context.unit.getBody())==null?void 0:i.customDecorations)==null?void 0:o.filter(d=>d.type===s.CustomDecorationType.COMMENT).map(d=>d.id))!=null?c:[];r.forEach(d=>{this._threadCommentModel.getComment(e,t,d)||this._threadCommentModel.addComment(e,t,{id:d,threadId:d,ref:"",dT:"",personId:"",text:{dataStream:""},unitId:e,subUnitId:t})}),r.length&&this._threadCommentModel.syncThreadComments(this._context.unit.getUnitId(),T,r);let n=r.sort();this.disposeWithMe(this._commandService.onCommandExecuted(d=>{var C,v,m;if(d.id===p.RichTextEditingMutation.id){if(d.params.unitId!==this._context.unit.getUnitId())return;const g=(m=(v=(C=this._context.unit.getBody())==null?void 0:C.customDecorations)==null?void 0:v.filter(a=>a.type===s.CustomDecorationType.COMMENT).map(a=>a.id))!=null?m:[],f=g.sort();if(JSON.stringify(n)!==JSON.stringify(f)){const a=new Set(n),l=new Set(f),_=new Set,b=new Set;g.forEach(h=>{a.has(h)||_.add(h)}),n.forEach(h=>{l.has(h)||b.add(h)}),n=f,_.forEach(h=>{this._threadCommentModel.getComment(e,t,h)||this._threadCommentModel.addComment(e,t,{id:h,threadId:h,ref:"",dT:"",personId:"",text:{dataStream:""},unitId:e,subUnitId:t})}),this._threadCommentModel.syncThreadComments(e,t,[..._])}}}))}};Z=Me([R(1,s.Inject(p.DocInterceptorService)),R(2,s.Inject(S.ThreadCommentPanelService)),R(3,s.Inject(w.DocRenderController)),R(4,s.IUniverInstanceService),R(5,s.Inject(A.ThreadCommentModel)),R(6,s.ICommandService)],Z);var Oe=Object.defineProperty,Ue=Object.getOwnPropertyDescriptor,be=(e,t,r)=>t in e?Oe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ye=(e,t,r,n)=>{for(var i=n>1?void 0:n?Ue(t,r):t,o=e.length-1,c;o>=0;o--)(c=e[o])&&(i=c(i)||i);return i},W=(e,t)=>(r,n)=>t(r,n,e),q=(e,t,r)=>be(e,typeof t!="symbol"?t+"":t,r);exports.UniverDocsThreadCommentUIPlugin=class extends s.Plugin{constructor(t=Y,r,n,i){super(),this._config=t,this._injector=r,this._renderManagerSrv=n,this._configService=i;const{menu:o,...c}=s.merge({},Y,this._config);o&&this._configService.setConfig("menu",o,{merge:!0}),this._configService.setConfig(Ce,c)}onStarting(){[[B],[j],[E]].forEach(t=>{this._injector.add(t)})}onRendered(){this._initRenderModule(),this._injector.get(j),this._injector.get(B)}_initRenderModule(){[Z].forEach(t=>{this._renderManagerSrv.registerRenderModule(s.UniverInstanceType.UNIVER_DOC,t)})}};q(exports.UniverDocsThreadCommentUIPlugin,"pluginName",se);q(exports.UniverDocsThreadCommentUIPlugin,"packageName",Q.name);q(exports.UniverDocsThreadCommentUIPlugin,"version",Q.version);q(exports.UniverDocsThreadCommentUIPlugin,"type",s.UniverInstanceType.UNIVER_DOC);exports.UniverDocsThreadCommentUIPlugin=ye([s.DependentOn(S.UniverThreadCommentUIPlugin),W(1,s.Inject(s.Injector)),W(2,O.IRenderManagerService),W(3,s.IConfigService)],exports.UniverDocsThreadCommentUIPlugin);exports.AddDocCommentComment=K;exports.DeleteDocCommentComment=G;exports.ShowCommentPanelOperation=$;exports.StartAddCommentOperation=N;