@univerjs/thread-comment-ui 0.2.2 → 0.2.4-alpha.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/README.md +11 -4
- package/lib/cjs/index.js +3 -3
- package/lib/es/index.js +329 -326
- package/lib/index.css +1 -1
- package/lib/locale/vi-VN.json +33 -0
- package/lib/locale/zh-TW.json +33 -0
- package/lib/types/locale/vi-VN.d.ts +4 -0
- package/lib/types/locale/zh-TW.d.ts +4 -0
- package/lib/types/plugin.d.ts +1 -2
- package/lib/types/services/thread-comment-mention-data.service.d.ts +1 -1
- package/lib/types/views/thread-comment-panel/index.d.ts +1 -1
- package/lib/umd/index.js +3 -3
- package/package.json +18 -20
package/README.md
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# @univerjs/thread-comment-ui
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
## Package Overview
|
|
4
|
+
|
|
5
|
+
| Package Name | UMD Namespace | Version | License | Downloads | Contains CSS | Contains i18n locales |
|
|
6
|
+
| --- | --- | --- | --- | --- | :---: | :---: |
|
|
7
|
+
| `@univerjs/thread-comment-ui` | `UniveThreadCommentUi` | [![][npm-version-shield]][npm-version-link] | ![][npm-license-shield] | ![][npm-downloads-shield] | ⭕️ | ⭕️ |
|
|
7
8
|
|
|
8
9
|
## Introduction
|
|
9
10
|
|
|
@@ -20,3 +21,9 @@ npm install @univerjs/thread-comment-ui
|
|
|
20
21
|
# Using pnpm
|
|
21
22
|
pnpm add @univerjs/thread-comment-ui
|
|
22
23
|
```
|
|
24
|
+
|
|
25
|
+
<!-- Links -->
|
|
26
|
+
[npm-version-shield]: https://img.shields.io/npm/v/@univerjs/thread-comment-ui?style=flat-square
|
|
27
|
+
[npm-version-link]: https://npmjs.com/package/@univerjs/thread-comment-ui
|
|
28
|
+
[npm-license-shield]: https://img.shields.io/npm/l/@univerjs/thread-comment-ui?style=flat-square
|
|
29
|
+
[npm-downloads-shield]: https://img.shields.io/npm/dm/@univerjs/thread-comment-ui?style=flat-square
|
package/lib/cjs/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";var Me=Object.defineProperty;var Pe=(n,e,t)=>e in n?Me(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var $=(n,e,t)=>Pe(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ue=require("dayjs"),H=require("@univerjs/thread-comment"),d=require("@univerjs/core"),K=require("@wendellhu/redi"),j=require("@univerjs/ui"),ie=require("rxjs"),a=require("react"),y=require("@wendellhu/redi/react-bindings"),P=require("@univerjs/design"),Ne=require("clsx"),Oe=require("@univerjs/engine-render"),De=require("@univerjs/docs");function de(){return Ue().format("YYYY/MM/DD HH:mm")}const ce="thread-comment-panel",Re="THREAD_COMMENT_UI_PLUGIN";var we=Object.defineProperty,$e=Object.getOwnPropertyDescriptor,He=(n,e,t,r)=>{for(var o=r>1?void 0:r?$e(e,t):e,s=n.length-1,m;s>=0;s--)(m=n[s])&&(o=(r?m(e,t,o):m(o))||o);return r&&o&&we(e,t,o),o},le=(n,e)=>(t,r)=>e(t,r,n);exports.ThreadCommentPanelService=class extends d.Disposable{constructor(t,r){super();$(this,"_panelVisible",!1);$(this,"_panelVisible$",new ie.BehaviorSubject(!1));$(this,"_activeCommentId");$(this,"_activeCommentId$",new ie.BehaviorSubject(void 0));$(this,"panelVisible$",this._panelVisible$.asObservable());$(this,"activeCommentId$",this._activeCommentId$.asObservable());this._sidebarService=t,this._univerInstanceService=r,this._init()}_init(){this.disposeWithMe(this._sidebarService.sidebarOptions$.subscribe(t=>{t.visible||this.setPanelVisible(!1)})),this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(d.UniverInstanceType.UNIVER_SHEET).pipe(ie.filter(t=>!t)).subscribe(()=>{this._sidebarService.close()}))}get panelVisible(){return this._panelVisible}get activeCommentId(){return this._activeCommentId}setPanelVisible(t){this._panelVisible=t,this._panelVisible$.next(t)}setActiveComment(t){this._activeCommentId=t,this._activeCommentId$.next(t)}};exports.ThreadCommentPanelService=He([le(0,K.Inject(j.ISidebarService)),le(1,d.IUniverInstanceService)],exports.ThreadCommentPanelService);const ue={id:"thread-comment-ui.operation.toggle-panel",type:d.CommandType.OPERATION,handler(n){const e=n.get(j.ISidebarService),t=n.get(exports.ThreadCommentPanelService);return t.panelVisible?(e.close(),t.setPanelVisible(!1)):(e.open({header:{title:"threadCommentUI.panel.title"},children:{label:ce},width:320}),t.setPanelVisible(!0)),!0}},V={id:"thread-comment-ui.operation.set-active-comment",type:d.CommandType.OPERATION,handler(n,e){return n.get(exports.ThreadCommentPanelService).setActiveComment(e),!0}};var je=Object.defineProperty,Le=Object.getOwnPropertyDescriptor,Ae=(n,e,t,r)=>{for(var o=r>1?void 0:r?Le(e,t):e,s=n.length-1,m;s>=0;s--)(m=n[s])&&(o=(r?m(e,t,o):m(o))||o);return r&&o&&je(e,t,o),o},ke=(n,e)=>(t,r)=>e(t,r,n);let re=class extends d.Disposable{constructor(n){super(),this._localeService=n}};re=Ae([d.OnLifecycle(d.LifecycleStages.Starting,re),ke(0,K.Inject(d.LocaleService))],re);class Ve{constructor(){$(this,"dataSource");$(this,"renderSuggestion");$(this,"trigger","@")}async getMentions(e,t,r){return this.dataSource?this.dataSource.getMentions(e,t,r):[]}}const se=K.createIdentifier("thread-comment.mention-data.service");var he=Object.defineProperty,Be=Object.getOwnPropertyDescriptor,qe=(n,e,t)=>e in n?he(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,Fe=(n,e,t,r)=>{for(var o=r>1?void 0:r?Be(e,t):e,s=n.length-1,m;s>=0;s--)(m=n[s])&&(o=(r?m(e,t,o):m(o))||o);return r&&o&&he(e,t,o),o},me=(n,e)=>(t,r)=>e(t,r,n),ve=(n,e,t)=>qe(n,typeof e!="symbol"?e+"":e,t);exports.UniverThreadCommentUIPlugin=class extends d.Plugin{constructor(e,t,r){super(),this._config=e,this._injector=t,this._commandService=r}onStarting(e){var t;d.mergeOverrideWithDependencies([[re],[exports.ThreadCommentPanelService],[se,{useClass:Ve}]],(t=this._config)==null?void 0:t.overrides).forEach(r=>{e.add(r)}),[ue,V].forEach(r=>{this._commandService.registerCommand(r)})}};ve(exports.UniverThreadCommentUIPlugin,"pluginName",Re);ve(exports.UniverThreadCommentUIPlugin,"type",d.UniverInstanceType.UNIVER_UNKNOWN);exports.UniverThreadCommentUIPlugin=Fe([d.DependentOn(H.UniverThreadCommentPlugin),me(1,K.Inject(K.Injector)),me(2,d.ICommandService)],exports.UniverThreadCommentUIPlugin);var M=function(){return M=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o])}return n},M.apply(this,arguments)},We=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(n);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(n,r[o])&&(t[r[o]]=n[r[o]]);return t},B=a.forwardRef(function(n,e){var t=n.icon,r=n.id,o=n.className,s=n.extend,m=We(n,["icon","id","className","extend"]),u="univerjs-icon univerjs-icon-".concat(r," ").concat(o||"").trim(),g=a.useRef("_".concat(Ye()));return Ce(t,"".concat(r),{defIds:t.defIds,idSuffix:g.current},M({ref:e,className:u},m),s)});function Ce(n,e,t,r,o){return a.createElement(n.tag,M(M({key:e},ze(n,t,o)),r),(Ze(n,t).children||[]).map(function(s,m){return Ce(s,"".concat(e,"-").concat(n.tag,"-").concat(m),t,void 0,o)}))}function ze(n,e,t){var r=M({},n.attrs);t!=null&&t.colorChannel1&&r.fill==="colorChannel1"&&(r.fill=t.colorChannel1);var o=e.defIds;return!o||o.length===0||(n.tag==="use"&&r["xlink:href"]&&(r["xlink:href"]=r["xlink:href"]+e.idSuffix),Object.entries(r).forEach(function(s){var m=s[0],u=s[1];typeof u=="string"&&(r[m]=u.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),r}function Ze(n,e){var t,r=e.defIds;return!r||r.length===0?n:n.tag==="defs"&&(!((t=n.children)===null||t===void 0)&&t.length)?M(M({},n),{children:n.children.map(function(o){return typeof o.attrs.id=="string"&&r&&r.indexOf(o.attrs.id)>-1?M(M({},o),{attrs:M(M({},o.attrs),{id:o.attrs.id+e.idSuffix})}):o})}):n}function Ye(){return Math.random().toString(36).substring(2,8)}B.displayName="UniverIcon";var Ge={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.3313 1.4667C5.3313 1.13533 5.59993.866699 5.9313.866699H10.069C10.4004.866699 10.669 1.13533 10.669 1.4667 10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667zM1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443 14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443zM6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928 9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171 10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778 9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539 9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263 6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539 5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778 6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},fe=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"delete-single",ref:e,icon:Ge}))});fe.displayName="DeleteSingle";var Ke={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.6 1.99991C8.60001 1.66854 8.33138 1.39991 8.00001 1.3999C7.66864 1.3999 7.40001 1.66853 7.4 1.9999L7.39996 7.3999H1.9999C1.66853 7.3999 1.3999 7.66853 1.3999 7.9999C1.3999 8.33127 1.66853 8.5999 1.9999 8.5999H7.39995L7.3999 13.9999C7.3999 14.3313 7.66853 14.5999 7.9999 14.5999C8.33127 14.5999 8.5999 14.3313 8.5999 13.9999L8.59995 8.5999H13.9999C14.3313 8.5999 14.5999 8.33127 14.5999 7.9999C14.5999 7.66853 14.3313 7.3999 13.9999 7.3999H8.59996L8.6 1.99991Z"}}]},ge=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"increase-single",ref:e,icon:Ke}))});ge.displayName="IncreaseSingle";var Je={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3 9C3.55228 9 4 8.55228 4 8 4 7.44772 3.55228 7 3 7 2.44772 7 2 7.44772 2 8 2 8.55228 2.44772 9 3 9zM8 9C8.55228 9 9 8.55228 9 8 9 7.44772 8.55228 7 8 7 7.44772 7 7 7.44772 7 8 7 8.55228 7.44772 9 8 9zM13 9C13.5523 9 14 8.55228 14 8 14 7.44772 13.5523 7 13 7 12.4477 7 12 7.44772 12 8 12 8.55228 12.4477 9 13 9z"}}]},pe=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"more-horizontal-single",ref:e,icon:Je}))});pe.displayName="MoreHorizontalSingle";var Qe={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{stroke:"currentColor",d:"M7.48389 10.3267V12.1905C7.48389 12.7428 7.9316 13.1905 8.48389 13.1905H11.2216L12.2955 14.2644L13.3695 13.1905H14.1593C14.7116 13.1905 15.1593 12.7428 15.1593 12.1905V8.46289C15.1593 7.91061 14.7116 7.46289 14.1593 7.46289H12.2955",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.2}},{tag:"path",attrs:{stroke:"currentColor",d:"M0.840332 3.73535C0.840332 2.63078 1.73576 1.73535 2.84033 1.73535H10.2955C11.4001 1.73535 12.2955 2.63078 12.2955 3.73535V8.32676C12.2955 9.43132 11.4001 10.3268 10.2955 10.3268H5.6014L4.1695 11.7587L3.05978 10.3268H2.84033C1.73576 10.3268 0.840332 9.43133 0.840332 8.32676V3.73535Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.2}},{tag:"path",attrs:{stroke:"currentColor",d:"M6.41016 6.1311H6.76813M8.91626 6.1311H9.27424M3.90454 6.1311H4.26252",strokeLinecap:"round",strokeWidth:1.2}}]},Ie=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"reply-to-comment-single",ref:e,icon:Qe}))});Ie.displayName="ReplyToCommentSingle";var Xe={tag:"svg",attrs:{fill:"none",viewBox:"0 0 17 17",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.6106 15.4036C12.4766 15.4036 15.6106 12.2696 15.6106 8.40356C15.6106 4.53757 12.4766 1.40356 8.6106 1.40356C4.7446 1.40356 1.6106 4.53757 1.6106 8.40356C1.6106 12.2696 4.7446 15.4036 8.6106 15.4036ZM12.3351 6.82773C12.5694 6.59342 12.5694 6.21352 12.3351 5.9792C12.1007 5.74489 11.7208 5.74489 11.4865 5.9792L7.91079 9.55494L6.33506 7.9792C6.10074 7.74489 5.72084 7.74489 5.48653 7.9792C5.25221 8.21352 5.25221 8.59342 5.48653 8.82773L7.48653 10.8277C7.72084 11.062 8.10074 11.062 8.33506 10.8277L12.3351 6.82773Z",fillRule:"evenodd",clipRule:"evenodd"}}]},Se=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"resolved-single",ref:e,icon:Xe}))});Se.displayName="ResolvedSingle";var et={tag:"svg",attrs:{fill:"none",viewBox:"0 0 17 17",width:"1em",height:"1em"},children:[{tag:"circle",attrs:{cx:8.73,cy:8.4,r:6.4,stroke:"currentColor",strokeWidth:1.2}},{tag:"path",attrs:{stroke:"currentColor",d:"M6.02637 8.40356L8.02637 10.4036L12.0264 6.40356",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.2}}]},be=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"solve-single",ref:e,icon:et}))});be.displayName="SolveSingle";const tt="univer-thread-comment-editor-buttons",nt="univer-thread-comment-editor-suggestion",rt="univer-thread-comment-editor-suggestionActive",at="univer-thread-comment-editor-suggestion-icon",ae={threadCommentEditorButtons:tt,threadCommentEditorSuggestion:nt,threadCommentEditorSuggestionActive:rt,threadCommentEditorSuggestionIcon:at},ot=n=>{const e=/@\[(.*?)\]\((.*?)\)|(\w+)/g;let t,r=0;const o=[];for(;(t=e.exec(n))!==null;)t.index>r&&o.push({type:"text",content:n.substring(r,t.index)}),t[1]&&t[2]?o.push({type:"mention",content:{label:t[1],id:t[2]}}):t[3]&&o.push({type:"text",content:t[3]}),r=e.lastIndex;return r<n.length&&o.push({type:"text",content:n.substring(r)}),o},it=n=>n.map(e=>{switch(e.type){case"mention":return`@[${e.content.label}](${e.content.id})`;default:return e.content}}).join(""),ye=n=>{const{dataStream:e,customRanges:t}=n,r=e.length-2,o=[];let s=0;return t==null||t.forEach(m=>{s<m.startIndex&&o.push({type:"text",content:e.slice(s,m.startIndex)}),o.push({type:"mention",content:{label:e.slice(m.startIndex,m.endIndex).slice(1,-1),id:m.rangeId}}),s=m.endIndex}),o.push({type:"text",content:e.slice(s,r)}),o},Ee=n=>{let e="";const t=[];return n.forEach(r=>{switch(r.type){case"text":e+=r.content;break;case"mention":{const o=e.length;e+=`${r.content.label}`;const s=e.length;t.push({rangeId:r.content.id,rangeType:d.CustomRangeType.MENTION,startIndex:o,endIndex:s});break}}}),e+=`
|
|
2
|
-
\r`,{textRuns:[],paragraphs:[{startIndex:e.length-2,paragraphStyle:{}}],sectionBreaks:[{startIndex:e.length-1}],dataStream:e,customRanges:t}},
|
|
3
|
-
\r`},personId:(
|
|
1
|
+
"use strict";var Me=Object.defineProperty;var Ue=(n,e,t)=>e in n?Me(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var R=(n,e,t)=>Ue(n,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ne=require("dayjs"),w=require("@univerjs/thread-comment"),i=require("@univerjs/core"),H=require("@univerjs/ui"),ie=require("rxjs"),a=require("react"),P=require("@univerjs/design"),Oe=require("clsx"),De=require("@univerjs/engine-render"),$e=require("@univerjs/docs");function ce(){return Ne().format("YYYY/MM/DD HH:mm")}const ue="thread-comment-panel",Re="THREAD_COMMENT_UI_PLUGIN";var we=Object.defineProperty,He=Object.getOwnPropertyDescriptor,je=(n,e,t,r)=>{for(var o=r>1?void 0:r?He(e,t):e,s=n.length-1,d;s>=0;s--)(d=n[s])&&(o=(r?d(e,t,o):d(o))||o);return r&&o&&we(e,t,o),o},me=(n,e)=>(t,r)=>e(t,r,n);exports.ThreadCommentPanelService=class extends i.Disposable{constructor(t,r){super();R(this,"_panelVisible",!1);R(this,"_panelVisible$",new ie.BehaviorSubject(!1));R(this,"_activeCommentId");R(this,"_activeCommentId$",new ie.BehaviorSubject(void 0));R(this,"panelVisible$",this._panelVisible$.asObservable());R(this,"activeCommentId$",this._activeCommentId$.asObservable());this._sidebarService=t,this._univerInstanceService=r,this._init(),this.disposeWithMe(()=>{this._activeCommentId$.complete(),this._panelVisible$.complete()})}_init(){this.disposeWithMe(this._sidebarService.sidebarOptions$.subscribe(t=>{t.visible||this.setPanelVisible(!1)})),this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(i.UniverInstanceType.UNIVER_SHEET).pipe(ie.filter(t=>!t)).subscribe(()=>{this._sidebarService.close()}))}get panelVisible(){return this._panelVisible}get activeCommentId(){return this._activeCommentId}setPanelVisible(t){this._panelVisible=t,this._panelVisible$.next(t)}setActiveComment(t){this._activeCommentId=t,this._activeCommentId$.next(t)}};exports.ThreadCommentPanelService=je([me(0,i.Inject(H.ISidebarService)),me(1,i.IUniverInstanceService)],exports.ThreadCommentPanelService);const he={id:"thread-comment-ui.operation.toggle-panel",type:i.CommandType.OPERATION,handler(n){const e=n.get(H.ISidebarService),t=n.get(exports.ThreadCommentPanelService);return t.panelVisible?(e.close(),t.setPanelVisible(!1)):(e.open({header:{title:"threadCommentUI.panel.title"},children:{label:ue},width:320}),t.setPanelVisible(!0)),!0}},k={id:"thread-comment-ui.operation.set-active-comment",type:i.CommandType.OPERATION,handler(n,e){return n.get(exports.ThreadCommentPanelService).setActiveComment(e),!0}};var Le=Object.defineProperty,Ae=Object.getOwnPropertyDescriptor,ke=(n,e,t,r)=>{for(var o=r>1?void 0:r?Ae(e,t):e,s=n.length-1,d;s>=0;s--)(d=n[s])&&(o=(r?d(e,t,o):d(o))||o);return r&&o&&Le(e,t,o),o},Ve=(n,e)=>(t,r)=>e(t,r,n);let re=class extends i.Disposable{constructor(n){super(),this._localeService=n}};re=ke([i.OnLifecycle(i.LifecycleStages.Starting,re),Ve(0,i.Inject(i.LocaleService))],re);class Be{constructor(){R(this,"dataSource");R(this,"renderSuggestion");R(this,"trigger","@")}async getMentions(e,t,r){return this.dataSource?this.dataSource.getMentions(e,t,r):[]}}const se=i.createIdentifier("thread-comment.mention-data.service");var ve=Object.defineProperty,We=Object.getOwnPropertyDescriptor,qe=(n,e,t)=>e in n?ve(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,Fe=(n,e,t,r)=>{for(var o=r>1?void 0:r?We(e,t):e,s=n.length-1,d;s>=0;s--)(d=n[s])&&(o=(r?d(e,t,o):d(o))||o);return r&&o&&ve(e,t,o),o},de=(n,e)=>(t,r)=>e(t,r,n),Ce=(n,e,t)=>qe(n,typeof e!="symbol"?e+"":e,t);exports.UniverThreadCommentUIPlugin=class extends i.Plugin{constructor(e,t,r){super(),this._config=e,this._injector=t,this._commandService=r}onStarting(e){var t;i.mergeOverrideWithDependencies([[re],[exports.ThreadCommentPanelService],[se,{useClass:Be}]],(t=this._config)==null?void 0:t.overrides).forEach(r=>{e.add(r)}),[he,k].forEach(r=>{this._commandService.registerCommand(r)})}};Ce(exports.UniverThreadCommentUIPlugin,"pluginName",Re);Ce(exports.UniverThreadCommentUIPlugin,"type",i.UniverInstanceType.UNIVER_UNKNOWN);exports.UniverThreadCommentUIPlugin=Fe([i.DependentOn(w.UniverThreadCommentPlugin),de(1,i.Inject(i.Injector)),de(2,i.ICommandService)],exports.UniverThreadCommentUIPlugin);var _=function(){return _=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=e[o])}return n},_.apply(this,arguments)},ze=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(n);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(n,r[o])&&(t[r[o]]=n[r[o]]);return t},B=a.forwardRef(function(n,e){var t=n.icon,r=n.id,o=n.className,s=n.extend,d=ze(n,["icon","id","className","extend"]),u="univerjs-icon univerjs-icon-".concat(r," ").concat(o||"").trim(),g=a.useRef("_".concat(Ge()));return fe(t,"".concat(r),{defIds:t.defIds,idSuffix:g.current},_({ref:e,className:u},d),s)});function fe(n,e,t,r,o){return a.createElement(n.tag,_(_({key:e},Ze(n,t,o)),r),(Ye(n,t).children||[]).map(function(s,d){return fe(s,"".concat(e,"-").concat(n.tag,"-").concat(d),t,void 0,o)}))}function Ze(n,e,t){var r=_({},n.attrs);t!=null&&t.colorChannel1&&r.fill==="colorChannel1"&&(r.fill=t.colorChannel1);var o=e.defIds;return!o||o.length===0||(n.tag==="use"&&r["xlink:href"]&&(r["xlink:href"]=r["xlink:href"]+e.idSuffix),Object.entries(r).forEach(function(s){var d=s[0],u=s[1];typeof u=="string"&&(r[d]=u.replace(/url\(#(.*)\)/,"url(#$1".concat(e.idSuffix,")")))})),r}function Ye(n,e){var t,r=e.defIds;return!r||r.length===0?n:n.tag==="defs"&&(!((t=n.children)===null||t===void 0)&&t.length)?_(_({},n),{children:n.children.map(function(o){return typeof o.attrs.id=="string"&&r&&r.indexOf(o.attrs.id)>-1?_(_({},o),{attrs:_(_({},o.attrs),{id:o.attrs.id+e.idSuffix})}):o})}):n}function Ge(){return Math.random().toString(36).substring(2,8)}B.displayName="UniverIcon";var Ke={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.3313 1.4667C5.3313 1.13533 5.59993.866699 5.9313.866699H10.069C10.4004.866699 10.669 1.13533 10.669 1.4667 10.669 1.79807 10.4004 2.0667 10.069 2.0667H5.9313C5.59993 2.0667 5.3313 1.79807 5.3313 1.4667zM1.09985 3.64443C1.09985 3.31306 1.36848 3.04443 1.69985 3.04443H14.2999C14.6312 3.04443 14.8999 3.31306 14.8999 3.64443 14.8999 3.9758 14.6312 4.24443 14.2999 4.24443H1.69985C1.36848 4.24443 1.09985 3.9758 1.09985 3.64443zM6.12398 8.30171C6.35829 8.0674 6.73819 8.0674 6.97251 8.30171L8.00007 9.32928 9.02764 8.30171C9.26195 8.0674 9.64185 8.0674 9.87617 8.30171 10.1105 8.53603 10.1105 8.91593 9.87617 9.15024L8.8486 10.1778 9.87617 11.2054C10.1105 11.4397 10.1105 11.8196 9.87617 12.0539 9.64185 12.2882 9.26195 12.2882 9.02764 12.0539L8.00007 11.0263 6.97251 12.0539C6.73819 12.2882 6.35829 12.2882 6.12398 12.0539 5.88966 11.8196 5.88966 11.4397 6.12398 11.2054L7.15154 10.1778 6.12398 9.15024C5.88966 8.91593 5.88966 8.53603 6.12398 8.30171z"}},{tag:"path",attrs:{fill:"currentColor",d:"M4.75332 5.22217C3.86966 5.22217 3.15332 5.93851 3.15332 6.82217V12.5331C3.15332 13.9691 4.31738 15.1332 5.75332 15.1332H10.2465C11.6825 15.1332 12.8465 13.9691 12.8465 12.5331V6.82217C12.8465 5.93851 12.1302 5.22217 11.2465 5.22217H4.75332ZM4.35332 6.82217C4.35332 6.60125 4.53241 6.42217 4.75332 6.42217H11.2465C11.4674 6.42217 11.6465 6.60125 11.6465 6.82217V12.5331C11.6465 13.3063 11.0197 13.9332 10.2465 13.9332H5.75332C4.98012 13.9332 4.35332 13.3063 4.35332 12.5331V6.82217Z",fillRule:"evenodd",clipRule:"evenodd"}}]},ge=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"delete-single",ref:e,icon:Ke}))});ge.displayName="DeleteSingle";var Je={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.6 1.99991C8.60001 1.66854 8.33138 1.39991 8.00001 1.3999C7.66864 1.3999 7.40001 1.66853 7.4 1.9999L7.39996 7.3999H1.9999C1.66853 7.3999 1.3999 7.66853 1.3999 7.9999C1.3999 8.33127 1.66853 8.5999 1.9999 8.5999H7.39995L7.3999 13.9999C7.3999 14.3313 7.66853 14.5999 7.9999 14.5999C8.33127 14.5999 8.5999 14.3313 8.5999 13.9999L8.59995 8.5999H13.9999C14.3313 8.5999 14.5999 8.33127 14.5999 7.9999C14.5999 7.66853 14.3313 7.3999 13.9999 7.3999H8.59996L8.6 1.99991Z"}}]},pe=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"increase-single",ref:e,icon:Je}))});pe.displayName="IncreaseSingle";var Qe={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3 9C3.55228 9 4 8.55228 4 8 4 7.44772 3.55228 7 3 7 2.44772 7 2 7.44772 2 8 2 8.55228 2.44772 9 3 9zM8 9C8.55228 9 9 8.55228 9 8 9 7.44772 8.55228 7 8 7 7.44772 7 7 7.44772 7 8 7 8.55228 7.44772 9 8 9zM13 9C13.5523 9 14 8.55228 14 8 14 7.44772 13.5523 7 13 7 12.4477 7 12 7.44772 12 8 12 8.55228 12.4477 9 13 9z"}}]},Ie=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"more-horizontal-single",ref:e,icon:Qe}))});Ie.displayName="MoreHorizontalSingle";var Xe={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{stroke:"currentColor",d:"M7.48389 10.3267V12.1905C7.48389 12.7428 7.9316 13.1905 8.48389 13.1905H11.2216L12.2955 14.2644L13.3695 13.1905H14.1593C14.7116 13.1905 15.1593 12.7428 15.1593 12.1905V8.46289C15.1593 7.91061 14.7116 7.46289 14.1593 7.46289H12.2955",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.2}},{tag:"path",attrs:{stroke:"currentColor",d:"M0.840332 3.73535C0.840332 2.63078 1.73576 1.73535 2.84033 1.73535H10.2955C11.4001 1.73535 12.2955 2.63078 12.2955 3.73535V8.32676C12.2955 9.43132 11.4001 10.3268 10.2955 10.3268H5.6014L4.1695 11.7587L3.05978 10.3268H2.84033C1.73576 10.3268 0.840332 9.43133 0.840332 8.32676V3.73535Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.2}},{tag:"path",attrs:{stroke:"currentColor",d:"M6.41016 6.1311H6.76813M8.91626 6.1311H9.27424M3.90454 6.1311H4.26252",strokeLinecap:"round",strokeWidth:1.2}}]},Se=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"reply-to-comment-single",ref:e,icon:Xe}))});Se.displayName="ReplyToCommentSingle";var et={tag:"svg",attrs:{fill:"none",viewBox:"0 0 17 17",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.6106 15.4036C12.4766 15.4036 15.6106 12.2696 15.6106 8.40356C15.6106 4.53757 12.4766 1.40356 8.6106 1.40356C4.7446 1.40356 1.6106 4.53757 1.6106 8.40356C1.6106 12.2696 4.7446 15.4036 8.6106 15.4036ZM12.3351 6.82773C12.5694 6.59342 12.5694 6.21352 12.3351 5.9792C12.1007 5.74489 11.7208 5.74489 11.4865 5.9792L7.91079 9.55494L6.33506 7.9792C6.10074 7.74489 5.72084 7.74489 5.48653 7.9792C5.25221 8.21352 5.25221 8.59342 5.48653 8.82773L7.48653 10.8277C7.72084 11.062 8.10074 11.062 8.33506 10.8277L12.3351 6.82773Z",fillRule:"evenodd",clipRule:"evenodd"}}]},be=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"resolved-single",ref:e,icon:et}))});be.displayName="ResolvedSingle";var tt={tag:"svg",attrs:{fill:"none",viewBox:"0 0 17 17",width:"1em",height:"1em"},children:[{tag:"circle",attrs:{cx:8.73,cy:8.4,r:6.4,stroke:"currentColor",strokeWidth:1.2}},{tag:"path",attrs:{stroke:"currentColor",d:"M6.02637 8.40356L8.02637 10.4036L12.0264 6.40356",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:1.2}}]},ye=a.forwardRef(function(n,e){return a.createElement(B,Object.assign({},n,{id:"solve-single",ref:e,icon:tt}))});ye.displayName="SolveSingle";const nt="univer-thread-comment-editor-buttons",rt="univer-thread-comment-editor-suggestion",at="univer-thread-comment-editor-suggestionActive",ot="univer-thread-comment-editor-suggestion-icon",ae={threadCommentEditorButtons:nt,threadCommentEditorSuggestion:rt,threadCommentEditorSuggestionActive:at,threadCommentEditorSuggestionIcon:ot},it=n=>{const e=/@\[(.*?)\]\((.*?)\)|(\w+)/g;let t,r=0;const o=[];for(;(t=e.exec(n))!==null;)t.index>r&&o.push({type:"text",content:n.substring(r,t.index)}),t[1]&&t[2]?o.push({type:"mention",content:{label:t[1],id:t[2]}}):t[3]&&o.push({type:"text",content:t[3]}),r=e.lastIndex;return r<n.length&&o.push({type:"text",content:n.substring(r)}),o},st=n=>n.map(e=>{switch(e.type){case"mention":return`@[${e.content.label}](${e.content.id})`;default:return e.content}}).join(""),Ee=n=>{const{dataStream:e,customRanges:t}=n,r=e.length-2,o=[];let s=0;return t==null||t.forEach(d=>{s<d.startIndex&&o.push({type:"text",content:e.slice(s,d.startIndex)}),o.push({type:"mention",content:{label:e.slice(d.startIndex,d.endIndex).slice(1,-1),id:d.rangeId}}),s=d.endIndex}),o.push({type:"text",content:e.slice(s,r)}),o},Te=n=>{let e="";const t=[];return n.forEach(r=>{switch(r.type){case"text":e+=r.content;break;case"mention":{const o=e.length;e+=`${r.content.label}`;const s=e.length;t.push({rangeId:r.content.id,rangeType:i.CustomRangeType.MENTION,startIndex:o,endIndex:s});break}}}),e+=`
|
|
2
|
+
\r`,{textRuns:[],paragraphs:[{startIndex:e.length-2,paragraphStyle:{}}],sectionBreaks:[{startIndex:e.length-1}],dataStream:e,customRanges:t}},lt=n=>({display:n.label,id:`${n.id}`,raw:n}),mt=(n,e,t,r,o)=>{var d,u;const s=(d=n.raw)==null?void 0:d.icon;return a.createElement("div",{className:ae.threadCommentEditorSuggestion},s?a.createElement("img",{className:ae.threadCommentEditorSuggestionIcon,src:s}):null,a.createElement("div",null,(u=n.display)!=null?u:n.id))},xe=a.forwardRef((n,e)=>{var C;const{comment:t,onSave:r,id:o,onCancel:s,autoFocus:d,unitId:u,subUnitId:g}=n,E=i.useDependency(se),N=i.useDependency(i.ICommandService),x=i.useDependency(i.LocaleService),[S,v]=a.useState({...t}),[p,b]=a.useState(!1),M=a.useRef(null),y=i.useDependency(De.ITextSelectionRenderManager),j=i.useDependency($e.TextSelectionManagerService);return a.useImperativeHandle(e,()=>({reply(f){var c;v({...t,text:f,attachments:[]}),(c=M.current)==null||c.inputElement.focus()}})),a.createElement("div",{className:ae.threadCommentEditor,onClick:f=>f.preventDefault()},a.createElement(P.Mentions,{ref:M,autoFocus:d,style:{width:"100%"},placeholder:x.t("threadCommentUI.editor.placeholder"),value:S!=null&&S.text?st(Ee(S.text)):"",onChange:f=>{f.target.value||v({...t,text:void 0}),v==null||v({...t,text:Te(it(f.target.value))})},onFocus:()=>{const f=j.getActiveRange();f&&f.collapsed&&y.removeAllTextRanges(),y.blur(),b(!0)}},a.createElement(P.Mention,{key:E.trigger,trigger:E.trigger,data:(f,c)=>E.getMentions(f,u,g).then(l=>l.map(lt)).then(c),displayTransform:(f,c)=>`@${c} `,renderSuggestion:(C=E.renderSuggestion)!=null?C:mt})),p?a.createElement("div",{className:ae.threadCommentEditorButtons},a.createElement(P.Button,{style:{marginRight:12},onClick:()=>{s==null||s(),b(!1),v({text:void 0}),N.executeCommand(k.id)}},x.t("threadCommentUI.editor.cancel")),a.createElement(P.Button,{type:"primary",disabled:!S.text,onClick:()=>{S.text&&(r==null||r({...S,text:S.text}),b(!1),v({text:void 0}))}},x.t(o?"threadCommentUI.editor.save":"threadCommentUI.editor.reply"))):null)}),dt="univer-thread-comment",ct="univer-thread-comment-active",ut="univer-thread-comment-content",ht="univer-thread-comment-highlight",vt="univer-thread-comment-icon-container",Ct="univer-thread-comment-icon",ft="univer-thread-comment-title",gt="univer-thread-comment-title-position",pt="univer-thread-comment-title-highlight",It="univer-thread-comment-title-position-text",St="univer-thread-comment-username",bt="univer-thread-comment-item",yt="univer-thread-comment-item-head",Et="univer-thread-comment-item-title",Tt="univer-thread-comment-item-title-position",xt="univer-thread-comment-item-title-highlight",_t="univer-thread-comment-item-time",Pt="univer-thread-comment-item-content",Mt="univer-thread-comment-item-at",h={threadComment:dt,threadCommentActive:ct,threadCommentContent:ut,threadCommentHighlight:ht,threadCommentIconContainer:vt,threadCommentIcon:Ct,threadCommentTitle:ft,threadCommentTitlePosition:gt,threadCommentTitleHighlight:pt,threadCommentTitlePositionText:It,threadCommentUsername:St,threadCommentItem:bt,threadCommentItemHead:yt,threadCommentItemTitle:Et,threadCommentItemTitlePosition:Tt,threadCommentItemTitleHighlight:xt,threadCommentItemTime:_t,threadCommentItemContent:Pt,threadCommentItemAt:Mt},_e="__mock__",Ut=n=>{const{item:e,unitId:t,subUnitId:r,editing:o,onEditingChange:s,onReply:d,resolved:u,isRoot:g,onClose:E,onDeleteComment:N}=n,x=i.useDependency(i.ICommandService),S=i.useDependency(i.LocaleService),v=i.useDependency(i.UserManagerService),p=v.getUser(e.personId),b=H.useObservable(v.currentUser$),M=(b==null?void 0:b.userID)===e.personId,y=e.id===_e,[j,C]=a.useState(!1),f=()=>{(N==null?void 0:N(e))!==!1&&(x.executeCommand(g?w.DeleteCommentTreeCommand.id:w.DeleteCommentCommand.id,{unitId:t,subUnitId:r,commentId:e.id}),g&&(E==null||E()))};return a.createElement("div",{className:h.threadCommentItem,onMouseLeave:()=>C(!1),onMouseEnter:()=>C(!0)},a.createElement("img",{className:h.threadCommentItemHead,src:p==null?void 0:p.avatar}),a.createElement("div",{className:h.threadCommentItemTitle},a.createElement("div",{className:h.threadCommentUsername},(p==null?void 0:p.name)||" "),a.createElement("div",null,y||u?null:j?a.createElement("div",{className:h.threadCommentIcon,onClick:()=>d(p)},a.createElement(Se,null)):null,M&&!y&&!u?a.createElement(P.Dropdown,{overlay:a.createElement(P.Menu,null,a.createElement(P.MenuItem,{key:"edit",onClick:()=>s==null?void 0:s(!0)},S.t("threadCommentUI.item.edit")),a.createElement(P.MenuItem,{key:"delete",onClick:f},S.t("threadCommentUI.item.delete")))},a.createElement("div",{className:h.threadCommentIcon},a.createElement(Ie,null))):null)),a.createElement("div",{className:h.threadCommentItemTime},e.dT),o?a.createElement(xe,{id:e.id,comment:e,onCancel:()=>s==null?void 0:s(!1),autoFocus:!0,unitId:t,subUnitId:r,onSave:({text:c,attachments:l})=>{s==null||s(!1),x.executeCommand(w.UpdateCommentCommand.id,{unitId:t,subUnitId:r,payload:{commentId:e.id,text:c,attachments:l}})}}):a.createElement("div",{className:h.threadCommentItemContent},Ee(e.text).map((c,l)=>{switch(c.type){case"mention":return a.createElement("a",{className:h.threadCommentItemAt,key:l},"@",c.content.label," ");default:return c.content}})))},Pe=n=>{var Z,W,X;const{id:e,unitId:t,subUnitId:r,refStr:o,showEdit:s=!0,onClick:d,showHighlight:u,onClose:g,getSubUnitName:E,prefix:N,autoFocus:x,onMouseEnter:S,onMouseLeave:v,onAddComment:p,onDeleteComment:b,onResolve:M}=n,y=i.useDependency(w.ThreadCommentModel),[j,C]=a.useState(!1),[f,c]=a.useState("");H.useObservable(y.commentMap$);const l=e?y.getCommentWithChildren(t,r,e):null,L=i.useDependency(i.ICommandService),oe=i.useDependency(i.UserManagerService),I=l==null?void 0:l.root.resolved,U=H.useObservable(oe.currentUser$),q=a.useRef(null),J=[...l?[l.root]:[{id:_e,text:{dataStream:`
|
|
3
|
+
\r`},personId:(Z=U==null?void 0:U.userID)!=null?Z:"",ref:o!=null?o:"",dT:"",unitId:t,subUnitId:r,threadId:""}],...(W=l==null?void 0:l.children)!=null?W:[]],F=T=>{T.stopPropagation(),I?L.executeCommand(k.id,{unitId:t,subUnitId:r,commentId:e}):L.executeCommand(k.id),L.executeCommand(w.ResolveCommentCommand.id,{unitId:t,subUnitId:r,commentId:e,resolved:!I}),M==null||M(!I)},Q=T=>{T.stopPropagation(),L.executeCommand(k.id),!(l!=null&&l.root&&(b==null?void 0:b(l.root))===!1)&&(L.executeCommand(w.DeleteCommentTreeCommand.id,{unitId:t,subUnitId:r,commentId:e}),g==null||g())};a.useEffect(()=>v==null?void 0:v(),[]);const O=E((X=l==null?void 0:l.root.subUnitId)!=null?X:r),z=s&&!f&&!I,A=`${o||(l==null?void 0:l.root.ref)||""}${O?" · ":""}${O}`;return a.createElement("div",{className:Oe(h.threadComment,{[h.threadCommentActive]:!I&&(u||j||N==="cell")}),onClick:d,id:`${N}-${t}-${r}-${e}`,onMouseEnter:()=>{S==null||S(),C(!0)},onMouseLeave:()=>{v==null||v(),C(!1)}},!I&&u?a.createElement("div",{className:h.threadCommentHighlight}):null,a.createElement("div",{className:h.threadCommentTitle},a.createElement("div",{className:h.threadCommentTitlePosition},a.createElement("div",{className:h.threadCommentTitleHighlight}),a.createElement("div",{className:h.threadCommentTitlePositionText},A)),l?a.createElement("div",{className:h.threadCommentIconContainer},a.createElement("div",{onClick:F,className:h.threadCommentIcon,style:{color:I?"rgb(var(--green-500))":""}},I?a.createElement(be,null):a.createElement(ye,null)),(U==null?void 0:U.userID)===l.root.personId?a.createElement("div",{className:h.threadCommentIcon,onClick:Q},a.createElement(ge,null)):null):null),a.createElement("div",{className:h.threadCommentContent},J.map(T=>a.createElement(Ut,{onClose:g,unitId:t,subUnitId:r,item:T,key:T.id,isRoot:T.id===(l==null?void 0:l.root.id),editing:f===T.id,resolved:l==null?void 0:l.root.resolved,onEditingChange:D=>{c(D?T.id:"")},onReply:D=>{D&&requestAnimationFrame(()=>{var V;(V=q.current)==null||V.reply(Te([{type:"mention",content:{id:D.userID,label:D.name}}]))})},onAddComment:p,onDeleteComment:b}))),z?a.createElement("div",null,a.createElement(xe,{key:`${x}`,ref:q,unitId:t,subUnitId:r,onSave:({text:T,attachments:D})=>{const V={text:T,attachments:D,dT:ce(),id:i.Tools.generateRandomId(),ref:o,personId:U==null?void 0:U.userID,parentId:l==null?void 0:l.root.id,unitId:t,subUnitId:r,threadId:l==null?void 0:l.root.threadId};(p==null?void 0:p(V))!==!1&&L.executeCommand(w.AddCommentCommand.id,{unitId:t,subUnitId:r,comment:V})},autoFocus:x||!l,onCancel:()=>{l||g==null||g()}})):null)},Nt="univer-thread-comment-panel",Ot="univer-thread-comment",Dt="univer-thread-comment-panel-forms",$t="univer-select",Rt="univer-thread-comment-panel-empty",wt="univer-thread-comment-panel-add",Ht="univer-thread-comment-panel-solved",K={threadCommentPanel:Nt,threadComment:Ot,threadCommentPanelForms:Dt,select:$t,threadCommentPanelEmpty:Rt,threadCommentPanelAdd:wt,threadCommentPanelSolved:Ht},jt=n=>{const{unitId:e,subUnitId$:t,type:r,onAdd:o,getSubUnitName:s,onResolve:d,sortComments:u,onItemLeave:g,onItemEnter:E,disableAdd:N,tempComment:x,onAddComment:S,onDeleteComment:v,showComments:p}=n,[b,M]=a.useState("all"),[y,j]=a.useState("all"),C=i.useDependency(i.LocaleService),f=i.useDependency(i.UserManagerService),c=i.useDependency(w.ThreadCommentModel),[l,L]=a.useState(()=>c.getUnit(e)),oe=i.useDependency(exports.ThreadCommentPanelService),I=H.useObservable(oe.activeCommentId$),U=H.useObservable(c.commentUpdate$),q=i.useDependency(i.ICommandService),J=H.useObservable(t),F=a.useRef(!0),Q="panel",O=H.useObservable(f.currentUser$),z=a.useMemo(()=>{var te,G;const m=(b==="all"?l.map($=>$[1]).flat():(G=(te=l.find($=>$[0]===J))==null?void 0:te[1])!=null?G:[]).filter($=>!$.parentId),Y=u!=null?u:$=>$,ee=m;if(p){const $=new Map;return ee.forEach(ne=>{$.set(ne.id,ne)}),[...p,""].map(ne=>$.get(ne)).filter(Boolean)}else return Y(ee)},[p,b,l,u,J]),A=a.useMemo(()=>[...z.filter(m=>!m.resolved),...z.filter(m=>m.resolved)],[z]),Z=a.useMemo(()=>y==="resolved"?A.filter(m=>m.resolved):y==="unsolved"?A.filter(m=>!m.resolved):y==="concern_me"&&O!=null&&O.userID?A.map(m=>c.getCommentWithChildren(m.unitId,m.subUnitId,m.id)).map(m=>m!=null&&m.relativeUsers.has(O.userID)?m.root:null).filter(Boolean):A,[A,O==null?void 0:O.userID,y,c]),W=x?[x,...Z]:Z,X=W.filter(m=>!m.resolved),T=W.filter(m=>m.resolved),D=y!=="all"||b!=="all",V=()=>{j("all"),M("all")};a.useEffect(()=>{e&&L(c.getUnit(e))},[e,c,U]),a.useEffect(()=>{var G;if(!I)return;if(!F.current){F.current=!0;return}const{unitId:m,subUnitId:Y,commentId:ee}=I,te=`${Q}-${m}-${Y}-${ee}`;(G=document.getElementById(te))==null||G.scrollIntoView({block:"center"})},[I]);const le=m=>a.createElement(Pe,{prefix:Q,getSubUnitName:s,key:m.id,id:m.id,unitId:m.unitId,subUnitId:m.subUnitId,refStr:m.ref,type:r,showEdit:(I==null?void 0:I.commentId)===m.id,showHighlight:(I==null?void 0:I.commentId)===m.id,onClick:()=>{F.current=!1,m.resolved?q.executeCommand(k.id):q.executeCommand(k.id,{unitId:m.unitId,subUnitId:m.subUnitId,commentId:m.id,temp:!1})},onMouseEnter:()=>E==null?void 0:E(m),onMouseLeave:()=>g==null?void 0:g(m),onAddComment:S,onDeleteComment:v,onResolve:Y=>d==null?void 0:d(m.id,Y)});return a.createElement("div",{className:K.threadCommentPanel},a.createElement("div",{className:K.threadCommentPanelForms},r===i.UniverInstanceType.UNIVER_SHEET?a.createElement(P.Select,{borderless:!0,value:b,onChange:m=>M(m),options:[{value:"current",label:C.t("threadCommentUI.filter.sheet.current")},{value:"all",label:C.t("threadCommentUI.filter.sheet.all")}]}):null,a.createElement(P.Select,{borderless:!0,value:y,onChange:m=>j(m),options:[{value:"all",label:C.t("threadCommentUI.filter.status.all")},{value:"resolved",label:C.t("threadCommentUI.filter.status.resolved")},{value:"unsolved",label:C.t("threadCommentUI.filter.status.unsolved")},{value:"concern_me",label:C.t("threadCommentUI.filter.status.concernMe")}]})),X.map(le),T.length?a.createElement("div",{className:K.threadCommentPanelSolved},"已解决"):null,T.map(le),W.length?null:a.createElement("div",{className:K.threadCommentPanelEmpty},D?C.t("threadCommentUI.panel.filterEmpty"):C.t("threadCommentUI.panel.empty"),D?a.createElement(P.Button,{onClick:V,type:"link"},C.t("threadCommentUI.panel.reset")):a.createElement(P.Button,{id:"thread-comment-add",className:K.threadCommentPanelAdd,type:"primary",onClick:o,disabled:N},a.createElement(pe,null),C.t("threadCommentUI.panel.addComment"))))};exports.IThreadCommentMentionDataService=se;exports.SetActiveCommentOperation=k;exports.THREAD_COMMENT_PANEL=ue;exports.ThreadCommentPanel=jt;exports.ThreadCommentTree=Pe;exports.ToggleSheetCommentPanelOperation=he;exports.getDT=ce;
|