@banta/sdk 3.2.4 → 3.3.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/bundles/banta-sdk.umd.js +172 -43
- package/bundles/banta-sdk.umd.js.map +1 -1
- package/bundles/banta-sdk.umd.min.js +1 -1
- package/bundles/banta-sdk.umd.min.js.map +1 -1
- package/esm2015/lib/comments/banta-comments/banta-comments.component.js +60 -13
- package/esm2015/lib/comments/comment/comment.component.js +11 -3
- package/esm2015/lib/comments/comment-sort/comment-sort.component.js +34 -0
- package/esm2015/lib/comments/comment-view/comment-view.component.js +16 -7
- package/esm2015/lib/comments/comments.module.js +10 -4
- package/esm2015/lib/common/chat-backend.service.js +1 -1
- package/fesm2015/banta-sdk.js +122 -22
- package/fesm2015/banta-sdk.js.map +1 -1
- package/lib/comments/banta-comments/banta-comments.component.d.ts +16 -4
- package/lib/comments/comment/comment.component.d.ts +3 -0
- package/lib/comments/comment-sort/comment-sort.component.d.ts +9 -0
- package/lib/comments/comment-view/comment-view.component.d.ts +3 -0
- package/lib/common/chat-backend.service.d.ts +3 -3
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@ import { CommentViewComponent } from './comment-view/comment-view.component';
|
|
|
4
4
|
import { BantaCommentsComponent } from './banta-comments/banta-comments.component';
|
|
5
5
|
import { CommonModule } from '@angular/common';
|
|
6
6
|
import { FormsModule } from '@angular/forms';
|
|
7
|
-
import { BantaCommonModule } from '../common
|
|
7
|
+
import { BantaCommonModule } from '../common';
|
|
8
8
|
import { LiveCommentComponent } from './live-comment.component';
|
|
9
9
|
import { EmojiModule } from '../emoji';
|
|
10
10
|
import { MatIconModule } from '@angular/material/icon';
|
|
@@ -15,12 +15,16 @@ import { MatFormFieldModule } from '@angular/material/form-field';
|
|
|
15
15
|
import { MatInputModule } from '@angular/material/input';
|
|
16
16
|
import { TextFieldModule } from '@angular/cdk/text-field';
|
|
17
17
|
import { CommentFieldComponent } from './comment-field/comment-field.component';
|
|
18
|
+
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
19
|
+
import { CommentSortComponent } from "./comment-sort/comment-sort.component";
|
|
20
|
+
import { MatSelectModule } from "@angular/material/select";
|
|
18
21
|
const COMPONENTS = [
|
|
19
22
|
CommentComponent,
|
|
20
23
|
CommentViewComponent,
|
|
21
24
|
BantaCommentsComponent,
|
|
22
25
|
LiveCommentComponent,
|
|
23
|
-
CommentFieldComponent
|
|
26
|
+
CommentFieldComponent,
|
|
27
|
+
CommentSortComponent
|
|
24
28
|
];
|
|
25
29
|
export class CommentsModule {
|
|
26
30
|
}
|
|
@@ -38,9 +42,11 @@ CommentsModule.decorators = [
|
|
|
38
42
|
MatMenuModule,
|
|
39
43
|
MatProgressSpinnerModule,
|
|
40
44
|
BantaCommonModule,
|
|
41
|
-
EmojiModule
|
|
45
|
+
EmojiModule,
|
|
46
|
+
MatTooltipModule,
|
|
47
|
+
MatSelectModule
|
|
42
48
|
],
|
|
43
49
|
exports: COMPONENTS
|
|
44
50
|
},] }
|
|
45
51
|
];
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWVudHMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IkQ6L0Rldi9hc3Ryb25hdXRsYWJzL2JhbnRhL3BhY2thZ2VzL2Zyb250ZW5kL3Byb2plY3RzL3Nkay9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tbWVudHMvY29tbWVudHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RCxNQUFNLFVBQVUsR0FBRztJQUNmLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsc0JBQXNCO0lBQ3RCLG9CQUFvQjtJQUNwQixxQkFBcUI7SUFDckIsb0JBQW9CO0NBQ3ZCLENBQUM7QUFxQkYsTUFBTSxPQUFPLGNBQWM7OztZQW5CMUIsUUFBUSxTQUFDO2dCQUNOLFlBQVksRUFBRSxVQUFVO2dCQUMxQixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixlQUFlO29CQUNmLFdBQVc7b0JBQ1gsYUFBYTtvQkFDYixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QsZUFBZTtvQkFDZixhQUFhO29CQUNiLHdCQUF3QjtvQkFDeEIsaUJBQWlCO29CQUNqQixXQUFXO29CQUNYLGdCQUFnQjtvQkFDaEIsZUFBZTtpQkFDaEI7Z0JBQ0MsT0FBTyxFQUFFLFVBQVU7YUFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21tZW50L2NvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudFZpZXdDb21wb25lbnQgfSBmcm9tICcuL2NvbW1lbnQtdmlldy9jb21tZW50LXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFudGFDb21tZW50c0NvbXBvbmVudCB9IGZyb20gJy4vYmFudGEtY29tbWVudHMvYmFudGEtY29tbWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEJhbnRhQ29tbW9uTW9kdWxlIH0gZnJvbSAnLi4vY29tbW9uJztcclxuaW1wb3J0IHsgTGl2ZUNvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2xpdmUtY29tbWVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbW9qaU1vZHVsZSB9IGZyb20gJy4uL2Vtb2ppJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XHJcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IFRleHRGaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXh0LWZpZWxkJztcclxuaW1wb3J0IHsgQ29tbWVudEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tZW50LWZpZWxkL2NvbW1lbnQtZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHtNYXRUb29sdGlwTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHtDb21tZW50U29ydENvbXBvbmVudH0gZnJvbSBcIi4vY29tbWVudC1zb3J0L2NvbW1lbnQtc29ydC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtNYXRTZWxlY3RNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3RcIjtcclxuXHJcbmNvbnN0IENPTVBPTkVOVFMgPSBbXHJcbiAgICBDb21tZW50Q29tcG9uZW50LFxyXG4gICAgQ29tbWVudFZpZXdDb21wb25lbnQsXHJcbiAgICBCYW50YUNvbW1lbnRzQ29tcG9uZW50LFxyXG4gICAgTGl2ZUNvbW1lbnRDb21wb25lbnQsXHJcbiAgICBDb21tZW50RmllbGRDb21wb25lbnQsXHJcbiAgICBDb21tZW50U29ydENvbXBvbmVudFxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGRlY2xhcmF0aW9uczogQ09NUE9ORU5UUyxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBUZXh0RmllbGRNb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdE1lbnVNb2R1bGUsXHJcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXHJcbiAgICBCYW50YUNvbW1vbk1vZHVsZSxcclxuICAgIEVtb2ppTW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZVxyXG4gIF0sXHJcbiAgICBleHBvcnRzOiBDT01QT05FTlRTXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb21tZW50c01vZHVsZSB7XHJcbn1cclxuIl19
|
|
@@ -4,4 +4,4 @@ export class ChatBackendService {
|
|
|
4
4
|
ChatBackendService.decorators = [
|
|
5
5
|
{ type: Injectable }
|
|
6
6
|
];
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1iYWNrZW5kLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiRDovRGV2L2FzdHJvbmF1dGxhYnMvYmFudGEvcGFja2FnZXMvZnJvbnRlbmQvcHJvamVjdHMvc2RrL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21tb24vY2hhdC1iYWNrZW5kLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUszQyxNQUFNLE9BQWdCLGtCQUFrQjs7O1lBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENoYXRCYWNrZW5kLCBOb3RpZmljYXRpb24sIENoYXRTb3VyY2UsIENoYXRNZXNzYWdlLCBDaGF0U291cmNlT3B0aW9ucyB9IGZyb20gJ0BiYW50YS9jb21tb24nO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDaGF0QmFja2VuZFNlcnZpY2UgaW1wbGVtZW50cyBDaGF0QmFja2VuZCB7XHJcbiAgICBhYnN0cmFjdCBnZXRTb3VyY2VGb3JUb3BpYyh0b3BpY0lkIDogc3RyaW5nLCBvcHRpb25zPzogQ2hhdFNvdXJjZU9wdGlvbnMpIDogUHJvbWlzZTxDaGF0U291cmNlPjtcclxuICAgIGFic3RyYWN0IGdldFNvdXJjZUZvclRocmVhZCh0b3BpY0lkIDogc3RyaW5nLCBtZXNzYWdlSWQgOiBzdHJpbmcsIG9wdGlvbnM/OiBDaGF0U291cmNlT3B0aW9ucykgOiBQcm9taXNlPENoYXRTb3VyY2U+O1xyXG4gICAgYWJzdHJhY3QgcmVmcmVzaE1lc3NhZ2UobWVzc2FnZSA6IENoYXRNZXNzYWdlKTogUHJvbWlzZTxDaGF0TWVzc2FnZT47XHJcbiAgICBhYnN0cmFjdCBnZXRNZXNzYWdlKHRvcGljSWQgOiBzdHJpbmcsIG1lc3NhZ2VJZCA6IHN0cmluZyk6IFByb21pc2U8Q2hhdE1lc3NhZ2U+O1xyXG4gICAgYWJzdHJhY3QgZ2V0U3ViTWVzc2FnZSh0b3BpY0lkIDogc3RyaW5nLCBwYXJlbnRNZXNzYWdlSWQgOiBzdHJpbmcsIG1lc3NhZ2VJZCA6IHN0cmluZyk6IFByb21pc2U8Q2hhdE1lc3NhZ2U+O1xyXG4gICAgYWJzdHJhY3QgdXB2b3RlTWVzc2FnZSh0b3BpY0lkIDogc3RyaW5nLCBtZXNzYWdlSWQgOiBzdHJpbmcsIHN1Ym1lc3NhZ2VJZD8gOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+O1xyXG4gICAgYWJzdHJhY3Qgd2F0Y2hNZXNzYWdlKG1lc3NhZ2UgOiBDaGF0TWVzc2FnZSwgaGFuZGxlciA6IChtZXNzYWdlIDogQ2hhdE1lc3NhZ2UpID0+IHZvaWQpIDogKCkgPT4gdm9pZDtcclxuICAgIGFic3RyYWN0IG1vZGlmeU1lc3NhZ2U/KG1lc3NhZ2UgOiBDaGF0TWVzc2FnZSkgOiBQcm9taXNlPHZvaWQ+O1xyXG4gICAgYWJzdHJhY3QgZ2V0IG5vdGlmaWNhdGlvbnNDaGFuZ2VkKCkgOiBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvbltdPjtcclxuICAgIGFic3RyYWN0IGdldCBuZXdOb3RpZmljYXRpb24oKSA6IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uPjtcclxufSJdfQ==
|
package/fesm2015/banta-sdk.js
CHANGED
|
@@ -10,10 +10,13 @@ import { MatInputModule } from '@angular/material/input';
|
|
|
10
10
|
import { FormsModule } from '@angular/forms';
|
|
11
11
|
import { __awaiter } from 'tslib';
|
|
12
12
|
import { MatDialog, MatDialogModule } from '@angular/material/dialog';
|
|
13
|
+
import { ActivatedRoute } from '@angular/router';
|
|
13
14
|
import { MatMenuModule } from '@angular/material/menu';
|
|
14
15
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
15
16
|
import { TextFieldModule } from '@angular/cdk/text-field';
|
|
16
17
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
18
|
+
import { CommentsOrder } from '@banta/common';
|
|
19
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
17
20
|
|
|
18
21
|
function lazyConnection(options) {
|
|
19
22
|
let obs = new Observable(observer => {
|
|
@@ -7643,6 +7646,7 @@ class CommentComponent {
|
|
|
7643
7646
|
this._reported = new Subject();
|
|
7644
7647
|
this._selected = new Subject();
|
|
7645
7648
|
this._upvoted = new Subject();
|
|
7649
|
+
this._shared = new Subject();
|
|
7646
7650
|
this._userSelected = new Subject();
|
|
7647
7651
|
this._avatarSelected = new Subject();
|
|
7648
7652
|
this._usernameSelected = new Subject();
|
|
@@ -7682,12 +7686,18 @@ class CommentComponent {
|
|
|
7682
7686
|
var _a;
|
|
7683
7687
|
return (_a = this.message) === null || _a === void 0 ? void 0 : _a.id;
|
|
7684
7688
|
}
|
|
7689
|
+
get shared() {
|
|
7690
|
+
return this._shared.asObservable();
|
|
7691
|
+
}
|
|
7685
7692
|
report() {
|
|
7686
7693
|
this._reported.next();
|
|
7687
7694
|
}
|
|
7688
7695
|
upvote() {
|
|
7689
7696
|
this._upvoted.next();
|
|
7690
7697
|
}
|
|
7698
|
+
share() {
|
|
7699
|
+
this._shared.next(this.message);
|
|
7700
|
+
}
|
|
7691
7701
|
select() {
|
|
7692
7702
|
this._selected.next();
|
|
7693
7703
|
}
|
|
@@ -7713,7 +7723,7 @@ class CommentComponent {
|
|
|
7713
7723
|
CommentComponent.decorators = [
|
|
7714
7724
|
{ type: Component, args: [{
|
|
7715
7725
|
selector: 'banta-comment',
|
|
7716
|
-
template: "\r\n<mat-menu #pointItemMenu=\"matMenu\">\r\n <button mat-menu-item (click)=\"report()\">Report</button>\r\n <button mat-menu-item>Help</button>\r\n</mat-menu>\r\n\r\n<div class=\"message-content\">\r\n <div class=\"user\">\r\n <a
|
|
7726
|
+
template: "\r\n<mat-menu #pointItemMenu=\"matMenu\">\r\n <button mat-menu-item (click)=\"report()\">Report</button>\r\n <button mat-menu-item>Help</button>\r\n</mat-menu>\r\n\r\n<div class=\"message-content\">\r\n <div class=\"user\">\r\n <a\r\n href=\"javascript:;\"\r\n class=\"avatar\"\r\n (click)=\"selectAvatar(message.user)\"\r\n [style.background-image]=\"avatarForUser(message.user)\"></a>\r\n <a href=\"javascript:;\" class=\"display-name\" (click)=\"selectUser()\">{{message.user.displayName}}</a>\r\n <a href=\"javascript:;\" class=\"username\" (click)=\"selectUsername(message.user)\">@{{message.user.username}}</a>\r\n </div>\r\n <div class=\"content\">\r\n {{message.message}}\r\n </div>\r\n\r\n <div class=\"actions\">\r\n <banta-timestamp [value]=\"message.sentAt\"></banta-timestamp>\r\n <div class=\"spacer\"></div>\r\n <div class=\"counted-action\" *ngIf=\"showReplyAction\">\r\n <div class=\"count-indicator\">\r\n {{message.submessages?.length || 0}}\r\n </div>\r\n <button mat-icon-button matTooltip=\"Comment\" matTooltipPosition=\"below\" (click)=\"select()\">\r\n <mat-icon [inline]=\"true\">comment</mat-icon>\r\n </button>\r\n </div>\r\n <div class=\"counted-action\">\r\n <div class=\"count-indicator\">\r\n {{message.upvotes}}\r\n </div>\r\n <button mat-icon-button matTooltip=\"Upvote\" matTooltipPosition=\"below\" (click)=\"upvote()\">\r\n <mat-icon [inline]=\"true\">thumb_up</mat-icon>\r\n </button>\r\n </div>\r\n\r\n <div class=\"counted-action\">\r\n <button mat-icon-button matTooltip=\"Share this comment\" matTooltipPosition=\"below\" (click)=\"share()\">\r\n <mat-icon [inline]=\"true\" >share</mat-icon>\r\n </button>\r\n </div>\r\n\r\n <button mat-icon-button [matMenuTriggerFor]=\"pointItemMenu\">\r\n <mat-icon [inline]=\"true\">more_vert</mat-icon>\r\n </button>\r\n </div>\r\n</div>\r\n",
|
|
7717
7727
|
styles: ["@-webkit-keyframes comment-appear{0%{transform:translate(100vw)}to{transform:translate(0)}}@keyframes comment-appear{0%{transform:translate(100vw)}to{transform:translate(0)}}:host{display:flex;flex-direction:column;padding:.5em;position:relative;visibility:hidden}:host.new{-webkit-animation-duration:.4s;-webkit-animation-fill-mode:both;-webkit-animation-name:comment-appear;animation-duration:.4s;animation-fill-mode:both;animation-name:comment-appear}:host.new,:host.visible{visibility:visible}:host:hover{background:#eee}:host .message-content .content{margin-left:60px;margin-right:.5em}:host.abbreviated .message-content .content{max-height:8.5em;overflow-y:hidden;text-overflow:ellipsis}:host .actions{align-items:center;display:flex;margin-left:60px;padding-right:10px}:host .actions button{color:#666}:host .actions banta-timestamp{color:#666;font-size:10pt}.user{align-items:center;display:flex;margin:1em 0 0;position:relative}.user .display-name,.user .username{color:#000;display:block;flex-grow:0;flex-shrink:1;font-size:10pt;margin:0 auto 0 0;max-width:100%;overflow:hidden;padding:0 0 0 1em;position:relative;text-overflow:ellipsis;white-space:nowrap;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;z-index:1}.user .display-name.username,.user .username.username{color:#666;flex-grow:1;flex-shrink:0}.avatar{background-color:#333;background-position:50%;background-size:cover;border-radius:100%;flex-grow:0;flex-shrink:0;height:48px;width:48px}.counted-action{align-items:center;display:flex}.count-indicator{color:#666;font-size:9pt;padding:0 0 0 3px}:host-context(.mat-dark-theme) .count-indicator{border-color:#333}:host-context(.mat-dark-theme):hover{background:#060606}:host-context(.mat-dark-theme) .user .display-name,:host-context(.mat-dark-theme) .user .username{color:#fff}@media (max-width:400px){.avatar{height:32px;width:32px}:host .actions{margin-left:44px}:host .message-content .content{margin-left:44px;margin-right:.5em}}"]
|
|
7718
7728
|
},] }
|
|
7719
7729
|
];
|
|
@@ -7728,7 +7738,8 @@ CommentComponent.propDecorators = {
|
|
|
7728
7738
|
reported: [{ type: Output }],
|
|
7729
7739
|
upvoted: [{ type: Output }],
|
|
7730
7740
|
selected: [{ type: Output }],
|
|
7731
|
-
commentId: [{ type: HostBinding, args: ['attr.data-comment-id',] }]
|
|
7741
|
+
commentId: [{ type: HostBinding, args: ['attr.data-comment-id',] }],
|
|
7742
|
+
shared: [{ type: Output }]
|
|
7732
7743
|
};
|
|
7733
7744
|
|
|
7734
7745
|
class CommentViewComponent {
|
|
@@ -7741,6 +7752,7 @@ class CommentViewComponent {
|
|
|
7741
7752
|
this._userSelected = new Subject();
|
|
7742
7753
|
this._usernameSelected = new Subject();
|
|
7743
7754
|
this._avatarSelected = new Subject();
|
|
7755
|
+
this._shared = new Subject();
|
|
7744
7756
|
this.showEmptyState = true;
|
|
7745
7757
|
this.allowReplies = true;
|
|
7746
7758
|
this.menuMessage = null;
|
|
@@ -7772,6 +7784,9 @@ class CommentViewComponent {
|
|
|
7772
7784
|
get avatarSelected() {
|
|
7773
7785
|
return this._avatarSelected;
|
|
7774
7786
|
}
|
|
7787
|
+
get shared() {
|
|
7788
|
+
return this._shared;
|
|
7789
|
+
}
|
|
7775
7790
|
get source() {
|
|
7776
7791
|
return this._source;
|
|
7777
7792
|
}
|
|
@@ -7793,6 +7808,9 @@ class CommentViewComponent {
|
|
|
7793
7808
|
selectAvatar(user) {
|
|
7794
7809
|
this._avatarSelected.next(user);
|
|
7795
7810
|
}
|
|
7811
|
+
sharedMessage(message) {
|
|
7812
|
+
this._shared.next(message);
|
|
7813
|
+
}
|
|
7796
7814
|
set source(value) {
|
|
7797
7815
|
if (this._sourceSubs) {
|
|
7798
7816
|
this._sourceSubs.unsubscribe();
|
|
@@ -7800,7 +7818,8 @@ class CommentViewComponent {
|
|
|
7800
7818
|
}
|
|
7801
7819
|
this._source = value;
|
|
7802
7820
|
if (value) {
|
|
7803
|
-
|
|
7821
|
+
console.log(`[banta-comment-view] Subscribing to source...`);
|
|
7822
|
+
const messages = (value.messages || []).slice();
|
|
7804
7823
|
this.messages = messages;
|
|
7805
7824
|
this.olderMessages = messages.splice(this.maxVisibleMessages, messages.length);
|
|
7806
7825
|
this.hasMore = this.olderMessages.length > 0;
|
|
@@ -7875,9 +7894,9 @@ class CommentViewComponent {
|
|
|
7875
7894
|
isScrolledToLatest() {
|
|
7876
7895
|
if (!this.messageContainer)
|
|
7877
7896
|
return false;
|
|
7878
|
-
|
|
7879
|
-
|
|
7880
|
-
|
|
7897
|
+
const el = this.messageContainer.nativeElement;
|
|
7898
|
+
const currentScroll = el.scrollTop;
|
|
7899
|
+
const currentTotal = el.scrollHeight - el.offsetHeight;
|
|
7881
7900
|
return currentScroll > currentTotal - 10;
|
|
7882
7901
|
}
|
|
7883
7902
|
messageSent(message) {
|
|
@@ -7889,7 +7908,7 @@ class CommentViewComponent {
|
|
|
7889
7908
|
scrollToLatest() {
|
|
7890
7909
|
if (!this.messageContainer)
|
|
7891
7910
|
return;
|
|
7892
|
-
|
|
7911
|
+
const el = this.messageContainer.nativeElement;
|
|
7893
7912
|
el.scrollTop = el.scrollHeight;
|
|
7894
7913
|
}
|
|
7895
7914
|
mentionsMe(message) {
|
|
@@ -7909,7 +7928,7 @@ class CommentViewComponent {
|
|
|
7909
7928
|
CommentViewComponent.decorators = [
|
|
7910
7929
|
{ type: Component, args: [{
|
|
7911
7930
|
selector: 'banta-comment-view',
|
|
7912
|
-
template: "<div class=\"message-container\">\r\n <ng-content select=\"[data-before]\"></ng-content>\r\n
|
|
7931
|
+
template: "<div class=\"message-container\">\r\n <ng-content select=\"[data-before]\"></ng-content>\r\n\r\n <a mat-button class=\"nav\" [class.visible]=\"isViewingMore\" href=\"javascript:;\" (click)=\"showNew()\">\r\n <mat-icon>file_upload</mat-icon>\r\n New\r\n <ng-container *ngIf=\"newMessages.length >= 1\">\r\n ({{newMessages.length}})\r\n </ng-container>\r\n </a>\r\n\r\n <ng-container *ngIf=\"messages.length === 0\">\r\n <div class=\"empty-state\" *ngIf=\"showEmptyState\">\r\n Be the first to comment!\r\n </div>\r\n </ng-container>\r\n <banta-comment\r\n *ngFor=\"let message of messages; trackBy: messageIdentity\"\r\n class=\"abbreviated\"\r\n [message]=\"message\"\r\n (click)=\"isViewingMore = true\"\r\n [showReplyAction]=\"allowReplies\"\r\n\t\t(userSelected)=\"selectMessageUser(message)\"\r\n (avatarSelected)=\"selectAvatar($event)\"\r\n\t\t(usernameSelected)=\"selectUsername($event)\"\r\n (upvoted)=\"upvoteMessage(message)\"\r\n (reported)=\"reportMessage(message)\"\r\n (selected)=\"selectMessage(message)\"\r\n (shared)=\"sharedMessage($event)\"\r\n ></banta-comment>\r\n\r\n <a mat-button class=\"nav\" [class.visible]=\"hasMore && !isLoadingMore\" href=\"javascript:;\" (click)=\"showMore()\">Show more</a>\r\n\r\n <div class=\"loading-more\" *ngIf=\"isLoadingMore\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n\r\n <!-- <div style=\"color: #666\">\r\n n={{newMessages.length}}, m={{messages.length}}, o={{olderMessages.length}},\r\n v={{maxVisibleMessages}}, M={{maxMessages}}\r\n </div> -->\r\n\r\n <ng-content select=\":not([data-before])\"></ng-content>\r\n</div>\r\n",
|
|
7913
7932
|
styles: [":host{display:flex;flex-direction:column;flex-grow:1;opacity:1;transition:opacity .2s ease-in}.message-container{background:#fff;color:#111;flex-grow:1;opacity:1;overflow-x:hidden;padding:.5em 1em 3em .5em;position:relative;transition:opacity .5s ease-in-out}.message-container.no-scroll{height:auto;overflow-y:visible}.message-container.faded{opacity:.25}.message-container .overlay{bottom:0;left:0;position:absolute;right:0;top:0;z-index:10}:host.fixed-height .message-container{overflow-y:auto}:host-context(.mat-dark-theme) .message-container{background:#111;color:#fff}.empty-state{color:#666;margin:3em;text-align:center}:host-context(.mat-dark-theme) .empty-state{color:#666}a.nav{background:#222;border-radius:2em;opacity:0;pointer-events:none;position:absolute;right:.5em;text-align:center;transition:opacity .4s ease-in-out;z-index:10}a.nav.visible{opacity:1;pointer-events:auto}.loading-more{margin:0 auto;padding:2em;text-align:center;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}@media (max-width:400px){.message-container{padding:0 0 3em}}"]
|
|
7914
7933
|
},] }
|
|
7915
7934
|
];
|
|
@@ -7926,6 +7945,7 @@ CommentViewComponent.propDecorators = {
|
|
|
7926
7945
|
upvoted: [{ type: Output }],
|
|
7927
7946
|
usernameSelected: [{ type: Output }],
|
|
7928
7947
|
avatarSelected: [{ type: Output }],
|
|
7948
|
+
shared: [{ type: Output }],
|
|
7929
7949
|
source: [{ type: Input }],
|
|
7930
7950
|
genericAvatarUrl: [{ type: Input }],
|
|
7931
7951
|
messageContainer: [{ type: ViewChild, args: ['messageContainer',] }],
|
|
@@ -7938,14 +7958,16 @@ CommentViewComponent.propDecorators = {
|
|
|
7938
7958
|
* Comments component
|
|
7939
7959
|
*/
|
|
7940
7960
|
class BantaCommentsComponent {
|
|
7941
|
-
constructor(banta, backend, elementRef) {
|
|
7961
|
+
constructor(banta, backend, elementRef, activatedRoute) {
|
|
7942
7962
|
this.banta = banta;
|
|
7943
7963
|
this.backend = backend;
|
|
7944
7964
|
this.elementRef = elementRef;
|
|
7965
|
+
this.activatedRoute = activatedRoute;
|
|
7945
7966
|
this._upvoted = new Subject();
|
|
7946
7967
|
this._reported = new Subject();
|
|
7947
7968
|
this._selected = new Subject();
|
|
7948
7969
|
this._userSelected = new Subject();
|
|
7970
|
+
this._shared = new Subject();
|
|
7949
7971
|
this._usernameSelected = new Subject();
|
|
7950
7972
|
this._avatarSelected = new Subject();
|
|
7951
7973
|
this._subs = new Subscription();
|
|
@@ -7969,9 +7991,39 @@ class BantaCommentsComponent {
|
|
|
7969
7991
|
this.expandError = false;
|
|
7970
7992
|
this.selectedMessageVisible = false;
|
|
7971
7993
|
}
|
|
7994
|
+
get sortOrder() {
|
|
7995
|
+
return this._sortOrder;
|
|
7996
|
+
}
|
|
7997
|
+
set sortOrder(value) {
|
|
7998
|
+
if (this._sortOrder !== value) {
|
|
7999
|
+
this._sortOrder = value;
|
|
8000
|
+
setTimeout(() => {
|
|
8001
|
+
this.setSourceFromTopicID(this.topicID);
|
|
8002
|
+
});
|
|
8003
|
+
}
|
|
8004
|
+
}
|
|
7972
8005
|
ngOnInit() {
|
|
7973
8006
|
this._subs.add(this.banta.userChanged.subscribe(user => this.user = user));
|
|
7974
8007
|
}
|
|
8008
|
+
ngAfterViewInit() {
|
|
8009
|
+
if (typeof window !== 'undefined')
|
|
8010
|
+
this.checkForSharedComment();
|
|
8011
|
+
}
|
|
8012
|
+
scrollToComment(commentId) {
|
|
8013
|
+
setTimeout(() => {
|
|
8014
|
+
const comment = document.querySelectorAll(`[data-comment-id="${commentId}"]`);
|
|
8015
|
+
console.log(comment);
|
|
8016
|
+
if (comment.length > 0) {
|
|
8017
|
+
// comment.item(0).scroll({behavior: 'smooth'});
|
|
8018
|
+
comment.item(0).scrollIntoView();
|
|
8019
|
+
}
|
|
8020
|
+
}, 1000);
|
|
8021
|
+
}
|
|
8022
|
+
checkForSharedComment() {
|
|
8023
|
+
const commentID = this.activatedRoute.snapshot.queryParamMap.get('comment');
|
|
8024
|
+
if (commentID)
|
|
8025
|
+
this.scrollToComment(commentID);
|
|
8026
|
+
}
|
|
7975
8027
|
ngOnDestroy() {
|
|
7976
8028
|
this._subs.unsubscribe();
|
|
7977
8029
|
}
|
|
@@ -7982,20 +8034,26 @@ class BantaCommentsComponent {
|
|
|
7982
8034
|
this._source = value;
|
|
7983
8035
|
}
|
|
7984
8036
|
get topicID() {
|
|
7985
|
-
return this.
|
|
8037
|
+
return this._topicID;
|
|
7986
8038
|
}
|
|
7987
8039
|
set topicID(value) {
|
|
7988
|
-
this.
|
|
8040
|
+
if (this._topicID !== value) {
|
|
8041
|
+
this._topicID = value;
|
|
8042
|
+
setTimeout(() => this.setSourceFromTopicID(value));
|
|
8043
|
+
}
|
|
7989
8044
|
}
|
|
7990
8045
|
setSourceFromTopicID(topicID) {
|
|
8046
|
+
var _a, _b;
|
|
7991
8047
|
return __awaiter(this, void 0, void 0, function* () {
|
|
7992
|
-
|
|
7993
|
-
this._source.close();
|
|
8048
|
+
(_b = (_a = this._source) === null || _a === void 0 ? void 0 : _a.close) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
7994
8049
|
this._source = null;
|
|
7995
|
-
this
|
|
7996
|
-
|
|
7997
|
-
|
|
7998
|
-
|
|
8050
|
+
setTimeout(() => __awaiter(this, void 0, void 0, function* () {
|
|
8051
|
+
this._source = yield this.backend.getSourceForTopic(topicID, { sortOrder: this.sortOrder });
|
|
8052
|
+
console.log(`[banta-comments] Subscribing to source for topic '${topicID}'`);
|
|
8053
|
+
this._source.messageReceived.subscribe(m => this.addParticipant(m));
|
|
8054
|
+
this._source.messageSent.subscribe(m => this.addParticipant(m));
|
|
8055
|
+
this._source.messages.forEach(m => this.addParticipant(m));
|
|
8056
|
+
}));
|
|
7999
8057
|
});
|
|
8000
8058
|
}
|
|
8001
8059
|
addParticipant(message) {
|
|
@@ -8060,6 +8118,9 @@ class BantaCommentsComponent {
|
|
|
8060
8118
|
get avatarSelected() {
|
|
8061
8119
|
return this._avatarSelected.asObservable();
|
|
8062
8120
|
}
|
|
8121
|
+
get shared() {
|
|
8122
|
+
return this._shared.asObservable();
|
|
8123
|
+
}
|
|
8063
8124
|
onKeyDown(event) {
|
|
8064
8125
|
}
|
|
8065
8126
|
insertEmoji(text) {
|
|
@@ -8121,6 +8182,9 @@ class BantaCommentsComponent {
|
|
|
8121
8182
|
selectAvatar(user) {
|
|
8122
8183
|
this._avatarSelected.next(user);
|
|
8123
8184
|
}
|
|
8185
|
+
shareMessage(message) {
|
|
8186
|
+
this._shared.next(message);
|
|
8187
|
+
}
|
|
8124
8188
|
sendReply() {
|
|
8125
8189
|
return __awaiter(this, void 0, void 0, function* () {
|
|
8126
8190
|
yield this.selectedMessageThread.send({
|
|
@@ -8146,14 +8210,15 @@ class BantaCommentsComponent {
|
|
|
8146
8210
|
BantaCommentsComponent.decorators = [
|
|
8147
8211
|
{ type: Component, args: [{
|
|
8148
8212
|
selector: 'banta-comments',
|
|
8149
|
-
template: "\r\n<div class=\"focused\" [class.visible]=\"selectedMessageVisible\" *ngIf=\"selectedMessage\">\r\n\r\n <div>\r\n <a mat-button href=\"javascript:;\" (click)=\"unselectMessage()\">\r\n <mat-icon>arrow_back</mat-icon>\r\n Latest Comments\r\n </a>\r\n </div>\r\n\r\n <banta-comment
|
|
8213
|
+
template: "\r\n<div class=\"focused\" [class.visible]=\"selectedMessageVisible\" *ngIf=\"selectedMessage\">\r\n\r\n <div>\r\n <a mat-button href=\"javascript:;\" (click)=\"unselectMessage()\">\r\n <mat-icon>arrow_back</mat-icon>\r\n Latest Comments\r\n </a>\r\n </div>\r\n\r\n <banta-comment\r\n [message]=\"selectedMessage\"\r\n ></banta-comment>\r\n\r\n <div class=\"replies\">\r\n\r\n <ng-container *ngIf=\"!selectedMessageThread\">\r\n <div class=\"loading\">\r\n <mat-spinner></mat-spinner>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"selectedMessageThread\">\r\n <banta-comment-view\r\n [source]=\"selectedMessageThread\"\r\n [allowReplies]=\"false\"\r\n [fixedHeight]=\"false\"\r\n [showEmptyState]=\"false\"\r\n [newestLast]=\"true\"\r\n ></banta-comment-view>\r\n\r\n <banta-comment-field\r\n [sendLabel]=\"replyLabel\"\r\n [sendingLabel]=\"sendingLabel\"\r\n [hashtags]=\"hashtags\"\r\n [participants]=\"participants\"\r\n (signInSelected)=\"showSignIn()\"\r\n (editAvatarSelected)=\"showEditAvatar()\"\r\n [source]=\"selectedMessageThread\"\r\n [canComment]=\"canComment\"\r\n [signInLabel]=\"signInLabel\"\r\n [permissionDeniedLabel]=\"permissionDeniedLabel\"\r\n (permissionDeniedError)=\"showPermissionDenied()\"\r\n [user]=\"user\"\r\n [label]=\"postReplyLabel\"\r\n ></banta-comment-field>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<div class=\"main\" [class.hidden]=\"selectedMessage\">\r\n <banta-comment-field\r\n [source]=\"source\"\r\n [user]=\"user\"\r\n [sendLabel]=\"sendLabel\"\r\n [sendingLabel]=\"sendingLabel\"\r\n [signInLabel]=\"signInLabel\"\r\n [canComment]=\"canComment\"\r\n [hashtags]=\"hashtags\"\r\n [participants]=\"participants\"\r\n [label]=\"postCommentLabel\"\r\n (editAvatarSelected)=\"showEditAvatar()\"\r\n (signInSelected)=\"showSignIn()\"\r\n [permissionDeniedLabel]=\"permissionDeniedLabel\"\r\n (permissionDeniedError)=\"showPermissionDenied()\"\r\n ></banta-comment-field>\r\n\r\n <banta-comment-sort\r\n [(sort)]=\"sortOrder\"></banta-comment-sort>\r\n\r\n <banta-comment-view\r\n [class.faded]=\"selectedMessage\"\r\n [source]=\"source\"\r\n [fixedHeight]=\"fixedHeight\"\r\n [maxMessages]=\"maxMessages\"\r\n [maxVisibleMessages]=\"maxVisibleMessages\"\r\n [genericAvatarUrl]=\"genericAvatarUrl\"\r\n (userSelected)=\"selectMessageUser($event)\"\r\n (selected)=\"selectMessage($event)\"\r\n (upvoted)=\"upvoteMessage($event)\"\r\n (reported)=\"reportMessage($event)\"\r\n (usernameSelected)=\"selectUsername($event)\"\r\n (avatarSelected)=\"selectAvatar($event)\"\r\n (shared)=\"shareMessage($event)\"\r\n ></banta-comment-view>\r\n</div>\r\n",
|
|
8150
8214
|
styles: [":host{display:flex;flex-direction:column}@-webkit-keyframes select-comment{0%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes select-comment{0%{transform:scale(1.15)}to{transform:scale(1)}}.focused{-webkit-animation-duration:.4s;-webkit-animation-fill-mode:both;-webkit-animation-name:select-comment;animation-duration:.4s;animation-fill-mode:both;animation-name:select-comment}.focused .replies{margin-left:4em;margin-top:1em}banta-comment-view{opacity:1;transition:opacity .4s ease-in-out}banta-comment-view.faded{opacity:.25}.loading{display:block;margin:0 auto;min-height:16em;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.main.hidden{display:none}@media (max-width:500px){.focused .replies{margin-left:0}}"]
|
|
8151
8215
|
},] }
|
|
8152
8216
|
];
|
|
8153
8217
|
BantaCommentsComponent.ctorParameters = () => [
|
|
8154
8218
|
{ type: BantaService },
|
|
8155
8219
|
{ type: ChatBackendService },
|
|
8156
|
-
{ type: ElementRef }
|
|
8220
|
+
{ type: ElementRef },
|
|
8221
|
+
{ type: ActivatedRoute }
|
|
8157
8222
|
];
|
|
8158
8223
|
BantaCommentsComponent.propDecorators = {
|
|
8159
8224
|
hashtags: [{ type: Input }],
|
|
@@ -8179,7 +8244,8 @@ BantaCommentsComponent.propDecorators = {
|
|
|
8179
8244
|
selected: [{ type: Output }],
|
|
8180
8245
|
userSelected: [{ type: Output }],
|
|
8181
8246
|
usernameSelected: [{ type: Output }],
|
|
8182
|
-
avatarSelected: [{ type: Output }]
|
|
8247
|
+
avatarSelected: [{ type: Output }],
|
|
8248
|
+
shared: [{ type: Output }]
|
|
8183
8249
|
};
|
|
8184
8250
|
|
|
8185
8251
|
class LiveCommentComponent {
|
|
@@ -8492,12 +8558,44 @@ CommentFieldComponent.propDecorators = {
|
|
|
8492
8558
|
permissionDeniedError: [{ type: Output }]
|
|
8493
8559
|
};
|
|
8494
8560
|
|
|
8561
|
+
class CommentSortComponent {
|
|
8562
|
+
constructor() {
|
|
8563
|
+
this.commentsOrder = CommentsOrder;
|
|
8564
|
+
this._sortChange = new Subject();
|
|
8565
|
+
this._sort = CommentsOrder.LIKES;
|
|
8566
|
+
}
|
|
8567
|
+
get sort() {
|
|
8568
|
+
return this._sort;
|
|
8569
|
+
}
|
|
8570
|
+
set sort(value) {
|
|
8571
|
+
if (this._sort !== value) {
|
|
8572
|
+
this._sort = value;
|
|
8573
|
+
setTimeout(() => this._sortChange.next(value));
|
|
8574
|
+
}
|
|
8575
|
+
}
|
|
8576
|
+
get sortChange() {
|
|
8577
|
+
return this._sortChange.asObservable();
|
|
8578
|
+
}
|
|
8579
|
+
}
|
|
8580
|
+
CommentSortComponent.decorators = [
|
|
8581
|
+
{ type: Component, args: [{
|
|
8582
|
+
selector: 'banta-comment-sort',
|
|
8583
|
+
template: "<div class=\"sort-row\">\r\n <mat-form-field>\r\n <mat-label>Sort by</mat-label>\r\n <mat-select [(value)]=\"sort\" >\r\n <mat-option [value]=\"commentsOrder.NEWEST\">Newest</mat-option>\r\n <mat-option [value]=\"commentsOrder.OLDEST\">Oldest</mat-option>\r\n <mat-option [value]=\"commentsOrder.LIKES\">Likes</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</div>\r\n",
|
|
8584
|
+
styles: [".sort-row{display:flex;justify-content:end;padding-right:3em}"]
|
|
8585
|
+
},] }
|
|
8586
|
+
];
|
|
8587
|
+
CommentSortComponent.propDecorators = {
|
|
8588
|
+
sort: [{ type: Input }],
|
|
8589
|
+
sortChange: [{ type: Output }]
|
|
8590
|
+
};
|
|
8591
|
+
|
|
8495
8592
|
const COMPONENTS$3 = [
|
|
8496
8593
|
CommentComponent,
|
|
8497
8594
|
CommentViewComponent,
|
|
8498
8595
|
BantaCommentsComponent,
|
|
8499
8596
|
LiveCommentComponent,
|
|
8500
|
-
CommentFieldComponent
|
|
8597
|
+
CommentFieldComponent,
|
|
8598
|
+
CommentSortComponent
|
|
8501
8599
|
];
|
|
8502
8600
|
class CommentsModule {
|
|
8503
8601
|
}
|
|
@@ -8515,7 +8613,9 @@ CommentsModule.decorators = [
|
|
|
8515
8613
|
MatMenuModule,
|
|
8516
8614
|
MatProgressSpinnerModule,
|
|
8517
8615
|
BantaCommonModule,
|
|
8518
|
-
EmojiModule
|
|
8616
|
+
EmojiModule,
|
|
8617
|
+
MatTooltipModule,
|
|
8618
|
+
MatSelectModule
|
|
8519
8619
|
],
|
|
8520
8620
|
exports: COMPONENTS$3
|
|
8521
8621
|
},] }
|