@opensumi/ide-comments 2.21.13 → 2.22.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/browser/comments-feature.registry.js.map +1 -1
- package/lib/browser/comments-panel.view.d.ts +2 -3
- package/lib/browser/comments-panel.view.d.ts.map +1 -1
- package/lib/browser/comments-panel.view.js +32 -70
- package/lib/browser/comments-panel.view.js.map +1 -1
- package/lib/browser/comments-thread.d.ts +4 -2
- package/lib/browser/comments-thread.d.ts.map +1 -1
- package/lib/browser/comments-thread.js +14 -7
- package/lib/browser/comments-thread.js.map +1 -1
- package/lib/browser/comments-zone.service.js.map +1 -1
- package/lib/browser/comments-zone.view.d.ts +1 -1
- package/lib/browser/comments-zone.view.d.ts.map +1 -1
- package/lib/browser/comments-zone.view.js +1 -1
- package/lib/browser/comments-zone.view.js.map +1 -1
- package/lib/browser/comments.contribution.d.ts +1 -0
- package/lib/browser/comments.contribution.d.ts.map +1 -1
- package/lib/browser/comments.contribution.js +6 -1
- package/lib/browser/comments.contribution.js.map +1 -1
- package/lib/browser/comments.service.d.ts +7 -4
- package/lib/browser/comments.service.d.ts.map +1 -1
- package/lib/browser/comments.service.js +60 -87
- package/lib/browser/comments.service.js.map +1 -1
- package/lib/browser/index.d.ts +0 -1
- package/lib/browser/index.d.ts.map +1 -1
- package/lib/browser/index.js +5 -1
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/tree/comment-node.d.ts +14 -0
- package/lib/browser/tree/comment-node.d.ts.map +1 -0
- package/lib/browser/tree/comment-node.js +64 -0
- package/lib/browser/tree/comment-node.js.map +1 -0
- package/lib/browser/tree/tree-model.service.d.ts +43 -0
- package/lib/browser/tree/tree-model.service.d.ts.map +1 -0
- package/lib/browser/tree/tree-model.service.js +150 -0
- package/lib/browser/tree/tree-model.service.js.map +1 -0
- package/lib/browser/tree/tree-node.defined.d.ts +61 -0
- package/lib/browser/tree/tree-node.defined.d.ts.map +1 -0
- package/lib/browser/tree/tree-node.defined.js +116 -0
- package/lib/browser/tree/tree-node.defined.js.map +1 -0
- package/lib/browser/tree/tree-node.module.less +154 -0
- package/lib/common/index.d.ts +38 -36
- package/lib/common/index.d.ts.map +1 -1
- package/lib/common/index.js.map +1 -1
- package/package.json +13 -12
- package/src/browser/comment-reactions.view.tsx +109 -0
- package/src/browser/comments-body.tsx +57 -0
- package/src/browser/comments-feature.registry.ts +91 -0
- package/src/browser/comments-item.view.tsx +362 -0
- package/src/browser/comments-panel.view.tsx +90 -0
- package/src/browser/comments-textarea.view.tsx +194 -0
- package/src/browser/comments-thread.ts +309 -0
- package/src/browser/comments-zone.service.ts +29 -0
- package/src/browser/comments-zone.view.tsx +206 -0
- package/src/browser/comments.contribution.ts +201 -0
- package/src/browser/comments.module.less +210 -0
- package/src/browser/comments.service.ts +546 -0
- package/src/browser/index.ts +29 -0
- package/src/browser/markdown.style.ts +25 -0
- package/src/browser/mentions.style.ts +55 -0
- package/src/browser/tree/comment-node.tsx +130 -0
- package/src/browser/tree/tree-model.service.ts +173 -0
- package/src/browser/tree/tree-node.defined.ts +167 -0
- package/src/browser/tree/tree-node.module.less +154 -0
- package/src/common/index.ts +710 -0
- package/src/index.ts +1 -0
|
@@ -5,7 +5,6 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const debounce_1 = tslib_1.__importDefault(require("lodash/debounce"));
|
|
6
6
|
const flattenDeep_1 = tslib_1.__importDefault(require("lodash/flattenDeep"));
|
|
7
7
|
const groupBy_1 = tslib_1.__importDefault(require("lodash/groupBy"));
|
|
8
|
-
const mobx_1 = require("mobx");
|
|
9
8
|
const di_1 = require("@opensumi/di");
|
|
10
9
|
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
11
10
|
const browser_1 = require("@opensumi/ide-editor/lib/browser");
|
|
@@ -16,13 +15,14 @@ const monaco = tslib_1.__importStar(require("@opensumi/monaco-editor-core/esm/vs
|
|
|
16
15
|
const common_1 = require("../common");
|
|
17
16
|
const comments_panel_view_1 = require("./comments-panel.view");
|
|
18
17
|
const comments_thread_1 = require("./comments-thread");
|
|
19
|
-
const
|
|
18
|
+
const tree_node_defined_1 = require("./tree/tree-node.defined");
|
|
20
19
|
let CommentsService = class CommentsService extends ide_core_browser_1.Disposable {
|
|
21
20
|
constructor() {
|
|
22
21
|
super(...arguments);
|
|
23
22
|
this.decorationChangeEmitter = new ide_core_browser_1.Emitter();
|
|
24
23
|
this.threads = new Map();
|
|
25
24
|
this.threadsChangeEmitter = new ide_core_browser_1.Emitter();
|
|
25
|
+
this.threadsCommentChangeEmitter = new ide_core_browser_1.Emitter();
|
|
26
26
|
this.threadsCreatedEmitter = new ide_core_browser_1.Emitter();
|
|
27
27
|
this.rangeProviderMap = new Map();
|
|
28
28
|
this.rangeOwner = new Map();
|
|
@@ -30,7 +30,6 @@ let CommentsService = class CommentsService extends ide_core_browser_1.Disposabl
|
|
|
30
30
|
// 默认在 file 协议和 git 协议中显示评论数据
|
|
31
31
|
this.shouldShowCommentsSchemes = new Set(['file', 'git']);
|
|
32
32
|
this.decorationProviderDisposer = ide_core_browser_1.Disposable.NULL;
|
|
33
|
-
this.forceUpdateCount = 0;
|
|
34
33
|
}
|
|
35
34
|
get commentsThreads() {
|
|
36
35
|
return [...this.threads.values()];
|
|
@@ -50,6 +49,9 @@ let CommentsService = class CommentsService extends ide_core_browser_1.Disposabl
|
|
|
50
49
|
get onThreadsChanged() {
|
|
51
50
|
return this.threadsChangeEmitter.event;
|
|
52
51
|
}
|
|
52
|
+
get onThreadsCommentChange() {
|
|
53
|
+
return this.threadsCommentChangeEmitter.event;
|
|
54
|
+
}
|
|
53
55
|
get onThreadsCreated() {
|
|
54
56
|
return this.threadsCreatedEmitter.event;
|
|
55
57
|
}
|
|
@@ -77,7 +79,7 @@ let CommentsService = class CommentsService extends ide_core_browser_1.Disposabl
|
|
|
77
79
|
createHoverDecoration() {
|
|
78
80
|
const decorationOptions = {
|
|
79
81
|
description: 'comments-hover-decoration',
|
|
80
|
-
linesDecorationsClassName: ['comments-decoration', 'comments-add', (0, ide_core_browser_1.getIcon)('
|
|
82
|
+
linesDecorationsClassName: ['comments-decoration', 'comments-add', (0, ide_core_browser_1.getIcon)('add-comments')].join(' '),
|
|
81
83
|
};
|
|
82
84
|
return textModel.ModelDecorationOptions.createDynamic(decorationOptions);
|
|
83
85
|
}
|
|
@@ -182,6 +184,9 @@ let CommentsService = class CommentsService extends ide_core_browser_1.Disposabl
|
|
|
182
184
|
this.threadsChangeEmitter.fire(thread);
|
|
183
185
|
this.decorationChangeEmitter.fire(uri);
|
|
184
186
|
});
|
|
187
|
+
thread.onDidChange(() => {
|
|
188
|
+
this.threadsChangeEmitter.fire(thread);
|
|
189
|
+
});
|
|
185
190
|
this.threads.set(thread.id, thread);
|
|
186
191
|
this.addDispose(thread);
|
|
187
192
|
this.threadsChangeEmitter.fire(thread);
|
|
@@ -195,68 +200,53 @@ let CommentsService = class CommentsService extends ide_core_browser_1.Disposabl
|
|
|
195
200
|
// 默认按照 rang 顺序 升序排列
|
|
196
201
|
.sort((a, b) => a.range.startLineNumber - b.range.startLineNumber));
|
|
197
202
|
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
return;
|
|
209
|
-
}
|
|
210
|
-
const firstThread = threads[0];
|
|
211
|
-
const firstThreadUri = firstThread.uri;
|
|
212
|
-
const filePath = dirname(firstThreadUri.path.toString().replace(this.appConfig.workspaceDir, ''));
|
|
213
|
-
const rootNode = Object.assign(Object.assign({ id: uri, name: firstThreadUri.displayName, uri: firstThreadUri, description: filePath.replace(/^\//, ''), parent: undefined, thread: firstThread }, (threads.length && {
|
|
214
|
-
expanded: true,
|
|
215
|
-
children: [],
|
|
216
|
-
})), {
|
|
217
|
-
// 跳过 mobx computed, 强制在走一次 getCommentsPanelTreeNodeHandlers 逻辑
|
|
218
|
-
_forceUpdateCount: this.forceUpdateCount });
|
|
219
|
-
treeNodes.push(rootNode);
|
|
220
|
-
threads.forEach((thread) => {
|
|
221
|
-
var _a;
|
|
222
|
-
if (thread.comments.length === 0) {
|
|
223
|
-
return;
|
|
224
|
-
}
|
|
225
|
-
const [firstComment, ...otherComments] = thread.comments;
|
|
226
|
-
const firstCommentNode = Object.assign(Object.assign({ id: firstComment.id, name: firstComment.author.name, iconStyle: {
|
|
227
|
-
marginRight: 5,
|
|
228
|
-
backgroundSize: '14px 14px',
|
|
229
|
-
}, icon: this.iconService.fromIcon('', (_a = firstComment.author.iconPath) === null || _a === void 0 ? void 0 : _a.toString(), ide_theme_1.IconType.Background), description: typeof firstComment.body === 'string' ? firstComment.body : firstComment.body.value, uri: thread.uri, parent: rootNode, depth: 1, thread }, (otherComments.length && {
|
|
230
|
-
expanded: true,
|
|
231
|
-
children: [],
|
|
232
|
-
})), { comment: firstComment });
|
|
233
|
-
const firstCommentChildren = otherComments.map((comment) => {
|
|
203
|
+
async resolveChildren(parent) {
|
|
204
|
+
let childs = [];
|
|
205
|
+
if (!parent) {
|
|
206
|
+
childs.push(new tree_node_defined_1.CommentRoot(this));
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
if (tree_node_defined_1.CommentRoot.isRoot(parent)) {
|
|
210
|
+
const commentThreads = [...this.threads.values()].filter((thread) => thread.comments.length);
|
|
211
|
+
const threadUris = (0, groupBy_1.default)(commentThreads, (thread) => thread.uri);
|
|
212
|
+
Object.keys(threadUris).map((uri) => {
|
|
234
213
|
var _a;
|
|
235
|
-
const
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
},
|
|
244
|
-
icon: this.iconService.fromIcon('', (_a = comment.author.iconPath) === null || _a === void 0 ? void 0 : _a.toString(), ide_theme_1.IconType.Background),
|
|
245
|
-
parent: firstCommentNode,
|
|
246
|
-
depth: 2,
|
|
247
|
-
thread,
|
|
248
|
-
comment,
|
|
249
|
-
};
|
|
250
|
-
return otherCommentNode;
|
|
214
|
+
const threads = threadUris[uri];
|
|
215
|
+
if (threads.length === 0) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
const workspaceDir = new ide_core_browser_1.URI(this.appConfig.workspaceDir);
|
|
219
|
+
const resource = new ide_core_browser_1.URI(uri);
|
|
220
|
+
const description = (_a = workspaceDir.relative(resource)) === null || _a === void 0 ? void 0 : _a.toString();
|
|
221
|
+
childs.push(new tree_node_defined_1.CommentFileNode(this, threads, description, resource.codeUri.fsPath, this.labelService.getIcon(resource), resource, parent));
|
|
251
222
|
});
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
223
|
+
}
|
|
224
|
+
else if (tree_node_defined_1.CommentFileNode.is(parent)) {
|
|
225
|
+
for (const thread of parent.threads) {
|
|
226
|
+
const [first] = thread.comments;
|
|
227
|
+
const comment = typeof first.body === 'string' ? first.body : first.body.value;
|
|
228
|
+
childs.push(new tree_node_defined_1.CommentContentNode(this, thread, comment, `[Ln ${thread.range.startLineNumber}]`, first.author.iconPath
|
|
229
|
+
? this.iconService.fromIcon('', first.author.iconPath.toString(), ide_theme_1.IconType.Background)
|
|
230
|
+
: (0, ide_core_browser_1.getIcon)('message'), first.author, parent.resource, parent));
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
else if (tree_node_defined_1.CommentContentNode.is(parent)) {
|
|
234
|
+
const thread = parent.thread;
|
|
235
|
+
const [_, ...others] = thread.comments;
|
|
236
|
+
const lastReply = others[others.length - 1].author.name;
|
|
237
|
+
childs.push(new tree_node_defined_1.CommentReplyNode(this, thread, (0, ide_core_browser_1.formatLocalize)('comment.reply.count', (others === null || others === void 0 ? void 0 : others.length) || 0), (0, ide_core_browser_1.formatLocalize)('comment.reply.lastReply', lastReply), '', parent.resource, parent));
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
if (childs.length === 1 && tree_node_defined_1.CommentRoot.isRoot(childs[0])) {
|
|
241
|
+
return childs;
|
|
258
242
|
}
|
|
259
|
-
|
|
243
|
+
const handlers = this.commentsFeatureRegistry.getCommentsPanelTreeNodeHandlers();
|
|
244
|
+
if (handlers.length > 0) {
|
|
245
|
+
for (const handler of handlers) {
|
|
246
|
+
childs = handler(childs);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
return childs;
|
|
260
250
|
}
|
|
261
251
|
async getContributionRanges(uri) {
|
|
262
252
|
// 一个diff editor对应两个uri,两个uri的rangeOwner不应该互相覆盖
|
|
@@ -288,6 +278,9 @@ let CommentsService = class CommentsService extends ide_core_browser_1.Disposabl
|
|
|
288
278
|
deferredRes.resolve(flattenRange);
|
|
289
279
|
return flattenRange;
|
|
290
280
|
}
|
|
281
|
+
fireThreadCommentChange(thread) {
|
|
282
|
+
this.threadsCommentChangeEmitter.fire(thread);
|
|
283
|
+
}
|
|
291
284
|
registerDecorationProvider() {
|
|
292
285
|
// dispose 掉上一个 decorationProvider
|
|
293
286
|
this.decorationProviderDisposer.dispose();
|
|
@@ -388,6 +381,10 @@ tslib_1.__decorate([
|
|
|
388
381
|
(0, di_1.Autowired)(ide_theme_1.IIconService),
|
|
389
382
|
tslib_1.__metadata("design:type", Object)
|
|
390
383
|
], CommentsService.prototype, "iconService", void 0);
|
|
384
|
+
tslib_1.__decorate([
|
|
385
|
+
(0, di_1.Autowired)(ide_core_browser_1.LabelService),
|
|
386
|
+
tslib_1.__metadata("design:type", ide_core_browser_1.LabelService)
|
|
387
|
+
], CommentsService.prototype, "labelService", void 0);
|
|
391
388
|
tslib_1.__decorate([
|
|
392
389
|
(0, di_1.Autowired)(common_1.ICommentsFeatureRegistry),
|
|
393
390
|
tslib_1.__metadata("design:type", Object)
|
|
@@ -408,19 +405,6 @@ tslib_1.__decorate([
|
|
|
408
405
|
(0, di_1.Autowired)(browser_1.ResourceService),
|
|
409
406
|
tslib_1.__metadata("design:type", browser_1.ResourceService)
|
|
410
407
|
], CommentsService.prototype, "resourceService", void 0);
|
|
411
|
-
tslib_1.__decorate([
|
|
412
|
-
mobx_1.observable,
|
|
413
|
-
tslib_1.__metadata("design:type", Object)
|
|
414
|
-
], CommentsService.prototype, "threads", void 0);
|
|
415
|
-
tslib_1.__decorate([
|
|
416
|
-
mobx_1.observable,
|
|
417
|
-
tslib_1.__metadata("design:type", Object)
|
|
418
|
-
], CommentsService.prototype, "forceUpdateCount", void 0);
|
|
419
|
-
tslib_1.__decorate([
|
|
420
|
-
mobx_1.computed,
|
|
421
|
-
tslib_1.__metadata("design:type", Object),
|
|
422
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
423
|
-
], CommentsService.prototype, "commentsThreads", null);
|
|
424
408
|
tslib_1.__decorate([
|
|
425
409
|
ide_core_browser_1.memoize,
|
|
426
410
|
tslib_1.__metadata("design:type", Object),
|
|
@@ -436,17 +420,6 @@ tslib_1.__decorate([
|
|
|
436
420
|
tslib_1.__metadata("design:type", Object),
|
|
437
421
|
tslib_1.__metadata("design:paramtypes", [])
|
|
438
422
|
], CommentsService.prototype, "filterThreadDecoration", null);
|
|
439
|
-
tslib_1.__decorate([
|
|
440
|
-
mobx_1.action,
|
|
441
|
-
tslib_1.__metadata("design:type", Function),
|
|
442
|
-
tslib_1.__metadata("design:paramtypes", []),
|
|
443
|
-
tslib_1.__metadata("design:returntype", void 0)
|
|
444
|
-
], CommentsService.prototype, "forceUpdateTreeNodes", null);
|
|
445
|
-
tslib_1.__decorate([
|
|
446
|
-
mobx_1.computed,
|
|
447
|
-
tslib_1.__metadata("design:type", Array),
|
|
448
|
-
tslib_1.__metadata("design:paramtypes", [])
|
|
449
|
-
], CommentsService.prototype, "commentsTreeNodes", null);
|
|
450
423
|
CommentsService = tslib_1.__decorate([
|
|
451
424
|
(0, di_1.Injectable)()
|
|
452
425
|
], CommentsService);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comments.service.js","sourceRoot":"","sources":["../../src/browser/comments.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"comments.service.js","sourceRoot":"","sources":["../../src/browser/comments.service.ts"],"names":[],"mappings":"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"}
|
package/lib/browser/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAS3D,qBACa,cAAe,SAAQ,aAAa;IAC/C,oBAAoB,SAAwB;IAC5C,SAAS,EAAE,QAAQ,EAAE,CAcnB;CACH"}
|
package/lib/browser/index.js
CHANGED
|
@@ -8,7 +8,7 @@ const common_1 = require("../common");
|
|
|
8
8
|
const comments_feature_registry_1 = require("./comments-feature.registry");
|
|
9
9
|
const comments_contribution_1 = require("./comments.contribution");
|
|
10
10
|
const comments_service_1 = require("./comments.service");
|
|
11
|
-
require("./
|
|
11
|
+
const tree_model_service_1 = require("./tree/tree-model.service");
|
|
12
12
|
let CommentsModule = class CommentsModule extends ide_core_browser_1.BrowserModule {
|
|
13
13
|
constructor() {
|
|
14
14
|
super(...arguments);
|
|
@@ -18,6 +18,10 @@ let CommentsModule = class CommentsModule extends ide_core_browser_1.BrowserModu
|
|
|
18
18
|
token: common_1.ICommentsService,
|
|
19
19
|
useClass: comments_service_1.CommentsService,
|
|
20
20
|
},
|
|
21
|
+
{
|
|
22
|
+
token: tree_model_service_1.CommentModelService,
|
|
23
|
+
useClass: tree_model_service_1.CommentModelService,
|
|
24
|
+
},
|
|
21
25
|
{
|
|
22
26
|
token: common_1.ICommentsFeatureRegistry,
|
|
23
27
|
useClass: comments_feature_registry_1.CommentsFeatureRegistry,
|
package/lib/browser/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,qCAAoD;AACpD,iEAA2D;AAE3D,sCAA6F;AAE7F,2EAAsE;AACtE,mEAAsE;AACtE,yDAAqD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,qCAAoD;AACpD,iEAA2D;AAE3D,sCAA6F;AAE7F,2EAAsE;AACtE,mEAAsE;AACtE,yDAAqD;AACrD,kEAAgE;AAGzD,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,gCAAa;IAA1C;;QACL,yBAAoB,GAAG,6BAAoB,CAAC;QAC5C,cAAS,GAAe;YACtB;gBACE,KAAK,EAAE,yBAAgB;gBACvB,QAAQ,EAAE,kCAAe;aAC1B;YACD;gBACE,KAAK,EAAE,wCAAmB;gBAC1B,QAAQ,EAAE,wCAAmB;aAC9B;YACD;gBACE,KAAK,EAAE,iCAAwB;gBAC/B,QAAQ,EAAE,mDAAuB;aAClC;YACD,mDAA2B;SAC5B,CAAC;IACJ,CAAC;CAAA,CAAA;AAjBY,cAAc;IAD1B,IAAA,eAAU,GAAE;GACA,cAAc,CAiB1B;AAjBY,wCAAc"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { INodeRendererProps, ClasslistComposite } from '@opensumi/ide-components';
|
|
3
|
+
import { CommentContentNode, CommentFileNode } from './tree-node.defined';
|
|
4
|
+
export interface ICommentNodeProps {
|
|
5
|
+
item: any;
|
|
6
|
+
defaultLeftPadding?: number;
|
|
7
|
+
leftPadding?: number;
|
|
8
|
+
decorations?: ClasslistComposite;
|
|
9
|
+
onClick: (ev: React.MouseEvent, item: CommentContentNode | CommentFileNode) => void;
|
|
10
|
+
}
|
|
11
|
+
export type ICommentNodeRenderedProps = ICommentNodeProps & INodeRendererProps;
|
|
12
|
+
export declare const CommentNodeRendered: React.FC<ICommentNodeRenderedProps>;
|
|
13
|
+
export declare const COMMENT_TREE_NODE_HEIGHT = 22;
|
|
14
|
+
//# sourceMappingURL=comment-node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-node.d.ts","sourceRoot":"","sources":["../../../src/browser/tree/comment-node.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGlF,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAoB,MAAM,qBAAqB,CAAC;AAG5F,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,GAAG,CAAC;IACV,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE,kBAAkB,GAAG,eAAe,KAAK,IAAI,CAAC;CACrF;AAED,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAE/E,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA4GnE,CAAC;AAEF,eAAO,MAAM,wBAAwB,KAAK,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.COMMENT_TREE_NODE_HEIGHT = exports.CommentNodeRendered = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const classnames_1 = tslib_1.__importDefault(require("classnames"));
|
|
6
|
+
const react_1 = tslib_1.__importStar(require("react"));
|
|
7
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
8
|
+
const tree_node_defined_1 = require("./tree-node.defined");
|
|
9
|
+
const tree_node_module_less_1 = tslib_1.__importDefault(require("./tree-node.module.less"));
|
|
10
|
+
const CommentNodeRendered = ({ item, defaultLeftPadding = 8, leftPadding = 8, decorations, onClick, }) => {
|
|
11
|
+
const handleClick = (0, react_1.useCallback)((ev) => {
|
|
12
|
+
if (item.onSelect) {
|
|
13
|
+
item.onSelect(item);
|
|
14
|
+
}
|
|
15
|
+
onClick(ev, item);
|
|
16
|
+
}, [onClick]);
|
|
17
|
+
const paddingLeft = `${defaultLeftPadding +
|
|
18
|
+
(item.depth || 0) * (leftPadding || 0) +
|
|
19
|
+
(tree_node_defined_1.CommentContentNode.is(item) ? 16 : tree_node_defined_1.CommentFileNode.is(item) ? 0 : 28)}px`;
|
|
20
|
+
const renderedNodeStyle = {
|
|
21
|
+
height: exports.COMMENT_TREE_NODE_HEIGHT,
|
|
22
|
+
lineHeight: `${exports.COMMENT_TREE_NODE_HEIGHT}px`,
|
|
23
|
+
paddingLeft,
|
|
24
|
+
};
|
|
25
|
+
const renderIcon = (0, react_1.useCallback)((node) => {
|
|
26
|
+
if (tree_node_defined_1.CommentContentNode.is(node) || tree_node_defined_1.CommentFileNode.is(node)) {
|
|
27
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(tree_node_module_less_1.default.icon, node.icon), style: {
|
|
28
|
+
height: exports.COMMENT_TREE_NODE_HEIGHT,
|
|
29
|
+
lineHeight: `${exports.COMMENT_TREE_NODE_HEIGHT}px`,
|
|
30
|
+
} }));
|
|
31
|
+
}
|
|
32
|
+
}, []);
|
|
33
|
+
const renderDisplayName = (0, react_1.useCallback)((node) => {
|
|
34
|
+
if (tree_node_defined_1.CommentContentNode.is(node)) {
|
|
35
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(tree_node_module_less_1.default.segment, tree_node_module_less_1.default.displayname) }, node.renderedLabel ? (node.renderedLabel) : (react_1.default.createElement(react_1.default.Fragment, null,
|
|
36
|
+
node.comment,
|
|
37
|
+
react_1.default.createElement("span", { className: tree_node_module_less_1.default.separator }, "\u00B7"),
|
|
38
|
+
node.author.name))));
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return react_1.default.createElement("div", { className: (0, classnames_1.default)(tree_node_module_less_1.default.segment, tree_node_module_less_1.default.displayname) }, node.renderedLabel);
|
|
42
|
+
}
|
|
43
|
+
}, []);
|
|
44
|
+
const renderDescription = (0, react_1.useCallback)((node) => (react_1.default.createElement("div", { className: (0, classnames_1.default)(tree_node_module_less_1.default.segment_grow, tree_node_module_less_1.default.description) }, node.renderedDescription)), []);
|
|
45
|
+
const renderFolderToggle = (0, react_1.useCallback)((node) => (react_1.default.createElement("div", { className: (0, classnames_1.default)(tree_node_module_less_1.default.segment, tree_node_module_less_1.default.expansion_toggle, (0, ide_core_browser_1.getIcon)('arrow-right'), {
|
|
46
|
+
[`${tree_node_module_less_1.default.mod_collapsed}`]: !node.expanded,
|
|
47
|
+
}) })), []);
|
|
48
|
+
const renderTwice = (0, react_1.useCallback)((node) => {
|
|
49
|
+
if (tree_node_defined_1.CommentFileNode.is(node)) {
|
|
50
|
+
return renderFolderToggle(node);
|
|
51
|
+
}
|
|
52
|
+
}, []);
|
|
53
|
+
const getItemTooltip = (0, react_1.useCallback)(() => item.tooltip, [item]);
|
|
54
|
+
return (react_1.default.createElement("div", { key: item.id, onClick: handleClick, title: getItemTooltip(), className: (0, classnames_1.default)(tree_node_module_less_1.default.search_node, decorations ? decorations.classlist : null), style: renderedNodeStyle, "data-id": item.id },
|
|
55
|
+
react_1.default.createElement("div", { className: tree_node_module_less_1.default.content },
|
|
56
|
+
renderTwice(item),
|
|
57
|
+
renderIcon(item),
|
|
58
|
+
react_1.default.createElement("div", { className: tree_node_module_less_1.default.overflow_wrap },
|
|
59
|
+
renderDisplayName(item),
|
|
60
|
+
renderDescription(item)))));
|
|
61
|
+
};
|
|
62
|
+
exports.CommentNodeRendered = CommentNodeRendered;
|
|
63
|
+
exports.COMMENT_TREE_NODE_HEIGHT = 22;
|
|
64
|
+
//# sourceMappingURL=comment-node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"comment-node.js","sourceRoot":"","sources":["../../../src/browser/tree/comment-node.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { DecorationsManager, IRecycleTreeHandle, TreeModel } from '@opensumi/ide-components';
|
|
2
|
+
import { Event, Disposable } from '@opensumi/ide-core-browser';
|
|
3
|
+
import { CommentContentNode, CommentFileNode, CommentReplyNode, CommentRoot } from './tree-node.defined';
|
|
4
|
+
export interface IEditorTreeHandle extends IRecycleTreeHandle {
|
|
5
|
+
hasDirectFocus: () => boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare class CommentTreeModel extends TreeModel {
|
|
8
|
+
constructor(root: CommentRoot);
|
|
9
|
+
}
|
|
10
|
+
export declare class CommentModelService extends Disposable {
|
|
11
|
+
private readonly commentService;
|
|
12
|
+
private readonly injector;
|
|
13
|
+
private _treeModel;
|
|
14
|
+
private _whenReady;
|
|
15
|
+
private _decorations;
|
|
16
|
+
private _commentTreeHandle;
|
|
17
|
+
private selectedDecoration;
|
|
18
|
+
private focusedDecoration;
|
|
19
|
+
private _focusedNode;
|
|
20
|
+
private _selectedNodes;
|
|
21
|
+
private onDidUpdateTreeModelEmitter;
|
|
22
|
+
private disposableCollection;
|
|
23
|
+
constructor();
|
|
24
|
+
get onDidUpdateTreeModel(): Event<CommentTreeModel | undefined>;
|
|
25
|
+
get whenReady(): Promise<void>;
|
|
26
|
+
get commentTreeHandle(): IRecycleTreeHandle;
|
|
27
|
+
get decorations(): DecorationsManager;
|
|
28
|
+
get treeModel(): CommentTreeModel;
|
|
29
|
+
get focusedNode(): CommentFileNode | CommentContentNode | CommentReplyNode | null;
|
|
30
|
+
get selectedNodes(): (CommentFileNode | CommentContentNode | CommentReplyNode)[];
|
|
31
|
+
initTreeModel(): Promise<void>;
|
|
32
|
+
initDecorations(root: any): DecorationsManager;
|
|
33
|
+
handleTreeHandler(handle: IRecycleTreeHandle): void;
|
|
34
|
+
applyFocusedDecoration: (target: CommentFileNode | CommentContentNode | CommentReplyNode, dispatch?: boolean) => void;
|
|
35
|
+
removeFocusedDecoration: () => void;
|
|
36
|
+
handleTreeBlur: () => void;
|
|
37
|
+
handleItemClick: (ev: React.MouseEvent, node: CommentFileNode | CommentContentNode | CommentReplyNode) => Promise<void>;
|
|
38
|
+
toggleDirectory: (item: CommentFileNode | CommentContentNode) => void;
|
|
39
|
+
refresh(): Promise<void>;
|
|
40
|
+
collapsedAll(): Promise<void>;
|
|
41
|
+
dispose(): void;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=tree-model.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-model.service.d.ts","sourceRoot":"","sources":["../../../src/browser/tree/tree-model.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAc,kBAAkB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACzG,OAAO,EAAiC,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAG9F,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGzG,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D,cAAc,EAAE,MAAM,OAAO,CAAC;CAC/B;AAED,qBACa,gBAAiB,SAAQ,SAAS;gBACrB,IAAI,EAAE,WAAW;CAI1C;AAED,qBACa,mBAAoB,SAAQ,UAAU;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAGlD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IAEpC,OAAO,CAAC,UAAU,CAAmB;IAErC,OAAO,CAAC,UAAU,CAAgB;IAElC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,kBAAkB,CAAqB;IAG/C,OAAO,CAAC,kBAAkB,CAAmD;IAC7E,OAAO,CAAC,iBAAiB,CAAkD;IAE3E,OAAO,CAAC,YAAY,CAAiE;IACrF,OAAO,CAAC,cAAc,CAAmE;IAEzF,OAAO,CAAC,2BAA2B,CAAwD;IAE3F,OAAO,CAAC,oBAAoB,CAAoD;;IAOhF,IAAI,oBAAoB,IAAI,KAAK,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAE9D;IAED,IAAI,SAAS,kBAEZ;IAED,IAAI,iBAAiB,uBAEpB;IAED,IAAI,WAAW,uBAEd;IAED,IAAI,SAAS,qBAEZ;IAED,IAAI,WAAW,mEAEd;IAED,IAAI,aAAa,gEAEhB;IAEK,aAAa;IAuBnB,eAAe,CAAC,IAAI,KAAA;IAOpB,iBAAiB,CAAC,MAAM,EAAE,kBAAkB;IAI5C,sBAAsB,WAAY,eAAe,GAAG,kBAAkB,GAAG,gBAAgB,8BAevF;IAEF,uBAAuB,aAMrB;IAEF,cAAc,aAEZ;IAEF,eAAe,OAAc,gBAAgB,QAAQ,eAAe,GAAG,kBAAkB,GAAG,gBAAgB,mBAM1G;IAEF,eAAe,SAAU,eAAe,GAAG,kBAAkB,UAM3D;IAEI,OAAO;IAKP,YAAY;IAKlB,OAAO;CAGR"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CommentModelService = exports.CommentTreeModel = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
/* eslint-disable import/order */
|
|
6
|
+
const di_1 = require("@opensumi/di");
|
|
7
|
+
const ide_components_1 = require("@opensumi/ide-components");
|
|
8
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
9
|
+
const index_1 = require("../../common/index");
|
|
10
|
+
const tree_node_defined_1 = require("./tree-node.defined");
|
|
11
|
+
const tree_node_module_less_1 = tslib_1.__importDefault(require("./tree-node.module.less"));
|
|
12
|
+
let CommentTreeModel = class CommentTreeModel extends ide_components_1.TreeModel {
|
|
13
|
+
constructor(root) {
|
|
14
|
+
super();
|
|
15
|
+
this.init(root);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
CommentTreeModel = tslib_1.__decorate([
|
|
19
|
+
(0, di_1.Injectable)({ multiple: true }),
|
|
20
|
+
tslib_1.__param(0, (0, di_1.Optional)()),
|
|
21
|
+
tslib_1.__metadata("design:paramtypes", [tree_node_defined_1.CommentRoot])
|
|
22
|
+
], CommentTreeModel);
|
|
23
|
+
exports.CommentTreeModel = CommentTreeModel;
|
|
24
|
+
let CommentModelService = class CommentModelService extends ide_core_browser_1.Disposable {
|
|
25
|
+
constructor() {
|
|
26
|
+
super();
|
|
27
|
+
// All decoration
|
|
28
|
+
this.selectedDecoration = new ide_components_1.Decoration(tree_node_module_less_1.default.mod_selected); // selected
|
|
29
|
+
this.focusedDecoration = new ide_components_1.Decoration(tree_node_module_less_1.default.mod_focused); // focused
|
|
30
|
+
this._selectedNodes = [];
|
|
31
|
+
this.onDidUpdateTreeModelEmitter = new ide_core_browser_1.Emitter();
|
|
32
|
+
this.disposableCollection = new ide_core_browser_1.DisposableCollection();
|
|
33
|
+
this.applyFocusedDecoration = (target, dispatch = true) => {
|
|
34
|
+
var _a;
|
|
35
|
+
if (target) {
|
|
36
|
+
for (const target of this._selectedNodes) {
|
|
37
|
+
this.selectedDecoration.removeTarget(target);
|
|
38
|
+
}
|
|
39
|
+
if (this.focusedNode) {
|
|
40
|
+
this.focusedDecoration.removeTarget(this.focusedNode);
|
|
41
|
+
}
|
|
42
|
+
this.selectedDecoration.addTarget(target);
|
|
43
|
+
this.focusedDecoration.addTarget(target);
|
|
44
|
+
this._focusedNode = target;
|
|
45
|
+
this._selectedNodes = [target];
|
|
46
|
+
dispatch && ((_a = this.treeModel) === null || _a === void 0 ? void 0 : _a.dispatchChange());
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
this.removeFocusedDecoration = () => {
|
|
50
|
+
var _a;
|
|
51
|
+
if (this.focusedNode) {
|
|
52
|
+
this.focusedDecoration.removeTarget(this.focusedNode);
|
|
53
|
+
(_a = this.treeModel) === null || _a === void 0 ? void 0 : _a.dispatchChange();
|
|
54
|
+
}
|
|
55
|
+
this._focusedNode = null;
|
|
56
|
+
};
|
|
57
|
+
this.handleTreeBlur = () => {
|
|
58
|
+
this.removeFocusedDecoration();
|
|
59
|
+
};
|
|
60
|
+
this.handleItemClick = async (ev, node) => {
|
|
61
|
+
this.applyFocusedDecoration(node);
|
|
62
|
+
if (tree_node_defined_1.CommentFileNode.is(node)) {
|
|
63
|
+
this.toggleDirectory(node);
|
|
64
|
+
}
|
|
65
|
+
else if (node) {
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
this.toggleDirectory = (item) => {
|
|
69
|
+
if (item.expanded) {
|
|
70
|
+
this.commentTreeHandle.collapseNode(item);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
this.commentTreeHandle.expandNode(item);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
this._whenReady = this.initTreeModel();
|
|
77
|
+
}
|
|
78
|
+
get onDidUpdateTreeModel() {
|
|
79
|
+
return this.onDidUpdateTreeModelEmitter.event;
|
|
80
|
+
}
|
|
81
|
+
get whenReady() {
|
|
82
|
+
return this._whenReady;
|
|
83
|
+
}
|
|
84
|
+
get commentTreeHandle() {
|
|
85
|
+
return this._commentTreeHandle;
|
|
86
|
+
}
|
|
87
|
+
get decorations() {
|
|
88
|
+
return this._decorations;
|
|
89
|
+
}
|
|
90
|
+
get treeModel() {
|
|
91
|
+
return this._treeModel;
|
|
92
|
+
}
|
|
93
|
+
get focusedNode() {
|
|
94
|
+
return this._focusedNode;
|
|
95
|
+
}
|
|
96
|
+
get selectedNodes() {
|
|
97
|
+
return this._selectedNodes;
|
|
98
|
+
}
|
|
99
|
+
async initTreeModel() {
|
|
100
|
+
const childs = await this.commentService.resolveChildren();
|
|
101
|
+
if (!childs) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const root = childs[0];
|
|
105
|
+
if (!root) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
this._treeModel = this.injector.get(CommentTreeModel, [root]);
|
|
109
|
+
await this._treeModel.ensureReady;
|
|
110
|
+
this.initDecorations(root);
|
|
111
|
+
this.disposables.push(this.commentService.onThreadsCommentChange(() => {
|
|
112
|
+
this.refresh();
|
|
113
|
+
}));
|
|
114
|
+
this.onDidUpdateTreeModelEmitter.fire(this._treeModel);
|
|
115
|
+
}
|
|
116
|
+
initDecorations(root) {
|
|
117
|
+
this._decorations = new ide_components_1.DecorationsManager(root);
|
|
118
|
+
this._decorations.addDecoration(this.selectedDecoration);
|
|
119
|
+
this._decorations.addDecoration(this.focusedDecoration);
|
|
120
|
+
return this._decorations;
|
|
121
|
+
}
|
|
122
|
+
handleTreeHandler(handle) {
|
|
123
|
+
this._commentTreeHandle = handle;
|
|
124
|
+
}
|
|
125
|
+
async refresh() {
|
|
126
|
+
await this.whenReady;
|
|
127
|
+
this.treeModel.root.refresh();
|
|
128
|
+
}
|
|
129
|
+
async collapsedAll() {
|
|
130
|
+
await this.whenReady;
|
|
131
|
+
return this.treeModel.root.collapsedAll();
|
|
132
|
+
}
|
|
133
|
+
dispose() {
|
|
134
|
+
this.disposableCollection.dispose();
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
tslib_1.__decorate([
|
|
138
|
+
(0, di_1.Autowired)(index_1.ICommentsService),
|
|
139
|
+
tslib_1.__metadata("design:type", Object)
|
|
140
|
+
], CommentModelService.prototype, "commentService", void 0);
|
|
141
|
+
tslib_1.__decorate([
|
|
142
|
+
(0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
|
|
143
|
+
tslib_1.__metadata("design:type", di_1.Injector)
|
|
144
|
+
], CommentModelService.prototype, "injector", void 0);
|
|
145
|
+
CommentModelService = tslib_1.__decorate([
|
|
146
|
+
(0, di_1.Injectable)(),
|
|
147
|
+
tslib_1.__metadata("design:paramtypes", [])
|
|
148
|
+
], CommentModelService);
|
|
149
|
+
exports.CommentModelService = CommentModelService;
|
|
150
|
+
//# sourceMappingURL=tree-model.service.js.map
|